我在一个项目中工作,我需要给我的安装程序一个修复/删除选项,这将显示在安装时,如果程序以前安装过。我需要用VS2008来做这个。请在这一点上帮我。
编辑:实际上出于某些安全原因,我删除了以前安装的注册表项。这样我就可以只从我的应用程序中卸载它,它是受密码保护的。这就是我需要定制修复/删除选项的原因。以便通过查看某些特定的注册表值来显示它。我该怎么做呢?
谢谢。
发布于 2010-11-18 16:28:41
只需将安装项目添加到当前解决方案即可。安装项目使用Windows Installer技术,为您提供免费的修复和删除选项。当您有一个“简单”的安装时,可以使用这种类型的项目。如果你想要更多的控制(自定义对话框),你应该安装Wix。它插入到VS中,您可以在XML中定义一个安装文件,然后将该文件编译为Windows Installer包。
发布于 2010-11-28 04:50:52
我相信WIX更适合您的需求,因为您对安装程序有更多的控制。
如果您只想从应用程序中卸载应用程序,则可以在安装程序中添加一个自定义操作(或条件),以验证安装程序操作(修复/删除)是否从应用程序启动,而不是从ARP启动。
一种方法是将自定义属性从您的应用程序传递到msiexec,该属性在您的自定义操作(或条件)中进行测试,如果在未设置此属性的情况下执行,则不让安装程序进程继续。
https://stackoverflow.com/questions/4212820
复制相似问题