Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Frage Entwicklung VB for Applications

Vbscript batch bei änderung ausführen

Mitglied: chgs2011

chgs2011 (Level 1) - Jetzt verbinden

25.09.2014 um 13:52 Uhr, 1014 Aufrufe, 1 Kommentar

Hallo,

ich habe ein Batch-File, das mir einige Arbeiten erleichtert.

Ich möchte aber das Batch-File nicht im Minutentakt antriggern, sondern soll erst angetriggert werden, sobald sich die Datei XYZ ändert. Wie es mir scheint, klappt das mit Batch alleine nicht, ich muss das über VBScript lösen.

Kennt jemand eine Lösung, um eine Dateiänderung zu erfassen, um das Batch anzutriggern?

Danke
Mitglied: colinardo
25.09.2014, aktualisiert um 15:15 Uhr
Moin chgs2011,
kein Problem:
(Zur Erläuterung wie das Script zu handhaben ist, gibt es am Anfang eine Meldung via MsgBox aus, die du wenn du die Handhabung verstanden hast, entfernen kannst)

WICHTIG: Das Script kann nur lokale Laufwerke überwachen. D.h wenn man eine Datei im Netz überwachen möchte, muss der Pfad als Laufwerk gemappt sein, und der Pfad mit dem Laufwerksbuchstaben angegeben werden.
01.
'Pfad der zu überwachen ist 
02.
strFile = "D:\Daten\datei.csv" 
03.
' Auszuführende Batch 
04.
strBatch = "C:\Pfad\deineBatch.cmd"  
05.
'Abfrage der aufgelaufenen Events in Sekunden 
06.
intInterval = 2 
07.
'------------------------------ 
08.
MsgBox "Das Programm überwacht nach klicken auf OK die Datei: '" & strFile & "' alle " & intInterval & " Sekunden auf aufgelaufene Änderungen'" & vbNewLine & "(Um das Programm zu beenden muss der Prozess 'wscript.exe' im Taskmanager beendet werden)",vbInformation 
09.
'Objekte erzeugen 
10.
Set fso = WScript.CreateObject("Scripting.Filesystemobject") 
11.
Set objShell = CreateObject("Wscript.Shell") 
12.
Set objWMIService = GetObject( "winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2" ) 
13.
 
14.
'Backslashes im Pfad für WQL Query verdoppeln 
15.
strFilePath = Replace(strFile,"\","\\") 
16.
 
17.
'WQL Query erzeugen 
18.
strQuery = "Select * From __InstanceModificationEvent" _ 
19.
    & " Within " & intInterval _ 
20.
    & " Where Targetinstance Isa 'CIM_DataFile'" _ 
21.
    & " And TargetInstance.Name='" & strFilePath & "'" 
22.
'Eventsink registrieren 
23.
Set colEvents = objWMIService.ExecNotificationQuery (strQuery)  
24.
 
25.
'Auf Änderungen warten 
26.
Do  
27.
	Set objEvent = colEvents.NextEvent() 
28.
    Set objTargetInst = objEvent.TargetInstance 
29.
    'Bei Bedarf lässt sich hier auf die Eigenschaften der Datei zugreifen 
30.
    'die möglichen Eigenschaften kann man hier nachlesen:  
31.
    ' http://msdn.microsoft.com/en-us/library/aa387236%28v=vs.85%29.aspx 
32.
    ' Beispiel Dateigröße: objTargetInst.FileSize 
33.
 
34.
    On Error Resume Next 
35.
 
36.
    'Bei Dateiänderung Batch aufrufen ------------------- 
37.
    objShell.Run "cmd /c """ & strBatch & """" 
38.
    '----------------------------------------------------- 
39.
Loop
Grüße Uwe
Bitte warten ..
Ähnliche Inhalte
Microsoft
VBscript auf allen Rechner in der Domain ausführen.
gelöst Frage von Illuminant777Microsoft6 Kommentare

^Random nice Picture für mehr Aufmerksamkeit^ Hallo Zusammen Ich versuche verzweifelt seit stunden per vbscript einen Virenscanner zu deinstallieren. ...

VB for Applications
3 vbscripts in 1 vbscirpt ausführen
Frage von aletriVB for Applications5 Kommentare

Morgen an alle Erster Script verschiebt, convertiert und startet folge Script: Zweiter Script löscht Szenerie Eintrag , convertiert und ...

Batch & Shell
Powershell Befehl in Batch ausführen
gelöst Frage von newit1Batch & Shell4 Kommentare

Hallo! Kann ich einen Powershell Befehl in eine Batch schreiben, damit diese bei Doppelklick den Befehl ausführt? Wie würde ...

Windows 7
Batch über Aufgabenplanung ausführen
gelöst Frage von chef1568Windows 74 Kommentare

Hallo zusammen, ich möchte folgendes Skript via Aufgabenplanung Win7 64Bit ausführen. Als Aktion habe ich folgende Einstellung: Aktion Programm ...

Neue Wissensbeiträge
Router & Routing

PfSense als Addon auf QNAP

Information von magicteddy vor 6 StundenRouter & Routing2 Kommentare

Moin, für Spielereien eine ganz nette Idee aber ich fürchte das soetwas auch als echte Firewall genutzt wird: In ...

Datenschutz

Teamviewer kommt für IoT-Geräte wie den Raspberry Pi

Information von magicteddy vor 13 StundenDatenschutz

Moin, jetzt werden IoT Geräte endgültig zur Wanze? Anscheinend kann man auf einem Dashboard seine Geräte visualisieren Ich stelle ...

Microsoft

Letzte Updates für Win10 und Server2016 müssen bei Bedarf über den Update catalogue in den WSUS importiert werden!

Tipp von DerWoWusste vor 17 StundenMicrosoft1 Kommentar

automatisch kommt da nichts an im WSUS und auch nicht im SCCM. Siehe Hinweise zum Bezug der jeweils neuesten ...

Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 3 TagenLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Preis für Wartungsvertrag ok?
gelöst Frage von a-za-zNetzwerkmanagement22 Kommentare

Hallo! Mal ne Frage, weil ich mich mit dem akzeptablen Preis für einen Reaktionszeitvertrag nicht auskenne. Meine Firma hat ...

Windows Netzwerk
Ist ein Portforwarding auf einen PC ohne lauschendes Programm ein (großes) Sicherheitsproblem?
Frage von PluwimWindows Netzwerk13 Kommentare

Hallo zusammen, zur Fernwartung eines Rechners an einem anderen Ort nutze ich VNC. Da dieser Rechner einfach nur eine ...

Windows Server
Terminal Server 2016 erkennt Berechtigungen nicht
gelöst Frage von Thomas2Windows Server10 Kommentare

Hallo Administratoren, folgendes Problem stellt sich dar: Es gibt zwei Windows Server 2016, die als Terminal Server fungieren. Jetzt ...

Sonstige Systeme
7-zip: Programm frägt nach Passwort erst bei einzelnen Dateien
Frage von freeskierchrisSonstige Systeme7 Kommentare

Guten Morgen, ich habe ein Problem beim Arbeiten mit 7-zip: Wenn ich die einzelnen Dateien zu einem Archiv verpacke ...