vc++2008安装项目msvcrt.dll
vc++2008 installer project msvcrt.dll
你好,我的工作遵循系统。
Windows 7 ultimate sp1 x64。
Visual studio 9c++ sp1。
Directx SDK 9(我不知道我的指定版本。但它的版本高于2010年6月)。
Boost x86 1.47
和我的visual studio不是英文版的,所以我不能准确地写菜单或消息的名称。但意思几乎是一样的。
我使用visual studio的"installer project"安装我的项目
并包含每个包含的项目的依赖dll(使用visual studio的函数)
一切都很好。安装并运行测试成功。并且每个DLL都安装好了。(ex d3d9.dll)
当我在纯Windows xp sp3上测试时,install (setup.exe)是成功的。但是当我运行这个程序时,它输出了错误,没有执行。
错误对话框是:
过程入口point_except_handler4_common无法在动态链接库msvcrt.dll中找到。
(我的Windows xp不是英文的,但它几乎是正确的)
我又试了一次:
安装程序项目->"属性"->"先决条件…"->"选择要安装的先决条件:" ->在->"Visual c++ 2010 Runtime Libraries (x86) &.Net Framework 3.5 sp1 -> "指定先决条件的安装位置" -> "从组件供应商的网站下载先决条件"
输出是
installerproject。Msi
Vcredist_x86.exe
Setup.exe
我尝试重新安装vcredist_x86并重新启动。客户端计算机(纯Windows xp3)也有同样的问题。谷歌说"msvcrt.dll引起了很多问题",但在我的发现列表中没有文章解决我的问题。他们说"没有通解"。
谁知道这个问题的解?为什么会出现这个问题呢?
请帮帮我。我很抱歉我的英语最短。这是我最好的英语技能
您可能希望将程序加载到XP机器上的Dependency Walker中,以查看试图链接到msvcrt的二进制文件。
msvcrt.dll
是一个系统DLL,不是Visual c++ 2008(或2010 -不清楚你在使用哪个)运行时库的一部分。vc++ 2008的运行时DLL被命名为msvcr90.dll
,所以我猜有一些间接依赖于msvcrt.dll。你需要弄清楚什么二进制文件试图使用msvcrt.dll
的导出,并确定它是否与WinXP兼容,或者如何使其兼容。
请注意,由于msvcrt.dll
是一个系统DLL,它在Windows的系统文件保护功能下,所以它通常不能更新/修改,除非通过服务包和系统更新。
仅供比较:
- 一台运行WinXP SP3的机器有
msvcrt.dll
版本7.0.2600.5512 -它没有_except_handler4_common
入口点。 - 另一台运行Win7 SP1 x64的机器有32位
msvcrt.dll
版本7.0.7600.16385,并且它确实有入口点。
- 挂起和取消挂起一个文件DLL
- std::threads可以从Windows DLL中的全局变量创建/销毁吗?
- 导入库可以跨dll版本工作吗
- 从C++dll访问C#中的一行主要参数
- 链接到自行创建的dll失败
- 为什么使用 P/Invoke 调用 dll 时,某些计算机中的 LoadLibrary 失败?
- 在调用FreeLibrary后,释放动态链接到具有相同版本的CRT堆的DLL的内存
- 如何指定我希望我的LIB链接到的DLL文件?-Visual Studio 2019
- 如何将图像传输到c++(dll)中的缓冲区,然后在c#的缓冲区中读/写
- C++:将外部库链接到dll库
- 在 Windows 上,是否可以让 dll 在不使用 PATH 环境变量的情况下在另一个文件夹中查找依赖项?
- 代码在 msvcrt .dll函数上设置断点失败
- 为什么我不能在另一台电脑上运行自己的dll(msvcrt.dll被错过)
- 链接到系统C库msvcrt.dll
- LNK 2005链接器出现msvcrt.lib(MSVCR90.dll)问题
- 是否可以在不安装可分发的 VC++ 包的情况下将 MSVCRT DLL 与我的应用捆绑在一起
- vc++2008安装项目msvcrt.dll
- 将针对msvcrt.dll编译的库链接到Visual Studio 10 c++应用程序中
- crt0 是否加载 msvcrt.dll
- Qt 5.4.0部署问题- msvcrt.dll中缺少vsprintf_s