1

デバイスからの印刷操作をプログラムする必要があるプロジェクトに取り組んでいます。WIN CE 6.0を搭載。Visual Studio 2005 (MFC) を使用しています。プリンターは、PCL 互換プリンターであればどれでもかまいません。

現在、プリンター DC を取得するには、CreateDC() を使用しています。

hPrinterDC = CreateDC(L"PCL.DLL", L"Any Name", L"LPT1", NULL);

この呼び出しを使用して、正常に印刷できます。ここでは、DEVMODE 固有の入力パラメーターを NULL として渡しています。しかし、これらの印刷操作をより細かく制御するには、DEVMODE 情報を CreateDC() に渡す必要があります。

そのために、上記のように CreateDC() を呼び出して、レジストリに DEVMODE 固有の情報を生成することを計画しています。次に、この DEVMODE データをレジストリからローカル変数に読み取り、この変数の必要なフィールドのみを変更し、この変数を CreateDC() に渡して、実際の印刷操作を行うためのプリンター DC を取得します。

dmDriverExtra などの DEVMODE の特定のフィールドに関する十分な情報がないため、DEVMODE 構造体の直接の初期化を避けています。

レジストリから DEVMODE のような構造体を安全に読み取る方法を知る必要がありますか? 相対的な例は本当に役に立ちます。

敬具、 アフタブ

4

1 に答える 1