Exemplo n.º 1
0
BOOL __cdecl ControlDispatcher(DWORD dwControlMessage,DWORD EBX,DWORD EDX,DWORD ESI,DWORD EDI,DWORD ECX)
{
	switch(dwControlMessage) {
	case SYS_DYNAMIC_DEVICE_INIT:
		OnSysDynamicDeviceInit();
		return TRUE;
//	case DEVICE_INIT:
	case INIT_COMPLETE:
		bUpperTableInited = FALSE;
		return OnSysDynamicDeviceInit();
	case SYS_DYNAMIC_DEVICE_EXIT:
		return OnSysDynamicDeviceExit();
	case W32_DEVICEIOCONTROL:
		return OnW32Deviceiocontrol((PIOCTLPARAMS)ESI);
	case DESTROY_PROCESS:
		OnDestroyProcess(EDX);
		return TRUE;
	case SYSTEM_EXIT:
		OnSystemExit((VMHANDLE)EBX);
		return TRUE;
	case DESTROY_THREAD:
		OnDestroyThread(EDI);
		break;
	default: break;
	}
	return TRUE;
}
Exemplo n.º 2
0
//****************************************************************************
//****************************************************************************
VOID SBBSExec::OnSystemExit(VMHANDLE hSysVM)
{
	DBTRACE(0,"OnSystemExit");
	OnSysDynamicDeviceExit();
}