ただし、WindowsのXPバージョンよりも新しいコンピューターが非常に保守的なオフィスに登場し始めたため、問題が発生しました。WindowsServer 2003リモートアシスタント(一般的には誰にも適合しませんでした) OSの以降のバージョン。 もちろん、古き良き「リモートデスクトップ」はまだ残っていましたが、ユーザーがデスクトップ上で見ているものを正確に見る必要がある場合があります。 同時に、オフィスのセキュリティポリシーでは、最小限のサードパーティソフトウェアの使用が必要でした。
長い検索の後、サードパーティのユーティリティなしでWindows Server 2003セッションからWindows 7セッションへの接続が失敗することがわかりました。 UltraVNCは、最も無料のリモートコントロールユーティリティの競争で優勝しました。 彼女の例では、サードパーティのユーティリティを使用せずにプログラムをリモートでサイレントインストールする方法を検討します。
問題の声明
企業のコンピューター上に残っているソフトウェアの存在を最小限に抑えるために、ポリシーを通じてUltraVNCのインストールをプッシュしないことが決定されました。 同時に、ユーザーセッションに接続し、「リモートデスクトップ」を介して接続してUltraVNCをインストールする必要があるすべてのコンピューターには、希望はありませんでした。
そこで、タスクYが必要に応じてコンピューターYにプログラムXのリモートインストールを編成しました。 作業の結果、 install.batファイルが最初に誕生し、必要なプログラムの静かなインストール設定を実行できるようになりました。その後、サードパーティのユーティリティ( remote-install.bat )を使用せずに、リモートコンピューターでそのようなインストールを完全に起動する方法が発明されました。
UltraVNCの静かなインストール
このスクリプトを使用すると、ターゲットマシンで管理者権限で実行しているときにUltraVNCを迅速かつサイレントにインストールできます。
install.bat
@echo off rem set logfile=install.log echo %date% %COMPUTERNAME%>%logfile% echo [%time:~,8%] >>%logfile% set ThePath="%1" if %ThePath% EQU "" set ThePath="%CD%" rem 64- set DISTR=UltraVNC1191(x86).exe if "%ProgramFiles(x86)%" NEQ "" set DISTR=UltraVNC1191(x64).exe rem dir "C:\Program Files\UltraVNC" >NUL if %errorlevel% EQU 0 (goto CHECK_VER) else (cls) echo [%time:~,8%] >>%logfile% goto INSTALL rem :CHECK_VER echo [%time:~,8%] >>%logfile% type "C:\Program Files\UltraVNC\Whatsnew.rtf" | find "1.1.9.1" >NUL if %errorlevel% EQU 0 (cls & goto OOPS) else (echo [%time:~,8%] >>%logfile%) rem - echo [%time:~,8%] UVNC_Service>>%logfile% net stop uvnc_service >NUL if %errorlevel% EQU 0 (echo [%time:~,8%] UVNC_Service >>%logfile%) else (echo [%time:~,8%] UVNC_Service>>%logfile%) rd /s /q "C:\Program Files\UltraVNC" >NUL if %errorlevel% EQU 0 (echo [%time:~,8%] UltraVNC >>%logfile%) else (echo [%time:~,8%] UltraVNC>>%logfile%) rem : , :INSTALL md "C:\Program Files\UltraVNC" >NUL && echo [%time:~,8%] UltraVNC>>%logfile% cls copy /y "%ThePath:"=%\ultravnc.ini" "C:\Program Files\UltraVNC" >NUL if %errorlevel% EQU 0 (echo [%time:~,8%] >>%logfile%) else (echo [%time:~,8%] >>%logfile%) rem "%ThePath:"=%\%DISTR%" /verysilent /loadinf="%ThePath:"=%\uvncinstall.inf" if %errorlevel% EQU 0 (echo [%time:~,8%] UltraVNC >>%logfile%) else (echo [%time:~,8%] UltraVNC>>%logfile%) rem - rd /q /s "C:\Documents and Settings\All Users\ \\UltraVNC" >NUL if %errorlevel% EQU 0 (echo [%time:~,8%] >>%logfile%) else (echo [%time:~,8%] >>%logfile%) cls type %logfile% echo UltraVNC goto :eof rem , , :OOPS echo [%time:~,8%] UltraVNC (1.1.9.1)>>%logfile% cls type %logfile% echo pause goto :eof
リモートスタートサイレントインストール
このスクリプトにより、管理者(ユーザーSYSTEM)特権でinstall.batをリモートで実行できます。
remote-install.bat
@echo off rem , set /p CompName=" IP-: " if '%CompName%' EQU '' goto :eof rem - UltraVNC dir "\\%CompName%\c$\Program Files\UltraVNC" >NUL && goto CHECK_VER goto INSTALL rem :CHECK_VER type "\\%CompName%\c$\Program Files\UltraVNC\Whatsnew.rtf" | find "1.1.9.1" >NUL && goto OOPS goto INSTALL rem , C:\Temp :INSTALL md \\%CompName%\c$\Temp\UltraVNCServer xcopy /y "%CD%\*.*" \\%CompName%\c$\Temp\UltraVNCServer >NUL rem schtasks /create /s %CompName% /ru system /sc once /tn uvncinstall /tr "C:\Temp\UltraVNCServer\install.bat C:\Temp\UltraVNCServer" /ST "23:30:00" schtasks /run /s %CompName% /tn uvncinstall rem 5 () :CHECK ping 127.0.0.1 -n 5 >NUL schtasks /query /s %CompName% | find "uvncinstall" | find "" && goto :CHECK rem - schtasks /delete /s %CompName% /tn uvncinstall /f type \\%CompName%\c$\Temp\UltraVNCServer\install.log rd /q /s \\%CompName%\c$\Temp\UltraVNCServer >NUL echo . ! pause goto :eof rem - :OOPS echo UltraVNC (1.1.9.1) . pause goto :eof
重要な
エンコーディングの誤解によるスクリプトの失敗を避けるために、両方のファイルをMS-DOSエンコーディング(OEM 866)で保存することをお勧めします。 また、プログラムを正常にインストールするには、次のものが必要です。
- 32および64ビットシステムのそれぞれ名前付きディストリビューション-UltraVNC1191(x86).exeおよびUltraVNC1191(x64).exe
- 将来のUltraVNCサーバーの設定で事前に準備されたファイル-ultravnc.ini(任意のコンピューターに既にインストールおよび構成されたプログラムのコピーから取得できます)
- インストールオプションファイルはuvncinstall.infです。 私はこれを次のように持っています:
[Setup] Lang=en Dir=C:\Program Files\UltraVNC Group=UltraVNC NoIcons=0 SetupType=server_silent Components=ultravnc_server_s Tasks=installservice,startservice
まとめ
これらのbatスクリプトにより、Windows 7を搭載したコンピューターだけでなく、Windows XPを搭載した問題のある(「リモートアシスタント」の観点から)コンピューター、およびその後Windows 8を搭載したコンピューターにもUltraVNCを簡単にインストールできました。これらのスクリプトの助けを借りて、「サイレント」インストールがあった場合のみ、他のプログラムをインストールすることもできます。
このインストール方法の重要な機能は、schtasksを使用して、タスクの完了後にタスクを作成、実行、削除することでした。 スクリプトの残りの内容は、チェック、再保険、および他のコンピューターにUltraVNCをインストールする必要がある場合の手作業と精神作業を最小限にするためのあらゆる種類の怠inessです。