我们在.Net中创建了组件并安装在用户系统中。我们能够在Installler类的Uninstall方法中创建一个表单并调用相同的方法,以便在用户尝试从控制面板卸载时提示输入密码。我们在msi(安装)文件创建期间添加了exe(其中包含已实现的Installer类和使用Uninstall重写方法编写的自定义代码)作为自定义操作。
使用此msi文件进行安装会成功安装组件,当用户尝试从控制面板卸载时,系统会根据需要提示输入密码,只有在密码正确时才会卸载,否则会导致异常并且卸载过程不成功。
我们面临的一个问题是,当用户尝试卸载并显示表单时,当用户尝试关闭或注销时,即使没有提供密码,它也会自动关闭表单并卸载组件。我们试图检查它是否是强制关闭并引发正常异常(也尝试过InstallerException)仍然会卸载程序。
请帮忙。