Holap

Creo que ya he visto el error:
Debes sustituir esta linea:
Código:
Result :=Registry.ReadString('VALUE1');
por esta otra:
Código:
GetRegistryValue :=Registry.ReadString('VALUE1');
Ahora tendrás el valor leido del registro en el retorno de la
función , es que el
Return no funciona en Delphi, eso es de Visial Basic.
Para obtener el valor que devuelve una función hay que asignarselo así:
GetRegistryValue:=Registry.ReadString('VALOR1');
Ahora tu función quedaría de esta manera:
Código:
function TForm1.GetRegistryValue: string;
var
Registry: TRegistry;
S:String; //esta variable no se usa, se puede quitar.
begin
Registry:=TRegistry.Create;
Registry.RootKey:=HKEY_LOCAL_MACHINE;
//False because we do not want to create it if it doesn’t exist
Registry.OpenKey('MYKEY',False);
GetRegistryValue:=Registry.ReadString('VALOR1');
Registry.Free;
end;
Ahora en el Form.Show por ejemplo, puedes poner un Label y llamar a la función:
label1.caption:=GetRegistryValue;
Además fíjate en la cabecera de la función:
function TForm1.GetRegistryValue: string;
la he incluido en la clausula
Código:
type
TForm1 = class(TForm)
Label1: TLabel;
function GetRegistryValue: string;
procedure FormShow(Sender: TObject);
Ahora debe de funcionarte correctamente.
Salu2