private void checkInterrupt_CheckedChanged(object sender, System.EventArgs e) { int nModuleCount = 0; CAXD.AxdInfoGetModuleCount(ref nModuleCount); if (nModuleCount > 0) { int nBoardNo = 0; int nModulePos = 0; uint uModuleID = 0; CAXD.AxdInfoGetModule(comboModule.SelectedIndex, ref nBoardNo, ref nModulePos, ref uModuleID); switch ((AXT_MODULE)uModuleID) { case AXT_MODULE.AXT_SIO_DI32: case AXT_MODULE.AXT_SIO_DB32P: case AXT_MODULE.AXT_SIO_DB32T: if (checkInterrupt.Checked) { CAXL.AxlInterruptEnable(); CAXD.AxdiInterruptSetModuleEnable(comboModule.SelectedIndex, (uint)AXT_USE.ENABLE); } else { IntPtr pEvent = (IntPtr)0; CAXD.AxdiInterruptSetModuleEnable(comboModule.SelectedIndex, (uint)AXT_USE.DISABLE); CAXL.AxlInterruptDisable(); } break; case AXT_MODULE.AXT_SIO_DO32P: case AXT_MODULE.AXT_SIO_DO32T: case AXT_MODULE.AXT_SIO_RDB128MLII: checkInterrupt.Checked = false; break; } } }