WinAppDeployCmd.exe 도구를 사용하여 앱 설치Install apps with the WinAppDeployCmd.exe tool

Windows 애플리케이션 배포(WinAppDeployCmd.exe)는 Windows 10 PC에서 Windows 10 디바이스로 UWP(유니버설 Windows 플랫폼) 앱을 배포하는 데 사용할 수 있는 명령줄 도구입니다.Windows Application Deployment (WinAppDeployCmd.exe) is a command line tool that can use to deploy a Universal Windows Platform (UWP) app from a Windows 10 PC to any Windows 10 device. Windows 10 디바이스가 Microsoft Visual Studio 또는 해당 앱의 솔루션 없이도 동일한 서브넷에서 사용 가능하거나 USB로 연결되면 이 도구를 사용하여 앱 패키지를 배포할 수 있습니다.You can use this tool to deploy an app package when the Windows 10 device is connected by USB or available on the same subnet without needing Microsoft Visual Studio or the solution for that app. 또한 원격 PC 또는 Xbox One에 먼저 패키징하지 않고 앱을 배포할 수도 있습니다.You can also deploy the app without packaging first to a remote PC or Xbox One. 이 문서는 이 도구를 사용하여 UWP 앱을 설치하는 방법을 설명합니다.This article describes how to install UWP apps using this tool.

Windows 10 SDK를 설치하여 명령 프롬프트나 스크립트 파일에서 WinAppDeployCmd 도구를 실행하기만 하면 됩니다.You just need the Windows 10 SDK installed to run the WinAppDeployCmd tool from a command prompt or a script file. WinAppDeployCmd.exe로 앱을 설치하면 이 도구는 .appx/.msix 파일 또는 AppxManifest(느슨한 파일의 경우)를 사용하여 앱을 Windows 10 디바이스에 테스트용으로 로드합니다.When you install an app with WinAppDeployCmd.exe, this uses the .appx/.msix file or AppxManifest(for loose files) to side-load your app onto a Windows 10 device. 이 명령은 앱에 필요한 인증서를 설치하지 않습니다.This command does not install the certificate required for your app. 앱을 실행하려면 Windows 10 디바이스가 개발자 모드이거나 인증서가 이미 설치되어 있어야 합니다.To run the app, the Windows 10 device must be in developer mode or already have the certificate installed.

모바일 디바이스에 배포하려면 먼저 패키지를 만들어야 합니다.To deploy to mobile devices, you must first create a package. 자세한 내용은 여기를 참조하세요.For more information, see here.

WinAppDeployCmd.exe 도구는 Windows 10 PC에서 C:\Program Files (x86)\Windows Kits\10\bin\<SDK Version>\x86\WinAppDeployCmd.exe에 있습니다(SDK 설치 경로에 따라 다름).The WinAppDeployCmd.exe tool is located here on your Windows 10 PC: C:\Program Files (x86)\Windows Kits\10\bin\<SDK Version>\x86\WinAppDeployCmd.exe (based on your installation path for the SDK).

참고

SDK 버전 15063 이상에서는 SDK가 버전별 폴더에 나란히 설치됩니다.In version 15063 and later of the SDK, the SDK is installed side by side within version-specific folders. 이전 SDK(14393 및 이전 버전)는 부모 폴더에 직접 작성되었습니다.Previous SDKs (prior to and including 14393) are written directly to the parent folder.

먼저 Windows 10 디바이스를 동일한 서브넷에 연결하거나 USB 연결로 Windows 10 머신에 직접 연결합니다.First, connect your Windows 10 device to the same subnet or connect it directly to your Windows 10 machine with a USB connection. 그런 후 다음 구문이나 이 문서의 뒷부분에 있는 이 명령의 예를 사용하여 UWP 앱을 배포합니다.Then use the following syntax and examples of this command later in this article to deploy your UWP app:

WinAppDeployCmd 구문 및 옵션WinAppDeployCmd syntax and options

WinAppDeployCmd.exe에 사용되는 일반 구문은 다음과 같습니다.This is the general syntax used for WinAppDeployCmd.exe:

WinAppDeployCmd command -option <argument>

다음은 다양한 명령을 사용하는 몇 가지 추가 구문 예입니다.Here are some additional syntax examples for using various commands:

WinAppDeployCmd devices
WinAppDeployCmd devices <x>
WinAppDeployCmd install -file <path> -ip <address>
WinAppDeployCmd install -file <path> -guid <address> -pin <p>
WinAppDeployCmd install -file <path> -ip <address> -dependency <a> <b> 
WinAppDeployCmd install -file <path> -guid <address> -dependency <a> <b>
WinAppDeployCmd uninstall -file <path>
WinAppDeployCmd uninstall -package <name>
WinAppDeployCmd update -file <path>
WinAppDeployCmd list -ip <address>
WinAppDeployCmd list -guid <address>
WinAppDeployCmd deployfiles -file <path> -remotedeploydir <remoterelativepath> -ip <address>
WinAppDeployCmd registerfiles -remotedeploydir <remoterelativepath> -ip <address>
WinAppDeployCmd addcreds -credserver <server> -credusername <username> -credpassword <password> -ip <address>
WinAppDeployCmd getcreds -credserver <server> -ip <address>
WinAppDeployCmd deletecreds -credserver <server> -ip <address>

앱을 대상 디바이스에 설치하거나 제거할 수 있으며 또는 이미 설치된 앱을 업데이트할 수 있습니다.You can install or uninstall an app on the target device, or you can update an app that's already installed. 이미 설치된 앱으로 저장된 데이터나 설정을 유지하려면 install 옵션 대신 update 옵션을 사용합니다.To keep data or settings saved by an app that's already installed, use the update options instead of the install options.

다음 표에서는 WinAppDeployCmd.exe에 대한 명령에 대해 설명합니다.The following table describes the commands for WinAppDeployCmd.exe.

명령Command 설명Description
디바이스devices 사용 가능한 네트워크 디바이스 목록을 표시합니다.Show the list of available network devices.
설치install UWP 앱 패키지를 대상 디바이스에 설치합니다.Install a UWP app package to the target device.
업데이트update 대상 디바이스에 이미 설치되어 있는 UWP 앱을 업데이트합니다.Update a UWP app that is already installed on the target device.
목록list 지정된 대상 디바이스에 설치된 UWP 앱 목록을 표시합니다.Show the list of UWP apps installed on the specified target device.
제거uninstall 대상 디바이스에서 지정된 앱 패키지를 제거합니다.Uninstall the specified app package from the target device.
deployfilesdeployfiles 대상 경로의 느슨한 파일 앱을 디바이스의 원격 상대 경로로 복사합니다.Copy over loose file app at the target path to the remote relative path on the device.
registerfilesregisterfiles 원격 배포 디렉터리에서 느슨한 파일 앱을 등록합니다.Register the loose file app at the remote deploy directory.
addcredsaddcreds Xbox에 자격 증명을 추가하여 앱 등록을 위한 네트워크 위치에 액세스할 수 있게 합니다.Add credentials to an Xbox to allow it to access a network location for app registration.
getcredsgetcreds 네트워크 공유에서 애플리케이션을 실행할 때 대상 용도로 네트워크 자격 증명을 가져옵니다.Get network credentials for the target uses when running an application from a network share.
deletecredsdeletecreds 네트워크 공유에서 애플리케이션을 실행할 때 대상이 사용하는 네트워크 자격 증명을 삭제합니다.Delete network credentials the target uses when running an application from a network share.

다음 표에서는 WinAppDeployCmd.exe에 대한 옵션에 대해 설명합니다.The following table describes the options for WinAppDeployCmd.exe.

명령Command 설명Description
-h(-help)-h (-help) 명령, 옵션 및 인수를 표시합니다.Show the commands, options and arguments.
-ip-ip 대상 디바이스의 IP 주소입니다.IP address of the target device.
-g(-guid)-g (-guid) 대상 디바이스의 고유 식별자입니다.Unique identifier of the target device.
-d(-dependency)-d (-dependency) (옵션) 각 패키지 종속성에 대한 종속성 경로를 지정합니다.(Optional) Specifies the dependency path for each of the package dependencies. 경로가 지정되지 않으면 도구가 앱 패키지 및 SDK 디렉터리의 루트 디렉터리에서 종속성을 검색합니다.If no path is specified, the tool searches for dependencies in the root directory for the app package and the SDK directories.
-f(-file)-f (-file) 앱 패키지를 설치, 업데이트 또는 제거하기 위한 파일 경로입니다.File path for the app package to install, update or uninstall.
-p(-package)-p (-package) 앱 패키지를 제거하기 위한 전체 패키지 이름입니다.The full package name for the app package to uninstall. list 명령을 사용하여 이미 디바이스에 설치된 패키지의 전체 이름을 확인할 수 있습니다.(You can use the list command to find the full names for packages already installed on the device)
-pin-pin 대상 디바이스에 연결을 설정하는 데 필요한 핀입니다.A pin if it is required to establish a connection with the target device. 인증이 필요한 경우 -pin 옵션을 사용하여 다시 시도하라는 메시지가 표시됩니다.(You will be prompted to retry with the -pin option if authentication is required)
-credserver-credserver 대상에서 사용할 네트워크 자격 증명의 서버 이름입니다.The server name of the network credentials for use by the target.
-credusername-credusername 대상에서 사용할 네트워크 자격 증명의 사용자 이름입니다.The user name of the network credentials for use by the target.
-credpassword-credpassword 대상에서 사용할 네트워크 자격 증명의 암호입니다.The password of the network credentials for use by the target.
-connecttimeout-connecttimeout 디바이스에 연결할 때 사용되는 시간 제한(초)입니다.The timeout in seconds used when connecting to the device.
-remotedeploydir-remotedeploydir 원격 디바이스에서 파일을 복사할 상대 디렉터리 경로/이름입니다. 잘 알려진, 자동으로 결정된 원격 배포 폴더입니다.Relative directory path/name to copy files over to on the remote device; This will be a well-known, automatically determined remote deployment folder.
-deleteextrafile-deleteextrafile 원본 디렉터리에 맞게 원격 디렉터리의 기존 파일을 제거해야 하는지 여부를 나타내는 스위치입니다.Switch to indicate whether existing files in the remote directory should be purged to match the source directory.

다음 표에서는 WinAppDeployCmd.exe에 대한 옵션에 대해 설명합니다.The following table describes the options for WinAppDeployCmd.exe.

인수Argument 설명Description
<x><x> 시간 제한(초)입니다.Timeout in seconds. 기본값은 10입니다.(Default is 10)
<address><address> 대상 디바이스의 IP 주소 또는 고유 식별자입니다.IP address or unique identifier of the target device.
<a><b> ...<a><b> ... 각 앱 패키지 종속성에 대한 종속성 경로입니다.Dependency path for each of the app package dependencies.
<p><p> 연결을 설정하려는 디바이스 설정에 표시된 영숫자 핀입니다.An alpha-numeric pin shown in the device settings to establish a connection.
<path><path> 파일 시스템 경로입니다.File system path.
<name><name> 제거할 앱 패키지의 전체 패키지 이름입니다.Full package name for the app package to uninstall.
<server><server> 파일 네트워크의 서버입니다.Server on the file network.
<username><username> 파일 네트워크의 서버에 액세스할 수 있는 자격 증명의 사용자입니다.User for the credentials with access to the server on the file network.
<password><password> 파일 네트워크의 서버에 액세스할 수 있는 자격 증명의 암호입니다.Password for the credentials with access to the server on the files network.
<remotedeploydir><remotedeploydir> 배포 위치에 상대적인 디바이스의 디렉터리Directory on device relative to the deployment location

WinAppDeployCmd.exe 예제WinAppDeployCmd.exe examples

다음은 WinAppDeployCmd.exe의 구문을 사용하여 명령줄에서 배포하는 방법을 보여 주는 몇 가지 예입니다.Here are some examples of how to deploy from the command-line using the syntax for WinAppDeployCmd.exe.

배포에 사용할 수 있는 디바이스를 표시합니다.Shows the devices that are available for deployment. 명령 시간 제한은 3초입니다.The command times out in 3 seconds.

WinAppDeployCmd devices 3

PC의 Downloads 디렉터리에 있는 MyApp.appx 패키지의 앱을 PIN이 A1B2C3이고, IP 주소가 192.168.0.1인 Windows 10 디바이스에 설치하여 디바이스에 연결합니다.Installs the app from MyApp.appx package that is in your PC's Downloads directory to a Windows 10 device with an IP address of 192.168.0.1 with a PIN of A1B2C3 to establish a connection with the device

WinAppDeployCmd install -file "Downloads\MyApp.appx" -ip 192.168.0.1 -pin A1B2C3

192.168.0.1 IP 주소를 사용하는 Windows 10 디바이스에서 지정된 패키지(전체 이름 기반)를 제거합니다.Uninstalls the specified package (based on its full name) from a Windows 10 device with an IP address of 192.168.0.1. list 명령을 사용하여 디바이스에 설치된 모든 패키지의 전체 이름을 볼 수 있습니다.You can use the list command to see the full names of any packages that are installed on a device.

WinAppDeployCmd uninstall -package Company.MyApp_1.0.0.1_x64__qwertyuiop -ip 192.168.0.1

지정된 앱 패키지를 사용하여 IP 주소가 192.168.0.1인 Windows 10 디바이스에 이미 설치된 앱을 업데이트합니다.Updates the app that is already installed on the Windows 10 device with an IP address of 192.168.0.1 using the specified app package.

WinAppDeployCmd update -file "Downloads\MyApp.appx" -ip 192.168.0.1

192.168.0.1 IP 주소를 사용하는 PC 또는 Xbox에서 AppxManifest와 동일한 폴더의 앱 파일을 디바이스 배포 경로 아래의 app1_F5 디렉터리로 배포합니다.Deploys the files of an app to a PC or Xbox with an IP address of 192.168.0.1 in the same folder as the AppxManifest to the app1_F5 directory under the deployment path of the device.

WinAppDeployCmd deployfiles -file "C:\apps\App1\AppxManifest.xml" -remotedeploydir app1_F5 -ip 192.168.0.1

192.168.0.1을 사용하는 PC 또는 Xbox 배포 경로 아래의 app1_F5 디렉터리에서 앱을 등록합니다.Registers the app at the app1_F5 directory under the deployment path of the PC or Xbox at 192.168.0.1.

WinAppDeployCmd registerfiles -file app1_F5 -ip 192.168.0.1

WinAppDeployCmd를 사용하여 Xbox One에 PC에서 실행 배포 설정Using WinAppDeployCmd to set up Run from PC deployment on Xbox One

PC에서 실행을 통해 이진 파일을 복사하지 않고 Xbox One에 UWP 애플리케이션을 배포할 수 있습니다. 대신 이진 파일은 Xbox와 동일한 네트워크의 네트워크 공유에 호스트됩니다.Run from PC allows you to deploy a UWP application to an Xbox One without copying the binaries over, instead the binaries are hosted on a network share on the same network as the Xbox. 이렇게 하려면 개발자가 Xbox One을 잠금 해제해야 하고 Xbox가 액세스할 수 있는 네트워크 드라이브의 느슨한 파일 UWP 애플리케이션이 필요합니다.In order to do this, you need a developer unlocked Xbox One, and a loose file UWP application on a network drive that the Xbox can access.

앱을 등록하려면 다음을 실행합니다.Run this to register the app:

WinAppDeployCmd registerfiles -ip <Xbox One IP> -remotedeploydir <location of app> -username <user for network> -password <password for user>

ex. WinAppDeployCmd register files -ip 192.168.0.1 -remotedeploydir \\driveA\myAppLocation -username admin -password A1B2C3