增加导出驱动日志时打印日志
This commit is contained in:
parent
c5f6d28b75
commit
532e2a283e
|
@ -85,13 +85,13 @@ namespace callback
|
|||
}SCNINST;
|
||||
std::vector<SCNINST> g_scanner_instances;
|
||||
|
||||
int sane_event_callback( // 注册回调的对象,需è¦<EFBFBD>ä¿<EFBFBD>è¯<EFBFBD>该回调是多线程安全çš?
|
||||
SANE_Handle hdev // 产生事件的设备å<EFBFBD>¥æŸ?
|
||||
, int code // 回调事件代ç <EFBFBD>
|
||||
, void* data // 回调事件数æ<EFBFBD>®ï¼Œæ ¹æ<EFBFBD>®äº‹ä»¶ä»£ç <EFBFBD>有所ä¸<EFBFBD>å<EFBFBD>Œï¼Œå<EFBFBD>‚照具体事件定ä¹?
|
||||
, unsigned int* len // æ•°æ<EFBFBD>®é•¿åº¦ï¼ˆå—节),或者event_data的缓冲区长度,详细请看相应的事件代ç <EFBFBD>
|
||||
, void* param // 用户自定义数æ<EFBFBD>®ï¼Œä¸Žè°ƒç”¨sane_init_exä¼ å…¥æ—¶çš„ä¿<EFBFBD>æŒ<EFBFBD>一è‡?
|
||||
) // 返回值ä¾<EFBFBD>ä¸<EFBFBD>å<EFBFBD>Œçš„事件代ç <EFBFBD>而定,通常为â€?â€?
|
||||
int sane_event_callback( // 娉ㄥ唽鍥炶皟鐨勫璞★紝闇€瑕佷繚璇佽鍥炶皟鏄绾跨▼瀹夊叏鐨?
|
||||
SANE_Handle hdev // 浜х敓浜嬩欢鐨勮澶囧彞鏌?
|
||||
, int code // 鍥炶皟浜嬩欢浠g爜
|
||||
, void* data // 鍥炶皟浜嬩欢鏁版嵁锛屾牴鎹簨浠朵唬鐮佹湁鎵€涓嶅悓锛屽弬鐓у叿浣撲簨浠跺畾涔?
|
||||
, unsigned int* len // 鏁版嵁闀垮害锛堝瓧鑺傦級锛屾垨鑰卐vent_data鐨勭紦鍐插尯闀垮害锛岃缁嗚鐪嬬浉搴旂殑浜嬩欢浠g爜
|
||||
, void* param // 鐢ㄦ埛鑷畾涔夋暟鎹紝涓庤皟鐢╯ane_init_ex浼犲叆鏃剁殑淇濇寔涓€鑷?
|
||||
) // 杩斿洖鍊间緷涓嶅悓鐨勪簨浠朵唬鐮佽€屽畾锛岄€氬父涓衡€?鈥?
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(cb_lock_);
|
||||
std::vector<SCNINST>::iterator it = std::find(g_scanner_instances.begin(), g_scanner_instances.end(), hdev);
|
||||
|
@ -207,10 +207,10 @@ namespace callback
|
|||
, {SANE_STD_OPT_NAME_FOLD_TYPE , OPTION_TITLE_DZMS}
|
||||
, {SANE_STD_OPT_NAME_COLOR_CORRECTION , OPTION_TITLE_SPJZ}
|
||||
},
|
||||
g_discard[] = { {SANE_STD_OPT_NAME_REVERSE_01 , "\351\273\221\347\231\275\345\233\276\345\203\217\345\217\215\350\211\262\350\276\223\345\207\272\357\274\210\346\255\243\345\270\270\351\242\234\350\211\262\344\270\272\357\274\2320-\351\273\221\350\211\262\357\274\2331-\347\231\275\350\211\262\357\274\211"} // 黑白图åƒ<EFBFBD>å<EFBFBD><EFBFBD>色输出(æ£å¸¸é¢œè‰²ä¸ºï¼?-黑色ï¼?-白色ï¼?
|
||||
, {SANE_STD_OPT_NAME_FILTER , "\347\201\260\345\272\246\346\210\226\351\273\221\347\231\275\345\233\276\345\203\217 - \351\231\244\350\211\262"} // ç<EFBFBD>°åº¦æˆ–黑白图åƒ?- 除色
|
||||
, {SANE_STD_OPT_NAME_IS_AUTO_FEED_STRENGTH , "\350\207\252\345\212\250\346\220\223\347\272\270\345\274\272\345\272\246"} // 自动æ<EFBFBD>“纸强度
|
||||
, {SANE_STD_OPT_NAME_FEED_STRENGTH_VALUE , "\346\220\223\347\272\270\351\230\210\345\200\274"} // " æ<EFBFBD>“纸阈å€?
|
||||
g_discard[] = { {SANE_STD_OPT_NAME_REVERSE_01 , "\351\273\221\347\231\275\345\233\276\345\203\217\345\217\215\350\211\262\350\276\223\345\207\272\357\274\210\346\255\243\345\270\270\351\242\234\350\211\262\344\270\272\357\274\2320-\351\273\221\350\211\262\357\274\2331-\347\231\275\350\211\262\357\274\211"} // 榛戠櫧鍥惧儚鍙嶈壊杈撳嚭锛堟甯搁鑹蹭负锛?-榛戣壊锛?-鐧借壊锛?
|
||||
, {SANE_STD_OPT_NAME_FILTER , "\347\201\260\345\272\246\346\210\226\351\273\221\347\231\275\345\233\276\345\203\217 - \351\231\244\350\211\262"} // 鐏板害鎴栭粦鐧藉浘鍍?- 闄よ壊
|
||||
, {SANE_STD_OPT_NAME_IS_AUTO_FEED_STRENGTH , "\350\207\252\345\212\250\346\220\223\347\272\270\345\274\272\345\272\246"} // 鑷姩鎼撶焊寮哄害
|
||||
, {SANE_STD_OPT_NAME_FEED_STRENGTH_VALUE , "\346\220\223\347\272\270\351\230\210\345\200\274"} // " 鎼撶焊闃堝€?
|
||||
};
|
||||
const char* option_title_2_name(const char* title)
|
||||
{
|
||||
|
@ -347,7 +347,7 @@ namespace callback
|
|||
// SANE_EVENT_IMAGE_OK - void* unused, be NULL, flag - unused, be 0
|
||||
static HMODULE hui = NULL;
|
||||
int (*choose_scanner)(const std::vector<DEVQUEUI>& devs) = NULL; // blocked. return selected DEVQUE::id or -1 if user cancelled
|
||||
char* (*apply_current_config)(const char* dev_name, SANE_Handle device, LPSANEAPI api) = NULL; // 应用设备的当å‰<EFBFBD>é…<EFBFBD>ï¿?
|
||||
char* (*apply_current_config)(const char* dev_name, SANE_Handle device, LPSANEAPI api) = NULL; // 搴旂敤璁惧鐨勫綋鍓嶉厤锟?
|
||||
int (*show_setting_ui)(SANE_Handle device, HWND parent, LPSANEAPI api, const char* devname, bool with_scan, std::function<void(ui_result)> callback) = NULL;
|
||||
int (*show_progress_ui)(HWND parent, std::function<void(ui_result)> callback, std::function<void(int/*event*/, void*/*msg*/, int/*flag*/)>* notify) = NULL;
|
||||
int (*show_messagebox_ui)(HWND parent, int event, void* msg, int flag) = NULL;
|
||||
|
@ -919,7 +919,7 @@ int scanner::open(void)
|
|||
{
|
||||
if (callback::show_messagebox_ui)
|
||||
{
|
||||
// 纸轮æ<EFBFBD>“纸次数已超过设计使用范围,扫æ<EFBFBD><EFBFBD>过程ä¸æ<EFBFBD>“纸失败ã€<EFBFBD>æªæ–œã€<EFBFBD>æ<EFBFBD>“å¤šå¼ ç‰å¼‚常频次å<EFBFBD>¯èƒ½ä¼šæ˜Žæ˜¾å¢žå¤šï¼Œè¯·æ³¨æ„<EFBFBD>å<EFBFBD>Šæ—¶æ¸…æ´<EFBFBD>ã€<EFBFBD>并è<EFBFBD>”系设备供应商è´ä¹°æ›¿æ<EFBFBD>¢çº¸è½®ï¼<EFBFBD>
|
||||
// 绾歌疆鎼撶焊娆℃暟宸茶秴杩囪璁′娇鐢ㄨ寖鍥达紝鎵弿杩囩▼涓悡绾稿け璐ャ€佹鏂溿€佹悡澶氬紶绛夊紓甯搁娆″彲鑳戒細鏄庢樉澧炲锛岃娉ㄦ剰鍙婃椂娓呮磥銆佸苟鑱旂郴璁惧渚涘簲鍟嗚喘涔版浛鎹㈢焊杞紒
|
||||
std::wstring roller_msgw(local_trans::lang_trans_between_hz936(L"\u7EB8\u8F6E\u6413\u7EB8\u6B21\u6570\u5DF2\u8D85\u8FC7\u8BBE\u8BA1\u4F7F\u7528\u8303\u56F4\uFF0C\u626B\u63CF\u8FC7\u7A0B\u4E2D\u6413\u7EB8\u5931\u8D25\u3001\u6B6A\u659C\u3001\u6413\u591A\u5F20\u7B49\u5F02\u5E38\u9891\u6B21\u53EF\u80FD\u4F1A\u660E\u663E\u589E\u591A\uFF0C\u8BF7\u6CE8\u610F\u53CA\u65F6\u6E05\u6D01\u3001\u5E76\u8054\u7CFB\u8BBE\u5907\u4F9B\u5E94\u5546\u8D2D\u4E70\u66FF\u6362\u7EB8\u8F6E\uFF01"));
|
||||
std::string roller_msg(local_trans::u2a(roller_msgw.c_str(), CP_UTF8));
|
||||
app_wnd_ = callback::find_main_wnd();
|
||||
|
@ -1133,7 +1133,7 @@ int scanner::init_options_id(void)
|
|||
|
||||
if (is_erase_hole_id_ == -1)
|
||||
{
|
||||
// 兼容è€<EFBFBD>的除å”算法
|
||||
// 鍏煎鑰佺殑闄ゅ瓟绠楁硶
|
||||
EXAPI ea;
|
||||
|
||||
ea.ind = is_erase_hole_id_ = ex_id_++;
|
||||
|
@ -2955,7 +2955,13 @@ COM_API_IMPLEMENT(scanner, bool, get_value(int sn, void* data, int* len))
|
|||
if (sn != SANE_OPT_ID_DRIVER_LOG && sn != SANE_OPT_ID_DEVICE_LOG)
|
||||
return false;
|
||||
|
||||
return hg_sane_middleware::instance()->set_option(handle_, (const void*)sn, SANE_ACTION_GET_VALUE, data, NULL) == SANE_STATUS_GOOD;
|
||||
SANE_Status ret = hg_sane_middleware::instance()->set_option(handle_, (const void*)sn, SANE_ACTION_GET_VALUE, data, NULL);
|
||||
wchar_t msg[128] = { 0 };
|
||||
|
||||
swprintf_s(msg, _countof(msg) - 1, L"get log of(%x) = 0x%x\r\n", sn, ret);
|
||||
log_info(msg, 1);
|
||||
|
||||
return ret == SANE_STATUS_GOOD;
|
||||
}
|
||||
COM_API_IMPLEMENT(scanner, int, set_value(int sn, void* val))
|
||||
{
|
||||
|
@ -3442,13 +3448,13 @@ int scanner::handle_device_event(int ev_code, void* data, unsigned int* len)
|
|||
log_info(msg, 1);
|
||||
}
|
||||
}
|
||||
//else if (ev_code == SANE_EVENT_ERROR) // å±<EFBFBD>蔽,在å<EFBFBD>œæ¢æ‰«æ<EFBFBD><EFBFBD>时展示信æ<EFBFBD>?- 2023-05-30
|
||||
//else if (ev_code == SANE_EVENT_ERROR) // 灞忚斀锛屽湪鍋滄鎵弿鏃跺睍绀轰俊鎭?- 2023-05-30
|
||||
//{
|
||||
// if (callback::show_messagebox_ui && *len)
|
||||
// {
|
||||
// callback::show_messagebox_ui(app_wnd_, ev_code, (void*)data, 0);
|
||||
// }
|
||||
// else if (*len) //错误弹出
|
||||
// else if (*len) //閿欒寮瑰嚭
|
||||
// {
|
||||
// std::wstring msg(local_trans::a2u((char*)data, CP_UTF8));
|
||||
// if (!IsWindow(app_wnd_))
|
||||
|
|
Loading…
Reference in New Issue