FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Eliminar registro de Windows
Hola de nuevo.
Me interesaría borrar un registro de Windows, dentro de HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\, para que cierta aplicación arranque o no junto con Windows. Para ello he usado la siguiente función: Código:
procedure TvPrograma.abrirEnInicio(iOpcion:integer); var Registro:TRegistry; begin // Crea una clave en el registro Registro:=TRegistry.create; Registro.RootKey:=HKEY_LOCAL_MACHINE; // Según iOpcion, borramos o añadimos la clave case iOPcion of 0: if Registro.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Run\',FALSE) then Registro.WriteString('MiPrograma',''); 1: if Registro.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Run',FALSE) then Registro.WriteString('MiPrograma',ExtractFilePath(ExpandFileName(ParamStr(0)))+'MiPrograma.exe'); end; Registro.Destroy; end; Gracias anticipadas.
__________________
IncestoCanibal.com |
#2
|
|||
|
|||
Me acabo de responder yo sólo
En vez de DeleteKey(), pues abres la ruta del registro con OpenKey(), y luego borras el valor que deseas, indicando su nombre, usando DeleteValue(), quedando así el código: Código:
case iOPcion of 0: if Registro.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Run\',FALSE) then Registro.DeleteValue('MiPrograma'); 1: if Registro.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Run',FALSE) then Registro.WriteString('MiPrograma',ExtractFilePath(ExpandFileName(ParamStr(0)))+'MiPrograma.exe'); end;
__________________
IncestoCanibal.com |
|
|
|