![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
LoadLibrary [D7, WinXP]
dll © (2008-06-04 13:08:00)разбирая унаследованный код, обнаружил, что прежний разработчик сравнивал результат LoadLibrary на то, что он больше 32. Если типа меньше, то не загружена.
Скажите, это вообще правомочно или нет?
(2008-10-01 15:23:00) [1]Удалено модератором
(2008-10-01 15:22:00) [2]Удалено модератором
dll (2008-06-09 15:55:00) [3]Либы собирались в VS 2005.
Пока ставлю всем vcredist_x86.exe если нету.
Надо бы закаптурить этот редистр и встроить все это шаманство в свой инсталятор.
Anatoly Podgoretsky (2008-06-09 14:55:00) [4]> dll (09.06.2008 14:16:44) [44]
Какая версия, но вообще то они все глюкавые.
dll (2008-06-09 14:16:00) [5]нет. здесь иная опера.
Barloggg (2008-06-09 11:36:00) [6]я разок столкнулся со странной фигней, вот она DLL, а не грузится. и ругаецца "активеХ не может чего-то там создать".
Оказалось положить данную конкретную DLL в одну директорию мало. Надо ее скопировать в Windows\System32, а потом еще зарегистрировать ее запустив regsvr32 с именем либы.
Когда так сделал, заработало.
Может и здесь так же?
Anatoly Podgoretsky (2008-06-06 12:20:00) [7]> dll (06.06.2008 11:15:41) [41]
Нафига нам линукс, тамже сайт с хакерской раскраской, это же насилие над организмом.
dll (2008-06-06 11:15:00) [8]короче говоря неедущие лыжи растут отсюда
http://www.linux.org.ru/view-message.jsp?msgid=1634061
Игорь Шевченко (2008-06-06 10:05:00) [9]
> http://rapidshare.com/files/120324370/ttt.txt
Resources:
Type Name Lang Id
--------------------------------------------
[0 named entries, 1 ID entries]
type: Unknown (24) (next directory @00000018)
Вот это и есть манифест, в котором прописано место, где искать MSVCR80.dll
dll (2008-06-05 22:03:00) [10]Похоже нет там манифеста
http://rapidshare.com/files/120324370/ttt.txt
Игорь Шевченко (2008-06-05 20:11:00) [11]
> откуда три длл знают, что им нужен 1433 билд?
из манифеста
> как посмотреть?
tdump имя.dll
dll (2008-06-05 17:56:00) [12]непонятно вот что:
"три" длл импортируют msvcp80 и msvcr80
на чистой машине убираю 1433 билд всех библиотек *80.dll
остается билд 762.
тест не работает.
откуда три длл знают, что им нужен 1433 билд?
dll (2008-06-05 17:48:00) [13]наверное нету. как посмотреть?
ресурса версии точно нету.
Игорь Шевченко (2008-06-05 17:44:00) [14]
> три не моих длл импортируют несколько сишных рантайм библиотек.
> на "нормальном" компе все они лежат в WinSxS.
У них манифест есть в ресурсах ? У трех не твоих dll
dll (2008-06-05 17:39:00) [15]нету. лежат отдельно в виде файлов в папке манифестс
Игорь Шевченко (2008-06-05 17:36:00) [16]
> У них манифест есть в ресурсах ?
dll (2008-06-05 17:16:00) [17]На чистой, только что установленной машине нашел по две версии msvcp80.dll msvcr80.dll
лежат в папке windows\WinSxS\x86_Microsoft_бла_бла_бла_1433_бла бла
1433 нужный мне билд (при переименовании длл другого билда рабюотоспособность не теряется)
манифестов рядом с длл нет
Видимо они в windows\WinSxS\Manifests
как же мне на системах с отсутствующим номером билдов вклеить эти длл?
Игорь Шевченко (2008-06-05 17:11:00) [18]
> три не моих длл импортируют несколько сишных рантайм библиотек
У них манифест есть в ресурсах ?
> в WinSxS длл попадают судя по описанию в результате кривых
> инсталяторов, если те пытаются заменить одноименные длл.
>
Нет
dll (2008-06-05 16:59:00) [19]ок. зайдем с другого бока.
назначение winSxS - разрешение конфликта одноименных dll разных версий.
ситуация: три не моих длл импортируют несколько сишных рантайм библиотек. на "нормальном" компе все они лежат в WinSxS.
вопрос: почему не загружаются те три длл, если других версий msv*80.dll нет, а существующие лежат в путях?
еще вопрос:
в WinSxS длл попадают судя по описанию в результате кривых инсталяторов, если те пытаются заменить одноименные длл.
у меня три эти длл не инсталировались, а просто были распакованы из присланного архива. И все разботает.
На некоторых "неправильных" машинах не работает, даже если библиотеки *80.dll лежат вместе с теми тремя.
куда копать?
Игорь Шевченко (2008-06-05 16:56:00) [20]
> Судя по WinSxS так и есть, это папка предшественница защиты
> Висты, на некоторых машинах превышает System32
Собственно, не совсем предшественница, скорее Vista преемница. А ноги из .Net растут - борьба с DLL Hell