在.NET自定义操作中检测静默安装

aaa*_*bbb 5 c# windows-installer

如何检测安装是否以静默模式运行?

我有一个自定义应用程序,我添加了一个.msi安装项目.我使用/ qb开关运行.msi文件,并在我的自定义安装程序c#代码中,我希望能够检测到这一点.

编辑:nobugs说测试UILevel属性.如何从派生自System.Configuration.Install.Installer类的类访问UILevel属性?

aaa*_*bbb 10

从nobugz的提示,我做了以下:

  1. 在.msi安装项目的自定义操作视图中,我将以下内容添加到我的CustomActionData(将UILevel传递给我的自定义安装程序):

    / UILevel = "[UILevel]"

  2. 在我从基类Installer派生的代码的C#代码中,我添加了代码来获取值:

    string uiLevelString = Context.Parameters ["UILevel"];

  3. 然后简单地解析字符串的int值.如果值<= 3,则为静默安装.