IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

Erreur script VBS - Permission refusée


Sujet :

VBScript

  1. #1
    Nouveau candidat au Club
    Inscrit en
    Décembre 2005
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 1
    Par défaut Erreur script VBS - Permission refusée
    Bonjour à tous,

    Je sollicite votre aide car je bloque...

    J'ai un script VBS que j'utilise en tâche planifié sur mon serveur de données. Il sert à supprimer tous les fichiers d'un répertoire qui sont plus vieux que 7 jours.

    Le script fait ce que je lui demande, pas de soucis là dessus, mais il me marque une erreur:



    Voici le code utilisé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
     
     
     
    'Repertoire ou sont stockes les fichiers 
    DossierSauvegarde = "\\servdonnee\XXX\XXXX" 
     
    'Nombre de jours de conservation des Fichiers 
    AgeMaximalFichiers = "7" 
     
    'Comptage des fichiers effaces 
    NbFichiersEffaces = 0 
    'Nom du Fichier  Log  suivant  La Date  systeme
    LogFile_Date = "FichierLog_" & Day(Now) & "_" & Month(Now) & "_" & Year(Now)
    'Initialisation des objets 
    Set fso = CreateObject("Scripting.FileSystemObject" )
    if not fso.fileExists(LogFile_Date & ".txt") Then
    Set OutPut = fso.CreateTextFile(LogFile_Date & ".txt",8)
    OutPut.WriteLine "*************************************************************************************************"
    OutPut.WriteLine "Nous sommes Le " &  Day(Now) & "/" & Month(Now) & "/" & Year(Now)& " La liste des Fichiers Supprimés a cette heure " & Time & " est :"  
    OutPut.WriteLine "*************************************************************************************************"
    else
    Set OutPut = fso.OpenTextFile(LogFile_Date & ".txt",8)
    OutPut.WriteLine "*************************************************************************************************"
    OutPut.WriteLine "Nous sommes Le " &  Day(Now) & "/" & Month(Now) & "/" & Year(Now)& " La liste des Fichiers Supprimés a cette heure " & Time & " est :" 
    OutPut.WriteLine "*************************************************************************************************"
    end if
    'On verifie que le repertoire de sauvegarde existe 
    If (myName = Winrep = fso.FolderExists(DossierSauvegarde)) = False Then 
        Erreur = MsgBox("Le dossier de sauvegarde est introuvable !" ) 
        Wscript.Quit 
    End If 
     
    'On recupere la date systeme 
    DateSysteme = Date 
     
    'On apelle la fonction d'effacement 
     
    Clean(DossierSauvegarde) 
     
     
    'Fonction d'effacement des fichiers 
    Sub Clean(FolderPath) 
     
    Set Folder = fso.Getfolder(FolderPath) 
     
    'On appelle recursivement la fonction s'il y a des sous dossiers 
     
    Set SubFolder = Folder.SubFolders 
       For Each CurrentFolder in SubFolder 
     
    	If CurrentFolder.Size = 0 Then
         OutPut.WriteLine CurrentFolder.Path & " (Dossier vide)"
         NbDossiersEffaces = NbDossiersEffaces + 1
     
         		If Err.Number = 70 Then ' Si permission refusée
             OutPut.WriteLine CurrentFolder.Path & " (Permission de suppression refusée)"
         		End If
     	  End If
     
    Clean CurrentFolder.Path 
       Next 
     
    'On efface les fichiers dans le dossier courant 
    For Each File In Folder.Files 
     If (DateDiff("d", File.DateLastModified, DateSysteme) > CInt(AgeMaximalFichiers)) Then 
          'On verifie qu'ils ne sont pas en lecture seule 
          If File.Attributes And 1 Then File.Attributes = File.Attributes - 1 
     
    	OutPut.WriteLine File.Path 'Ecrire  le chemin du Fichier Supprimé
                File.Delete() 
                NbFichiersEffaces = NbFichiersEffaces + 1 
            End If 
    Next 
    End Sub
     
     'On efface les dossiers et sous-dossiers vides
     Const pfad = ("\\servdonnee\XXX\XXXX")
     
    Dim Text, Title, index, Txt()
    Dim fso, wsh, i
     
    index = 1
     
    Set wsh = WScript.CreateObject ("WScript.Shell")
     
    Set fso = WScript.CreateObject("Scripting.FileSystemObject") 
     
    RecFolder index, wsh.ExpandEnvironmentStrings(pfad) 
     
    Function RecFolder (idx, pfad) 
     
    Dim fo, fc, i, colFiles, file 
     
    Set fo = fso.GetFolder(pfad) 
    Set fc = fo.SubFolders
    Set colFiles = fo.Files
     
    For Each i in fc 
    Call RecFolder (idx+1, pfad + "\" + i.name) 
    If i.Files.Count = 0 And i.SubFolders.Count = 0 Then 
    Fso.DeleteFolder(pfad + "\" + i.name)
    End if
    Next
    End function
     
    OutPut.WriteLine Cstr(NbFichiersEffaces) + " Fichiers ont été Supprimés !"
    OutPut.WriteLine "*************************************************************************************************"
    Pas de soucis de droits sur le dossier en question. Auriez-vous une idée ?

    Merci par avance
    Images attachées Images attachées  

  2. #2
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 420
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 420
    Par défaut
    Jette un coup d’œil sur ce CODE et modifie-le selon ton besoin.
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

Discussions similaires

  1. ERREUR D’EXÉCUTION 70 : Permission refusée
    Par GOLDINGMAROC dans le forum Excel
    Réponses: 1
    Dernier message: 16/01/2014, 13h09
  2. [XL-2002] Erreur sur Sendkey "permission refusée"
    Par zoumzoum59 dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 15/01/2014, 17h37
  3. script awk permission refusée
    Par vinc-mai dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 25/01/2008, 10h49
  4. Erreur script VBS avec les "dossiers virtuels" Vista
    Par Aquafresh dans le forum Windows Vista
    Réponses: 2
    Dernier message: 04/10/2007, 18h08
  5. erreur script vbs
    Par france38 dans le forum VBScript
    Réponses: 4
    Dernier message: 14/10/2006, 10h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo