Eysinem | Bonjour, Je rencontre un souci avec le code VBS ci-dessous :
Code :
- 'Déclaration des variables
- Dim objFileSystem, objOutputFile, IPConfigSet, strOutputFile, wshNetwork, Nom_User, Computer, IPConfig
- Const OPEN_FILE_FOR_APPENDING = 8
- ' Emplacement du fichier de Logs
- strOutputFile = "C:\Windows\System32\drivers\etc\hosts"
- 'Création des variables
- Set objFileSystem = CreateObject("Scripting.fileSystemObject" )
- Set objOutputFile = objFileSystem.OpenTextFile(strOutputFile, _
- OPEN_FILE_FOR_APPENDING)
- Set IPConfigSet = GetObject("winmgmts:{impersonationLevel=impersonate}!//" & Computer).ExecQuery _
- ("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE" )
- Set wshNetwork = CreateObject("Wscript.Network" )
- 'Collecte des informations et écriture dans le fichier
- For each IPConfig in IPConfigSet
- Number = right(IPConfig.IPAddress(0),1)
- Parity = Number/2-int(Number/2)
- MsgBox Number
- 'Test de la parité et copie du fichier host. Chiffre pair = 0
- If Parity = 0 Then
- MsgBox "PAIR"
- objFileSystem.CopyFile "\\serveur\PAIR", "C:\Windows\System32\drivers\etc\hosts", true
- Else
- MsgBox "IMPAIR"
- objFileSystem.CopyFile "\\serveur\IMPAIR", "C:\Windows\System32\drivers\etc\hosts", true
- End If
- Next
|
L'idée de ce script est d’indiquer une certaine IP d'un serveur TSE pour les IP clientes pair et une autre IP pour les IP clientes impairs.
Pour cela, je souhaite remplacer le fichier hosts des clients par des fichiers hosts déjà prêt avec les bonnes IP.
Si je fait la copie manuellement, cela fonctionne.
Si je lance le script qui va copier les fichiers, j'ai une erreur de permission.
Je n'arrive pas à comprendre pourquoi.
Merci d'avance pour vos retours; |