Sommaire
Le registre de Windows
Les API Windows
Les fichiers de stratégie
Les fichiers INF
Les lignes de commandes
Les scripts Windows
VBS
WSH
ADSI (WinNT Provider)
Namespace
Domain
User
IADs
Get
GetEx
GetInfo
GetInfoEx
Put
PutEx
SetInfo
IADsPropertyList
GetPropertyItem
Item
Next
PurgePropertyList
PutPropertyItem
Reset
ResetPropertyItem
Skip
IADsUser
ChangePassword
Groups
SetPassword
Group
Computer
LocalGroup
PrintJob
PrintQueue
Service
FileService
FileShare
Resource
Session
WMI
ScriptCenter
Les erreurs Windows
Les trucs et astuces
Télécharger

 

  Les scripts Windows

Hiérarchie des objets de classe WinNT :

Objet de classe Description
Namespace Récipient de plus haut niveau.
Domain Représente un domaine.
User Représente un compte utilisateur du domaine.
Group Représente un groupe global du domaine.
Computer Représente un ordinateur (serveur ou station de travail).
User Représente un compte utilisateur local.
LocalGroup Représente un groupe local.
PrintJob Représente un travail d'impression.
PrintQueue Représente une file d'impression.
Service Représente une application qui s'exécute en tant que service.
FileService Représente le service qui permet d'accèder au système de fichiers.
FileShare Représente un partage de fichiers.
Resource Représente une ressource.
Session Représente une session.

Remarque :

L'exemple ci-dessous illustre l'utilisation de l'objet User :

Option Explicit
On Error Resume Next
DIM WshShell, objDomain, objUser
DIM name, fullname, descript, passw
DIM server, title, datime

datime = "[" & date & " " & time & "] "
server = "//ServerName"
name = "Bill"
fullname = "Bill Brown"
descript = "My favorite user"
passw = "Gateway"
title = "Add User"

Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Popup "Create new user " & name, 5, title, vbOKonly

Set objDomain = GetObject("WinNT:" & server)
If err.number <> 0 Then
	AddLog (datime & "*** Error: " & err.number & " ADSI not supported on " & server)
	WshShell.Popup "*** Error: " & err.number & " ADSI not supported on " & server, 10, title, vbOKonly
	WScript.Quit  ' Sorry, that's the end ...
End if

' Now we try to create the user object and set the properties
Set objUser = objDomain.Create("user", name)
objUser.Description = descript
objUser.FullName = fullname
objUser.SetInfo

If err.number = 0 Then ' Success?
	' Yes, add record to logfile
	AddLog datime & "User " & user & " created on " & server
	' Inform user with a short message (20 seconds)
	WshShell.Popup "User " & name & " created", 10, title, vbOKonly
Else ' some problem ###
	If err.number = -2147022672 then
		' User exists, Add error into logfile
		AddLog datime & "*** Error: User " & name & " already exists"
		' Inform user with a short message (20 seconds)
		WshShell.Popup "*** Error: User " & name & " already exists", 10, title, vbOKonly
	Else
		' Add error into logfile
		AddLog datime & "*** Error: " & err.number & " could not create user " & name
		' Inform user with a short message (20 seconds)
		WshShell.Popup "*** Error: " & err.number & " could not create user " & name, 10, title, vbOKonly
	End if
End if
Set objUser = Nothing
Set objDomain = Nothing
WScript.Quit


Sub AddLog (txt)
' Add a record to the logfile
Const file1 = "C:\NewUserLog.txt" ' Log file name
Const ForAppending = 8 ' Append mode
Dim fso, fi ' object variable
' Creates a FileSystemObject object 
Set fso = CreateObject("Scripting.FileSystemObject")

' open file, force create, if not exists
Set fi = fso.OpenTextFile(file1, ForAppending, true)
fi.WriteLine (txt) 
Set fi = Nothing
End Sub