C#でウィンドウ最小化時のスワップアウトを阻止する方法のつづき。
● WndProcをoverrideすることによって、ウィンドウメッセージ処理をinterruptできる。
http://www.atmarkit.co.jp/fdotnet/dotnettips/467wndproc/wndproc.html
知らなかった・・・。そんなことできるんだ。
● 最小化処理をinterrupt
先のコレ
http://support.microsoft.com/kb/293215/en-us
をC#で実装すると、こう
http://d.hatena.ne.jp/babydaemons/20080507/1210150398
なる。
これでフォームを最小化するだけでスワップアウトが発生するのは
防ぐことができる。
●ただし、
これをやると、最小化時にタスクバーからも表示が消えるので
タスクトレイにアイコンを置いておいて、そこから復帰させる用途じゃないと
そのままは使えない。
まぁ、そこまでしてスワップを避けたいソフトって常駐ソフトぐらいだから
まぁいっか。
2 件のコメント:
ヒント:PInvoke+WIN32API
コメントを投稿