androxin
Goto Top

Simples Programm, wenig Anforderungen - Sollte es ein Batch-Script werden?

Moin,

ich benötige ein Windows Progrämmchen, welches mit ein paar Argumenten aufgerufen werden kann, ein klein wenig im Dateisystem schreibt/liest und automatisch alle fünf Minuten ein UDP Paket über das Netzwerk absetzt.

Grundsätzlich ist es egal mit welcher Programmiersprache das ganze umgesetzt wird. Die Anforderungen sind so simpel, dass es sich sogar mit einem 20 Zeilen Batch-Skript umsetzen ließe. Diese Lösung präferiere ich momentan auch.

Allerdings bin ich mangels Erfahrung ein wenig unsicher, wie es sich mit der "alle fünf Minuten"-Funktion verhält.
Ist es praktikabel ein Batch-Script in einer Dauerschleife laufen zu lassen und den fünf Minuten Rhythmus z. B. mittels sleep.exe zu implementieren?

Abgesehen vom Start/Neustart würde ich gerne auf den Windows Taskmanager verzichten.

Content-Key: 282485

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

Printed on: April 26, 2024 at 05:04 o'clock

Member: nextized
Solution nextized Sep 10, 2015 updated at 08:41:09 (UTC)
Goto Top
Schreiben und lesen mag mit Batch ja problemlos funktionieren, aber zum versenden des UDP-Packets benötigst du eine Zusatzanwendung (das kann Batch leider nicht nativ).

Zum starten der Anwendung geistern genügend Programme (bzw. Anleitungen) für Windows herum. Das einschläfern mittels Sleep.exe kann ich dir hingegen nicht empfehlen.

Mit freundlichen Grüssen

nextized
Member: emeriks
emeriks Sep 10, 2015 at 08:23:41 (UTC)
Goto Top
Hi,
ach - man kan mit der sleep.exe den Rechner endgültig einschläfern?

E. face-wink
Member: nextized
nextized Sep 10, 2015 at 08:26:32 (UTC)
Goto Top
Ne, aber der Anwendung ein Wiegenlied singen.
Mitglied: 114757
Solution 114757 Sep 10, 2015 updated at 08:41:04 (UTC)
Goto Top
Moin.
Ein Skript in einer Dauerschleife laufen zu lassen ist immer ein gewisses Risiko wenn sich das Skript unerwartet beendet. Bei einem Skript das regelmäßig über den Taskplaner anläuft hat man dieses Risiko nicht da es beim nächsten Zyklus wieder von neuem gestartet wird, was bei einem "Sleep"-Skript nicht der Fall ist. Hier müsste man dann zwangsläufig einen Watchdog implementieren der zusätzlich regelmäßig überprüft ob das Skript überhaupt noch läuft. Ist also im Endeffekt mehr Aufwand und daher nicht zu empfehlen.

Zum Thema Netzwerkpakete versenden: Nimm Powershell das kann das durch die Abstammung vom .NET Framework alles bereits out-of-the-box.

Gruß jodel32
Member: emeriks
Solution emeriks Sep 10, 2015 updated at 08:41:01 (UTC)
Goto Top
Hier müsste man dann zwangsläufig einen Watchdog implementieren der zusätzlich regelmäßig überprüft ob das Skript überhaupt noch läuft. Ist also im Endeffekt mehr Aufwand und daher nicht zu empfehlen.
Wieso? Das ist doch bei der geplanten Aufgabe schon von Haus aus dabei: Unter "Einstellungen" --> "Folgende Regel anwenden, falls die Aufgabe bereits ausgeführt wird:" --> "keine neue Instanz starten"
Member: Androxin
Androxin Sep 10, 2015 at 08:40:45 (UTC)
Goto Top
Vermutlich ist es tatsächlich am einfachsten SCHTASKS direkt im Script zu verarbeiten.

Vielen Dank für die Hinweise.
Mitglied: 114757
114757 Sep 10, 2015 updated at 08:42:55 (UTC)
Goto Top
Zitat von @emeriks:
Wieso? Das ist doch bei der geplanten Aufgabe schon von Haus aus dabei: Unter "Einstellungen" --> "Folgende Regel anwenden, falls die Aufgabe bereits ausgeführt wird:" --> "keine neue Instanz starten"
Es ging mir bei der Aussage nur um den Fall einer dauerlaufenden Batch die nicht über den Taskplaner gestartet wird ! Was der TO ja aus welchem Grund auch immer vermeiden will ...