如何在Visual Studio 2012上安装XNA游戏工作室?

Ste*_*e B 196 xna visual-studio-2012

是否可以使用Visual Studio 2012创建XNA游戏?

Ste*_*e B 192

是的,可以通过一些调整来实现.不幸的是,您仍然必须安装VS 2010.

  1. 首先,安装XNA Game Studio 4.0.最简单的方法是安装包含所需的所有内容的Windows Phone SDK 7.1.

  2. 通过以管理员身份打开命令提示符并执行以下操作将XNA游戏扩展从VS 10复制到VS 11(如果不是具有默认路径的x64计算机,则可能会有所不同):

    xcopy /e "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\Extensions\Microsoft\XNA Game Studio 4.0" "C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\Extensions\Microsoft\XNA Game Studio 4.0"

  3. 以管理员身份运行记事本,然后extension.vsixmanifest在刚创建的目标目录中打开.

  4. 升级受支持的产品版本以匹配新版本(或复制整个VisualStudio元素并更改Version属性,如@ brainslugs83在评论中所述):

    <SupportedProducts>
      <VisualStudio Version="11.0">
        <Edition>VSTS</Edition>
        <Edition>VSTD</Edition>
        <Edition>Pro</Edition>
        <Edition>VCSExpress</Edition>
        <Edition>VPDExpress</Edition>
      </VisualStudio>
    </SupportedProducts>
    
    Run Code Online (Sandbox Code Playgroud)
  5. 不要忘记在%localappdata%\ Microsoft\VisualStudio\12.0\Extensions中清除/删除缓存.

  6. 您可能必须运行该命令以告知Visual Studio新扩展可用.如果您看到"拒绝访问"消息,请尝试以管理员身份启动控制台.

    "C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.exe" /setup
    
    Run Code Online (Sandbox Code Playgroud)

这已针对Windows游戏进行了测试,但未针对WP7或Xbox游戏进行过测试.

[编辑]根据Jowsty,这也适用于XBox 360游戏.

[Visual Studio 2013和Windows 8.1的编辑]有关Windows 8.1上安装Windows Phone SDK 7.1的文档,请参阅此处.对于所有这些步骤,使用VS版本号12.0代替11.0,它们仍然可以正常工作.

  • 这不适合我.我在Win7 x64上安装了VS2010 Ultimate,在那里我可以创建和操作XNA 4项目.我今天安装了VS2012 Ultimate RC,按照上面的步骤,VS仍然无法打开XNA应用程序.有什么想法吗?我重新启动,单脚站立,等等. (10认同)
  • 顺便说一句,这个解决方案也适用于Xbox 360.我刚尝试过. (7认同)
  • 是的,他们在那里.@RickMartin的建议导致XNA项目出现,但是在尝试创建新游戏时抱怨它无法加载XNA.Framework时出现错误.哎呀. (2认同)
  • 没有必要的注册表垃圾.Steve忘记提到您还需要删除缓存的扩展文件,否则VS将无法检测到更改.请参阅我的回答:http://stackoverflow.com/questions/9674758/how-can-i-work-with-xna-projects-in-visual-studio-11-beta/9832283#comment13547530_9832283 (2认同)

小智 65

在codeplex上发布了针对Visual Studio 2012/2013的新XNA扩展.您可以从以下网址下载:https://msxna.codeplex.com/releases


小智 37

我发现了另一个问题,由于某种原因,如果扩展缓存在本地AppData文件夹中,XNA扩展永远不会被加载.

您需要删除的文件extensionSdks.en-US.cache,并extensions.en-US.cache%LocalAppData%\Microsoft\VisualStudio\11.0\Extensions文件夹中.下次启动时会重建这些文件

如果您需要访问Visual Studio启动日志来调试正在发生的事情,请devenv.exe /logC:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE目录运行命令(假设您使用的是64位计算机).生成的日志文件位于:

%AppData%\Microsoft\VisualStudio\11.0\ActivityLog.xml

  • 嗨,只是让你知道我的指南似乎不再适用于VS2012,只是删除缓存是不够的.删除缓存的最终方法是从扩展管理器安装另一个扩展(我更新了NuGet). (7认同)

Jac*_*hle 30

对于如何专门为Express版本设置这一设置似乎存在一些困惑.使用Windows桌面(WD)版本的VS Express 2012,我按照Steve BRick Martin的说明进行了修改,并进行了以下修改.

  • 在步骤2而不是复制到"C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\Extensions\Microsoft\XNA Game Studio 4.0",复制到"C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\WDExpressExtensions\Microsoft\XNA Game Studio 4.0"
  • 在步骤4中,在进行更改后还添加了一行<Edition>WDExpress</Edition>(您应该能够看到它的意义)
  • 在步骤5中,替换devenv.exeWDExpress.exe
  • 在里克·马丁的步骤中,替换"%LocalAppData%\Microsoft\VisualStudio\11.0\Extensions""%LocalAppData%\Microsoft\WDExpress\11.0\Extensions"

从那时起我就没有做过很多工作,但是我确实设法创建了一个新的游戏项目,到目前为止似乎很好.