![69304](/images/members/profile_male_64x64.png)
69304
29.09.2008, aktualisiert am 01.10.2008
VB2008 - Backup eines kopletten Ordners inkl Subdirs - Zip und Dateiname aktuelles Datum
Hallo!
Ich bin gerade dabei ein VB-Command-Skript zu schreiben, was folgendes machen soll:
- Vorgegebenes Verzeichnis (inklusive Unterverzeichnisse) als Zip packen
- Dateiname des Zips soll ein vorgegebener String + Datum sein (z.B.: firma_20080929.zip)
- Zip soll an eine bestimmte Stelle kopiert werden (z.B.: C:\Backup\firma_20080929.zip)
An sich kein Problem - aber wie funktionier das mit dem Zip?
Gibts ja irgendwelche Routinen, oder muss ich es über ein externes Programm machen? Eigentlich hat ja Windows XP eine eingebaute Zip-Funktion, kann man die irgedwie nutzen?
mfg,
René.
Ich bin gerade dabei ein VB-Command-Skript zu schreiben, was folgendes machen soll:
- Vorgegebenes Verzeichnis (inklusive Unterverzeichnisse) als Zip packen
- Dateiname des Zips soll ein vorgegebener String + Datum sein (z.B.: firma_20080929.zip)
- Zip soll an eine bestimmte Stelle kopiert werden (z.B.: C:\Backup\firma_20080929.zip)
An sich kein Problem - aber wie funktionier das mit dem Zip?
Gibts ja irgendwelche Routinen, oder muss ich es über ein externes Programm machen? Eigentlich hat ja Windows XP eine eingebaute Zip-Funktion, kann man die irgedwie nutzen?
mfg,
René.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 98035
Url: https://administrator.de/forum/vb2008-backup-eines-kopletten-ordners-inkl-subdirs-zip-und-dateiname-aktuelles-datum-98035.html
Ausgedruckt am: 16.02.2025 um 18:02 Uhr
12 Kommentare
Neuester Kommentar
Du kannst zusätzlich das Programm "GZIP" (http://www.gzip.org/) benutzen.
Hierbei müssen lediglich die enthaltenen .exe-Dateien ("gunzip.exe", "gzip.exe", "zcat.exe") in das Verzeichnis
"C:\WINDOWS\" (%windir%) kopiert/verschoben werden.
Dann kannst Du es per Kommandozeile aufrufen, bzw. in Deinem Script benutzen.
Optionen kannst Du per Manpage beziehungsweise "gzip -h".
Benutze das ganze für ein Windows-Logrotate und es funktioniert super.
Hierbei müssen lediglich die enthaltenen .exe-Dateien ("gunzip.exe", "gzip.exe", "zcat.exe") in das Verzeichnis
"C:\WINDOWS\" (%windir%) kopiert/verschoben werden.
Dann kannst Du es per Kommandozeile aufrufen, bzw. in Deinem Script benutzen.
Optionen kannst Du per Manpage beziehungsweise "gzip -h".
Benutze das ganze für ein Windows-Logrotate und es funktioniert super.
Noch als Ergänzung: Nur mit Bordmitteln (ab XP) sollte es auch gehen: Natively zipping Files in VB.net
Grüße
bastla
Grüße
bastla
Hallo rbrixel!
Inzwischen habe ich es selbst getestet, und bei mir funktioniert es so für den Ordner "C:\lasernet\Huber100":
Grüße
bastla
Inzwischen habe ich es selbst getestet, und bei mir funktioniert es so für den Ordner "C:\lasernet\Huber100":
Private Sub CreateZipFile(ByVal Filename As String)
Dim Encoder As New System.Text.ASCIIEncoding
Dim Header As String = "PK" & Chr(5) & Chr(6)
Header = Header.PadRight(22, Chr(0))
My.Computer.FileSystem.WriteAllBytes(Filename, Encoder.GetBytes(Header), False)
End Sub
Private Sub ZipFile(ByVal Input As String, ByVal Filename As String)
Dim Shell As New Shell32.Shell
CreateZipFile(Filename)
Shell.NameSpace(Filename).CopyHere(Input)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim ZipInput As String= "C:\lasernet\Huber100"
Dim ZipDateiname As String = "C:\lasernet\huber100_20081001.zip"
ZipFile(ZipInput, ZipDateiname)
MsgBox("Datei " & ZipDateiname & " erstellt.")
End Sub
bastla