【问题标题】:how to call a .net dll from delphi 5 to make use of the methods [closed]如何从delphi 5调用.net dll来使用这些方法[关闭]
【发布时间】:2014-08-14 15:28:34
【问题描述】:

我在从这个页面调用 idblue.dll 时遇到问题 http://idblue.com/support/drivers-software 我使用的是 Delphi 5 我尝试使用 loadlibrary 并进行外部调用

【问题讨论】:

  • 能否请您发布一些代码,以便我们了解您实际在做什么?
  • 有什么问题?如果没有任何进一步的细节,我认为没有人能帮助你。
  • 您将如何使用LoadLibrary 来使用托管的.net DLL? LoadLibrary 用于非托管 DLL。
  • 你确定它是一个 .net dll - 这对于驱动程序或相关接口实用程序来说是非常不寻常的。
  • @500 点击提供的链接。显然驱动是典型的内核态驱动,但是用户态api是托管的。

标签: c# .net windows delphi dll


【解决方案1】:

LoadLibrary 用于使用非托管库。您正在尝试使用托管库。

可以启动一个 .net 运行时并从非托管代码中调用它,但这非常耗费人力。更好的可能是以一种便于从 Delphi 使用的方式包装托管 DLL。选项包括:

  1. 创建公开 COM 接口的托管 DLL。
  2. 使用混合模式 C++/CLI 程序集包装。这将公开一个经典的非托管 DLL 接口。
  3. 再次使用 Robert Giesecke 的 UnmanagedExports 将包装器公开为非托管 DLL 接口。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多