![]() |
Wie die verwendete Grafikkarte ermitteln ?
Hallo,
vielleicht kann mir jemand einen Tip geben. Die Aufgabenstellung: ermitteln der derzeit aktiven Grafikkarte (Intel/ATI/nVidia,..) Das Problem: Auf dem Rechner wurden mehrere Grafikkarten installiert. Eine On-Board-Grafik ist noch vorhanden, aber deaktiviert. Eine ATI-Karte war ebenfalls mal installiert, dito eine nVidia. D.h. in der Registry finde ich von allen 3 Grafikkarten Einträge. Jetzt muss ich aber wissen, ob die nVidia gerade läuft. Bin für jede Anregung dankbar. Tschau Michael |
Re: Wie die verwendete Grafikkarte ermitteln ?
WMI wäre wohl das beste.
|
Re: Wie die verwendete Grafikkarte ermitteln ?
|
Re: Wie die verwendete Grafikkarte ermitteln ?
WMI würde ich aber trotzdem für die bessere Wahl halten.
|
Re: Wie die verwendete Grafikkarte ermitteln ?
Danke HaZe,
frage mich allerdings, warum ich den Artikel nicht gefunden habe ? Wer die richtigen Suchbegriffe verwendet ist klar im Vorteil :wink: Gruß und danke Michael |
Re: Wie die verwendete Grafikkarte ermitteln ?
grafikkarte hat 2 seiten results gebracht :)
cya HaZe |
Re: Wie die verwendete Grafikkarte ermitteln ?
Zitat:
Ich wuerde das Setup API oder Config Manager API nehmen. |
Re: Wie die verwendete Grafikkarte ermitteln ?
Ähm, und wie so geht dass dann auch unter Windows 2000 ohne irgendwelche Systemänderungen, wie Nachinstallationen? WMI ist sogar auf ME verfügbar. Nur unter Windows 98 muss was nachinstalliert werden.
|
Re: Wie die verwendete Grafikkarte ermitteln ?
Moin!
Vielleicht reicht dir sowas schon als Ansatz ohne WMI: Einfach eine App mit einer ListBox drauf (lbMonitorList) und dort dann folgendes in's FormCreate:
Delphi-Quellcode:
MfG
procedure TForm1.FormCreate(Sender: TObject);
Var Cntr : Cardinal; Info : TDisplayDevice; AdapterName : PChar; OldPos : Integer; Const DISPLAY_DEVICE_ATTACHED_TO_DESKTOP = $00000001; DISPLAY_DEVICE_MULTI_DRIVER = $00000002; DISPLAY_DEVICE_PRIMARY_DEVICE = $00000004; DISPLAY_DEVICE_MIRRORING_DRIVER = $00000008; DISPLAY_DEVICE_VGA = $00000010; Begin lbMonitorList.Items.Add('------------------ Displays ----------------'); Cntr := 0; Info.cb := SizeOf(Info); While EnumDisplayDevices(Nil, Cntr, Info, 0) Do Begin lbMonitorList.Items.Add('* Device '+IntToStr(Cntr)+':'); lbMonitorList.Items.Add(' DeviceName : '+Info.DeviceName); lbMonitorList.Items.Add(' DeviceString: '+Info.DeviceString); OldPos := lbMonitorList.Items.Add(' StateFlags: '); If ( Info.StateFlags And DISPLAY_DEVICE_ATTACHED_TO_DESKTOP ) = DISPLAY_DEVICE_ATTACHED_TO_DESKTOP Then lbMonitorList.Items.Add(' + Display Device Attached To Desktop') Else lbMonitorList.Items.Add(' - Display Device Attached To Desktop'); If ( Info.StateFlags And DISPLAY_DEVICE_MULTI_DRIVER ) = DISPLAY_DEVICE_MULTI_DRIVER Then lbMonitorList.Items.Add(' + Display Device Multi Driver') Else lbMonitorList.Items.Add(' - Display Device Multi Driver'); If ( Info.StateFlags And DISPLAY_DEVICE_PRIMARY_DEVICE ) = DISPLAY_DEVICE_PRIMARY_DEVICE Then lbMonitorList.Items.Add(' + Display Device Primary Device') Else lbMonitorList.Items.Add(' - Display Device Primary Device'); If ( Info.StateFlags And DISPLAY_DEVICE_MIRRORING_DRIVER ) = DISPLAY_DEVICE_MIRRORING_DRIVER Then lbMonitorList.Items.Add(' + Display Device Mirroring Driver') Else lbMonitorList.Items.Add(' - Display Device Mirroring Driver'); If ( Info.StateFlags And DISPLAY_DEVICE_VGA ) = DISPLAY_DEVICE_VGA Then lbMonitorList.Items.Add(' + Display Device VGA') Else lbMonitorList.Items.Add(' - Display Device VGA'); AdapterName := StrAlloc(SizeOf(Info.DeviceName)); StrCopy(AdapterName, Info.DeviceName); EnumDisplayDevices(AdapterName, 0, Info, 0); lbMonitorList.Items.Insert(OldPos, ' Monitorname : ' + Info.DeviceString); StrDispose(AdapterName); Inc(Cntr); End; End; Muetze1 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:02 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz