# ############################# # TMC & LIGHT Changer # # Version 3.0 - 20.12.05 # # Autor: Klaus T. (Zappa) # # ----------------------------# # Benötigt das Programm # # MortScript mind. in der # # Version 3.1RC6 (oder höher) # # erhältlich unter: # # http://www.sto-helit.de/ # # ----------------------------# # Für nicht kommerziellen, # # privaten Gebrauch! # # ############################# # Benutzung auf eigene Gefahr # # ##################################################################### # Zunächst werden MN5 und POI-Warner (je nach Einstellung im Inifile) # gestartet. Achtung! Evtl. Pfade im Inifile TMCLC.ini anpassen! # Autostart von POI-Warner im POI-Warner abstellen (muß aber nicht), # dann startet MN5 schneller und man hat Zeit die Navigation zu starten # ##################################################################### # Das Programm wechselt nach eingestelleter Zeit automatisch auf # den nächsten verfügbaren TMC-Sender (je nach Einstellung im Inifile). # Außerdem wird automatisch zwischen Tag- und Nachtansicht umgeschaltet # (je nach Einstellung im Inifile). # Für die Tag- Nachtumschaltung sind die "Sonnenaufgangs- und Unter- # gangszeiten" hinterlegt. Auf Grundlage dieser Daten werden die # Umschaltzeiten für jeden Tag neu berechnet. # ########################################################################### # Im Verzeichnis "\Programme\NAVIGON\" (oder woanders, dann Pfad im Inifile # anpassen!) wird eine automatisch Datei "dummy.dat" angelegt (falls nicht # vorhanden). Bei Start des Programms wird diese umbenannt, und beim Beenden # des Programms wieder zurück. So soll verhindert werden, daß das Programm # mehrfach gestartet wird. Wenn das Programm abstürzt muss evtl. # "RUNdummy.dat"in "dummy.dat" umbenannt oder einfach gelöscht werden, # damit TMC-LIGHT-Changer erneut gestartet werden kann. # ########################################################################## # # # DER PFAD ZUR INI-DATEI - EVTL. ANPASSEN!" # # # # ########################################### ErrorLevel syntax %Inipfad% = "\Speicherkarte\Programme\Mort LIGHT-Changer\" # Zähler für Anzahl Warten # wenn kein TMC-Empfang %warten% = 0 # ------------------------------- # Inidatei vorhanden? # %inipfad1% = %Inipfad%&"TMCLC.ini" If Not fileExists %inipfad1% SleepMessage 10, {"Ini-Datei im angegebenen Pfad "&%inipfad1% &" nicht gefunden.\ Bitte Pfad prüfen - Programm Ende!"},[TMC-LIGHT-Changer 3.0] %FehlerMN% = 0 call Beenden exit endif # Welche Funktionen bzw. Programme starten? # ForEach key,value in inikeys %Inipfad1%,"STARTEN" set %key%,%value% EndForEach # ############################################ # Wenn im Infile "NurTagNacht = 1" steht # wird zwischen Tag- oder Nachtansicht # umgeschaltet (sonst nix, und Script beendet # ########################################### if {%NurTagNacht% = 1} %NIGHTopen_x% = 120 %NIGHTopen_y% = 160 %NIGHTswitch_x% = 65 %NIGHTswitch_y% = 81 If wndExists MobileNavigator Show MobileNavigator MouseClick %NIGHTopen_x%,%NIGHTopen_y% sleep %SleepNIGHTSwitch% MouseClick %NIGHTswitch_x%,%NIGHTswitch_y% else SleepMessage 3, "Mobile Navigator läuft nicht - Programm Ende!",[TMC-LIGHT-Changer 3.0] endif sleep %SleepNormal% exit endif # Pfade zu den Programmen und zur "dummy-Datei" # ForEach key,value in inikeys %Inipfad1%,"PFADE" set %key%,%value% EndForEach # Läuft Programm schon? # Beim allerersten Start # "dummy.dat" anlegen # If Not fileExists %Dummy% If Not fileExists %RUNDummy% WriteFile %Dummy%, "dummy" endif endif If fileExists %RUNDummy% SleepMessage 3, "Est läuft schon eine Instanz von TMC-LIGHT-Changer - ABBRUCH!",[TMC-LIGHT-Changer 3.0] Show MobileNavigator exit endif # Wartezeiten einlesen # ForEach key,value in inikeys %Inipfad1%,"WARTEZEIT" set %key%,%value% EndForEach # Toleranzzeiten auslesen # ForEach key,value in inikeys %Inipfad1%,"TOLERANZEN" set %key%,%value% EndForEach # POI-Warner Icon prüfen # ForEach key,value in inikeys %Inipfad1%,"CheckPOIW" set %key%,%value% EndForEach # Welcher Skin wird benutzt # ForEach key,value in inikeys %Inipfad1%,"SKIN" set %key%,%value% EndForEach # Koordinatenwerte für benutzen Skin einlesen # ForEach key,value in inikeys %Inipfad1%,%USED_SKIN% set %key%,%value% EndForEach # Auf "TEST" gesetzt? # ForEach key,value in inikeys %Inipfad1%,"TEST" set %key%,%value% EndForEach # Monat abfragen # GetTime DatumMonat,m # Werte für abgefragten Monat einlesen # %inipfad2% = %Inipfad%&"TMCLC_SUNSET.ini" If Not fileExists %inipfad2% SleepMessage 10, {"Ini-Datei im angegebenen Pfad "&%inipfad2% &" nicht gefunden.\ Bitte Pfad prüfen - Programm Ende!"},[TMC-LIGHT-Changer 3.0] %FehlerMN% = 0 call Beenden exit endif ForEach key,value in inikeys %Inipfad2%,{"MONAT"&%DatumMonat%} set %key%,%value% EndForEach sleep %SleepNormal% # ########################### # MN5 läuft nicht - starten! # ########################### If Not wndExists MobileNavigator run %MN5% WaitForActive "MobileNavigator",120 EndIf rename %dummy%, %RUNdummy% %FehlerMN% = 0 # # GPSTMCInfo.txt vorhanden? # ------------------------- if {%TMCSwitch% = 1} # MN-Version = 5.1 oder höher if {%MNVersion50% = 0} %tmcauslesen% = 1 %inipfadtmc1% = %GPSTMCinfo%&"GPSTMCInfo.txt" %inipfadtmc2% = %GPSTMCinfo%&"GPSTMCInfo.tmp" If Not fileExists %inipfadtmc1% %tmcauslesen% = 0 SleepMessage 10, {"GPSTMCInfo-Datei im angegebenen Pfad "&%GPSTMCinfo% &"\ nicht gefunden. Wird erst ab MN Version 5.1 untersützt! \ Auslesen der GPSTMCInfo.txt abgeschaltet!"},[Hinweis! TMC-LIGHT-Changer 3.0] endif else %tmcauslesen% = 0 endif endif # Nur für Testzwecke! # if {%TEST% = 11} call Test2 %FehlerMN% = 3 call Beenden exit endif # ###################### # solange warten, bis # NAVI-Fenster vorne ist ######################## GetColorAt %CHECK1NAVIx%,%CHECK1NAVIy%, dezwert While {%dezwert% <> %CHECK1NAVI%} If Not wndExists MobileNavigator %FehlerMN% = 1 call Beenden exit endif sleep %SleepLang% GetColorAt %CHECK1NAVIx%,%CHECK1NAVIy%, dezwert EndWhile sleep %SleepNormal% # ########################### # MN5 läuft - hier geht's los # ########################### If wndExists MobileNavigator %status% = 1 else %FehlerMN% = 1 call Beenden exit endif # ################################################ # Schalter - wurde Beleuchtung schon umgeschaltet? # ################################################ %schalter% = 0 # ######################## # Variablen initialisieren # ######################## call VariablenFuellen # ############################################################# # Auf Sommerzeit bzw. Winterzeit prüfen. Letzter Sonntag im # Oktober -> Winterzeit. Letzter Sonntag im März -> Sommerzeit # ############################################################# call RechneWinterzeit # ############################################################### # Aufruf Routine zum Berechnen der Umschaltzeiten nach akt. Datum # ############################################################### call Berechne Show MobileNavigator # ################# # Solange MN5 läuft # ################# While {%status% = 1} # ##################################### # Im Berufsverkehr an Werktagen (Mo-Fr) # evtl. TMC öfter wechseln. Hier alle # 4,5 Minuten (Anzschleife=27*2*5) # ##################################### if {%WoTag% > 1 AND %WoTag% < 7 AND %hour% >= %StartRushHourMorgens% AND %hour% <= %StopRushHourMorgens%} %AnzSchleife% = %AnzSchleifeRushHour% endif if {%WoTag% > 1 AND %WoTag% < 7 AND %hour% >= %StartRushHourAbends% AND %hour% <= %StopRushHourAbends%} %AnzSchleife% = %AnzSchleifeRushHour% endif %Durchzaehl% = 0 Repeat %AnzSchleife% GetTime hour,H GetTime minute,i GetTime DatumTag2,d # Vormittags- bzw. Nachmittags-Wechsel if {%Vormittag% = 1 AND %hour% >=12} call VariablenFuellen call RechneWinterzeit call Berechne endif if {%Nachmittag% = 1 AND %hour% < 12} call VariablenFuellen call RechneWinterzeit call Berechne endif # Datumswechsel if {%DatumTag% <> %DatumTag2%} call VariablenFuellen call RechneWinterzeit call Berechne endif if WndExists MobileNavigator # ###################### # Standard ist hell = 1 # ###################### %hell% = 1 if {%Winterzeit% = 1} # ## Es ist Winterzeit if {%WinterZeitDurchlauf% = 0} # nicht bei jedem Durchlauf + 1 Std! %WinterZeitDurchlauf% = 1 %BerStdM% = %BerStdM%+%Winterzeit% %BerStdA% = %BerStdA%+%Winterzeit% endif if {%hour% <= 12} # ## Vormittag if {%hour% < %BerStdM%} %hell% = 0 endif if {%BerStdM% = %hour%} if {%minute% < %BerMin%} %hell% = 0 endif endif # ## Nachmittag else if {%hour% > %BerStdA%} %hell% = 0 endif if {%BerStdA% = %hour%} if {%minute% > %BerMin%} %hell% = 0 endif endif endif else # ## Es ist Sommerzeit # ## Vormittag if {%hour% <= 12} if {%hour% < %BerStdM%} %hell% = 0 endif if {%BerStdM% = %hour%} if {%minute% < %BerMin%} %hell% = 0 endif endif # ## Nachmittag else if {%hour% > %BerStdA%} %hell% = 0 endif if {%BerStdA% = %hour%} if {%minute% > %BerMin%} %hell% = 0 endif endif endif endif # Ausgaben nur für Test (TEST=1) im Inifile ########################################### if {%TEST% = 1} call Test1 endif sleep %Wartezeit% # #################################### # auf Nachtansicht und Schalter setzen # #################################### if {%NightSwitch% = 1 AND %schalter% = 0 AND %hell% = 0} call NIGHTDAY %schalter% = 1 endif # ########################################## # zurück auf Tagansicht und Schalter setzen # ########################################## if {%NightSwitch% = 1 AND %hell% = 1 AND %schalter% = 1} CALL NIGHTDAY %schalter% = 0 endif sleep %Wartezeit% else %status% = 0 call Beenden exit endif ####################################### # Wenn POI-Warner gestartet werden soll # "PoiWarnerStart = 1" im Inifile. # Wenn P-W nicht mehr läuft Neustart. # Überwachung vom POI-W evtl. starten # Prüfung nur in Kartenansicht. ####################################### if {%PoiWarnerStart% = 1} if WndExists MobileNavigator If wndExists POI if {%PoiWarnerCheck% = 1} GetColorAt %CHECK1NAVIx%,%CHECK1NAVIy%, dezwert if {%dezwert% eq %CHECK1NAVI%} GetColorAt %Icon_x%,%Icon_y%, PoiIcon if {%PoiIcon% <> %CheckIcon%} Show POI sleep %SleepNormal% SendCR "POI" endif endif endif endif If Not wndExists POI %FehlerMN% = 2 call Beenden endif endif endif # Hier TMC-Sender zwischenspeichern. Wenn innherhalb von # "MinHoldTMC" (Voreinst. 2 Min.) der gleiche TMC-Sender # gehalten werden konnte, wird nach Ende des Schleifendurch- # laufs der Sender gewechselt. Sonst wird weiter gewartet. # ---------------------------------------------------------- if {%TMCSwitch% = 1 AND %tmcauslesen% = 1 AND %sameTMC% = 0} %Durchzaehl% = %Durchzaehl%+1 if {%readnow% eq %Durchzaehl% AND %firstread% = 0} copy %inipfadtmc1%, %inipfadtmc2%, 1 sleep 200 IniRead %inipfadtmc2%, "", "station", StationBuffer %firstread% = 1 %Durchzaehl% = 0 endif if {%readnow% eq %Durchzaehl% AND %firstread% = 1} %HilfStationBuffer% = %StationBuffer% copy %inipfadtmc1%, %inipfadtmc2%, 1 sleep 200 IniRead %inipfadtmc2%, "", "station", StationBuffer %firstread% = 0 %Durchzaehl% = 0 if {%HilfStationBuffer% eq %StationBuffer%} %sameTMC% = 1 if {%StationBuffer% eq "" OR %StationBuffer% eq "---"} %sameTMC% = 0 endif #if {%sameTMC% = 1} #SleepMessage 3, {"Sender "&%StationBuffer%&" mind. "&%MinHoldTMC%&" Minuten gehalten"} #endif endif endif endif EndRepeat # ####################################### # Nach Schleifendurchlauf Senderwechsel. # Falls MN nicht mehr läuft, POI-Warner # und "TMC-LIGHT-Changer" beenden. # ####################################### if WndExists MobileNavigator if {%TMCSwitch% = 1} call TMC endif else # #################################### # MN5 läuft nicht mehr - alles beenden # #################################### %status% = 0 call Beenden exit endif EndWhile # ########################################################### # Hier kommen die Sub-Routinen # # ########################################################### # sub VariablenFuellen # ######################################### # Tag, Monat, Wochentag und Stunde einlesen # ######################################### GetTime DatumTag,d GetTime DatumMonat,m GetTime WoTag,w GetTime hour,H %Vormittag% = 0 %Nachmittag% = 0 %WinterZeit% = 0 %WinterZeitDurchlauf% = 0 %firstread% = 0 %sameTMC% = 0 %readnow% = %MinHoldTMC%*60/10 EndSub # # ################################################## # Routine zum Berechnen des Sonnenauf- / Untergangs # (+ - ein paar Minuten :-)) ) # ################################################# # sub Berechne GetTime hour,H GetTime minute,i %BerMin% = 0 %BerStdM% = %AufStd% %BerStdA% = %UnterStd% %hilfmulti% = 0 # ####### # Morgens # ####### if {%hour% < 12} %Vormittag% = 1 if {%MorgensMultiMinusPlus% = 1} %hilfmulti% = %DatumTag%*%MultiMMi% %BerMin% = %AufMin%-%hilfmulti%-%ToleranzMorgens% if {%BerMin% < 0} %BerStdM% = %AufStd%-1 %BerMin% = %BerMin%+60 endif endif if {%MorgensMultiPlusMinus% = 1} %hilfmulti% = %DatumTag%*%MultiMPl% %BerMin% = %AufMin%+%hilfmulti%-%ToleranzMorgens% if {%BerMin% >= 60} %BerStdM% = %AufStd%+1 %BerMin% = %BerMin%-60 endif endif else # ###### # Abends # ###### %Nachmittag% = 1 if {%AbendsMultiMinusPlus% = 1} %hilfmulti% = %DatumTag%*%MultiAMi% %BerMin% = %UnterMin%-%hilfmulti%+%ToleranzAbends% if {%BerMin% < 0} %BerStdA% = %UnterStd%-1 %BerMin% = %BerMin%+60 endif endif if {%AbendsMultiPlusMinus% = 1} %hilfmulti% = %DatumTag%*%MultiAPl% %BerMin% = %UnterMin%+%hilfmulti%+%ToleranzAbends% if {%BerMin% >= 60} %BerStdA% = %Untertd%+1 %BerMin% = %BerMin%-60 endif endif endif EndSub # # ############################# # Auf Winter- Sommerzeit prüfen # ############################# # Sub RechneWinterzeit if {%DatumMonat% > 10} %WinterZeit% = 1 endif if {%DatumMonat% <= 3} %WinterZeit% = 1 endif if {%DatumMonat% = 3} if {%WoTag% > 1 AND %DatumTag% > 24} %WinterZeit% = 0 endif if {%WoTag% = 1 AND %DatumTag% >= 24} %WinterZeit% = 0 endif endif if {%DatumMonat% = 10} if {%WoTag% > 1 AND %DatumTag% > 24} %WinterZeit% = 1 endif if {%WoTag% = 1 AND %DatumTag% >= 24} %WinterZeit% = 1 endif endif # ############################### # Sonderbehandlung für die letzen # Tage im Oktober und März - # Sommer- Winterzeitwechsel # ############################### if {%Winterzeit% = 1} # ## Es ist Winterzeit if {%WinterZeitDurchlauf% = 0} if {%DatumMonat% = 10} %WinterZeitDurchlauf% = 1 # die letzten Oktobertage schon in der Winterzeit %WinterZeit% = 0 %AufStd% = %AufStd%-1 %UnterStd% = %UnterStd%-1 endif if {%DatumMonat% = 3} %WinterZeitDurchlauf% = 1 # die letzten Märztage schon in der Sommerzeit %WinterZeit% = 0 %AufStd% = %AufStd%+1 %UnterStd% = %UnterStd%+1 endif endif endif EndSub # ########################################## # Routine schaltet TMC-Suchlauf ein, wenn # Navi-Fenster oder Kartenansicht aktiv ist. # ########################################## sub TMC # Prüfen, ob TMC-Sender empfangen wird. Wenn nicht # "NoTMCWait"-Schleifendurchläufe zusätzlich warten. # -------------------------------------------------- %keinsender% = 0 if {%tmcauslesen% = 1} copy %inipfadtmc1%, %inipfadtmc2%, 1 sleep 200 IniRead %inipfadtmc2%, "", "station", Stationname if {%Stationname% eq "" OR %Stationname% eq "---" AND %sameTMC% = 0} %warten% = %warten%+1 SleepMessage 3,{%warten%&". Durchlauf - kein Sender gefunden"},[Hinweis: TMC-LIGHT-Changer 3.0] if {%warten% < %NoTMCWait%} %keinsender% = 1 endif endif endif if {%keinsender% = 0} Show MobileNavigator GetColorAt %CHECK1NAVIx%,%CHECK1NAVIy%, dezwert %warten% = 0 %sameTMC% = 0 %zaehler% = 1 While {%dezwert% <> %CHECK1NAVI%} If Not wndExists MobileNavigator %FehlerMN% = 1 call Beenden exit endif if {%zaehler% = 75} SleepMessage 12, "Ich hänge in Schleife TMC" %zaehler% = 1 endif sleep %SleepLang% %zaehler% = %zaehler%+1 GetColorAt %CHECK1NAVIx%,%CHECK1NAVIy%, dezwert EndWhile sleep %SleepNormal% GetColorAt %POPCLOSE_x%,%POPCLOSE_y%, dezwertpop if {%dezwertpop% = %CHECK3POP%} MouseClick MobileNavigator, %POPCLOSE_x%,%POPCLOSE_y% sleep %SleepNormal% endif MouseClick MobileNavigator, %TMCstart_x%,%TMCstart_y% sleep %SleepTMCSwitch% MouseClick MobileNavigator, %TMCweiter_x%,%TMCweiter_y% sleep %SleepNormal% MouseClick MobileNavigator, %TMCende_x%,%TMCende_y% endif EndSub # ############################################### # Routine schaltet Tag- / Nachansicht um, # wenn Navi-Fenster oder Kartenansicht aktiv ist. # ############################################### sub NIGHTDAY Show MobileNavigator MouseClick %NIGHTopen_x%,%NIGHTopen_y% sleep %SleepNIGHTSwitch% GetColorAt %POPCLOSE_x%,%POPCLOSE_y%, dezwertpop2 if {%dezwertpop2% = %CHECK3POP%} MouseClick MobileNavigator, %POPCLOSE_x%,%POPCLOSE_y% sleep %SleepNormal% MouseClick %NIGHTopen_x%,%NIGHTopen_y% sleep %SleepNIGHTSwitch% endif GetColorAt %CHECK2Nx%,%CHECK2Ny%, dezwert2 %zaehler2% = 1 While {%dezwert2% <> %CHECK2N%} If Not wndExists MobileNavigator %FehlerMN% = 1 call Beenden exit endif if {%zaehler2% = 100} SleepMessage 12,"Ich hänge in Schleife NIGHTDAY" %zaehler% = 1 ####### Prog hängt 300 Sek. fest - nochmal clicken" ##### MouseClick %NIGHTopen_x%,%NIGHTopen_y% endif %zaehler2% = %zaehler2%+1 sleep %SleepNormal% GetColorAt %CHECK2Nx%,%CHECK2Ny%, dezwert2 sleep %SleepNormal% EndWhile sleep %SleepNIGHTSwitch% MouseClick %NIGHTswitch_x%,%NIGHTswitch_y% EndSub # ########################################### # Nur für Testzwecke! Variablenwerte anzeigen # ########################################### sub Test1 SleepMessage 3, %MorgensMultiPlusMinus%,[MorgensMultiPlusMinus] SleepMessage 3, %AbendsMultiMinusPlus%,[AbendsMultiMinusPlus] SleepMessage 3, %DatumTag%,[Datum] SleepMessage 3, %DatumMonat%,[Monat] SleepMessage 3, %Vormittag%,[Vormittag] SleepMessage 3, %Nachmittag%,[Nachmittag] SleepMessage 3, %WinterZeit%,[Winterzeit] SleepMessage 3, %AufStd%,[So.Auf Std] SleepMessage 3, %AufMin%,[So.Auf Min] SleepMessage 3, %UnterStd%,[So.Unter Std] SleepMessage 3, %UnterMin%,[So.Unter Min] SleepMessage 3, %hilfmulti%,[hilfmulti] SleepMessage 3, %BerStdM%,[Ber Std Morgens] SleepMessage 3, %BerStdA%,[Ber Std Abends] SleepMessage 3, %BerMin%,[Ber Min < > 12Uhr] SleepMessage 3, %schalter%,[Schalter: ] SleepMessage 3, %hell%,[hell: ] EndSub # ####################################### # Nur für Testzwecke! Farbwerte auslesen # ####################################### sub Test2 SleepMessage 15, "Bitte MN5 in Kartennsansicht stellen und dann keine\ Taste drücken oder Touch berühren! Nach Beenden dieser\ Meldung wartet das Script 20 Sek." sleep 20000 Show MobileNavigator sleep 2000 GetColorAt %CHECK1NAVIx%,%CHECK1NAVIy%, textvar1 SleepMessage 20, {"Bitte den Wert "&%textvar1%&" für Variable: CHECK1NAVI notieren."} SleepMessage 15, "Bitte jetzt in der Kartenansicht auf TMC drücken um eine Fehlermeldung zu provozieren.\ Nach Beenden dieser Meldung wartet das Script wieder 20 Sek." sleep 20000 Show MobileNavigator sleep 2000 GetColorAt %POPCLOSE_x%,%POPCLOSE_y%, textvar1 SleepMessage 20, {"Bitte den Wert "&%textvar1%&" für Variable: CHECK3POP notieren."} SleepMessage 15, "Bitte MN5 jetzt in die Maske zur Tag- Nachtumschaltung stellen.\ Nach Beenden dieser Meldung wartet das Script wieder 20 Sek." sleep 20000 Show MobileNavigator sleep 2000 GetColorAt %CHECK2Nx%,%CHECK2Ny%, textvar1 SleepMessage 20, {"Bitte den Wert "&%textvar1%&" für Variable: CHECK2N notieren."} EndSub # # ##################################################### # Routine beendet POI-Warner (falls aktiv) und schließt # TMC-LIGHT-Changer, wenn MN5 nicht mehr läuft. Falls # POI-Warner nicht mehr läuft (aber MN5 läuft noch) # wird der POI-Warner nachgestartet. # ##################################################### # sub Beenden If wndExists POI Show "POI" sleep %SleepNormal% MouseClick 5,306 Sleep %SleepNormal% MouseClick 5,285 sleep %SleepNormal% While wndExists POI Show POI sleep %SleepNormal% MouseClick 5,306 Sleep %SleepNormal% MouseClick 5,285 sleep %SleepNormal% EndWhile endif if {%FehlerMN% = 0} # SleepMessage 2, "TMC-LIGHT-Changer Ende",[TMC-LIGHT-Changer 3.0] rename %RUNdummy%, %dummy% sleep %SleepNormal% endif if {%FehlerMN% = 1} SleepMessage 3, "Mobile Navigator läuft nicht - Programm Ende!",[TMC-LIGHT-Changer 3.0] rename %RUNdummy%, %dummy% sleep %SleepNormal% endif # Hier wird zum 1. Mal POI-W gestartet # bzw. bei Fehler nachgestartet. # if {%FehlerMN% = 2} If Not wndExists POI # SleepMessage 2, "POI-Warner wird gestartet!",[TMC-LIGHT-Changer 3.0] run %POIW% WaitFor "POI",180 sleep %SleepNormal% SendCR "POI" sleep %SleepNormal% %FehlerMN% = 0 EndIf endif if {%FehlerMN% = 3} SleepMessage 10, "TEST Beendet - Programm Ende - Der Test kann (wenn nötig)\ sofort wiederholt werden!",[TMC-LIGHT-Changer 3.0] rename %RUNdummy%, %dummy% sleep %SleepNormal% endif EndSub