| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 17131 人关注过本帖
标题:"无法启动程序'...debug\abc.exe',系统找不到指定文件"的问题!
只看楼主 加入收藏
珍源程序
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-9-5
收藏
 问题点数:0 回复次数:6 
"无法启动程序'...debug\abc.exe',系统找不到指定文件"的问题!
如题,在调试程序时出现"无法启动程序'...\debug\abc.exe',系统找不到指定文件"的错误,请各位大虾帮忙解决!先谢谢了!补充:但在调试编译C#的程序就没事,只是在调试C++或者C时出现以上问题!

[[it] 本帖最后由 珍源程序 于 2008-9-17 23:40 编辑 [/it]]
搜索更多相关主题的帖子: abc debug exe 系统 
2008-09-17 23:36
随心
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:12
帖 子:2577
专家分:250
注 册:2007-8-12
收藏
得分:0 
你编译生成EXE了没有

天之道,利而不害。圣人之道,为而不争。信言不美,美言不信。善者不辩,辩者不善。知者不博,博者不知。
2008-09-18 10:12
珍源程序
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-9-5
收藏
得分:0 
编译了,但没看到生成EXE,是什么问题?
2008-09-18 10:43
珍源程序
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-9-5
收藏
得分:0 
编译没生成EXE文件的原因是什么?或许解决这个问题就行了
2008-09-18 10:58
随心
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:12
帖 子:2577
专家分:250
注 册:2007-8-12
收藏
得分:0 
编译通过了没

天之道,利而不害。圣人之道,为而不争。信言不美,美言不信。善者不辩,辩者不善。知者不博,博者不知。
2008-09-18 17:52
珍源程序
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-9-5
收藏
得分:0 
[bo][un]随心[/un] 在 2008-9-18 17:52 的发言:[/bo]

编译通过了没

编译通过了的,问题已经解决,但还是谢谢你!解决方案如下:
VS 2005在生成可执行文件时使用了一种新的技术,该技术生成的可执行文件会伴随生成一个清单文件(manifest file)(.manifest后缀文件)(其本质上是XML文档,你可以用文本编辑器打开看看),并在链接完成后将该清单文件嵌入到exe文件中(默认情况下)。而在FAT32文件系统中,在处理清单文件阶段,当增量链接时不能完成清单文件的更新(默认情况下),于是造成清单文件嵌入失败,从而使该exe文件运行时没有相应的清单文件而运行失败并提示如上错误。
    解决方案很多,列举如下:
    1. 由于这是在链接动态运行库出现的问题,所以你可以选择代码生成的连接方式为/MTd而非/MDd,不用这些DLL文件从而避免问题的出现。该方法有一个很显然的缺点:适用范围有限,不推荐该方法。
    2. 既然跟FAT32系统有关,那么我们可以选择在NTFS文件系统中开发从而避免该问题,此方法同上,也是采用的回避问题的方式,不提倡。
    3. 该方法仍与FAT32有关:在项目的“属性|配置属性|清单工具|常规”中的“使用FAT32解决办法”选择“是”(默认为“否”),重新生成项目即可解决问题。该方法是唯一真正针对问题所在而提出的解决方法,使清单工具可以正确更新。(此方法是官方解决方法,也比较方便,推荐)
    4. 既然问题是在更新嵌入的清单文件时发生的,由于FAT32的原因而未能更新嵌入的清单文件,于是我们有如下两种解决方法:
    (1)不启用增量链接。在项目的“属性|配置属性|链接器|常规”中的“启用增量链接”选择“否”。此方法阻断了问题产生的源头,其每次生成exe文件时都直接嵌入清单文件,而不是默认的根据时戳而决定是否更新清单文件。
    (2)不嵌入清单文件。在项目的“属性|配置属性|清单工具|输入和输出”中的“嵌入清单”选择“否”,从而在生成exe文件时附随生成一个清单文件(默认情况下,其文件名为exe文件的全名加上“.manifest”),避免了嵌入清单文件可能失败的问题。在程序运行时,会用到该清单文件。显然,这种方式使可执行程序产生了更多的外部依赖,不推荐。

    另外,还有一个不能称为方法的土办法:每次Build前手动删除*.ilk文件(增量链接文件)(当然可以在项目属性中写入删除命令,使其自动执行),不推荐该土办法。
    最后,总结一下:
    1. 此问题只在特定条件下才会出现:在FAT32文件系统中编译、默认设置(增量模式、不启用FAT32解决方案、嵌入清单文件)、非第一次生成可执行文件文件(即在增量连接、更新清单文件时)。
    2. 解决方案1和4.1方便实用,推荐使用。
2008-09-21 14:03
小林子PK你
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2014-7-12
收藏
得分:0 
我的vs 08 也出现过这种问题,,,,
2014-07-12 10:07
快速回复:"无法启动程序'...debug\abc.exe',系统找不到指定文件"的问题! ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012178 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved