Firewall windows xp sp 2 desactiver le blocage de certains ports

Soyez le premier à donner votre avis sur cette source.

Snippet vu 18 909 fois - Téléchargée 28 fois

Contenu du snippet

Ce code permet de desactivé le blocage de certains ports utilisés dans votre réseau interne,le petit plus c' est avant de se lancer il verifie
si le poste est sous windows xp sp2 et il se lance uniquement a cette condition parfait pour un admin qui a des postes avec différents OS
on peut par exemple dans un réseau desactiver le firewall uniquement sur les postes en xp sp2 si on a pas besoin .

Source / Exemple :


Dim strComputer, strSubKey, ValueName, ValueVersion, ValueVersionExt 
Dim ValueFullName1, ValueFullName2
Dim strDisplayValue1,strDisplayValue2
Dim str1
Dim strRegKey1, strRegkey2
 
Const HKEY_LOCAL_MACHINE = &H80000002 
 
strComputer = "." 
 
strRegkey1 = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\CSDVersion" 
strRegkey2 = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProductName"
 
strOldName = objReg.RegRead(strRegKey1) 
 
ValueFullName1 = "Service Pack 2"
ValueFullName2 = "Microsoft Windows XP" 
 
   Set objRegistry = GetObject("winmgmts:"   & _ 
   "{impersonationLevel=Impersonate}!\\" & _ 
   strComputer & "\root\default:StdRegProv") 
 
   objRegistry.EnumKey HKEY_LOCAL_MACHINE, strRegKey1, arrSubKeys 
 
   objRegistry.GetStringValue HKEY_LOCAL_MACHINE, _ 
          strRegKey1 , ValueFullName1, strDisplayValue1, strRegkey2, ValueFullName2, strDisplayValue2

 
If (ValueFullName1 = "Service Pack 2" and ValueFullName2 = "Microsoft Windows XP") Then
Dim objFirewall
Set objFirewall = CreateObject("HNetCfg.FwMgr")
Set objPolicy = objFirewall.LocalPolicy.CurrentProfile
objPolicy.FirewallEnabled = FALSE
End If

A voir également

Ajouter un commentaire

Commentaires

jmbourreau
Messages postés
17
Date d'inscription
lundi 19 avril 2004
Statut
Membre
Dernière intervention
4 avril 2007
-
Ton script agit sur firewall local et non distant. :-(
keaoner
Messages postés
3
Date d'inscription
dimanche 23 janvier 2005
Statut
Membre
Dernière intervention
22 juillet 2005
-
voici le code en entier a mettre dans un vbs:

On Error Resume Next

Dim strComputer, strSubKey, ValueName, ValueVersion, ValueVersionExt
Dim ValueFullName1, ValueFullName2
Dim strDisplayValue1,strDisplayValue2
Dim str1
Dim strRegKey1, strRegkey2

Const HKEY_LOCAL_MACHINE = &H80000002

strComputer = "."

strRegkey1 = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\CSDVersion"
strRegkey2 = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProductName"

strOldName = objReg.RegRead(strRegKey1)

ValueFullName1 = "Service Pack 2"
ValueFullName2 = "Microsoft Windows XP"

Set objRegistry = GetObject("winmgmts:" & _
"{impersonationLevel=Impersonate}!\" & _
strComputer & "\root\default:StdRegProv")

objRegistry.EnumKey HKEY_LOCAL_MACHINE, strRegKey1, arrSubKeys

objRegistry.GetStringValue HKEY_LOCAL_MACHINE, _
strRegKey1 , ValueFullName1, strDisplayValue1, strRegkey2, ValueFullName2, strDisplayValue2


If (ValueFullName1 "Service Pack 2" and ValueFullName2 "Microsoft Windows XP") Then
Dim objFirewall
Set objFirewall = CreateObject("HNetCfg.FwMgr")
Set objPolicy = objFirewall.LocalPolicy.CurrentProfile
Set colServices = objPolicy.Services
Set objService = colServices.Item(0)
objService.Enabled = TRUE
Set objFirewall = CreateObject("HNetCfg.FwMgr")
Set objPolicy = objFirewall.LocalPolicy.CurrentProfile
Set colPorts = objPolicy.GloballyOpenPorts
Set objPort = colPorts.Item(139,6)
objPort.Enabled = TRUE
End If
keaoner
Messages postés
3
Date d'inscription
dimanche 23 janvier 2005
Statut
Membre
Dernière intervention
22 juillet 2005
-
repondre j'accede au registre pour lire 2 valeur dans le registre pour être sur que c'est un xp sp2 :
si
# ValueFullName1 = "Service Pack 2"
# ValueFullName2 = "Microsoft Windows XP"
alors
on desactive le firewall

ce script est a enregistrer dans un fichier VBS
cs_Didier72
Messages postés
76
Date d'inscription
dimanche 10 octobre 2004
Statut
Membre
Dernière intervention
13 juin 2015
-
Hello

Où l'insère t'on ce srcipt ???

Si je le mets dans Private Sub Form_Load() j'ai une erreur ici:

strOldName = objReg.RegRead(strRegKey1)

Merci d votre aide

bye
medelidrissi
Messages postés
180
Date d'inscription
jeudi 21 août 2003
Statut
Membre
Dernière intervention
26 novembre 2007
1 -
Bonjour.

Bon travail, juste une petite question pourquoi tu as utilisé :
Set objRegistry = GetObject("winmgmts:" & _
"{impersonationLevel=Impersonate}!\" & _
strComputer & "\root\default:StdRegProv")
Pour accéder au registre de Windows.

Si tu veux plus de détail sur la manipulation du firewall de xp (sp2) jette un coup d'oeil sur cette merveilleuse source :
http://www.Planet-Source-Code.com/vb/scripts/ShowCode.asp?txtCodeId=56515&lngWId=1

Bonne programmation

medelidrissi

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.