![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
QTINTF.DLL-как от нее избавиться?
Вячеслав © (2002-03-29 11:05:00)Написана программа, с использованием IBXв Делфи6. При переносе ее на другую машину требует сабж. Но ничего ориентированного на CLX там быть вроде не должно, а все одно-требует дополнительную библиотеку. Зачем оно ей надо и как от этого избавиться?
Заранее спасибо.
Alx2 (2002-03-29 17:37:00) [1]>Song © (29.03.02 17:25)
Себя процитирую:
Все равно, если найдется такой модуль, то он необязательно напрямую используется в проекте. Он может косвенно там сидеть, то есть искать еще и модуль, который использует другой модуль, который, ... , который использует эту DLL.
Откуда тогда компилятор, без явного указания, может знать из какой DLL надо брать необходимое? Поясните. Может, я во что не въезжаю?
Song (2002-03-29 17:25:00) [2]Ok,
Пишем Uses QDialogs;
И вызываем например SelectDirectory
Этот модуль использует qtinf.dll, но однако в тексте модуля никакого прямого экспортирования вышеуказанной dll-и нет. А при сборке exe файла код вызывает SelectDirectory именно из dll-и.
Вячеслав (2002-03-29 16:40:00) [3]Спасибо всем, все нашел и изничтожил :)
Alx2 (2002-03-29 14:15:00) [4]>не строку ""QTINTF.dll"", а ""QTINF"
Иван, да ладно Вам:))
Все равно, если найдется такой модуль, то он необязательно напрямую используется в проекте. Он может косвенно там сидеть, то есть искать еще и модуль, который использует другой модуль, который, ... , который использует эту DLL.
Еще вариант: сгенерировать детальный map-file и полазить в нем :)
Иван Шихалев (2002-03-29 14:04:00) [5]Можно было понять и иначе :) И, кстати, искать надо не строку
""QTINTF.dll"", а""QTINF"-".DLL"может и опускаться.
Alx2 (2002-03-29 13:10:00) [6]>Иван Шихалев © (29.03.02 12:54)
Естественно. Но я же не писал, что надо искать их в модулях проекта. Я написал, что среди найденных (всех) модулей надо выяснить, какие из них используются в проекте.
Иван Шихалев (2002-03-29 12:54:00) [7]Сидят то они сидят, только не в модулях проекта, а в стандартных.
Alx2 (2002-03-29 12:40:00) [8]>Song © (29.03.02 12:31)
>QTINTF.dll не может содержаться в pas
Но ведь чтобы импортировать функции из некоторой DLL, мы должны указать ее имя. Или можно как-то иначе?
Если нет исходников, но есть DCU, то строковые константы опять-таки там сидят.
Song (2002-03-29 12:31:00) [9]QTINTF.dll не может содержаться в pas, если только мы не экспортировали нужные нам функции вручную. В dcu не проверял, но маловероятно. Ссылки на библиотеки находятся только в exe.
Alx2 (2002-03-29 12:00:00) [10]Можно вычислить модуль, который ее использует, "в лоб":
Вызываем поиск для всех *.pas; * .dcu; с наличием внутри оных строки "QTINTF.dll" и смотрим, какой из них сидит в проекте.
Song (2002-03-29 11:25:00) [11]Верояно, какой-либо модуль Вашего проекта использует библиотеки из этого файла. Обычно он требуется тогда, когда сеция uses ипользует модули Q*.dcu Просмотрите все модули проекта и найдёте проблему.