【问题标题】:New Version of Third Party COM DLL - How to Install and Keep Old Versions in Delphi?第三方 COM DLL 的新版本 - 如何在 Delphi 中安装和保留旧版本?
【发布时间】:2010-11-08 19:13:09
【问题描述】:

我需要让我的 Delphi 程序使用新版本的第三方 DLL。我希望能够使用新版本,但如果需要,可以恢复到旧版本。

某些对象是应用程序中表单上的不可见对象。其他我在运行时实例化。

如何在保持现有版本的同时将新版本的 DLL 安装到 Delphi 中?我正在使用 Delphi 2007。

【问题讨论】:

  • 您是在谈论注册 ActiveX 控件设计时间吗?
  • 是的,拉斯。这就是我想要做的。

标签: delphi com activex delphi-2007 typelib


【解决方案1】:

我们有几种产品。其中一些是用不同版本的Delphi和不同版本的外部组件开发的。 (有时移植/升级不是一种选择)。

为了解决这个问题,我们为每个产品设置了(网络)共享。如果我们开始开发产品,我们会将标准驱动器(在我们的例子中是 w:)映射到该共享并启动所需版本的 Delphi。这样,每个产品都有自己的环境和自己的组件版本。

缺点是您有时必须在启动时杀死一些弹出窗口,但系统工作正常。

另一种解决方案是使用虚拟电脑。但并非所有许可系统都允许这种用途。

【讨论】:

    【解决方案2】:

    在运行时(包括部署),您应该能够使用 Win32 程序集并行共享 (WinSxS) 使新版本的组件可用于您的应用程序,同时让系统的其余部分继续工作与任何现有版本。 免责声明:我从未在实践中这样做过

    但是,在设计时(在 Delphi 中),我认为您别无选择,只能使用当时的特定版本,除非它们生成新的接口和 coclass(在这种情况下,您可以在 Delphi 中生成不同的名称wrapper) 用于更改的所有内容。 Gamecat 提供的解决方案可能是您最好的选择。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-07-02
      • 2017-01-07
      • 1970-01-01
      • 2021-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多