|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
28.02.2013, 17:31 | #1 |
Регистрация: 28.03.2012
Сообщений: 4
|
Работа с TChart pro 7.07 и динамическими длл-ками( BC6)
Есть проблема в динамической библиотеке (dll) я создаю формы, на формах располагаю tchart. Если я включаю в runtime packages TEE7C6, то в основном проекте при загрузки ДЛЛ
HINSTANCE hinst = LoadLibrary(str_name.c_str()); Вылетает ексептион invalid pointer operation. Соответственно с tchart 4 все работало. Пробовал на голой форме с tchartom все пашет, токо еще есть глюк с codeguard( если включен и врублены runtime packages tchart'а) то вылетает ошибка обращения к нулевой памяти на голой форме с tchartoм. Кто сталкивался с похожей проблемой пожалуйста отпишитесь.. ps:попробовал описать проблему (надеюсь понятно). |
28.02.2013, 20:50 | #2 |
Форумчанин
Регистрация: 29.01.2013
Сообщений: 319
|
Непонятно. Если используются хоть какие-то packages, то надобность в ручной загрузке DLL отпадает. Но, в любом случае, неплохо было бы посмотреть, что такое str_name? Как описано и что содержит?
|
01.03.2013, 09:12 | #3 |
Регистрация: 28.03.2012
Сообщений: 4
|
Опишу более подробно.
Группа проектов представляет из себя проект екзешника (форма MDI) и набор плагинов dll(форм mdi Child) . екзешник динамически загружает плагины, таким образом расширяя свой функционал. Все необходимые packages я включаю в runtime packages. Все работало отлично, но была необходимость перейти с TChart pro 4 до TChart pro 7.07. В результате обнаружил 2 вещи. 1) если на пустой (новый проект с формой) добавить tchart и включить пакеты в режиме дебаг все работает хорошо, но стоит включить code guard -вылетает ошибка доступа к нулл памяти (не код гуард ругается а именно ошибка). 2) При работе с моей группой проектов мне необходимо добавить во все длл-ки с tchart-ом в рантайм packages необходимые пакеты для tchart.. Путем проб и ошибок я выяснил, что если в длл добавить необходимый пакет TEE7C6, то на этапе загрузки длл(что странно) (HINSTANCE hinst = LoadLibrary(str_name.c_str()) вываливается ексептион invalid pointer operation. Если убрать из длл-ки TEE7C6, то все грузится норм. Но этот пакет мне необходимо добавлять в runtime, иначе я не смогу юзать techart в других длл. HINSTANCE hinst = LoadLibrary(str_name.c_str()); - строчка правильная, передается все нормально (относительный путь содержит) екзешник и длл лежат в одной папке. Все bpl-ки лt;fn в систем 32 (то есть вроде tchart вроде поставился нормально) Последний раз редактировалось mikulka; 01.03.2013 в 09:18. |
01.03.2013, 10:27 | #4 |
Регистрация: 28.03.2012
Сообщений: 4
|
Прошу прощения, вопрос номер 2 решен. Глупость какая я в проекте длл забыл поставить use dinamic rtl (интересно что старый tchart работал и так).
Вопрос номер 1 остается открытым.. на форму пихаешь чарт + пакеты + codeguard-ошибка |
01.03.2013, 10:29 | #5 |
Форумчанин
Регистрация: 29.01.2013
Сообщений: 319
|
Настораживает то, что даже пустой проект не компилится... А старый даже в дебаге не работает? А в ридми к чарту ничего не написано? Он собирается из исходников, или готовые библы?
|
13.03.2013, 09:07 | #6 |
Регистрация: 28.03.2012
Сообщений: 4
|
Прошу прощения за долгий ответ.
Использовал готовые, если есть ссылка на исходники, то прошу. ( что-то старого tchart 7 для ,builder 6 найти трудно). Там есть файл с инструкцией. Сделал по инструкции, правда пришлось некоторые пути и константы путей задавать вручную (instal не все пути прописал).не заработало, тогда нашел на форуме что нужно удалить из system 32 bpl-ки связанные со старым tchar и соответственно из папки билдера. После этого все работает, но если добавлять в пакеты TEE7C6 и в настройках выставлять код гуард, то вылетает с ошибкой доступа к памяти по адресу ....05 (на пустом проекте соответственно) |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа с динамическими списками | SnegovikON | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 20.12.2011 15:45 |
Работа с динамическими объектами | medved6216 | Общие вопросы Delphi | 3 | 17.11.2011 19:08 |
Работа с динамическими переменными | DonLena | Фриланс | 4 | 15.10.2008 18:13 |
Работа с динамическими переменными | DonLena | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 14.10.2008 20:05 |