1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358
|
on error resume next
set obj = CreateObject("Scripting.FileSystemObject")
set objLOG2 = obj.CreateTextFile("C:\Test2\LOG.txt")
'set MonShell=wscript.CreateObject("wscript.shell")
'retourner le nom du script en cours d'exécution
'wscript.echo wscript.ScriptName
'autre façon de retourner le nom du script en cours d'éxécution
'NomScript=wscript.ScriptName
'wscript.echo NomScript
'Récupérer le nom d'un ordinateur
set WshNet=CreateObject("Wscript.NetWork")
Computername=WshNet.ComputerName
wscript.echo "Nom ordinateur :" &Computername
objLOG2.WriteLine "Nom ordinateur :"&Computername
wscript.echo vbcrlf
' récupérer le nom d'utilisateur
strUtilisateur=WshNet.username
wscript.echo "Nom de l'utilisateur : "&strUtilisateur
objLOG2.WriteLine "Nom de l'utilisateur : "&strUtilisateur
'récupérer le nom du script et non pas son chemin complet
NomScript=wscript.ScriptName
wscript.echo "Nom du script :" &NomScript
objLOG2.WriteLine "Nom du script :" &NomScript
wscript.echo vbcrlf
'récupérer chemin complet
sExecutionPath = Replace(WScript.ScriptFullName,"\" & wscript.ScriptName,"")
wscript.echo "Chemin complet du script :" &sExecutionPath
wscript.echo vbcrlf
wscript.echo "Chemin complet du script :" &sExecutionPath
objLOG2.WriteLine "Chemin complet du script :" &sExecutionPath
set objShell=wscript.CreateObject("WScript.Shell")
'appel de la propriété environment de l'objet shell
set objEnvironnement=objShell.Environment("PROCESS")
wscript.echo "affichage du nom du domaine DNS : "
objLOG2.WriteLine "affichage du nom du domaine DNS : "
strDnsDOmaine=objEnvironnement.Item("USERDNSDOMAIN")
wscript.echo strDnsDOmaine
objLOG2.WriteLine strDnsDOmaine
wscript.echo vbcrlf
wscript.Echo "affichage du nom de domaine NEtBIos :"
objLOG2.WriteLine "affichage du nom de domaine NEtBIos :"
strNetBiosDomain=objEnvironnement.Item("USERDOMAIN")
wscript.echo strNetBIosDomain
objLOG2.WriteLine strNetBIosDomain
wscript.echo vbcrlf
wscript.Echo "Inscription du chemin du profil de l'utilisateur :"
objLOG2.WriteLine "Inscription du chemin du profil de l'utilisateur :"
strProfile=objEnvironnement.ITem("USERPROFILE")
wscript.echo strProfile
objLOG2.WriteLine strProfile
wscript.echo vbcrlf
wscript.Echo "INscription du chemin d'accès au répertoire temporaire :"
objLOG2.WriteLine "INscription du chemin d'accès au répertoire temporaire :"
strTemp=objEnvironnement.Item("TEMP")
wscript.Echo strTemp
objLOG2.WriteLine strTemp
wscript.echo vbcrlf
'code pour récupération des variables d'environnement windows
wscript.echo "code pour récupération des variables d'environnement windows :"
objLOG2.WriteLine "code pour récupération des variables d'environnement windows :"
Set WshShellObj = WScript.CreateObject("WScript.Shell")
wscript.echo vbcrlf
wscript.Echo "affichage du nom de l'utilisateur courant :"
objLOG2.WriteLine "affichage du nom de l'utilisateur courant :"
Set WshProcessEnv = WshShellObj.Environment("Process")
WScript.Echo WshProcessEnv("USERNAME")
objLOG2.WriteLine WshProcessEnv("USERNAME")
wscript.echo vbcrlf
wscript.echo "affichage de la variable d'environnement PATH du système :"
objLOG2.WriteLine "affichage de la variable d'environnement PATH du système :"
Set WshProcessEnv = WshShellobj.Environment("Process")
WScript.Echo "PATH = " & WshProcessEnv("PATH")
objLOG2.WriteLine "PATH = " & WshProcessEnv("PATH")
wscript.echo vbcrlf
wscript.echo "affichage des informations sur le processeur :"
objLOG2.WriteLine "affichage des informations sur le processeur :"
Set WshSysEnv = WshShellobj.Environment("System")
WScript.Echo WshSysEnv("PROCESSOR_ARCHITECTURE") & vbCr _
& WshSysEnv("PROCESSOR_IDENTIFIER") & vbCr _
& WshSysEnv("PROCESSOR_LEVEL") & vbCr _
& WshSysEnv("PROCESSOR_REVISION")
objLOG2.WriteLine WshSysEnv("PROCESSOR_ARCHITECTURE") & vbCr _
& WshSysEnv("PROCESSOR_IDENTIFIER") & vbCr _
& WshSysEnv("PROCESSOR_LEVEL") & vbCr _
& WshSysEnv("PROCESSOR_REVISION")
wscript.echo vbcrlf
wscript.Echo "nombre de variables d'environnement dans le type sélectionné :"
Set WshProcessEnv = WshShellobj.Environment("Process")
WScript.Echo WshProcessEnv.Count
wscript.echo vbcrlf
'récupérer chemin complet
sExecutionPath = Replace(WScript.ScriptFullName,"\" & wscript.ScriptName,"")
wscript.echo "Chemin complet du script :" &sExecutionPath
objLOG2.WriteLine "Chemin complet du script :" &sExecutionPath
wscript.echo vbcrlf
'=========================================================================================================================
'code ajouté le 24 novembre 2009
'verbose ou debug permettent d'activer le mode Debug
'verbose = 0 sert pour désactiver ce mode
'verbose = 1 sert pour activer ce mode
'On error resume next
' déclaration de la variable ModeDebug (de debugage)
Dim ModeDebug
' déclaration des objets
Dim objFSO, objLOG
'instanciation des variable
ModeDebug = 0
'===========================================================================================================================
'=============================== Début du script qui sert pour le débugage ===============================================
'===========================================================================================================================
'Vérification que le lot reçu n'est pa vide
set obj=CreateObject("Scripting.FileSystemObject")
set objFolder_1=obj.GetFolder("C:\Livraisons\Package")
if objFolder_1.Size = 0 then
ModeDebug = 1
else
wscript.echo "le lot reçu n'est pas vide"
objLOG2.WriteLine "le lot reçu n'est pas vide"
objLOG.WriteLine "le lot reçu n'est pas vide"
end if
'=====================================================================================================================
'création de l'instance de l'objet de FSO et création du fichier de LOG
set objFSO = CreateObject("Scripting.FileSystemObject")
set objLOG = objFSO.CreateTextFile("C:\Test\LOG.txt")
'set objFic = objFSO.OpenTextFile("C:\Test\fichier.txt")
fncModeDebug "la taille du répertoire est zèro ==> le lot est vide ou l'installation est déjà faite"
wscript.echo vbcrlf
'=====================================================================================================================
function fncModeDebug(Action)
If ModeDebug = 1 Then
Wscript.echo Action
objLOG.WriteLine Action
'objFic.WriteLine Action
if Err <> 0 Then
'echo de la description de l'erreur
wscript.echo vbcrlf
wscript.echo "la source de l'erreur = " &Err.source
wscript.echo "une erreur s'est produite" & "Description :" & Err.description
wscript.echo "le numéro de l'erreur = " &Err.number
'inscription de l'erreur dans le fichier LOG
objLOG.WriteLine "Erreur" & "Description :" & Err.description
objLOG.WriteLine "le numéro de l'erreur =" & Err.number
objLOG.WriteLine "la source de l'erreur =" & Err.source
objLOG2.WriteLine "Erreur" & "Description :" & Err.description
objLOG2.WriteLine "le numéro de l'erreur =" & Err.number
objLOG2.WriteLine "la source de l'erreur =" & Err.source
'Réinitialisation de l'objet Err
Err.Clear
Else
objLOG.WriteLine "Commande exécutée avec succès"
objLOG2.WriteLine "Commande exécutée avec succès"
End If
End If
End Function
'========================================= Fin du script qui sert pour le débugage ===============================
'=========================================================================================================================
'syntaxe de la méthode GetFolder
'créer une instance de l'objet FSO
'set objFSO=CreateObject("Scripting.FileSystemObject")
'set objFolder=objFSO.GetFolder("chemin du répertoire")
'créer une instance de l'objet FSO
set objFSO=CreateObject("Scripting.FileSystemObject")
'syntaxe pour créer un répertoire unitile dans ce cas
'set objFolder=objFSO.CreateFolder("C:\Livraison")
'===================liste des fichiers et des répertoires et sous-répertoire du répertoire Package==============="
Dim oFSO,oFld
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set objFSO = CreateObject("Scripting.FileSystemObject")
stRep = "C:\Livraisons\Package"
'LectRep stRep
if objFSO.FolderExists(stRep) THEN
set objFolders=objFSO.GetFolder("C:\Livraisons\Package")
wscript.echo "connexion au répertoire effectuée :"&objFolders.ParentFolder&"\"&objFolders.Name&""
objLOG2.WriteLine "connexion au répertoire effectuée :"&objFolders.ParentFolder&"\"&objFolders.Name&""
'extraction de la date de la création du répertoire
wscript.echo "Date de création du répertoire :" &objFolders.DateCreated
objLOG2.WriteLine "Date de création du répertoire :" &objFolders.DateCreated
'extraction de la date de dernière modification du répertoire
wscript.echo "Date de la dernière modification du répertoire :" &objFolders.DateLastModified
objLOG2.WriteLine "Date de la dernière modification du répertoire :" &objFolders.DateLastModified
'extraction de la taille du contenu d'un dossier (bytes)
wscript.echo "taille en octets du répertoire :" &objFolders.Size
objLOG2.WriteLine "taille en octets du répertoire :" &objFolders.Size
wscript.echo "Attribut du répertoire :" &objFolders.Attributes
objLOG2.WriteLine "Attribut du répertoire :" &objFolders.Attributes
wscript.echo vbcrlf
set fic2 = objFolders.Files
wscript.echo "----------------liste des fichiers du répertoire " &objFolders.Name& "------------------------"
objLOG2.WriteLine "----------------liste des fichiers du répertoire " &objFolders.Name& "------------------------"
wscript.echo vbcrlf
for each fichiers2 in fic2
wscript.echo ""&fichiers2.Name&" Date (jjmmaa) : " & fichiers2.DateLastModified & " Taille (octet) : " & fichiers2.Size&""
objLOG2.WriteLine ""&fichiers2.Name&" Date (jjmmaa) : " & fichiers2.DateLastModified & " Taille (octet) : " & fichiers2.Size&""
Next
End if
'
'
' Fonction récursive de parcours de répertoire
'
Sub LectRep (stR )
wscript.echo vbcrlf
For each oFld in oFSO.GetFolder(stR).SubFolders
'wscript.echo vbcrlf
Wscript.Echo "--------------- " & oFld.PAth & "-----------------"
objLOG2.WriteLine "--------------- " & oFld.PAth & "-----------------"
wscript.echo vbcrlf
ListeFichier (oFld.PATH)
LectRep oFld.PATH
Next
end sub
'
'
' Listing des fichiers du répertoire
'
Sub ListeFichier (stR)
For each oFl in oFSO.GetFolder(stR).Files
wscript.echo ""&oFl.Name&" Date (jjmmaa) : " & oFl.DateLastModified & " Taille (octet) : " & oFl.Size&""
objLOG2.WriteLine ""&oFl.Name&" Date (jjmmaa) : " & oFl.DateLastModified & " Taille (octet) : " & oFl.Size&""
Next
End sub
wscript.echo vbcrlf
wscript.echo " -------------parcours récursif du répertoire " & objFolders.Name& "---------------"
objLOG2.WriteLine " -------------parcours récursif du répertoire " & objFolders.Name& "---------------"
LectRep stRep
'==================================== fin nouveau code le 26 novembre 2009 ==============================================
'copier le contenu d'un répertoire vers un autre répertoire
'et créer le répertoire cible s'il n'existe pas (y compris l'arborescence)
dim objFSO1,objFSO2,objFSO3,objFSO4
'''''''''''''''''''''''''''''''''''copie de la partie commune''''''''''''''''''''''''''''''''''''''''''''''''
set objFSO=CreateObject("Scripting.FileSystemObject")
set objFolder1=objFSO.GetFolder("C:\Livraisons\Package\DEI")
set MonShell = Wscript.CreateObject("Wscript.Shell")
'les 6 lignes ci-dessous permettent de copier le contenu d'un répertoire vers un autre répertoire
IF objFSO.FolderExists(objFolder1) THEN
objFSO.CopyFolder objFolder1, "C:\HistoriquePackage\DEI" , true
objFSO.CopyFolder objFolder1, "D:\Sites\numero_caisse1\DEI" , true
objFSO.CopyFolder objFolder1, "D:\Sites\numero_caisse2\DEI" , true
objFSO.CopyFolder objFolder1, "D:\Sites\numero_caisse3\DEI" , true
'MonShell.Run "xcopy C:\Livraison1\Package\DEI\*.* C:\HistoriquePackage1\DEI\"
'MonShell.Run "xcopy C:\Livraison1\Package\DEI\*.* D:\Sites\Particuliers1\DEI\"
'MonShell.Run "xcopy C:\Livraison1\Package\DEI\*.* D:\Sites\Particuliers2\DEI\"
'MonShell.Run "xcopy C:\Livraison1\Package\DEI\*.* D:\Sites\Particuliers3\DEI\"
END IF
'''''''''''''''''''''''''''''''''''Copie des parties spécifiques des caisses : caisse1'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'set objFSO=CreateObject("Scripting.FileSystemObject")
set objFolder2=objFSO.GetFolder("C:\Livraisons\Package\numero_caisse1")
IF objFSO.FolderExists(objFolder2) THEN
objFSO.CopyFolder objFolder2, "C:\HistoriquePackage\numero_caisse1" , True
objFSO.CopyFolder objFolder2, "D:\Sites\numero_caisse1\numero_caisse1" , True
'MonShell.Run "xcopy C:\Livraison1\Package\Particuliers1\*.* C:\HistoriquePackage1\Particuliers1\"
'MonShell.Run "xcopy C:\Livraison1\Package\Particuliers1\*.* D:\Sites\Particuliers1\Particuliers1\"
END IF
'''''''''''''''''''''''''''''''''''Copie des parties spécifiques des caisses : caisse2'''''''''''''''''''''''''''''''''''''''''
'set objFSO=CreateObject("Scripting.FilesSystemObject")
set objFolder3=objFSO.GetFolder("C:\Livraisons\Package\numero_caisse2")
IF objFSO.FolderExists(objFolder3) THEN
objFSO.CopyFolder objFolder3, "C:\HistoriquePackage\numero_caisse2" , true
objFSO.CopyFolder objFolder3, "D:\Sites\numero_caisse2\numero_caisse2" , true
'MonShell.Run "xcopy C:\Livraison1\Package\Particuliers1\*.* C:\HistoriquePackage1\Particuliers2\"
'MonShell.Run "xcopy C:\Livraison1\Package\Particuliers1\*.* D:\Sites\Particuliers2\Particuliers2\"
End if
''''''''''''''''''''''''''''''''''copie des partie spécifiques des caisses : caisse3'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'set objFSO=CreateObject("Scripting.FilesSystemObject")
set objFolder4=objFSO.GetFolder("C:\Livraisons\Package\numero_caisse3")
IF objFSO.FolderExists(objFolder4) THEN
objFSO.CopyFolder objFolder4, "C:\HistoriquePackage\numero_caisse3" , true
objFSO.CopyFolder objFolder4, "D:\Sites\numero_caisse3\numero_caisse3" , true
'MonShell.Run "xcopy C:\Livraison1\Package\Particuliers1\*.* C:\HistoriquePackage1\Particuliers3\"
'MonShell.Run "xcopy C:\Livraison1\Package\Particuliers1\*.* D:\Sites\Particuliers3\Particuliers3\"
END IF
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
objFSO.copyFile "C:\Livraisons\Package\*.*" , "C:\HistoriquePackage\" , true
''''''''''''''''''''''''''''''''''''''''''''''''''''
objFSO.DeleteFolder objFolder1
objFSO.DeleteFolder objFolder2
objFSO.DeleteFolder objFolder3
objFSO.DeleteFolder objFolder4
objFSO.DeleteFile "C:\Livraisons\Package\*.*"
set objFSO=Nothing
set objFolder1=Nothing
set objFolder2=Nothing
set objFolder3=Nothing
set objFolder4=Nothing
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' |
Partager