Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Wie kann ich mir die Druckertreiberversion anzeigen lassen?

Frage Hardware Drucker und Scanner

Mitglied: 7591

7591 (Level 1)

31.01.2005, aktualisiert 02.02.2005, 9379 Aufrufe, 5 Kommentare

Hallo zusammen,

ich habe fogendes Problem:

Wie kann ich mir die Druckertreiberversionen der installierten Drucker anzeigen lassen?
Also ich meine die REV.-Nummer, (z.B. 1.1 o.ä.)!

Kann mir da hier jemand helfen?

Vielen Dank
Mitglied: linkit
31.01.2005 um 14:27 Uhr
Weg Nr1:

Du baust dir selber deine Anzeige:

*

uses
Printers, Winspool;


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


procedure TForm1.ComboBox1Change(Sender: TObject);
var
hPrinter: THandle;
PrtName: string;
DriverInfo: PDriverInfo2;
dwNeeded: DWORD;
begin
Memo1.Clear;
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
begin
Add infos to Memo1
Memo1.Lines.Add('Version: ' + 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;

{2.}
{}
{ Another Code by P. Below }

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, WinSpool;

type
TForm1 = class(TForm)
Button1: TButton;
ListBox1: TListBox;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure ListBox1Click(Sender: TObject);
private
{ Private-Deklarationen }
pEnumDriversData: PDriverInfo2;

public
{ Public-Deklarationen }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.ListBox1Click(Sender: TObject);
var
pTemp: PDriverInfo2;
begin
with Sender as TListbox do
begin
if ItemIndex >= 0 then
begin
memo1.Clear;
pTemp := PDriverInfo2(Items.Objects[ItemIndex]);
with memo1.Lines, pTemp^ do
begin
Add(Format('cVersion:'#9#9'%d', [cVersion]));
Add(Format('pName:'#9#9'%s', [pName]));
Add(Format('pEnvironment:'#9'%s', [pEnvironment]));
Add(Format('pDriverPath:'#9'%s', [pDriverPath]));
Add(Format('pDataFile:'#9#9'%s', [pDataFile]));
Add(Format('pConfigFile:'#9'%s', [pConfigFile]));
end;
end;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
i, bytesNeeded: DWORD;
pTemp: PDriverInfo2;
NumDrivers: DWORD;
begin
listbox1.Clear;
if Assigned(pEnumDriversData) then
FreeMem(pEnumDriversData);
get number of installed drivers
Numdrivers := 0;
bytesNeeded := 0;
EnumPrinterDrivers(nil, nil, 2, nil, 0, bytesNeeded, NumDrivers);
if bytesNeeded = 0 then
begin
ShowMessage('No printer drivers installed!');
Exit;
end;

allocate memory for the driver data
GetMem(pEnumDriversData, bytesNeeded);
fetch driver data
if EnumPrinterDrivers(nil, nil, 2, pEnumDriversData, bytesNeeded,
bytesNeeded, NumDrivers) then
begin
add drivers to listbox1
pTemp := pEnumDriversData;
for i := 1 to Numdrivers do
begin
listbox1.Items.AddObject(pTemp^.pName, TObject(pTemp));
Inc(pTemp);
Note: Inc increments a pointer by the size of its base type!
end;
listbox1.ItemIndex := 0;
listbox1Click(listbox1);
end
else
RaiseLastWin32Error;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
if Assigned(pEnumDriversData) then
FreeMem(pEnumDriversData);
end;

end.





Weg 2:

du suchst nach den Druckertreiberdateien und läßt dir die Dateiversionsinformationen anzeigen.


*
Bitte warten ..
Mitglied: 7591
31.01.2005 um 16:02 Uhr
Oh Gott!
Ja super, aber was mach ich damit?
Also tut mir echt leid, aber ich versteh bloß Bahnhof1 *g*
Bitte warten ..
Mitglied: Mitchell
01.02.2005 um 10:11 Uhr
du machst ne batch datei draus

Mit freundlichen Grüßen

Mitchell
Bitte warten ..
Mitglied: 7591
02.02.2005 um 08:41 Uhr
Na dann ist ja alles klar!
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Monitoring
gelöst Zugewiesene Benutzerrechte auf Server anzeigen lassen (1)

Frage von Fitzel69 zum Thema Monitoring ...

Outlook & Mail
Outlook 2013 mehrere kalender in Aufgabenleiste anzeigen lassen

Frage von montana zum Thema Outlook & Mail ...

Entwicklung
Quellcode von Open-Source Software anzeigen lassen (13)

Frage von M.Marz zum Thema Entwicklung ...

Outlook & Mail
Outlook benutzerdefiniertes Feld in der Visitenkarte anzeigen lassen

Frage von fireskyer zum Thema Outlook & Mail ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...