XP内嵌CRT版本问题.LoadLibraryEx失败
XP embedded CRT version issue.. LoadLibraryEx failing
我在我的应用程序中使用了一个第三方dll,该dll注定要在Windows XP嵌入式SP1系统上运行。
它在我的开发盒上运行得很好,但是当我试图在目标平台上运行它时,它因以下事件而失败。当我调用LoadLibraryEx加载第三方DLL时,会发生此事件。
Event Type: Error
Event Source: SideBySide
Event Category: None
Event ID: 32
Date: 9/8/2011
Time: 9:42:28 AM
User: N/A
Computer: OEM-J1XMVGHGNVX
Description:
The description for Event ID ( 32 ) in Source ( SideBySide ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: Microsoft.VC80.CRT, The referenced assembly is not installed on your system.
我发现安装Microsoft Visual c++ 2005 Redistributable Package将解决这个问题,但我不能这样做,因为它是一个嵌入式平台,MSI不能在其上运行。我尝试将dll文件msvcm80.dll, msvcp80.dll和msvcr80.dll复制到系统中,但没有解决问题。
将所有的EXE和DLL放在一个目录中,包括CRT。复制作品,只要你把它们放在正确的地方。
我找到了解决方案,并将其张贴在这里,供有类似问题的人使用。
我把与CRT 80相关的文件夹和文件从我的工作电脑的WinSxS目录复制到目标平台,它工作了。
我复制了名为"x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.4053_x-ww_e6967989"的目录,其中包含CRT dll。从"Policies"answers" manifest "目录复制相关文件。
相关文章:
- 如果没有malloc,链表实现将失败
- 模板参数替换失败,并且未完成隐式转换
- 具有默认模板参数的多态类的模板推导失败
- 视图中的参数推导失败:take_while
- 链接到自行创建的dll失败
- 带有特殊路径部分的"std::filesystem::weakly_canonical"失败
- GetShortPathName在网络驱动器上使用中文文件夹时失败
- gcc和c++17的过载解析失败
- 为什么使用 P/Invoke 调用 dll 时,某些计算机中的 LoadLibrary 失败?
- 在WSL:configure_file上对config_file的每次调用都失败:配置文件时出现问题
- 使用 GCC 卸载的 OpenMP 卸载失败,并出现"Ptx assembly aborted due to errors"
- 使用cmake从源代码构建MySQL连接器/C++失败(与以前的声明冲突)
- 链接阶段在Ubuntu上失败,但在MacOS上失败
- 从父数组测试用例构造二叉树失败
- LibGit2 SSH身份验证失败
- 如何让LLDB在成功时退出,在失败时等待
- VS2017,C++包含目录与附加包含目录,子文件夹包含失败-但为什么
- 生成MRPT库时cmake配置失败
- 为什么除非添加括号,否则构造函数上的模板替换会失败?
- XP内嵌CRT版本问题.LoadLibraryEx失败