Dilma писал(а):
это похоже на решение?Это решение, но оно естественно нуждается в оптимизации и применять его на данный момент нельзя
![](/img/smilies/icon_smile.gif)
------------ Дoбавленo в 00.19:
Думаю это мой окончательный вариант, т.к. больше мыслей по упрощению нет...
Реализовал на примере элемента Message из пакета CNET.
![](/img/icon_plus.gif)
исходник
hisys.hws
добавил глобальную переменную cil.
добавил массив cil.
добавил функцию cil (Check_Infinite_Loop)
//Check_Infinite_Loop
func cil(id)
for(i = 0; i < cil.size(); i++)
if(cil.get(i) == id)
i = cil.size()
cp = 1
end
end
return(cp)
end
![](/img/icon_plus.gif)
С этими изменениями, следующая конструкция:
Add(EntryPoint,2953706,21,105)
{
link(onCreate,9561305:doEvent1,[])
}
Add(Message,7319166,140,105)
{
}
Add(Hub,9561305,70,105)
{
OutCount=3
link(onEvent1,1428281:doWork2,[])
link(onEvent2,1428281:doWork3,[(109,118)])
link(onEvent3,3686637:doWork2,[(112,125)(112,167)])
}
Add(HubEx,1428281,105,105)
{
link(onEvent,7319166:doMessage,[])
}
Add(Message,3837821,140,161)
{
link(onMessage,3686637:doWork1,[(184,167)(184,158)(123,158)])
}
Add(HubEx,3686637,119,161)
{
link(onEvent,3837821:doMessage,[])
}
Подготовка к сборке проекта...
Генерация кода целевого языка
Кольцевание Message4001
Компоновка проекта...
Command line: csc.exe "/out:C:UsersAdminDesktopProject1.exe" /target:winexe "/win32res:D:Program FilesHiAsm_AltBuildElementscnetcodeallres.res" "D:Program FilesHiAsm_AltBuildElementscnetcodeProject1.cs"
Љ®¬ЇЁ«пв®а Microsoft (R) Visual C# 2010, ўҐабЁп 4.0.30319.1
(C) Љ®аЇ®а жЁп Њ ©Єа®б®дв (Microsoft Corp.). ‚ᥠЇа ў § йЁйҐл.
Сборка завершена.
Вот
![](/img/smilies/icon_smile.gif)