Tout au-dessus sol Les réponses sont précises mais elles ne sont pas définitives.
Si vous essayez d'extraire un fichier zippé dans un dossier temporaire, un dossier qui affiche "Dossier temporaire pour YOURFILE.zip" sera immédiatement créé (dans C: \ Documents and Settings \ USERNAME \ Local Settings \ Temp) pour CHAQUE FICHIER contenu dans votre fichier zip, que vous essayez d'extraire.
C'est vrai, si vous avez 50 fichiers, il créera 50 dossiers dans votre répertoire temporaire.
mais si vous avez 200 fichiers, il arrêtera à 99 et accident indiquant - Le fichier Exists
..
Apparemment, cela ne se produit pas sur Windows 7, avec les contributions que je vue ci-dessus . Mais peu importe, nous pouvons toujours avoir des vérifications. D'accord, c'est ainsi que vous le corrigez.
'========================
'Sub: UnzipFiles
'Language: vbscript
'Usage: UnzipFiles("C:\dir", "extract.zip")
'Definition: UnzipFiles([Directory where zip is located & where files will be extracted], [zip file name])
'========================
Sub UnzipFiles(folder, file)
Dim sa, filesInzip, zfile, fso, i : i = 1
Set sa = CreateObject("Shell.Application")
Set filesInzip=sa.NameSpace(folder&file).items
For Each zfile In filesInzip
If Not fso.FileExists(folder & zfile) Then
sa.NameSpace(folder).CopyHere(zfile), &H100
i = i + 1
End If
If i = 99 Then
zCleanup(file, i)
i = 1
End If
Next
If i > 1 Then
zCleanup(file, i)
End If
fso.DeleteFile(folder&file)
End Sub
'========================
'Sub: zCleanup
'Language: vbscript
'Usage: zCleanup("filename.zip", 4)
'Definition: zCleanup([Filename of Zip previously extracted], [Number of files within zip container])
'========================
Sub zCleanUp(file, count)
'Clean up
Dim i, fso
Set fso = CreateObject("Scripting.FileSystemObject")
For i = 1 To count
If fso.FolderExists(fso.GetSpecialFolder(2) & "\Temporary Directory " & i & " for " & file) = True Then
text = fso.DeleteFolder(fso.GetSpecialFolder(2) & "\Temporary Directory " & i & " for " & file, True)
Else
Exit For
End If
Next
End Sub
Et thats it, copiez et collez ces deux fonctions dans votre programme hébergé vbscript et vous devriez être bon d'aller, sous Windows XP & Windows 7.
Merci!
@ Tester101 Veuillez cocher l'une des réponses en réponse ou répondre vous-même. Merci –