サイドロードする必要がある Windows ユニバーサル アプリがあります。NSIS を powershell スクリプトで使用してインストールしています。NSIS インストーラーで、Windows の設定でアプリのサイドローディングを有効にしたいと考えています。アプリのサイドローディングの有効化に関する Microsoft のドキュメント ( https://msdn.microsoft.com/library/windows/apps/xaml/dn706236.aspx ) を既に確認しました。
ドキュメントから powershell コマンドを実行して、スタンドアロンの powershell ウィンドウでレジストリを設定すると、問題なく動作し、アプリをインストールできます。ただし、レジストリ コマンドをインストーラー内に配置すると、機能しません。Powershell と NSIS の両方を使用してレジストリを設定しようとしました。WriteRegDWORD
NSIS からのコマンドと Powershell からのコマンドの両方を使用するreg add
と、成功したと表示されます。値を読み戻すと、正しい値が生成されます。Set-ItemProperty
Powershell スクリプトを使用してレジストリを設定しようとすると、パス HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock が存在しないというメッセージが表示されます。
Powershell からサイドローディングが有効になっているかどうかを確認する方法はないようです。Windows 設定を介してサイドローディングを有効にしてもレジストリが設定されないため、インストーラー コンテキストの外でもレジストリをチェックすることは有効な解決策ではありません。
したがって、私の現在の解決策は、アプリをインストールしようとすることです。インストールが失敗した場合は、エラー メッセージを確認し、サイドローディングが有効になっていないというメッセージが表示されているかどうかを確認してください。その場合は、Windows の設定を開いて開発者機能ページを開き、続行するにはサイドローディングを有効にする必要があるというメッセージをポップアップ表示します。次に、Windows の設定を閉じた後、アプリのインストールを再試行します。
NSIS インストーラーからサイドローディングを有効にすることはできますか? または、サイドローディングが有効になっているかどうかを確認することは可能ですか?