mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
72 lines
1.3 KiB
72 lines
1.3 KiB
#include "common.h"
|
|
|
|
#include "nfeature.h"
|
|
#include "engine.h"
|
|
|
|
#include "bear.h"
|
|
#include <tpgHandle.h>
|
|
#include <GeoFeats.h>
|
|
|
|
HINSTANCE g_hInstanceDll;
|
|
|
|
BOOL InitAvalanche (HINSTANCE hDll);
|
|
BOOL DetachAvalanche();
|
|
|
|
|
|
// July 2001 - mrevow Add heap checking code when DBG is defined
|
|
#ifdef DBG
|
|
#include <crtdbg.h>
|
|
extern void initMemMgr();
|
|
extern void destroyMemMgr();
|
|
//_CrtMemState g_HeapStateStart, g_HeapStateEnd, g_HeapStateDiff;
|
|
#endif
|
|
|
|
BOOL WINAPI DllMain(HANDLE hDll, DWORD dwReason, LPVOID lpReserved)
|
|
{
|
|
if (dwReason == DLL_PROCESS_ATTACH)
|
|
{
|
|
g_hInstanceDll = hDll;
|
|
|
|
#ifdef DBG
|
|
//initMemMgr();
|
|
// _CrtMemCheckpoint(&g_HeapStateStart);
|
|
#endif
|
|
if (FALSE == initTpgHandleManager())
|
|
{
|
|
return FALSE;
|
|
}
|
|
|
|
if (!InitBear (hDll))
|
|
return FALSE;
|
|
|
|
if (!InitAvalanche(hDll))
|
|
return FALSE;
|
|
|
|
return InitRecognition(hDll);
|
|
|
|
}
|
|
|
|
if (dwReason == DLL_PROCESS_DETACH)
|
|
{
|
|
DetachBear();
|
|
DetachAvalanche();
|
|
CloseRecognition();
|
|
closeTpgHandleManager();
|
|
unloadCharNets();
|
|
|
|
#ifdef DBG
|
|
destroyMemMgr();
|
|
// _CrtMemCheckpoint(&g_HeapStateEnd);
|
|
//
|
|
// if (TRUE == _CrtMemDifference(&g_HeapStateDiff, &g_HeapStateStart, &g_HeapStateEnd))
|
|
// {
|
|
// _CrtMemDumpStatistics(&g_HeapStateDiff);
|
|
// }
|
|
// _CrtDumpMemoryLeaks();
|
|
|
|
#endif
|
|
|
|
}
|
|
|
|
return((int)TRUE);
|
|
}
|