【问题标题】:Loading BDE BPL from another directory从另一个目录加载 BDE BPL
【发布时间】:2009-10-29 09:26:53
【问题描述】:

使用 Delphi 2010 和 BDE 的修补版本时,我在加载 BDERTL140.bpl 时遇到问题。

从另一个目录加载 DCLBDE140.bpl 然后通常工作正常。只有当我想加载 BDERTL140.bpl 时,它总是告诉我它已经从 Windows 系统目录加载了。

哪些包加载了 BDERTL140.pbl,我怎样才能让它们加载我的修补版本而不是原始版本?我不想诉诸于覆盖原来的。

【问题讨论】:

    标签: delphi delphi-2010 bde bpl


    【解决方案1】:

    要获取已加载库的列表,包括您可以在Dependency Walker 下运行应用程序的完整路径,它会输出很多重要信息。

    您还可以使用它来显示各种 DLL 和 BPL 的所有静态依赖项,因此您应该能够找到强制加载 BDERTL140.bpl 的第一个模块。您应该在此之前尝试加载您的补丁版本。

    【讨论】:

      【解决方案2】:

      您需要将 DCLBDE140.bpl 与您的 exe 放在同一目录中,这要求它避免从 Windows\System32 加载它。这是我能弄清楚的唯一方法,因为您无法手动 LoadLibrary。

      【讨论】:

      • 在设计时加载 bpl,它将由 IDE 加载。将其放入我的 exe 目录并没有帮助,因为为时已晚。将其放入 $(BDS)/bin 即可。谢谢。不过我很想把它放在另一个目录中。
      【解决方案3】:

      尝试将你的 bpl 文件夹放在 windows 搜索路径的前面。

      【讨论】:

        猜你喜欢
        • 2017-10-03
        • 2019-05-31
        • 1970-01-01
        • 1970-01-01
        • 2023-03-02
        • 1970-01-01
        • 1970-01-01
        • 2012-05-23
        • 1970-01-01
        相关资源
        最近更新 更多