dポイントプレゼントキャンペーン実施中!

はじめまして。
大変困っております。

WIN32APIの『EnumPrinters』を使用して、コンピュータ上に登録されているプリンタの一覧を表示するプログラムを作っております。
プリンタの登録数が50個以上になるとプログラムがハングアップします。『EnumPrinters』の情報(障害情報も含む)があまりにも少なすぎて、困っております。

A 回答 (1件)

たしかに、EnumPrintersに関する情報は少ないかもしれませんね。



どのような処理を記述しているのか、そしてどういうエラーなのかがわからないので
的を得た回答ではないかもしれませんが、一応思いつくことを書きます。

EnumPrinterにはプリンタの情報を呼び元で捕捉した領域に書き込みますが、この
領域が少ないとエラーになって、その際には必要な領域の数を返します。なので、
戻り値がエラーになったら、再度mallocとかでプリンタの情報を格納する領域を
捕捉しなおして再度EnumPrintersを起動すれば回避できるものと思われます。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!