Ottieni il modello della scheda video tramite la riga di comando in Windows


13

Ho bisogno di ottenere un output di testo con la scheda video / il modello GPU, usando qualsiasi strumento esistente in tutte le versioni di Windows da XP in poi (probabilmente, non ho ancora trovato nulla) o usando qualsiasi piccolo strumento da riga di comando.

Qualche idea?


1
dxdiag ha opzioni da riga di comando per l'output in file txt o xml, semplicemente non stampa sullo schermo. Potresti ottenere gli strumenti gnuwin32 e quindi eseguire il cat del file dopo averlo creato con dxdiag (e persino grep per le linee che ti interessano).
MaQleod

Risposte:


23
wmic path win32_VideoController get name 

fa il lavoro in modo conciso dalla linea commmand. Grazie alla risposta di Vlastimil Ovčáčík sopra, ma non so perché sia ​​così prolisso.


1
L'altra risposta rimuove la riga "Nome" dall'output.
DavidPostill

Effettivamente, grazie, @DavidPostill. Tuttavia, è un approccio piuttosto complicato.
oche,

Non è così complicato quando impari come forfunziona. È molto potente e ottimo per l'analisi delle righe di testo;)
DavidPostill

wmic path win32_VideoController get driverVersionmostrerà la versione del driver
nwgat il

7

Esegui dal batch:

@echo off
for /F "tokens=* skip=1" %%n in ('WMIC path Win32_VideoController get Name ^| findstr "."') do set GPU_NAME=%%n
echo %GPU_NAME%

Ciao! Sembra esattamente quello che sto cercando, ma non riesco a farlo funzionare sul mio PC, non sono un esperto in batch, potresti darmi una mano? Ottengo questa risposta: C: \ Users \ user \ Desktop> gpu n) era imprevisto in questo momento. C: \ Users \ user \ Desktop> per / F "token = * skip = 1" n) C: \ Users \ utente \ Desktop>
user2723297

@ user2723297, non è stato scritto per batch, ma per essere incollato direttamente nella riga di comando. Vorrei modificare la risposta per evitare incomprensioni.
Vlastimil Ovčáčík,

Grazie, ricevendo ancora questo messaggio quando è stato eseguito direttamente dal prompt dei comandi "%% n era imprevisto in questo momento."
user2723297

@ user2723297, come afferma la risposta, dovrebbe essere eseguito da un file batch. Anche stackoverflow.com/questions/14509652/...
Vlastimil Ovčáčík

3
  • Copia questo e salvalo sul desktop come videoCardScript.ps1
  • Fare clic su Start, digitare powershelle quindi premere Invio
  • digitare cd ~\Desktopquindi premere Invio
  • digitare videoCardScript.ps1quindi premere Invio
  • nota: se si riceve un errore che menziona ... impossibile caricare perché l'esecuzione degli script è disabilitata su questo sistema. potrebbe essere necessario modificare il criterio di esecuzione con il seguente comando in PowerShell: Set-ExecutionPolicy unrestricted.
  • **** Assicurati di eseguire il seguente comando una volta completato per mantenere la sicurezza del tuo sistema: ** Set-ExecutionPolicy restricted

    dxdiag /x dxoutput.xml | Out-Null  #Out-Null here ensures the process here has been created before proceeding
    [xml]$xmldata = get-content "dxoutput.xml"
    $xmldata.DxDiag.DisplayDevices.DisplayDevice| % {
        $name=$_.CardName
        $manu=$_.Manufacturer
        $chip=$_.ChipType
        $type=$_.OutputType
        $version=$_.DriverVersion
        write-host "Name: `t`t`t $name"
        write-host "Manufacturer: `t`t $manu"
        write-host "Chip Type: `t`t $chip"
        write-host "Output Type: `t`t $type"
        write-host "Driver Version: `t $version"
        }
    del dxoutput.xml
    

Se sei interessato a ottenere maggiori informazioni, puoi commentare il del dxoutput.xmlcomando aggiungendo una #di fronte. È quindi possibile esaminare il contenuto del file xml salvato sul desktop e modificarlo di conseguenza. Se vuoi rimuovere alcune informazioni nello script puoi sempre commentare quelle righe specifiche o rimuoverle del tutto.

PS: potresti vedere più carte uguali. C'è un motivo per cui ho incluso il Tipo di output qui: una scheda mostrerà multipli in base a quanti output può supportare. Nel mio caso il mio mostra DVI (autoesplicativo) e HD15 (che è VGA).

PSS: l'ho eseguito su una macchina Windows 8. È possibile che tu possa avere bisogno di installare PowerShell sui computer XP. Dovranno avere installato Service Pack 3 e quindi è possibile installare Powershell da qui: http://support.microsoft.com/kb/968929 (Windows Management Framework (Windows PowerShell 2.0, WinRM 2.0 e BITS 4.0))


1

copia questo codice in un .VBSfile ed eseguilo con cscript.exe:

strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
Set colItems = objWMIService.ExecQuery( _
    "SELECT * FROM Win32_VideoController",,48) 
For Each objItem in colItems 
    Wscript.Echo "-----------------------------------"
    Wscript.Echo "Win32_VideoController instance"
    Wscript.Echo "-----------------------------------"
    Wscript.Echo "Caption: " & objItem.Caption
Next

Ecco l'output del mio laptop Dell:

-----------------------------------
Win32_VideoController instance
-----------------------------------
Caption: Intel(R) HD Graphics 4000
-----------------------------------
Win32_VideoController instance
-----------------------------------
Caption: AMD Radeon HD 7700M Series

0

Esegui nel prompt dei comandi:

wmic path win32_VideoController get /all /format:htable >> c:\VGA.html

3
Spiega che cosa fa il comando
Ramhound

Puoi spiegare cosa fa questo codice e come risolve il problema dato dal PO? Il codice inspiegabile può apparire non attendibile e pericoloso per gli utenti.
bwDraco,

Ottiene le informazioni sulla scheda video e le salva in formato html in C Drive chiamato vga.html
S.Alizadeh

Questo comando funziona, anche se non è necessario (o non è possibile a causa di permessi) impostato c:\VGA.htmlda un utente non amministratore. Invece, basta cambiare il percorso VGA.htmlper scaricare nella directory dell'utente. Sono d'accordo che il suo scopo dovrebbe essere spiegato nella domanda piuttosto che qui sotto nel commento.
Dhaupin,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.