2012-11-21 49 views

回答

1

Windows Phone 8和Windows 8是兩個獨立的產品,需要2個獨立的SDK進行開發。 Windows Phone 8僅在移動設備上運行,而Windows 8則在臺式機,筆記本電腦和平板電腦上運行。

構建Windows 8應用程序所需的一切是安裝了Windows 8和Visual Studio 2012的計算機。您可以使用Express 8(免費)版的Visual Studio對Windows 8 Enterprise進行90天評估以構建此類應用程序。如果您是學生,您可以通過Dreamspark計劃免費獲得完整版的Visual Studio。

+1

我需要爲Windows RT創建桌面應用程序。不適用於8或電話8. – DmitryR

+1

您無法爲Windows RT創建桌面應用程序 - 只有預先加載和/或預先批准的特定應用程序才能在Windows RT的桌面環境中運行。不過,您可以爲Windows 8創建桌面應用程序。 –

+0

Doe它必須是Windows 8還是可以在Windows 7上使用Visual Studio 2012? – electrichead

1

要開發Windows應用商店應用,您需要Visual Studio 2012

Windows Phone SDK附帶的Visual Studio Express沒有用於開發Windows應用商店應用的模板。

+0

我下載了2012 Express(它包含在Phone 8.0 SDK中),並且沒有用於桌面應用程序的模板。我如何爲Windows RT創建桌面應用程序? – DmitryR

+0

您需要安裝另一個VS專用於Windows RT http://go.microsoft.com/fwlink/?LinkID=256018 –

+0

對不起,但我沒有找到RT SDK那裏。只有Web,Windows 8,桌面,電話和TF捆綁包。 – DmitryR

5

Windows RT與電話SDK無關 - 它來自主桌面開發環境。

Microsoft不允許爲Windows RT構建桌面應用程序。 RT桌面僅限於使辦公應用程序正常工作,但不包括完整的Windows功能。

要開發Windows 8桌面應用程序,您可以像過去使用Visual Studio一樣使用Visual Studio來製作桌面應用程序。

要構建一個Windows應用商店應用程序,你會在C#下選擇Windows Store。 Tutorials位於微軟。在那裏你會得到一系列你可以從中創建你的應用程序的模板。我預計這些模板還將構建可在Windows RT設備上運行的應用程序。 (我還沒有測試過)

+0

是的,這些模板可以用於RT設備,但不能用作桌面應用程序,只能用於Metro UI應用程序。我需要創建桌面應用程序。我想重新編譯我目前用於Windows 8(和以前版本)的.NET應用程序到RT。 – DmitryR

2

您可以對黑客Visual Studio 2012及更高版本進行排序,以允許您在Windows桌面應用程序中引用RT。

1)卸載您的項目在Visual Studio

2)一個TargetPlatformVersion屬性添加到項目:

<PropertyGroup> 
    <TargetPlatformVersion>8.0</TargetPlatformVersion> 
</PropertyGroup> 

3)刷新該項目。

4)進入「添加引用...」

5)現在應該有左側面板,使您可以添加Windows核心基準上的其他Windows選項。

欲瞭解更多信息,請參閱Using Windows 8* WinRT API from desktop applications

4

創建桌面應用程序的Windows RT?

從技術上講,您無法爲Windows RT開發桌面應用程序。它沒有得到微軟官方的支持。不過,您可以爲其開發商店應用程序。商店應用程序使用被稱爲Metro Apps,但微軟公司面臨法律風險(見Microsoft to drop 'Metro' name for Windows 8)。

對於限制的駭客,請參閱Can ARM desktop programs be built using visual studio 2012。但是,如果您提交該應用程序,您的應用程序很可能會被微軟Windows應用商店拒絕。

...對於桌面Windows RT應用程序沒有項目類型。

的Windows RT是存在的 - 你想在Windows商店應用:

Windows Store App

Windows應用商店的應用項目,將定義WINAPI_FAMILY=WINAPI_FAMILY_APP。它將有三個平臺:X86,X64ARM。 Windows RT Pro是X64。 Windows RT是ARM。我不確定X86被歸類爲什麼。對於開發人員和工程師來說,其全部只有WINAPI_FAMILY=WINAPI_FAMILY_APP三種平臺。在Visual Studio中,Pro和non-Pro之間沒有區別(有些人可以放棄)。

對於WINAPI_FAMILY和平臺檢測的一些很好的閱讀,請參閱查克沃爾伯恩的三部分系列Dual-use Coding Techniques for Games

對於一些手豁免,Windows手機和Windows應用商店的後端區別是:

的Windows RT使用位於

    編譯
  • %VSINSTALLDIR%\VC\bin\x86_ARM\CL.exe

的Windows Phone使用位於編譯器at

  • %VSINSTALLDIR%\VC\WPSDK\WP80\bin\x86_arm\link.exe

很明顯,平臺變化時路徑會發生變化。但鏈接器(link.exe)和其他工具(如lib.exe)與編譯器位於同一目錄中。

Windows RT(ARM)的環境標記爲Visual Studio 2012 ARM Cross Tools命令提示符。您可以在開始(還剩下些什麼呢)→Program Files文件發現→的Visual Studio 2012Visual Studio工具

enter image description here

Windows Phone的(ARM)的環境標記的Visual Studio 2012 ARM電話工具命令提示符

enter image description here

同樣,Windows Phone(X86)的環境標記爲Visual Studio 2012 X86手機工具命令提示符;和Windows RT Pro(X64)標記爲Visual Studio 2012 X64交叉工具命令提示符

所有的命令提示符都設置環境,所以INCLUDE,LIBPATH,PATH等都可以用於命令行開發。迄今爲止,我已經使用過這些,因爲我一直在移植庫。我還沒有使用Visual Studio作爲項目。

您還需要查看Can ARM desktop programs be built using visual studio 2012_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE=1定義。

另請參閱MSDN上的Jason Zander的What you need to know about developing for Windows on ARM (WOA)

最後,請參閱XDA開發人員論壇上的Desktop apps ported to Windows RT

相關問題