Salu2.

Posted 26 July 2010 - 01:37 PM
Posted 26 July 2010 - 01:45 PM
Quisiera saber si Delphi puede reconocer las Environment variables como %windir%, %SystemDrive%, etc.?
Salu2.![]()
Posted 26 July 2010 - 01:46 PM
procedure TForm1.Button1Click(Sender: TObject); begin ShowMessage(GetEnvironmentVariable('WINDIR')); //%WinDir% ShowMessage(GetEnvironmentVariable('SYSTEMDRIVE')); //%SystemDrive% ShowMessage(GetEnvironmentVariable('TEMP')); // %Temp% end;
Posted 26 July 2010 - 02:05 PM
Posted 26 July 2010 - 03:13 PM
procedure TForm1.Button1Click(Sender: TObject); var sr: TSearchRec; begin if findfirst(GetEnvironmentVariable('WINDIR')+'\system32\*.cpl',faanyFile,sr) = 0 then ShowMessage(sr.name); end;
Posted 26 July 2010 - 03:35 PM
procedure TForm1.Button1Click(Sender: TObject); var Len: Integer; S: string; begin SetLength(S, Len); Len := GetSystemDirectory(PChar(S), Len); SetLength(S, Len); ShowMessage(S); end;
Posted 27 July 2010 - 07:28 AM
Posted 27 July 2010 - 07:39 AM
Por ejemplo si hago esto estaria bien no?
En este caso el listado que tengo en archivos le saco el windir no?
Salu2.
archivos := '\WindowsUpdate.log'; if FileExists(GetEnvironmentVariable ('Windir') + archivos) then begin memo1.lines.add(archivos + ' encontrado!'); end;
Posted 27 July 2010 - 08:52 AM
archivos := 'WindowsUpdate.log'; if FileExists(IncludeTrailingPathDelimiter(GetEnvironmentVariable ('Windir')) + archivos) then begin memo1.lines.add(archivos + ' encontrado!'); end;
Posted 27 July 2010 - 09:11 AM
Posted 27 July 2010 - 11:24 AM
Posted 27 July 2010 - 08:02 PM
Yo no recordaba bien el nombre de la función... es que es muy largoBuenas,
A mi personalmente no me gusta incluir la barra invertida en el nombre de los archivos, pero como muchas veces no sabemos si tenemos o no dicha barra en la ruta dada por una determinada función, lo que suelo hacer es compaginar la función deseada con IncludeTrailingPathDelimiter
delphi
archivos := 'WindowsUpdate.log'; if FileExists(IncludeTrailingPathDelimiter(GetEnvironmentVariable ('Windir')) + archivos) then begin memo1.lines.add(archivos + ' encontrado!'); end;
Espero os sirva
Nos leemos
PD: no confundir con IncludeTrailingBackslash, la cual está fuera de uso.
This function is included for backward-compatibility only. New programs should use IncludeTrailingPathDelimiter.