|  | @@ -394,7 +394,7 @@ void CIRControlWnd::ReLoadSignalXml()
 | 
	
		
			
				|  |  |  	if (Global::g_Config.enableTW)
 | 
	
		
			
				|  |  |  	{
 | 
	
		
			
				|  |  |  		std::string signaldir = Global::g_Config.twSignaldir;
 | 
	
		
			
				|  |  | -		std::string signalpath = signaldir;
 | 
	
		
			
				|  |  | +		std::string signalpath = signaldir + "\\";
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  		signalpath.append(Global::g_Config.twUseSignal + ".xml");
 | 
	
		
			
				|  |  |  		if (!PathFileExists(signalpath.c_str()))
 | 
	
	
		
			
				|  | @@ -419,7 +419,7 @@ void CIRControlWnd::ReLoadSignalXml()
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  		// 加载指定目录的xml信号集文件;
 | 
	
		
			
				|  |  | -		if (!TW::LoadXml(signalpath.c_str()))
 | 
	
		
			
				|  |  | +		if (0 != TW::LoadXml(signalpath.c_str()))
 | 
	
		
			
				|  |  |  		{
 | 
	
		
			
				|  |  |  			TRACE("加载信号集文件失败\r");
 | 
	
		
			
				|  |  |  		}
 | 
	
	
		
			
				|  | @@ -481,7 +481,7 @@ void CIRControlWnd::LoadSignals()
 | 
	
		
			
				|  |  |  	if (Global::g_Config.enableTW)
 | 
	
		
			
				|  |  |  	{
 | 
	
		
			
				|  |  |  		filehelper fh;
 | 
	
		
			
				|  |  | -		fh.getfiles_findout_subfolder(Global::g_Config.signaldir.c_str(), NULL, &m_vtsignal_tw);
 | 
	
		
			
				|  |  | +		fh.getfiles_findout_subfolder(Global::g_Config.twSignaldir.c_str(), NULL, &m_vtsignal_tw);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  		m_wndSignalCombo.ResetContent();
 | 
	
		
			
				|  |  |  		for (auto it : m_vtsignal_tw)
 | 
	
	
		
			
				|  | @@ -631,11 +631,13 @@ void CIRControlWnd::OnSignalBtnClick(UINT uId) // 发送遥控信号;
 | 
	
		
			
				|  |  |  	{
 | 
	
		
			
				|  |  |  		CString text;
 | 
	
		
			
				|  |  |  		pWnd->GetWindowText(text);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  		if (Global::g_Config.enableTW)
 | 
	
		
			
				|  |  |  		{
 | 
	
		
			
				|  |  | +			TW::SendKey(text.GetString());
 | 
	
		
			
				|  |  | +			Sleep(1000);
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  | -		else 
 | 
	
		
			
				|  |  | -		{
 | 
	
		
			
				|  |  | +		else {
 | 
	
		
			
				|  |  |  			// 发送单信号;
 | 
	
		
			
				|  |  |  			if (RedRat::g_sendSignal(text.GetString(), 1, 20))
 | 
	
		
			
				|  |  |  			{
 | 
	
	
		
			
				|  | @@ -647,6 +649,7 @@ void CIRControlWnd::OnSignalBtnClick(UINT uId) // 发送遥控信号;
 | 
	
		
			
				|  |  |  				TRACE("发送单信号失败\n");
 | 
	
		
			
				|  |  |  			}
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -707,29 +710,31 @@ void CIRControlWnd::OnBtnRestartProcClicked() // 重启红老鼠;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  void CIRControlWnd::UpdateSignalBtnStatus()
 | 
	
		
			
				|  |  |  {
 | 
	
		
			
				|  |  | +	std::string data;
 | 
	
		
			
				|  |  |  	if (Global::g_Config.enableTW)
 | 
	
		
			
				|  |  |  	{
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +		if (TW::GetSignalsName)
 | 
	
		
			
				|  |  | +			data = TW::GetSignalsName();
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  	else{
 | 
	
		
			
				|  |  |  		// 获取信号集;
 | 
	
		
			
				|  |  | -		if (RedRat::g_getSignalsName)
 | 
	
		
			
				|  |  | -		{
 | 
	
		
			
				|  |  | +		if (RedRat::g_getSignalsName){
 | 
	
		
			
				|  |  |  			// 获取信号数据集,以\n分隔;
 | 
	
		
			
				|  |  | -			std::string data = RedRat::g_getSignalsName();
 | 
	
		
			
				|  |  | -			CString signals = data.append(1, '\n').c_str();
 | 
	
		
			
				|  |  | -			signals.MakeUpper();
 | 
	
		
			
				|  |  | -			for (std::vector<BtnInfo>::iterator it = m_vtBtnInfo.begin(); it != m_vtBtnInfo.end(); it++)
 | 
	
		
			
				|  |  | -			{
 | 
	
		
			
				|  |  | -				if (signals.Find((it->name + '\n').c_str()) == -1)
 | 
	
		
			
				|  |  | -				{
 | 
	
		
			
				|  |  | -					it->bEnable = false;
 | 
	
		
			
				|  |  | -				}
 | 
	
		
			
				|  |  | -				else
 | 
	
		
			
				|  |  | -				{
 | 
	
		
			
				|  |  | -					it->bEnable = true;
 | 
	
		
			
				|  |  | -				}
 | 
	
		
			
				|  |  | -			}
 | 
	
		
			
				|  |  | +			data = RedRat::g_getSignalsName();
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +	}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +	CString signals = data.append(1, '\n').c_str();
 | 
	
		
			
				|  |  | +	signals.MakeUpper();
 | 
	
		
			
				|  |  | +	for (std::vector<BtnInfo>::iterator it = m_vtBtnInfo.begin(); it != m_vtBtnInfo.end(); it++)
 | 
	
		
			
				|  |  | +	{
 | 
	
		
			
				|  |  | +		if (signals.Find((it->name + '\n').c_str()) == -1)
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			it->bEnable = false;
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +		else
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			it->bEnable = true;
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  }
 |