public static void PLOCRtwain_TwainStateChanged(object sender, Twain32.TwainStateEventArgs e) { using (Twain32 PLOCRtwain = new Twain32()) { try { // ... _isDataSourceOpen = (e.TwainState & Twain32.TwainStateFlag.DSOpen) != 0; // ... MessageBox.Show("twain 상태가 변경되었습니다."); } catch (Exception ex) { // ... } } }
private void _twain_TwainStateChanged(object sender, Twain32.TwainStateEventArgs e) { try { if ((e.TwainState & Twain32.TwainStateFlag.DSEnabled) == 0 && this._isEnable) { this._isEnable = false; // <<< scaning finished (or closed) } this._isEnable = (e.TwainState & Twain32.TwainStateFlag.DSEnabled) != 0; } catch (Exception ex) { MessageBox.Show(ex.Message, _ExceptionCaption, MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void _twain_TwainStateChanged(object sender, Twain32.TwainStateEventArgs e) { logger.Debug("Handle TwainState"); if ((e.TwainState & Twain32.TwainStateFlag.DSEnabled) == 0 && this._isEnable) { this._isEnable = false; // <<< scaning finished (or closed) if (stream != null) { FinishImageTransfer(); } logger.Debug("Сканирование закончено..."); _twain32.CloseDataSource(); } this._isEnable = (e.TwainState & Twain32.TwainStateFlag.DSEnabled) != 0; logger.Debug($"Handle TwainState end"); }