在其他人的环境下编译的源代码在我的环境中将无法正常工作。 当我重build编译时发生,但是当Visual Studio将exe文件从/ obj / debug / {解决scheme}移动到/ debug / {解决scheme}时,无法在/ obj / debug / {解决scheme}中findexe文件。 为了使这更加疯狂,即使我重新安装Visual Studio它不起作用。 在其他人的环境下,它可以发现。 请注意,这是一个Windows Mobile 6,Compact Framework 3.5项目,Visual C ++项目。
编辑:Visual Studio 2008正在使用。
编辑2:再次看日志后来找出它说它正在编译,但它并没有真正编译。 有趣的是,它不会抛出任何错误,直到它试图链接代码。 当它去链接目标文件,他们不在那里,它失败。
我有两个发行文件夹:一个在解决方案文件夹中,一个在项目文件夹中。 前者包含.exe文件,后者则不。
在解决方案属性页面中,检查您期望exe的路径是否与链接器 – >输出文件中指定的路径相同。
另一个明显的错误可能是,检查你正在构建的构建配置。 你可能正在做一个发布版本,期待一个调试可执行文件:)我已经做了几次。
也许VS创建exe文件,并在它试图将其移动到最终目的地之前,病毒扫描程序会抓取并移除它,或将其移动到保存位置。
如果你创建一个新的“你好世界”WM项目,它的工作?
如果是这样,您可以比较解决方案文件来检查可能导致此问题的差异。
也许你没有写输入文件夹的权限? 如果你在Vista / 7上运行,你的Visual Studio是否升级运行?
如果完全相同的解决方案在其他机器上工作,那么这是一个环境问题,并没有看看项目,连接器等等将解决这个问题。 环境有什么不同? 服务包和QFE不仅适用于Studio,还适用于OS? 处理器(64/32位)有区别吗? 你的权限是一样的吗? 你有没有安装相同的SDK?
我同意Shahi的观点,只是试图针对同一个SDK构建一个“hello world”应用程序,看它是否会编译为有价值的信息。
我只是想问一下,问:你是否从上面的目录中查找了* .exe文件名? 我在我的案例中发现的是它正在写入/ release子目录正上方的目录。 不知道我是如何错过了细节,但我做到了! 我想以前从未发生这种情况,因为我看到buildlog.htm正在写入/ release子目录,以及目录本身的存在。 在我的情况下,它是编译,链接等我只是无法看到* .exe在该/释放子目录。
据我所知,你需要在建立之前“全部保存”。