C++ 为SIU启用事件时WFS_ERR_SIU_INVALID_PORT(-801)错误
我正在尝试为SIU设备启用以下事件:C++ 为SIU启用事件时WFS_ERR_SIU_INVALID_PORT(-801)错误,c++,cen-xfs,C++,Cen Xfs,我正在尝试为SIU设备启用以下事件: LPWFSRESULT lpWfsResult; WFSSIUENABLE commandData; commandData.fwSensors[WFS_SIU_OPERATORSWITCH] = WFS_SIU_ENABLE_EVENT; commandData.fwIndicators[WFS_SIU_OPENCLOSE] = WFS_SIU_ENABLE_EVENT; HRESULT hResult = WFS
LPWFSRESULT lpWfsResult;
WFSSIUENABLE commandData;
commandData.fwSensors[WFS_SIU_OPERATORSWITCH] = WFS_SIU_ENABLE_EVENT;
commandData.fwIndicators[WFS_SIU_OPENCLOSE] = WFS_SIU_ENABLE_EVENT;
HRESULT hResult = WFSExecute(hService, WFS_CMD_SIU_ENABLE_EVENTS, &commandData, 10000, &lpWfsResult);
cout << "Events enabled?:" << hResult << endl;
WFSFreeResult(lpWfsResult);
LPWFSRESULT LPWFSRESULT;
wfssienable命令数据;
commandData.fwSensors[WFS_-SIU-OPERATORSWITCH]=WFS_-SIU-ENABLE_事件;
commandData.fwIndicators[WFS_SIU_OPENCLOSE]=WFS_SIU ENABLE_事件;
HRESULT HRESULT=wfsecute(hService、WFS_CMD_SIU_ENABLE_EVENTS、&commandData、10000、&lpWfsResult);
我想您需要在WFSEcute之前初始化WFSSIUENABLE结构。您仅设置操作员开关和打开/关闭的值,但其他值如何?尝试执行一个memset将所有其他设置为零(WFS_SIU_NO_CHANGE):
另一件事是要知道这个ATM中有哪些端口可用,首先要询问SIU功能。如果您试图启用ATM中不可用的端口,则会出现此错误。并非所有的AMT都有相同的可用端口。Hi@SuperG280,我认为OperatorSwitch和Open/Close指示器是每个ATM中都可以使用的一些基本端口。不过,最好检查SIU功能。非常感谢你的建议。我会试试你的建议。不是所有的建议都有。在一些著名制造商的一些基本型号中,考虑到最终成本,他们移除了操作员开关按钮,当柜门打开时,您可以切换到主管模式。
memset( commandData, 0, sizeof( WFSSIUENABLE));