Pergunta

No Windows, Como pode o meu programa de modo de usuário obter o número da versão do driver (s) para a placa de vídeo (s) instalado?

Programas como o de ATI "Catalyst Control Center" pode exibir esta informação para o usuário ou incluí-lo automaticamente em relatórios de bugs. Como é que eles obtê-lo?

Eu tenho procurado através da documentação PSDK, e eu não consigo encontrar nada relevante.

Pode um programa de usuário caminhada pelo banco de dados que exibe Device Manager?
Existe uma chamada IOCTL como a obtenção de geometria unidade de disco?
É em uma chave de registro (confiável)?

Foi útil?

Solução

Em PowerShell:

Get-WmiObject Win32_VideoController | format-table Name, Description,VideoProcessor,DriverVersion

Os objetos WMI também estão disponíveis a partir de qualquer linguagem que fala COM ou .Net.

ETA: Você pode querer excluir registros sem um valor para VideoProcessor, como os drivers Live Mesh. Eu fiz isso por incluindo |where {$_.VideoProcessor -ne $null } no pipeline antes do comando formato.

Outras dicas

Eu usei "dxdiag / x output.xml", em seguida, obter a versão do driver de vídeo ao analisar "output.xml". dxdiag é lento, mas ele diz a versão driver correto ..

Eu usei python para fazer este trabalho. Inspirado pela resposta de Jason, eu recebo o seguinte código:

>>> import wmi
>>> c = wmi.WMI()
>>> for device in c.Win32_VideoController():
    if device.VideoProcessor:
        print device.DriverVersion

Eu tive de resolver este problema antes. Eu acredito que você realmente tem que obter o arquivo Versão informações do arquivo de driver associado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top