有没有办法在 installshield 2009 中为用户设置一些按摩,以便在以下情况下提示 -
- 他们重命名设置或文件名被更改?
- 安装程序是从网络位置运行的吗?
- UAC 功能何时开启?
任何建议都将受到高度赞赏和欢迎。
谢谢,维迪亚
有没有办法在 installshield 2009 中为用户设置一些按摩,以便在以下情况下提示 -
任何建议都将受到高度赞赏和欢迎。
谢谢,维迪亚
Windows Installer 提供了检测 1 和 2 的属性。
OriginalDatabase
属性保存 .msi 文件的路径。SourceDir
属性保存包含安装包的目录。ResolveSource
操作。同样,您必须小心这一点,ResolveSource
例如,不要在卸载期间安排操作。如果您想检测引导程序是否setup.exe
被重命名或从网络运行,那是另一回事,我无法帮助您。
请说明为什么需要检测这两种情况。
为什么您的设置的命名方式会有所不同?
我不认为用户经常重命名设置文件。如果您的安装程序包仅包含在一个文件中,我看不出重命名不好的任何原因。
Vidya:我不确定,但用户说当他们尝试重命名设置时,他们会收到与某些编译相关的消息,并且设置不允许他们重命名设置。
如果从网络位置运行设置会发生什么变化?
可以从网络位置安装 Windows Installer 程序包。在管理安装的情况下,从网络位置执行安装甚至是一种常见的情况。
Vidya:问题是当我们从网络位置安装 MSI 并尝试对已安装的设置运行更新时,它显示“找不到文件”</p>
如果您知道 UAC 处于打开或关闭状态,您会在设置中做什么?
Windows Installer 本身可以很好地与 UAC 配合使用。您只需要关心您编写的自定义操作:它们必须是 UAC 感知的。这一点总结为只有一个要求:只有延迟操作必须对系统进行修改,延迟操作在系统上下文中运行;其他自定义操作在当前登录用户的上下文中运行。在没有 UAC 的情况下,此要求也适用于 Windows XP:在非延迟操作中修改系统设置是一种不好的做法。
Vidya:基本上,我们希望在 UAC 开启且用户没有管理权限时向用户发送消息,或者只是通知他们在运行设置之前将 UAC 设置为最低。