そうか、そうか

~とあるSIerの、哀と涙の軌跡~

Simple 1500シリーズ The 虎舞竜 ~とあるVMware Horizonで起きた悲運のマウススクロール不動 編~

皆様、ごきげんよう、私です。

 

つい先日、実家で母が使っていた包丁の柄がぶっ壊れました。

なんでも、結婚当初から使っているらしく、実に40年が経過しています。

 

ただ、壊れたのはあくまで柄で、刃身の部位は無事です。

なので、今回、包丁の柄を一から作ってみました。

f:id:gokusan:20220218223240p:plain f:id:gokusan:20220218223141p:plain

 

寸法を適当に定規で測り、適当に図面に起こして、3Dプリンターで作りました。

 

思ったより精度よくできてびっくりです。

しかし、毎日台所使う道具を40年もずっと使い続けられるとは、実の母ながら、尊敬します。

新しいの欲しいから、とすぐにスマホを機種変してしまう自分には到底真似できそうにありません。

 

さて、今回は、VMware Horizon 真冬の怪奇現象『マウススクロールは、動かない』をご紹介したいと思います。

 

 

え?まじで、そんなことあるの?

入力デバイスである、「マウス」「キーボード」。

 

これをなくしてパソコンは扱えません。

それは、もちろん仮想デスクトップだって例外じゃぁありません。

 

とあるお客様のHorizon 8環境で、Windows 10の仮想デスクトップを使ったときのことでした。

 

f:id:gokusan:20220218223957p:plain「10秒経過!フフフフ そして仮想デスクトップ環境を動作させることも10秒を超えた………」

 

(仮想PCの操作をする私)

 

f:id:gokusan:20220218223957p:plain「な…なんだ?マウススクロールのうごきが に…にぶいぞ ち…ちがう動きがにぶいのではない…動けんッ!ば…ばかな」

 

という状態になりました。

 

つまり、どういうことかというと…

仮想デスクトップでマウススクロールが一切効かなくなったのです。

 

なんてこった。

もはや、ぴえんを超えてパオンです。BEYOND THE PIENってやつです。

 

結論から言うとね

原因は、なんとWindows 10のとある設定のせいでした。

f:id:gokusan:20220218231837p:plain

上図、赤枠の部位です。
ズバリ、Horizon Client経由でマウス操作をした際、マウススクロールこの部位が、オフになっていたことが原因でした。

 

ポイントしたときに非アクティブ ウィンドウをスクロールする

 

( ゚д゚)…

 

ポイントしたときに非アクティブ ウィンドウをスクロールする

 

( ゚Д゚)…ナニソレ?

 

ポイントしたときに非アクティブ ウィンドウをスクロールする、って何?

この機能、皆さんあまり意識されていないかもしれませんが、

 

非アクティブウィンドウ = フォーカスが当たっていないウィンドウ に対して、マウスをポイントしたときに、いちいちクリックしてフォーカスを当てなくてもスクロールしてくれるという微妙に便利な機能です。

 

↓のようにブラウザがアクティブ状態になっており、

後ろで動いているエクセルが非アクティブ状態になっているとき、エクセルにマウスカーソルを動かすと・・・

f:id:gokusan:20220218233021p:plain  f:id:gokusan:20220218233123p:plain

なんと、エクセルのウィンドウをアクティブ状態にしなくても、マウススクロールができちゃいます

 

当たり前のように使っていますが、便利な機能です。

 

この機能、既定はオンなので、ほとんどのケースにおいて意識することはありません。

 

問題は、この機能がオフになった状態だと、なんとHorizon Clientで操作する仮想マシンはマウススクロールが効きません

ヤバいです。

 

さて、「じゃぁこの機能をオンにすりゃいいだけじゃねぇか馬鹿野郎」と思うかもしれませんが、この機能、グループポリシーで無効にできます

つまり、場合によっちゃオフのままなんとかしないといけないってことです。

 

解決策:ずばりConfigファイル用意すれば何とかなるなる

ポイントしたときに非アクティブ ウィンドウをスクロールする をどうしてもオンにできない場合、Horizon Clientが導入された端末にConfigファイルを一つ作ってあげれば、解消できます。

 

Scroll Wheel does not work on a VDI desktop connecting with Horizon Client 5.5 and higher (85363)

 

ひっそりとKBも公表されています。

 

内容としては、

① Config.iniファイルを手動作成する

② 中に、viewClient.dropScrollWheel = FALSE を記載する

%AppData%\Roaming\VMware 直下に格納する。

%AppData% がどこかわからない場合、コマンドプロンプトから「env」コマンドを実行してみましょう。

 

というだけです。

 

これで、ポイントしたときに非アクティブ ウィンドウをスクロールする が、どーーーーしてもやむをえず、仕方なしにオフにせざるを得ない状況でもマウスするクロールが効くようになります。

 

なお、対象バージョンは、Horizon Client 8.1 以降で8.0では使用できないそうです。

 

最後に

というわけで、今回はHorizon環境で起きた、まさかのマウススクロールが動かないという事象についてご紹介いたしました。

 

これ、普通に考えて結構困るよね・・・?

 

ではでは~。