Ich weiß, dass es diese Frage schon mehrmals hier gab, ich konnte jedoch mit allen Beispielen und Ideen nichts anfangen. Sie haben einfach nicht funktioniert !
Ich zeig euch mal meinen letzten Vesuch :
Delphi-Quellcode:
uses
Printers, Winspool;
function SpoolFile(
const FileName, PrinterName:
string): Integer;
var
Buffer:
record
JobInfo:
record // ADDJOB_INFO_1
Path: PChar;
JobID: DWORD;
end;
PathBuffer:
array[0..255]
of Char;
end;
SizeNeeded: DWORD;
Handle: THandle;
PrtName:
string;
ok: Boolean;
begin
// Flush job to printer
PrtName := PrinterName;
if PrtName = '
'
then
PrtName := Printer.Printers[Printer.PrinterIndex];
// Default printer name
ok := False;
if OpenPrinter(PChar(PrtName),
Handle,
nil)
then
if AddJob(
Handle, 1, @Buffer, SizeOf(Buffer), SizeNeeded)
then
if CopyFile(PChar(FileName), Buffer.JobInfo.Path, True)
then
if ScheduleJob(
Handle, Buffer.JobInfo.JobID)
then
ok := True;
if not ok
then Result := GetLastError
else
Result := 0;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if SpoolFile('
c:\test.prn', Printer.Printers[0]) = 0
then
ShowMessage('
No error...');
end;
Das geht auch nicht !!!! Ich werd verrückt
Kann mir jemand helfen ?