Autor: Black_Ocean
Bueno... Aquí les dejo por si lo necesitaran un ejemplo de una simple pero útil rutina que he realizado para obtener la ruta predeterminada de "Mis archivos recibidos" que utiliza MSN Messenger (testeado con la versión 8.0).
Código Delphi
[-]
Uses
Registry;
function ObtenerRutaArchRecibidos(Clave: HKEY; SubClave, NombreValor: string): string;
var
Reg: TRegistry;
Buffer: string;
TamañoDato, BytesEscritos, i: integer;
begin
Result := '';
Reg := TRegistry.Create;
try
Reg.RootKey := Clave;
if Reg.OpenKey(SubClave, false) then
if Reg.ValueExists(NombreValor) then
if Reg.GetDataType(NombreValor) = rdBinary then
begin
TamañoDato := Reg.GetDataSize(NombreValor);
if TamañoDato > -1 then
begin
SetLength(Buffer, TamañoDato);
BytesEscritos := Reg.ReadBinaryData(NombreValor, Buffer[1], TamañoDato);
if BytesEscritos = TamañoDato then
begin
for i:= 0 to length(Buffer) -1 do
if Buffer[i] = #0 then
Delete(Buffer, i, 1);
Buffer := Trim(Buffer) + '\';
Result := Buffer;
end;
end;
end;
finally
Reg.Free;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
RutaArchRecibidos: string;
begin
RutaArchRecibidos := ObtenerRutaArchRecibidos(HKEY_CURRENT_USER, '\Software\Microsoft\MSNMessenger\', 'FtReceiveFolder');
if RutaArchRecibidos <> '' then
ShowMessage('Ruta Mis archivos recibidos: ' + RutaArchRecibidos)
else
ShowMessage('Error');
end;
Espero que les sea de utilidad
Cualquier aporte es bien recibido acerca de esta rutina
Cordiales saludos :P