VS2008控制台程序运行出错,缠手啊
VS2008控制台程序运行出错,棘手啊!
用VS2008建立一个控制台应用程序,程序使用VS2005下开发的DLL,
控制台程序编译链接都没问题,只是运行报下面的错误:
An application has made an attempt to load the run time library incorrectrly.
我试过ignore mscvrtd.lib, FAST32 YES都不管用
------解决思路----------------------
在vs2005里面编译dll的时候没有把manifest文件编译进dll里面吧,加进去试试
------解决思路----------------------
如果是自己写的程序,注意链接时用的动态链接库。往往是库之间有冲突。例如 debug 编译要链接
*d.dll; Release 编译要链接不带 d的 .dll.
例如 debug 用 'msvcr80d.dll' , Release 用 'msvcr80.dll'。 不能同时用2者。
如果 用 Visual Studio 建项目,Debug 和 Release 会自动选对库名。
----
如果是重复安装编译器,注意版本,动态库 .dll .lib 很多,不要把不同版本的 文件 混在一起。
------解决思路----------------------
用depends.exe查看exe依赖的dll,然后将除系统dll外的其它dll拷贝到和exe相同目录下。
用VS2008建立一个控制台应用程序,程序使用VS2005下开发的DLL,
控制台程序编译链接都没问题,只是运行报下面的错误:
An application has made an attempt to load the run time library incorrectrly.
我试过ignore mscvrtd.lib, FAST32 YES都不管用
------解决思路----------------------
在vs2005里面编译dll的时候没有把manifest文件编译进dll里面吧,加进去试试
------解决思路----------------------
如果是自己写的程序,注意链接时用的动态链接库。往往是库之间有冲突。例如 debug 编译要链接
*d.dll; Release 编译要链接不带 d的 .dll.
例如 debug 用 'msvcr80d.dll' , Release 用 'msvcr80.dll'。 不能同时用2者。
如果 用 Visual Studio 建项目,Debug 和 Release 会自动选对库名。
----
如果是重复安装编译器,注意版本,动态库 .dll .lib 很多,不要把不同版本的 文件 混在一起。
------解决思路----------------------
用depends.exe查看exe依赖的dll,然后将除系统dll外的其它dll拷贝到和exe相同目录下。