2012-04-15 6 views
6

Ich brauche in Code (C++), wie die Grafikkarte an den Monitor/s verbunden ist, dh VGA- oder DVI usw.Den GPU-Verbindungstyp in Windows XP erhalten?

Ich fand zwei Möglichkeiten, zu erkennen, dass ich dies tun könnte: durch

  • die Windows Management Instrumentation Abfrage für D3DKMDT_VIDEO_OUTPUT_TECHNOLOGY oder
  • die nVidia-API-Funktion NvAPI_DISP_GetMonitorCapabilities verwenden,

aber beide von ihnen sind nur in Windows Vista oder höher unterstützt.

Es muss sicherlich einen Weg geben, dies in XP zu tun, aber nach vielen Suchen kann ich einfach keinen finden und es wird sehr dringend, dass ich einen Weg finde.

Irgendwelche Ideen?

+0

_Es muss sicherlich ein Weg sein, dies in XP_ zu tun. Es scheint mir plausibel, dass es das nicht gibt. – DrPizza

+0

Nach der Menge der Aufmerksamkeit, die diese Frage erhalten hat, stimme ich zu, es scheint mir ziemlich komisch, dass diese 2 Funktionen ab Vista eingeführt werden, es sei denn, dass sie notwendig sind. Also, wenn es ein echtes Bedürfnis gab, würden Sie denken, dass es zu dem Zeitpunkt, an dem XP herauskam, erfüllt sein würde. –

+1

Ich bin neugierig zu wissen, warum Sie wissen wollen, obwohl. Es scheint überhaupt nicht nützlich zu sein. Zu wissen, ob die Verbindung HDCP unterstützt, kann einen gewissen Wert haben, aber das ist unabhängig von der tatsächlich verwendeten Schnittstelle. – DrPizza

Antwort

1

Möglicherweise können Sie EnumDisplayDevices (link to MSDN) verwenden und einige Informationen wie beschrieben here analysieren. Es geht im Grunde darum, physische Displays mit logischen Displays zu verbinden.

+0

Hallo macs, Danke für die Antwort. Entschuldigung, wenn ich mit meiner Frage nicht klar genug war, aber ich möchte nicht wissen, an welchen Anschluss der Grafikkarte ein Monitor angeschlossen ist, sondern speziell welcher Typ von Anschluss an der Grafikkarte, mit der der Monitor verbunden ist Software, an der ich arbeite, muss auf vielen verschiedenen Grafikkarten laufen, die vga, dvi oder hdmi ausgeben können. Ist es möglich, diese Informationen auch von der DISPLAY_DEVICE-Struktur zu erhalten? Danke. –

+1

Ich würde sagen, dass dies möglich ist, Sie müssen nur den Port-Typ identifizieren, der auch möglich sein sollte (aber im Moment weiß ich nicht wie, vielleicht wird Google helfen). –