gpt4 book ai didi

com - VB6 IDE 正在锁定加载项目的 DLL

转载 作者:行者123 更新时间:2023-12-02 08:36:18 25 4
gpt4 key购买 nike

我负责维护旧版 VB6 代码,并且遇到了有关项目 COM DLL 锁定的烦人问题。 (我们将其命名为 MyProjectMyProject.dll)

当我将 MyProject 加载到 VB6 IDE 中时,我能够编译生成的二进制兼容 DLL MyProject.dll。然后我可以运行我的(经典 ASP)Web 应用程序,该应用程序挂接到 DLL(或与此相关的任何其他内容)。

因此,当我尝试重新编译 COM DLL 时,出现“权限被拒绝”错误。然后我发现自己必须执行以下步骤才能解锁 DLL:

  1. 检查我没有在其他 VB6 IDE 中打开依赖项目
  2. 回收 IIS
  3. 检查文件是否为只读(有时,如果我已将其 checkin 源代码管理,则会是只读)
  4. 关闭项目并重新打开。

通常是最后一步解决问题,并允许我重新编译,这意味着 VB6 IDE 实际上锁定了加载项目的 DLL!

我的同事向我解释说,这与 VB6 项目在 DLL 上的二进制兼容性的工作方式有关,但无法提出解决方案。

我在其他地方的搜索几乎没有得到任何答案。与此相关的搜索查询往往会返回许多不相关的答案(也许我问了搜索引擎错误的问题)。

我在 Stackoverflow 上能找到的最接近的东西是 this question从几年前开始,但它并不真正符合要求。

有人有其他可以改善这种情况的建议吗?

最佳答案

保留名为 MyProject.cmpMyProject.dll 副本,并将二进制兼容设置指向您的 .cmp 文件。这样您就不需要重新打开项目文件(步骤 4)。

在 checkin 期间,您也可以标记保持 checkout 以跳过第 3 步。

关于com - VB6 IDE 正在锁定加载项目的 DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3873041/

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