如何从C#访问SDK?

如何从C#访问SDK?,c#,sdk,setup-project,C#,Sdk,Setup Project,我收到了一个来自3的SDK。聚会。 SDK提供了大量的.dll/.lib/.h文件 但我无法从C#访问任何文件 我试图将dll添加到我的C#项目中作为参考,但它弹出并显示: 无法添加对“xxx.dll”的引用。请确保该文件可访问,并且是有效的程序集或COM组件 我不知道如何使用.lib/.h文件访问3。派对SDK。 SDK附带了一些用C编写的示例代码,这些代码使用.lib/.h文件访问SDK 。LIB和.H文件意味着是本地库(C或C++库)。 为了使用它,您应该有一个从这个SDK到托管C#代码的

我收到了一个来自3的SDK。聚会。 SDK提供了大量的.dll/.lib/.h文件 但我无法从C#访问任何文件

我试图将dll添加到我的C#项目中作为参考,但它弹出并显示: 无法添加对“xxx.dll”的引用。请确保该文件可访问,并且是有效的程序集或COM组件

我不知道如何使用.lib/.h文件访问3。派对SDK。 SDK附带了一些用C编写的示例代码,这些代码使用.lib/.h文件访问SDK


<如果从您提供的SDK中包含DLL,我如何访问C++中的SDK?

< P>。LIB和.H文件意味着是本地库(C或C++库)。 为了使用它,您应该有一个从这个SDK到托管C#代码的包装器

如果SDk中没有包装器,您应该通过p/Invoke自己制作一个

这是来自MSDN的关于p/Invoke的总结(不是esaustive,只是为了让您了解情况):

我本来想把这句话作为对问题的评论,但这里似乎更相关。。。我有这个工作要做,非常感谢。但是,SDK相当大,因此制作所有包装将是一件大事。有没有工具可以从.h文件创建C#包装器?我已经尝试过SWIG(),但这要求我拥有SDK的源代码,而我没有。我唯一可以向您推荐的工具是[P/Invoke Interop Assistant]()。对于一些复杂的API可能不准确/调用互操作助手似乎无法与我的DLL一起工作。