Installation 如何使用Inno安装程序修改machine.config?

Installation 如何使用Inno安装程序修改machine.config?,installation,inno-setup,machine.config,Installation,Inno Setup,Machine.config,如何使用Inno安装程序修改machine.config 我看了文档,搜索了谷歌,但什么都找不到,这让我觉得我问错了问题,或者遗漏了一些明显的东西 我猜如果不明显,那么需要编写一个小脚本来完成。如果是这样的话,有谁有好的例子吗 编辑:machine.config是一个xml格式的文件,用于保存.net应用程序的机器级配置设置。我上次使用Inno Setup已有一段时间了,但我认为您有两种可能性。最好也是最简单的方法是编写一个小的.exe应用程序,安装和卸载完成后安装程序将运行该应用程序: [Fi

如何使用Inno安装程序修改machine.config

我看了文档,搜索了谷歌,但什么都找不到,这让我觉得我问错了问题,或者遗漏了一些明显的东西

我猜如果不明显,那么需要编写一个小脚本来完成。如果是这样的话,有谁有好的例子吗


编辑:machine.config是一个xml格式的文件,用于保存.net应用程序的机器级配置设置。

我上次使用Inno Setup已有一段时间了,但我认为您有两种可能性。最好也是最简单的方法是编写一个小的.exe应用程序,安装和卸载完成后安装程序将运行该应用程序:

[Files]
Source: "mconfig.exe"; DestDir: "{tmp}"; Flags: deleteafterinstall; 

[Run]
Filename: "{tmp}\mconfig.exe"; Parameters: "/inst"; Flags: waituntilterminated runhidden

[UninstallRun]
Filename: "{tmp}\mconfig.exe"; Parameters: "/uninst"; Flags: waituntilterminated runhidden
现在,我不知道您需要使用什么语言/或进行什么修改,但是一个简单的c#控制台应用程序可以对machine.config进行一些简单的修改,如下所示:

using System;
using System.Configuration; // Note: Also add a reference to "System.Configuration.dll"

public class Program {
    static void Main(string[] args) {
        Configuration config = ConfigurationManager.OpenMachineConfiguration();
        if (args.Length > 0) {
            if (args[0] == "/inst") {
                config.AppSettings.Settings.Add("Test", "Value");
            } else if (args[0] == "/uninst") {
                config.AppSettings.Settings.Remove("Test");
            }
            config.Save();
        }
    }
}
现在,另一种方法是将其作为函数编写,使用Inno Setup内置的“Pascal脚本”语言(如果您以前有过Turbo/Borland Pascal或Delphi方面的经验,那么恢复起来可能会很有趣)。我自己也尝试过,但我建议不要这样做,因为它非常有限,但可能对其他(不太复杂的)事情有好处


希望这有帮助

Inno可以编辑它可以写入的任何文件。它的格式取决于它的格式。你能提供更多的信息和一个你想要编辑的例子吗。