プリンターが切換わらない

解決


GON  2003-09-03 06:27:29  No: 108458

(環境はVB6、SP5、Windows98および2000)
LANに接続された複数のプリンター名をCombo1に取込み下記の記述でプリンターを
切換えようとしても、切換わりません(用紙サイズ/方向は変更できました)。
対処方法のご教授をお願い致します。
過去既に同種の質問があったかも知れませんが、「ハンドル云々」等全く理解でき
ない状況です、宜しくお願い致します。
尚、CommonDialogも使用してみましたが、プリンターは切換わるものの用紙サイズ
および用紙方向が切換わらない状態であったための苦肉の策です。
Dim Prin As Printer
If Printer.DeviceName <> Combo1.Text Then
    Printer.EndDoc
    For Each Prin In Printers
       If Prin.DeviceName = Combo1.Text Then
          Set Printer = Prin
          Exit For
       End If
    Next
End If
(以下は実際には、チェックボックスを利用してサイズ方向を変更しています)
Printer.PaperSize = vbPRPSA4
Printer.Orientation = cdlPortrait

ちなみにコモンダイアログで用紙サイズ/方向が切換わらなかった記述は以下の通り
です。
Printer.EndDoc
CommonDialog1.CancelError = True
On Error GoTo ErrHandler
CommonDialog1.Flags = &H40
CommonDialog1.ShowPrinter


GON  2003-09-06 03:49:09  No: 108459

「VBレスキュー花ちゃん」サイトに記載されていた通り「マイクロソフト」の
ホームページで、対処方法が見つかり、
Printer.TrackDefault = True(CommonDialog使用の場合)
を記載して解決しました。
しかしなんです、皆さんからレスを貰えず「自分で解決」と言うのも淋しいも
のです(「チャント調べてから質問しろよ」との叱咤ですかネ)。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加