Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
Delphi 12 Athens
|
Re: Spezielle Druckereigenschaften auslesen
9. Mär 2008, 14:00
Thx, auf PRINTER_INFO_5 bin ich mittlerweile auch schon gestoßen.
[edit] Falls es wen interessiert, ich habe das jetzt so:
Delphi-Quellcode:
uses Winspool;
function PrintsToFile(const Printername: string;
out ErrMsg : string): Boolean;
var Needed : DWORD;
PInfo : PPrinterInfo5;
hGlobal,
hPrinter: THandle;
Def : TPrinterDefaults;
begin
Result := false;
ErrMsg := Format('Drucker "%s" druckt nicht in Datei.',[Printername]);
ZeroMemory(@Def, SizeOf(Def));
Def.DesiredAccess := PRINTER_READ;
if OpenPrinter(PChar(Printername), hPrinter, @Def) then
try
GetPrinter(hPrinter, 5, nil, 0, @Needed);
hGlobal := GlobalAlloc(GHND, Needed);
try
PInfo := PPrinterInfo5(GlobalLock(hGlobal));
GetPrinter(hPrinter, 5, PInfo, Needed, @Needed);
Result := Pos('FILE',AnsiUpperCase(PInfo^.pPortName)) > 0;
if Result then
ErrMsg := '';
finally
GlobalUnlock(hGlobal);
GlobalFree(hGlobal);
end;
finally
ClosePrinter(hPrinter);
end;
end;
[/edit]
Detlef "Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
|
|
Zitat
|