Opt("TrayMenuMode", 3) Opt("TrayOnEventMode", 1) Local $sChosen = RegRead("HKLM\SOFTWARE\Siemens\SINEC\LogNames\S7ONLINE", "LogDevice") If @error Then MsgBox(64, "Information", "Es ist kein Simatic Manager installiert." & @CRLF & "Das Programm wird beendet.") Exit EndIf Global $aAdapter[100][2] For $i= 1 to 100 $aAdapter[$i][0] = RegEnumKey("HKLM\SOFTWARE\Siemens\SINEC\LogDevices", $i) If @error <> 0 then ExitLoop $aAdapter[$i][1] = TrayCreateItem($aAdapter[$i][0], -1, -1, 1) TrayItemSetOnEvent(-1, "_Change") If $aAdapter[$i][0] = $sChosen Then TrayItemSetState(-1, 1) Next ReDim $aAdapter[$i][2] TrayCreateItem("") TrayCreateItem("GUI Schnittstelle einstellen") TrayItemSetOnEvent(-1, "_Open") TrayCreateItem("") TrayCreateItem("Exit") TrayItemSetOnEvent(-1, "_Exit") TraySetToolTip($sChosen) AdlibRegister("_Check", 1000) While 1 Sleep(20000) WEnd Func _Exit() Exit EndFunc Func _Change() Local $newAdapter = TrayItemGetText(@TRAY_ID) TraySetToolTip($NewAdapter) RegWrite("HKLM\SOFTWARE\Siemens\SINEC\LogNames\S7ONLINE", "LogDevice", "REG_SZ", $newAdapter) If @error Then MsgBox(64, "Information", "Sie besitzen kein Recht um diesen Registrierungsschlüssel zu schreiben." & @CRLF & "Das Programm wird beendet.") Exit EndIf EndFunc Func _Check() Local $Chosen = RegRead("HKLM\SOFTWARE\Siemens\SINEC\LogNames\S7ONLINE", "LogDevice") TraySetToolTip($Chosen) For $i = $aAdapter[$i][1] To $aAdapter[UBound($aAdapter)-1][1] If TrayItemGetText($i) = $Chosen Then TrayItemSetState($i, 1) Else TrayItemSetState($i, 4) EndIf Next EndFunc Func _Open() ShellExecute("S7EPATDX.CPL") EndFunc