Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.04.2011, 09:46   #1
Aleksey1989
Форумчанин
 
Регистрация: 25.04.2010
Сообщений: 127
По умолчанию DLLProc

Подскажите, почему необходимо в следующем коде вызывать процедуру? Если этого не сделать, то запустив программу, использующую данную DLL функция DLLProc ни будет работать, а при закрытии основной программы появится ошибка.
Код:
library ProjectDLL;

uses
  SysUtils,
  Classes,
  Windows,
  dialogs,
  Unit1 in 'Unit1.pas' {Form1};

{$R *.RES}

exports ShowAbout index 10;
exports FreeAbout index 11;

procedure DLLEntryPoint(dwReason:DWord);
begin
 case dwReason of
  DLL_PROCESS_ATTACH:ShowMessage('Attach to process');
  DLL_PROCESS_DETACH:ShowMessage('Detach to process');
  DLL_THREAD_ATTACH:ShowMessage('Thread attach to process');
  DLL_THREAD_DETACH:ShowMessage('Thread detach to process');
 end;
end;

begin
 DLLProc:=@DLLEntryPoint;
 DLLEntryPoint(DLL_PROCESS_ATTACH);
end.
Aleksey1989 вне форума Ответить с цитированием
Старый 14.04.2011, 10:00   #2
mss
Заблокирован
 
Регистрация: 27.05.2010
Сообщений: 1,099
По умолчанию

Для "красоты")

Вряд ли код

Код:
procedure DLLEntryPoint(dwReason:DWord);
begin
 case dwReason of  
  DLL_PROCESS_DETACH:ShowMessage('Detach to process');
  DLL_THREAD_ATTACH:ShowMessage('Thread attach to process');
  DLL_THREAD_DETACH:ShowMessage('Thread detach to process');
 end;
end;

begin
 DLLProc:=@DLLEntryPoint;
 ShowMessage('Attach to process');
end.
вызовет восторг)
mss вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц