|
@@ -982,8 +982,8 @@ void CIOCPModel::_TestWizardProc(PER_IO_CONTEXT* pIoContext, ProPackage* pak)
|
|
|
{
|
|
|
bool bRet = false;
|
|
|
TCHAR szType[8] = {0};
|
|
|
- TCHAR szCmd[128] = {0};
|
|
|
- int nRet = sscanf_s((char*)&pak->buf, _T("%[^>]>%s"), szType, 8, szCmd, 128);
|
|
|
+ TCHAR szCmd[256] = {0};
|
|
|
+ int nRet = sscanf_s((char*)&pak->buf, _T("%[^>]>%s"), szType, 8, szCmd, 256);
|
|
|
if (nRet == 2) {
|
|
|
if ( _tcsicmp(szType, _T("cmd")) == 0 && TW::SendCmd )
|
|
|
bRet = TW::SendCmd((char*)&pak->buf[4]);
|
|
@@ -993,6 +993,23 @@ void CIOCPModel::_TestWizardProc(PER_IO_CONTEXT* pIoContext, ProPackage* pak)
|
|
|
|
|
|
if (_tcsicmp(szType, _T("usb")) == 0 && TW::SendSwitch)
|
|
|
bRet = TW::SendSwitch(_tstoi((char*)&pak->buf[4]));
|
|
|
+
|
|
|
+ if (_tcsicmp(szType, _T("loadxml")) == 0 && TW::LoadXml)
|
|
|
+ bRet = !TW::LoadXml(szCmd);
|
|
|
+
|
|
|
+ if (_tcsicmp(szType, _T("getkeys")) == 0 && TW::GetSignalsName)
|
|
|
+ {
|
|
|
+ std::string keys = TW::GetSignalsName();
|
|
|
+
|
|
|
+ byte* sdata = new byte[keys.size() + PAK_LEN];
|
|
|
+ ProPackage* reponse_pak = (ProPackage*)sdata;
|
|
|
+ reponse_pak->header.version = 0xAC;
|
|
|
+ reponse_pak->header.len = keys.size() + PAK_LEN;
|
|
|
+ memcpy(reponse_pak->buf, keys.c_str(), keys.size());
|
|
|
+ send(pIoContext->m_sockAccept, (const char*)sdata, reponse_pak->header.len, 0);
|
|
|
+
|
|
|
+ return;
|
|
|
+ }
|
|
|
|
|
|
// µçÊÓ´®¿Ú;
|
|
|
if (_tcsicmp(szType, _T("tv")) == 0 && USBUPGRADE::RTK_USBUpgrade)
|