Buscando os dados do Windows XP e da sua máquina no Registro
Veja como captura informações do seu pc ou do cliente, muito util para um sistema de suporte
Passei um bom tempo para descobrir como alguns sistema pegava o nome do pc, do processador e etc. pesquisei na net não descobrir muita coisa não. Descobrir que alguns dados estavam no registros.
Então aprendir a ler os arquivo de registro, logo em seguida, o que deu mais trabalho, foi achar o local certo de onde ficava este arquivos.
procedure TFrmHelpDesk.CapturandoDadosPC;
Var Registro: TRegistry;
TextoRegistro:string;
begin
//Preparando a tabela
{Criei uma tabela chamada HelpDesk onde eu iria armazena alguns dados}
DMTabelas.TblHelpDesk.Open;
DMTabelas.TblHelpDesk.Insert;
{Nome do Processador}
{==============================================================================}
registro:=tregistry.create;//Cria o objeto
Registro.RootKey:=HKEY_LOCAL_MACHINE;
registro.openkey('HARDWARE\DESCRIPTION\System\CentralProcessor\0',false);
TextoRegistro:= Registro.ReadString('ProcessorNameString');
DMTabelas.TblHelpDeskNomeProcessador.AsString := TextoRegistro;
registro.Destroy;//Destroi o objeto para liberar da memória
{==============================================================================}
{Nome do Computador}
{==============================================================================}
registro:=tregistry.create;//Cria o objeto
Registro.RootKey:=HKEY_LOCAL_MACHINE;
registro.openkey('SYSTEM\CurrentControlSet\control\ComputerName\ComputerName',false);
TextoRegistro:= Registro.ReadString('ComputerName');
DMTabelas.TblHelpDeskNomePCCham.AsString := TextoRegistro;
registro.Destroy;//Destroi o objeto
{==============================================================================}
(*---- Sistema do PC -----*)
{Nome do OP}
{==============================================================================}
registro:=tregistry.create;//Cria o objeto
Registro.RootKey:=HKEY_LOCAL_MACHINE;
registro.openkey('SOFTWARE\Microsoft\Windows NT\CurrentVersion',false);
TextoRegistro:= Registro.ReadString('ProductName');
DMTabelas.TblHelpDeskSistemaOP.AsString := TextoRegistro;
registro.Destroy;//Destroi o objeto
{==============================================================================}
{Nome do ID do OP}
{==============================================================================}
registro:=tregistry.create;//Cria o objeto
Registro.RootKey:=HKEY_LOCAL_MACHINE;
registro.openkey('SOFTWARE\Microsoft\Windows NT\CurrentVersion',false);
TextoRegistro:= Registro.ReadString('ProductId');
DMTabelas.TblHelpDeskID_SistemaOP.AsString := TextoRegistro;
registro.Destroy;//Destroi o objeto
{==============================================================================}
{Nome do Pasta do OP}
{==============================================================================}
registro:=tregistry.create;//Cria o objeto
Registro.RootKey:=HKEY_LOCAL_MACHINE;
registro.openkey('SOFTWARE\Microsoft\Windows NT\CurrentVersion',false);
TextoRegistro:= Registro.ReadString('PathName');
DMTabelas.TblHelpDeskPastaWin.AsString := TextoRegistro;
registro.Destroy;//Destroi o objeto
{==============================================================================}
{Nome do Versão de atualização do OP}
{==============================================================================}
registro:=tregistry.create;//Cria o objeto
Registro.RootKey:=HKEY_LOCAL_MACHINE;
registro.openkey('SOFTWARE\Microsoft\Windows NT\CurrentVersion',false);
TextoRegistro:= Registro.ReadString('CSDVersion');
DMTabelas.TblHelpDeskVersaoWin.AsString := TextoRegistro;
registro.Destroy;//Destroi o objeto
{==============================================================================}
{Nome do Usuario de Registro do OP}
{==============================================================================}
registro:=tregistry.create;//Cria o objeto
Registro.RootKey:=HKEY_LOCAL_MACHINE;
registro.openkey('SOFTWARE\Microsoft\Windows NT\CurrentVersion',false);
TextoRegistro:= Registro.ReadString('RegisteredOwner');
DMTabelas.TblHelpDeskUsuRegWin.AsString := TextoRegistro;
registro.Destroy;//Destroi o objeto
{==============================================================================}
{Nome do organização do OP}
{==============================================================================}
registro:=tregistry.create;//Cria o objeto
Registro.RootKey:=HKEY_LOCAL_MACHINE;
registro.openkey('SOFTWARE\Microsoft\Windows NT\CurrentVersion',false);
TextoRegistro:= Registro.ReadString('RegisteredOrganization');
DMTabelas.TblHelpDeskOrgRegWin.AsString := TextoRegistro;
registro.Destroy;//Destroi o objeto
{==============================================================================}
{Usuário de Rede}
{==============================================================================}
TextoRegistro:= UsuarioRede;
DMTabelas.TblHelpDeskUsuRede.AsString:= TextoRegistro;
{==============================================================================}
{IP atual}
{==============================================================================}
TextoRegistro:= IPPC;
DMTabelas.TblHelpDeskIP_PC.AsString:= TextoRegistro;
{==============================================================================}
end;
{==============================================================================}
{===================FIM DOS PROCEDIMENTOS PARTICULARES ========================}
{==============================================================================}
Fiquem com Deus
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo