添加USB读数据事件通知(纸张计数);修复读取部分属性BUG

This commit is contained in:
gb 2022-06-18 16:47:21 +08:00
parent ee1a8450fb
commit 34e0dbfb95
2 changed files with 14 additions and 18 deletions

View File

@ -1870,6 +1870,8 @@ int hg_scanner::save_usb_data(std::shared_ptr<tiny_buffer> data)
if (wait_img_.is_waiting())
wait_img_.notify();
}
unsigned int bytes = data->size();
ui_ev_cb_((scanner_handle)this, SANE_EVENT_USB_DATA_RECEIVED, NULL, &bytes, NULL);
return ret;
}
@ -2444,13 +2446,10 @@ int hg_scanner::device_io_control(unsigned long code, void* data, unsigned* len)
return SCANNER_ERR_INSUFFICIENT_MEMORY;
}
char* buf = strcpy((char*)data, fw.c_str());
if (data)
strcpy((char*)data, fw.c_str());
if (buf)
{
return SCANNER_ERR_OK;
}
return SCANNER_ERR_DATA_DAMAGED;
return SCANNER_ERR_OK;
}
else if(code == IO_CTRL_CODE_GET_SERIAL)
{
@ -2460,12 +2459,10 @@ int hg_scanner::device_io_control(unsigned long code, void* data, unsigned* len)
*len = ser.size();
return SCANNER_ERR_INSUFFICIENT_MEMORY;
}
char* buf = strcpy((char*)data, ser.c_str());
if (buf)
{
return SCANNER_ERR_OK;
}
return SCANNER_ERR_DATA_DAMAGED;
if (data)
strcpy((char*)data, ser.c_str());
return SCANNER_ERR_OK;
}
else if (code == IO_CTRL_CODE_GET_HARDWARE_VERSION)
{
@ -2475,13 +2472,10 @@ int hg_scanner::device_io_control(unsigned long code, void* data, unsigned* len)
*len = ip.size();
return SCANNER_ERR_INSUFFICIENT_MEMORY;
}
char* buf = strcpy((char*)data, ip.c_str());
if (data)
strcpy((char*)data, ip.c_str());
if (buf)
{
return SCANNER_ERR_OK;
}
return SCANNER_ERR_DATA_DAMAGED;
return SCANNER_ERR_OK;
}
else if (code == IO_CTRL_CODE_GET_PAPER_ON)
{

View File

@ -2024,10 +2024,12 @@ extern "C" { // avoid compiler exporting name in C++ style !!!
#ifdef WIN32
HMODULE g_my_inst = NULL;
BOOL WINAPI DllMain(HINSTANCE inst, DWORD reason, LPVOID reserved)
{
if (reason == DLL_PROCESS_ATTACH)
{
g_my_inst = inst;
if (g_sane_path.empty())
{
char path[MAX_PATH] = { 0 };