サンプル:印刷設定の変更と復元

TOP > サンプル / 関数 > *      [...]


love in Rio

 

概要

プリンタードライバーの印刷設定を一時的に変更し、処理が完了したら元の状態に戻します。

印刷設定はプログラミングでのレジストリ更新等では変更できません。
「undll32.exe printui.dll,PrintUIEntry」コマンドを使って更新を行います。

PrintPagesPrintPagesExPrintPagesSilentPrintPagesSilentEx でデフォルトプリンターを変更する必要が出てきた時に流用するサンプルです。

 

詳細

以下はプリンタードライバー「Adobe PDF」に対しての例です。

手動操作での事前作業:

  1. 目的のプリンタードライバー「Adobe PDF」の印刷設定を変更します。
  2. この変更後の印刷設定の内容を"henko.dat"に保存します。
    以下のコマンドをMS DOS画面で実行します。

  3. プリンタードライバーの印刷設定を変更前の状態に戻します。

プログラミング:

  1. プリンタードライバー「Adobe PDF」の現在の印刷設定の内容をファイルに保存します。
    以下のコマンドをMS DOS画面で実行します。





  2. 印刷設定を事前準備したファイルを使って更新します。
    以下のコマンドをMS DOS画面で実行します。※「/Sr」に注目。

  3. プリンタードライバー「Adobe PDF」の印刷設定は変更されました。目的の処理をプログラミングで実行します。
  4. プリンタードライバー「Adobe PDF」の印刷設定を元に戻します。
    以下のコマンドをMS DOS画面で実行します。

なお、2以降の処理はエラーが有っても必ず4を実行して終了する様にします。

 

サンプル

上記詳細のプログラミングに書いた手順でプリンタードライバー「Adobe PDF」の印刷設定を保存、更新、復元します。

Download:sample-UpdatePrinterSetting.xls

 

備考

  1. 「undll32.exe printui.dll,PrintUIEntry」コマンドはエラーが発生するとデスクトップ画面上にUI画面を表示してしまう。つまりプログラミングの処理がそこで中断してしまう。よって、出来る限りの事前チェックを行わなければならない。

 

参照

 

< サンプル/関数 >

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


出来るだけ早く返答する様には心がけています。
が、遅くなる時もありますのでご了承ください。


SAMURAI Plugin

コメントをする時は最低でも以下をお願いします。

  • OS名 バージョン
  • Acrobat バージョン
  • ツール(Excel等) バージョン