[英]can't open vs2010 csproj file in vs2012
用winforms做xna。
從此鏈接中獲取代碼以及如何從程序員那里獲取Microsoft的方式 ,該鏈接包含一個包含三個項目的解決方案,其中包括表單項目,Content和ContentLibrary項目。
ContentLibrary項目將構建一個dll,供表單項目參考(但似乎沒有任何內容,我也不知道為什么)。
它以我從未見過的怪異方式引用Content項目。
Content項目包含一個圖片文件,僅此而已,我不知道它是做什么的。
最后,表單項目包含具有許多控件的主表單,這些控件包括用戶定義的控件,一個繼承xna控件的抽象以及其他實現此控件的控件(這些控件將進行繪制)。
無法打開ContentLibrary項目。
我收到的錯誤消息: C:\\ Program Files(x86)\\ MSBuild \\ Microsoft \\ XNA Game Studio \\ Microsoft.Xna.GameStudio.targets找不到,請確保聲明中的路徑正確並且磁盤上存在該文件
用記事本打開ContentLibrary項目文件(.csproj一個),這是我發現的內容:
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{396ADBE6-FB16-4DBA-8C70-C16A46B448EA}</ProjectGuid>
<ProjectTypeGuids>{6D335F3A-9D43-41b4-9D22-F6F17C4BE596};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} </ProjectTypeGuids>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>ContentLibrary</RootNamespace>
<AssemblyName>ContentLibrary</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
<XnaFrameworkVersion>v4.0</XnaFrameworkVersion>
<XnaPlatform>Windows</XnaPlatform>
<XnaProfile>Reach</XnaProfile>
<XnaCrossPlatformGroupID>e0c073d9-a61b-474a-bda0-a8ada2c89669</XnaCrossPlatformGroupID>
<XnaOutputType>Library</XnaOutputType>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\x86\Debug</OutputPath>
<DefineConstants>DEBUG;TRACE;WINDOWS</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<NoStdLib>true</NoStdLib>
<UseVSHostingProcess>false</UseVSHostingProcess>
<PlatformTarget>x86</PlatformTarget>
<XnaCompressContent>false</XnaCompressContent>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\x86\Release</OutputPath>
<DefineConstants>TRACE;WINDOWS</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<NoStdLib>true</NoStdLib>
<UseVSHostingProcess>false</UseVSHostingProcess>
<PlatformTarget>x86</PlatformTarget>
<XnaCompressContent>true</XnaCompressContent>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.Xna.Framework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Xna.Framework.Game, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Xna.Framework.Graphics, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Xna.Framework.GamerServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Xna.Framework.Xact, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Xna.Framework.Video, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Xna.Framework.Avatar, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Xna.Framework.Net, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Xna.Framework.Storage, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
<Private>False</Private>
</Reference>
<Reference Include="mscorlib">
<Private>False</Private>
</Reference>
<Reference Include="System">
<Private>False</Private>
</Reference>
<Reference Include="System.Xml">
<Private>False</Private>
</Reference>
<Reference Include="System.Core">
<RequiredTargetFramework>4.0</RequiredTargetFramework>
<Private>False</Private>
</Reference>
<Reference Include="System.Xml.Linq">
<RequiredTargetFramework>4.0</RequiredTargetFramework>
<Private>False</Private>
</Reference>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Content\Content.contentproj">
<Project>{618DED89-9BA8-44D7-83A0-163041666FAC}</Project>
<Name>Content</Name>
<XnaReferenceType>Content</XnaReferenceType>
</ProjectReference>
</ItemGroup>
<ItemGroup />
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\Microsoft.Xna.GameStudio.targets" />
<!--
To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>
如果需要,我正在運行Windows 8 x64。
我在這里找到了解決方案: https : //bitbucket.org/rbwhitaker/xna-beyond-vs-2010/downloads
給定的鏈接包含一個由PowerShell啟動的腳本文件(類似於命令提示符)。 如果運行Windows 7或更高版本,則具有PowerShell,如果不使用此鏈接,則:
http://www.microsoft.com/zh-cn/download/details.aspx?id=40855
准備就緒后,請執行以下步驟:
Set-ExecutionPolicy Unrestricted
。 這是因為默認情況下,PowerShell不會激活腳本文件來保護您的計算機,您可以在鍵入以下內容后將其更改回: Set-ExecutionPolicy Restricted
.\\XnaFor2013.ps1
如果您想知道此腳本的作用,請向下滾動到頁面末尾:
http://rbwhitaker.wikidot.com/setting-up-xna
防止鏈接腐爛的摘錄:
首先,它從Microsoft下載XNA安裝程序。
事實證明,XNA安裝程序只是一個自解壓存檔,其中包含大約七個其他安裝程序。 因此,腳本要做的下一件事是解壓縮那些“內部”安裝程序。
七個中的六個完全按照您希望它們執行的操作進行操作,因此腳本依次輪流運行它們。
另一個是將文件放置在Visual Studio中正確位置的安裝程序。 不幸的是,它正在尋找Visual Studio 2010,而您擁有的是新版本(2012或2013都可以使用該腳本)。 因此,腳本告訴該安裝程序將文件僅放置在一個臨時位置。
這些文件是為Visual Studio 2010構建的,需要進行一些更改,因此腳本會進行更改並將其放置在適合您的Visual Studio版本的適當位置。 (實際上,它適用於已安裝的所有Visual Studio版本,無論是2012還是2013,也不管是Windows Desktop的付費版本還是Express。)
不幸的是,Visual Studio不會自動檢查新的加載項。 (實際上,這是一件好事,因為要花費所有時間檢查所有時間,但是在這種情況下,這很不好,因為我們需要對其進行檢查。)要使其檢查新插件,腳本將刪除擴展緩存並包含Visual Studio重建它。 重建緩存將花費腳本運行的大部分時間。 (幾分鍾。)
重建后,一切准備就緒,腳本將刪除其創建的臨時文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.