求帮助解决由于应用程序配置不正确,应用程序未能启动

时间:2021-05-04 16:46:30
项目是MFC的,由于基础库使用的MFC动态链接,因此把mfc90d.dll等拷贝了进工程,然后发现不行。
参照网上的说法加了
msvcm90d.dll
msvcp90d.dll
msvcr90d.dll
Microsoft.VC90.DebugCRT.manifest 

还是不行,depends看了下,提示少模块,但是少ieshims.dll等,心想这种应该无关,求解决。
注:运行时为MTD, 使用MFC动态链接,这些已经拷贝过去了。

18 个解决方案

#1


改为MD试下

#2


bin目录放了?

#3


怎么使用的是Debug 版本,用Release版本.

#4


debug的还要bin目录吗?

#5


怎么用的Debug版本,用Release版本发布产品

#6


release无法通过,因为基础库是debug的

#7


贴一下depends的剖析
选项选择:
     通过插入应用程序目录到 PATH 环境变量,模拟 &ShellExecute。
     为进程附加和分离消息记录 DllMain 调用。
     为所有其它消息记录 DllMain 调用,包括线程附加和分离消息。
     挂接进程以收集更多详细的依赖信息。
     记录 LoadLibrary 函数调用。
     记录 GetProcAddress 函数调用。
     记录线程信息。
     使用简单线程代替真实线程标识。
     记录第一次异常。
     记录调试输出信息。
     记录文件名时使用完整路径。
     在每行记录中记录时间戳。
     自动打开并剖析子进程。
--------------------------------------------------------------------------------

00:00:00.000: 启动进程失败。 由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题。 (14001).

#8


不会是把DEBUG版拷到没装编译器的电脑上跑吧。
要么就是没有加入运行库、

#9


是把DEBUG拷到没编译器的电脑上跑的,请问如何才能通过

#10


没人回一下么?

#12


引用 9 楼 superzhangdan 的回复:
是把DEBUG拷到没编译器的电脑上跑的,请问如何才能通过

如果是RELEASE版本的话在那台电脑上装下动态库就好了
DEBGU的话没辙呢

#13


你自己的电脑上没有MFC 的环境吗?装VC2008的时候应该就有了,如果你的是VC6,而依赖的库是VC2008下编译的,那就没办法了,只能让提供库的人提供VC6下编译的库,或者直接装2008

#14


解决方式:
方法一:直接使用静态链接MFC选项,只要一个EXE就行了。
方法二:使用动态链接MFC,那么你需要将VC目录下的C运行库,MFC库DLL以及MANIFEST拷贝到当前程序目录。
方法三:安装VC发行包。

#15


http://blog.csdn.net/fengbingchun/article/details/6449241
将对应的manifest文件也加上试试看

#16


有时候程序包含的DLL也需要其他版本的运行库 曾今我就遇到过,用了2个版本的MFC运行库,主要还是要对应manifest这个文件进行查看,如果是已经开发好的DLL这么你就得好好研究下是不是需要某些运行库

#17


此问题已由xuddk727大侠提供解决方法解决,感谢大家。
说下解决方法,
1.(xp)拷贝VC\redist\Debug_NonRedist\x86下所有dll到目录下,并将你的winsxs替换掉对方的winsxs,然后重启。
2.制作安装包亦可解决。

#18


该帖将分给xuddk727大侠,感谢您多次的帮助,祝您十一愉快。
另外未得到分的朋友可到
http://topic.csdn.net/u/20110929/21/850acb18-73ce-4d04-b944-5fc1e4034f65.html
此贴将均分,感谢所有帮助我的朋友。

#1


改为MD试下

#2


bin目录放了?

#3


怎么使用的是Debug 版本,用Release版本.

#4


debug的还要bin目录吗?

#5


怎么用的Debug版本,用Release版本发布产品

#6


release无法通过,因为基础库是debug的

#7


贴一下depends的剖析
选项选择:
     通过插入应用程序目录到 PATH 环境变量,模拟 &ShellExecute。
     为进程附加和分离消息记录 DllMain 调用。
     为所有其它消息记录 DllMain 调用,包括线程附加和分离消息。
     挂接进程以收集更多详细的依赖信息。
     记录 LoadLibrary 函数调用。
     记录 GetProcAddress 函数调用。
     记录线程信息。
     使用简单线程代替真实线程标识。
     记录第一次异常。
     记录调试输出信息。
     记录文件名时使用完整路径。
     在每行记录中记录时间戳。
     自动打开并剖析子进程。
--------------------------------------------------------------------------------

00:00:00.000: 启动进程失败。 由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题。 (14001).

#8


不会是把DEBUG版拷到没装编译器的电脑上跑吧。
要么就是没有加入运行库、

#9


是把DEBUG拷到没编译器的电脑上跑的,请问如何才能通过

#10


没人回一下么?

#11


#12


引用 9 楼 superzhangdan 的回复:
是把DEBUG拷到没编译器的电脑上跑的,请问如何才能通过

如果是RELEASE版本的话在那台电脑上装下动态库就好了
DEBGU的话没辙呢

#13


你自己的电脑上没有MFC 的环境吗?装VC2008的时候应该就有了,如果你的是VC6,而依赖的库是VC2008下编译的,那就没办法了,只能让提供库的人提供VC6下编译的库,或者直接装2008

#14


解决方式:
方法一:直接使用静态链接MFC选项,只要一个EXE就行了。
方法二:使用动态链接MFC,那么你需要将VC目录下的C运行库,MFC库DLL以及MANIFEST拷贝到当前程序目录。
方法三:安装VC发行包。

#15


http://blog.csdn.net/fengbingchun/article/details/6449241
将对应的manifest文件也加上试试看

#16


有时候程序包含的DLL也需要其他版本的运行库 曾今我就遇到过,用了2个版本的MFC运行库,主要还是要对应manifest这个文件进行查看,如果是已经开发好的DLL这么你就得好好研究下是不是需要某些运行库

#17


此问题已由xuddk727大侠提供解决方法解决,感谢大家。
说下解决方法,
1.(xp)拷贝VC\redist\Debug_NonRedist\x86下所有dll到目录下,并将你的winsxs替换掉对方的winsxs,然后重启。
2.制作安装包亦可解决。

#18


该帖将分给xuddk727大侠,感谢您多次的帮助,祝您十一愉快。
另外未得到分的朋友可到
http://topic.csdn.net/u/20110929/21/850acb18-73ce-4d04-b944-5fc1e4034f65.html
此贴将均分,感谢所有帮助我的朋友。