代码之家  ›  专栏  ›  技术社区  ›  Usman

.NET是否支持Win32代码互操作?

  •  0
  • Usman  · 技术社区  · 16 年前

    我需要与.NET的互操作Win32代码(非托管Win32 DLL和EXE)。我需要在运行时调用Win32非托管代码(DLL导出函数),了解Win32签名中的数据类型,并在运行时根据该类型传递数据。

    这对于COM是可能的,您可以使用tlbimp.exe将COM非托管代码转换为托管程序集,并使用反射API处理这些托管类型(使用tlbimp将非托管类型转换为托管类型)。

    如何在.NET framework中获得与Win32相同的功能?

    我知道MS提供了一个导出表读取API,但是我找不到用于Win32非托管代码互操作的确切API。

    2 回复  |  直到 14 年前
        1
  •  1
  •   Chris Taylor    16 年前

    http://www.pinvoke.net/

    使用的服务 System.Runtime.InteropServices 您可以与本机Win32代码或导出C类型函数的任何DLL进行互操作。

        2
  •  1
  •   brickner    16 年前

    对。

    看到了吗 PInvoke on MSDN