Tokay Posted March 20, 2017 Share Posted March 20, 2017 Всем доброго дня. Для начала благодарности. Спасибо за интересную библиотеку. Похоже - как раз то, что нам нужно. Сейчас решается вопрос о покупке одной либо нескольких лицензий. Но есть некоторые сложности с использованием. Пытаюсь использовать библиотеку на нескольких своих проектах. В одном из них, достаточно сложном, есть несколько проблем, скорее всего на стороне библиотеки UniGui. Либо неправильное её использование, либо баги. Мы используем RC триал. Во-первых, хочу создать баг-репорт на форуме, но не могу: "You cannot start a new topic". Скажите - куда можно писать и как вообще происходит поддержка? По самой библиотеке, вот что случается: 1. в одном случае срабатывает ассерт: --------------------------- Debugger Exception Notification --------------------------- Project Project2.exe raised exception class EAssertionFailed with message 'Attempt to access nil session reference (H:\Framework\uniGUI\Source\Core\ExtPascal.pas, line 1247)'. --------------------------- Break Continue Help --------------------------- на вот таком коде: Session.FNodeFields.RootNode := FTV.Items.AddNode(nil, ParentNode, '', Session, naAddChild); Здесь: FTV:TUniTreeView; RootNode: TUniTreeNode; 2. во втором случае случается AV: --------------------------- Debugger Exception Notification --------------------------- Project Project2.exe raised exception class $C0000005 with message 'access violation at 0x00793350: read of address 0x00000064'. --------------------------- Break Continue Help --------------------------- Вот в этом месте: function Form2: TForm2; begin Result := TForm2(UniMainModule.GetFormInstance(TForm2)); end; форма Form2 существует и открыта. Quote Link to comment Share on other sites More sharing options...
Sherzod Posted March 20, 2017 Share Posted March 20, 2017 Здравствуйте, Спасибо за Ваш интерес к UniGUI. Можете ли Вы создать тестовый пример и отправить на info@fmsoft.net? С уважением, Quote Link to comment Share on other sites More sharing options...
Tokay Posted March 20, 2017 Author Share Posted March 20, 2017 fixed Quote Link to comment Share on other sites More sharing options...
Tokay Posted March 20, 2017 Author Share Posted March 20, 2017 fixed Quote Link to comment Share on other sites More sharing options...
Tokay Posted March 20, 2017 Author Share Posted March 20, 2017 fixed Quote Link to comment Share on other sites More sharing options...
Tokay Posted March 20, 2017 Author Share Posted March 20, 2017 По поводу второй проблемы думаю за проблему с многопоточностью. Возможно, что форма создаётся в одной сессии, а доступ к форме идёт из другой. Как вообще это узнать? https://unigui.wikispaces.com/Standard+units+in+an+uniGUI+project "In other words, each session (i.e. each MainModule) will have its own DataModule. If the DataModule contains a DataSet (i.e. TADOTable or TFDTable), each session will have its own instance of this DataSet" Можно ли как-то у UniMainModule запрашивать не какую-то форму вообще, а определённую? Вообще - формы UniGUI являются thread safe? В отличие от того же VCL? Жду ответа p.s. похоже, проблема не в доступе из разных потоков. Мне удалось повторить проблему с минимальной обвязкой. Пошлю пример на указанный ящик. С первой проблемой будет, скорее всего, не так просто. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.