名前 題名 ▼ Mr.XRAYさん > ▼ takiさん > > > 色々試した結果、PrinterIndex := -1;とすると、デフォルトの > > プリンターが選ばれるだけでなく、デフォルトの状態も設定されるようです。 > > 今後使用する状況があるかどうか分かりせんが,以下のようになっています. > これは,実は,問題になることがあるんです. > 今回のこととは直接関係ありませんが,プリンタ関係を扱う場合の参考として. > > //現在のプリンタを指定したプリンタにする > //-1 を代入した場合は,-1 になるのではなく,デフォルトのプリンタの番号 > //が代入される > Printer.PrinterIndex := プリンタ番号(整数値); > > //ここで取得するADeviceModeには,変更前のプリンタの情報が格納されている > //その他の値は現在(変更後)のプリンタの情報となっている > Printer.GetPrinter(ADevice, ADriver, APort, ADeviceMode); > //ADeviceMode初期化 > Printer.SetPrinter(ADevice, ADriver, APort, 0); > //ADeviceModeが新しいプリンタドライバの値(デフォルトのプロパティ値)となる > Printer.GetPrinter(ADevice, ADriver, APort, ADeviceMode); > > プリンタを変更して,DEVMODE 構造体で設定する場合は,上のコードの後に書きます. > 上の 3 行を実行しないと,正常に設定されないことがあります. > (昔は,この手の質問がいっぱいあったんですよね --- 遠い目) > > > > 出入り禁止にはしないでください。m(__)m > > え ? 何か悪いことしました ?? GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link