Visual studio 2008 VisualStudio2008有时会将平台重置为;任何CPU“;从「;x86“;
我有一个多项目解决方案,我使用Configuration Manager将所有项目的平台设置为“x86”。在所有项目中,调试和发布版本都是这样设置的 现在,平台已经两次将自己重置回“任何CPU”,我不得不再次进入Configuration Manager来修复它 今天,它发生在我从Subversion获得一个新的工作副本之后,但我不确定上次是否是这样Visual studio 2008 VisualStudio2008有时会将平台重置为;任何CPU“;从「;x86“;,visual-studio-2008,configurationmanager,Visual Studio 2008,Configurationmanager,我有一个多项目解决方案,我使用Configuration Manager将所有项目的平台设置为“x86”。在所有项目中,调试和发布版本都是这样设置的 现在,平台已经两次将自己重置回“任何CPU”,我不得不再次进入Configuration Manager来修复它 今天,它发生在我从Subversion获得一个新的工作副本之后,但我不确定上次是否是这样 关于为什么会发生这种情况,以及如何防止将来发生这种情况,您有什么建议吗?我认为所选版本是用户的首选版本,因此如果您签出一个干净的副本,您将从一个空
关于为什么会发生这种情况,以及如何防止将来发生这种情况,您有什么建议吗?我认为所选版本是用户的首选版本,因此如果您签出一个干净的副本,您将从一个空白的用户pref.文件开始。VS将默认为列表中的第一个,可能是“任何cpu”。我想出了一种方法,至少可以在问题发生时检测到问题 将以下内容添加到预生成事件命令行:
rem EXIT WITH ERROR 99 IF PLATFORM IS NOT x86. (CHECK CONFIGURATION MANAGER)
if $(PlatformName) NEQ x86 exit 99
如果平台设置更改,我现在在构建项目时会收到一个错误
粗糙,但它可以工作。您所说的“pref”文件是扩展名为“.suo”的文件吗?Windows资源管理器将此显示为“Visual Studio用户选项”文件-也许我需要将其添加到SVN?(假设我可以让项目中的其他开发人员同意我的选择)不,你不应该在svn中包含.suo,否则它会产生同样的问题(即:总是将构建设置为最后一个提交人设置的内容)。解决方案是在svn更新时保留.suo文件,或者在每次签出干净副本时只设置构建类型。这都是假设所选的构建在suo文件中,让我仔细检查一下…是的,当您更改构建时,唯一更改的文件是.suo文件,所以必须是它。它是一个二进制文件,因此您无法轻松更改它(除了打开VS和更改构建设置:)。即使这是解决方案,这也很糟糕!我们有一个TFS构建服务器,它错误地构建了x86 EXE文件,因此它们有时作为x64运行,而我们的x86 COM组件则会失败。生成平台设置不应是用户设置,而应是项目设置,因此应存储在项目文件而不是SUO文件中。你真可耻,微软。