OVH Cloud OVH Cloud

VBS / Pb de lenteur avec DeleteFolder

2 réponses
Avatar
Kevin Lomax
Bonjour tout le monde,

J'utilise dans un script vbs la fonction suivante :

Sub DeleteAFolder(filespec)
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFolder(filespec)
End Sub

Rien de plus classique, cela fonctionne, mais j'ai des gros pb de
lenteurs.. en effet, le repertoire que j'efface peut contenir plusieurs
Go ( au max 4 pour l'instant ) , cela dure actuellement plus d'une
dizaine de minuite, et je n'ai pas de visu dessus !

Je ne sais pas si quelqu'un a deja rencontré le pb ? ( je precise que le
folder se trouve sur un share reseau ).

N'y a t il pas une autre fonction plus "sauvage" qui evite de passer les
fichiers en revu ( car c'est ce qu'il fait avec DeleteFolder je pense..)

Merci d'avance.

KL

2 réponses

Avatar
Boss Hog
salut,
un composant VB6 s'appuyant sur l'API windows serai peut etre plus efficace
mais comme il sagit
d'un lecteur reseau ??!

regarde aussi avec le shell car tu peut executer des commandes de script et
reprendre la main sans attendre la fin de la commande que tu à lancer.
ca peut etre une sulotion alternative?!.

@+
Boss Hog


"Kevin Lomax" wrote in message
news:
Bonjour tout le monde,

J'utilise dans un script vbs la fonction suivante :

Sub DeleteAFolder(filespec)
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFolder(filespec)
End Sub

Rien de plus classique, cela fonctionne, mais j'ai des gros pb de
lenteurs.. en effet, le repertoire que j'efface peut contenir plusieurs
Go ( au max 4 pour l'instant ) , cela dure actuellement plus d'une
dizaine de minuite, et je n'ai pas de visu dessus !

Je ne sais pas si quelqu'un a deja rencontré le pb ? ( je precise que le
folder se trouve sur un share reseau ).

N'y a t il pas une autre fonction plus "sauvage" qui evite de passer les
fichiers en revu ( car c'est ce qu'il fait avec DeleteFolder je pense..)

Merci d'avance.

KL


Avatar
Kevin Lomax
Merci de ta réponse,

Effectivement, c une bonne idée de reprendre la main apres son
execution, mais le problème c que les instructions suivantes lancent une
copie de fichier dans ce rep, donc ce n'est pas interessant..

En utilisant psexec.exe via un WshShell et en faisant un rd violent c
bcp mieux, mais c pas forcement la solution, je prefererais rester sur
du vbs, et silencieux ;)

KL

Boss Hog <bosshog wrote:
salut,
un composant VB6 s'appuyant sur l'API windows serai peut etre plus efficace
mais comme il sagit
d'un lecteur reseau ??!

regarde aussi avec le shell car tu peut executer des commandes de script et
reprendre la main sans attendre la fin de la commande que tu à lancer.
ca peut etre une sulotion alternative?!.

@+
Boss Hog


"Kevin Lomax" wrote in message
news:

Bonjour tout le monde,

J'utilise dans un script vbs la fonction suivante :

Sub DeleteAFolder(filespec)
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFolder(filespec)
End Sub

Rien de plus classique, cela fonctionne, mais j'ai des gros pb de
lenteurs.. en effet, le repertoire que j'efface peut contenir plusieurs
Go ( au max 4 pour l'instant ) , cela dure actuellement plus d'une
dizaine de minuite, et je n'ai pas de visu dessus !

Je ne sais pas si quelqu'un a deja rencontré le pb ? ( je precise que le
folder se trouve sur un share reseau ).

N'y a t il pas une autre fonction plus "sauvage" qui evite de passer les
fichiers en revu ( car c'est ce qu'il fait avec DeleteFolder je pense..)

Merci d'avance.

KL