|
@@ -92,6 +92,7 @@ do {\
|
|
|
|
|
|
#define LOG_WATCHDOG_ERROR_MSG_MACRO(errCode, MethodSig)\
|
|
|
LOG_ERROR_MSG_MACRO(errCode, MethodSig, WATCHDOG)
|
|
|
+
|
|
|
enum PageType
|
|
|
{
|
|
|
PageType_Init,
|
|
@@ -99,66 +100,6 @@ enum PageType
|
|
|
PageType_UserDesktop,
|
|
|
PageType_Other,
|
|
|
};
|
|
|
-enum VendorNameType
|
|
|
-{
|
|
|
- Vendor_Invalide,
|
|
|
- Vendor_Sankyo,
|
|
|
- Vendor_ChinaVision,
|
|
|
- Vendor_Hyosung,
|
|
|
- Vendor_Kxd,
|
|
|
- Vendor_Keba,
|
|
|
- Vendor_Nantian,
|
|
|
- Vendor_yotap,
|
|
|
- Vendor_ZSS,
|
|
|
- Vendor_GreateWall,
|
|
|
- Vendor_YiHua,
|
|
|
- Vendor_GRG,
|
|
|
- Vendor_CW,
|
|
|
- Vendor_EastCom,
|
|
|
- Vendor_HuaXin,
|
|
|
- Vendor_MAX
|
|
|
-};
|
|
|
-
|
|
|
-static const char* VendorNameStr[] = {
|
|
|
- "Unknown",
|
|
|
- "Sankyo",
|
|
|
- "ChinaVision",
|
|
|
- "hyosung",
|
|
|
- "kxd",
|
|
|
- "keba",
|
|
|
- "nantian",
|
|
|
- "yotap",
|
|
|
- "zss",
|
|
|
- "gwi",
|
|
|
- "yh", // "yihua"
|
|
|
- "grg",
|
|
|
- "CW",
|
|
|
- "EastCom",
|
|
|
- "hx"
|
|
|
-};
|
|
|
-
|
|
|
-inline static VendorNameType GetCurVendorType(LPCTSTR vendorName)
|
|
|
-{
|
|
|
- if (vendorName == NULL || strlen(vendorName) == 0) {
|
|
|
- return Vendor_Invalide;
|
|
|
- }
|
|
|
- int idx = -1;
|
|
|
- for (int i = 0; i < sizeof(VendorNameStr) / sizeof(VendorNameStr[0]); ++i) {
|
|
|
- if (strnicmp(vendorName, VendorNameStr[i], strlen(VendorNameStr[i])) == 0) {
|
|
|
- idx = i;
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- if (idx == -1) {
|
|
|
- /*历史遗留原因,怡化厂商有两个适配器名字*/
|
|
|
- if (strnicmp(vendorName, "yihua", strlen("yihua")) == 0) {
|
|
|
- idx = Vendor_YiHua;
|
|
|
- } else {
|
|
|
- idx = Vendor_Invalide;
|
|
|
- }
|
|
|
- }
|
|
|
- return (VendorNameType)idx;
|
|
|
-}
|
|
|
|
|
|
template <typename TSubAdpt>
|
|
|
struct DevAdptLibHelper
|
|
@@ -168,7 +109,7 @@ private:
|
|
|
bool CheckAndGetMapAdatperName(const CSimpleStringA& strPath, CSimpleStringA& replaceAdapterName)
|
|
|
{
|
|
|
bool result = false;
|
|
|
- CSimpleStringA strTest = strPath.GetData();
|
|
|
+ CSimpleStringA strTest = m_strAdapterName.IsNullOrEmpty() ? strPath.GetData() : m_strAdapterName.GetData();
|
|
|
for (int i = 0; i < strTest.GetLength(); ++i) {
|
|
|
if (strTest[i] >= 'A' && strTest[i] <= 'Z') strTest[i] = strTest[i] + ('a' - 'A');
|
|
|
}
|
|
@@ -246,6 +187,8 @@ private:
|
|
|
|
|
|
public:
|
|
|
|
|
|
+ void SetAdapterName(const CSimpleStringA& strEntityName) { m_strAdapterName = strEntityName; }
|
|
|
+
|
|
|
ErrorCodeEnum LoadLibAddress(const CSimpleStringA& strFullLibPath)
|
|
|
{
|
|
|
ErrorCodeEnum erroCode = Error_Succeed;
|
|
@@ -448,7 +391,7 @@ public:
|
|
|
|
|
|
DevAdptLibHelper()
|
|
|
: pFuncCreateAdapt(nullptr), pFuncReleaseAdapt(nullptr), pFuncGetPrefixErr(nullptr)
|
|
|
- , m_AdptObjPtr(nullptr), m_VS2010BridgeMode(false)
|
|
|
+ , m_AdptObjPtr(nullptr), m_VS2010BridgeMode(false), m_strAdapterName(true)
|
|
|
{
|
|
|
memset(&m_lib, 0, sizeof(toolkit_lib_t));
|
|
|
}
|
|
@@ -472,6 +415,7 @@ private:
|
|
|
|
|
|
TSubAdpt* m_AdptObjPtr;
|
|
|
bool m_VS2010BridgeMode;
|
|
|
+ CSimpleStringA m_strAdapterName;
|
|
|
};
|
|
|
|
|
|
|
|
@@ -489,11 +433,12 @@ public:
|
|
|
CSimpleStringA strInOutDir;
|
|
|
CSimpleStringA strCheckdata;
|
|
|
CSimpleStringA strKeysn;
|
|
|
+ CSimpleStringA strPureAdapterName;
|
|
|
|
|
|
AdaptorInfo() :strVendor(true), strVersion(true), strBatch(true)
|
|
|
, strPort(true), strBaudrate(true)
|
|
|
, strPortNum(true), strInOutDir(true)
|
|
|
- , strCheckdata(true), strKeysn(true)
|
|
|
+ , strCheckdata(true), strKeysn(true), strPureAdapterName(true)
|
|
|
{
|
|
|
}
|
|
|
|
|
@@ -752,6 +697,7 @@ public:
|
|
|
m_RootIniCodeMap.insert(std::make_pair<std::string, DWORD>("PinPad", 0x2060021f));
|
|
|
m_RootIniCodeMap.insert(std::make_pair<std::string, DWORD>("Gpio", 0x20900203));
|
|
|
m_RootIniCodeMap.insert(std::make_pair<std::string, DWORD>("HSPScanner", 0x2170020f));
|
|
|
+
|
|
|
}
|
|
|
|
|
|
ErrorCodeEnum GetAndSplitDevErrInfo(
|
|
@@ -849,12 +795,20 @@ public:
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ ErrorCodeEnum LoadUpAdapterLibrary()
|
|
|
+ {
|
|
|
+ m_hDevHelper.SetAdapterName(this->GetEntityBase()->GetEntityName());
|
|
|
+ ErrorCodeEnum rc = m_hDevHelper.LoadUp(m_adapterInfo.adapterFilePath);
|
|
|
+ return rc;
|
|
|
+ }
|
|
|
/*fulfill adapter elem, open param and adapter file name&absolute path */
|
|
|
void FulfillAdapterInfoFrom(const VendorLibInfo& vendorLib)
|
|
|
{
|
|
|
m_adapterInfo.strVendor = vendorLib.strVendor;
|
|
|
m_adapterInfo.strVersion = vendorLib.strVersion;
|
|
|
m_adapterInfo.strBatch = vendorLib.strBatch;
|
|
|
+ m_adapterInfo.strPureAdapterName = vendorLib.strFileValue;
|
|
|
|
|
|
CSmartPointer<IConfigInfo> spConfigRoot;
|
|
|
this->GetEntityBase()->GetFunction()->OpenConfig(Config_Root, spConfigRoot);
|