Ohh, das paßt ja.
Hab gestern ebenfalls die ersten Stunden mit 4.0 verbracht und etwas ähnliches beobachtet.
Die Funktion „IPS_GetObjectIdByName“ endete oft mit dem gleichen Fehler. " Objekt mit dem Namen blablabla konnte nicht gefunden werden.
Gemeinsamkeiten:
.) Es trat nur bei Objekten mit Umlauten im Namen auf
.) Es passierte nur unmittelbar nach IPS Neustart. Wenn ich in den betroffenen Scripten ein wenig debuggde, und bspw. die jeweiligen ObjectId mal per echo ausgab, dann funktionierte es. Ebenso funktionierte danach das Script wieder.
Klingt irgendwie so als ob da eine „Umlauteumwandlerfunktion“ nicht rechtzeitig geladen wird.
Hatte dann um 3:00 aber keine Zeit Lust mehr weiter zu forschen.
Kann gut noch ein Umlauteproblem in IPS4 sein. Deshalb verwende ich grundsätzlich in Variablen & Co niemals Umlaute! Auch bei Dateien nicht usw… Desto früher man sich das angewöhnt, um so besser
Umlaute werden in IPS4 als UTF-8 kodiert, wohingegen die 3.4 diese als ISO-8859-1. Deswegen können, wenn die alten Skripte noch als ISO-8859-1 kodiert sind, die Namen aber bereits in IPS4 als UTF-8 kodiert sind, genau diese Fehler auftreten.
Lösung: Besser direkt auf IPS_GetObjectIdByIdent umsteigen, oder keine Umlaute in diesen Fällen verwenden.
Danke fuer die schnelle Antwort. In diesem Fall ist es das Konfigurationsfile des PlugwiseModul der Library.
Hab einfach das File geladen und wieder gespeichert in der Konsole. Funktioniert wieder.
Man muss das nur wissen mit UTF-8. Probleme kommen dann wenn man Scripte mit einem externen Editor
bearbeitet. Hatte Wordpad und PsPad benutzt zum Aendern und die standen auf ANSI.