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 :

Probleme de Zip des fichiers


Sujet :

VBScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 79
    Par défaut Probleme de Zip des fichiers
    BOnjour a tous.

    Je cherche a zipper fichier par fichier en gardant un historique de 3 jours.

    Voici mon code:

    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
    Set FSO = CreateObject("Scripting.FileSystemObject")
       Set objFSO = CreateObject("Scripting.FileSystemObject")
       set folder = FSO.GetFolder ("D:\test")
       Set Dossiers = fso.GetFolder(folder)
       Set fic = Dossiers.Files
       Const ForReading = 1, ForWriting = 2, ForAppending = 8
       Dim folder, MyHex, MyBinary, i
       Dim oShell, oApp, oFolder, oCTF, oFile
       Dim oFileSys
     
      'Boucle qui fait la comparaison avec la date du fichier créé et le nombres de jour des fichiers à zipper
     
       For Each objFile in fic
            Set f = fso.GetFile(objfile)
                If DateDiff("D", objfile.DateLastModified, now) > 4 Then
     
    		MyHex = _
    		Array(80, 75, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
     
    		For i = 0 To UBound(MyHex)
    			MyBinary = MyBinary & Chr(MyHex(i))
    		Next
     
    		Set oShell = CreateObject("WScript.Shell")
    		Set oFileSys = CreateObject("Scripting.FileSystemObject")
     
    		'Creation du zip
    			Set oCTF = oFileSys.CreateTextFile(folder, True)
    			oCTF.Write MyBinary
    			oCTF.Close
    			Set oCTF = Nothing
     
    		Set oApp = CreateObject("Shell.Application")
     
    		Set oFolder = oApp.NameSpace(folder)
    			If Not oFolder Is Nothing Then _
    				oApp.NameSpace(folder).CopyHere oFolder.Items
     
    				wScript.Sleep 5000
     
    				Set oFile = Nothing
    				On Error Resume Next
     
    					Do While (oFile Is Nothing)
    						'Attention: provoque une erreur 70 si un des fichiers à zipper
    						'est toujours ouvert.
    						Set oFile = oFileSys.OpenTextFile(folder, ForAppending, False)
     
    							If Err.Number <> 0 Then
    								Err.Clear
    								wScript.Sleep 3000
    							End If
    					Loop
     
    				Set oFile = Nothing
    				Set oFileSys = Nothing
     
                		end if
        next
    J'ai une erreur qui me dis acces refusé d'ou ca peux venir ?? Ou est ce que jai fait une erreur.

    Merci de me le dire ou de me mettre sur la voie

  2. #2
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    sur qu'elle ligne l'erreur ..?
    dés la premiére utilisation ..?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 79
    Par défaut
    A la ligne 28 caracteres 4 soitpour lui ici ==>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set oCTF = oFileSys.CreateTextFile(folder, True)
    merci

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 79
    Par défaut
    Rebonjour,

    Après avoir farfouiller un peu partout dans le forum j'ai trouvé un code qui fait ce que je veux mais le soucis c'est qu il est en vb6 et je voudrais le transformer en vbscript.
    Pouvez vous maider svp

    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
    Sub ZipFichier()
        Dim oShell As Object, Fso As Object
        Dim i As Long
        Dim Fichier As String, MyBinary As String
        Dim LeZip As Variant
        Dim MyHex As Variant
     
        Fichier = "C:\le classeur.xls"
        LeZip = "C:\Ma sauvegarde.zip"
     
        Set Fso = CreateObject("Scripting.FileSystemObject")
        MyHex = _
            Array(80, 75, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
     
        For i = 0 To UBound(MyHex)
            MyBinary = MyBinary & Chr(MyHex(i))
        Next
     
        With Fso.CreateTextFile(LeZip, True)
            .Write MyBinary
            .Close
        End With
     
        Set oShell = CreateObject("Shell.Application")
        oShell.NameSpace(LeZip).CopyHere (Fichier)
     
        Set oShell = Nothing
    End Sub

  5. #5
    Rédacteur
    Avatar de omen999
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 302
    Par défaut
    vu rapidement, au moins deux choses anormales:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    set folder = FSO.GetFolder ("D:\test")
    ...
    Dim folder, MyHex, MyBinary, i
    redéfinir une variable après l'avoir instanciée n'est pas vraiment une bonne idée...

    d'autre part, tu n'a pas bien vu la syntaxe de la méthode .CreateTextFile
    folder doit être une simple variable chaine et non un objet folder

    la doc de windows script est très bien faite, mais il ne faut pas oublier de la lire
    nomen omen, nemo non omen - Consultez la FAQ VBScript et les cours et tutoriels VBScript
    le plus terrible lorsqu'une voiture renverse un piéton, c'est que ce sont les freins qui hurlent. (ramón)
    pas de questions techniques par mp

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 79
    Par défaut
    Excsue moi je vais peut etre posé une question bete mais ou se toruve la doc window script ^^

    merci

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 79
    Par défaut
    et pour ce qui est du 2 eme code a modifié pour en faire du vbs qui peux m'aider

    merci

  8. #8
    Rédacteur
    Avatar de omen999
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 302
    Par défaut
    lire ce post: http://www.developpez.net/forums/sho...d.php?t=230947

    j'ai relu ton exemple, il est non seulement inexploitable mais il ne contient aucun code capable de zipper quoi que ce soit...
    nomen omen, nemo non omen - Consultez la FAQ VBScript et les cours et tutoriels VBScript
    le plus terrible lorsqu'une voiture renverse un piéton, c'est que ce sont les freins qui hurlent. (ramón)
    pas de questions techniques par mp

Discussions similaires

  1. Probleme de suppression des fichiers excel a partir du VB.NET
    Par l_achraf dans le forum Windows Forms
    Réponses: 1
    Dernier message: 23/10/2008, 18h54
  2. vsftpd suse 10.3. probleme de lising des fichier
    Par lemal1 dans le forum Réseau
    Réponses: 6
    Dernier message: 04/08/2008, 11h44
  3. Probleme de Zip des fichiers
    Par lephyrexian dans le forum VBScript
    Réponses: 25
    Dernier message: 16/01/2007, 10h46
  4. Problème de configuration des fichiers de zone
    Par trattos dans le forum Réseau
    Réponses: 6
    Dernier message: 17/07/2006, 22h31
  5. Réponses: 3
    Dernier message: 11/05/2006, 22h53

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