LAPTOP-SNT8I5JK\Boounion
2025-07-11 c96ec4c44d31e4df6da3ce904fd3c6d8f3548c2d
SourceCode/Bond/EAPSimulator/CHsmsActive.cpp
@@ -25,7 +25,6 @@
{
   m_strIp = pszIp;
   m_nPort = port;
   ++m_nSessionId;
   auto onStatusChanged = [&](void* pFrom, ACTIVESTATE state) -> void {
      if (m_listener.onStateChanged != nullptr) {
@@ -130,3 +129,36 @@
   return 0;
}
int CHsmsActive::hsmsDatetimeSync()
{
   CTime time = CTime::GetCurrentTime();
   char szTime[256];
   sprintf_s(szTime, 256, _T("%4d%02d%02d%02d%02d%02d00"), time.GetYear(),
      time.GetMonth(), time.GetDay(), time.GetHour(), time.GetMinute(), time.GetSecond());
   IMessage* pMessage = nullptr;
   int nRet = HSMS_Create1Message(pMessage, m_nSessionId, 2 | REPLY, 31, ++m_nSystemByte);
   ISECS2Item* pItem = pMessage->getBody();
   pItem->setString((const char*)szTime, _T("Date time"));
   m_pActive->sendMessage(pMessage);
   HSMS_Destroy1Message(pMessage);
   return 0;
}
int CHsmsActive::hsmsTerminalDisplay(BYTE tid, const char* pszText)
{
   char szTid[1];
   szTid[0] = tid;
   IMessage* pMessage = nullptr;
   int nRet = HSMS_Create1Message(pMessage, m_nSessionId, 10 | REPLY, 3, ++m_nSystemByte);
   ISECS2Item* pItem = pMessage->getBody();
   pItem->addBinaryItem(szTid, 1, _T("TID"));
   pItem->addItem(pszText, _T("TEXT"));
   m_pActive->sendMessage(pMessage);
   HSMS_Destroy1Message(pMessage);
   return 0;
}