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
|
option explicit
'Définition de variable
Dim foldername, objfso, objrootfolder, objsubfolder, stroutput
'Demande à l'utilisateur l'emplacement du fichier
foldername = inputbox("Quel dossier voulez-vous scanner ? (C:\)")
'Listage des dossiers et des sous-dossiers
Set objfso = createobject("scripting.filesystemobject")
Set objrootfolder = objfso.getfolder(foldername)
Set objsubfolder = objrootfolder.subfolders
'Boucle de listage
For Each objrootfolder in objsubfolder
stroutput = stroutput & objrootfolder.name
stroutput = stroutput & vbCrLf
Next
'Affichage des dossier à l'écran
msgbox stroutput
'Création d'un fichier texte pour stocker les noms des dossiers
Dim CreateFolder, CreateFile, oFSO, oFolder, oText
CreateFolder = inputbox("Entrez le nom du dossier à créer")
CreateFile = inputbox("Entrez le nom du fichier à créer")
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oFolder = oFSO.CreateFolder("C:\" & CreateFolder)
'Crée le fichier qui contiendra les noms des dossier à partager
Set oText = oFSO.OpenTextFile("C:\" & CreateFolder & "\" & CreateFile ,8,true)
oText.WriteLine(stroutput)
'Définition des variables
Const ForReading = 1, ForWriting = 2
Const FILE_SHARE = 0, MAXIMUM_CONNECTIONS = 25
Dim objWMIService, objNewShare, strComputer, arrTmpLine
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set objNewShare = objWMIService.Get("Win32_Share")
'Ouverture du dossier et création des partages (en boucle jusqu'à la fin du fichier)
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oText = oFSO.OpenTextFile("C:\" & CreateFolder & "\" & CreateFile, ForReading)
Do Until oText.AtEndOfStream
arrTmpLine = Split(oText.ReadLine, vbcrlf)
Wscript.Echo "Partage du répertoire <" & arrTmpLine(0) & "> avec le nom <" & arrTmpLine(1) & ">"
errReturn = objNewShare.Create (arrTmpLine(0), arrTmpLine(1) , FILE_SHARE, MAXIMUM_CONNECTIONS)
Wscript.Echo errReturn
loop
oText.Close |
Partager