草庐IT

AppInit_DLL

全部标签

windows - 为什么 .dll 文件中存在 "This program cannot be run in DOS mode"文本?

最近我在编译本地C++DLL项目时打开了一个由VisualStudio9生成的.dll文件,惊讶地看到开头附近的“此程序无法在DOS模式下运行”文本。为什么.dll文件中有这段文字? 最佳答案 dll非常类似于具有不同扩展名的可执行文件。您看到的文本是Windows上“标准”可执行文件头的一部分。它用于(曾经)优雅地中止从DOS运行Windows可执行文件的尝试。 关于windows-为什么.dll文件中存在"ThisprogramcannotberuninDOSmode"文本?,我们在

windows - 如何使使用 CMake 构建的可执行文件可以访问 Boost DLL?

我在Windows上使用CMake来构建基于Boost.Test的测试套件。当我动态链接到Boost.Test时,我的可执行文件需要能够找到DLL(位于../../../boost/boost_1_47/lib或与可执行文件相关的类似内容)。所以我需要将DLL复制到可执行文件所在的文件夹中,或者以其他方式使其可找到。使用CMake实现此目标的最佳方法是什么?--附加信息--我的CMakeLists.txt目前有这个Boost相关配置:set(Boost_ADDITIONAL_VERSIONS"1.47""1.47.0")set(BOOST_ROOT"../boost")find_pac

android - 在 Android Studio 启动时找不到 MSVCR100.DLL

我刚刚安装了AndroidStudio并尝试启动它。但是出现如下信息,无法启动:MSVCR100.DLLnotfound我还需要安装其他东西吗? 最佳答案 该库属于MicrosoftVisualC++2010。安装“MicrosoftVisualC++2010RedistributablePackage”将解决您的问题。根据您的操作系统版本,您应该下载相应的文件:MicrosoftVisualC++2010RedistributablePackage(x86)MicrosoftVisualC++2010Redistributable

c++ - 在程序启动时从另一个目录加载 DLL

我的基本问题是:我的程序(MyProgram.exe)依赖于另一个程序(OtherProgram)的DLL,我试图避免每次OtherProgram更新时重新打包一个新的DLL。我希望在启动时在OtherProgram的DLL中有MyProgram.exe链接,但我不完全确定Windows是否允许这样做。因此,如果有某种解决方法也是可以接受的。仅针对某些背景,该平台是Windows7x64,当我在MyProgram.exe项目目录中创建指向OtherProgram安装目录中DLL的符号链接(symboliclink)时,MyProgram.exe运行良好。当我尝试在没有符号链接(symb

php - 安装 PHP7 和 Apache2.4 - Windows 10 上的 php7apache2_4.dll 错误

刚进入Windows10,在配置php.ini和http.conf后,我进入命令行httpd.exe并收到此错误消息:httpd.exe:Syntaxerroronline530ofC:/Apache/conf/httpd.conf:CannotloadC:/php/php7apache2_4.dllintoserver:Thespecifiedmodulecouldnotbefound.我知道这个文件在那个文件夹里。我已经安装了64位版本的PHP和Apache,但我不知道发生了什么。 最佳答案 检查您是否安装了线程安全版本的PHP

c++ - 使用 cmake 构建可执行文件和共享库,runtimelinker 找不到 dll

我正在使用gcc(cygwin)、gnumake、windows7和cmake。我的cmaketestprojekt具有以下结构rootdir|--App||--app.cpp|+--CMakeLists.txt|--Lib||--lib.cpp||--CMakeLists.txt|--MakeFileProject+CMakeLists.txtrootdir/App/app.cpp:#includevoidprintThemMessageToScreen(std::stringinput);//prototypeintmain(intargc,char**argv){printThe

windows - 如何使用 CMake 构建将特定 list 文件嵌入到 Windows DLL 中?

所以我有一个使用CMake构建的DLL,它需要嵌入特定的list文件。在VisualStudio设置中,我可以在ManifestTool/Input和Ouput/AdditionalManifestFiles下添加list文件名,它可以正常工作。这似乎是CMake应该可以做到的事情,但我一直无法弄明白。关于如何使用CMake完成此操作有什么想法吗? 最佳答案 cmake-3.4现在已经学会了如何处理列为源文件的*.manifest文件。https://cmake.org/cmake/help/v3.4/release/3.4.htm

windows - 在哪里可以找到 Windows(XP、Vista、7 等)上可用的默认 dll 文件列表?

是否有一些.dll文件列表可用于各种新安装Windows平台(或者至少是最近的平台,如WinXP和Win7)?我正在寻找类似于thisoneforWindows2000的列表.(我正在使用py2exe编译一个python应用程序,应用程序报告编译后的应用程序可能需要哪些dll,但不幸的是它没有告诉我哪些是默认安装的) 最佳答案 我认为this是您所追求的(至少对于Windows7)。和here'stheWindowsXPversion. 关于windows-在哪里可以找到Windows(

c# - 无法删除 Microsoft.Bcl.Build.Tasks.dll

我的ASP.NETWeb-Api解决方案存在问题,我的构建代理无法清理其工作目录,因为库Microsoft.Bcl.Build.Tasks.dll仍在被某些进程使用,因此无法删除。我在构建代理中所做的唯一事情就是使用标准MSBuild.exe构建解决方案,然后使用MSTest.exe运行一些单元测试。我注意到Microsoft.Bcl.Build版本1.0.14(我使用的版本)被Microsoft.Net.Http列为依赖项,也被Microsoft.Bcl库。我在代理中的工作流程是这样的:克隆一个gitrepo到代理使用msbuild构建解决方案使用mstest测试解决方案一段时间后,

c++ - 编译仅依赖于 kernel32.dll 和 user32.dll 的 C++ 程序?

我正在使用VisualStudio2005。我想编译一个简单的程序,它可以与任何Windows32位版本一起工作,而不管安装的c++运行时库版本如何。此程序将调用GetModuleHandle和GetProcAddress函数而不调用任何其他函数,然后退出,当退出代码是函数地址时。如何编译只依赖kernel32.dll和user32.dll的C++程序,而不需要任何C++运行时库? 最佳答案 您需要定义自己的入口点,而不是使用main或WinMain。您的入口点是一个不带参数的void函数。您必须使用/entry:funcName将