如何提取当前打印机的配置信息,如纸张大小!
如何提取当前打印机的配置信息,如纸张大小! 问题点数:20、回复次数:2Top
1 楼dh0497(新版好难看,你们没有招到美工吗?)回复于 2006-02-19 23:14:16 得分 20
得到打印机纸张可以用DeviceCapabilities函数,具体用法还是建议参考msdn,一下是例子:
......
var
sPrinterName, sPort: String; //打印机的名称,连接端口如LPT1
lpwPapers: Pointer; //得到纸张类型名称
dResult: DWORD;
begin
dResult := DeviceCapabilities(PChar(sPrinterName),PChar(sPort),DC_PAPERNAMES, nil, nil);
if dResult > 0 then begin
GetMem(lpwPapers, 65); //分配空间,msdn上注明:每个纸张名都是64个字符
try
if DeviceCapabilitiesA(PChar(sPrinterName),PChar(sPort),DC_PAPERNAMES,
lpwPapers, nil) = - 1 then
raise Exception.Create('Error');
ShowMessage(StrPas(lpwPapers));
finally
FreeMem(lpwPapers, 65);
end;
end;
end;
......
Top
2 楼NewQger(Q哥)回复于 2006-03-24 00:52:14 得分 0
markTop