こんにちは! BFT名古屋支店 亀井(仮名)です!
今回は、前回導入したCitrixWorkspaceAppのインストールをできる限り自動化してみました。
↓前回の記事はこちら↓
bftnagoya.hateblo.jp
はじめに
まず、クライアント端末でCitrixWorkspaceAppを利用するためには以下の作業が必要となります。
1. MicrosoftEdgeWebView2Runtimeのインストール
2. WorkspaceAppのインストール
3. レジストリの変更
4. OSの再起動
前回の構築記事内ではこれらを全て手動で行いましたが、今回はコマンドを使って実行することで自動化を目指します。
1. 事前準備
まずはインストールの準備をします。
今回利用するインストーラ、および端末情報は以下の通り。
★インストーラ
・MicrosoftEdgeWebView2RuntimeInstallerX64.exe(バージョン1.3.157.61)
・CitrixWorkspaceApp.exe(バージョン21.9.0)
★端末情報
・windows10 Enterprise Evaluation 64bit
これらの資材をインストールしたい端末に配置します。
今回はCドライブ直下に「work」フォルダを作成し、その中に配置することとします。

2. MicrosoftEdgeWebView2Runtimeのインストール
コマンドプロンプトを管理者権限で起動し、先ほど資材を配置したパスまで移動します。
cd C:\work

以下のようにインストーラを指定することでインストールが開始します。
.\MicrosoftEdgeWebView2RuntimeInstallerX64.exe /install



インストール画面を表示させたくない場合には、「/silent」オプションを付ければ見えないところでインストールしてくれます。
.\MicrosoftEdgeWebView2RuntimeInstallerX64.exe /silent /install

これにより、まずはMicrosoftEdgeWebView2Runtimeのインストール用バッチができました。
@echo off echo MicrosoftEdgeWebView2Runtimeのインストールを開始します。 .\MicrosoftEdgeWebView2RuntimeInstallerX64.exe /silent /install
3. WorkspaceAppのインストール
WorkspaceAppも同様、インストーラを指定します。
.\CitrixWorkspaceApp.exe

ただし、WorkspaceAppの場合は起動後に手動で「開始」ボタン等を押す必要があります。

そんな時はこちらも「/silent」オプションを付けることで、自動化が可能となります。
.\CitrixWorkspaceApp.exe /silent

WorkspaceAppインストール用のバッチができました。
@echo off echo WorkspaceAppのインストールを開始します。 .\CitrixWorkspaceApp.exe /silent
4. レジストリの変更
レジストリの変更は以下のコマンドを使うことで変更できます。
reg add "(変更したいキーのパス)" /v (キー名) /t (種類) /d (変更する値) /f
これを今回の場合に当てはめると、以下のようになります。
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\AuthManager" /v "ConnectionSecurityMode" /t "REG_SZ" /d "Any" /f reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\Dazzle" /v "AllowAddStore" /t "REG_SZ" /d "A" /f reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\Dazzle" /v "AllowSavePwd" /t "REG_SZ" /d "A" /f

コマンドプロンプト上から「この操作を正しく終了しました」という表示を消したい場合には、最後に「>nul」を書いてあげればOK。
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\AuthManager" /v "ConnectionSecurityMode" /t "REG_SZ" /d "Any" /f >nul

レジストリ変更バッチは以下のようになりました。
@echo off echo レジストリの変更を開始します。 reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\AuthManager" /v "ConnectionSecurityMode" /t "REG_SZ" /d "Any" /f >nul reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\Dazzle" /v "AllowAddStore" /t "REG_SZ" /d "A" /f >nul reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\Dazzle" /v "AllowSavePwd" /t "REG_SZ" /d "A" /f >nul
5. OSの再起動
再起動は以下のコマンドで実行できます。
shutdown /r /t 0
コマンドを実行すると問答無用で再起動されちゃうので、一旦確認を入れるようなバッチにしてみましょう。
@echo off set /p selected="再起動しますか?(はい:y いいえ:n)" if /i "%selected%"=="y" call :yes echo インストール完了には再起動が必要です。 echo 後ほど手動で再起動してください。 pause exit :yes shutdown /r /t 0 exit
実行すると再起動してよいか確認されるようになりました。


拒否すれば再起動されません。

まとめ
ここまでの各コンポーネントのインストールから再起動までをまとめたバッチの一例が以下の通りです。
@rem MicrosoftEdgeWebView2Runtimeのインストール
@echo off
echo MicrosoftEdgeWebView2Runtimeのインストールを開始します。
.\MicrosoftEdgeWebView2RuntimeInstallerX64.exe /silent /install
@rem WorkspaceAppのインストール
@echo off
echo WorkspaceAppのインストールを開始します。
.\CitrixWorkspaceApp.exe /silent
@rem レジストリの変更
@echo off
echo レジストリの変更を開始します。
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\AuthManager" /v "ConnectionSecurityMode" /t "REG_SZ" /d "Any" /f >nul
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\Dazzle" /v "AllowAddStore" /t "REG_SZ" /d "A" /f >nul
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\Dazzle" /v "AllowSavePwd" /t "REG_SZ" /d "A" /f >nul
@rem OSの再起動
@echo off
set /p selected="再起動しますか?(はい:y いいえ:n)"
if /i "%selected%"=="y" call :yes
echo インストール完了には再起動が必要です。
echo 後ほど手動で再起動してください。
pause
exit
:yes
shutdown /r /t 0
exit
作成したバッチを、各インストーラが配置されているのと同じフォルダ内に配置し、管理者権限で起動します。
バッチを実行した画面がこちら。


再起動後、各コンポーネントのインストールとレジストリの変更が完了しています。



また、WorkspaceAppが正しくインストールされており、初期設定画面が表示されることも確認できました。


いかがだったでしょうか。
コマンドを利用することで、WorkspaceAppを利用するために必要な手順を全て自動化することができました。
これらの内容をベースに各環境や要件に合わせながら微調整することで、自動的にWorkspaceApp導入が実行できるバッチが作成できると思います。
それでは今回はここまで!