求助!我用VC编写的程序有懂的来指导一下
希望高手帮我解释的就是这个接收程序的句子
void CAdsDlg::OnOnCommMscomm1()
{
// TODO: Add your control notification handler code here
int event;
VARIANT var;
char * str;
int len;
event = m_com.GetCommEvent();
switch(event)
{
case 2:
len = m_com.GetInBufferCount();
var = m_com.GetInput();
str = (char *)(var.parray->pvData);
*(str+len) = '\r';
*(str+len+1) = '\n';
*(str+len+2) = '\0';
strcat(buf,str);
GetDlgItem(IDC_jieshou)->SetWindowText(buf);
GetDlgItem(IDC_jieshou)->Invalidate(FALSE);
break;
case 3:
break;
}
}
范例(我自己找到的对初始化的解释~给有用的朋友)
void CAdsDlg::Onstart()//串口初始化
{// TODO: Add your control notification handler code here
m_com.SetCommPort(1);
//选择COM
m_com.SetPortOpen(TRUE);
//打开串口
m_com.SetInputMode(1);
//设置输入方式为二进制
m_com.SetSettings("9600,n,8,1");
//设置数据传输率等参数
m_com.SetRThreshold(1);
//参数1表示有一个字符引发一个事件
m_com.SetInputLen(0);
//0:全部读取缓冲区的内容
m_info = m_com.GetSettings();
//输入接收显示框
UpdateData(FALSE);
//更新编辑框的内容显示