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

Access Discussion :

Lire un dossier .zip windows


Sujet :

Access

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 5
    Points : 4
    Points
    4
    Par défaut Lire un dossier .zip windows
    Bjr,

    j'ai une appication qui liste un nombre de fichier et doit par la suite les zipper dans un répertoire donné. Malheureusement, je ne peux utiliser aucune .dll externe au système.

    J'ai trouvé un peu d'infos sur windows XP, apparemment c'est Shell32 permet de lire/crééer/modifier les fichiers zip, mais je ne sais pas du tout comment procéder .

    QQ1 a une idée...
    Merci d'avance, toutes les réponses sont bonnes à prendre.
    JessieM

  2. #2
    Inactif
    Profil pro
    Inscrit en
    Août 2006
    Messages
    219
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Août 2006
    Messages : 219
    Points : 227
    Points
    227
    Par défaut Besoin de plus d'information...
    Pourquoi tu ne peux pas utiliser d'autre .dll
    Tu peux vraiment pas utiliser des références?
    Est ce que tu as le nom des fichiers à zipper ou seulement le nombre?

    Il y a des bonnes faq sur ce site...
    Tu as tu fais une recherche ?

    Alex

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 5
    Points : 4
    Points
    4
    Par défaut détails ...
    Je ne peux utiliser que ce qui est installé sur le poste. Rien d'autre. Cette application sera ensuite installé sur d'autres postes identique à celui que j'utilise. Interdiction de rajouter quoique ce soit sur le poste.
    Donc je dois utiliser la fonction zip de windows.
    J'arrive pour le moment à zipper un fichier (source trouvé sur le net), mais n'est pas encore trouver la fonction pour en zipper plusieurs, ni celle qui me permet de les lire .....
    voici le 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
    Public Sub ZMakeZIPFile(ByVal sZIPFileName, ByVal sFileName)
     
    Dim oShell As Object
    Dim oZip As Object
     
       Open sZIPFileName For Output As #1
     
       Print #1, Chr$(80) & Chr$(75) & Chr$(5) & Chr$(6) & String(18, 0)
     
       Close #1
     
       ' Copy the file in the compressed folder
     
       Set oShell = CreateObject("Shell.Application")
       Set oZip = oShell.NameSpace(sZIPFileName)
     
       oZip.CopyHere sFileName
       oZip.CopyHere "C:\Documents and Settings\l0950588\My Documents\Reflection\En cours\Raccourci vers Cooke2.mdb"
     
       ' Keep script waiting until Compressing is done
     
       Do Until oZip.Items.Count = 1
          DoEvents
       Loop
     
       Set oZip = Nothing
       Set oShell = Nothing
     
    End Sub

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 5
    Points : 4
    Points
    4
    Par défaut détails ... (suite)
    inutile de préciser que la ligne :

    oZip.CopyHere "C:\Documents and Settings\l0950588\My Documents\Reflection\En cours\Raccourci vers Cooke2.mdb"

    n'a aucun effet sur le zip !

  5. #5
    Inactif
    Profil pro
    Inscrit en
    Août 2006
    Messages
    219
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Août 2006
    Messages : 219
    Points : 227
    Points
    227
    Par défaut Quelle est la référence de oZip ?
    J'aimerias faire des test de mon coté, mais je ne sais pas c'est quelle référence oZip tu peux tu me dire les références que tu as ?

    Merci d'avance

  6. #6
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 221
    Points
    11 221
    Par défaut
    Salut,

    voici un bout de code qui traîne sur le forum, de mémoire je crois que c'était SilkyRoad qui l'avait déposé, je crois que c'est une adaptation d'un code VBS. Ce code ne nécessite aucune dll

    il fonctionne sous XP et Vista (Code fonctionne également sous Excel)

    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
    Const ForReading = 1, ForWriting = 2, ForAppending = 8
     
    Dim Source, Destination, MyHex, MyBinary, i
    Dim oShell, oApp, oFolder, oCTF, oFile
    Dim oFileSys
     
    Source = "C:\monDossier\"
    Destination = "C:\MonZip.zip"
     
    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 de la base du fichier zip.
    Set oCTF = oFileSys.CreateTextFile(Destination, True)
    oCTF.Write MyBinary
    oCTF.Close
    Set oCTF = Nothing
     
    Set oApp = CreateObject("Shell.Application")
     
    Set oFolder = oApp.NameSpace(Source)
    If Not oFolder Is Nothing Then _
        oApp.NameSpace(Destination).CopyHere oFolder.Items
     
    'pour l'utilisation en VBS
    '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(Destination, ForAppending, False)
     
        If Err.Number <> 0 Then
            Err.Clear
            'pour l'utilisation en VBS
            'wScript.Sleep 3000
        End If
    Loop
     
    Set oFile = Nothing
    Set oFileSys = Nothing

Discussions similaires

  1. [Oracle 9i]Lire le dossier UNIX d'un directory Oracle
    Par BugFactory dans le forum Oracle
    Réponses: 2
    Dernier message: 03/03/2006, 18h46
  2. [Zip] Comment lire des archives ZIP ?
    Par Paganoni dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 24/01/2006, 00h34
  3. Lire/écrire dans.zip comme si c'était un répertoire
    Par LadyWasky dans le forum Langage
    Réponses: 2
    Dernier message: 25/11/2005, 16h09
  4. Lire un fichier zip
    Par jmjmjm dans le forum Composants VCL
    Réponses: 5
    Dernier message: 08/11/2005, 21h57
  5. Comment lire les résumés/métadonnées Windows ?
    Par cedricgirard dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 18/06/2004, 19h12

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