![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Litkevich Yuriy |
![]()
Сообщение
#1
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
По поводу DLL-ок вопрос.
Положим есть DLL-ка и запущены 2 приложения использующие её. А в DLL-ке баг, который в определённой ситуации приведёт к её падению. Допустим одно приложение создало такую ситуацию, при этом оба приложения упадут и сама DLL-ка? Как это работает? |
|
|
Алексей1153 |
![]()
Сообщение
#2
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: ![]() ![]() ![]() |
Litkevich Yuriy, насколько я понимаю, если одно приложение создало ситуацию, то упадёт только оно. А DLL падать не умеет.
всё, что в Dll, - как бы присоединяется к загрузившему её приложению, то есть становится частью этого приложения с общей для dll и приложения памятью, потоками и процессом. Поэтому два таких dll-хвоста в двух разных приложениях никак сами по себе не взаимодействуют. Следовательно, если баг есть в DLL, то этот баг будет в любом приложении, которое загрузило себе эту DLL (будет сидеть и не проявляться, возможно. Или проявится, если косячный код вызовется) Но если некий злой гений специально сделал какую-нибудь глобальную отслеживалку в DLL, которая при падении процесса заставляет во всех копиях dll тоже спровоцировать краш - тогда да ![]() |
|
|
Iron Bug |
![]()
Сообщение
#3
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: ![]() ![]() ![]() |
в норме у современных ОСей каждый процесс имеет свою копию DLL'ки.
естественно, это не отменяет возможности использования внутри DLL каких-то общесистемных ресурсов (расшаренных системных ресурсов, общей памяти для каких-то глобальных данных и т.д.) и в этом случае, если возникли какие-то серьёзные нарушения доступа, то может упасть всё, вплоть до системы ![]() |
|
|
Litkevich Yuriy |
![]()
Сообщение
#4
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
Алексей1153 |
![]()
Сообщение
#5
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: ![]() ![]() ![]() |
Litkevich Yuriy, глобальный хук с рекурсией подойдёт
![]() |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 16.2.2025, 21:32 |