Ladereihenfolge der Module

Ich habe folgendes Problem. Ich baue gerade an einem Modul das bisher immer per Modulmanager neu geladen habe. Dabei wird zuerst mein Splitter und dann mein Gerät geladen.

Das klappt auch die ganze Zeit bis ich eben das erstmal Symcon neugestartet habe. Daraufhin habe ich einen Fehler „InstanceInterface is not available“ erhalten. Nach genauer Recherche liegt das daran, dass mein Geräte-Modul Daten aus dem Splitter braucht aber selber noch garnicht geladen ist. Daher bekomme ich auch einen Fehler bei Aufruf eines „ReadAttributeString“ im Splitter.

Kann ich irgendwie die Reihenfolge beachten? Oder gibt es sowas was ich dagegen tun kann?

Bevor Du Daten, mit anderen Modulen, austauschst, solltest Du warten bis IPS komplett geladen ist.

Kapitel 1. viii.

Ja ich denke ich werde über Message gehen.

Kann ich erkennen ob die ApplyChanges nun vom Kernel oder vom User (durch speichern) geladen wurde?

Nein, das ist nicht direkt möglich. Aber prüf den KernelRunLevel - das sollte als Indikator reichen.

paresy

Aber nicht, wenn das Modul per Hand neugeladen wird. Ich prüfe z.B. auf den Instanz-Status des Splitters, bevor ich mit ihm kommuniziere.

Ich habe mich jetzt an IPS_KERNELSTARTED, FM_CONNECT, IM_CHANGESETTINGS gehangen.

Wenn der Splitter manuell neugeladen würde, wären die Daten im Device noch in Ordnung. Zumindest denke ich das ich damit alles habe und bis jetzt klappt auch der Neustart, sowie Modulupdate per ModulManager.