【问题标题】:Remove previous versions does not replace DLL's删除以前的版本不会替换 DLL 的
【发布时间】:2020-12-03 08:25:25
【问题描述】:

我使用扩展名“Microsoft Visual Studio 安装程序项目”在我的 Windows-Forms-App 中创建 MSI 文件。 “RemovePreviousVersions”选项已激活,它可以正常工作。 我的项目安装了V1.0.0,当我安装V1.0.1时,旧版本将被删除。

但是使用的库,例如EntityFramework.dll 或 EntityFramework.SqlServer.dll 不会更新。

我能做什么?

非常感谢提前!

【问题讨论】:

    标签: visual-studio installation dll windows-installer


    【解决方案1】:

    请尝试通过右键单击安装项目的Detected Dependencies来单击Refresh Dependencies然后,重新构建您的设置项目。

    或者,只需删除所有Project Output,然后通过右键单击项目读取Project Output-->添加-->项目输出

    【讨论】:

    • 我都试过了,但是 V1.0.0 中的 DLL 仍然保留在安装文件夹中 (C:\Programs (86)\... ),当我安装 V1.2.0 时我不明白那...
    • 请尝试将InstallAllUsers 设置为true。并重建您的 msi 程序。您应该删除C:\Programs (86)\... 下的旧dll,因为它失去了效果。没有程序可以控制它。您应该先安装旧的v.1.0.0,然后再安装新的v1.2.0,测试是否可以覆盖旧的。
    • InstallAllUsers 是真的...我一开始已经把它设置为真了。不幸的是,这并不能解决问题。无法手动删除 DLL,很多人都安装了它...
    • EntityFramework.dllEntityFramework.SqlServer.dll 是新版本吗?如果 dll 版本相同且不是改进版本,安装项目将不会更新它,因为它们与旧版本相同。特别是AssemblyFileVersion。您应该右键单击 dll-->Properties-->Details。所以如果文件版本相同,就不会更新。所以也许你应该检查一下。见this link
    猜你喜欢
    • 2017-09-11
    • 1970-01-01
    • 1970-01-01
    • 2018-11-26
    • 2019-02-04
    • 1970-01-01
    • 2016-01-07
    • 2011-02-10
    • 2018-12-26
    相关资源
    最近更新 更多