Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Зависимость DLL от EXE? microsoft visual c++ 6.0 
:(
    Опции темы
sergey_85
Дата 18.1.2011, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 17.4.2007
Где: Россия, Челябинск

Репутация: нет
Всего: 1



Привет!

Компилирую чужой проект (exe + ATL, OCX). Depency Walker показывает зависимость от другого внешнего exe файла. 
В настройках проекта нигде зависимостей не нашел, как такое возможно, чтобы один exe зависел от другого, а не от dll? хотя в настройках проекта нигде не прописано,    #pragma comment(lib, "") тоже нет?

PS: если в папку кинуть недостающий exe, то все работает!

Спасибо!


--------------------
A good design always pays off.
PM MAIL   Вверх
xvr
Дата 18.1.2011, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 8
Всего: 223



Цитата(sergey_85 @  18.1.2011,  14:41 Найти цитируемый пост)
Depency Walker показывает зависимость от другого внешнего exe файла.
Чудеса. А можно файл проекта посмотреть?


PM MAIL   Вверх
sergey_85
Дата 19.1.2011, 07:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 17.4.2007
Где: Россия, Челябинск

Репутация: нет
Всего: 1



Да, он показывает зависимость одной dll от .exe файла, к сожалению исходника этой dll нет, есть только сама dll в "debug" сборке, т.к. проект чужой :(. 
"подарок" от прежней команды разработчиков.

Dependency показывает зав. в одной из ф-ций этой dll. 
А например как это может выглядеть в коде, как вызов к примеру shellExecute(...)?

Так, что буду класть в папку этот .exe и работать так.

...и еще вопрос, если я весь проект собираю в релизе, а эта самая dll-ка в сборке debug есть, получится собрать весь проект в релизе?

Спасибо!

Добавлено @ 07:13
Сам проект написан на Visual C++ 6.0, в файле проекта нет зависимостей, все они прописаны в коде, примерно так: 
Код

#ifdef _DEBUG
   #pragma comment(lib, "X:\\xxxxx\\xxxx.lib")
#else
   #pragma comment(lib, "X\\xxxxx\\xxxx.lib")
#endif


Это сообщение отредактировал(а) sergey_85 - 19.1.2011, 07:14


--------------------
A good design always pays off.
PM MAIL   Вверх
xvr
Дата 19.1.2011, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 8
Всего: 223



Цитата(sergey_85 @  19.1.2011,  07:07 Найти цитируемый пост)
Dependency показывает зав. в одной из ф-ций этой dll. 
А например как это может выглядеть в коде, как вызов к примеру shellExecute(...)?
Нет, там должно быть что то другое. А тогда на саму dll можно глянуть?

Цитата(sergey_85 @  19.1.2011,  07:07 Найти цитируемый пост)
...и еще вопрос, если я весь проект собираю в релизе, а эта самая dll-ка в сборке debug есть, получится собрать весь проект в релизе?
Должно получится

PM MAIL   Вверх
sergey_85
Дата 20.1.2011, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 17.4.2007
Где: Россия, Челябинск

Репутация: нет
Всего: 1



не могу dll показать, к сожалению :(


--------------------
A good design always pays off.
PM MAIL   Вверх
Batbko
Дата 20.1.2011, 23:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 40
Регистрация: 17.12.2010

Репутация: нет
Всего: нет



в исполняемом файле вполне может быть таблица экспорта, функции определяються и подключаються внешними модулями точно так же как и в случае с dll библиотеками.
Так что хоть это и не супер классный стиль разработки но PE формат позволяет делать такие трюки ;). 
Проблемы могут начаться при попытке упаковать экзешник, большинство упаковщиков в первую очередь сносят из экзешника таблицу экспорта.
PM MAIL   Вверх
jonie
Дата 21.1.2011, 08:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 5
Всего: 118



Цитата(xvr @ 19.1.2011,  11:22)
Цитата(sergey_85 @  19.1.2011,  07:07 Найти цитируемый пост)
...и еще вопрос, если я весь проект собираю в релизе, а эта самая dll-ка в сборке debug есть, получится собрать весь проект в релизе?
Должно получится

плохая идея миксовать дебаг и релиз. А что если передаются сложные сишные объекты между модулями? А какая crt будет рулить памятью?....


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: COM/DCOM/ActiveX/ATL/CORBA | Следующая тема »


 




[ Время генерации скрипта: 0.0479 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.