HamLog Helpの○ Q&A に,
[Q23] Turbo HAMLOG/Winで「プリンタの設定」を変更しても、次回起動したときには元に戻ってしまうのですが。
----------------
Windows の仕様と思います。
プリンタの設定を変更し、次回起動したときもその状態を保つには、Windowsのコントロールパネルなどでプリンタの設定を変更して下さい。
-----------------
とあります.これを回避する方法として,VB6では,以下の方法が可能です.
1.設定ファイルを読み込む中に,プリンター名の項目があれば,プリンター名を HamlogDefaultPrinter とかの変数に取得する.
また,PaperSizeも,HamlogPaperSizeとかの変数に取得する.
2.設定ファイルの内容に従ってDefaultPrinterの設定,PaperSizeをするには,
(1).まず,現在のDefaultPrinter名, PaperSize を取得し,DefaultPrinter, DefaultPaperSizeとかの変数に保存.
(2).以下の方法で,DefaultPrinterを設定
Dim X As Printer 'プリンタ構造体の変数Xを作成
For Each X In Printers
If X.DeviceName = HamlogDefaultPrinter Then '設定ファイルで設定したのとデバイス名を検索.
' 一致すれば,プリンタをシステムの通常使うプリンタに設定します。
Set Printer = X
' プリンタの検索を中止します。
Exit For
End If
Next
X.PaperSize = HamlogPaperSize '用紙サイズの設定
これで,設定ファイルに保存しているプリンタ名と用紙サイズに設定完了です.
3 終了時に,同じ手順で,DefaultPrinter,DefaultPaperSizeに戻して,HamlogDefaultPrinterを設定ファイルに書き出す.
と,こんな感じで不可能ではないと思います.
実際に必要な機能かどうかといいうと・・・あったらあったで嬉しい機能かもしれません.私も何回かに1回くらい,用紙サイズの指定を忘れて,あれれ,出ない,と思うことがあって,プリンタのデータキャンセルをすることがあるので.