![]() |
|
|
![]()
|
|
| ZVano |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 259 Регистрация: 11.12.2006 Где: Украина, Кривой Р ог Репутация: 1 Всего: 4 |
Написал программу, которая использует в работе libcurl.dll
Работает только на компьютерах с установленой "Microsoft Visual C++ 2008 Redistributable Package". Если пакет не установлен, то при запуске программы получаю ошибки в журнале "Система" ОС:
В зависимостях нашел ссылку на MSVCR90.dll, которая устанавливается с "Microsoft Visual C++ 2008 Redistributable Package". Попытка подложить к программе "MSVCR90.dll" ничего не дала. Вопросы: 1. В чем причина? 2. Почему программа не кушает подложеную "MSVCR90.dll"? 3. Как побороть проблемму без установки пакета? 4. Уйдет ли зависимость от "MSVCR90.dll", если скомпилировать "libcurl.dll" из исходников в CodeGear Builder 2010? Это сообщение отредактировал(а) ZVano - 20.4.2011, 17:56 -------------------- НЕ ФЛУДИМ. Пользуемся кнопками "+" или "-" для выражения своего отношения к теме или сообщению. Гуглим "Как правильно задавать вопросы" |
|||
|
||||
| ZVano |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 259 Регистрация: 11.12.2006 Где: Украина, Кривой Р ог Репутация: 1 Всего: 4 |
Отвечу сам себе:
4. Да, зависимость ушла. Скачал исходники с URL Скомпилил командой make -f Makefile.b32 Подложил dll и lib-файл в проект. Обновил заголовочные файлы curl в проекте. Скомпилил проект. Все работает. Не требуется никаких M$$ких пакетов. Вывод: M$$$кие мудаки активно распространяют свой гребаный "Microsoft Visual C++ XXXX Redistributable Package" за счет других разработчиков. Встроили в свою MSVCR**.dll какую-то проверку манифеста, п%%%сы. Без корректной установки (или ломания) эта библиотека работать не будет. Эмоции хлещут через край. Это сообщение отредактировал(а) ZVano - 21.4.2011, 13:00 -------------------- НЕ ФЛУДИМ. Пользуемся кнопками "+" или "-" для выражения своего отношения к теме или сообщению. Гуглим "Как правильно задавать вопросы" |
|||
|
||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 48 Всего: 223 |
От чего эмоции? MS с тебя денег запросила за "Microsoft Visual C++ XXXX Redistributable Package"? Для справки - этот самый пакет и предназначен для того, что бы программы, собранные в VS2008 с библиотеками в DLL могли работать. Не хотите DLL - линкуйте проекты со статическими библиотеками Если же вам нужна DLL для использования в Bulder'е, то логично ее собирать в Builder'е, не находите? |
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 18 Всего: 135 |
не нахожу. Оптимизатор в Builder'е (какбэ это помягче выразиться) плохой, поэтому сборка dll-ки в студии и использование в BCB (для меня, например) дело обыденное ZVano, при сборке библиотеки в проекте можно указать - Use MFC in a Static Library -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| ZVano |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 259 Регистрация: 11.12.2006 Где: Украина, Кривой Р ог Репутация: 1 Всего: 4 |
Потому что они встроили в библиотеку искуственную проверку (проверку манифеста). С этой проверкой недостаточно иметь в системе нужную dll - нужна корректная установка всего пакета. Зачем они это сделали? IMXO: Порядочные люди так не поступают. -------------------- НЕ ФЛУДИМ. Пользуемся кнопками "+" или "-" для выражения своего отношения к теме или сообщению. Гуглим "Как правильно задавать вопросы" |
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 18 Всего: 135 |
Вполне логично сделали. Это если и не нормальный, но работающий выход из DLL hell В "порядочном" билдере в нескольких версиях менеджер памяти называется borlandmm.dll. Теперь смотри, есть exe-шник, например 5-й версии билдера. Он требует borlandmm.dll от этой 5-й версии. Есть dll-ка, сделанная в 6-й версии билдера. Она требует borlandmm.dll от своей, 6-й версии. Это "порядочно" ? -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| ZVano |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 259 Регистрация: 11.12.2006 Где: Украина, Кривой Р ог Репутация: 1 Всего: 4 |
Нет. Это вообще лажа. Претензии к M$$ снимаются Всем спасибо. Получены ответы на все заданые вопросы, и даже больше. Это сообщение отредактировал(а) ZVano - 22.4.2011, 10:29 -------------------- НЕ ФЛУДИМ. Пользуемся кнопками "+" или "-" для выражения своего отношения к теме или сообщению. Гуглим "Как правильно задавать вопросы" |
|||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |