草庐IT

c - 访问dll中的全局变量

如何在dll中访问在我的应用程序的main()函数中初始化的全局变量?我的全局变量包含一个关键部分对象,我需要将其锁定在一个dll中。我已经尝试在我的应用程序中导出它并使用它在dll中导入__declspec(dllexport)和__declspec(dllimport)但是当我尝试锁定关键部分时,我得到一个运行异常,这让我认为我的dll访问的变量没有正确初始化。dll在运行时使用LoadLibrary加载。如有任何提示,我们将不胜感激。 最佳答案 通常从应用程序访问DLL中的变量,但看起来您正试图以相反的方式进行访问。而且您从应

c++ - 将 DLL 作为 exe 启动

是否可以将native(C++)DLL作为可执行文件加载?最好直接从内存中提取,而不在硬盘驱动器或类似的东西上创建EXE? 最佳答案 Microsoft提供Rundll32.exe可用于执行已明确编码以支持此用法的DLL函数。 关于c++-将DLL作为exe启动,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/9039895/

c# - Windows 7 Message Box 的图标存储在哪里 [.DLL]

有谁知道Windows中的MessageBox符号存储在哪里(错误图标、感叹号图标...)。我认为它们在.dll文件中! 最佳答案 使用System.Drawing.SystemIconsclass访问Windows中使用的常用图标。它包括MessageBox中使用的图标。从技术上讲,您可以在VisualStudio中使用文件+打开+文件并导航到c:\windows\system32\user32.dll来获取这些图标。然而,这是不合法的。也不能保证它们在更高版本的Windows上看起来相同,它们可能不会。请改用SystemIcon

windows - 如何在 Delphi 的多线程中加载一个 DLL?

也许我错过了什么,我不知道这里发生了什么。我正在尝试在TThread对象的多个实例中加载同一个DLL。这是我的DLL代码:libraryMyCalcFor32;usesSysUtils,Classes,uRunnerin'uRunner.pas';ExportsEVal;{$R*.res}beginend.这是uRunner.pas:unituRunner;interfaceusesSysUtils,Classes;functionEVal(Valor:WideString):WideString;stdcall;export;implementationfunctionEVal(Va

c++ - 丢失 DLL 的一般方法

我想每个人都时不时遇到丢失dll的问题。我想要获得的是查找和安装dll的“推荐”方法。使用depends.exe很容易找出缺少的dll。 最佳答案 不要再使用depends.exe,它跟不上Windows核心和并行缓存等部署策略的发展。试图修复它给出的警告实际上会使您的机器变得非常糟糕。仅在程序实际无法启动时将其用作提示。 关于c++-丢失DLL的一般方法,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co

c++ - 从 C++ 类制作 Visual C++ DLL

我有以下C++代码来制作dll(VisualStudio2010)。classShape{public:Shape(){nshapes++;}virtual~Shape(){nshapes--;};doublex,y;voidmove(doubledx,doubledy);virtualdoublearea(void)=0;virtualdoubleperimeter(void)=0;staticintnshapes;};class__declspec(dllexport)Circle:publicShape{private:doubleradius;public:Circle(dou

windows - EXE、DLL、SYS等文件类型是如何一起调用的?

我想知道所有具有可执行内容的文件的正确名称是什么?在.NET世界中,它被称为程序集。Windows世界中有任何通用术语吗? 最佳答案 我只是称它们为二进制文件或可执行文件。 关于windows-EXE、DLL、SYS等文件类型是如何一起调用的?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8400410/

c - 在 Windows XP 中手动更新 shell32.dll 是否安全/实用?

我正在运行我的开发环境WindowsXP。我需要访问函数SHGetKnownFolderPath。我的团队建议我用他们的更新我的shell32.dll并更新我的头文件。函数记录在这里:http://msdn.microsoft.com/en-us/library/bb762188%28v=vs.85%29.aspx现在,了解这个问题的重点是通过复制粘贴手动覆盖/更新shell32.dll的可行性。请不要以上述功能的解决方法/替代方案作为回应。这不是这个问题的重点。简单地使用Windows7版本的shell32.dll并粘贴到我的(在XP中)是否安全?我不敢测试它,因为害怕毁了我的整个操

windows - 如何让 powershell 告诉我丢失的 DLL?

我在Windows中使用powershell作为shell。当我尝试启动一些在PATH环境变量中缺少dll依赖项的应用程序时,没有任何反应,powershell只是静默返回新的命令提示符。有没有办法让powershell的失败声音更大,告诉我到底缺少什么,就像默认的cmdshell一样? 最佳答案 我遇到了同样的问题。PowerShell正在将$LASTEXITCODE代码设置为-1073741515(0xC0000142,3221225794),但没有输出解释实际错误.通过cmd.exe运行它时,我会弹出类似的内容:Thecode

python - 为什么 Windows 上的 Cython 扩展依赖于 pythonXX.dll 而不是 MacOSX?

我在windows和mac上构建了相同的库(下面的例子来自rfoo),而mac版本只有系统依赖$otool-Lmarsh.somarsh.so:/usr/lib/libSystem.B.dylib(compatibilityversion1.0.0,currentversion1213.0.0)在windows上它依赖于python的dll>dumpbin/dependentsmarsh.pydMicrosoft(R)COFF/PEDumperVersion12.00.31101.0Copyright(C)MicrosoftCorporation.Allrightsreserved.D