:START
IF NOT EXIST Q:\NUL NET USE Q: \\server\freigabe
ping -n 5 localhost>NUL
IF EXIST Q:\NUL EXPLORER
REM ping -n 5 localhost>NUL
REM GOTO START
Kleine Erlärung:
Man schaut zuerst ob man auf Laufwerk Q: zugreifen kann (1. if)
Macht dann eine kurze pause -> 5 Sekunden (ich habe auf sleep verzichtet aus kompatibilitätsgründen)
Danach überprüft man nochmals den Zugriff auf Q: und startet in diesem Beispiel den Explorer.
Falls du das ganze ion eine Schlaufe packen willst kannst du die beiden REM Statements noch wegmachen.
Falls du was anderes brauchst brauche ich mehr Infos.
Der Code ist nur kurz zusammengebastelt, nichts professionelles. Sollte aber funktionieren
So ein kleines Programm und ich mach immernoch Fehler
IF NOT EXIST Q:
Dachte nicht, dass es ohne Q:\NUL funktionieren würde.
Schön, dass es doch noch ein paar QBasic und batch-File Schreiber gibt
Ich wuste selbst nicht genau ob es mit Q: alleine funkt.
Konnte aber es gleich beim schreiben testen.
Nachdem ich selber so was auch habe (automatisch zu nem server verbinden) und ich aber checken will obs der richtige Rechner ist frage ich da nach einem Unterodner:
Q:\compile
Wegen Batch-Progen, das ist meine arbeit, zumindest ein Teil davon.
------------------------------Rechtschreibung wird überbewertet.
Sie hilft aber ungemein bei der Verständlichkeit der Beiträge
Antworten bakudan
Hallo habe die Datei für mich ein wenig Angepasst nur ist die Funktion noch nicht ganz so wie ich es mir Wünsche.
1. Diese soll prüfen ob ein Netzlaufwerk verbunden ist und wenn dies erfolgreich war ein Programm öffnen.
2. Sollte das Netzlaufwerk nicht verbunden sein dieses verbinden und das Programm öffnen.
1. und 2. funzen soweit siehe Code.
3. Das Fenster der Eingabeaufforderung soll nicht sichtbar sein bzw. nach Ablauf geschlossen werden!! (besser ersteres)
4. Ist das Netzlaufwerk nicht eingeschaltet bzw. nicht auffindbar eine Fehlermeldung ausgeben z.B.:
"Netzlaufwerk nicht eingeschaltet" oder ähnlich.
Ich Danke euch im Vorraus
Gruß urkrossi
Code :
@ECHO OFF
CLS
:START
IF NOT EXIST K: goto noK
goto ende
:noK
ping -n 1 Fnd >NUL
if "%errorlevel%"=="0" NET USE K: \\Fnd\AVDaten
ping -n 5 localhost>NUL
IF EXIST K: goto ende
rem ping -n 5 localhost>NUL
rem GOTO START
:ende
C:\Programme\Aktenverwaltung\Aktenverwaltung.exe
Nachricht bearbeitet von urkrossi am 11.08.2008 um 20:12:53
Hier ein paar hilfestellungen:
Wenn das CMD fenster minimirt sein soll dann musst du es aus einer anderen Bat Datei oder einer Verknüfung starten:
und zwar so:
Bat datei:
Code :
@Echo off
start "" /MIN cmd /C "[Ffad zur batdatei]
Verknüpfung:
Einfach eine Verknüpfung auf deine Bat datei.
Und in den Eigenschafte:
Minimiert startet. ( im Tab "Verknüpfung" )
So wegen der Fehlermeldung wenn es nicht funkt.
Im moment wird es so lange versucht den Server zu erreichen, ohne limit.
Welches Windows verwendest du?
ab WinXP können wir einbauen das er es nur X mal versuchen soll.
les dir mal die hilfeausgabe von set /?, cmd /? und start /? durch.
Hier noch eine kleine anpassung, sie im @rem.
Code :
@ECHO OFF
CLS
:START
IF NOT EXIST K: goto noK
goto ende
:noK
ping -n 1 Fnd >NUL
if "%errorlevel%"=="0" NET USE K: \\Fnd\AVDaten
ping -n 5 localhost>NUL
IF EXIST K: goto ende
rem ping -n 5 localhost>NUL
rem GOTO START
:ende
@rem verwende start, dadurch wird die Exe gestarte und die Batdatei beendet sich.
Dieses Thema ist länger als 6 Monate inaktiv. Bitte überprüfen Sie, ob Ihr beabsichtigter Kommentar noch einen Mehrwert bringt oder das Anlegen eines neuen Themas nicht besser wäre.