Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-06-2007
Ledian_Fdez Ledian_Fdez is offline
Miembro
 
Registrado: jun 2006
Ubicación: Ciudad Habana, Cuba
Posts: 242
Poder: 18
Ledian_Fdez Va por buen camino
Angry Registro con valor BINARIO !!!

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var  
 Registro : TRegistry;
begin 
 try
   Registro := TRegistry.Create;
   Registro.RootKey := HKEY_LOCAL_MACHINE;
   if Registro.OpenKey('SOFTWARE\Cedipad\Claves\Caper', False) then
     begin
      if not(Registro.ValueExists('reg')) then
         Registro.WriteBinaryData('reg', ?, ?);
     end
   CloseKey; 
 finally
   Registro.Free;
 end;
end;


Amigos la duda esta en los parametros de entrada de la funcion
WriteBinaryData(const Name: String; var Buffer; BufSize: Integer);

Suponga que abrimos el registro de Windows y buscamos en KEY_LOCAL_MACHINE\SOFTWARE\Cedipad\Claves\Caper y ahi creo un valor binario con el nombre de reg. ¿Que valores debo poner en tal funcion?

Grasias de antemano
y ruego que me ayuden.

De todas formas les reitero las grasias.

Salu2 Ledian
Responder Con Cita
  #2  
Antiguo 07-06-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Cool Ok

Puedes poner CUALQUIER cosa, por ejemplo si es de tu agrado, no es lo mejor pero podrias poner hasta un archivo entero, un paquete de Socket, una Variable, lo que sea... por ejemplo voy a meter al Icono de la aplicacion al registro, junto con el nombre donde lo guardo temporalmente y su tamaño.

Código Delphi [-]
uses Registry;
 
const FileName: PChar = 'c:\ProjectX.ico';
 
var Buffer: array [0..1024*1024-1] of Char; // Buffer de hasta un mega para el ejemplo

procedure TForm1.Button1Click(Sender: TObject);
var Registro: TRegistry; hFile, Size: Cardinal;
begin
 Application.Icon.SaveToFile(FileName);
 hFile := CreateFile(FileName, GENERIC_READ, 0, nil, OPEN_EXISTING, 0, 0);
 ReadFile(hFile, Buffer, GetFileSize(hFile, nil), Size, nil);
 CloseHandle(hFile);
 try
  Registro := TRegistry.Create;
  Registro.RootKey := HKEY_LOCAL_MACHINE;
  if Registro.OpenKey('SOFTWARE', False) then
   begin
    Registro.WriteBinaryData('FileName', FileName^, StrLen(FileName) + 1);
    Registro.WriteBinaryData('Size', Size, 4);
    Registro.WriteBinaryData('Data', Buffer, Size);
   end;
  Registro.CloseKey;
 finally
  Registro.Free;
 end;
end;

Sin embargo como ya te comentaba no es correcto meter todo un archivo, lo hice solo para darte una idea... te aconsejo leer la ayuda del propio Delphi a la API 'RegSetValueEx' para tener una idea de los métodos de optimizacion que pensaron los de Microsoft para ésto tipo de variable...

Espero me hayas entendido.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
En Delphi 5, "El valor de BOF o EOF es True, o el actual registro se eliminó, .... Lore Castillo SQL 1 02-02-2006 22:12:01
Repetir registro segun valor de un campo yusnerqui SQL 2 13-03-2005 02:14:40
El valor de BOF o EOF es true o el actual registro se eliminó jatorve Conexión con bases de datos 3 09-02-2005 15:14:45
Dar un valor a un registro en una tabla de forma automática vhirginia Conexión con bases de datos 3 26-04-2004 19:50:42
Error: El valor EOF o BOF es True o el actuañ registro de eliminó lavtaro Conexión con bases de datos 2 30-06-2003 11:39:44


La franja horaria es GMT +2. Ahora son las 16:29:51.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi