2

首先,当我正常启动应用程序(双击exe)时,它运行良好:通知图标总是出现在系统托盘中。当应用程序在 msi 安装结束时启动时,它也能正常工作(在 msi 安装后运行 exe?)。

但是,当应用程序从以安静模式运行的 msi 启动时,我的通知图标并不总是出现,但应用程序可以正常工作:我可以使用键盘快捷键访问上下文菜单。我在三台运行 Windows XP 的计算机上进行了测试,成功率在 50% 左右。我还在 Windows7 上进行了测试:它运行良好。

我知道在 Windows XP 中启动期间通知图标存在一些问题,但我不知道它是否相关(http://www.google.ca/search?hl=fr&q=notify+icon+not +出现+Windows+XP&aq=f&aqi=&aql=&oq=&gs_rfai=

所以,我想知道你们中是否有人遇到过这个问题。您认为这是 Windows XP 的错误吗?还是与启动应用程序的人有关(msiexec 与 .exe)?我不认为这可能是我的代码中的错误,因为当我直接启动它时它运行良好。

4

1 回答 1

1

您必须意识到,当您运行 InstallUISequence 不运行的静默 ( /quiet /qn UILevel=3 ) 时,只有 InstallExecuteSequence 运行。因此,在静默运行时,您需要安排自定义操作在 InstallExecuteSequence 结束时运行,以便您的 C# 程序将运行并将其自身放置在托盘中。

对于那些质疑这个要求的人来说,这样做是很正常的。作为 SMS 管理员,我会静默推出会关闭托盘应用程序的软件包,卸载旧版本,安装新版本并放回试用应用程序。所有这一切都没有代理人几乎没有注意到它曾经失踪过。

于 2010-08-26T21:51:09.070 回答