Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将APPX部署到运行Windows Phone Emulator?_C#_Windows Phone 8_Deployment_Windows Phone_Windows 8.1 - Fatal编程技术网

C# 如何将APPX部署到运行Windows Phone Emulator?

C# 如何将APPX部署到运行Windows Phone Emulator?,c#,windows-phone-8,deployment,windows-phone,windows-8.1,C#,Windows Phone 8,Deployment,Windows Phone,Windows 8.1,我正在尝试从C#向Windows Phone仿真器部署一个appx包,如下所示: 问题是方法GetDevices()返回如下设备列表: {Device} {Emulator 8.1 WVGA 4英寸512MB(ES)} {Emulator 8.1 WVGA 4英寸(ES)} {Emulator 8.1 720P 4.7英寸} 我不知道为什么它会在末尾附加(ES)。 在我执行代码之后,仿真器启动,但它被卡住了。它不起作用 我是否可以使用已经运行的模拟器并选择该模拟器?您可以尝试使用应用程序部

我正在尝试从C#向Windows Phone仿真器部署一个appx包,如下所示:

问题是方法
GetDevices()
返回如下设备列表:

  • {Device}
  • {Emulator 8.1 WVGA 4英寸512MB(ES)}
  • {Emulator 8.1 WVGA 4英寸(ES)}
  • {Emulator 8.1 720P 4.7英寸}
我不知道为什么它会在末尾附加(ES)。 在我执行代码之后,仿真器启动,但它被卡住了。它不起作用


我是否可以使用已经运行的模拟器并选择该模拟器?

您可以尝试使用应用程序部署工具(XapDeploy.exe),有关更多信息,请访问以下链接:

一步一步:

  • 您还可以使用Windows Phone应用程序部署工具(XapDeploy.exe)部署您的应用程序。此工具是安装Windows Phone SDK时安装的独立应用程序
  • 您可以使用安装在文件夹C:\Program Files(x86)\Microsoft SDK\Windows Phone\v8.0\Tools\XAP Deployment中的应用程序部署工具版本来部署针对Windows Phone OS 8.0或Windows Phone OS 7.1的应用程序。 您只能使用安装在文件夹C:\Program Files(x86)\Microsoft SDK\Windows Phone\v7.1\Tools\XAP Deployment中的应用程序部署工具版本来部署针对Windows Phone OS 7.1的应用程序
  • 使用应用程序部署工具部署应用程序
  • 构建你的应用程序
  • 如果要将应用部署到已连接的设备,请确保已完成本主题前面列出的先决条件。 从Windows开始屏幕启动应用程序部署工具。您可以通过打开“所有应用”视图并在Windows Phone SDK 8.0组中找到该应用程序部署工具,或者从“开始”屏幕键入“应用程序部署”来搜索该工具
  • 也可以从以下位置运行该工具: C:\Program Files(x86)\Microsoft SDK\Windows Phone\v8.0\Tools\XAP Deployment\XapDeploy.exe
  • 在目标下拉框中,选择一个emulator选项
  • 单击浏览并找到要部署的XAP文件
  • 单击部署
  • 如果部署成功,状态字段将显示XAP部署完成
  • 让我们试试看。 但是首先

    先决条件
    • Windows 8.1+as操作系统
    • 已安装Windows Phone SDK 8.1
    我确实创建了一个批处理脚本文件(.bat)来执行所有需要的步骤。 现在我有一些throubles来部署应用程序。但这可能是一个起点

    脚本如下:

    @echo off
    REM SOURCES
    REM ------------------------------------------------------------------------------
    REM Create a Windows Store AppX package and sign it
    REM http://blogs.msdn.com/b/wsdevsol/archive/2014/02/12/create-a-windows-store-appx-package-and-sign-it.aspx
    REM How to create an app package signing certificate
    REM https://msdn.microsoft.com/pt-br/library/windows/desktop/jj835832(v=vs.85).aspx
    REM How to sign an app package using SignTool
    REM https://msdn.microsoft.com/pt-br/library/windows/desktop/jj835835(v=vs.85).aspx
    REM ------------------------------------------------------------------------------
    SET "WINDOWS_KIT_8_1_86X=%PROGRAMFILES(x86)%\Windows Kits\8.1\bin\x86\"
    SET makeappxexe = "%PROGRAMFILES(x86)%\Windows Kits\8.1\bin\x86\makeappx.exe"
    SET msbuildexe = "%PROGRAMFILES(x86)%\MSBuild\14.0\Bin\MSBuild.exe"
    SET "APP_DIRECTORY=%userprofile%\source\repos\MyAwesomeApp\App1"
    SET "APP_PACKAGE_DIRECTORY=%userprofile%\source\repos\MyAwesomeApp\App1\AppPackages\"
    
    @echo "building App1 project..."
    %msbuildexe% "%APP_DIRECTORY%App1.csproj" /verbosity:quiet
    
    REM App packager(MakeAppx.exe)
    REM https://msdn.microsoft.com/en-us/library/windows/desktop/hh446767(v=vs.85).aspx
    @echo "Creating APPX from App1 project..."
    %makeappxexe% pack /o /v /l /d "%APP_DIRECTORY%" /p "%APP_PACKAGE_DIRECTORY%App1.appx"
    
    REM MakeCert
    REM https://msdn.microsoft.com/pt-br/library/windows/desktop/ff548309(v=vs.85).aspx
    @echo "Making certificate..."
    "%WINDOWS_KIT_8_1_86X%makecert.exe" /n "[PACKAGE.IDENTITY.PUBLISHER] LOCATED AT APPXMANIFEX.XML OR PACKAGE.APPXMANIFEST" /r /h 0 /eku "1.3.6.1.5.5.7.3.3,1.3.6.1.4.1.311.10.3.13" /e "12/30/2016" /sv "%APP_PACKAGE_DIRECTORY%Appp1Key.pvk" "%APP_PACKAGE_DIRECTORY%Appp1Key.cer"
    
    REM Pvk2Pfx
    REM https://msdn.microsoft.com/pt-br/library/windows/desktop/ff550672(v=vs.85).aspx
    @echo "Making PFX file..."
    "%WINDOWS_KIT_8_1_86X%Pvk2Pfx.exe" /f /pvk "%APP_PACKAGE_DIRECTORY%Appp1Key.pvk" /spc "%APP_PACKAGE_DIRECTORY%Appp1Key.cer" /pfx "%APP_PACKAGE_DIRECTORY%Appp1Key.pfx"
    
    REM SignTool
    REM https://msdn.microsoft.com/pt-br/library/windows/desktop/ff551778(v=vs.85).aspx
    @echo "Signing APPX..."
    "%WINDOWS_KIT_8_1_86X%SignTool.exe" sign /fd SHA256 /a /f "%APP_PACKAGE_DIRECTORY%Appp1Key.pfx" "%APP_PACKAGE_DIRECTORY%App1.appx"
    
    REM Deploy Windows Phone 8.1 apps with the Application Deployment tool
    REM https://msdn.microsoft.com/en-us/library/dn632395.aspx
    @echo "Deploying App1 to emulator..."
    "C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.1\Tools\AppDeploy\AppDeployCmd.exe" /installlaunch "%APP_PACKAGE_DIRECTORY%App1.appx" /targetdevice:6
    @echo "Deploying App1 to device..."
    "C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.1\Tools\AppDeploy\AppDeployCmd.exe" /installlaunch "%APP_PACKAGE_DIRECTORY%App1.appx" /targetdevice:de
    
    您还可以构建项目(它将自动生成Appx)并使用自动生成的Appx部署到emulator或设备,如下所示:

    SET "APP_DIRECTORY=%userprofile%\source\repos\MyAwesomeApp\App1"
    SET "APPX_PATH=%userprofile%\source\repos\MyAwesomeApp\App1\AppPackages\App1_1.0.0.0_x86_Test\App1_1.0.0.0_x86.appx"
    
    @echo "building App1 project..."
    "%PROGRAMFILES(x86)%\MSBuild\14.0\Bin\MSBuild.exe" "%APP_DIRECTORY%\App1.csproj" -t:Rebuild -p:Configuration=Release;BuildPlatform=x86 /verbosity:minimal /nologo
    
    REM Deploy Windows Phone 8.1 apps with the Application Deployment tool
    REM https://msdn.microsoft.com/en-us/library/dn632395.aspx
    @echo "Deploying App1 to emulator..."
    "C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.1\Tools\AppDeploy\AppDeployCmd.exe" /installlaunch "%APPX_PATH%" /targetdevice:6
    @echo "Deploying App1 to device..."
    "C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.1\Tools\AppDeploy\AppDeployCmd.exe" /installlaunch "%APPX_PATH%" /targetdevice:de
    

    我希望它能帮助您,但如果您已经找到解决方案,请告诉我。

    理想情况下,我需要使用C#而不是GUI工具部署APPX。