Windows 애플리케이션 배포(WinAppDeployCmd.exe)는 Windows 10 PC에서 모든 Windows 10 디바이스로 UWP(유니버설 Windows 플랫폼) 앱을 배포하는 데 사용할 수 있는 명령줄 도구입니다. Microsoft Visual Studio 또는 해당 앱에 대한 솔루션 없이도 Windows 10 디바이스가 USB로 연결되거나 동일한 서브넷에서 사용할 수 있는 경우 이 도구를 사용하여 앱 패키지를 배포할 수 있습니다. 먼저 원격 PC 또는 Xbox One에 패키징하지 않고도 앱을 배포할 수 있습니다. 이 문서에서는 이 도구를 사용하여 UWP 앱을 설치하는 방법을 설명합니다.
명령 프롬프트 또는 스크립트 파일에서 WinAppDeployCmd 도구를 실행하려면 Windows 10 SDK가 설치되어 있어야 합니다. WinAppDeployCmd.exe을 사용하여 앱을 설치할 때, .appx/.msix 파일 또는 AppxManifest(느슨한 파일의 경우)를 이용하여 앱을 Windows 10 장치에 사이드로드합니다. 이 명령은 앱에 필요한 인증서를 설치하지 않습니다. 앱을 실행하려면 Windows 10 디바이스가 개발자 모드이거나 인증서가 이미 설치되어 있어야 합니다.
모바일 디바이스에 배포하려면 먼저 패키지를 만들어야 합니다. 자세한 내용은 여기를 참조하세요.
WinAppDeployCmd.exe 도구는 Windows 10 PC: C:\Program Files (x86)\Windows Kits\10\bin\<SDK 버전>\x86\WinAppDeployCmd.exe(SDK 설치 경로에 따라)에 있습니다.
비고
SDK 버전 15063 이상에서는 SDK가 버전별 폴더 내에 나란히 설치됩니다. 이전 SDK(14393 이전 및 포함)는 부모 폴더에 직접 기록됩니다.
먼저 Windows 10 디바이스를 동일한 서브넷에 연결하거나 USB 연결을 사용하여 Windows 10 컴퓨터에 직접 연결합니다. 그런 다음, 이 문서의 뒷부분에 있는 이 명령의 다음 구문과 예제를 사용하여 UWP 앱을 배포합니다.
WinAppDeployCmd 구문 및 옵션
WinAppDeployCmd.exe에 사용되는 일반적인 구문입니다.
WinAppDeployCmd command -option <argument>
다음은 다양한 명령을 사용하기 위한 몇 가지 추가 구문 예제입니다.
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>
대상 디바이스에 앱을 설치하거나 제거하거나 이미 설치된 앱을 업데이트할 수 있습니다. 이미 설치된 앱의 데이터나 설정을 저장하려면 설치 옵션 대신 업데이트 옵션을 사용하세요.
다음 표에서는 WinAppDeployCmd.exe명령에 대해 설명합니다.
명령 | 설명 |
---|---|
장치 | 사용 가능한 네트워크 디바이스 목록을 표시합니다. |
설치하다 | 대상 디바이스에 UWP 앱 패키지를 설치합니다. |
업데이트 | 대상 디바이스에 이미 설치된 UWP 앱을 업데이트합니다. |
목록 | 지정된 대상 디바이스에 설치된 UWP 앱 목록을 표시합니다. |
제거 | 대상 디바이스에서 지정된 앱 패키지를 제거합니다. |
파일 배포 | 디바이스에 있는 원격 상대 경로로 느슨한 파일 앱을 대상 경로에서 복사합니다. |
레지스터 파일 | 원격 배포 디렉터리에 독립 파일 앱을 등록합니다. |
애드크레더스 | 앱 등록을 위해 네트워크 위치에 액세스할 수 있도록 Xbox에 자격 증명을 추가합니다. |
getcreds | 네트워크 공유에서 애플리케이션을 실행할 때 특정 사용 목적에 필요한 네트워크 자격 증명을 얻습니다. |
deletecreds | 네트워크 공유에서 애플리케이션을 실행할 때 대상에서 사용하는 네트워크 자격 증명을 삭제합니다. |
다음 표에서는 WinAppDeployCmd.exe옵션에 대해 설명합니다.
명령 | 설명 |
---|---|
-h(-help) | 명령, 옵션 및 인수를 표시합니다. |
-아이피 | 대상 디바이스의 IP 주소입니다. |
-g(-guid) | 대상 디바이스의 고유 식별자입니다. |
-d (-dependency) | (선택 사항) 각 패키지 종속성에 대한 종속성 경로를 지정합니다. 경로가 지정되지 않은 경우 도구는 루트 디렉터리에서 앱 패키지 및 SDK 디렉터리에 대한 종속성을 검색합니다. |
-f(-file) | 앱 패키지를 설치, 업데이트 또는 제거할 파일 경로입니다. |
-p(-package) | 제거할 앱 패키지의 전체 패키지 이름입니다. (list 명령을 사용하여 디바이스에 이미 설치된 패키지의 전체 이름을 찾을 수 있습니다.) |
-핀 | 대상 디바이스와 연결을 설정하기 위해 필요한 경우 핀입니다. (인증이 필요한 경우 -pin 옵션을 사용하여 다시 시도하라는 메시지가 표시됩니다.) |
-credserver | 대상에서 사용할 네트워크 자격 증명의 서버 이름입니다. |
-credusername | 대상에서 사용할 네트워크 자격 증명의 사용자 이름입니다. |
-credpassword | 대상에서 사용할 네트워크 자격 증명의 암호입니다. |
-connecttimeout | 디바이스에 연결할 때 사용되는 시간 제한(초)입니다. |
-remotedeploydir | 원격 디바이스에서 파일을 복사할 상대 디렉터리 경로/이름 잘 알려진 자동 결정 원격 배포 폴더가 됩니다. |
-extra 파일 삭제 | 원본 디렉터리에 맞게 원격 디렉터리의 기존 파일을 제거해야 하는지 여부를 나타내려면 전환합니다. |
다음 표에서는 WinAppDeployCmd.exe옵션에 대해 설명합니다.
논쟁 | 설명 |
---|---|
<x> | 초 단위의 시간 제한입니다. (기본값: 10) |
<주소> | 대상 디바이스의 IP 주소 또는 고유 식별자입니다. |
< ><b> ... | 각 앱 패키지 종속성에 대한 종속성 경로입니다. |
<p> | 연결을 설정하기 위해 디바이스 설정에 표시되는 알파 숫자 핀입니다. |
경로 <> | 파일 시스템 경로입니다. |
<이름> | 제거할 앱 패키지의 전체 패키지 이름입니다. |
<서버> | 파일 네트워크의 서버입니다. |
<사용자 이름> | 파일 네트워크의 서버에 액세스할 수 있는 자격 증명의 사용자입니다. |
암호 <> | 파일 네트워크의 서버에 액세스할 수 있는 자격 증명의 암호입니다. |
<원격배포디렉토리> | 배포 위치를 기준으로 디바이스에 있는 디렉터리 |
WinAppDeployCmd.exe 예제
다음은 WinAppDeployCmd.exe구문을 사용하여 명령줄에서 배포하는 방법의 몇 가지 예입니다.
배포에 사용할 수 있는 디바이스를 표시합니다. 이 명령은 3초 후에 시간 초과됩니다.
WinAppDeployCmd devices 3
PC 다운로드 디렉터리에 있는 MyApp.appx 패키지의 앱을 A1B2C3 PIN이 있는 192.168.0.1 IP 주소가 있는 Windows 10 디바이스에 설치하여 디바이스와의 연결을 설정합니다.
WinAppDeployCmd install -file "Downloads\MyApp.appx" -ip 192.168.0.1 -pin A1B2C3
IP 주소가 192.168.0.1인 Windows 디바이스에서 지정된 패키지(전체 이름 기준)를 제거합니다. 목록 명령을 사용하여 디바이스에 설치된 패키지의 전체 이름을 볼 수 있습니다.
WinAppDeployCmd uninstall -package Company.MyApp_1.0.0.1_x64__qwertyuiop -ip 192.168.0.1
지정된 앱 패키지를 사용하여 Windows 10 디바이스에 이미 설치된 앱을 IP 주소 192.168.0.1로 업데이트합니다.
WinAppDeployCmd update -file "Downloads\MyApp.appx" -ip 192.168.0.1
AppxManifest와 동일한 폴더에 있는 IP 주소가 192.168.0.1인 PC 또는 Xbox에 앱 파일을 디바이스의 배포 경로 아래의 app1_F5 디렉터리에 배포합니다.
WinAppDeployCmd deployfiles -file "C:\apps\App1\AppxManifest.xml" -remotedeploydir app1_F5 -ip 192.168.0.1
192.168.0.1의 PC 또는 Xbox 배포 경로 아래의 app1_F5 디렉터리에 앱을 등록합니다.
WinAppDeployCmd registerfiles -remotedeploydir app1_F5 -ip 192.168.0.1
WinAppDeployCmd를 사용하여 Xbox One에서 PC 배포 실행을 설정하는 방법
PC에서 실행하면 이진 파일을 복사하지 않고도 Xbox One에 UWP 애플리케이션을 배포할 수 있습니다. 대신 이진 파일은 Xbox와 동일한 네트워크의 네트워크 공유에서 호스트됩니다. 이렇게 하려면 개발자가 잠금 해제한 Xbox One과 Xbox에서 액세스할 수 있는 네트워크 드라이브의 느슨한 파일 UWP 애플리케이션이 필요합니다.
앱을 등록하려면 다음을 실행합니다.
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