rene1976
Goto Top

Net - Autostart erst ausführen wenn Netzwerkverbindung steht

Hallo,

wir haben eine Client Server Anwendung in C# geschrieben.
Beim Start von Win 10 Client wird über den Autostart auch gleich das Programm vorgeladen, damit der erste Start vom User nicht mehr so lange dauert.
Das Problem ist aber, dass oft der Fehler kommt das noch keine Netzwerkverbindung aufgebaut werden konnte (abgefangen mit MsgBox).
Wir nutzen gemappte Laufwerke, in unserem Fall Laufwerk S.

Ich denke es gibt zwei Ursachen:

1. Im Autostart wird unser Programm schon ausgeführt bevor die Netzwerkverbindung steht.
2. Es kommt auch oft vor das das gemappt Laufwerk S: im Explorer noch ein ROTES Kreuz anzeigt. Erst wenn man auf das Laufwerk klickt verschwindet das rote Kreuz (gibt es seit Vista, mit XP gab es nie Probleme). Das rote Kreuz Problem haben wir nicht nur während dem Start von Windows. Erste wenn das rote Kreuz im Explorer weg ist funktioniert unser Programm.

Frage:
1. Wird der Autostart vor, während oder nach der Netzwerkverbindung ausgeführt?
2. Kann man irgendwie das rote Kreuz bei den Netzwerkverbindungen verhindern?
3. Kann man die Reihenfolge des Autostarts beeinflussen, so dass unser Programm als letztes geladen wird und dann hoffentlich die Netzwerkverbindung schon steht?
4. Kann ich die Netzwerkverbindung abfragen, ggf. aktivieren und mein Programm solange warten lassen bis die Netzwerkverbindung RICHTIG steht?
5. Hat noch jemand einen anderen Lösungsvorschlag?

Gruß,

Rene

Content-ID: 302244

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

Ausgedruckt am: 25.11.2024 um 14:11 Uhr

127944
127944 19.04.2016 um 12:19:37 Uhr
Goto Top
5. Hat noch jemand einen anderen Lösungsvorschlag?
Ja, nutze UNC-Pfade
114757
114757 19.04.2016 aktualisiert um 12:25:02 Uhr
Goto Top
Computer->Administrative Vorlagen->System->Anmelden->"Beim Neustart des Computers und bei der Anmeldung immer auf das Netzwerk warten"
Aber natürlich sollte deine Anwendung solch einen Fall auf jeden Fall abfangen und eventuell für eine Zeit lang regelmäßig z.B. mit einem Timer die Verfügbarkeit des Netzwerkpfads prüfen, sei es mit [System.Net.NetworkInformation.Ping] oder FolderExists etc.

Gruß jodel32
skahle85
skahle85 19.04.2016 aktualisiert um 12:30:31 Uhr
Goto Top
Frage:
1. Wird der Autostart vor, während oder nach der Netzwerkverbindung ausgeführt?
Wenn Windows startet, unabhängig von Netzwerkverbindungen
2. Kann man irgendwie das rote Kreuz bei den Netzwerkverbindungen verhindern?
Gute Frage - so wie @114757 sagt
3. Kann man die Reihenfolge des Autostarts beeinflussen, so dass unser Programm als letztes geladen wird und dann hoffentlich die Netzwerkverbindung schon steht?
4. Kann ich die Netzwerkverbindung abfragen, ggf. aktivieren und mein Programm solange warten lassen bis die Netzwerkverbindung RICHTIG steht?
3+4: am Besten statt dem Programm selbst ein Powershellscript starten was z.B. einen Ping absetzt und erst nach erfolgreicher Antwort das Prog startet
5. Hat noch jemand einen anderen Lösungsvorschlag?
Das Programm nicht von Netzlaufwerken abhängig machen
Gruß,

Rene
127944
127944 19.04.2016 um 12:28:42 Uhr
Goto Top
Zitat von @114757:
> Computer->Administrative Vorlagen->System->Anmelden->"Beim Neustart des Computers und bei der Anmeldung immer auf das Netzwerk warten"
> 
Wird funktionieren, wird allerdings den Systemstart nicht unbedingt beschleunigen.
114757
114757 19.04.2016 aktualisiert um 12:31:33 Uhr
Goto Top
Zitat von @127944:
Wird funktionieren, wird allerdings den Systemstart nicht unbedingt beschleunigen.
Darum gings hier ja auch nicht, ist nur eine von vielen möglichen Methoden.
Am ehesten ist aber wie gesagt sein Programm gefragt diese Fälle zu handeln. Standardprozedur beim Programmieren.
127944
127944 19.04.2016 um 12:33:24 Uhr
Goto Top
Zitat von @114757:
Darum gings hier ja auch nicht, ist nur eine von vielen möglichen Methoden.

Sorry - hätte weiter ausholen müssen. Die Frage, die sich mit der Lösung stellt, ist die, ob sich damit der erhoffte Geschwindigkeitsvorteil überhaupt noch einstellt.