aktualizoval jsem Mosaic i knihovny a udělal následně v programu drobnou úpravu (jiné přiřazení tlačítek), při překladu mi pro všechny použité bloky z iControlLib (fb_iLight a fb_iJalousie) vypisuje chybu např.
[CFC:Chyba] ZALUZIE.CFC (1259: Rozhraní bloku se změnilo.
V programu změna nebyla, Mosaic má nyní verzi 2022.1 Upd1 Fix1 a knihovna iControlLib v3.1(20220420). Na disku (nikoliv viditelná v rozhraní Mosaicu) je i předchozí verze 3.0 (20210712)
pokud obě knihovny otevřu, tak v deklarační části iLight je name deklarované jinak u verze 3.1:
name {PUBLIC_IFOX=GTSAP1_LIGHT_name} : string [48]; (*`{ENG} name of light {CSY} název světla*)
a jinak u verze 3.0:
name : string [24]; (*`{ENG} name of light {CSY} název světla*)
předpokládám, že tedy řve kvůli změněné délce stringu - co se s tím dá dělat? Nechce se mi předefinovávat všechny funkce
Odpovědi 1
Omlováme se za způsobené potíže. Editor CFC se v tomto případě chová zbytečně striktně a nutí uživatele všechny bloky, kde se změnila délka STRINGu v rozhraní, ručně aktualizovat.
V aktuální verzi prostředí je nejrychlejším řešením návrat k původní verzi knihovny (knihovna se Vám v průzkumníku knihoven nabídne pokud zatrhnete volbu Zobrazit všechny verze). Jinak by bylo nutné všechny místa, kde jsou dotknuté bloky použity, projít a dvojklikem na blok a potvrzením dialogu jejich instance aktualizovat.
V nové verzi prostředí, která se nyní připravuje, již tento stav nebude detekován jako chyba a aktualizace proběhne automaticky.
Vaše odpověď
Pro vložení odpovědi je nezbytné být přihlášený. Pokračujte na přihlášení.