Windows10 ファイルの置換やスキップの画面が表示されないときの対処法
不具合の内容
Windows10にてアクティブウィンドウが最前面に出てこない、他のウィンドウを最小化すれば問題ないが、コピーの時のファイルの置換、上書きやスキップなどのウィンドウなどが元のウィンドウとなってセットとなって出ている小さいウィンドウのものが操作できなくなる。他のウィンドウも、ウィンドウが最前面に出てこないときがある。
原因
Win32 APIの指定されたウィンドウを最前面に表示させる機能 【 SetForegroundWindow 】 に異常が出ていると考えられる。
対策法概要
Win32 APIの 【 SetForegroundWindow 】 絡みでおかしくなっていると考えられるので、レジストリー内にある 【 ForegroundLockTimeout 】 の値を変更します。
ForegroundLockTimeoutとは
まず、【 ForegroundWindow 】 に関してですが、これは日本語にそのまま直訳通り前景ウィンドウの制御に関するものです。プログラムから別のプログラムのフォーカスを切り替える処理は、システムにより制限されています。ユーザーが処理している時に他のプログラムのウィンドウが前面に来るといけないから、それを防ぐ機能です。例えば、エクスプローラーのコピー中に他の処理をしており、ファイルの上書き確認などがあった場合、タスクバーで点滅していたことがあると思います。ここで、ForegroundLockTimeoutとは制限解除までの時間になり、これを0にすることにより、機能自体を解除となり、切り替えが自由になります。
対策法の詳細
レジストリーエディターを立ち上げる
キーボードの 【 Windowsマーク 】 + 【 R 】 で 「ファイル名を指定して実行」ウィンドウが立ち上がります。
画面のように「 regedit 」と入力し、 【 OK 】 ボタンをクリックする。
レジストリエディタでForegroundLockTimeoutを見つける
開いたレジストリエディターの左側を
【 HKEY_CURRENT_USER 】 > 【 Control Panel 】 > 【 Desktop 】 と順番に開いていく
右側の 【 ForegroundLockTimeout 】 の行を見つける。
【 ForegroundLockTimeout 】 の行で右クリックをし、【 修正 】 をクリック。
ForegroundLockTimeoutを編集する
開いた編集画面の 【 表記 】 の下の 【 10進数 】 をクリックする。
標準設定どおりであれば、左側の 【 値のデータ 】 は、 【 200000 】 が入っており、
これを 【 0 】 にすれば完了です。
200000は200000ミリ秒という意味ですが、0を入れると機能制限解除となります。
オススメ記事
UWSCで実行中のスクリプト ファイル名を取得する方法 getid…
概要とコード UWSCのちょっとした小ネタです。 UWSCで…
【対処法】chrome 原因不明のエラーによりインストールが失敗しました…
問題点 Windows10 バージョン1908においてChr…
Origin エラー MSVCR140.dll がない ダウンロードの方法…
不具合の原因 ソフトの動作に必要なVisual Studio…
ディスカッション
コメント一覧
まだ、コメントがありません