«Ошибка генерации ресурса Win32» в Visual Studio, Windows 7 x64 - PullRequest
3 голосов
/ 18 мая 2010

Мои со-разработчики и я недавно обновили машины до Windows 7 Ultimate 64 бит. Некоторые из нас видят новую ошибку, которую мы никогда не видели при создании решений в Visual Studio (случается и в 2008, и в 2010 году):

Ошибка генерации ресурса Win32: процесс не может получить доступ к файлу, поскольку он используется другим процессом.

Он всегда указывает на некоторый временный файл в нашей выходной папке, например:

MyProject \ OBJ \ Debug \ CSC5123.tmp

Это происходит примерно раз в четыре или около того. Затем мы попытаемся снова запустить ту же самую сборку, и она обычно будет успешной. В некоторых случаях, однако, он снова потерпит неудачу в том же проекте, и в тех же случаях он потерпит неудачу в другом проекте. Там действительно нет рифмы или причины для этого. Но это очень расстраивает, особенно когда этого не происходит до тех пор, пока сборка не будет работать в течение примерно 20 секунд.

Это также случается не со всеми нашими коллегами. Это происходит примерно с каждым четвертым разработчиком. С одной стороны, это происходит с одной из четырех сборок, а с остальными тремя это никогда не происходит.

О, и я уже говорил, что мы все используем машины, созданные из одного изображения? :)

Заранее спасибо за любое направление, которое вы можете предоставить.

1 Ответ

0 голосов
/ 01 июня 2013

Я нашел ответ. По крайней мере, это работает. Добавить

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

к вашему

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

узел в файле настроек проекта. Volaa!

Пример кода здесь для моего проекта:

<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>
...