> WIN98環境のVB6.0で印刷する際にコモンダイアログにてプリンタを > 切替えようとしてますがうまくできません。 > 過去のログでNTはAPIを使わないと解決できないとありましたが > プリンタの切替えはWIN98でもAPIを使わないとできないのでしょう > か? Win98で試してないのですが、 Win2kでは出来てますよ。 Win2KはNT系ですけど。
処理の流れの確認ですが、 1.コモンダイアログで、プリンタを選択 2.選択されたプリンタをPrinterオブジェクトにセット ってことですよね。
下のコードで試しましたが、 cmdSelectPrinterをクリックして、プリンタを選択し、 cmdShowPrinterNameで現在のプリンタの名前を確認しました。 ちゃんと選択したプリンタになってました。 念のためその後、cmdPrintOutで印刷してみましたが、OKでした。
Option Explicit
Private Sub cmdShowPrinterName_Click() Dim x As Printer For Each x In Printers If x.hDC = Form1.CommonDialog1.hDC Then Set Printer = x Exit For End If Next Call MsgBox(Printer.DeviceName) End Sub
Private Sub cmdSelectPrinter_Click() Call CommonDialog1.ShowPrinter End Sub
Private Sub cmdPrintOut_Click() Printer.Print "aaaa" Printer.EndDoc End Sub
p.s.レスが書きやすいように適度に改行してくださいね。
|