Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-11-2009
Avatar de chile_mergas
chile_mergas chile_mergas is offline
Registrado
 
Registrado: nov 2009
Posts: 5
Poder: 0
chile_mergas Va por buen camino
Lightbulb programar gpedit.msc ????

necesito un programa que pueda modificar las directivas de grupo, por ejemplo que con solo oprimir un boton bloque el panel de control y con otro lo desbloquee,,

ya he buscado en varias partes pero no encuentro un codigo o la funcion para hacer eso,,

si alguien me pudieraayudar, por favor
Responder Con Cita
  #2  
Antiguo 27-11-2009
Avatar de bosster_018
bosster_018 bosster_018 is offline
Miembro
 
Registrado: nov 2009
Ubicación: Bolivia
Posts: 127
Poder: 15
bosster_018 Va por buen camino
Debes utilizar el Registro de Windows (Regedit)

Todos los cambios que se pueden realizar en Windows puede ser tratado desde el Registro de Windows (Regedit).
Sólo debes "Googlear" en poco para investigar como cambiar algunas opciones desde el Registro para luego aplicarlo en Delphi.

Por ejemplo buscando "Bloquear Panel de control" me lleva al Registro de Windows:

Desde la Web "batiburrillo.net/adivina/adivina_sop26.php":

Cita:
Este truco funciona perfectamente en Windows Me / 2000 y XP. Aplicándolo podemos impedir que, personas no autorizadas, entren en Panel de Control y cambien opciones que no queremos cambiar.

* Vamos a Inicio \ Ejecutar y escribimos regedit para utilizar el Editor del registro.
* Abrir sucesivamente las ramas según la secuencia:
HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Policies \ Explorer.

* Crear o modificar la variable (Edición \ Nuevo \ Valor DWORD) con el nombre NoControlPanel y darle el valor 1.
* Repetir el mismo apartado anterior siguiendo las ramas:
HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion \ Policies \ Explorer.

Luego salir del registro y Reiniciar la computadora
Sabiendo esto... Te puedo dar un ejemplo:
En tu formulario agregas un boton y en la caption del botón escribes "Desbloqueado".
Luego en el boton escribes esto:

Antes que nada en las Uses de tu formulario debes agregar:

Código Delphi [-]
Uses
  Registry, ShellApi;

En el botón escribe:

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
    Registro:TRegistry;
    Registro2:TRegistry;
begin
  Registro:=TRegistry.create;  //Se crea el primer registro
  Registro2:=TRegistry.create; //Se crea el segundo registro
  Registro.RootKey:=HKEY_CURRENT_USER;  //Se asigna la rama principal
  Registro2.RootKey:=HKEY_LOCAL_MACHINE;  // Se asigna la otra rama principal

  if Button1.Caption='Desbloqueado' then
  begin
    //Aquí se bloquea el panel de control
    Button1.Caption:= 'Bloqueado';
    if Registro.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\',FALSE) then
       Registro.WriteString('NoControlPanel',(IntToStr(1)));
    if Registro2.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\',FALSE) then
       Registro2.WriteString('NoControlPanel',(IntToStr(1)));
  end
  else
  begin
    //Aquí se desbloquea el panel de control
    Button1.Caption:= 'Desbloqueado';
    if Registro.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\',FALSE) then
       Registro.DeleteValue('NoControlPanel');
    if Registro2.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\',FALSE) then
       Registro2.DeleteValue('NoControlPanel');
  end;
  //Se libera el registro
  Registro.Free;

  {Para que el cambio se vea de inmediato...
  Se debe terminar o reiniciar el proceso "Explorer.exe"}

  //Termina el proceso explorer.exe
  ShellExecute(Handle, nil, 'tskill', 'explorer', nil, sw_hide);
  //Se inicia de nuevo el explorer.exe
  ShellExecute(Handle, nil, 'explorer.exe', '', '', SW_HIDE);

  {Nota.- Si alquien sabe como hacer que se vea el cambio de
   inmediato sin cerrar el "explorer.exe", que hable ahora o calle para siempre}
end;

Esto lo acabo de hacer así que puede que falte algo o también sobre código
Responder Con Cita
  #3  
Antiguo 28-11-2009
Avatar de chile_mergas
chile_mergas chile_mergas is offline
Registrado
 
Registrado: nov 2009
Posts: 5
Poder: 0
chile_mergas Va por buen camino
muchas gracias por tu ayuda , era precisamente lo ke estaba buscando
Responder Con Cita
  #4  
Antiguo 02-12-2009
Avatar de chile_mergas
chile_mergas chile_mergas is offline
Registrado
 
Registrado: nov 2009
Posts: 5
Poder: 0
chile_mergas Va por buen camino
Red face

nomas rapidamente otra pregunta para este mismo diseño de programa,

no sabe alguien si tambien se pueda bloquear la carpeta de mis documentos, o el messenger desde una aplicacion delphi??
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
Programar .Net kman Varios 0 01-09-2006 03:49:08
Programar en windows ce j-vi Windows 4 10-08-2005 18:07:41
Programar una PDA marcial Varios 5 02-10-2004 19:39:41
programar con delphi luna Varios 1 12-05-2004 00:49:36
Programar en Palm Ignacio Varios 0 29-05-2003 15:18:50


La franja horaria es GMT +2. Ahora son las 00:22:30.


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