Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Почему Delphi-проекты требуют msvcp71.dll???


Автор: allx 8.4.2006, 21:01
Недавно вскрылась забавная деталь - без указанной длл программы зависает, сохраняя при этом часть функциональности, после сообщения об отсутствии этой длл. В коде обращений к данной длл ессно нет, в чем может быть трабла?

Использованные VCL - DCPCrypt, JEDI, MPHexEditor. В коде VCL обращений к длл тоже нет.

Автор: smartov 8.4.2006, 22:12
Наверняка есть вызов какой-то API-функции, задекларированной этой библиотеке.

Автор: allx 8.4.2006, 22:26
smartov,
ну апишных вызовов хватает... но почему именно к этой библиотеке??? ведь нигде в сорсах (в том числе сорсах дельфая) нету обращений именно к этой либе.

Автор: smartov 8.4.2006, 23:53
Пути виндовы неисповедимы smile
Тогда видать дельфя вызывает каку-то функцию из библиотеки и та фукнция в свою очередь вызывает функцию из msvcp...
О как smile

Автор: Sunvas 9.4.2006, 00:52
Хм. Вот я смотрю многие прогаммы при инсталяции эту библиотеку тоже себе в папочку ставят. Случайность?

Цитата(allx @ 8.4.2006, 22:26 Найти цитируемый пост)
ведь нигде в сорсах (в том числе сорсах дельфая) нету обращений именно к этой либе.

Оно то так. Но ведь мы о работе программ знаем только с общедоступной теории. А как там Майкрософт свои винды писала я думаю никто кроме майкрософтовцев и не знает. Поэтому порой случаются такие "аномалии". Это касается и написаных в делфи программ - ведь мы тоже на 100% не знаем как там прога компилируется и что в нее добавляется или убирается. Запомни - ничему доверять нельзя, а особенно чужим программам и Виндам!

Автор: allx 9.4.2006, 08:39
Sunvas,
smartov,
блин... если бы требовалась еще msvbvm7.dll - я бы вообще застрелился...
по теме: поставил эксперимент: на ноут бати поставил прогу мою, указанной длл (msvcp71.dll) в системе нет и не было (хотя та же win xp sp2, правда home). прога запускается и работает безо всяких ругательств...
На другом компе:
Пробовал включить в дистрибутив эту длл, положив рядом с екзеником и зарегистрировав ее (regsvr32 c:\...\msvcp71.dll) - при регистрации вываливается ошибка о невозможности зарегить, т.к. точка входа этой длл не найдена (как это похоже на микрософт). если положить длл без регистрации - проект продолжает ругаться на ее отсутствие.
вооот и как тут быть???

Автор: Yanis 9.4.2006, 09:43
2 allx
С трудом верится, что любая программа которую ты делаешь на своёй Delphi требует эту dll.

Цитата(allx @ 8.4.2006, 22:26 Найти цитируемый пост)
ну апишных вызовов хватает... но почему именно к этой библиотеке??? ведь нигде в сорсах (в том числе сорсах дельфая) нету обращений именно к этой либе.
Значит, ты ошибаешься!

Автор: allx 9.4.2006, 12:04
Yanis,
насчет того что нету вызовов к этой длл - не ошибаюсь:
1) нигде в сорсах vcl, delphi и самого проекту нету на этой длл
2) при отсутствии этой длл в системе программа функционирует нормально, и не ругается

Автор: Yanis 9.4.2006, 13:20
Цитата(allx @ 9.4.2006, 12:04 Найти цитируемый пост)
1) нигде в сорсах vcl, delphi и самого проекту нету на этой длл

Создай пустой проект и попробуй запустить на машине где требуется эта дллка.

Цитата(allx @ 9.4.2006, 12:04 Найти цитируемый пост)
насчет того что нету вызовов к этой длл - не ошибаюсь:

Ошибаешься smile

Автор: Snowy 9.4.2006, 15:04
ее вполне может вызывать какой-нить активикс, который используешь.
Например TreeView.
Тем более, что используется JVCL. Они могли любой актив контрол заюзать.

Автор: allx 9.4.2006, 15:40
Snowy,
бааа. разве TreeView - ActiveX ??? В проекте есть одно дерево...

Автор: Snowy 9.4.2006, 17:06
Цитата(allx @ 9.4.2006, 15:40 Найти цитируемый пост)
разве TreeView - ActiveX
Смотря какой.
Если построен на SysTreeView32, то да.
И таких вариантов может быть множество.
Тулбары, кулбары и т.д.
Я думаю, что JVCL щедро пользуется именно этими вещами.
А их нам приносит IE. И все это активиксы, писанные на VS.
Так что не удивительно, что они юзают рантаймовые либы VC++.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)