OdesitVadim

Advanced Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Майкрософт изобрел "свое" решение проблемы dll hell (ад длл) - называется Side by Side (бок о бок). Суть заключается в следующем. Когда какое то приложение копирует себе в каталог Windows общедоступные длл, то там могут быть с таким именем. и что бы избежать проблем с тем, что другая прога может не найти свою длл, винда культурно ложит их в каталог SxS и делает приписки в реестре для какого приложения. когда какое то приложение требует длл, она ему подсовывает нужную. Новые приложения знают об этой особенности и в файле манифеста могут указать точную версию длл(цифровую подпись также? - есть такое подозрение), что бы не заниматься копированием. Это обяснение первой проблемы. При переключении Цитата: Multi-threaded (/MT) заместо Multi-threaded DLL (/MD) | приложение начинает использовать другие длл, которые лежат "там где нужно", тоесть напрямую в каталоге system32 и приложение находит их. Решить эту проблему можно так. создать файл манифеста, где прописать нужные длл. а на чужой машине установить специальный пакет, который скопирует нужные длл и зарегистрирует их. название точно не помню, но в своём имени он имеет vcredist и может быть найден в каталоге со студией в виде cab. Зачем МС так сделала? не знаю. раньше все критиковали борланд за то, что либо ехе большие, либо bpl копируй. Теперь подобное делает МС, но на неё язык не подымается Говорят, что под вистой все длл уже есть и приложение будет работать, достаточно только манифест подложить. Но сам не проверял. Наверное они этими трудностями подталкивают к переходу на Висту/НЕТ
---------- Press any key to continue or any other key to exit Пишите так, чтобы не было стыдно за нобелевскую премию. |
|