Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.01.06;
Скачать: CL | DM;

Вниз

Глобальные переменные в DLL   Найти похожие ветки 

 
s00r   (2007-12-09 09:52) [0]

Если две программы используют одну и ту же DLL, и в DLL есть глобальные переменные. То для двух копий DLL переменные будут общие? Или эти две копии будут работать независимо друг от друга?


 
Leonid Troyanovsky ©   (2007-12-09 10:19) [1]


> s00r   (09.12.07 09:52)  

> Или эти две копии будут работать независимо друг от друга?

Да, независимо.

--
Regards, LVT.


 
Nucer   (2007-12-09 11:03) [2]

Вот тут читаю:

> Операторная часть  библиотеки  состоит из кода инициализации
>         библиотеки. Код  инициализации  выполняется  только
>  один раз при
>         первоначальной загрузке библиотеки. Когда другие
> прикладные прог-
>         раммы будут использовать уже загруженную библиотеку,
>   код инициа-
>         лизации повторно не выполняется, но увеличивается
> счетчик исполь-
>         зования DLL.
>
>              DLL хранится в памяти,  пока ее счетчик использования
> больше
>         нуля. Когда  счетчик использования становится нулевым,
>   указывая,
>         что все использующие DLL прикладные программы  завершили
>  работу,
>         она удаляется из памяти. При этом выполняется код
> процедуры выхо-
>         да. Процедуры  выхода   регистрируются   с   помощью
>   переменной
>         ExitProc, которая описывается в Главе 22 "Вопросы
> управления".

Проверяю, я код инициализации выполняется каждый раз даже если уже запущено приложение с той же библиотекой. Я не правильно понял или в статье ошибка?

http://www.lib.profi.net.ua/doc/prog/tp7/lr11.shtml.htm


 
Leonid Troyanovsky ©   (2007-12-09 12:22) [3]


> Nucer   (09.12.07 11:03) [2]

> Проверяю, я код инициализации выполняется каждый раз даже
> если уже запущено приложение с той же библиотекой. Я не
> правильно понял или в статье ошибка?

Ошибка, конечно.
Каждый процесс выполняет DLL_PROCESS_ATTACH,
поток - DLL_THREAD_ATTACH.

Но, с локальностью глобальных переменных это, IMHO, не связано.

--
Regards, LVT.


 
MetalFan ©   (2007-12-09 12:42) [4]


>
> http://www.lib.profi.net.ua/doc/prog/tp7/lr11.shtml.htm

ну вот, еще и BP вспомнили


 
DrPass ©   (2007-12-09 13:17) [5]


> Проверяю, я код инициализации выполняется каждый раз даже
> если уже запущено приложение с той же библиотекой. Я не
> правильно понял или в статье ошибка?

Никакой ошибки. Просто ты читаешь статью про совершенно другую операционную систему, и другой язык программирования



Страницы: 1 вся ветка

Текущий архив: 2008.01.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.012 c
15-1196791428
@!!ex
2007-12-04 21:03
2008.01.06
Драйвер на Windows 2003 Server


1-1192260730
031178
2007-10-13 11:32
2008.01.06
TReeView


2-1197356647
dumka
2007-12-11 10:04
2008.01.06
Строки


2-1197098943
kuvalda
2007-12-08 10:29
2008.01.06
TTabbedNotebook и TWebBrowser


15-1196511475
helpme
2007-12-01 15:17
2008.01.06
Странная повестка, помогите разобраться.