etsuxのブログ

自分がハマったことなどを記録しています。

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された。 

f:id:etsux:20170731213354p:plain

結局、Update後はRDP Wrapperは動作しなくなり、Updateによる影響であることが判明した。

ちなみに、KB4021572はアンインストール可能だが、アンインストールしても動作せず。

他の更新プログラムはアンインストールできないようになっていて、OSの再インストールしかない。

 ...本当にUpdateを強要するのはやめてほしい。

 

[追記]

Windows 10 1511 ISO」を再インストール後、すぐにWindows Updateを止めて永続的にRDP Wrapperが動作することが確認できた。

 

なお、Windows Updateの無効化は レジストリエディタで以下のキーを作成することでできた。

  1. 「HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows」まで展開する。
  2. 「WindowsUpdate」キーを作成する。
  3. AU」キーを作成する。
  4. DOWRD値で「NoAutoUpdate」を追加し、値を「1」にする。