#include "access_basefun.h" #include #ifdef _MSC_VER DWORD checkErrType(DWORD curEvent) { DWORD noretry_norestart_Arr[] = ERRARR_ACCESSAUTH_NORETRY_NORESTART; DWORD retry_no_restart_Arr[] = ERRARR_ACCESSAUTH_RETRY_NORESTART; DWORD retry_restart_Arr[] = ACCESSAUTH_ERR_RETRY_RESTART; std::vector noretry_norestart_vec, retry_norestart_vec, retry_restart_vec; for each (auto i in noretry_norestart_Arr) noretry_norestart_vec.push_back(i); for each (auto i in retry_no_restart_Arr) retry_norestart_vec.push_back(i); for each (auto i in retry_restart_Arr) retry_restart_vec.push_back(i); auto checkFun = [&](std::vector &cur) -> bool { for each(auto i in cur) { if (i == curEvent) return true; } return false; }; if (checkFun(noretry_norestart_vec)) return CONTROL_ACCESSAUTH_NORETRY_NORESTART; else if (checkFun(retry_norestart_vec)) return CONTROL_ACCESSAUTH_RETRY_NORESTART; else if (checkFun(retry_restart_vec)) return CONTROL_ACCESSAUTH_RETRY_RESTART; else return CONTROL_ACCESSAUTH_UNKNOWN; } #else #include #include int checkErrType(int curEvent) { std::vector noretry_norestart_vec = ERRARR_ACCESSAUTH_NORETRY_NORESTART, retry_norestart_vec = ERRARR_ACCESSAUTH_RETRY_NORESTART ,retry_restart_vec = ACCESSAUTH_ERR_RETRY_RESTART; auto checkFun = [&](std::vector &cur) -> bool { for(auto i : cur) { if (i == curEvent) return true; } return false; }; if (checkFun(noretry_norestart_vec)) return CONTROL_ACCESSAUTH_NORETRY_NORESTART; else if (checkFun(retry_norestart_vec)) return CONTROL_ACCESSAUTH_RETRY_NORESTART; else if (checkFun(retry_restart_vec)) return CONTROL_ACCESSAUTH_RETRY_RESTART; else return CONTROL_ACCESSAUTH_UNKNOWN; } #endif