Страница: 1 |
Страница: 1 |
Вопрос: Помогите пожалуйста с Инициализацией Dll библиотек
Добавлено: 19.03.09 09:16
Автор вопроса: Lion | Web-сайт:
После компиляции проекта требуется обновить dll библиотеку без повторной компиляции проекта. Можно ли программно как то ее инициализировать? И если можно, то как? ( VB6 )
Ответы
Всего ответов: 11
Номер ответа: 1
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #1
Добавлено: 19.03.09 12:36
1. Что ты понимаешь под термином "инициализировать"?
2. Какой тип библиотек dll ты имеешь ввиду: native (stdcall) или activex (com)?
3. Скорее всего можно - в чем же проблема? Надо не забывать, что после перекомпиляции activex dll одной замены dll может быть недостаточно, библиотеку надо перерегистрировать. Например, через regsvr32.
Странно, что вопрос по VB6 ты написал в форум по VBA.
Номер ответа: 2
Автор ответа:
Lion
ICQ: 367220539
Вопросов: 13
Ответов: 55
Web-сайт:
Профиль | | #2
Добавлено: 19.03.09 12:45
activex (com). Перерегистрировать-не проблема. Дело в том, что после замены библиотеки и перерегистрации ее, она не пашет в программе. Если можно примерчик плизз.. Насчет форума, прогрядел немного..... лазил везде просто, вот и ошибся адресом)))
Номер ответа: 3
Автор ответа:
Lion
ICQ: 367220539
Вопросов: 13
Ответов: 55
Web-сайт:
Профиль | | #3
Добавлено: 19.03.09 12:48
А вообще суть в этом: Написал СУБД, а клиенту нужно все больше и больше как всегда. Хочу решить вопрос с обновлениями для моей СУБД, путем замены dll. Если есть что нибудь другое, то буду сильно признателен за совет! Спасибки
Номер ответа: 4
Автор ответа:
Lion
ICQ: 367220539
Вопросов: 13
Ответов: 55
Web-сайт:
Профиль | | #4
Добавлено: 19.03.09 12:50
А то геморрой понимаете ли. Компилировать dll.... Вставлять в проект.... Компилировать проект....
Номер ответа: 5
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #5
Добавлено: 19.03.09 12:57
Ну тут наверное загвоздка с тем, что после перерегистрации меняется GUID (это такой длинный цифровой код объектов activex типа {98de59a0-d175-11cd-a7bd-00006b827d94}). Что делать я пока не придумал. А не проще в твоем случае создать группу из 2 проектов (activex dll и exe), чтобы exe-проект ссылался на activex dll проект и всегда компилировать из на пару? Или это не выход, потомучто нужен механизм подобный реализации плагинов?
Номер ответа: 6
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #6
Добавлено: 19.03.09 13:01
Группа проектов - это когда через меню File к одному проекту добавляешь другой проект, они в Project Explorer потом отображаются оба рядышком. Твои действия сведутся к двум компиляциям без вставки в проект dll каждый раз по новой.
Номер ответа: 7
Автор ответа:
Lion
ICQ: 367220539
Вопросов: 13
Ответов: 55
Web-сайт:
Профиль | | #7
Добавлено: 19.03.09 13:17
Так то оно так... но все равно.. Dll весит копейки... А .exe под 3 метра... Не охота как то его за собой таскать(
Номер ответа: 8
Автор ответа:
Lion
ICQ: 367220539
Вопросов: 13
Ответов: 55
Web-сайт:
Профиль | | #8
Добавлено: 19.03.09 13:20
Мысль ясна. Основной exe оставляем. И из него запускаем другой, к которому привязаны dll. Но теряются глобальные переменные(((
Номер ответа: 9
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #9
Добавлено: 19.03.09 13:47
С нативными dll у тебя бы не было таких вопросов - просто заменяешь файл библиотеки и все. С activex dll что-то не придумаю, что тебе предложить... А, это.. там же у тебя в dll класс? Gjghj,eq создавать объект класса динамически:
Вроде так - попробуй - получится? MyActiveX_DLL_Class - это ия класса, оно становится известно системе после регистрации библиотеки.
Номер ответа: 10
Автор ответа:
Lion
ICQ: 367220539
Вопросов: 13
Ответов: 55
Web-сайт:
Профиль | | #10
Добавлено: 19.03.09 14:43
Я тебе в асю отписал кое что.... Не читал? Мой ICQ: 367220539
Номер ответа: 11
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #11
Добавлено: 19.03.09 15:00
Я в асе только вечером. Пиши если что мне на почту (есть в моем профиле).