いろいろ手法が書かれていたのでまとめ
トレンドマイクロ:リモートインストールを使用したインストール
・クライアントのWindowsファイアウォール設定で「ファイルとプリンタの共有」を有効にする
・レジストリを変更してUAC無効化(再起動必須)
・Remote Registryサービス有効化
キヤノンIT:「クライアント用プログラムのインストール方法について」
・【 方法3 】 グループポリシーオブジェクト(GPO)やログオンスクリプトを利用して各クライアント端末にリモートインストールする
・【 方法4 】 各クライアント端末にプッシュインストールする
それぞれ、手法が解説されているが、結局はGUIを使用しているため流用はできない。
後者の「Windowsプッシュ」を使っている、というのだけ情報の起点として。
グループポリシーを使ってドメインに所属するコンピュータにGoogle Chromeをインストールする2つの方法
msiファイルを使ってGPOで配布する手法とインストールexeファイルをスタートアップで直接指定して実行するという大変大雑把な手法が解説されている。
後者は毎回実行されることになるので推奨しない。
Active Directoryのグループポリシーを利用したUnifierクライアントのインストール
こちらはスタートアップではなく、シャットダウンにインストール用のバッチファイルを入れてインストールする手法。
バッチファイル内でインストール済みか判定させているので毎回インストールが実行されることは避けられる。
rem --------------------------------------------------------
rem Unierサイレントインストール
rem 対象OS:Windows10(x86、x64)
rem --------------------------------------------------------
rem coejobsvc.exeが存在していたらインストール済みと判断し処理を抜ける
if exist "%PROOT%\0200\bin\coejobsvc.exe" exit
rem 下記パスを環境に合わせて変更する
set COPYFR="\\192.168.221.245\temp\Media_V540\Unifier"
set WORKDIR="%temp%\unifier"
set LOG=UnifierInst.log
rem インストール用フォルダ
if not exist %WORKDIR% mkdir %WORKDIR%
md %WORKDIR%
cd /d %WORKDIR%
echo --- 開始 %date% %time% > %LOG% 2>&1
rem 変数チェック
if "%PROCESSOR_ARCHITECTURE%" == "" (
echo "■環境変数 %%PROCESSOR_ARCHITECTURE%% が空です。" >> %LOG% 2>&1
exit
)
rem OSチェック %_osver% に Win10、Win8、Win7 をセット
call :ChkOsVer
if "%_osver%" == "" (
echo "■ERR:OSバージョンの取得ができません。" >> %LOG% 2>&1
exit
) else if "%_osver%" NEQ "Win10" (
echo "■ERR:OSバージョン「%_osver%」はUnifierインストール対象外のOSです。" >> %LOG% 2>&1
exit
)
if "%PROCESSOR_ARCHITECTURE%" == "x86" (
if "%PROCESSOR_ARCHITEW6432%" == "AMD64" (
echo "32bit process on 64bit OS - WOW64 : " %_osver% >> %LOG% 2>&1
if "%_osver%" == "Win10" (
echo "■Win10(x64) モジュールコピー " %COPYFR% %WORKDIR% >> %LOG% 2>&1
xcopy %COPYFR% %WORKDIR% /E /H /Y >> %LOG% 2>&1
)
) else (
echo "32bit process on 32bit OS : " %_osver% >> %LOG% 2>&1
if "%_osver%" == "Win10" (
echo "■Win10(x86) モジュールコピー " %COPYFR% %WORKDIR% >> %LOG% 2>&1
xcopy %COPYFR% %WORKDIR% /E /H /Y >> %LOG% 2>&1
)
)
) else (
echo "64bit process on 64bit OS : " %_osver% >> %LOG% 2>&1
if "%_osver%" == "Win10" (
echo "■Win10(x64) モジュールコピー " %COPYFR% %WORKDIR% >> %LOG% 2>&1
xcopy %COPYFR% %WORKDIR% /E /H /Y >> %LOG% 2>&1
)
)
rem Unifierインストール
start /w SilentInst.cmd
echo --- 終了 %date% %time% >> %LOG% 2>&1
rem -----------------------------------------
rem OSバージョンチェック
rem -----------------------------------------
:ChkOsVer
For /f "tokens=2 delims=[]" %%G in ('ver') Do (set _version=%%G)
For /f "tokens=2,3,4 delims=. " %%G in ('echo %_version%') Do (set _major=%%G& set _minor=%%H& set _build=%%I)
rem echo _version=%_version%
rem echo _major=%_major%
rem echo _minor=%_minor%
rem echo _build=%_build%
if "%_major%"=="6" (
rem Windows 7
if "%_minor%"=="1" (set _osver=Win7)
rem Windows 8
if "%_minor%"=="2" (set _osver=Win8)
rem Windows 8.1
if "%_minor%"=="3" (set _osver=Win8)
)
if "%_major%"=="10" (
rem Windows 10
if "%_minor%"=="0" (set _osver=Win10)
)
exit /b