2012-04-15 12 views
6

Ho bisogno di individuare nel codice (C++) come la scheda grafica è collegato al monitor/s, cioè VGA o DVI eccOttenere il tipo di connessione GPU in Windows XP?

ho trovato due modi che avrei potuto fare questo:

  • da interrogando lo Strumentazione gestione Windows per D3DKMDT_VIDEO_OUTPUT_TECHNOLOGY o
  • utilizzando i NvAPI_DISP_GetMonitorCapabilities funzione nVidia API,

ma entrambi sono supportati solo in Windows Vista o superiore.

Ci deve essere sicuramente un modo per farlo in XP, ma dopo molte ricerche non riesco a trovarlo e sta diventando urgente trovare un modo.

Qualche idea?

+0

_C'è sicuramente un modo per farlo in XP_ Deve esserci? Mi sembra plausibile che non ci sia. – DrPizza

+0

Giudicando dalla quantità di attenzione che questa domanda ha ricevuto, tendo ad essere d'accordo, mi sembra piuttosto strano che quelle 2 funzioni vengano introdotte in Vista in avanti, a meno che non ci sia un bisogno per loro, comunque. Quindi, se ci fosse un bisogno reale, penseresti che sarebbe stato realizzato dal momento in cui è uscito XP. –

+1

Sono curioso di sapere perché lo vuoi sapere, però. Non sembra affatto utile. Sapere se la connessione supporta HDCP potrebbe avere qualche valore, ma ciò è indipendente dall'interfaccia effettiva utilizzata. – DrPizza

risposta

1

Possibilmente è possibile utilizzare EnumDisplayDevices (link to MSDN) e analizzare alcune informazioni come descritto here. Si tratta fondamentalmente di abbinare display fisici a quelli logici.

+0

Hi macs, Grazie per la risposta. Mi scuso se non sono stato abbastanza chiaro con la mia domanda, ma quello che voglio è non sapere quale porta sulla scheda grafica è collegato a un monitor, ma in particolare quale tipo di porta sulla scheda grafica a cui è collegato il monitor, come il pezzo di il software su cui sto lavorando deve essere eseguito su molte schede grafiche diverse che possono avere output vga, dvi o hdmi. È possibile ottenere queste informazioni anche dalla struttura DISPLAY_DEVICE? Grazie. –

+1

Direi che è possibile, devi solo identificare il tipo di porta, che dovrebbe anche essere possibile (ma in questo momento non so come, forse google ti aiuterà). –

Problemi correlati