Avec un script vbs je dois copier un fichier texte dans tout un tas de
répertoires, ces répertoires sont surveillés en taille par Quota Server
donc il est possible que la copie échoue.
Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans
vérifier que le fichier est présent parce qu'il est possible qu'un
fichier du même nom soit déjà présent dans le répertoire?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gilles LAURENT [MVP]
"Youri Ligotmi" a écrit dans le message de news:499c91a2$0$31462$ | Bonjour
Bonjour,
Note: Congés terminés ;-(
| Avec un script vbs je dois copier un fichier texte dans tout un tas de | répertoires, ces répertoires sont surveillés en taille par Quota | Server donc il est possible que la copie échoue. | Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans | vérifier que le fichier est présent parce qu'il est possible qu'un | fichier du même nom soit déjà présent dans le répertoire?
Le script VBScript ci-dessous effectue la copie d'un fichier dans un dossier dont le disque est surveillé par le système de quota de disque natif Microsoft Windows 2003 pour l'utilisateur courant. J'ai fixé à cet utilisateur une limite de 5 Mo. Celui-ci a déjà consommé 4,12 Mo donc la copie du fichier système va échouer. C'est le but non ;-)
--- CodeSnippet --- On Error Resume Next ' gestion des erreurs Set oFs=CreateObject("Scripting.FileSystemObject") oFs.CopyFile "C:WindowsSystem32Kernel32.dll", "D:test", True If Err.Number<> 0 Then WScript.Echo "Oops ! An error occured:0x" & Hex(Err.Number) End If --- CodeSnippet ---
En exécutant ce script, j'obtiens en retour l'erreur 0x80070070
Avec l'outil Win32Error, la traduction de ce code correspond à :
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
"Youri Ligotmi" <yl@free.fr.invalid> a écrit dans le message de
news:499c91a2$0$31462$426a34cc@news.free.fr
| Bonjour
Bonjour,
Note: Congés terminés ;-(
| Avec un script vbs je dois copier un fichier texte dans tout un tas de
| répertoires, ces répertoires sont surveillés en taille par Quota
| Server donc il est possible que la copie échoue.
| Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans
| vérifier que le fichier est présent parce qu'il est possible qu'un
| fichier du même nom soit déjà présent dans le répertoire?
Le script VBScript ci-dessous effectue la copie d'un fichier dans un
dossier dont le disque est surveillé par le système de quota de disque
natif Microsoft Windows 2003 pour l'utilisateur courant. J'ai fixé à cet
utilisateur une limite de 5 Mo. Celui-ci a déjà consommé 4,12 Mo donc la
copie du fichier système va échouer. C'est le but non ;-)
--- CodeSnippet ---
On Error Resume Next ' gestion des erreurs
Set oFs=CreateObject("Scripting.FileSystemObject")
oFs.CopyFile "C:WindowsSystem32Kernel32.dll", "D:test", True
If Err.Number<> 0 Then
WScript.Echo "Oops ! An error occured:0x" & Hex(Err.Number)
End If
--- CodeSnippet ---
En exécutant ce script, j'obtiens en retour l'erreur 0x80070070
Avec l'outil Win32Error, la traduction de ce code correspond à :
"Youri Ligotmi" a écrit dans le message de news:499c91a2$0$31462$ | Bonjour
Bonjour,
Note: Congés terminés ;-(
| Avec un script vbs je dois copier un fichier texte dans tout un tas de | répertoires, ces répertoires sont surveillés en taille par Quota | Server donc il est possible que la copie échoue. | Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans | vérifier que le fichier est présent parce qu'il est possible qu'un | fichier du même nom soit déjà présent dans le répertoire?
Le script VBScript ci-dessous effectue la copie d'un fichier dans un dossier dont le disque est surveillé par le système de quota de disque natif Microsoft Windows 2003 pour l'utilisateur courant. J'ai fixé à cet utilisateur une limite de 5 Mo. Celui-ci a déjà consommé 4,12 Mo donc la copie du fichier système va échouer. C'est le but non ;-)
--- CodeSnippet --- On Error Resume Next ' gestion des erreurs Set oFs=CreateObject("Scripting.FileSystemObject") oFs.CopyFile "C:WindowsSystem32Kernel32.dll", "D:test", True If Err.Number<> 0 Then WScript.Echo "Oops ! An error occured:0x" & Hex(Err.Number) End If --- CodeSnippet ---
En exécutant ce script, j'obtiens en retour l'erreur 0x80070070
Avec l'outil Win32Error, la traduction de ce code correspond à :
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
Youri Ligotmi
Gilles LAURENT [MVP] a écrit :
"Youri Ligotmi" a écrit dans le message de news:499c91a2$0$31462$ | Bonjour
Bonjour,
Note: Congés terminés ;-(
| Avec un script vbs je dois copier un fichier texte dans tout un tas de | répertoires, ces répertoires sont surveillés en taille par Quota | Server donc il est possible que la copie échoue. | Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans | vérifier que le fichier est présent parce qu'il est possible qu'un | fichier du même nom soit déjà présent dans le répertoire?
Le script VBScript ci-dessous effectue la copie d'un fichier dans un dossier dont le disque est surveillé par le système de quota de disque natif Microsoft Windows 2003 pour l'utilisateur courant. J'ai fixé à cet utilisateur une limite de 5 Mo. Celui-ci a déjà consommé 4,12 Mo donc la copie du fichier système va échouer. C'est le but non ;-)
--- CodeSnippet --- On Error Resume Next ' gestion des erreurs Set oFs=CreateObject("Scripting.FileSystemObject") oFs.CopyFile "C:WindowsSystem32Kernel32.dll", "D:test", True If Err.Number<> 0 Then WScript.Echo "Oops ! An error occured:0x" & Hex(Err.Number) End If --- CodeSnippet ---
En exécutant ce script, j'obtiens en retour l'erreur 0x80070070
Avec l'outil Win32Error, la traduction de ce code correspond à :
Ca marche terrible, pas besoin de rentrer dans le détail du type d'erreur: je journalise les erreurs et je compare ça avec les répertoires bloqués par QS. Merci pour votre aide, pas simple de passer du batch au vb...
YL
Gilles LAURENT [MVP] a écrit :
"Youri Ligotmi" <yl@free.fr.invalid> a écrit dans le message de
news:499c91a2$0$31462$426a34cc@news.free.fr
| Bonjour
Bonjour,
Note: Congés terminés ;-(
| Avec un script vbs je dois copier un fichier texte dans tout un tas de
| répertoires, ces répertoires sont surveillés en taille par Quota
| Server donc il est possible que la copie échoue.
| Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans
| vérifier que le fichier est présent parce qu'il est possible qu'un
| fichier du même nom soit déjà présent dans le répertoire?
Le script VBScript ci-dessous effectue la copie d'un fichier dans un
dossier dont le disque est surveillé par le système de quota de disque
natif Microsoft Windows 2003 pour l'utilisateur courant. J'ai fixé à cet
utilisateur une limite de 5 Mo. Celui-ci a déjà consommé 4,12 Mo donc la
copie du fichier système va échouer. C'est le but non ;-)
--- CodeSnippet ---
On Error Resume Next ' gestion des erreurs
Set oFs=CreateObject("Scripting.FileSystemObject")
oFs.CopyFile "C:WindowsSystem32Kernel32.dll", "D:test", True
If Err.Number<> 0 Then
WScript.Echo "Oops ! An error occured:0x" & Hex(Err.Number)
End If
--- CodeSnippet ---
En exécutant ce script, j'obtiens en retour l'erreur 0x80070070
Avec l'outil Win32Error, la traduction de ce code correspond à :
Ca marche terrible, pas besoin de rentrer dans le détail du type
d'erreur: je journalise les erreurs et je compare ça avec les
répertoires bloqués par QS.
Merci pour votre aide, pas simple de passer du batch au vb...
"Youri Ligotmi" a écrit dans le message de news:499c91a2$0$31462$ | Bonjour
Bonjour,
Note: Congés terminés ;-(
| Avec un script vbs je dois copier un fichier texte dans tout un tas de | répertoires, ces répertoires sont surveillés en taille par Quota | Server donc il est possible que la copie échoue. | Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans | vérifier que le fichier est présent parce qu'il est possible qu'un | fichier du même nom soit déjà présent dans le répertoire?
Le script VBScript ci-dessous effectue la copie d'un fichier dans un dossier dont le disque est surveillé par le système de quota de disque natif Microsoft Windows 2003 pour l'utilisateur courant. J'ai fixé à cet utilisateur une limite de 5 Mo. Celui-ci a déjà consommé 4,12 Mo donc la copie du fichier système va échouer. C'est le but non ;-)
--- CodeSnippet --- On Error Resume Next ' gestion des erreurs Set oFs=CreateObject("Scripting.FileSystemObject") oFs.CopyFile "C:WindowsSystem32Kernel32.dll", "D:test", True If Err.Number<> 0 Then WScript.Echo "Oops ! An error occured:0x" & Hex(Err.Number) End If --- CodeSnippet ---
En exécutant ce script, j'obtiens en retour l'erreur 0x80070070
Avec l'outil Win32Error, la traduction de ce code correspond à :
Ca marche terrible, pas besoin de rentrer dans le détail du type d'erreur: je journalise les erreurs et je compare ça avec les répertoires bloqués par QS. Merci pour votre aide, pas simple de passer du batch au vb...
YL
Gilles LAURENT [MVP]
"Youri Ligotmi" a écrit dans le message de news:49a00df4$0$5134$ | Merci | | Ca marche terrible, pas besoin de rentrer dans le détail du type | d'erreur: je journalise les erreurs et je compare ça avec les | répertoires bloqués par QS. | Merci pour votre aide, pas simple de passer du batch au vb...
Merci pour ce rapide retour ! N'hésitez pas à revenir vers nous.
<HS> Lors de mes tests de quota, j'ai abimé mon serveur 2003 => fausse manip :-( Je vous rassure, tout est maintenant en ordre ! Ouf ;-) <HS>
Note: HS=Hors Sujet ! Et non pas Hors Service ;-)
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
"Youri Ligotmi" <yl@free.fr.invalid> a écrit dans le message de
news:49a00df4$0$5134$426a34cc@news.free.fr
| Merci
|
| Ca marche terrible, pas besoin de rentrer dans le détail du type
| d'erreur: je journalise les erreurs et je compare ça avec les
| répertoires bloqués par QS.
| Merci pour votre aide, pas simple de passer du batch au vb...
Merci pour ce rapide retour !
N'hésitez pas à revenir vers nous.
<HS>
Lors de mes tests de quota, j'ai abimé mon serveur 2003
=> fausse manip :-(
Je vous rassure, tout est maintenant en ordre ! Ouf ;-)
<HS>
Note: HS=Hors Sujet ! Et non pas Hors Service ;-)
--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
"Youri Ligotmi" a écrit dans le message de news:49a00df4$0$5134$ | Merci | | Ca marche terrible, pas besoin de rentrer dans le détail du type | d'erreur: je journalise les erreurs et je compare ça avec les | répertoires bloqués par QS. | Merci pour votre aide, pas simple de passer du batch au vb...
Merci pour ce rapide retour ! N'hésitez pas à revenir vers nous.
<HS> Lors de mes tests de quota, j'ai abimé mon serveur 2003 => fausse manip :-( Je vous rassure, tout est maintenant en ordre ! Ouf ;-) <HS>
Note: HS=Hors Sujet ! Et non pas Hors Service ;-)
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
jbongran
"Youri Ligotmi" a écrit dans le message de news:499c91a2$0$31462$
Bonjour
Avec un script vbs je dois copier un fichier texte dans tout un tas de répertoires, ces répertoires sont surveillés en taille par Quota Server donc il est possible que la copie échoue. Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans vérifier que le fichier est présent parce qu'il est possible qu'un fichier du même nom soit déjà présent dans le répertoire?
Merci d'avance
YL
Créer un fonction qui prendra trois paramètres: le fichier source, le chemin cible, le nombre d'erreurs. Appeler la fonction avec un compteur d'erreur a 0 En début de fonction mettre un On Error Resume Next et positionner la valeur de la fonction sur faux
Evaluer le compteur d'erreur afin d'éviter d'avoir une boucle sans fin en cas d'erreur If intCountError > 10 Then Exit Function Effectuer la copie en utilisant le fso NomFunction = False Evaluer le code d'erreur par quelque chose du genre: If Err.Number <> 0 Then intCountError = intCountError +1 Err.Clear ' Mettre une pause 2 sec WScript.Sleep 2000 ' Rappeler la fonction avec les paramètres et le compteur d'erreur Else NomFunction = True Exit Function End If
En fin c'est une idée, pas un code complet ;-) N'hésites pas si ce n'était pas clair
"Youri Ligotmi" <yl@free.fr.invalid> a écrit dans le message de
news:499c91a2$0$31462$426a34cc@news.free.fr...
Bonjour
Avec un script vbs je dois copier un fichier texte dans tout un tas de
répertoires, ces répertoires sont surveillés en taille par Quota Server
donc il est possible que la copie échoue.
Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans vérifier
que le fichier est présent parce qu'il est possible qu'un fichier du même
nom soit déjà présent dans le répertoire?
Merci d'avance
YL
Créer un fonction qui prendra trois paramètres: le fichier source, le chemin
cible, le nombre d'erreurs.
Appeler la fonction avec un compteur d'erreur a 0
En début de fonction mettre un On Error Resume Next
et positionner la valeur de la fonction sur faux
Evaluer le compteur d'erreur afin d'éviter d'avoir une boucle sans fin en
cas d'erreur
If intCountError > 10 Then Exit Function
Effectuer la copie en utilisant le fso
NomFunction = False
Evaluer le code d'erreur par quelque chose du genre:
If Err.Number <> 0 Then
intCountError = intCountError +1
Err.Clear
' Mettre une pause 2 sec
WScript.Sleep 2000
' Rappeler la fonction avec les paramètres et le compteur d'erreur
Else
NomFunction = True
Exit Function
End If
En fin c'est une idée, pas un code complet ;-)
N'hésites pas si ce n'était pas clair
"Youri Ligotmi" a écrit dans le message de news:499c91a2$0$31462$
Bonjour
Avec un script vbs je dois copier un fichier texte dans tout un tas de répertoires, ces répertoires sont surveillés en taille par Quota Server donc il est possible que la copie échoue. Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans vérifier que le fichier est présent parce qu'il est possible qu'un fichier du même nom soit déjà présent dans le répertoire?
Merci d'avance
YL
Créer un fonction qui prendra trois paramètres: le fichier source, le chemin cible, le nombre d'erreurs. Appeler la fonction avec un compteur d'erreur a 0 En début de fonction mettre un On Error Resume Next et positionner la valeur de la fonction sur faux
Evaluer le compteur d'erreur afin d'éviter d'avoir une boucle sans fin en cas d'erreur If intCountError > 10 Then Exit Function Effectuer la copie en utilisant le fso NomFunction = False Evaluer le code d'erreur par quelque chose du genre: If Err.Number <> 0 Then intCountError = intCountError +1 Err.Clear ' Mettre une pause 2 sec WScript.Sleep 2000 ' Rappeler la fonction avec les paramètres et le compteur d'erreur Else NomFunction = True Exit Function End If
En fin c'est une idée, pas un code complet ;-) N'hésites pas si ce n'était pas clair
Youri Ligotmi
jbongran a écrit :
"Youri Ligotmi" a écrit dans le message de news:499c91a2$0$31462$
Bonjour
Avec un script vbs je dois copier un fichier texte dans tout un tas de répertoires, ces répertoires sont surveillés en taille par Quota Server donc il est possible que la copie échoue. Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans vérifier que le fichier est présent parce qu'il est possible qu'un fichier du même nom soit déjà présent dans le répertoire?
Merci d'avance
YL
Créer un fonction qui prendra trois paramètres: le fichier source, le chemin cible, le nombre d'erreurs. Appeler la fonction avec un compteur d'erreur a 0 En début de fonction mettre un On Error Resume Next et positionner la valeur de la fonction sur faux
Evaluer le compteur d'erreur afin d'éviter d'avoir une boucle sans fin en cas d'erreur If intCountError > 10 Then Exit Function Effectuer la copie en utilisant le fso NomFunction = False Evaluer le code d'erreur par quelque chose du genre: If Err.Number <> 0 Then intCountError = intCountError +1 Err.Clear ' Mettre une pause 2 sec WScript.Sleep 2000 ' Rappeler la fonction avec les paramètres et le compteur d'erreur Else NomFunction = True Exit Function End If
En fin c'est une idée, pas un code complet ;-) N'hésites pas si ce n'était pas clair
Merci, mais j'ai pas tout compris, notamment l'intérêt de la variable 'NomFonction'. Je m'en suis sorti avec la méthode proposée par Gilles Laurent. Merci encore
jbongran a écrit :
"Youri Ligotmi" <yl@free.fr.invalid> a écrit dans le message de
news:499c91a2$0$31462$426a34cc@news.free.fr...
Bonjour
Avec un script vbs je dois copier un fichier texte dans tout un tas de
répertoires, ces répertoires sont surveillés en taille par Quota
Server donc il est possible que la copie échoue.
Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans
vérifier que le fichier est présent parce qu'il est possible qu'un
fichier du même nom soit déjà présent dans le répertoire?
Merci d'avance
YL
Créer un fonction qui prendra trois paramètres: le fichier source, le
chemin cible, le nombre d'erreurs.
Appeler la fonction avec un compteur d'erreur a 0
En début de fonction mettre un On Error Resume Next
et positionner la valeur de la fonction sur faux
Evaluer le compteur d'erreur afin d'éviter d'avoir une boucle sans fin
en cas d'erreur
If intCountError > 10 Then Exit Function
Effectuer la copie en utilisant le fso
NomFunction = False
Evaluer le code d'erreur par quelque chose du genre:
If Err.Number <> 0 Then
intCountError = intCountError +1
Err.Clear
' Mettre une pause 2 sec
WScript.Sleep 2000
' Rappeler la fonction avec les paramètres et le compteur d'erreur
Else
NomFunction = True
Exit Function
End If
En fin c'est une idée, pas un code complet ;-)
N'hésites pas si ce n'était pas clair
Merci, mais j'ai pas tout compris, notamment l'intérêt de la variable
'NomFonction'.
Je m'en suis sorti avec la méthode proposée par Gilles Laurent.
Merci encore
"Youri Ligotmi" a écrit dans le message de news:499c91a2$0$31462$
Bonjour
Avec un script vbs je dois copier un fichier texte dans tout un tas de répertoires, ces répertoires sont surveillés en taille par Quota Server donc il est possible que la copie échoue. Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans vérifier que le fichier est présent parce qu'il est possible qu'un fichier du même nom soit déjà présent dans le répertoire?
Merci d'avance
YL
Créer un fonction qui prendra trois paramètres: le fichier source, le chemin cible, le nombre d'erreurs. Appeler la fonction avec un compteur d'erreur a 0 En début de fonction mettre un On Error Resume Next et positionner la valeur de la fonction sur faux
Evaluer le compteur d'erreur afin d'éviter d'avoir une boucle sans fin en cas d'erreur If intCountError > 10 Then Exit Function Effectuer la copie en utilisant le fso NomFunction = False Evaluer le code d'erreur par quelque chose du genre: If Err.Number <> 0 Then intCountError = intCountError +1 Err.Clear ' Mettre une pause 2 sec WScript.Sleep 2000 ' Rappeler la fonction avec les paramètres et le compteur d'erreur Else NomFunction = True Exit Function End If
En fin c'est une idée, pas un code complet ;-) N'hésites pas si ce n'était pas clair
Merci, mais j'ai pas tout compris, notamment l'intérêt de la variable 'NomFonction'. Je m'en suis sorti avec la méthode proposée par Gilles Laurent. Merci encore
jbongran
"Youri Ligotmi" a écrit dans le message de news:49a2fc1d$0$29450$
jbongran a écrit :
"Youri Ligotmi" a écrit dans le message de news:499c91a2$0$31462$
Bonjour
Avec un script vbs je dois copier un fichier texte dans tout un tas de répertoires, ces répertoires sont surveillés en taille par Quota Server donc il est possible que la copie échoue. Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans vérifier que le fichier est présent parce qu'il est possible qu'un fichier du même nom soit déjà présent dans le répertoire?
Merci d'avance
YL
Créer un fonction qui prendra trois paramètres: le fichier source, le chemin cible, le nombre d'erreurs. Appeler la fonction avec un compteur d'erreur a 0 En début de fonction mettre un On Error Resume Next et positionner la valeur de la fonction sur faux
Evaluer le compteur d'erreur afin d'éviter d'avoir une boucle sans fin en cas d'erreur If intCountError > 10 Then Exit Function Effectuer la copie en utilisant le fso NomFunction = False Evaluer le code d'erreur par quelque chose du genre: If Err.Number <> 0 Then intCountError = intCountError +1 Err.Clear ' Mettre une pause 2 sec WScript.Sleep 2000 ' Rappeler la fonction avec les paramètres et le compteur d'erreur Else NomFunction = True Exit Function End If
En fin c'est une idée, pas un code complet ;-) N'hésites pas si ce n'était pas clair
Merci, mais j'ai pas tout compris, notamment l'intérêt de la variable 'NomFonction'. Je m'en suis sorti avec la méthode proposée par Gilles Laurent. Merci encore
Bonjour Youri, En fait, et après avoir lu la réponse de Gilles et rerelu ta question, je pense que c'est moi qui n'avait pas tout compris ;-) Pour la variable NomFonction, voici un exemple:
Function MaFunction(MonParametre) MaFunction = False ' On positionne la valeur de retour de la fonction sur faux au départ If MonParametre > 1 Then MaFunction = True 'dans le cas ou MonParametre est superieur a 1 la fonction retourne vrai End If End Function
Cela peut être utile dans les fonctions qui ont beaucoup de conditions et évite de donner pour chacun des tests la valeur de retour, donc économise de la frappe clavier...
"Youri Ligotmi" <yl@free.fr.invalid> a écrit dans le message de
news:49a2fc1d$0$29450$426a74cc@news.free.fr...
jbongran a écrit :
"Youri Ligotmi" <yl@free.fr.invalid> a écrit dans le message de
news:499c91a2$0$31462$426a34cc@news.free.fr...
Bonjour
Avec un script vbs je dois copier un fichier texte dans tout un tas de
répertoires, ces répertoires sont surveillés en taille par Quota Server
donc il est possible que la copie échoue.
Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans
vérifier que le fichier est présent parce qu'il est possible qu'un
fichier du même nom soit déjà présent dans le répertoire?
Merci d'avance
YL
Créer un fonction qui prendra trois paramètres: le fichier source, le
chemin cible, le nombre d'erreurs.
Appeler la fonction avec un compteur d'erreur a 0
En début de fonction mettre un On Error Resume Next
et positionner la valeur de la fonction sur faux
Evaluer le compteur d'erreur afin d'éviter d'avoir une boucle sans fin en
cas d'erreur
If intCountError > 10 Then Exit Function
Effectuer la copie en utilisant le fso
NomFunction = False
Evaluer le code d'erreur par quelque chose du genre:
If Err.Number <> 0 Then
intCountError = intCountError +1
Err.Clear
' Mettre une pause 2 sec
WScript.Sleep 2000
' Rappeler la fonction avec les paramètres et le compteur d'erreur
Else
NomFunction = True
Exit Function
End If
En fin c'est une idée, pas un code complet ;-)
N'hésites pas si ce n'était pas clair
Merci, mais j'ai pas tout compris, notamment l'intérêt de la variable
'NomFonction'.
Je m'en suis sorti avec la méthode proposée par Gilles Laurent.
Merci encore
Bonjour Youri,
En fait, et après avoir lu la réponse de Gilles et rerelu ta question, je
pense que c'est moi qui n'avait pas tout compris ;-)
Pour la variable NomFonction, voici un exemple:
Function MaFunction(MonParametre)
MaFunction = False ' On positionne la valeur de retour de la fonction
sur faux au départ
If MonParametre > 1 Then
MaFunction = True 'dans le cas ou MonParametre est superieur a 1 la
fonction retourne vrai
End If
End Function
Cela peut être utile dans les fonctions qui ont beaucoup de conditions et
évite de donner pour chacun des tests la valeur de retour, donc économise de
la frappe clavier...
"Youri Ligotmi" a écrit dans le message de news:49a2fc1d$0$29450$
jbongran a écrit :
"Youri Ligotmi" a écrit dans le message de news:499c91a2$0$31462$
Bonjour
Avec un script vbs je dois copier un fichier texte dans tout un tas de répertoires, ces répertoires sont surveillés en taille par Quota Server donc il est possible que la copie échoue. Comment peut-on diagnostiquer ça en vbs (genre errorlevel), sans vérifier que le fichier est présent parce qu'il est possible qu'un fichier du même nom soit déjà présent dans le répertoire?
Merci d'avance
YL
Créer un fonction qui prendra trois paramètres: le fichier source, le chemin cible, le nombre d'erreurs. Appeler la fonction avec un compteur d'erreur a 0 En début de fonction mettre un On Error Resume Next et positionner la valeur de la fonction sur faux
Evaluer le compteur d'erreur afin d'éviter d'avoir une boucle sans fin en cas d'erreur If intCountError > 10 Then Exit Function Effectuer la copie en utilisant le fso NomFunction = False Evaluer le code d'erreur par quelque chose du genre: If Err.Number <> 0 Then intCountError = intCountError +1 Err.Clear ' Mettre une pause 2 sec WScript.Sleep 2000 ' Rappeler la fonction avec les paramètres et le compteur d'erreur Else NomFunction = True Exit Function End If
En fin c'est une idée, pas un code complet ;-) N'hésites pas si ce n'était pas clair
Merci, mais j'ai pas tout compris, notamment l'intérêt de la variable 'NomFonction'. Je m'en suis sorti avec la méthode proposée par Gilles Laurent. Merci encore
Bonjour Youri, En fait, et après avoir lu la réponse de Gilles et rerelu ta question, je pense que c'est moi qui n'avait pas tout compris ;-) Pour la variable NomFonction, voici un exemple:
Function MaFunction(MonParametre) MaFunction = False ' On positionne la valeur de retour de la fonction sur faux au départ If MonParametre > 1 Then MaFunction = True 'dans le cas ou MonParametre est superieur a 1 la fonction retourne vrai End If End Function
Cela peut être utile dans les fonctions qui ont beaucoup de conditions et évite de donner pour chacun des tests la valeur de retour, donc économise de la frappe clavier...