眠りから覚めた後の窓の再配置を止めるにはどうしたらいいですか?

sleep windows-7

マルチモニターシステムを使用していない時はスリープ状態にしています。起こしてみると、すべてのウィンドウが別の画面に再配置されています。一番近いパターンは、メイン画面にあったウィンドウがセカンド画面に切り替わることです。スリープ状態になる前にメイン画面を切り離して、すべての窓を第2画面か第3画面に切り替えるようです

編集:これが私が使っているビデオカードです –> SAPPHIRE FleX 100322FLEX Radeon HD 6450

  136  None  2012-07-25


ベストアンサー

この問題は、グラフィックドライバに原因がある可能性が高いです。Windowsでマルチモニターのセットアップから1つのモニターが切り離されると、Windowsはその画面から残りの画面にすべてのものを移動しようとします。通常、コンピュータを一時停止/停止/シャットダウンするときには、このようなことは起こりません。そのため、グラフィックドライバが以下のいずれかを行っていることが原因であると考えられます

  • コンピュータをスリープ状態にしたときにモニターを「切り離す」ので、Windowsが目覚めたときには、すべてのものをどこに置くかを再決定しなければなりません
  • コンピュータをスリープ状態にするたびに異なる順番でモニターを認識し、Windowsがアプリケーションのウィンドウを強制的に並べ替えます

チップセットメーカーのウェブサイトにアクセスして、グラフィックスドライバのアップデートがあるかどうかを確認してください

35  Tanaki  2012-07-25


これは古い質問ですが、もし同じ問題でここに来た人がいたら、ここに投稿されている解決策を試してみることをお勧めします

Windows 7 moves/resizes windows on monitor power cycle
I have a new W7 ultimate install on a new PC (AOpen DEX4501 w intel GM45 graphics). I have installed the latest Intel graphics drivers 8.15.10.2202, and all rel...

私はWindows 8.1を、DisplayPortで2560×1440のディスプレイを2つ使って実行しています。スリープ状態から目覚めると、すべてのウィンドウが1つのディスプレイに押し出され、一部のウィンドウのサイズが変更されていました。これでこの問題は解決しました。以下が関連リンクの内容です

回避策を見つけました。Sysinternals ProcessMonitorを使用して、Windowsが以下のレジストリパスにアクセスしていることがわかりました

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Configuration

私のシステムには3つのエントリーがありました

  • DELF003YY7707BR0MUL_30_07D7_6A^9A3774EB79DEE3E3E38496CC7DF4D936
  • QHD32000001_31_07D6_D5^63E1ABDD175E7871DCAEB710418A0F75
  • SIMULATED_8086_2A42_00000000_00020000_1010100^CDE365D1B3F0942F0CF38BFB8E127AB4

それぞれの下には00というツリーがあります。キーのうち2つは

  • PrimSurfSize.cx
  • PrimSurfSize.cy

00の下には、00とも呼ばれる別のブランチがありました。そのうちの2つがキーとなります

  • ActiveSize.cx
  • ActiveSize.cy

最初の2つの設定(すなわち、DELF00... & QHD3...)では、上記のキーは1440×900だったので、関係ありません

3枚目(SIMULATED...)は1024×768に設定しました

これを1600×900に変更したら問題が解決しました

さらに、解像度を(コントロールパネルを介して)1920×1080に変更したところ、移動/リサイズの問題が戻ってきましたが、右下隅は1600×900に設定されていました(つまりSIMULATED...の設定)

そのため、何らかの理由で設定の1つが正しく設定されません

なんで3つのコンフィグがあるのかわからない、今までモニターは1つしか使ったことがない

60  John Freeman  2014-12-06


お使いのコンピュータにIntel HD Graphicsが搭載されている場合は、Intel GraphicsのコントロールパネルからExtend Displayオプション(および解像度設定)を設定する必要があります。Windowsのディスプレイ設定から設定した場合、スリープモードから起動するとリセットされます

スクリーンショットです

enter image description here

17  bytestorm  2016-01-12


これらの投稿のアイデアを組み合わせることで、この問題の回避策を見つけたと思います

(私のPCはWindows 10 TH2、Intel HD4600、HDMIポート付き、チャンホン4kモニター)

その手順をご紹介します

  1. …GraphicDrivers\ConfigurationとGraphicDrivers\Connectivityの下にある全ての余分なレジストリエントリを削除し、私のモニタに対応するエントリだけを残して(MST00301….)

  2. モニターをスリープ状態にする前に、”WIN” + “D “コンボキーを入力するだけで、すべてのデスクトップウィンドウを最小化することができます

  3. モニターの電源を入れた後、もう一度「WIN」+「D」を入力して、すべてのウィンドウを復元します

10  Kang  2015-11-22


すべてのNVidiaカードがEDIDを偽装する機能をサポートしているわけではなく、この問題を引き起こすのはSleepだけではありません。モニターの電源がオフになったり、一時的に切断されたりすると、慎重に設定された画面レイアウトに大混乱をもたらす可能性があります。ここでの解決策がどれもうまくいかなかったので、モニターの数が変わったときにウィンドウの位置を元に戻すユーティリティを書いてみました。ソースコードは こちら にあります

7  Garr Godfrey  2018-03-09


通常、これはグラフィックドライバが適切にスリープモードをサポートしていないために、コンピュータがスリープ状態になったときに接続されたディスプレイを検出できなくなることが原因です

メーカーのグラフィックドライバーをアップデートして問題を解決してください

ドライバをアップデートしても問題が解決しない場合は、異常に報告されたディスプレイID(EDID)が原因である可能性があります。通常は、グラフィックドライバのコントロールパネル内でモニターの検出を強制的に行うことができます

しかし、これが利用できない場合、Windows Resolutionウィンドウを使用して、モニターが切断されている間にデバイスを検出し、”Another Display Not Connected “を報告するディスプレイを選択し、Multiple Displaysの下で、ドロップダウンして “Try to connect anyway “を選択し、選択したポートタイプを介してモニターに信号をブロードキャストします(信号は対話的ではありません)

強制解像度は画面の検出を上書きし、スリープ中も継続します

2  WinOutreach2  2012-07-25


Windows 8.1とMacbook Air 2013 (Intel HD Graphics 5000)でここでも同じ問題が発生しています。私はすべてを試してみました。最後に私は私のグラフィックカードの最新のドライバで更新されたIntelに行き、問題は継続しています。その後、私はグラフィックのプロパティに行き、私の2番目のディスプレイが複数のディスプレイでオンになっている状態で、私は’このディスプレイを切断’を選択し、2番目のディスプレイが切断された後、私は私のデスクトップを拡張を選択し、問題は消えてしまいました。これがあなたのために動作することを願っています

2  Andrew  2014-04-18


私の場合、1920×1080のモニターを3台横に並べた状態で、他の回答にあるレジストリキー(HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Configuration)に行き、SIMULATEDから始まるキーを見つけ、そのキーの下にある1920の値を全て5760(1920×3、3台のモニターの場合)に変更すれば直ったようです

SIMULATEDキーはPCがスリープ状態になったときに使用されると思いますが、実際のモニターがまだ自分自身を報告していない場合でも、Windowsはスリープ状態になったり、スリープから再開したりする過程でデスクトップを維持する必要があります

2  wmassingham  2016-05-24


私の場合は、https://superuser.com/a/908156/238666 で修正できました。要約:Windowsは、ウェイクアップ時にモニタからEDID情報を読み取るのに失敗し、Nvidiaのコントロールパネルでは、タスクの下で、EDID情報をファイルに保存し、そのファイルから読み取るようにPCを設定することができます。ワークステーション、システムトポロジーの表示、EDIDソース

私の限られた見解では、根本的な問題はNvidiaカードだけでなく、Windows、DisplayPort、またはモニター(Lenovo X1 4K)かもしれません

2  Roland  2018-02-22


私はこの問題をDisplayFusionで “解決 “しました

Windows10の各種イベントでトリガーを実行できるので、デスクトップがロックされているときにウィンドウの位置を保存しておき、ロックが解除されたときに元に戻すように指示しました。下の設定ダイアログを見てください

これは完璧ではありません。ロックを解除すると、各ウィンドウが前の位置に戻るまで数秒待たなければなりません。しかし、それは私が私のマシンをロックするたびに1つのモニターで立ち往生するすべてのものよりもはるかに良いです(1日に数十回以上)

DisplayFusion Settings Dialog - Triggers

1  None  2020-03-10


この小さなアプリで解決しました。 https://github.com/hunkydoryrepair/MonitorKeeper/releases

実行するだけで、同じ位置でウィンドウズをメンテナンスしてくれます。 hunkydoryrepairさん、ありがとうございました

0  riofly  2019-04-12


Win Redockは、私のユースケースでは最高の働きをしてくれました。Redockは自動で、何も介入せずにウィンドウを保存・復元してくれます。オープンソースでもあります

だから、あなたの問題は、あなたのラップトップは、それが目を覚ますときにディスプレイのしゃっくりを持っているということであれば、これはあなたを助けるかもしれません

0  B T  2019-12-18


それが好きかどうか、しかし、デルの特定の4Kモニターのリンクで知られている問題によると。http://www.dell.com/support/Article/us/en/19/SLN295708/EN 私は、ディスプレイの純正DP/mDPに接続されたIntel 4600上の3 x Dell P2415Q 4K UHDで59/60Hzから30Hzに切り替えなければなりませんでした。それはあまりにもUP3214QとP2715Qに適用されます

低解像度QHDのDell U2515H+同じビデオ/PCでは問題が顕在化しませんでした

レジストリキーの削除とドライバのアップデートではどうにもなりませんでした

2018/08にアップデートしました。そして、グラフィックカードをNVIDIA Quadro P600にアップグレードしても直らなかったので、30Hzのままで

-1  kuz8  2016-03-15


タイトルとURLをコピーしました