我正在使用 Visual Studio 安装项目进行部署。这听起来像是一个禁忌,但我对卸载程序有一个特定要求,即不要在“添加/删除程序”中注册。我可以采取什么措施来阻止安装程序注册其卸载程序?
如果没有更好的解决方案,我什至准备使用基于 Orca 的解决方案。
I am using a Visual Studio Setup Project for deployment. This may sound like a no-no but I have a specific requirement for the uninstaller not to register in the Add/Remove Programs. Is there something I can do to prevent Setup from registering its uninstaller?
I am even prepared for an Orca-based solution if there is nothing better out there.
发布评论
评论(1)
有两种方法可以实现此目的:
设置ARPSYSTEMCOMPONENT 属性设置为 1。这样您的产品就不会显示在控制面板中。但是,它仍然通过 Windows Installer 注册。
从 PublishFeatures、PublishProduct、RegisterProduct 和 RegisterUser 操作msdn.microsoft.com/en-us/library/windows/desktop/aa369500%28v=vs.85%29.aspx">InstallExecuteSequence 表。这样您的产品就不会在 Windows Installer 中注册,因此不会显示在控制面板中。
如果您的产品未在 Windows Installer 中注册,则无法修复或卸载它。所以我推荐使用ARPSYSTEMCOMPONENT。
There are two approaches for this:
Set ARPSYSTEMCOMPONENT property to 1. This way your product is not displayed in Control Panel. It is still however registered with Windows Installer.
Remove PublishFeatures, PublishProduct, RegisterProduct and RegisterUser actions from InstallExecuteSequence table. This way your product is not registered with Windows Installer, so it won't be shown in Control Panel.
If your product is not registered with Windows Installer, you cannot repair or uninstall it. So I recommend using ARPSYSTEMCOMPONENT.