我使用了Windows安装程序(msi项目),实际上我在安装后有msi文件,它会向桌面抛出一个快捷方式。
我的问题是,当我双击我的应用程序的快捷方式时,它会显示类似于安装的内容,然后它会运行我的应用程序。我不希望安装窗口出现在我的应用程序不需要抛出任何文件或在运行所有预先请求之前安装的东西通过msi文件安装。我希望当最终用户点击快捷方式时,它会直接运行应用程序...
我希望我能很好地解释我的问题。
我正在使用VS 2005,C#
如果我想删除始终发生的操作,该怎么办?每当我双击exe文件时,它就会出现在这个窗口中。我的申请并不那么复杂。
编辑:我在哪里可以找到日志文件?!?
请帮忙。 thnx indavence
答案 0 :(得分:3)
MSI安装系统的一个“功能”是它可以在您的应用程序运行时自动修复一些内容。
查看此操作的一个好方法是并排安装两个版本的Microsoft Office。运行MS Word 2007之后,MS Word 2003的调用将从MsiExec开始,在应用程序启动之前弹出修复一些内容。
几乎可以肯定的是,您所看到的是这种修复 - 检查日志文件并找出正在修复的内容,然后更改安装项目,以便在首次安装时不会破坏。
希望这有帮助。
答案 1 :(得分:1)
您看到的快速安装程序操作经常出现问题。我认为它只出现在第一次运行而且再也没有。没关系。也许Windows Installer服务会进行一些注册等。
答案 2 :(得分:0)
您可能需要参考How Windows Installer Shortcuts Work和Windows Installer Logging
如果您真的想要避免此行为,最简单的解决方案是手动添加快捷方式,而不是让Windows Installer为您执行此操作。
我的猜测是你可能在安装程序中有一些HKCU密钥需要为当前用户检查/修复。你有运行MSI验证吗?这通常可以突出导致不必要修复的问题。