RDP Wrapperの実験~そしてWindows Update
Windows 10 HomeでRDP Wrapperを試してみる。
ESXiでWindows 10の仮想ゲストを作成し、RDP Wrapperをインストール。
[RDP Wrapper Configuration]画面を起動すると、[Listener state]が[not listening]のままで、起動できない。
調べてみたところ、RDP Wrapperのissueに上がっていた。
Listener is not listening on Win 10 Home (build 14997+) · Issue #194 · stascorp/rdpwrap · GitHub
ソースを見てみると、RDP-Tcpが無効化されている場合に動作しないようだ。(
WinStationEnumerateの情報はほとんどないので想像)
function IsListenerWorking: Boolean; var pCount: DWORD; SessionInfo: PWTS_SESSION_INFOW; I: Integer; begin Result := False; if not WinStationEnumerateW(0, SessionInfo, pCount) then Exit; for I := 0 to pCount - 1 do if SessionInfo^[I].Name = 'RDP-Tcp' then begin Result := True; Break; end; WinStationFreeMemory(SessionInfo); end;
最近のWindows UpdateでRDP-Tcpの無効化が行われたと思われる。
以前ダウンロードしてあったWindows 10 1511のISOがあるので、それを使って再インストール。(「Windows 10 1511 ISO」で検索すると、今でもMicrosoftのサイトからISOはダウンロードできる模様)
再インストール後に[RDP Wrapper Configuration]画面を起動すると、[Listener state]が[Listening]になっていることを確認。
リモートデスクトップからの接続も確認できた。
しばらくすると、Windows Updateの準備が完了した旨のメッセージ。
Updateが当たるのは困るのでダウンロードしたと思われるファイルやUpdate関連のサービスを無効化したのだが、OSを再起動したらやっぱりUpdateされた。
結局、Update後はRDP Wrapperは動作しなくなり、Updateによる影響であることが判明した。
ちなみに、KB4021572はアンインストール可能だが、アンインストールしても動作せず。
他の更新プログラムはアンインストールできないようになっていて、OSの再インストールしかない。
...本当にUpdateを強要するのはやめてほしい。
[追記]
「Windows 10 1511 ISO」を再インストール後、すぐにWindows Updateを止めて永続的にRDP Wrapperが動作することが確認できた。
なお、Windows Updateの無効化は レジストリエディタで以下のキーを作成することでできた。
- 「HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows」まで展開する。
- 「WindowsUpdate」キーを作成する。
- 「AU」キーを作成する。
- DOWRD値で「NoAutoUpdate」を追加し、値を「1」にする。