Jump to content


Photo

Activar y Desactivar Windows Firewall


  • Please log in to reply
15 replies to this topic

#1 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4266 posts
  • LocationCosta Rica

Posted 01 August 2009 - 09:42 AM

Hola
Se puede activar y desactivar el Firewall por código con delphi?.
Saludos
PD: No se si es API  :D
  • 0

#2 enecumene

enecumene

    Webmaster

  • Administrador
  • 7419 posts
  • LocationRepública Dominicana

Posted 01 August 2009 - 10:10 AM

Prueba con los siguientes:

Desactivar:



delphi
  1. shellexecute(0,'open', 'net.exe',' stop sharedaccess',0,0);



Activar:



delphi
  1. shellexecute(0,'open', 'net.exe',' start sharedaccess',0,0);



Saludos.
  • 0

#3 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4266 posts
  • LocationCosta Rica

Posted 01 August 2009 - 10:34 AM

Hola
Amigo que uses tengo que poner para el shellexecute?
Saludos
  • 0

#4 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4266 posts
  • LocationCosta Rica

Posted 01 August 2009 - 10:37 AM

Hola
Ya vi SellApi. :D
Otra cosa:
Esto desactiva el srvicio del firewall, pero me gustaria que solo lo dejara on o off sin desactivalo.
Se puede?
Saludos
  • 0

#5 felipe

felipe

    Advanced Member

  • Administrador
  • 3283 posts
  • LocationColombia

Posted 01 August 2009 - 10:53 AM

Esto desactiva el srvicio del firewall, pero me gustaria que solo lo dejara on o off sin desactivalo.


Eso no lo entendí­  *-)


Saludos!
  • 0

#6 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4266 posts
  • LocationCosta Rica

Posted 01 August 2009 - 10:58 AM

Hola
Bueno, en el firewall hay una pantalla.
En esa pantalla hay tres opciones, on, off y la otra de excepciones.
Lo que hace el codigo de Fernando es desactivar el servicio, o eso es lo que creo, por que si se quiere entrar en esa ventana sale un mensaje que dice que el servicio esta detenido y si quiere activarlo.
Yo pensaba en la posibilidad de únicamente cambiar el estado, on y off, pero que la ventana siga saliendo.
No se si se podrá o es lo mismo.
Saludos
  • 0

#7 enecumene

enecumene

    Webmaster

  • Administrador
  • 7419 posts
  • LocationRepública Dominicana

Posted 01 August 2009 - 11:26 AM

Amigo Caral, ¿cuál es la diferencia?, estoy seguro que al poner off en esa ventana detienes el servicio, la diferencia está en que agrega en el registro de windows un dato más donde no se salga esa ventana que comentas.

Saludos.
  • 0

#8 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4266 posts
  • LocationCosta Rica

Posted 01 August 2009 - 11:48 AM

Hola
Si amigo, lo he notado, pero ya sabes, es para ponértela difí­cil jejeje. :D
Saludos
  • 0

#9 seoane

seoane

    Advanced Member

  • Administrador
  • 1259 posts
  • LocationEspaña

Posted 01 August 2009 - 12:32 PM

En windows XP llega con esto:


delphi
  1. uses ComObj;
  2.  
  3. var
  4.   objFirewall: Variant;
  5. begin
  6.   objFirewall:=  CreateOleObject('HNetCfg.FwMgr');
  7.   objFirewall.LocalPolicy.CurrentProfile.FirewallEnabled:= FALSE;
  8. end;



Pero lo acabo de probar en Vista y no me deja
  • 0

#10 seoane

seoane

    Advanced Member

  • Administrador
  • 1259 posts
  • LocationEspaña

Posted 01 August 2009 - 12:46 PM

Aquí­ la versión para Vista  :cheesy:


delphi
  1. uses ComObj;
  2.  
  3. const
  4.   NET_FW_PROFILE2_DOMAIN = 1;
  5.   NET_FW_PROFILE2_PRIVATE = 2;
  6.   NET_FW_PROFILE2_PUBLIC = 4;
  7.  
  8. var
  9.   fwPolicy2: Variant;
  10. begin
  11.   fwPolicy2:=  CreateOleObject('HNetCfg.FwPolicy2');
  12.   fwPolicy2.FirewallEnabled(NET_FW_PROFILE2_DOMAIN):= FALSE;
  13.   fwPolicy2.FirewallEnabled(NET_FW_PROFILE2_PRIVATE):= FALSE;
  14.   fwPolicy2.FirewallEnabled(NET_FW_PROFILE2_PUBLIC):= FALSE;
  15. end;



PD: Hay que ejecutarlo  como administrador
  • 0

#11 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14448 posts
  • LocationMéxico

Posted 01 August 2009 - 12:49 PM

Ah vaya

Que bien amigo seoane, un gusto ver tu code.

Salud OS
  • 0

#12 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4266 posts
  • LocationCosta Rica

Posted 01 August 2009 - 01:07 PM

Hola
Muchas gracias Seoane, es exactamente lo que querí­a sin menospreciar lo de Fernando por supuesto. (y)
Gracias a ambos. (y) (b)
Saludos

  • 0

#13 luk2009

luk2009

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2040 posts
  • LocationSanto Domingo

Posted 01 August 2009 - 04:10 PM

Primero añadimos a uses:
uses
Windows, Messages, ..., WinSvc, ShellApi;


Este serí­a un el procedimiento que detiene el servicio:



delphi
  1.        
  2.  
  3. procedure DeshabilitarCortafuegosXP;
  4. var
  5. SCM, hService: LongWord;
  6. sStatus: TServiceStatus;
  7. begin
  8. SCM := OpenSCManager( nil, nil, SC_MANAGER_ALL_ACCESS );
  9. hService := OpenService( SCM, PChar( 'SharedAccess' ),
  10. SERVICE_ALL_ACCESS );
  11. ControlService( hService, SERVICE_CONTROL_STOP, sStatus );
  12. CloseServiceHandle( hService );
  13. end;





Para volver a activarlo sólo hay que ir al panel de control y ponerlo en marcha
de nuevo. Esto no vale para otros cortafuegos (Panda, Norton, etc.)
Pruebas realizadas en Delphi 7


[glow=red,2,300]tomado de unos manuales llamados delphi al limite[/glow]
  • 0

#14 felipe

felipe

    Advanced Member

  • Administrador
  • 3283 posts
  • LocationColombia

Posted 02 August 2009 - 11:48 AM

Gracias por los aportes.


Saludos!
  • 0

#15 pcicom

pcicom

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 267 posts
  • LocationMéxico

Posted 02 August 2009 - 09:48 PM

Creo que estos CODIGOS deben de ir a la SECCION de TRUCOS.... si es que la hay, y si no hay que plantear su APERTURA..


  • 0

#16 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4107 posts
  • LocationMadrid - España

Posted 03 August 2009 - 05:00 AM

Creo que estos CODIGOS deben de ir a la SECCION de TRUCOS.... si es que la hay, y si no hay que plantear su APERTURA..


Pues existe.

Saludos.
  • 0




IP.Board spam blocked by CleanTalk.