繁体   English   中英

Visual Studio 中的“生成 Win32 资源时出错”,Windows 7 x64

[英]“Error generating Win32 resource” in Visual Studio, Windows 7 x64

我和我的合作开发人员最近将机器升级到 Windows 7 Ultimate 64 位。 我们中的一些人在 Visual Studio 中构建解决方案时遇到了以前从未见过的新错误(2008 年和 2010 年都发生):

生成 Win32 资源时出错:该进程无法访问该文件,因为它正被另一个进程使用。

它总是指向我们输出文件夹中的某个临时文件,例如:

MyProject\\obj\\Debug\\CSC5123.tmp

这种情况大约每四个左右构建一次。 然后我们将尝试再次运行完全相同的构建,它通常会成功。 但在某些情况下,它会在同一个项目上再次失败,在相同的情况下,它会在不同的项目上失败。 这真的没有押韵或理由。 但这非常令人沮丧,尤其是在构建运行了 20 秒左右之后才会发生这种情况。

这也不会发生在我们所有的同事身上。 它发生在大约四分之一的开发人员身上。 对于第一个,它发生在四个构建中的一个,而对于其他三个,它永远不会发生。

哦,我有没有提到我们都在使用由同一个镜像构建的机器? :)

预先感谢您提供的任何方向。

我找到了答案。 至少它有效。 添加

<IntermediateOutputPath>C:\Users\user\AppData\Local\Temp\vs9267.tmp\Debug\</IntermediateOutputPath>

给你的

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> 

项目设置文件中的节点。 哇!

我的项目的示例代码在这里:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
    <DebugSymbols>true</DebugSymbols>
    <DebugType>full</DebugType>
    <Optimize>false</Optimize>
    <OutputPath>bin\Debug\</OutputPath>
    <DefineConstants>DEBUG;TRACE</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <IntermediateOutputPath>C:\Users\ZGRSNM~1\AppData\Local\Temp\vs9267.tmp\Debug\</IntermediateOutputPath>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    <DebugType>pdbonly</DebugType>
    <Optimize>true</Optimize>
    <OutputPath>bin\Release\</OutputPath>
    <DefineConstants>TRACE</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <IntermediateOutputPath>C:\Users\ZGRSNM~1\AppData\Local\Temp\vs9267.tmp\Release\</IntermediateOutputPath>
  </PropertyGroup>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM