2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS system libraries
4 * FILE: lib/kernel32/misc/dllmain.c
5 * PURPOSE: Initialization
6 * PROGRAMMER: Ariadne ( ariadne@xs4all.nl)
12 #include <ddk/ntddk.h>
14 #include <kernel32/proc.h>
15 #include <internal/teb.h>
17 #include <kernel32/kernel32.h>
19 WINBOOL STDCALL
DllMain (HANDLE hInst
,
20 ULONG ul_reason_for_call
,
25 BOOL WINAPI
DllMainCRTStartup(HANDLE hDll
, DWORD dwReason
, LPVOID lpReserved
)
27 return(DllMain(hDll
,dwReason
,lpReserved
));
30 VOID WINAPI
__HeapInit(LPVOID base
, ULONG minsize
, ULONG maxsize
);
32 WINBOOL STDCALL
DllMain(HANDLE hInst
,
33 ULONG ul_reason_for_call
,
37 switch (ul_reason_for_call
)
39 case DLL_PROCESS_ATTACH
:
41 DPRINT("DLL_PROCESS_ATTACH\n");
43 case DLL_THREAD_ATTACH
:
45 // Teb = HeapAlloc(GetProcessHeap(),0,sizeof(NT_TEB));
46 // Teb->Peb = GetCurrentPeb();
47 // Teb->HardErrorMode = SEM_NOGPFAULTERRORBOX;
51 case DLL_PROCESS_DETACH
:
53 // HeapFree(GetProcessHeap(),0,Teb);
54 HeapDestroy(NtCurrentPeb()->ProcessHeap
);
57 case DLL_THREAD_DETACH
:
59 // HeapFree(GetProcessHeap(),0,Teb);