一悶着有ったので記録を。ググってもあんまり日本語だと出ないみたいなので。
この問題は、
- Process Explorerでどのプロセスでもいいのでプロパティを開き、Threadsタブを選択した状態でOKを押してプロパティウィンドウを閉じる
- 再びプロパティを開くとフリーズ(応答なし)
単刀直入に言うと原因はTeamViewerのクイック接続という機能。この機能が有効で、且つTeamViewerが常駐しているという状態で上の手順を踏むと、Process Explorerがフリーズします。解決法は、使ってないならクイック接続を無効化すること。使ってるなら、クイック接続の設定から無効なアプリケーションにProcess Explorerを追加する。
どうしてこの記事を書くことになったかというと、原因がTeamViewerだと分かった段階で、TeamViewerと併用するならTeamViewerの開発元に問い合わせるように、Twitterのマイクロソフトサポートに促されたからです。多分TeamViewerの方に問い合わせても、この機能を適用しないアプリケーションの設定がついてるんだから、それ使って対応してねってことになりそうだったので。
いつも通りダラダラと書かせていただくと
最初そんなものが原因とは思わずに、特定までに割りと時間かかりました。取り敢えず、プロパティを開こうとしたのはコマンドラインをコピりたかったからだったので、設定ファイル消して復旧させようと思ったら、レジストリに記録されていると判明。
HKEY_CURRENT_USER\SOFTWARE\Sysinternals\Process Explorer
どれなのか悩んだけど、「DefaultProcPropPage」ってやつでした。削除したらThreadsではなくImageを開くようになったので、取り敢えず問題は解決。しかし、Threadsにしてから開き直すとフリーズするのは、ウィルス対策ソフトを全部止めても起きるので、Process Explorer側の問題なのかと思って、Twitterでサポートに問い合わせたら起きない・環境依存の疑いがあるとのこと。
そのため、Windowsをセーフモードで起動してやってみたらフリーズしませんでした。となると何が原因??設定の問題なのかと思って、レジストリのバックアップを取った上でProcess Explorerの項目を全削除。
起動すると初回起動時の画面とか出て、プロパティ開いてThreadsを開くと見たことのないWarningが出る。かいつまむと、Dbghelp.dllのバージョンがサポートされてない、デバッギングツールをダウンロードしてねという内容。無視してThreadsタブのままプロパティウィンドウ閉じて開き直すと、やはりフリーズ。
今回Dbghelp.dllという謎のファイルが出てきたので、Process Explorerと合わせてググったところ、次のサイトを発見。
https://forum.sysinternals.com/hang-in-processs-properties-window_topic32098.html
え?TeamViewerが原因だったの!?レジストリ操作が書いてあるけど解決せず。
そういえば、各ウィンドウの右上の方にTeamViewerの機能による矢印が付いてるってことをふと思い出し、クリック。この機能を無効にする、と言うものが出てきたので無効化。そしてまたProcess Explorerで同じ操作をすると…フリーズしない!!直った!!
因みに、これがクイック接続という機能で各ウィンドウに付く矢印になります。
この機能は、他のソフトでも不具合を起こすようです。使わないんなら無効化した方が安心・安全ですね。
