this slowpoke moves

Read Printer Drivers

uses Printers, WinSpool

//

procedure TForm1.Button1Click(Sender: TObject);
var
  hPrinter: THandle;  PrtName: String;
  DriverInfo: PDriverInfo2;
  dwNeeded: DWord;
begin
     PrtName :=  Combobox1.Text;
     OpenPrinter( PChar( PrtName ) , hPrinter , nil );
     GetPrinterDriver(hPrinter, nil, 2, DriverInfo, 0, dwNeeded );
     GetMem( DriverInfo, dwNeeded );
     if GetPrinterDriver(hPrinter, nil, 2, DriverInfo, dwNeeded, dwNeeded )
     then

     // Die Treiber Version
     begin
     Memo1.Lines.Add( IntToStr( DriverInfo.cVersion ) );
     Memo1.Lines.Add( StrPas( DriverInfo.pName ) );
     Memo1.Lines.Add( StrPas( DriverInfo.pEnvironment ) );
     Memo1.Lines.Add( StrPas( DriverInfo.pDriverPath ) );
     Memo1.Lines.Add( StrPas( DriverInfo.pDataFile ) );
     Memo1.Lines.Add( StrPas( DriverInfo.pConfigFile ) );
     end
     else
     Memo1.Lines.Add('No Info needed = ' + IntToStr(dwNeeded));
     ClosePrinter( hPrinter );
     FreeMem( DriverInfo );
     end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Combobox1.Items.Assign( Printer.Printers );
end;

Keine Kommentare:

Kommentar veröffentlichen

Beliebte Posts

Translate