▼ snailさん.どうもです.
> >Printer.PrinterIndex := -1;
> >FPrinterName := GetPrinterNameFromString(Printer.Printers[Printer.PrinterIndex]);
>
> といったコードがあります。これって変だと思うんですが、
プリンタ名を取得しているのに,更にプリンタ名を取得する関数を
実行しているということですよね ?
おそらく,Windows XP 以降であれば GetPrinterNameFromString は必要ないと
思います.確認はしていません.
昔は,Printer.Printers で取得したプリンタ名のリストと
Enum 関係でプリンタ名をリストした時で,異なる場合がありました.
今はどうかは知りませんが,「存在しないプリンタ」を取得することもありました.
Windows 98 の時代に作成したコードですからね.
結構悩み苦労したのですが,
当時のコミュニティの場での,中村拓男さんのアドバイスで追加しています.
これを追加しているおかげで,Windows 98, 2000, XP, Vista でも使用可能に
なっているわけでございます.
問題なければ削除してください.
そのためのソースコード付きでございやす.
|