C++ DLL def文件中的重载函数

C++ DLL def文件中的重载函数

我正在写一个C/C++ DLL,并希望导出某些功能,我已经做过这样使用.def文件 LIBRARY "MyLib" EXPORTS Foo Bar 与此定义的代码,例如: int Foo(int a); void Bar(int foo); 但是,如果我想声明一个重载的Foo()方法,如: int Foo(int a, int b); 由于def文件只有函数名,而不是完整的原型…


从DLL导出C++类

我的大多数C/C++开发涉及单片模块文件,绝对没有任何类,所以通常当我需要使用可访问函数创建DLL时,我只需使用标准__declspec(dllexport)指令导出它们。 然后通过LoadLibrary()动态访问它们,或者在编译时使用头文件和lib文件访问它们。 如果要导出整个类(及其所有公共方法和属性),如何执行此操作? 是否有可能在运行时动态加载该类,如果是,如何? 如何使用…



c++ - 从VB6调用DLL函数

我有一个用C/C++编写的Windows DLL(所有导出的函数都是'C')。 DLL在VC++中对我很好。 我把这个DLL给了另一个在VB中完成所有开发的公司。 他们似乎有链接到功能的问题。 我十年没用过VB,甚至没有安装。 可能是什么问题呢? 我宣布所有的公共职能如下:#define MYDCC_API__declspec(dllexport) MYDCCL_API un…


你应该在Java/C#中使用国际标识符吗?

C#和Java允许类名,方法名,局部变量等中的几乎任何字符。不好的做法是使用非ASCII字符,测试可怜的编辑器和分析工具的边界,并使一些人难以阅读,还是美国傲慢唯一的反对意见?…


C#中的wglCreateContext失败,但不在托管的C++中

我试图在C#中使用opengl。 我有以下代码失败,错误2000 ERROR_INVALID_PIXEL_FORMAT 第一个定义:[DllImport("user32.dll", CharSet=CharSet.Auto, SetLastError=true, ExactSpelling=true)] public static extern IntPtr GetDC(IntP…


如何从C++源创建DLL,以及如何在其他源中使用它们?

如何用C++源代码创建DLL,以及如何在其他源中使用它们?…


在c#代码中使用c++ dll中定义的类

我有一个用c++编写的dll,我需要在我的c#代码中使用这个dll。 搜索后我发现使用P/Invoke可以访问我需要的函数,但这些函数是在类中定义的,并使用非静态私有成员变量。 所以我需要能够创建这个类的实例来正确使用这些函数。 如何才能访问此类以便创建实例? 我一直无法找到办法。 我想我应该注意c++ dll不是我的代码。…


VS 2005 C++项目中的msvcr90.dll依赖项

我已经在VS 2005中为本地Win32/unmanaged C++创建了一个DLL项目,称之为myProj.dll。 这取决于一个第三方的商业DLL依次取决于msvcr90.dll(我假设它是从VS 2008项目构建的)。 我会叫它thirdParty.dll。 我的DLL项目在VS2005中构建得很好。 我已经构建了一个链接到myProj.lib的测试应用程序(再次,VS 2005…


.def文件C/C++ DLL

我不明白与DLL使用.def文件的重点。 它似乎取代了在您的DLL代码中使用显式导出(即显式__declspec(dllexport))的需要,但是,如果不使用这些文件,那么在以后使用DLL时会产生链接器问题,我无法生成一个lib文件。 那么,如何在与客户端应用程序链接时使用.defs,它们是否替换了使用头文件或.lib文件的需要?…


c# - PInvoke for C函数返回char*

我正在尝试编写一些从非托管DLL调用方法的C#代码。 dll中函数的原型是: extern "C"__declspec(dllexport) char*foo(void); 在C#中,我首先使用:[DllImport(_dllLocation)] public static extern string foo(); 它似乎在表面上工作,但我在运行时遇到内存损坏错误。 我想我指的是记…




dll visual 生成dll studio lib call 使用dll windows vs2017生成dll 调用c