Lister les sous dossier d'un dossier partagé sur le réseau

Le
Julius
Bonjour,

je cherche à lister les sous dossiers d'un répertoire partagé sur le réseau
(de type: \monserveurmondossier) avec un petit script VBS.

j'ai exploré la piste FileSystemObject, mais elle ne fonctionne qu'en local :

Sub ListeLesDossiers(dossier)
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(dossier)
Set colSubFolder = objFolder.Subfolders
dim objSubFolder

Chaine = Chaine & "Parcours de : " & dossier & chr(13)
for each objSubFolder in colSubFolder
Chaine = Chaine & objSubFolder.name & chr(13)
Next
Msgbox(chaine)
End Sub

Fonctionne bien si je passe en paramètre, par exempe "D:temp", mais pas
"\SRV001PARTAGE"


j'ai exploré WMI, mais j'ai un message d'erreur

Sub ListeDossier(strComputer,dossier)

dim objFolder
Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator")
Set objSWbemServices = objSWbemLocator.ConnectServer(strComputer, _
"rootcimv2", _
"mondomaineadministrateur", _
"*****", _
"MS_409", _
"ntlmdomain:" + mondomaine)

Set colSubfolders = objSWbemServices.ExecQuery _
("ASSOCIATORS OF {Win32_Directory.Name='\SRV001PARTAGE'} " _
& "Where AssocClass = Win32_Subdirectory " _
& "ResultRole = PartComponent")

For Each objFolder in colSubfolders
Chaine = Chaine & " " & objFolder.Name & chr(13)
Next
End Sub

(bon, pour l'instant, je ne me sert pas des variables passées en paramètres,
j'ai mis le nom du dossier en dur. Je changerai ça si je trouve une solution
à mon problème !!!)

Quelqu'un a déjà essayé de fiare ça ?
Avez vous réussi, ou avez vous des pistes ?

merci pour votre aide !

Julien
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Lotre
Le #18833771
Bonsoir,

Je suis très surpris !!!

J'utilise en production plusieurs VBS pour des scripts de GPO
et, certains accèdent à des partages
pour y écrire, y créer si nécessaire des ss-répertoires, etc...
Bon, je n'ai peut être jamais utilisé la méthode Subfolders
du FSO
( je suis chez moi...) ......

Quoi qu'il en soit, ceci fonctionne :

Chemin = "\SRV001PARTAGE"

Set SHW = Wscript.CreateObject(_
"shell.application")

Set oFolder = SHW.NameSpace(Chemin)
Set oFolderItems = oFolder.Items()
Msg = "Sous dossiers de " & Chemin
Msg = Msg & VbCrLf & _
" "
For each oFolderItem in oFolderItems
If oFolderItem.IsFolder Then
Msg = Msg & VBCRLF & _
oFolderItem.Name & " : " _
& oFolderItem.Path
End If
Next

Msg = Msg & VbCrLf & " "

Msgbox Msg

HB
Méta-MCI (MVP)
Le #18842141
Bonsoir !

Est-ce qu'un :
DIR /A:D \monserveurmondossier
ne suffirait pas ?

--
@-salutations
--
Michel Claveau
Publicité
Poster une réponse
Anonyme