Ver Mensaje Individual
  #1  
Antiguo 14-06-2010
pablopessoa pablopessoa is offline
Miembro
 
Registrado: may 2008
Ubicación: Argentina
Posts: 162
Reputación: 16
pablopessoa Va por buen camino
Problema al escribir el registro de windows

Saludos a todos!
Les escribo por que ya no se que recurso agotar.
No puedo insertar una clave en el registro de windows y la verdad es qeu ya no se a qeu se pueda deber. Tengo este mismo codigo en otra aplicacion y anda muy bien. Hay algo de lo que no me estoy dando cuenta y recurro a su ayuda para ver si encontramos que pueda ser.

Primero, tengo declarado esta constante y este registro :
Código Delphi [-]
const
  Clave = '\Software\NombreAplicacion\';
type
  TOpciones = record
      codigo:string[100];   
      limiteuso: string[100];
      fechaInstalacion:string[100];
      IdVolumen:string[100];
    end;

y luego ejecuto el siguiente codigo :

Código Delphi [-]
reg:= TRegistry.Create;
reg.RootKey:=HKEY_CURRENT_USER;
if reg.OpenKey(Clave,False) then
  // ya esta la clave en el registro
    begin
       // Realizo operaciones con la clave        
    end
    else
    // no existe la clave en el registro
     begin         
            opcion.limiteuso:= '15';
            opcion.codigo:= '0000';
            opcion.fechaInstalacion:=DateToStr(Date);
            opcion.IdVolumen:=GetVolumeID('C');
            reg.CreateKey(Clave);
            reg.OpenKey(Clave,False);
            try
              reg2.WriteBinaryData('datos',opcion, SizeOf(opcion));
              reg2.CloseKey;
              reg2.Free;
            except
                ShowMessage('No se puede escribir en el registro de Windows');
            end;
      end;

Pero cuando se ejecuta " reg2.WriteBinaryData('datos',opcion, SizeOf(opcion));" tira un error y no me guarda la clave.
Alguno tiene idea de que puedo estar haciendo mal?
Muchas gracias y saludos!!!
Responder Con Cita