Я додав платформу x64 до свого рішення сьогодні, коли зіткнувся з цією проблемою.
У моєму випадку помилка звучала так:
Вбудований $ / ProjectDirectory / ProjectName.csproj для цілей за замовчуванням. c: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets (484): властивість OutputPath не встановлено для проекту ProjectName.csproj '. Будь ласка, переконайтесь, що ви вказали дійсну комбінацію конфігурації та платформи для цього проекту. Конфігурація = 'Налагодження' Платформа = 'x64'. Можливо, ви бачите це повідомлення, оскільки ви намагаєтеся побудувати проект без файлу рішення та вказали конфігурацію або платформу, яка не використовується за промовчанням, яка не існує для цього проекту.
Я знав, що все OutputPath
повинно бути нормально, оскільки це вже існуюче, робоче рішення проти VS. Тож я перейшов до наступної підказки - "допустима комбінація конфігурації та платформи".
Ага! Visual Studio намагається побудувати Configuration='Debug', Platform='x64'
. Переглядаючи файл свого проекту, я зрозумів, що x64 не вказаний як одна з можливих платформ. Іншими словами, у мене були такі записи (скорочені):
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<PlatformTarget>x86</PlatformTarget>
<OutputPath>bin\x86\Debug\</OutputPath>
. . .
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<PlatformTarget>x86</PlatformTarget>
<OutputPath>bin\x86\Release\</OutputPath>
. . .
</PropertyGroup>
Тоді це легко виправити: просто додайте записи x64!
Я скопіював / вставив записи x86 і змінив їх на x64. Зверніть увагу, що я також змінив шляхи, щоб вони не перезаписували збірки x86:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
<PlatformTarget>x64</PlatformTarget>
<OutputPath>bin\x64\Debug\</OutputPath>
. . .
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
<PlatformTarget>x64</PlatformTarget>
<OutputPath>bin\x64\Release\</OutputPath>
. . .
</PropertyGroup>