[mr09] デスクトップ アプリをストアから配布するための a to z
TRANSCRIPT
スタートメニュー
完全信頼プロセス(Win32)
部分信頼プロセス(アプリ)
スタートメニュー
完全信頼プロセス(Win32)
部分信頼プロセス(アプリ)
準完全信頼プロセス
(ブリッジ)
ユニバーサル アプリ パッケージ
デスクトップアプリより制限が存在することに注意
プロセスモデルの違い
従来のままWin32 からのマイグレーション
拡張Windows 10 の機能を有効活用
モダナイズプラットフォーム向けに最適化
基本的な APPX パッケージストアでのアプリ公開
従来の成果に対してアプリ レイアウトのモダナイズUWP コンポーネントの追加クラウドへの拡張Cortana サポートとの統合その他の UWP プラットフォームへの拡大: モバイル, HoloLens etc…
従来の成果に対して通知タイルアプリ起動の基本的な CortanaサポートUWP の機能を容易に追加できる
ステップ バイナリ エントリーポイント
.NET Native F5 デバッグ
1 変換 Win32 Win32 N/A VS 拡張2 強化 WinMD
を参照Win32 N/A VS 拡張
3 拡張 Win32 +CoreCLR
Win32 開発者の責任 VS 拡張
4 マイグレート CoreCLR+ Win32
UWP 開発者の責任 VS
5 UWP CoreCLR UWP ストアの責任 VS
ツールを使った変換作業
http://aka.ms/converter
http://aka.ms/converterimages
https://go.microsoft.com/fwlink/p/?LinkId=845298
インストーラはサイレント インストールが必須-Sign パラメータもある
http://aka.ms/converterdocumentjp※最新ドキュメントは英語版を参照
C:¥> DesktopAppConverter.exe -Installer "[インストーラ]" -InstallerArguments "[サイレント インストール オプション]" -Destination "[出力先]" -PackageName "[パッケージ名]" -Publisher "[CN=開発者]" -Version [バージョン] -MakeAppx –Verify -Verbose
ストアに関連付けるとアプリ インストーラは使えないインストールできない場合は、Powershell で実行
※一般ユーザー権限で問題無し
PS C:¥> Add-AppxPackage "[作成した Appx ファイル]"
https://docs.microsoft.com/en-us/windows/uwp/porting/desktop-to-uwp-run-desktop-app-converter
Ap
Windows シェル拡張
Packaged COM
PS C:¥> Invoke-CommandInDesktopPackage -PackageFamilyName[パッケージ ファミリ] -AppId [アプリ ID] -Command regedit
PS C:¥> Invoke-CommandInDesktopPackage -PackageFamilyName[パッケージ ファミリ] -AppId [アプリ ID] -Command regedit
PS C:¥> Invoke-CommandInDesktopPackage -PackageFamilyName[パッケージ ファミリ] -AppId [アプリ ID] -Command regedit
PS C:¥> Get-AppxPackage [アプリ ID]
[ファイル]-[ハイブの読み込み]Registory.dat
企業内専用のアプリ
一般公開するアプリ
https://developer.microsoft.com/en-us/windows/projects/campaigns/desktop-bridge
アプリ名を予約 Visual Studioでストアと関連付け AppxManifest を編集
事前申請 メールで情報交換 メールで結果を受領
• 名前(First Name、Last Name)
• Email Address• 会社名 (オプション)• 製品 URL (App URL)• マネタイズの手法• 国• アプリを公開する理由を記述
DAC は XCOPY 配置をサポートPRI リソースを自動作成
C:¥> DesktopAppConverter.exe -Installer "[入力フォルダ]" -AppExecutable "[実行ファイル名]" -Destination "[出力先]" -PackageName "[パッケージ名]" -Publisher "[CN=開発者]" -Version [バージョン] -MakeAppx –Verify -Verbose
http://aka.ms/converterimagesホスト OS のビルドと同じイメージを使用
-Setup オプションは 1 度だけ実施すればよい以前のファイル名は、BaseImage-<build>.wim
PS C:¥> DesktopAppConverter.exe -Setup -BaseImageWindows_InsiderPreview_DAC_<build>.wim
開 始
事前条件の確認
AppxManifestの初期化
パラメータの確認
変換環境の準備
変換環境へのインストール
仮想ファイルシステムの解析
インストール先の解析など
仮想レジストリの解析
AppxManifestの更新
Appx レイアウトの出力
終 了
PRI 構成ファイルが必要です
PriConfig.xml と layout.resfiles はDAC v1.0.6 の icon_extract より流用します
C:¥> MakePri.exe new -/pr [Appx レイアウト フォルダ] /cf [PRI 構成ファイル] /o
このコマンドは、Powershell で実行※一般ユーザー権限で問題無し
PS C:¥> Add-AppxPackage -Register "[変換したAppxManifest.xml]"
/l オプションは、PRI リソースを使用する場合
C:¥> MakeAppx.exe pack /d "変換した Appx レイアウトのフォルダ" /p "作成する Appx のファイル名" /l
-n に指定する開発者は、AppxManifest.xml と一致させる
C:¥> MakeCert.exe -r -h 0 -n "CN=開発者名" -eku1.3.6.1.5.5.7.3.3 -pe -sv pvk ファイル cer ファイルC:¥> pvk2pfx.exe -pvk pvk ファイル -spc cer ファイル -pfx pfx ファイルC:¥> signtool.exe sign -f pfx ファイル -fd SHA256 -v appx ファイル
VC 14.0 framework packages for Desktop Bridgehttps://blogs.msdn.microsoft.com/vcblog/2016/07/07/using-visual-c-runtime-in-centennial-project※テスト環境では、VC ランタイム パッケージのインストールが必要
<Dependencies><TargetDeviceFamily Name="Windows.Desktop"
MinVersion="10.0.14316.0" MaxVersionTested="10.0.14316.0" /><PackageDependency Name=”Microsoft.VCLibs.140.00.UWPDesktop”
MinVersion=”14.0.24217.0″ Publisher=”CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US” />
</Dependencies>
<PackageDependency Name=”Microsoft.VCLibs.140.00.UWPDesktop” MinVersion=”14.0.24217.0″ Publisher=”CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US” />
<PackageDependency Name=”Microsoft.VCLibs.120.00.UWPDesktop” MinVersion=”12.0. 40653.0″ Publisher=”CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US” />
<PackageDependency Name=”Microsoft.VCLibs.110.00.UWPDesktop” MinVersion=” 11.0. 61135.00″ Publisher=”CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US” />
Identity 要素
DisplayName 要素PublisherDisplayName 要素uap:VisualElements 要素の
DisplayName属性
http://go.microsoft.com/fwlink/?LinkId=797871
https://github.com/Microsoft/DesktopBridgeToUWP-Samples
https://github.com/shozoarai/DesktopBridgeSample
http://aka.ms/desktopbridge
https://developer.microsoft.com/en-us/windows/projects/campaigns/desktop-bridge
セッションアンケートにご協力ください
専用アプリからご回答いただけます。
decode 2017
スケジュールビルダーで受講セッションを登録後、アンケート画面からご回答ください。
アンケートの回答時間はたったの 15 秒です!
Ask the Speaker のご案内本セッションの詳細は『Ask the Speaker Room』各コーナーカウンタにてご説明させていただきます。是非、お立ち寄りください。
© 2017 Microsoft Corporation. All rights reserved.
本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。