在安装旧版本时,如何确保 Visual Studio 安装程序更新 DLL?
我最近注意到我的安装程序 (VS 2008) 在卸载过程中不会删除 DLL。 这对我来说并不是太重要,但以下问题是一个问题:当我安装软件的旧版本时,它不会覆盖 DLL - 它会保留较新的版本。
当我将系统回滚到旧版本时,我希望一切都回滚。 实现这一目标的最佳方法是什么? 为了安全起见,我是否需要创建自定义操作来在卸载时删除 DLL,或者是否有其他方法来删除它们,或者是否有设置强制安装程序始终写入 DLL。
I recently noticed that my installer (VS 2008) does not remove the DLLs during uninstall. This is not too much of a concern to me but the following is a concern: when I install an older version of my software, it does not overwrite the DLLs -- it keeps the newer version.
When I am rolling back my system to an older version, I would like everything to roll back. What is the best way to accomplish this? Do I need to create a custom action to remove the DLLs at uninstall to be safe, or is there another way to remove them, or is there a setting to force the installer to always write the DLL.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
首先,您应该问自己为什么安装程序没有删除这些文件,因为它应该删除这些文件,如果没有,那么它就是一个 BUG(或者安装程序正在等待重新启动以删除这些文件)。
您可以运行带有日志记录的 MSI,以便发现那里发生了什么:
msiexec.exe /i /l*v
First you should ask yourself why didn't the installer remove the files, because it should and if it didn't then it's a BUG (or that the setup is waiting for a reboot to remove the files).
You can run you MSI with logging in order to discover what's going on there:
msiexec.exe /i /l*v