📄 phonepcdlg.cpp
字号:
}
void CPhonePCDlg::OnCbnSelChange()
{
// 得到当前选中条目的索引
// int Index = m_ComboWay.GetCurSel();
// 得到此条目的内容
// char Text[20];
// m_ComboWay.GetLBText(Index, Text);
// 以信息框报告得到的内容
// AfxMessageBox(CString(Text));
}
CReciveDialog *pDialog = NULL;
void CPhonePCDlg::OnWritePhone()
{
// TODO: Add your control notification handler code here
// pDialog =new CReciveDialog;
// CSerial AtCom;
// BOOL bResult = pDialog->Create(IDD_DIALOG_SENDWAITING,this);
// pDialog->ShowWindow(SW_SHOW);
::PostMessage(m_hWnd,WM_USER_SEND_PHONE,(WPARAM)1,(LPARAM)0);
}
void CPhonePCDlg::OnAddzero()
{
// TODO: Add your control notification handler code here
}
void CPhonePCDlg::OnAutoLock()
{
int nLockPin,nUseRandom;
UpdateData(TRUE);
nLockPin = m_RadioButtonAutoPin1.GetCheck();
nUseRandom = m_RandomButton1.GetCheck();
if(nLockPin == 0)
{
m_InitPinEdit.EnableWindow(FALSE);
m_RandomButton1.EnableWindow(FALSE);
m_RandomButton2.EnableWindow(FALSE);
m_ComboPinLen.EnableWindow(FALSE);
m_FixPinEdit.EnableWindow(FALSE);
}
else
{
m_InitPinEdit.EnableWindow(TRUE);
m_RandomButton1.EnableWindow(TRUE);
m_RandomButton2.EnableWindow(TRUE);
if(nUseRandom == 0)
{
m_ComboPinLen.EnableWindow(FALSE);
m_FixPinEdit.EnableWindow(TRUE);
}
else
{
m_ComboPinLen.EnableWindow(TRUE);
m_FixPinEdit.EnableWindow(FALSE);
}
}
}
void CPhonePCDlg::OnUseRandom()
{
int nUseRandom;
nUseRandom = m_RandomButton1.GetCheck();
if(nUseRandom == 0)
{
m_ComboPinLen.EnableWindow(FALSE);
m_FixPinEdit.EnableWindow(TRUE);
}
else
{
m_ComboPinLen.EnableWindow(TRUE);
m_FixPinEdit.EnableWindow(FALSE);
}
}
void CPhonePCDlg::OnLockSim()
{
int nLockSim;
nLockSim = m_PhoneSimButton1.GetCheck();
if(nLockSim)
{
m_LockSimNumEdit.EnableWindow(TRUE);
}
else
m_LockSimNumEdit.EnableWindow(FALSE);
}
void CPhonePCDlg::OnLockProvider()
{
int nLockProvider;
UpdateData(TRUE);
nLockProvider = m_RadioLockOperator1.GetCheck();
if(nLockProvider)
m_ComboOperator.EnableWindow(TRUE);
else
m_ComboOperator.EnableWindow(FALSE);
}
void CPhonePCDlg::OnLockCell()
{
int nLockRegion;
UpdateData(TRUE);
nLockRegion = m_RadioLockCell1.GetCheck();
if(nLockRegion)
{
m_ComboOperatorNum.EnableWindow(TRUE);
m_RadioAutoLockCell1.EnableWindow(TRUE);
m_RadioAutoLockCell2.EnableWindow(TRUE);
}
else
{
m_ComboOperatorNum.EnableWindow(FALSE);
m_RadioAutoLockCell1.EnableWindow(FALSE);
m_RadioAutoLockCell2.EnableWindow(FALSE);
}
}
void CPhonePCDlg::Parse_data(char *sRead, int *ret_val)
{
int length;
char strTemp[100];
int Pos = -1;
int strTempPos = 0;
int retPos = 0;
length = strlen(sRead);
memset(strTemp, 0, sizeof(strTemp));
for(int i = 0; i <= length; i++)
{
if((sRead[i] != ',') && (sRead[i] != '\0'))
{
strTemp[strTempPos] = sRead[i];
strTempPos++;
}
else
{
if((i - Pos) > 1)
{
ret_val[retPos] = atoi(strTemp);
memset(strTemp, 0, sizeof(strTemp));
strTempPos = 0;
retPos++;
}
Pos = i;
}
}
}
void CPhonePCDlg::SendToPhone()
{
pDialog->OnCloseDlg();
}
#if 0
UINT CPhonePCDlg::CommThread(LPVOID pParam)
{
CString strTmp;
char bufTmp[100];
int len,i;
char bufat[] = {0x61, 0x74, 0x0D, 0x0A,0};
/*
if(!AtCom.Open(nComPort,nBaudrate)) //打开串口
{
char temp[100];
wsprintf(temp,"不能打开串口,串口号:%d 波特率:%d",nComPort,nBaudrate);
// MessageBox(temp,"不能打开串口");
AfxMessageBox(temp);
return 1;
}
*/
// pDlg->SendToPhone();
// pDialog->OnTestResultDlgClose();
// pDialog->OnCloseDlg();
// if(AtCom.ReadDataWaiting())
// len = ;
// strTmp = "AT\n";
/*
sprintf(bufTmp,"AT");
AtCom.SendData(bufat,strlen(bufat));
// sprintf(bufTmp,"\n");
// AtCom.SendData(bufTmp,strlen(bufTmp));
// len = 5;
// AtCom.ReadData(bufTmp,len);
for(i=0;i<100;i++)
{
AtCom.ReadData(bufTmp,len);
// len = 10;
len = AtCom.ReadDataWaiting();
if(len)
{
AtCom.ReadData(bufTmp,len);
break;
}
// if(m_nRet)
// return 0;
Sleep(100);
}
return 1;*/
if(m_nSysinfoCom)
{
strTmp.Format("AT#W0,%d\n",m_strSYS_0002_nAutoDely,
m_strSYS_0004_sSMSCenter,
m_strSYS_4000_bNotLocalAddZero,
m_strSYS_0005_bForbidLongDistanceCall,
m_strSYS_0006_sLCDContrast);
AtCom.SendData(strTmp,strTmp.GetLength());
}
i=0;
for(i=0;i<100;i++)
{
len = AtCom.ReadDataWaiting();
if(len)
{
AtCom.ReadData(bufTmp,len);
break;
}
// if(m_nRet)
// return 0;
Sleep(100);
}
// if(m_nRet)
// return 0;
if(strcmp(bufTmp,"OK") == 0)
{
}
if(m_nLocalCom)
{
strTmp.Format("AT#W1,%s,%s\n",m_strLOCAL_1000_strLocalZone,
m_strLOCAL_0003_nLocalMethod);
len = strTmp.GetLength();
AtCom.SendData(strTmp,len); //向终端写入控制数据
m_nLocalCom = FALSE;
}
for(i=0;i<100;i++)
{
len = AtCom.ReadDataWaiting();
if(len)
{
AtCom.ReadData(bufTmp,len);
break;
}
if(m_nRet)
return 0;
Sleep(100);
}
if(m_nRet)
return 0;
if(strcmp(bufTmp,"OK") == 0)
{
}
if(m_nPinSimCom)
{
// strTmp.Format("AT#W2,%d,%d,%d,%d,%d,%d,%s\n",nAutoLockPin,nOriginalPin,nUseRandomPin,nPinLength,nFixedPin,
// nLockSim,m_strPINSIM_7001_strLockSimNum);
// m_strPINSIM_6000_bAutoLockPin
strTmp.Format("AT#W2,%s,%s,%s,%s,%s,%s,%s\n",m_strPINSIM_6000_bAutoLockPin,
m_strPINSIM_6002_strOriginalPin,
m_strPINSIM_6005_bUseRandomPin,
m_strPINSIM_6001_nPinLength,
m_strPINSIM_6004_strFixedPin,
m_strPINSIM_7000_bLockSim,
m_strPINSIM_7001_strLockSimNum);
len = strTmp.GetLength();
AtCom.SendData(strTmp,len); //向终端写入控制数据
m_nPinSimCom = FALSE;
}
for(i=0;i<100;i++)
{
len = AtCom.ReadDataWaiting();
if(len)
{
AtCom.ReadData(bufTmp,len);
break;
}
if(m_nRet)
return 0;
Sleep(100);
}
if(m_nRet)
return 0;
if(strcmp(bufTmp,"OK") == 0)
{
}
nSendComplete = 1;
if(AtCom.IsOpened())
AtCom.Close();
return 1;
return 1;
}
#endif
void CPhonePCDlg::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
if(nIDEvent == TIMER_CHECK_DIALOG)
{
KillTimer(TIMER_CHECK_DIALOG);
// KillTimer(TIMER_CHECKING);
pDialog->OnCloseDlg();
m_nRet = 1;
// if(AtCom.IsOpened())
// AtCom.Close();
AfxMessageBox("写入参数超时!");
}
else if(nIDEvent ==TIMER_CHECKING)
{
if(nSendComplete)
{
KillTimer(TIMER_CHECKING);
KillTimer(TIMER_CHECK_DIALOG);
pDialog->OnCloseDlg();
nSendComplete = 0;
AfxMessageBox("写入参数成功!");
}
}
CDialog::OnTimer(nIDEvent);
}
void CPhonePCDlg::OnSendPhone(WPARAM wp, LPARAM lp)
{
// ASSERT_VALID (pDialog);
int nAutoDelay;
int nLocalZone,nLocalMethod;
UpdateData(TRUE);
/*
char sTestplan[300];
GetPrivateProfileString("ComSetting","com","ERROR",sTestplan,sizeof(sTestplan),strConfigfile);
if(strcmp(sTestplan,"ERROR") == 0)
{
AfxMessageBox("读取串口设置信息失败!");
return;
}
nComPort = atoi(sTestplan);
GetPrivateProfileString("ComSetting","Baudrate","ERROR",sTestplan,sizeof(sTestplan),strConfigfile);
if(strcmp(sTestplan,"ERROR") == 0)
{
AfxMessageBox("读取串口设置信息失败!");
return;
}
nBaudrate = atoi(sTestplan);*/
// m_LongDistance
// nComPort = 1;
// nBaudrate = 115200;
/* if(!AtCom.Open(nComPort,nBaudrate)) //打开串口
{
char temp[100];
wsprintf(temp,"不能打开串口,串口号:%d 波特率:%d",nComPort,nBaudrate);
MessageBox(temp,"不能打开串口");
return;
}*/
// AtCom.Close();
// GetPrivateProfileString("ComSetting","com","ERROR",sTestplan,sizeof(sTestplan),strConfigfile);
// char sTestplan[300];
// sprintf(sTestplan,"%d",nComPort);
// WritePrivateProfileString("ComSetting", "com", sTestplan, strConfigfile);
//
// sprintf(sTestplan,"%d",nBaudrate);
// WritePrivateProfileString("ComSetting", "Baudrate", sTestplan, strConfigfile);
/* hThread=CreateThread(NULL,
0,
// (LPTHREAD_START_ROUTINE)SendToPhone,
SendToPhone,
NULL,
0,
&ThreadID);*/
// CString strTmp;
char strBufTmp[300];
// char bufTmp[100];
// int len;
// CString strOut;
// strOut = m_list.GetItemText(1,1);
if(wp)
{
pDialog =new CReciveDialog;
BOOL bResult = pDialog->Create(IDD_DIALOG_SENDWAITING,this);
pDialog->ShowWindow(SW_SHOW);
// nSendComplete = 0;
SetTimer(TIMER_CHECK_DIALOG,5000,NULL);
// SetTimer(TIMER_CHECKING,100,NULL);
// m_nRet = 0;
// m_Thread = AfxBeginThread(CommThread, this);
}
m_bCanSend = TRUE;
if(m_nSysinfo != CONTROL_NO)
{
nAutoDelay = m_ComboDelay.GetCurSel();
m_strSYS_0002_nAutoDely.Format("%d",nAutoDelay);
// srpintf(sTest
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -