コード例 #1
0
ファイル: dllmain.cpp プロジェクト: JanD1943/ndas4windows
BOOL 
APIENTRY 
DllMain(HANDLE hModule, DWORD  dwReason, LPVOID lpReserved)
{
	switch (dwReason)
	{
	case DLL_PROCESS_ATTACH:

		XDbgInit(_T("NDMSICA"));
		XDbgLoadSettingsFromRegistry(
			_T("Software\\NDAS\\NDMSICA"),
			HKEY_CURRENT_USER);

		DBGPRT_INFO(_FT("NDMSICA.DLL Process Attach\n"));
		break;

	case DLL_THREAD_ATTACH:

		DBGPRT_INFO(_FT("NDMSICA.DLL Thread Attach\n"));
		break;

	case DLL_THREAD_DETACH:

		DBGPRT_INFO(_FT("NDMSICA.DLL Thread Detach\n"));
		break;

	case DLL_PROCESS_DETACH:

		DBGPRT_INFO(_FT("NDMSICA.DLL Process Detach\n"));
		XDbgCleanup();
		break;
	}
	return TRUE;
}
コード例 #2
0
BOOL 
APIENTRY 
DllMain(
	HANDLE hModule, 
	DWORD  dwReason, 
	LPVOID lpReserved)
{
	switch (dwReason)
	{
	case DLL_PROCESS_ATTACH:

		InitProcessData();

		XDbgInit(_T("NDASUSER"));
		XDbgLoadSettingsFromRegistry(
			_T("Software\\NDAS\\NDASUSER"),
			HKEY_CURRENT_USER);

		DBGPRT_INFO(_FT("NDASUSER.DLL Process Attach\n"));

		_pEventSubscriber = new CNdasEventSubscriber();

		break;

	case DLL_THREAD_ATTACH:
		DBGPRT_INFO(_FT("NDASUSER.DLL Thread Attach\n"));
		break;
	case DLL_THREAD_DETACH:
		DBGPRT_INFO(_FT("NDASUSER.DLL Thread Detach\n"));
		break;
	case DLL_PROCESS_DETACH:

		if (NULL != _pxdbgSystemDebugOutput) {
			delete _pxdbgSystemDebugOutput;
		}

		XDbgCleanup();
		CleanupProcessData();
		DBGPRT_INFO(_FT("NDASUSER.DLL Process Detach\n"));

		delete _pEventSubscriber;

		break;
	}
    return TRUE;
}
コード例 #3
0
int __cdecl wmain(int argc, LPTSTR *argv, LPTSTR *env)
{
	int iRet = 0;
	// remove argv 0
	argc--;
	argv++;

	_tprintf(_T("NDAS Device Installer\n")
		_T("Copyright (C) 2003-2004 XIMETA, Inc.\n\n"));

	if (argc == 0) {
		_ftprintf(stderr, _T("%s"), USAGE);
		return 254;
	}

	XDbgInit(_T("ndasdi"));
	XDbgSetModuleFlags(0xF0000000);
	XDbgSetLibraryFlags(0xFFFFFFFF);
	XDbgSetOutputLevel(XDebug::OL_NOISE);

	XDbgConsoleOutput co;
	XDbgAttach(&co);

	if (0 == lstrcmpi(_T("dev"), argv[0])) {
		--argc; ++argv; 
		iRet = pnpdevinst(argc,argv);
	} else if (0 == lstrcmpi(_T("net"), argv[0])) {
		--argc; ++argv; 
		iRet = netcomp(argc,argv);
	} else if (0 == lstrcmpi(_T("svc"), argv[0])) {
		--argc; ++argv; 
		iRet = svcinst(argc, argv);
	} else if (0 == lstrcmpi(_T("drv"), argv[0])) {
		--argc; ++argv; 
		iRet = drvinst(argc, argv);
	} else {
		_ftprintf(stderr, _T("%s"), USAGE);
		return 254;
	}

	XDbgDetach(&co);
	XDbgCleanup();

	return iRet;
}
コード例 #4
0
ファイル: dllentry.cpp プロジェクト: tigtigtig/ndas4windows
BOOL 
APIENTRY 
DllMain(
	HINSTANCE hModule, 
	DWORD  dwReason, 
	LPVOID lpReserved)
{
	switch (dwReason)
	{
	case DLL_PROCESS_ATTACH:

		XDbgInit(_T("NDUPDATE"));
		XDbgLoadSettingsFromRegistry(
			_T("Software\\NDAS\\NDUpdate"),
			HKEY_CURRENT_USER);

		DBGPRT_INFO(_FT(DLL_NAME) _T(" Process Attach\n"));

		_NdasUpdateDllInstance = hModule;

		break;

	case DLL_THREAD_ATTACH:

		DBGPRT_INFO(_FT(DLL_NAME) _T(" Thread Attach\n"));
		break;

	case DLL_THREAD_DETACH:

		DBGPRT_INFO(_FT(DLL_NAME) _T(" Thread Detach\n"));
		break;

	case DLL_PROCESS_DETACH:
		DBGPRT_INFO(_FT(DLL_NAME) _T(" Process Detach\n"));

		XDbgCleanup();
		break;
	}
    return TRUE;
}