プリンタで使用可能な用紙サイズの取得方法

解決


ZZWMATSU  2011-06-28 15:07:27  No: 40714  IP: 192.*.*.*

プリンタで使用可能な用紙サイズの取得方法について教えてください。

A4用紙しかセットできないプリンタがあるとします。

このプリンタにはA3は印刷できないという処理を行いたいのですが
DeviceCapabilitiesを用いて使用可能な用紙サイズを取得すると、
ドライバで縮小することにより印刷可能なA3の用紙も列挙されてしまいます。

ドライバの縮小機能を使用せず印刷可能な用紙サイズを取得する方法は
ないでしょうか?

よろしくお願いします。

編集 削除
Mr.XRAY  2011-06-28 16:29:22  No: 40715  IP: 192.*.*.*

こんにちは.Mr.XRAYです.

DEVMODE構造体には,ドライバの縮小機能という情報はないので,これを使用した取得は
できないのかも知れません.

とすると,用紙サイズ(縦,横のサイズ)から判定するしかないのではないかと思います.
列挙した用紙名から,目的以外の用紙名を削除するという方法ですね.
もしかしたら,他に方法があるのかも知れませんが.

編集 削除
ZZWMATSU  2011-06-28 17:45:45  No: 40716  IP: 192.*.*.*

Mr.XRAYさん  ありがとうございます。

やはり難しそうですね。

仮に取得できたとしてもプリンタドライバ固有情報から
となりそうなので、どんなプリンタでもOKというわけには
いかないようですし。

何か他の方法で処理させられないか、再度考えてみます。

ありがとうございました。

編集 削除
ZZWMATSU  2011-06-30 15:20:05  No: 40717  IP: 192.*.*.*

いろいろ試してみましたが、このようなチェック自体を
行わなくても良い方法を考えてみます。

これで解決とさせていただきます。

ありがとうございました。

編集 削除
ZZWMATSU  2011-06-30 15:20:45  No: 40718  IP: 192.*.*.*

解決チェックを忘れていました

編集 削除