Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

PauloFreitas

Identificando placa de vídeo

Recommended Posts

Olá pessoal ! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

Passei a manhã de hoje estudando como capturar o fabricante/modelo da placa de vídeo. Após cerca de 2 horas de pesquisa, incluindo monitoramento de registro na execução de softwares do gênero, cheguei à uma conclusão unânime. :rolleyes:

 

Tudo é feito lendo o Registro. Aliás, muitas das informações do PC é ele que nos informa. ^_^

 

Seguinte ...

 

Primeiramente, é feita uma leitura na chave HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\VIDEO. Ela que nos vai informar o caminho para as informações da placa de vídeo. Acessndo esta chave, devemos ler o valor do dado \Device\Video0, que representa o dispositivo em uso (pois poderá haver mais). Feito isso, com o valor obtido (algo como \Registry\Machine\System\CurrentControlSet\Control\Video\{EE650684-306A-4E0E-AD53-4438CE239E17}\0000), devemos acessar então a chave (exemplo) HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Video\{EE650684-306A-4E0E-AD53-4438CE239E17}\0000, e ler o valor de seu dado Device Description. Pronto ! Feito isso já teremos o que queríamos em mãos ... http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

 

Seguindo meu conceito acima, fiz esta pequena função:

 

uses Registry;function GetDisplayAdapter: String;var  Registry: TRegistry;  Resource: String;begin  Registry := TRegistry.Create;  Registry.RootKey := HKEY_LOCAL_MACHINE;  Registry.OpenKey('HARDWARE\DEVICEMAP\VIDEO', false);  Resource := Registry.ReadString('\Device\Video0');  Registry.CloseKey;  Delete(Resource, 1, 18); // Delete '\Registry\Machine\'  Registry.OpenKey(Resource, false);  Result := Registry.ReadString('Device Description');  Registry.CloseKey;  Registry.Free;end;
Testei aqui em meu PC e deu certo. Me informou a informação correta, para meu caso: NVIDIA GeForce4 MX 4000 (Microsoft Corporation) (minha placa de vídeo). B)

 

Finalmente acabei. Só gostaria de pedir à vocês que testassem este meu pequeno código, para ver se realmente funciona como deveria. E aos que testarem, seria interessante postarem o valor obtido (sem tirar nada), para mim ver se será preciso "recortar" alguns espaços que sobrarem em alguns casos, se houverem. :P

 

[]s :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala vid4l0k4!!Entao vi esse seu post e tava analizando.. pode ser que eu esteja errado... mais ele acha o Drive instalado em seu pc para a placa de video ou a placa de video???Eu axo que ele esta achando o drive e nao a placa de video... pois posso estar me confundindo mais você esta falando no post que ele axa qual é a placa de video... axo isso meio dificil axar pelo registro né?? isso eh soh uma informação construtiva...Mais de qualquer forma esse codigo é muito bom para servir de fonte para muita gente.. parabens{%}'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.