草庐IT

DllImport

全部标签

dllimport静态数据成员的C++定义

我确实有一个如下所示的类(class)://.hfileclass__declspec(dllimport)MyClass{public://stuffprivate:staticintmyInt;};//.cppfileintMyClass::myInt=0;我得到以下编译错误:errorC2491:'MyClass::myInt':definitionofdllimportstaticdatamembernotallowed我该怎么办? 最佳答案 __declspec(dllimport)表示当前代码使用实现您的类的DLL。成员

c# - 如何使用 DLLImport 将字符串从 C# 传递到 C++(以及从 C++ 到 C#)?

很长一段时间以来,我一直在尝试向/从C#向/从C++发送一个字符串,但还没有成功...所以我的问题很简单:有谁知道将字符串从C#发送到C++以及从C++发送到C#的某种方法?(一些示例代码会有所帮助) 最佳答案 在你的c代码中:extern"C"__declspec(dllexport)intGetString(char*str){}extern"C"__declspec(dllexport)intSetString(constchar*str){}在.net端:usingSystem.Runtime.InteropServices

c# - 如何使用 DLLImport 将字符串从 C# 传递到 C++(以及从 C++ 到 C#)?

很长一段时间以来,我一直在尝试向/从C#向/从C++发送一个字符串,但还没有成功...所以我的问题很简单:有谁知道将字符串从C#发送到C++以及从C++发送到C#的某种方法?(一些示例代码会有所帮助) 最佳答案 在你的c代码中:extern"C"__declspec(dllexport)intGetString(char*str){}extern"C"__declspec(dllexport)intSetString(constchar*str){}在.net端:usingSystem.Runtime.InteropServices

c++ - Windows & C++ : extern & __declspec(dllimport)

“extern”和“__declspec(dllimport”)之间有什么区别/关系?我发现有时需要同时使用它们,有时一个就足够了。我说的对吗:“extern”用于静态链接库,"__declspec(dllimport)"用于DLL(动态链接库),对于各自的链接类型,两者实际上都做了相同的工作,在使用导入库(有助于与dll链接的小.lib文件)时,您需要同时使用这两者吗? 最佳答案 extern表示实体具有外部链接,即在其翻译单元(C或CPP文件)之外可见。这意味着相应的符号将被放置在目标文件中,因此如果该目标文件成为静态库的一部分

c++ - Windows & C++ : extern & __declspec(dllimport)

“extern”和“__declspec(dllimport”)之间有什么区别/关系?我发现有时需要同时使用它们,有时一个就足够了。我说的对吗:“extern”用于静态链接库,"__declspec(dllimport)"用于DLL(动态链接库),对于各自的链接类型,两者实际上都做了相同的工作,在使用导入库(有助于与dll链接的小.lib文件)时,您需要同时使用这两者吗? 最佳答案 extern表示实体具有外部链接,即在其翻译单元(C或CPP文件)之外可见。这意味着相应的符号将被放置在目标文件中,因此如果该目标文件成为静态库的一部分

c# - "Unable to find an entry point named [function] in dll"(c++到c#类型转换)

我有一个来自第三方的dll,它是用C++编写的。以下是来自dll文档的一些信息://startdocumentationRECO_DATA{wchar_tSurname[200];wchar_tFirstname[200];}说明:接收函数结果的数据结构。所有函数结果将是存储为Unicode(UTF-8)。方法:boolrecoCHN_P_Name(char*imgPath,RECO_DATA*o_data);输入:char*imgPath此图像位置的完整路径识别功能RECO_DATA*o_data接收函数的数据对象结果。函数返回:成功则返回true,否则返回false。//enddo

c# - "Unable to find an entry point named [function] in dll"(c++到c#类型转换)

我有一个来自第三方的dll,它是用C++编写的。以下是来自dll文档的一些信息://startdocumentationRECO_DATA{wchar_tSurname[200];wchar_tFirstname[200];}说明:接收函数结果的数据结构。所有函数结果将是存储为Unicode(UTF-8)。方法:boolrecoCHN_P_Name(char*imgPath,RECO_DATA*o_data);输入:char*imgPath此图像位置的完整路径识别功能RECO_DATA*o_data接收函数的数据对象结果。函数返回:成功则返回true,否则返回false。//enddo

python - 导入 PyQt5 时 DLL 加载失败

我已经在windows平台上安装了PyQt5,并得到一个importError:DLLloadfailed。我已经使用命令安装了pyqt5pip3installpyqt5Successfullyinstalledpyqt5-5.8.1我的Python版本如下:Python3.5.2|Anacondacustom(64-bit)|(default,Jul52016,11:41:13)[MSCv.190064bit(AMD64)]onwin32导入错误如下:fromPyQt5.QtWidgetsimportQApplicationTraceback(mostrecentcalllast):

python - 导入 PyQt5 时 DLL 加载失败

我已经在windows平台上安装了PyQt5,并得到一个importError:DLLloadfailed。我已经使用命令安装了pyqt5pip3installpyqt5Successfullyinstalledpyqt5-5.8.1我的Python版本如下:Python3.5.2|Anacondacustom(64-bit)|(default,Jul52016,11:41:13)[MSCv.190064bit(AMD64)]onwin32导入错误如下:fromPyQt5.QtWidgetsimportQApplicationTraceback(mostrecentcalllast):

C#的DllImport使用方法

DLL与应用程序动态链接库(也称为DLL,即为“DynamicLinkLibrary”的缩写)是MicrosoftWindows最重要的组成要素之一,打开Windows系统文件夹,你会发现文件夹中有很多DLL文件,Windows就是将一些主要的系统功能以DLL模块的形式实现。动态链接库是不能直接执行的,也不能接收消息,它只是一个独立的文件,其中包含能被程序或其它DLL调用来完成一定操作的函数(方法。注:C#中一般称为“方法”),但这些函数不是执行程序本身的一部分,而是根据进程的需要按需载入,此时才能发挥作用。DLL只有在应用程序需要时才被系统加载到进程的虚拟空间中,成为调用进程的一部分,此时该