freund.der.nacht
Goto Top

Automatische Benachrichtigung bei Veränderungen im Netzwerkordner

Hallo an alle,

ich habe mir mal überlegt, dass es doch sehr nützlich wäre, wenn man völlig automatisch über Veränderungen in einem Ordner informiert wird, den man in lokalen Netzwerk freigegeben hat.

Gesagt getan:
Hier erstmal der Code:

@echo off & setlocal
set "run=1"  
tasklist /fi "imagename eq wscript.exe" /nh |findstr /bic:"wscript.exe" > nul && goto errorwscript  
if not exist "C:\WORP.txt" goto errordata  
set /p pfad= < "C:\WORP.txt"  
if not exist "%pfad%" goto errorpath  
echo WScript.Echo Int(CreateObject("Scripting.FileSystemObject").GetFolder(WScript.Arguments(0)).Size+.99) > "%temp%\GetFolderSize.vbs"  
Echo MsgBox "Es wurden Veränderungen an ihrem Netzwerkordner vorgenommen!", VbOkOnly, "WORP" > "%temp%\worp.vbs"  

:main
cls
for /f %%i in ('cscript //nologo %temp%\GetFolderSize.vbs "%pfad%"') do set size=%%i  
if "%run%"=="1" goto nextstep  
tasklist /fi "imagename eq wscript.exe" /nh |findstr /bic:"wscript.exe" > nul && goto nextstep  
If not "%size%"=="%oldsize%" start "" "%temp%\worp.vbs"  
:nextstep
set "run=0"  
set "oldsize=%size%"  

ping 1.1.1.1 -n 1 -w 60000 > nul 
goto main

:errordata
Echo MsgBox "Fehler! Die Pfad-Datei wurde nicht gefunden! (C:\WORP.txt)", VbOkOnly, "WORP" > "%temp%\worp_error1.vbs"  
start "" "%temp%\worp_error1.vbs"  
exit

:errorpath
Echo MsgBox "Fehler! Der Netzwerkordner wurde nicht gefunden!", VbOkOnly, "WORP" > "%temp%\worp_error2.vbs"  
start "" "%temp%\worp_error2.vbs"  
exit

:errorwscript
Echo MsgBox "Fehler! Es ist bereits ein VB-Script Aktiv! Bitte beenden Sie zuerst das andere Script und starten Sie WORP anschließend neu!", VbOkOnly, "WORP" > "%temp%\worp_error3.vbs"  
start "" "%temp%\worp_error3.vbs"  
exit

Erklärung:

1. Installation
- Code als .bat speichern
- Bat to Exe Converter downloaden: http://www.f2ko.de/downloads/Bat_To_Exe_Converter.zip
- Starten, Konvertieren als Unsichtbares Programm
- in Autostart kopieren, oder Verknüpfung in Autostart legen, oder in Regedit in "Run" eintragen
- Eine "WORP.txt"-Datei auf C:\ erstellen
- Den Pfad des freigegebenen Ordners in "WORP.txt" kopieren (ohne "")
- PC neustarten
- testen

2. Tipps
- in der Zeile "ping 1.1.1.1 -n 1 -w 60000 > nul " kann man die "60000" durch eine beliebige Zahl ersetzen, um das Zeitintervall der Überprüfung den eigenen Bedürfnissen anzupassen (in ms; 60.000 = 1 min)
- zum Beenden des laufenden Tools einfach im Taskmgr "cmd.exe" beenden

Ich hoffe, das dieses kleine Tool, welches kaum Resourcen frisst, doch dem Einen oder Anderen nützlich erscheint.

Verbesserungsvorschläge nehme ich gern entgegen!

MfG
Freund der Nacht

Content-Key: 202984

Url: https://administrator.de/contentid/202984

Printed on: April 16, 2024 at 21:04 o'clock