• ベストアンサー

StartPage(hdc)のhdcはプリンタだけ

StartPage(hdc)のhdcは必ずプリンタですか? Windows API に StartPage(hdc)、 EndPage(hdc)があります hdcにはプリンタのデバイスコンテキストのハンドラーを指定します ここで逆説的な質問です 『StartPage、EndPageをAPIフックして捕まえたhdcは必ずプリンタもしくはプリンタコンパティブルのメモリーDCですか?』 プリンタ類似以外のデバイスにStartPage、EndPageのAPIが指定されることはありますか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

MSDNのStartPageの解説を見ると、デバイスコンテキストの種類が制限されているようには書かれていませんし、動作内容もEndPageが呼ばれるまでResetDCを無効にするというもので、プリンターに限らず使用できるように思えます。 試に、画面のデバイスコンテキストに対してStartPage/EndPageを使用してみて、使用しない場合と違いがあるのかを試してみればいいのでは? 違いがないのであれば、画面のデバイスコンテキストが渡される可能性も考えなければならないと思います。使い方はプログラマー次第ですから。 なお、HDCはデバイスコンテキスト「ハンドル」です。 ハンドラーというのは、例えばWM_PAINTメッセージが来た場合に、実際に描画する部分のルーチンなどをWM_PAINTのハンドラーなどと使います。 StartPage http://msdn.microsoft.com/ja-jp/library/cc428766.aspx

sato-may
質問者

お礼

ありがとうございます ご助言の通りディスプレイに対してテストしたことがあります ごく普通にStartPage/EndPageは正常終了しました でもこれは私の環境の特異現象である恐れがありましたので、質問させて頂いたのです 実際にテストした結果以外に結論はありませんでしょうか? 大変参考になりました ありがとうございました

関連するQ&A