将值从命令行传递到自定义操作刻录

本文关键字:自定义 操作 命令行 | 更新日期: 2023-09-27 18:33:53

我需要将值从命令行传递到自定义操作。自定义操作应从命令行获取值,并在安装 EXE 期间修改一个文件 (app.config)。我在自定义操作中有以下代码

        if (Context.Parameters["ENV"] == "test") //Test environment
        {              
            authEndPoint = "http://192.168.168.4/api/user_authentication/";                        
        }
        else if (Context.Parameters["ENV"] == " ") //Production environment
        {              
            authEndPoint = "https://livesiteurl/api/user_authentication/";                        
        }

我想安装如下所示的exe文件

         myapplication.exe env=test

我看到了很多示例将值从命令行传递到 msi。如何将值从命令行传递到 CA 并修改 app.config 文件。

将值从命令行传递到自定义操作刻录

比使用自定义操作更好的方法来执行您在此处尝试执行的操作。看看如何使用WiXUtilExtension修改文件,然后创建一个属性并从命令行引用它。如果您仍然需要/想要使用引导程序,则可以在捆绑包的 MsiPackage 中设置使用 MsiProperty 创建的属性。