Dodawałem dzisiaj platformę x64 do mojego rozwiązania, kiedy napotkałem ten problem.
W moim przypadku błąd brzmiał:
Zbudowano $ / ProjectDirectory / ProjectName.csproj dla domyślnych celów. c: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets (484): Właściwość OutputPath nie jest ustawiona dla projektu ProjectName.csproj '. Sprawdź, czy dla tego projektu określono prawidłową kombinację konfiguracji i platformy. Konfiguracja = „Debuguj” Platforma = „x64”. Ten komunikat może być wyświetlany, ponieważ próbujesz skompilować projekt bez pliku rozwiązania i określono inną niż domyślną konfigurację lub platformę, która nie istnieje dla tego projektu.
Wiedziałem, że OutputPath
powinno być dobrze, ponieważ było to istniejące, działające rozwiązanie VS. Więc przeszedłem do następnej wskazówki - „poprawne połączenie konfiguracji i platformy”.
Aha! Program Visual Studio próbuje skompilować Configuration='Debug', Platform='x64'
. Patrząc na mój plik projektu, zdałem sobie sprawę, że x64 nie jest wymieniony jako jedna z możliwych platform. Innymi słowy, miałem poniższe wpisy (skrócone):
<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>
Łatwo więc naprawić: po prostu dodaj wpisy x64!
Skopiowałem / wkleiłem wpisy x86 i zmieniłem je, aby używały x64. Zauważ, że zmodyfikowałem również ścieżki, aby nie nadpisywały one kompilacji 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>