デスクトップ復元時に仮想デスクトップペNo.10936
はぴぴ さん 23/11/15 07:40
 
仮想デスクトップが10ページあって、それぞれにファイラーのウィンドウが3〜4枚あ
るような使い方は、あまり想定されていないのかもしれませんが、おそらく、ウィン
ドウが多すぎるせいで、デスクトップ復元時に正しいページにウィンドウを配置され
ないことがあります。

何回か繰り返すと、何らかのキャッシュが働いて多少スムーズに動いて、正しいペー
ジに行く場合があります。

PCにもよると思いますが、ウィンドウ3〜4分割をしたウィンドウを仮想デスクトップ
1ページあたり4〜5配置すると、かなりの確率で再現します。

ウィンドウ数が多いより分割数が多いウィンドウを1枚用意する方がマシなようで、
可能な限り1つのウィンドウにまとめるようにしていますが、配置の都合上あまりま
とめられていません。
こういうときに、以前要望したように、Visual Studioのツールウィンドウのように
縦横分割を自由に決められると助かるのですが。


仮想デスクトップのAPIはよく知らないですが、指定した番号のページに開くという
ようなAPIはなくて、ページを切り替えてカレントページに表示するというものなの
でしょうか。

カレントページの番号(?)を取得する方法はないのでしょうか。カレントページが指
定したページではないにもかかわらず、ウィンドウを表示してしまうことがあるので
しょうか。

それとも、カレントページ番号の取得では指定したページになっているのに、表示は
まだ切り替わっていなくて、その状態でウィンドウを表示すると、切替前のページに
表示されてしまうということがあったりするのでしょうか。

[ ]
RE:10936 デスクトップ復元時に仮想デスクNo.10937
秀丸担当 さん 23/11/15 10:18
 
デスクトップ復元は、仮想デスクトップの場合それぞれのIDで覚えています。
Windowsによって決められたID(GUID)で覚えていて、番号では覚えていないです。
そのため、何らかの理由で新しいIDが割り当てられているような場合、うまくいかな
いことになってしまいます。

例えば、違う仮想デスクトップになるとしたら、ある仮想デスクトップの1つを閉じ
て、もう一度新しく追加して、その状態でデスクトップ復元をすると、以前のIDは存
在しないので、どこか適当なところに復元されることになります。
そういう状況だと再現できますが、そうでないとしたらちょっとわからないです。

すごい大量のウィンドウは、できないことはないと思いますが、ウィンドウを分けて
いる場合は1つ1つがEXEで独立しているので、たぶんパフォーマンスが悪いことに
なってしまいます。
パフォーマンスが関係して問題が起きているのかもしれないです。

復元時に画面ごとに切り替わるのは、そういうものと思っているのですが、もしかし
たら知らないだけでやり方があるのかもしれません。
切り替えずにできる方法があればやりたいところです。

[ ]
RE:10937 デスクトップ復元時に仮想デスクNo.10938
はぴぴ さん 23/11/15 16:14
 
だとすると、復元時に違うページに行ってしまうのは何が原因でしょう?
今のところ、ウィンドウを減らせば正しいページに復元される可能性が高いですが。

[ ]
RE:10938 デスクトップ復元時に仮想デスクNo.10939
秀丸担当 さん 23/11/15 17:07
 
わかっている原因としては、デスクトップ保存した後、仮想デスクトップの数を増減
させたりすると、起きます。
番号ではなくて固有のIDと結び付けられているので、例えば仮想デスクトップを一個
減らして一個増やすと、その一個は違うIDなので、そこには復元されないです。
そういう状況かどうかわかっていないのですが、そうではないとしたら、いまのとこ
ろわからないです。

数が影響していそうということで、パフォーマンスが関係しているのかもしれません。
例えば復元が終わっていないけど、その最中に操作が挟まって予期しないことが起き
ているのかもしれないです。


[ ]
RE:10939 デスクトップ復元時に仮想デスクNo.10940
はぴぴ さん 23/11/16 18:01
 
>わかっている原因としては、デスクトップ保存した後、仮想デスクトップの数を増
>減させたりすると、起きます。
>番号ではなくて固有のIDと結び付けられているので、例えば仮想デスクトップを一
>個減らして一個増やすと、その一個は違うIDなので、そこには復元されないです。
>そういう状況かどうかわかっていないのですが、そうではないとしたら、いまのと
>ころわからないです。

仮想デスクトップのページ数は常に10で減らしたり増やしたりはしていません。


>数が影響していそうということで、パフォーマンスが関係しているのかもしれません。
>例えば復元が終わっていないけど、その最中に操作が挟まって予期しないことが起
>きているのかもしれないです。

そういえば、復元中、ファイラーが仮想デスクトップのページをがちゃがちゃ切り替
えているときに、手動でページを切り替えると、かなりの確率でウィンドウが復元さ
れるページを間違えます。
ですが、手動で切り替えなくても、ウィンドウが多いと間違えやすいです。

[ ]
RE:10940 デスクトップ復元時に仮想デスクNo.10941
秀丸担当 さん 23/11/16 18:30
 
情報ありがとうございます。
仮想デスクトップを増減させているというような状況ではないということで了解しま
した。

処理中のパフォーマンスや操作に影響がありそうということで、改善できそうな点が
見つかったらしていこうと思います。
ただ仮想デスクトップの仕組みとして、完全にするのは難しい性質なのだと思います。
仮想デスクトップは、仮想PCのように別空間ではなく、マルチモニタのように違う座
標でもないです。
昔からある一般のユーティリティアプリのように、ウィンドウを見えないようにして
いるのをWindows標準でしているだけなので、このアプリは絶対にこの仮想デスクト
ップ、とする厳格な仕組みは存在しないはずだと思います。
何らかの隙があったらできてしまうという、緩いものと思ってもらったほうがいいか
もしれません。
そういう隙が見つかったら対策を検討します。

[ ]