Dot Matrix Print Etme (Port ile birlikte)
ardahan08.03.2004 - 15:17:24


uses WinSpool,Printers;

function GetCurrentPrinterHandle: THandle;
var
Device, Driver, Port : array[0..255] of char;
hDeviceMode: THandle;
begin
Printer.GetPrinter(Device, Driver, Port, hDeviceMode);
if not OpenPrinter(@Device, Result, nil) then
RaiseLastWin32Error;
end;

procedure Yazdir;
var
...
F: TextFile;
PrinterName: string;

hPrinter : THandle;
pInfo: PPrinterInfo2;
bytesNeeded: DWORD;
begin
PrinterName:= '';
Printer.PrinterIndex := -1; // set to default printer
hprinter := GetCurrentPrinterHandle;
try
Winspool.GetPrinter( hPrinter, 2, Nil, 0, @bytesNeeded );
pInfo := AllocMem( bytesNeeded );
try
Winspool.GetPrinter( hPrinter, 2, pInfo, bytesNeeded, @bytesNeeded );
try
PrinterName:= Format( '%s', [pInfo^.pServerName]) + '\' + Format( '%s',[pInfo^.pShareName]);
except
PrinterName:= 'LPT1';
end;
finally
FreeMem( pInfo );
end;
finally
ClosePrinter( hPrinter );
end;

Assignfile(F, PrinterName);
...
end;
 
NOT : Bu sayfa google'un siteyi indekslemesi içindir. www.delphiturkiye.com/forum/ adresini kullanınız!
1998-2006 www.delphiturkiye.com