'*********************************************************************************** '*** besonderen Dank an Sebastian Koch von http://www.quaschtel.de/wsh/index.htm *** '*********************************************************************************** '*** alterHausmeister / CAD.DE *** '*********************************************************************************** Dim Aenderung_Datenfile_neu, Aenderung_Datenfile_alt Dim Datum, Tag, Monat, Jahr, Uhrzeit, Stunde, Minuten, Tagname, Monatname 'Erläuterung 'Prüfung der Verzeichnisse set fs = CreateObject("Scripting.FileSystemObject") if fs.folderexists("c:\Datensicherung") then 'msgbox("Verzeichnis existiert") else MSGBOX ("Verzeichnis nicht vorhanden!... wird nun angelegt ...") set folder = fs.createfolder("c:\Datensicherung") set folder = fs.createfolder("c:\Datensicherung\Sicherung") end if 'Datei auswählen msgbox("Bitte im folgenden Fenster die zu überwachende Datei auswählen.") Set objOpenDialog = CreateObject("SAFRCFileDlg.FileOpen") intReturn = objOpenDialog.OpenFileOpenDlg If intReturn Then strFilePath = objOpenDialog.FileName Else MsgBox("Keine Datei ausgewählt!") Wscript.Quit End If msgbox("Überwacht wird : " & strFilePath) 'Prüfung auf zugehörige *.PSF set fs = CreateObject("Scripting.FileSystemObject") strFilePath_psf = left(strFilePath,len(strFilePath)-4) & ".psf" if fs.fileExists(strFilePath_psf) then else msgbox("*.psf File nicht gefunden") end if 'Hauptprogramm n=1 while n = 1 Dateiueberwachung_ACP wend Sub Dateiueberwachung_ACP 'Prüfung auf Veränderungen der Dateien set fs = createobject("Scripting.filesystemobject") Set datenfile = fs.GetFile(strFilePath) Set datenfile_psf = fs.GetFile(strFilePath_psf) Aenderung_Datenfile_alt = datenfile.DateLastModified Aenderung_Datenfile_alt_psf = datenfile_psf.DateLastModified Aenderung_Datenfile_neu_psf = Aenderung_Datenfile_alt_psf wscript.sleep 1000 Aenderung_Datenfile_neu = Aenderung_Datenfile_alt while Aenderung_Datenfile_alt = Aenderung_Datenfile_neu Aenderung_Datenfile_neu = datenfile.DateLastModified wscript.sleep 5000 wend 'Prüfung auf Veränderungen der zugehörigen PSF Datei wscript.sleep 1000 ''Erste Änderung = Datei wird bearbeitet while Aenderung_Datenfile_alt_psf = Aenderung_Datenfile_neu_psf Aenderung_Datenfile_neu_psf = datenfile.DateLastModified wscript.sleep 5000 wend ''keine Änderung mehr = Datei ist fertig wscript.sleep 10000 while Aenderung_Datenfile_alt_psf <> Aenderung_Datenfile_neu_psf Aenderung_Datenfile_alt_psf = Aenderung_Datenfile_neu_psf wscript.sleep 10000 Aenderung_Datenfile_neu_psf = datenfile.DateLastModified wscript.sleep 1000 wend 'Kopiervorgang starten ''Rausknabbern des reinen Dateinamens aus strFilePath strFile = right(strFilePath, len(strFilePath) -InStrRev(strFilePath, "\")) strFile_psf = right(strFilePath_psf,len(strFilePath_psf)-InStrRev(strFilePath_psf,"\")) Set fso = CreateObject("Scripting.FileSystemObject") Set f1 = fso.GetFile(strFilePath) f1.copy ("c:\Datensicherung\Sicherung\" & strFile) wscript.sleep 1000 Set f1 = fso.GetFile(strFilePath_psf) f1.copy ("c:\Datensicherung\Sicherung\" & strFile_psf) ' Umbenennung '' Zeit- und Datumsanalyse Datum = Date() Tag = day(Datum) Monat = month(Datum) Jahr = year(Datum) Uhrzeit = time() Stunde = Hour(Uhrzeit) Minuten = minute(Uhrzeit) 'Dateiname ohne Extension, aber mit Zielpath der Sicherung strFile_noExt = "c:\Datensicherung\Sicherung\" & left(strFile,len(strFile)-4) strFile_psf_noExt = "c:\Datensicherung\Sicherung\" & left(strFile_psf,len(strFile_psf)-4) IF Tag<10 Then Tagname = "0" + Cstr(Tag) Else Tagname = Cstr(Tag) IF Monat<10 Then Monatname = "0" + Cstr(Monat) Else Monatname = Cstr(Monat) Set fso = CreateObject("Scripting.FileSystemObject") Set f1 = fso.GetFile(strFile_noExt & ".dwg") f1.Move (strFile_noExt + "-" + Cstr(Jahr) + "-" + Monatname + "-" + Tagname + "-" + Cstr(Stunde) + "Uhr" + Cstr(Minuten) + ".dwg") Set fso = CreateObject("Scripting.FileSystemObject") Set f1 = fso.GetFile(strFile_psf_noExt & ".psf") f1.Move (strFile_psf_noExt + "-" + Cstr(Jahr) + "-" + Monatname + "-" + Tagname + "-" + Cstr(Stunde) + "Uhr" + Cstr(Minuten) + ".psf") End Sub ' Dateiüberwachung_ACP