IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
logo

FAQ VBScriptConsultez toutes les FAQ

Nombre d'auteurs : 16, nombre de questions : 108, dernière mise à jour : 2 mars 2019  Ajouter une question

 


Cette FAQ VB Script est le fruit de la collaboration de l'équipe de rédaction et des membres du forum VB.

Aidez-nous à faire vivre cette FAQ en participant au forum Vos contributions VBScript.

Pour toutes questions ou tous problèmes concernant cette FAQ, vous pouvez contacter par MP ThierryAIM ou bbil.

L'équipe de rédaction de Developpez.com vous remercie pour votre participation passée et à venir.

SommaireWMI : Windows Management InstrumentationRéseaux (3)
précédent sommaire suivant
 

Pour Windows Server 2003, XP et supérieur, en utilisant la classe Win32_PingStatus :

Code vb : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
strComputer = InputBox ("Adresse IP ou Url à 'Pinger' ") 
  
On Error Resume Next 
msgbox ("Ping de : " strComputer) 
Set objPing = GetObject("winmgmts:{impersonationLevel=impersonate}!\\").ExecQuery("select * from Win32_PingStatus where address = '" & strComputer & "'") 
For Each objStatus in objPing 
If objStatus.Statuscode = 0 Then 
msgbox ("TEST OK : " & objStatus.Statuscode) 
 else 
msgbox ("TEST NOK : " & objStatus.Statuscode) 
End If 
Next

Pour Windows 2000, en utilisant l'objet Shell de WScript:

Code vb : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
strComputer = "10.169.6.16" 
  
'Ping version Win2000 
Set objShell = CreateObject("WScript.Shell") 
Set objScriptExec = objShell.Exec( _ 
    "ping -n 2 -w 1000 " & strComputer) 
strPingResults = LCase(objScriptExec.StdOut.ReadAll) 
If InStr(strPingResults, "perdus = 0") Then 
        msgbox (strComputer & " repond au ping !") 
Else 
    msgbox (strComputer & " na pas repondu au ping!") 
End If

Mis à jour le 28 février 2007

Le code suivant permet d'afficher l'état des configurations des cartes réseaux d'un PC :

Code vb : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Computer=InputBox ("Nom de l'ordinateur à tester où rien pour celui-ci : ","IpConfig") 
On error resume next  
set IPConfigSet = GetObject("winmgmts:{impersonationLevel=impersonate}!//" & Computer).ExecQuery _  
("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE")  
If Err.Number<>0 Then  
     wscript.echo " - non accessible -"  
Else  
for each IPConfig in IPConfigSet  
     MsgBox " Configuration réseau de l'ordinateur " & computer & vbcrlf & vbcrlf & _  
          " Carte " & vbtab & vbtab & " : " & IPConfig.Description & vbcrlf & _  
          " adresse MAC " & vbtab & " : " & IPConfig.MACAddress & vbcrlf & _  
          " adresse IP " & vbtab & " : " & IPConfig.IPAddress(0) & vbcrlf & _  
          " DNSHostName " & vbtab & " : " & IPConfig.DNSHostName _  
          ,,"Configuration  "  
     Next  
End If

Mis à jour le 28 février 2007 SfJ5Rpw8

En utilisant WshShell et WinNT :

Code VB : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Sub CreateUser(strUserName, sPwd) 
  
	Dim oUser, WSHShell, WshEnv, strComputer, colAccounts, NewPasswordFlag, objGroup 
  
	set WSHShell = CreateObject("WScript.Shell") 
	Set WshEnv = WSHShell.Environment ("Process") 
	strComputer = WshEnv("COMPUTERNAME") 
	Const ADS_UF_DONT_EXPIRE_PASSWD = &H10000 ' Constante définie dans iADS.h 
  
	On Error Resume Next 
	Set colAccounts = GetObject("WinNT://" & strComputer & "") 
	Set oUser = colAccounts.Create("User", strUserName ) 
  
	oUser.SetPassword sPwd 
	NewPasswordFlag = objUserFlags OR ADS_UF_DONT_EXPIRE_PASSWD 
	oUser.Put "userFlags", NewPasswordFlag 
	oUser.SetInfo 
	'Inscription du compte : strUserName DANS le Groupe : Utilisateurs 
	Set oUser = GetObject("WinNT://" & strComputer & "/" & strUserName & ",user" ) 
	Set objGroup = GetObject("WinNT://" & strComputer & "/Utilisateurs,group" ) 
	objGroup.Add(oUser.ADsPath) 
	MsgBox ("Le compte : " & strUserName & " avec le mot de pass : " & sPwd & " a été créé " ) 
END Sub

L'appel se fait simplement ainsi :
Code VB : Sélectionner tout
 Call CreateUser("TOTO", "1234567")
Pour la suppression d'un utilisateur, une manière simple est d'avoir recours à la commande Net tout en utilisant VBScript :
Code VB : Sélectionner tout
1
2
3
Set WS = CreateObject("WScript.Shell") 
cmdDel = "NET localgroup Utilisateurs TOTO /delete" 
WS.Run cmdDel, 0, False

Mis à jour le 10 octobre 2018 l_autodidacte

Proposer une nouvelle réponse sur la FAQ

Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour ça


Réponse à la question

Liens sous la question
précédent sommaire suivant
 

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2024 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.