win7系统提示错误:模块“msvcrtd.dll”已加载,但找不到入口DllRegisterServer。请确保“msvcrtd.dll”为有效的DLL或OCX文件,然后重试。

(从网上找到的终于有用的办法,记录下来)
MSVCRTD.dll是VC的运行库,缺少VC的运行库程序是跑不了的,是VC的问题,不是系统的问题。

一般在编程序时,都是生成了调试版的程序,就是在那个Debug目录下的可执行文件。运行这调试版的exe文件,都会动态连接MFC42D.DLL和MSVCRTD.DLL这两个文件,所以你如果将这个文件在其它机器上运行而这台机器没有这两个文件或者缺少一个,系统则会出现:“找不到所需.dll文件-某某.dll”这样的提示。而一般系统都不带有这两个文件,除非是装了vc等。

解决方法:
在VC下,
1、选择菜单build->Set Active Configuration,然后选择Release,
2、选择菜单project->settings,在General选项卡里第一项选择Use MFC in a static Library,即静态连接
其实这就是生成了发布版程序,在Release目录下,可执行文件不会用到那两个讨厌的dll文件,这样在其他机器上也能用了。

然后编译 F7,执行Ctrl+F5

你可能感兴趣的:(win7系统提示错误:模块“msvcrtd.dll”已加载,但找不到入口DllRegisterServer。请确保“msvcrtd.dll”为有效的DLL或OCX文件,然后重试。)