繁体   English   中英

将旧的C ++ DLL转换为C#

[英]Old C++ DLLs into C#

我有一个C#项目,要求我使用用C ++编写的SDK。 我对C ++有点陌生,但是我设法找到了我需要的所有重要函数和类。

据我了解,我猜C ++ / CLR将是我最好的选择。

SDK本身主要使用带有多个头文件的DLL“ VssSDK.dll”。

现在是2018年,所以我希望有一种方法可以将非常大的DLL转换为可以在.NET应用程序中使用的东西, 而无需花费10个小时的时间来创建标头并且不使用CLR是什么(这就是创建包装器的意思吗? )。

我希望此线程对需要执行相同任务的任何人有用:将旧的DLL导入C#项目。

任何指南和信息都将有所帮助。

  • SDK在Visual Studio 2010上编译
  • VssSdk.ddl是一个共享库
  • 我需要重新使用VssSdk.dll中包含的类
  • 需要使用4.6.2框架与.NET兼容
  • VssSdk.dll需要数百个函数和类
  • 我尚未将SDK演示迁移到VS2017

要使用本机dll中的本机方法,您需要使用DllImport属性和extern关键字对其进行声明。 您可能会在这里看到extern文档

若要使用类和类方法,应首先创建一个包装dll(将类方法转换为以第一个参数作为指向类对象的指针的函数)。 您可以使用Wrappit工具。

我希望这是有帮助的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM