Tu comunidad de Seguridad Informatica

[Source Delphi] GetPCInfo Basic Info1810 Para ver Todo el contenido del foro es necesario estar Registrado! [Source Delphi] GetPCInfo Basic Info1810
[Source Delphi] GetPCInfo Basic Info1810 Antes de comentar o Aportar es Obligado Leer Las: Reglas | Rules [Source Delphi] GetPCInfo Basic Info1810
[Source Delphi] GetPCInfo Basic Info1810Ya Esta Disponible al publico "LeProject" el Videojuego del Foro Click Aquí Para Ver el Post. [Source Delphi] GetPCInfo Basic Info1810
[Source Delphi] GetPCInfo Basic Info1810Pitbull Security Labs "Extras" Esta Disponible! [ENTRA][Source Delphi] GetPCInfo Basic Info1810

No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje [Página 1 de 1.]

1-Slandg- 

-Slandg-
Administrador
Administrador

http://www.pitbullsecurity.org
Dom Oct 31, 2010 9:30 pm
[Source Delphi] GetPCInfo Basic Infohl

Bueno aqui les dejo unas mini funciones que nos permite obtener el direcorio de windows, archivos de programas, system, etc.. sin importar en que unidad esta instalado el sistema operativo, estas funciones resultan muy utiles ya que si queremos copiar un archivo u otra cosa en tales directorio se copiara sin problemas, sin importar que el directorio raiz sea C, D, o lo que sea.

Código:
program GetPCInfo;

{$APPTYPE CONSOLE}

uses
  SysUtils, Windows, Registry, ShellApi;

Type
 //Directorios y nombres
 WinSysTemp = (WindowsDir, SystemDir, TempDir);
 ComputerUser = (GComputerName, GUserName);

 Const
 //Nombres, tonterias pero util, LOL XD
 U = 'User name: ';
 C = 'Computer name: ';
 W = 'Windows: ';
 S = 'System: ';
 T = 'Temp folder: ';
 P = 'Program files: ';
 DT = 'System date time: ';
 SYSLANG = 'System language: ';
 TEXT = 'indetectables.net by Dominicano. (-_-) XD';
 LINE = '-----------------------------------------';

 //Windows, system y carpeta temporal (Temp)
function GetDirectory(DirWST: WinSysTemp): String;
var
 Path: Array[0..MAX_PATH] of Char;
 SizePath: Cardinal;
 begin
 SizePath := sizeof(Path);
  Case DirWST of
  WindowsDir: GetWindowsDirectory(Path, SizePath);
  SystemDir: GetSystemDirectory(Path, SizePath);
  TempDir: GetTempPath(MAX_PATH, Path);
  end;
  Result := (Path);
 end;

//Archivos de programa
//Si queremos obtener Archivos comunes, Usar CommonFilesDir
function GetProgramFilesDir: String;
var
 Regedit: TRegistry;
 begin
  Regedit := TRegistry.Create;
  try
    RootKey := HKEY_LOCAL_MACHINE;
    Regedit.OpenKey('\SOFTWARE\Microsoft\Windows\CurrentVersion', false);
    Result := Regedit.ReadString('ProgramFilesDir');
  Regedit.CloseKey;
  finally
  Regedit.Free;
 end;
end;

//Idioma del systema
function GetUserLanguage: String;
var
 Language: Array[0..150] of Char;
 ID: LangID;
 LangSize: Cardinal;
 begin
  LangSize := SizeOf(Language);
  ID := GetUserDefaultLangID;
  VerLanguageName(ID, Language, LangSize);
  Result := (Language);
end;

//Computadora y usuario
function GetComputerUserName(CUN: ComputerUser): String;
var
 csName: Array[0..230] of Char;
 csSize: Cardinal;
 begin
  csSize := Sizeof(csName);
  Case CUN of
  GUserName: GetUserName(csName, csSize);
  GComputerName: GetComputerName(csName, csSize);
  end;
  Result := (csName);
 end;

//Fecha y hora del sistema
function SystemDateTime: String;
var
 SysDateTime: TSystemTime;
 begin
  GetLocalTime(SysDateTime);
  Result := DateTimeToStr(SystemTimeToDateTime(SysDateTime));
 end;

//Mostramos resultados en pantalla
begin
 Writeln(LINE + #10 + TEXT + #10 + LINE + #10);

 Writeln(U + GetComputerUserName(GUserName));
 Writeln(C + GetComputerUserName(GComputerName )+ #10);

 Writeln(W + GetDirectory(WindowsDir));
 Writeln(S + GetDirectory(SystemDir));
 Writeln(T + GetDirectory(TempDir));
 Writeln(P + GetProgramFilesDir + #10);

 Writeln(DT+SystemDateTime);
 Writeln(SYSLANG+GetUserLanguage);

 Readln;
end.

Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.