获取默认纸盒的名称?

时间:2018-01-23 16:40:58

标签: delphi winapi printing

我使用WinAPI功能DM_BINNAMES获得了一个纸盒列表,我还得到了一个使用DM_BINS的有效源索引列表。

但我想知道默认纸张来源的名称是什么。我怎么能这样做?

我目前的代码看起来像这样,但它根本不起作用。 dmDefaultSource的值为258,大于数组bin。

bitarray

1 个答案:

答案 0 :(得分:4)

来自documentation(强调我的)

  

dmDefaultSource

     

指定纸张来源。要检索的列表   打印机的可用纸张来源,请使用DeviceCapabilities   具有DC_BINS标志的功能。

     

此成员可以是以下值之一,或者可以是a   特定于设备的值大于或等于DMBIN_USER

DMBIN_USER被定义为256,这解释了为什么你的例子中得到258。

解决方案很简单,扩大阵列以考虑设备特定的垃圾箱。

bin: array[0..511,0..23] of char;