Como pegar o nome do computador e o sistema operacional?
Pessoal,
Procurei e alguns códigos que achei não foram muito funcional...
Preciso de saber qual o nome do computador, tipo aquela para do MEU COMPUTADOR que tem na área de trabalho...
Ah... preciso do Sistema Operacional, TIPO: Windows XP, Windows 2000 NT
Como fazer isso?
Procurei e alguns códigos que achei não foram muito funcional...
Preciso de saber qual o nome do computador, tipo aquela para do MEU COMPUTADOR que tem na área de trabalho...
Ah... preciso do Sistema Operacional, TIPO: Windows XP, Windows 2000 NT
Como fazer isso?
Redoctober
Curtidas 0
Respostas
Tatuweb
29/06/2004
Para retornar a versão do Windows. Não funciona em XP. Mas não é difícil adaptá-la para funcionar no XP. Só não tentei fazer porque não uso esse sistema.
Para retornar o Nome do Ícone Meu Computador
function GetWinVersion: string; begin Result := ´Desconhecido´; if Win32Platform = VER_PLATFORM_WIN32_WINDOWS then if (Win32MajorVersion > 4) or ((Win32MajorVersion = 4) and (Win32MinorVersion > 0)) then Result := ´Windows98´ else Result := ´Windows95´ else if Win32MajorVersion <= 4 then Result := ´WindowsNT´ else if Win32MajorVersion = 5 then Result := ´Windows2000´ end;
Para retornar o Nome do Ícone Meu Computador
function GetNameMyComputer: string;
var
Reg: TRegistry;
begin
Reg := TRegistry.Create;
Reg.RootKey := HKEY_CURRENT_USER;
Reg.OpenKey (´\Software\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}´, FALSE);
Result := Reg.ReadString (´´);
Reg.CloseKey;
Reg.Free;
end;GOSTEI 0
Redoctober
29/06/2004
function GetNameMyComputer: string;
var
Reg: TRegistry;
begin
Reg := TRegistry.Create;
Reg.RootKey := HKEY_CURRENT_USER;
Reg.OpenKey (´\Software\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}´, FALSE);
Result := Reg.ReadString (´´);
Reg.CloseKey;
Reg.Free;
end;
Aí TatuWeb, deu um erro na linha
[b:09216f2105]Reg: TRegistry; [/b:09216f2105] -ERRO--> Undeclared identifier: ´TRegistry´
O que pode ser?
GOSTEI 0
Tatuweb
29/06/2004
declare na seção uses do form a unit Registry.
[b:02b660725d]uses Registry;[/b:02b660725d]
:wink:
[b:02b660725d]uses Registry;[/b:02b660725d]
:wink:
GOSTEI 0
Redoctober
29/06/2004
Agora não deu erro mais, não retornou nada no edit que coloquei...
Uso o windows 98 SE
O que pode ser?
Uso o windows 98 SE
O que pode ser?
GOSTEI 0
Tatuweb
29/06/2004
Estranho. Testei no mesmo sistema que vc usa e funcionou. Em todo caso modifique as linhas 5 e 6 da função. No meu caso funcionou das duas maneiras. Se não funcionar mude o nome do ícone e teste a função novamente só para tirar dúvida.
Reg.RootKey := HKEY_USERS;
Reg.OpenKey (´.DEFAULT\Software\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}´, FALSE);
Era para funcionar porque essas chaves é que guardam o nome do ícone ´meu computador´. Se não funcionar posta de novo que eu dou uma verificada.
Reg.RootKey := HKEY_USERS;
Reg.OpenKey (´.DEFAULT\Software\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}´, FALSE);
Era para funcionar porque essas chaves é que guardam o nome do ícone ´meu computador´. Se não funcionar posta de novo que eu dou uma verificada.
GOSTEI 0
Lucas Silva
29/06/2004
uses Registry; . . . . function TdmAtualizacao.Getcomputer : string; var registro : tregistry; begin registro:=tregistry.create; registro.RootKey := HKEY_LOCAL_MACHINE; registro.openkey(´System\CurrentControlSet\Services\VXD\VNETSUP´,false); result:=registro.readstring(´ComputerName´); end;
GOSTEI 0
Redoctober
29/06/2004
Tentei como o lucas passou, mais não consegui!
vejam como estou chamando a função:
Estou errado?
vejam como estou chamando a função:
label1.caption:=TdmAtualizacao.Getcomputer;
Estou errado?
GOSTEI 0
Tatuweb
29/06/2004
Provavelmente vc colocou a palavra ´TdmAtualizacao.´ e deve ter dado um erro. Basta retirar essa palavra que vai funcionar. Só uma observação: essa função passada pelo Lucas vai retornar o nome do computador e não o nome do ícone ´meu computador´ que tá na área de trabalho. Eu entendi que vc queria saber o nome do ícone. Se o que vc queria saber é o nome do computador é só usar a função do Lucas. Testa e veja se seu problema está solucionado.
:wink:
:wink:
GOSTEI 0