草庐IT

DLL_EXPORT

全部标签

c++ - 为什么构建没有预编译头文件的 DLL 在使用时会出现奇怪的错误?

总结:今天我发现在构建一个没有预编译头文件的DLL时,当您尝试使用它时会出现一个奇怪的错误。当禁用预编译header时,构建DLL会很顺利。但是,一旦附加了DLL(编译时或运行时),它就会导致错误“参数无效”。两种情况的实际错误代码都不同。附加编译时时会弹出错误代码为0xc000000d的对话框,调用LoadLibrary()时会返回NULL指针,而GetLastError()会返回0x57.编辑:我发现当增量链接被禁用时问题就消失了。在运行附加到DLL编译时的客户端时,我以某种方式错过了VisualStudio显示的以下错误:'TestClient.exe':Loaded'D:\Pr

C++、Qt - 如何摆脱 dll 依赖项?

我已经编译了我的Qt应用程序,现在有以下问题-现在我构建的项目需要QtCore4.dll和QtGui4.dll位于同一文件夹中.exe文件是。(我使用带有Qt插件的MSVS2008构建了我的项目)问:有什么方法可以将我的最终应用程序与这些.dll文件结合起来,使它们成为一个大的.exe文件?(我只是不想在我的发布-应用程序中有另一堆dll文件)谢谢。 最佳答案 您需要build和linkto静态Qt。编辑:这是一个至少指向similarinformation的更新链接. 关于C++、Qt

.net - 如何将 C 库编译成 .Net dll?

我们是否可以通过编译包含类似代码的cpp项目将C库编译为.Netdll(包含并打开对所有C库函数的访问)extern"C"{#include}用/clr:pure参数与VS?(VS10)或者我们应该做些更棘手的事情? 最佳答案 您可能对此感兴趣:CompilingyourCcodeto.NET创建C编译器occil.exe从c代码创建.NETdll,例如stack.c第1步:将stack.c构建为IL代码occil/ostackdll.il/c/Wd/9/NStackLib.Stackstack.c第2步:构建生成的IL代码到.NE

C++ DLL插件接口(interface)

我正计划做一个C++插件接口(interface)alaHowtocreatesomeclassfromdll(constructorindll)?(с++)但有人担心,如果该接口(interface)用于通过MinGW或Borland创建DLL,并且DLL加载程序是使用MSVC++编译的,则可能会出现问题。由于唯一导出的函数被声明为extern"C"我不明白为什么它不起作用?想法? 最佳答案 如果您想跨编译器(和发布/调试)兼容并使用C++,您需要付出更多努力。基本上-您可以传递基本数据类型和指向纯虚拟类的指针。这些类不得包含任何

c# - 如何在 dot net 中使用免注册 COM dll

在我的一个项目中,我有一个使用C++DLL的C#应用程序。目前在客户端PC上,我们正在注册表中的COM组件中注册C++DLLS,以便我们在C#中使用它们。我在NET上了解到,Microsoft提供了一个RegFree解决方案,链接为http://msdn.microsoft.com/en-us/library/ms973913.aspx但是看完之后我并没有得到太多线索,因为我的应用程序架构如下所示不同我有2个C++dll让我们说CPForms.dll和Rules.dll。Rule.dll包含在CPForms.dll中我有1个C#dll假设使用CPForms.DLL的ConsumeFor

c++ - 如何将 Qt 资源嵌入到 .dll 文件中?

我的项目中有数百个HTML文件,我不想将所有这些HTML文件都编译成一个.exe。因此,我想将我的HTML文件构建到.dll文件中。如何将这样的Qt资源嵌入到.dll文件或其他类型的编译库中? 最佳答案 您打算只为html文件使用dll还是它也包含代码?如果dll仅用于html文件,请创建externalexternalresourcefile相反。将qrc文件编译为外部资源文件:rcc-binarymyresource.qrc-omyresource.rcc在你的exe中注册资源文件:QResource::registerReso

c++ - 依赖遍历器中缺少 Dll

我有一个dll,我正在使用平台visualstudio2003将其打开到依赖项walker中,操作系统是2000。我的那个dll找到所有依赖项。但是当我要在另一个装有OS-windows7和visualstudio2010的系统中打开那个dll时,我发现缺少dll错误。GDIPLUS.DLL,GPSVC.DLL,IESHIMS.DLL.上面列出的3个dll丢失了。当我下载这些dll并将它们放入我的dll所在的相同位置时,我发现下面列出了丢失的dll列表。API-MS-WIN-CORE-COM-L1-1-1.DLL,API-MS-WIN-CORE-DEBUG-L1-1-1.DLL,API

c++ - 在 Win32 DLL 项目中是否有 'AssemblyInfo.cs' 的等价物?

我已经看过thistopic,但我需要翻转答案。如何在Win32DLL中设置程序集信息属性*? 最佳答案 好吧,我再看一眼就明白了。右键单击VisualStudio项目,然后选择添加->资源..选择“版本”,然后点击“新建...”VisualStudio将为您生成文件,您可以简单地编辑信息。 关于c++-在Win32DLL项目中是否有'AssemblyInfo.cs'的等价物?,我们在StackOverflow上找到一个类似的问题: https://stack

c++ - 从 C++ DLL 调用 Delphi 中的回调函数

我有一个我编写的C++DLL,它有一个公开的函数,它接受一个函数指针(回调函数)作为参数。#defineDllExportextern"C"__declspec(dllexport)DllExportboolRegisterCallbackGetProperty(bool(*GetProperty)(UINTobject_type,UINTobject_instnace,UINTproperty_identifer,UINTdevice_identifier,float*value)){//Dosomething.}我希望能够从Delphi应用程序中调用这个公开的C++DLL函数,并注

c# - p/从在 x64 机器上运行的 C# 程序调用 32 位 dll

我有一个C#程序,我在x64计算机上使用所有默认设置进行编译。我想p/调用一个我知道是32位(非托管)C++DLL的DLL。当我的C#程序在32位计算机而非64位计算机上运行时,我可以让它工作。如何在调用32位dll的DllImport调用中指定?我现在拥有的示例:[DllImport("test32bitdll.dll",SetLastError=true)]publicstaticexternvoidMyFunc();我没有test32bitdll.dll文件的源代码。 最佳答案 在64位进程中运行32位非托管代码是不可能的。或