- ベストアンサー
DirectXプログラムでCNTL+ALT+DEL
C言語とDirectXを用いてプログラムを作成しているものです。 プログラムを実行している最中にCNTL+ALT+DELを押下し、キャンセルで元に戻ったとき、ウインドウに表示されていたものがすべて表示されなくなってしまいます。 WIN32APIを用いていたときは同じことをしても問題なく動作していました。 DirectXの場合は何か特別なことをしないといけないのでしょうか?(たとえばテクスチャをロードしなおすとか) よろしくお願い申し上げます。 OSはWindowsXPSP3、DirectXはNovember2008を使用しています
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
DirectXは、該当のウィンドウがフォーカスを失ったり、 非表示になったりして致命的な割り込みが発生した場合、 デバイスが消失生する可能性があります。 その為、通常はPresent(描画)のタイミングでエラーチェックを行い、 デバイスロスト状態であった場合には、デバイスを再作成し、 テクスチャなどのリソースを再読み込みする必要があります。 参考URLにサンプルと、 結構分かりやすい説明が あるので参考までに。
お礼
早速のご回答ありがとうございました。 結構な修正になりそうですが、頑張ってみます。