补充调整:设备离线时扫描单张,状态栏增加提示
This commit is contained in:
parent
6c900e451c
commit
20ab0c7f80
|
@ -679,8 +679,27 @@ void MainWindow::on_AcquireInto2()
|
||||||
HGResult ret = HGBASE_ERR_FAIL;
|
HGResult ret = HGBASE_ERR_FAIL;
|
||||||
if (nullptr != m_devUser)
|
if (nullptr != m_devUser)
|
||||||
{
|
{
|
||||||
|
bool deviceIsOnline = true;
|
||||||
ret = m_devUser->StartScan();
|
ret = m_devUser->StartScan();
|
||||||
if (HGBASE_ERR_OK != ret)
|
#if defined(HG_CMP_MSC)
|
||||||
|
|
||||||
|
if (HGTWAIN_ERR_DEVICEOFFLINE == ret)
|
||||||
|
{
|
||||||
|
deviceIsOnline = false;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
if (HGSANE_ERR_DEVICEOFFLINE == ret)
|
||||||
|
{
|
||||||
|
deviceIsOnline = false;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (!deviceIsOnline)
|
||||||
|
{
|
||||||
|
deleteDevUser();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (HGBASE_ERR_OK != ret && deviceIsOnline)
|
||||||
{
|
{
|
||||||
on_scanFinishEvent();
|
on_scanFinishEvent();
|
||||||
}
|
}
|
||||||
|
@ -1391,7 +1410,32 @@ void MainWindow::on_scanFinishEvent()
|
||||||
else
|
else
|
||||||
ret = m_devUser->StartScan();
|
ret = m_devUser->StartScan();
|
||||||
|
|
||||||
if (HGBASE_ERR_OK != ret)
|
bool deviceIsOnline = true;
|
||||||
|
ret = m_devUser->StartScan();
|
||||||
|
#if defined(HG_CMP_MSC)
|
||||||
|
|
||||||
|
if (HGTWAIN_ERR_DEVICEOFFLINE == ret)
|
||||||
|
{
|
||||||
|
deviceIsOnline = false;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
if (HGSANE_ERR_DEVICEOFFLINE == ret)
|
||||||
|
{
|
||||||
|
deviceIsOnline = false;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (!deviceIsOnline)
|
||||||
|
{
|
||||||
|
if (ScanType_SingleScanToCache == m_scanType)
|
||||||
|
{
|
||||||
|
QMessageBox::information(this, tr("Prompt"), tr("Device is offline"));
|
||||||
|
}
|
||||||
|
|
||||||
|
deleteDevUser();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (HGBASE_ERR_OK != ret && deviceIsOnline)
|
||||||
{
|
{
|
||||||
on_scanFinishEvent();
|
on_scanFinishEvent();
|
||||||
}
|
}
|
||||||
|
@ -3458,9 +3502,29 @@ void MainWindow::on_act_acquireSingle_triggered()
|
||||||
HGResult ret = HGBASE_ERR_FAIL;
|
HGResult ret = HGBASE_ERR_FAIL;
|
||||||
if (nullptr != m_devUser)
|
if (nullptr != m_devUser)
|
||||||
{
|
{
|
||||||
|
bool deviceIsOnline = true;
|
||||||
ret = m_devUser->StartSingleScan();
|
ret = m_devUser->StartSingleScan();
|
||||||
|
|
||||||
if (HGBASE_ERR_OK != ret)
|
#if defined(HG_CMP_MSC)
|
||||||
|
|
||||||
|
if (HGTWAIN_ERR_DEVICEOFFLINE == ret)
|
||||||
|
{
|
||||||
|
deviceIsOnline = false;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
if (HGSANE_ERR_DEVICEOFFLINE == ret)
|
||||||
|
{
|
||||||
|
deviceIsOnline = false;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (!deviceIsOnline)
|
||||||
|
{
|
||||||
|
QMessageBox::information(this, tr("Prompt"), tr("Device is offline"));
|
||||||
|
deleteDevUser();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (HGBASE_ERR_OK != ret && deviceIsOnline)
|
||||||
{
|
{
|
||||||
on_scanFinishEvent();
|
on_scanFinishEvent();
|
||||||
}
|
}
|
||||||
|
@ -3513,8 +3577,27 @@ void MainWindow::on_act_acquireInto_triggered()
|
||||||
HGResult ret = HGBASE_ERR_FAIL;
|
HGResult ret = HGBASE_ERR_FAIL;
|
||||||
if (nullptr != m_devUser)
|
if (nullptr != m_devUser)
|
||||||
{
|
{
|
||||||
|
bool deviceIsOnline = true;
|
||||||
ret = m_devUser->StartScan();
|
ret = m_devUser->StartScan();
|
||||||
if (HGBASE_ERR_OK != ret)
|
#if defined(HG_CMP_MSC)
|
||||||
|
|
||||||
|
if (HGTWAIN_ERR_DEVICEOFFLINE == ret)
|
||||||
|
{
|
||||||
|
deviceIsOnline = false;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
if (HGSANE_ERR_DEVICEOFFLINE == ret)
|
||||||
|
{
|
||||||
|
deviceIsOnline = false;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (!deviceIsOnline)
|
||||||
|
{
|
||||||
|
deleteDevUser();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (HGBASE_ERR_OK != ret && deviceIsOnline)
|
||||||
{
|
{
|
||||||
on_scanFinishEvent();
|
on_scanFinishEvent();
|
||||||
}
|
}
|
||||||
|
@ -3582,8 +3665,27 @@ void MainWindow::on_act_insertFromScanner_triggered()
|
||||||
HGResult ret = HGBASE_ERR_FAIL;
|
HGResult ret = HGBASE_ERR_FAIL;
|
||||||
if (nullptr != m_devUser)
|
if (nullptr != m_devUser)
|
||||||
{
|
{
|
||||||
|
bool deviceIsOnline = true;
|
||||||
ret = m_devUser->StartScan();
|
ret = m_devUser->StartScan();
|
||||||
if (HGBASE_ERR_OK != ret)
|
#if defined(HG_CMP_MSC)
|
||||||
|
|
||||||
|
if (HGTWAIN_ERR_DEVICEOFFLINE == ret)
|
||||||
|
{
|
||||||
|
deviceIsOnline = false;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
if (HGSANE_ERR_DEVICEOFFLINE == ret)
|
||||||
|
{
|
||||||
|
deviceIsOnline = false;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (!deviceIsOnline)
|
||||||
|
{
|
||||||
|
deleteDevUser();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (HGBASE_ERR_OK != ret && deviceIsOnline)
|
||||||
{
|
{
|
||||||
on_scanFinishEvent();
|
on_scanFinishEvent();
|
||||||
}
|
}
|
||||||
|
|
|
@ -664,12 +664,22 @@ HGResult HGTwainDSImpl::EnableWithSingleScan(HWND parent, HGDSEventFunc eventFun
|
||||||
HGResult ret = GetCapInt(CAP_XFERCOUNT, &oldXferCount);
|
HGResult ret = GetCapInt(CAP_XFERCOUNT, &oldXferCount);
|
||||||
if (HGBASE_ERR_OK != ret)
|
if (HGBASE_ERR_OK != ret)
|
||||||
{
|
{
|
||||||
|
TW_STATUS status;
|
||||||
|
m_dsmImpl->m_pDSMProc(&m_dsmImpl->m_AppId, &m_iden, DG_CONTROL, DAT_STATUS, MSG_GET, (TW_MEMREF)&status);
|
||||||
|
if (status.ConditionCode == TWCC_CHECKDEVICEONLINE)
|
||||||
|
return HGTWAIN_ERR_DEVICEOFFLINE;
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = SetCapInt(CAP_XFERCOUNT, TWTY_INT16, 1);
|
ret = SetCapInt(CAP_XFERCOUNT, TWTY_INT16, 1);
|
||||||
if (HGBASE_ERR_OK != ret)
|
if (HGBASE_ERR_OK != ret)
|
||||||
{
|
{
|
||||||
|
TW_STATUS status;
|
||||||
|
m_dsmImpl->m_pDSMProc(&m_dsmImpl->m_AppId, &m_iden, DG_CONTROL, DAT_STATUS, MSG_GET, (TW_MEMREF)&status);
|
||||||
|
if (status.ConditionCode == TWCC_CHECKDEVICEONLINE)
|
||||||
|
return HGTWAIN_ERR_DEVICEOFFLINE;
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -678,6 +688,11 @@ HGResult HGTwainDSImpl::EnableWithSingleScan(HWND parent, HGDSEventFunc eventFun
|
||||||
twUI.hParent = (TW_HANDLE)parent;
|
twUI.hParent = (TW_HANDLE)parent;
|
||||||
if (TWRC_SUCCESS != m_dsmImpl->m_pDSMProc(&m_dsmImpl->m_AppId, &m_iden, DG_CONTROL, DAT_USERINTERFACE, MSG_ENABLEDS, (TW_MEMREF)&twUI))
|
if (TWRC_SUCCESS != m_dsmImpl->m_pDSMProc(&m_dsmImpl->m_AppId, &m_iden, DG_CONTROL, DAT_USERINTERFACE, MSG_ENABLEDS, (TW_MEMREF)&twUI))
|
||||||
{
|
{
|
||||||
|
TW_STATUS status;
|
||||||
|
m_dsmImpl->m_pDSMProc(&m_dsmImpl->m_AppId, &m_iden, DG_CONTROL, DAT_STATUS, MSG_GET, (TW_MEMREF)&status);
|
||||||
|
if (status.ConditionCode == TWCC_CHECKDEVICEONLINE)
|
||||||
|
return HGTWAIN_ERR_DEVICEOFFLINE;
|
||||||
|
|
||||||
return HGTWAIN_ERR_FAIL;
|
return HGTWAIN_ERR_FAIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue