crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Про ошибки в DLL
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Алексей1153 Дата 9.2.2019, 8:22
  Litkevich Yuriy, глобальный хук с рекурсией подойдёт :D
Litkevich Yuriy Дата 9.2.2019, 7:11
 
Цитата(Iron Bug @ 7.2.2019, 6:24) *
но такое редко встречается в DLL'ках
ну это зависит от того, как я её накастылю 😀
Iron Bug Дата 7.2.2019, 4:24
  в норме у современных ОСей каждый процесс имеет свою копию DLL'ки.
естественно, это не отменяет возможности использования внутри DLL каких-то общесистемных ресурсов (расшаренных системных ресурсов, общей памяти для каких-то глобальных данных и т.д.) и в этом случае, если возникли какие-то серьёзные нарушения доступа, то может упасть всё, вплоть до системы :) но такое редко встречается в DLL'ках.
Алексей1153 Дата 4.2.2019, 8:29
  Litkevich Yuriy, насколько я понимаю, если одно приложение создало ситуацию, то упадёт только оно. А DLL падать не умеет.

всё, что в Dll, - как бы присоединяется к загрузившему её приложению, то есть становится частью этого приложения с общей для dll и приложения памятью, потоками и процессом. Поэтому два таких dll-хвоста в двух разных приложениях никак сами по себе не взаимодействуют.

Следовательно, если баг есть в DLL, то этот баг будет в любом приложении, которое загрузило себе эту DLL (будет сидеть и не проявляться, возможно. Или проявится, если косячный код вызовется)

Но если некий злой гений специально сделал какую-нибудь глобальную отслеживалку в DLL, которая при падении процесса заставляет во всех копиях dll тоже спровоцировать краш - тогда да :D

Litkevich Yuriy Дата 4.2.2019, 6:08
  По поводу DLL-ок вопрос.

Положим есть DLL-ка и запущены 2 приложения использующие её.
А в DLL-ке баг, который в определённой ситуации приведёт к её падению.

Допустим одно приложение создало такую ситуацию, при этом оба приложения упадут и сама DLL-ка?

Как это работает?
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 18.11.2019, 7:13