プリンタの詳細設定

[戻る]
うちだ 2005/03/09(水) 09:09:53
PrintDlg 関数を使わずに直接プリンタのプロパティを開くことができないかどうかを検
証しています
現在 ::PrinterProperties 関数を使っているのですが、::OpenPrinter 関数の第3引数
pDefault のメンバDesiredAccess PRINTER_ALL_ACCESS を設定しても印刷に必要なタブ
(印刷設定、用紙選択など)がない状態にでダイアログが開く状態になっています
PrintDlg 関数で開くダイアログのプロパティボタンで開くダイアログを同じものを開く
にはどうしたらよいでしょうか?

ソースコードは以下の様な形です

PRINTER_DEFAULT PDefault;
ZeroMemory(&PDefault, sizeof(PRINTER_DEFAULT);
PDefault.DesiredAccess    = PRINTER_ALL_ACCESS;
BOOL bRet = ::OpenPrinter(プリンタの名前, &m_hPrinter, &PDefault);
bRet = ::PrinterProperties(NULL, m_hPrinter);

開発環境は WindowsXP SP1、VC++6.0 SP4 です

Kerry 2005/03/10(木) 09:45:08
DocumentProperties()関数を使えば可能かと思います。

うちだ 2005/03/11(金) 14:00:23
[[解決]]
PrinterProperties()で行けそうだったのでDocumentProperties()関数までたどり着けま
せんでした
解決いました。どうもありがとうございました

古いスレッドには追加発言できません。