プリンタの詳細設定 – プログラミング – Home

通知
すべてクリア

[解決済] プリンタの詳細設定


うちだ
 うちだ
(@うちだ)
ゲスト
結合: 20年前
投稿: 14
Topic starter  

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
 Kerry
(@Kerry)
ゲスト
結合: 20年前
投稿: 192
 

DocumentProperties()関数を使えば可能かと思います。


返信引用
うちだ
 うちだ
(@うちだ)
ゲスト
結合: 20年前
投稿: 14
Topic starter  

PrinterProperties()で行けそうだったのでDocumentProperties()関数までたどり着けま
せんでした
解決いました。どうもありがとうございました


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました