| |
VB Skript (VBS)Delay, Wait oder sleep Function verwenden | | | Autor: Clondike | Datum: 11.03.12 12:16 |
| Hallo
Ich habe, auch Dank der großdartigen Hilfen im Forum, ein VB Skript (siehe Beispiel)erstellt mit
folgender Funktion.
Es werden Dateien in einem definierten Pfad importiert, gesplittet und als neue Dateien in einen neu gebildeten Ordner geschrieben. Dabei werden nach einer Sicherung die alten "Originaldateien" gelöscht. somit enthält der Originalpfad keine dieser importierten Dateien mehr.
Das Problem ist nun folgendes. Dieser Import geschieht mehrmals im Laufe des Tages. Damit nicht jedesmal das Programm ausgeführt werden muß, soll dieses nach einmaligem Start am Morgen aktiv sein und nach einer Wartezeit von ca. 2 Minuten jedesmal schauen, ob neue Dateien importiert worden sind. Der Anwedner kann das Programm aber jederzeit uber den Schedule beenden.
Wie muß ich diese möglichen Befehle in den Skript einbauen ? - Um jede Info bin ich sehr dankbar.
Hier der Skipt:
--------------------------------------------------------
Set WshShell = CreateObject("Wscript.Shell")
Pfad = WshShell.CurrentDirectory
Pfad_save = Pfad & "\" & "save" & "\"
If Right(Pfad,1)<>"\" then
Pfad = Pfad & "\"
end if
Set FSO=CreateObject("Scripting.FileSystemObject")
Set Folder=FSO.GetFolder(Pfad)
if FSO.folderExists("save") = False then
FSO.createfolder("save")
end if
For Each File in Folder.Files
v_datum = mid(date,9,2) & mid(date,4,2) & mid(date,1,2) & "_" & mid(time,1,2) & mid(time,4,2)
If Right(File,3) <> "vbs" Then
if Right(File,3) <> "exe" then
z = 0
v_laenge = len(file)
while mid(file,v_laenge,1)<>"\"
z = z +1
inhalt =right(file,z)
v_laenge = v_laenge -1
wend
x = Split(inhalt,"_")
v_file = v_datum & "_" & inhalt
FSO.CopyFile file, Pfad_save & v_file
If FSO.FolderExists(x(1)) = False Then
FSO.CreateFolder(x(1))
End If
Pfad_neu = Pfad & x(1) & "\" & x(2)
Pfad_loeschen = Pfad & inhalt
FSO.CopyFile file,Pfad_neu
file.delete
end if
End if
Next
-- Ende des Skripts -----------
Danke
Roland
Hallo -
bin neu hier und habe ein massives Problem mit bedingter Formatierung, die mehr als 4 Werte abfragen soll. Bin ein guter VBA Anwender, habe aber bis jetzt noch keine M?glichkeit gef?nden, das Problem zu l?sen.
Beispiel:
Wenn Code = Nk, d | |
Re: Delay, Wait oder sleep Function verwenden | | | Autor: Rippler | Datum: 11.03.12 20:01 |
| Set WshShell = CreateObject("Wscript.Shell")
Pfad = WshShell.CurrentDirectory
If Right(Pfad,1)<>"\" then
Pfad = Pfad & "\"
end if
Pfad_save = Pfad & "save\"
Set FSO=CreateObject("Scripting.FileSystemObject")
Set Folder=FSO.GetFolder(Pfad)
If FSO.folderExists("save") = False then
FSO.createfolder("save")
end if
Do
Kopieren
WScript.Sleep 120000
Loop
Function Kopieren
For Each File in Folder.Files
v_datum = mid(date,9,2) & mid(date,4,2) & mid(date,1,2) & "_" & mid(time,1,2) _
& mid(time,4,2)
If Right(File,3) <> "vbs" and Right(File,3) <> "exe" Then
x = Split(file,"_")
If FSO.FolderExists(x(1)) = False Then
FSO.CreateFolder(x(1))
End If
Pfad_neu = Pfad & x(1) & "\" & x(2)
FSO.CopyFile file,Pfad_neu
y = Split(file,"\")
v_file = v_datum & "_" & y(Ubound(y))
FSO.MoveFile file, Pfad_save & v_file
End if
Next
End Function | |
Re: Delay, Wait oder sleep Function verwenden | | | Autor: Clondike | Datum: 12.03.12 16:46 |
| Hallo Rippler,
ich habe das eingebaut und funktioniert einwandfrei.
Ich würde mich gerne erkenntlich zeigen, da du mir doch schon einige sehr gute funktionierende Lösungen geboten hast. Mit was kann dich erfreuen ?
Weiters habe ich im I-Net noch eine andere Lösung gefunden, die aber im Syntax nicht funktioniert.
Wie kann ich eine API-Deklaration einbauen ?
Wenn ich
PRIVATE DECLARE Function WaitForSingleObjekt Lib "kernel32" (ByVal....) As Long
eingebe, bringt der Compiler eine Fehlermeldung.
Gruß aus Österreich
Roland
Hallo -
bin neu hier und habe ein massives Problem mit bedingter Formatierung, die mehr als 4 Werte abfragen soll. Bin ein guter VBA Anwender, habe aber bis jetzt noch keine M?glichkeit gef?nden, das Problem zu l?sen.
Beispiel:
Wenn Code = Nk, d | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevISDN 1.0
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats Neu! sevCommand 4.0
Professionelle Schaltflächen im modernen Design!
Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. Weitere Infos
|