gpt4 book ai didi

visual-studio - Visual Studio 2012 陈旧 DLL

转载 作者:行者123 更新时间:2023-12-04 07:32:33 24 4
gpt4 key购买 nike

简介

我不知道这是一个错误还是我完全遗漏了什么。

我有一个项目(Windows 服务),我们称它为 WINSERV。我有 3 个 DLL,这取决于它们来自 3 个独立的项目(项目 A、B、C)。但是 A 依赖于 C。B 依赖于 A 和 C。

当使用 InstallShield LE 构建安装程序时,出于某种原因,我的项目 C 始终是我无法更改的 STALE 版本。我增加了版本,“make clean && rebuild”,安装(在远程服务器上)总是包含 STALE 版本。

我将每个依赖于 C 的项目设置为不“复制到本地”,因此允许项目 WinServ 维护“引用”本身,并将其复制到安装程序。

问题

但同样,无论我做什么,当我安装时它都是陈旧的版本。几个小时后,我设法解决了这个问题,方法是删除项目 WINSERV 上的“复制到本地”,并将项目 C 作为应用程序数据(项目 C 的主要输出)的补充添加到 InstallShield 安装项目。这似乎有效!!!!

问题

我确实试过“清洁”一千次。在构建和创建安装程序之前,我检查了 Project C DLL 版本,它总是过时的旧版本。

谁能解释一下?还是错误?

附言。 InstallShield LE 不执行 Windows 服务,因此如果您阅读本文,请不要被捕获。

最佳答案

这绝对是 Visual Studio 2012 中的错误。我设法以下列方式复制:

打开一个项目时(比方说引用 MYSQL 5.1.4)。然后我开始卸载 MySQL 连接器并安装 5.1.7。我关闭 Visual Studio 2012 并重新编译,一切正常。

然而,当我使用 InstallShield 构建时,它仍然引用 5.1.4,尽管它已被卸载。我的想法是它将它缓存在某个地方并稍后在构建过程中访问它。

我是如何解决它的,是在安装现有 DLL 的更新/旧/不同版本之后,然后重新启动我的机器,现在一切正常。

希望这对某人有帮助

关于visual-studio - Visual Studio 2012 陈旧 DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12371611/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com