![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 22 Всего: 135 |
Собственно сабж
-------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 20 Всего: 121 |
Пройтись по таблице импорта exe и получить список dll из которых он импортирует функции, потом по таблицам импорта этих dll и получить списки dll'ек от которых они зависят. Ну и т.д.
-------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 81 Всего: 211 |
||||
|
||||
| GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
разумеется если программа грузит какие-то длл динамически, поиск по таблице импорта не поможет.
|
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 22 Всего: 135 |
azesmcar, спасибо. скачал depends.zip со второй ссылки. Всё чётко понятно.
GoldFinch, ну, это-то понятно. не первый год "замужем" А всё-таки, нет ли какого-нибудь API для этого, ибо не хочется лазать по exe-шнику (напоминает хакерство в худшем смысле этого слова). Да и я не удивлюсь, если M$ изменит формат PE в Windows 8 -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 22 Всего: 135 |
А вообще-то мне не это нужно было
Кто-нибудь знает как в NSIS-скрипте узать зависимости exe-шника. можно, конечно, написать свою библиотеку в формате NSIS и подавать в неё из скрипта имя exe, но может кто-нибудь встречал подобное ? -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 20 Всего: 121 |
И что ты хочешь из своей системы вытащить все нужный dll и поместить их в инсталлер? Это не очень хорошая идея. Лучше интегрировать в инсталлер необходимые packadges.
-------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 22 Всего: 135 |
W4FhLF, Да, именно это и хочу. Думаю следует ввести список исключений для vc_redist например, но чтобы требуемые dll-ки Qt или ipp и т.п. встраивались в инсталлятор автоматически
-------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 20 Всего: 121 |
borisbn, я юзаю Inno Setup, там такого точно нет. Да я и сам не вижу смысла в этой feature. Dependencies релиза есть уже сформировавщийся набор зависимостей, который вряд будет меняться. Если и только сами библиотеки будут обновляться, но это не проблема для инсталлера, т.е. я в inno например пишу так:
Следовательно если обновляется Qt, то обновляется и инсталлер. -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 22 Всего: 135 |
W4FhLF, у меня немало проектов, требующих инсталляторов. Проекты используют не только Qt, а ещё ipp. Есть старые проекты на Builder'е. Плюс к тому я работаю в команде, где у каждого похожая ситуация. Я бы хотел сделать один скриптик для всех, чтобы не приходилось каждый раз смотреть dependencies.
В принципе как вариант можно сделать программку, копирующую все нужные dll в каталог с инсталлируемой программой, а в скрипте указать *.* -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 15 Всего: 118 |
borisbn, создатель инсталлятора должен знать все зависимости, которые использует программа....я бы не стал доверять depends-walker-ам.....
-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 22 Всего: 135 |
W4FhLF, jonie, уговорили, тем более, что у меня ещё куча динамически подгружаемых DLL. Закрываю.
azesmcar, ещё раз спасибо за полезные ссылки -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 4 Всего: 91 |
Я каждый раз мучаюсь при самостоятельной сборке QtCreator'a, пока его раз 15 не запустишь под depends.exe через F7 с динамическим профилированием, не понятно какие он .dll'ки цепляет.
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |