0

我有一个奇怪的问题,

我有一个WPF application. 我windows installer为此创建了一个,安装将在用户的开始菜单中创建应用程序快捷方式。我正在通过windows service. 通过 Windows 服务安装可以正常工作,但它不会在开始菜单中创建快捷方式,我也没有在程序和功能下看到此应用程序。但是,如果我手动安装它一切正常。任何线索为什么会发生这种情况?

执行 MSI 的代码

 Process installProcess = new Process();
                //Assign required properties
                installProcess.StartInfo.FileName = MSIEXEC;
                installProcess.StartInfo.RedirectStandardError = true;
                installProcess.StartInfo.UseShellExecute = false;

                LogManager.Write("Process object is created");

                //Create new StringBuilder instance
                StringBuilder stringBuilder = new StringBuilder();
                stringBuilder.Append(SYMBOL_SLASH);
                stringBuilder.Append(SYMBOL_INSTALL);
                stringBuilder.Append(installerPath);
                stringBuilder.Append(SYMBOL_QN);

                LogManager.Write("StringBuilder is created: " + stringBuilder.ToString());

                installProcess.StartInfo.Arguments = stringBuilder.ToString();
                installProcess.Start();
4

1 回答 1

1

InstallAllUsersMSI 中的属性设置为false. 我的 windows 服务正在运行 ,我的机器使用underLocal System account登录。因此,当安装发生时,假设 MSI 是由使用 Windows 身份验证登录机器的用户安装的,因此它没有显示在开始菜单和程序和功能下。windows authenticationadministrator account

我没有必要将 InstallAllUsers 保持为 false,所以我简单地将其设置为 true,从而解决了我的问题。

于 2013-08-04T19:22:44.317 回答