Hallo beisammen,
bei dem Versuch, einen Nadeldrucker anzusprechen, bekomme ich unter Windows 98 den Fehler:
"Win32-Fehler Code:87 Der Parameter stimmt nicht."
Unter Windows 2000 Professional (dem Entwicklungssystem) funktioniert es fehlerfrei. Leider habe ich noch so meine Schwierigkeiten mit der Windows API - wer kann mir helfen?
<PRE>
procedure MyStartPrint(PrtName, DocName: string; Copies: integer);
var
pdi: PDocInfo1;
pd: TPrinterDefaults;
begin
DevMode.dmCopies := Copies;
DevMode.dmFields := DM_COPIES;
pd.pDatatype := 'RAW';
pd.pDevMode := @DevMode;
pd.DesiredAccess := PRINTER_ACCESS_USE;
if Win32Check(OpenPrinter(PChar(PrtName), ph, @pd)) then
begin
new(pdi);
with pdi^ do
begin
pDocName := PChar(DocName);
pOutputFile := nil;
pDatatype := 'RAW';
end;
PrJob := StartDocPrinter(ph, 1, pdi);
if PrJob = 0 then
Win32Check(false);
end;
end;
</PRE>
bei dem Versuch, einen Nadeldrucker anzusprechen, bekomme ich unter Windows 98 den Fehler:
"Win32-Fehler Code:87 Der Parameter stimmt nicht."
Unter Windows 2000 Professional (dem Entwicklungssystem) funktioniert es fehlerfrei. Leider habe ich noch so meine Schwierigkeiten mit der Windows API - wer kann mir helfen?
<PRE>
procedure MyStartPrint(PrtName, DocName: string; Copies: integer);
var
pdi: PDocInfo1;
pd: TPrinterDefaults;
begin
DevMode.dmCopies := Copies;
DevMode.dmFields := DM_COPIES;
pd.pDatatype := 'RAW';
pd.pDevMode := @DevMode;
pd.DesiredAccess := PRINTER_ACCESS_USE;
if Win32Check(OpenPrinter(PChar(PrtName), ph, @pd)) then
begin
new(pdi);
with pdi^ do
begin
pDocName := PChar(DocName);
pOutputFile := nil;
pDatatype := 'RAW';
end;
PrJob := StartDocPrinter(ph, 1, pdi);
if PrJob = 0 then
Win32Check(false);
end;
end;
</PRE>