我正在使用Visual Studio 2005中的PocketPC应用程序.解决方案正在构建正常,然后突然崩溃.第一个错误就是这个(假设项目是FooPDA):
"无法找到位于'%InstallDir%'中的文件'FooPDA.exe'的源文件'C:\ FooPDA\obj\Release\FooPDA.exe',该文件可能不存在或被锁定."
这个错误对我来说相当混乱.它正在寻找它应该生成的文件.任何人都知道这里可能出了什么问题?
编辑:项目在版本控制之外构建正常,我只需更改项目上的图标,它就会开始抛出这个神秘的错误.
在错误消息中看到%InstallDir%可能是一个主角.您的解决方案中是否有安装和部署项目?它是否在您的FooPDA项目之前构建?看到它在obj看也很可疑.
OP编辑:你在正确的轨道上,所以我会给你答案.事实证明,当你进行重建时,Visual Studio 2005编译器非常愚蠢,因为当它遇到无法编译的项目时它不会停止.它只是继续编译和抛出错误.
此特定解决方案包含三个项目.我们称之为FooPDA,PDAComponents和Setup.我更改了项目FooPDA上的图标,解决方案将不再编译.我专注的错误与实际问题无关.我应该专注于我在初始构建时看到的错误,即:
CVTRES:致命错误CVT1103:无法读取文件
我基本上把它吹掉了,并立即进行了重建.那时我发布的错误出现在错误列表的顶部,我就注意到了它.我不应该.我最初发布的错误是由于FooPDA没有编译,因此在编译安装项目时FooPDA.exe不可用.我改变图标时FooPDA无法编译的原因是因为我试图添加的.ico文件包含不兼容的图标大小和/或颜色深度.显然,紧凑的框架(或目标平台,PocketPC 2003?)只能理解其中的某些内容.我试图添加的.ico文件中嵌入了各种大小和颜色深度(一直到256x256 @ 32位).我查看了原来存在的.ico文件,它只有两个48x48图标.一个24位颜色和一个8位.我在图标编辑器中打开了我的新.ico文件并对其进行了修改,使其包含与原始文件相同的大小和颜色深度,并且所有文件都与世界相符.解决方案现在用新图标编译,没问题.
一方面,我觉得有点愚蠢,因为没有搞清楚这一点(我终于问过一位曾经遇到过这种情况的同事).另一方面,f**k做什么"CVTRES:致命错误CVT1103:无法读取文件"告诉我?没有!"错误:不兼容的图标"有什么问题?