|
zip Datei per VBA erstellen
|
| Autor |
Nachricht |
christian313
Im Profil kannst Du frei den Rang ändern
Verfasst am: 27. Jun 2006, 09:57 Rufname:
|
|
| |
|
Hallo Leute,
folgende Frage: ich würde gerne zur Sicherung der DB automatisch im Hintergrund ein zip-Archiv aus der DB erstellen. Das Ganze sollte möglichst ganz im Hintergrund ablaufen, so dass der User nichts davon mitbekommt. Geht so was?
lg,
Christian
|
|
Willi Wipp
Moderator

Verfasst am: 27. Jun 2006, 12:09 Rufname:
Wohnort: Raum Wiesbaden
|
| |
| |
|
Hi christian313,
vielleicht waere Backup-Lösung für tägliche Sicherung, Ausgabe wahlweise auch als Zip-Datei ein Ansatz?
_________________ Eine kurze Rueckmeldung waere nett
SL Willi Wipp
(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Zuletzt bearbeitet von Willi Wipp am 14. Feb 2007, 11:37, insgesamt einmal bearbeitet |
|
christian313
Im Profil kannst Du frei den Rang ändern
Verfasst am: 27. Jun 2006, 12:18 Rufname:
|
|
| |
|
Hallo Willi Wipp,
vielen Dank für den Tipp, ich werd mich gleich mal drauf stürzen, ist auf jeden Fall sehr brauchbar für mich!
lg,
Christian
|
|
DieterB
Office-Anwender mit Programmierkenntnissen
Verfasst am: 18. Dez 2006, 18:44 Rufname:
|
|
| |
|
Hallo Christian,
wie sind dein Erfahrungen mit diesem TOOL?????
Habe in einem anderen Forum eine Frage zu dieser "Problematik" gelesen,
und auf den Link von Willi Wipp verwiesen.
_________________ Gruß
DieterB
Auch der längste Weg
beginnt mit dem ersten Schritt
|
|
dkaj
vba (lernend)
Verfasst am: 19. Dez 2006, 09:58 Rufname:
|
| |
| |
|
Hi,
so sollte es gehen. Bei mir klappt es, eine DB zu zippen. Du musst nur die Pfade zur wzzip.exe, Deine Datei und den Pfad wo es abgelegt werden soll einstellen (siehe public sub zip() )
| Code: | Option Compare Database
Option Explicit
Private Type STARTUPINFO
cb As Long
lpReserved As String
lpDesktop As String
lpTitle As String
dwX As Long
dwY As Long
dwXSize As Long
dwYSize As Long
dwXCountChars As Long
dwYCountChars As Long
dwFillAttribute As Long
dwFlags As Long
wShowWindow As Integer
cbReserved2 As Integer
lpReserved2 As Long
hStdInput As Long
hStdOutput As Long
hStdError As Long
End Type
Private Type PROCESS_INFORMATION
hProcess As Long
hThread As Long
dwProcessID As Long
dwThreadID As Long
End Type
Private Declare Function WaitForSingleObject Lib "kernel32" _
(ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Private Declare Function CreateProcessA Lib "kernel32" _
(ByVal lpApplicationName As Long, ByVal lpCommandLine As String, _
ByVal lpProcessAttributes As Long, ByVal lpThreadAttributes As Long, _
ByVal bInheritHandles As Long, ByVal dwCreationFlags As Long, _
ByVal lpEnvironment As Long, ByVal lpCurrentDirectory As Long, _
lpStartupInfo As STARTUPINFO, _
lpProcessInformation As PROCESS_INFORMATION) As Long
Private Declare Function CloseHandle Lib "kernel32" _
(ByVal hObject As Long) As Long
Private Const NORMAL_PRIORITY_CLASS = &H20&
Private Const INFINITE = -1&
Public Sub ExecCmd(cmdline$)
Dim proc As PROCESS_INFORMATION
Dim start As STARTUPINFO
Dim ReturnValue As Integer
start.cb = Len(start)
ReturnValue = CreateProcessA(0&, cmdline$, 0&, 0&, 1&, _
NORMAL_PRIORITY_CLASS, 0&, 0&, start, proc)
Do
ReturnValue = WaitForSingleObject(proc.hProcess, 0)
DoEvents
Loop Until ReturnValue <> 258
End Sub
Public Sub zip()
zipper = "C:\program Files\Winzip\wzzip.exe"
ExecCmd zipper & " """ & path_of_ziparchiv & """ source"
ExecCmd zipper & " ""C:\lol.zip"" C:\db1.mdb"
'C:\lol.zip = Zieldatei als zip
'C:\db1.mdb = Datenbank die du zippen willst
End Sub |
MFG
Toni
_________________ MFG Toni
|
|
christian313
Im Profil kannst Du frei den Rang ändern
Verfasst am: 20. Dez 2006, 13:08 Rufname:
|
|
| |
|
Hallo Toni,
vielen Dank für dein Feedback, hilft mir auf jeden Fall weiter!
lg,
Christian
|
|
DieterB
Office-Anwender mit Programmierkenntnissen
Verfasst am: 20. Dez 2006, 20:52 Rufname:
|
|
| |
|
Hallo dkaj,
das zippen habe ich mittlerweile anders (mit kürzerem Code) gelöst.
Jetzt muss ich die gleiche Datei wieder entzippen.
_________________ Gruß
DieterB
Auch der längste Weg
beginnt mit dem ersten Schritt
|
|
Gast
Verfasst am: 20. Dez 2006, 21:02 Rufname:
|
|
| Version: Office 2k (2000) |
|
Hallo Dieter,
wäre nett, wenn du uns deinen Code auch zur Verfügung stellen könntest.
lg,
Christian
|
|
DieterB
Office-Anwender mit Programmierkenntnissen
Verfasst am: 20. Dez 2006, 22:10 Rufname:
|
|
| |
|
| Code: | Function mytest()
DateiZippen "L:\Ordner\Datei.mdb", "L:\Ordner\Datei.zip"
End Function
Function DateiZippen(QDatNam As String, ZDatnam As String)
' http://www.winzip.de/xcmdline.htm (http://www.winzip.de/downcl.htm)
Const ZipPfad As String = "c:\Programme\winzip\winzip32.exe"
Shell ZipPfad & " -a -s""testpasswort"" " & ZDatnam & " " & QDatNam & " "
End Function
Private Sub Befehl7_Click()
mytest
End Sub | Habe ich hier im Forum gefunden.
_________________ Gruß
DieterB
Auch der längste Weg
beginnt mit dem ersten Schritt
|
|
dkaj
vba (lernend)
Verfasst am: 20. Dez 2006, 23:24 Rufname:
|
|
| |
|
Hi,
hab auch ein Code erstellt wo ein Suchfenster aufgeht und dann kann man die ZIP-Datei im Explorer suchen.
Ist ein ziemlich großer code, falls interesse besteht würde ich diesen auch einfügen.
_________________ MFG Toni
|
|
hgssven
Gast
Verfasst am: 02. Jan 2007, 20:58 Rufname:
|
|
| Version: Office XP (2002) |
|
Hallo zusammen,
habe Eure Lösungen heute mal ausprobiert und bekomme immer eine Fehlermeldung aus WinZIP heraus!
Archiv nicht gefunden oder konnte nicht angelegt werden, oder so ähnlich!
Was mache ich falsch, bzw. was kann man dort falsch machen???
Wie muss ich die Shell Befehle für WinZIP verstehen??
Vielen Dank schon einmal im Voraus!!
|
|
Willi Wipp
Moderator

Verfasst am: 03. Jan 2007, 01:44 Rufname:
Wohnort: Raum Wiesbaden
|
|
| |
|
Hi hgssven,
verwendest Du bei Winzip auch die Befehlszeilenerweiterung?
Wie schaut der Code und die genaue Fehlermeldung aus?
_________________ Eine kurze Rueckmeldung waere nett
SL Willi Wipp
(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
|
|
hgssven
Gast
Verfasst am: 05. Jan 2007, 09:46 Rufname:
|
|
| |
|
Hallo Zusammen,
funktioniert doch, habe wohl irgendwo einen kleinen Fehler übersehen!
Trotzdem vielen Dank für die Anwort!!
mfg
hgssven
|
|
lokl
Im Profil kannst Du frei den Rang ändern
Verfasst am: 14. Feb 2007, 09:21 Rufname:
|
|
| Version: Office 2003 |
|
Kann mir jemand erklären was der wert 258 beim WaitForSingleObject heißt?`
Bei meinem Ausdruck im Acrobat Reader, geht die Schleife bei der oben genannten funktion nicht raus.
Wenn ich wüßte was die 258 würde ich den Teil vielleicht etwas leichter verstehen:
| Code: | Do
ReturnValue = WaitForSingleObject(proc.hProcess, 0)
DoEvents
Loop Until ReturnValue <> 258 |
Merci Leute!
|
|
Willi Wipp
Moderator

Verfasst am: 14. Feb 2007, 11:59 Rufname:
Wohnort: Raum Wiesbaden
|
| |
| |
|
Hi lokl,
vielleicht hilft Dir das weiter?
| API Guid hat folgendes geschrieben: | Retirnvalues for WaitForSingleObject:
If the function succeeds, the return value indicates the event that caused the
function to return.
If the function fails, the return value is WAIT_FAILED (-1).
To get extended error information, call GetLastError.
The return value on success is one of the following values:
WAIT_ABANDONED (128)
The specified object is a mutex object that was not released by the thread
that owned the mutex object before the owning thread terminated.
Ownership of the mutex object is granted to the calling thread,
and the mutex is set to nonsignaled.
WAIT_OBJECT_0 (0)
The state of the specified object is signaled.
WAIT_TIMEOUT (258)
The time-out interval elapsed, and the object’s state is nonsignaled. |
_________________ Eine kurze Rueckmeldung waere nett
SL Willi Wipp
(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum nicht posten Du kannst Dateien in diesem Forum herunterladen
|
|
|
|
| Verwandte Themen |
| Forum / Themen |
Antworten |
Autor |
Aufrufe |
Letzter Beitrag |
 |
Access Tabellen & Abfragen: Abfrage erstellen mit variablen Spalten |
5 |
Lellek |
1472 |
24. Mai 2005, 17:45 Lellek  |
 |
Access Tabellen & Abfragen: Datensätze löschen per Makro |
1 |
joule |
4016 |
17. Mai 2005, 13:23 jens05  |
 |
Access Tabellen & Abfragen: KFZ-Datenbank erstellen |
1 |
ekki01 |
1811 |
15. Apr 2005, 11:48 Dalmatinchen  |
 |
Access Tabellen & Abfragen: per Abfrage einen beliebigen Datensatz aufrufen |
4 |
Joshi |
739 |
15. März 2005, 08:26 lothi  |
 |
Access Tabellen & Abfragen: Wie eine "optimale" Relationale Datenbank erstelle |
3 |
Gast |
540 |
07. Jan 2005, 15:44 stpimi  |
 |
Access Tabellen & Abfragen: Erstellen einer Menüleiste |
2 |
Hilde |
722 |
03. Nov 2004, 14:21 Hilde  |
 |
Access Tabellen & Abfragen: Per SQL maximalen Spaltenwert im VBA code ermitteln |
2 |
Gast |
3037 |
31. Okt 2004, 23:10 Tom2002  |
 |
Access Tabellen & Abfragen: Daten aus einer dat Datei in eine Access Tabelle einlesen! |
7 |
VP 001 |
6568 |
26. Okt 2004, 21:57 snurb  |
 |
Access Tabellen & Abfragen: Rangliste erstellen |
2 |
dontpanic |
599 |
27. Aug 2004, 13:30 Gast  |
 |
Access Tabellen & Abfragen: Vergleich der Daten + erstellen einer neuen Tabelle |
1 |
Chal |
670 |
25. Jul 2004, 14:02 faßnacht(IT);  |
 |
Access Tabellen & Abfragen: sql neue tabelle erstellen |
3 |
Gast |
786 |
19. Jul 2004, 23:09 lothi  |
 |
Access Tabellen & Abfragen: Suchen im Ufo per SQL |
3 |
TeeJay |
829 |
04. Jun 2004, 11:12 TeeJay  |
| |
|