「既定のアプリの選択」をグループポリシーで制御する方法【Windows】

こんにちは。ますのです。
Windows10端末で「既定のアプリの選択」を制御したいことがあり、ActiveDirectoryサーバのグループポリシーでユーザ制御出来ないかと調べて対応したので備忘録です!

だってWindows10の初期設定、PDF開く時に「MicrosoftEdge」なんですもの。。。どうも印刷の時にMicrosoftEdgeだとプリンタドライバ側の設定が出来なかったり、画像として印刷が出来なかったりとイマイチな印象なのです。印刷データがスプール中で停止したりちょいちょいあるので、AdobeReaderに変えたいなぁとなり設定に至りました。

設定を実施する環境の説明

・WindowsServer2016:ActiveDirectory&グループポリシー
・Windows10:コマンドプロンプト or PowerShell(クライアント調査用)
・既定のプログラム:MicrosoftEdge→AdobeReaderDCに変更する

※クライアントPCのローカルポリシーでも同設定があります。グループポリシーではなく各端末のポリシーで制御したい場合はローカルポリシーより確認ください。

手順1:コマンドで既定アプリの構成ファイルをエクスポートする

まずはクライアントPC:Windows10のPowerShell、もしくはコマンドプロンプトを管理者権限で起動し、既定アプリの構成ファイルを出力しましょう。

Dism.exe /Online /Export-DefaultAppAssociations:C:\AppAssoc.xml

Cドライブ直下に「AppAssoc.xml」というファイルが作成されます。
このファイルは現在設定されている既定のアプリの一覧になります。このリストを元に、グループポリシーに反映させるリストを作成します。

手順2:グループポリシーに設定する既定のアプリの構成ファイルを作成する

出力した「AppAssoc,xml」の構成は以下となっています。

<?xml version=”1.0″ encoding=”UTF-8″?>
<DefaultAssociations><Association Identifier=”(拡張子)” ProgId=”(ProgIDキー)” ApplicationName=”(アプリケーション名)” />
<Association Identifier=”(拡張子)” ProgId=”(ProgIDキー)” ApplicationName=”(アプリケーション名)” />

(略)</DefaultAssociations>
今回はPDFの既定のアプリのみ「MicrosoftEdge」から「Adobe Reader DC」に変更したいので以下の内容でデータを作成しました。
<?xml version=”1.0″ encoding=”UTF-8″?>
<DefaultAssociations><Association Identifier=”.pdf” ProgId=”AcroExch.Document.DC” ApplicationName=”Adobe Acrobat Reader DC” /></DefaultAssociations>

【ApplicationName】に何を入れれば良いか分からない時

ApplicationNameはレジストリの「RegisteredApplications」の名前に記載されているものと一致すると機能するため、以下手順で確認した名称を登録しましょう。
①検索ボタンから「regedit」と入力し、レジストリエディターを起動
②以下のパスに沿って移動し、確認する
\HKEY_LOCAL_MACHINE\SOFTWARE\RegisteredApplications

手順3:グループポリシーに作成したxmlを登録する

続いて、ADサーバのグループポリシーに作成したxmlデータを登録し配信します。

adm windowsexplorer.admx
ポリシー コンピューターの構成>管理用テンプレート>Windowsコンポーネント>エクスプローラー

わたしの環境だとWindowsコンポーネント以降が見つからず。。。
今回は「管理用テンプレート」-「すべての設定」から項目の設定を行いました。
項目 既定の関連付け構成ファイルの設定
設定値 ・有効
・既定の関連付け構成ファイル :(AppAssoc.xmlの保存先となるパスを指定)

※ファイルはクライアントPCがアクセス可能な共有フォルダに置く必要があります。

最後に、設定を行ったグループポリシーを、AD内のクライアントPCが格納されているOUにリンク設定します。

以上の設定を実施したあと、クライアントPCを再起動してみましょう!きっと既定のプログラムが変わるはずです!

グループポリシーを再度当てるコマンド「gpupdate /force」では反映されなかったので、この件については再起動安定そうです。
最新情報をチェックしよう!