TEST(strings, string_abc_should_not_eq_to_string_abcd){ EXPECT_FALSE(IsSameString("abc","abcd")); }
TEST(strings, cat_str_a_and_b_should_eq_to_ab){ char dst[20] = {0}; Cat2Str("a","b", dst, 20); EXPECT_TRUE(IsSameString("ab", dst)); }
TEST(strings, string_abc_should_eq_to_string_abc){ EXPECT_TRUE(IsSameString("abc","abc")); }
void CDlg5::PcStart() /////////////////////电脑开机邮件提示 { // TODO: Add your control notification handler code here char buff[100]; CString curuser=_T("administrator"); CString curmailfrom; CString currcptto=_T("15886495012"); CString curdomain=_T("domain.com"); CString strsubject=_T("电脑已开机"); CString strmessagebody=_T("您电脑已开机,正在运行Keybor"); CString strtemp; CString strmail; //curuser="******"; currcptto+=_T("@qq.com"); curmailfrom.Format(_T("%s@%s"), curuser,curdomain); memset(buff,0,100); if(!m_socket.Create()) { //MessageBox("创建socket失败."); return; } if(!m_socket.Connect(_T("mx0.qq.com"),25)) { //MessageBox("连接服务器失败"); return; } //连接成功后取得欢迎信息 m_socket.Receive(buff,100); if (!IsSameString(buff,3,_T("220"))) { m_socket.Close(); //MessageBox(buff,"220错误"); return; } //发送HELO命令 sprintf_s(buff,_T("HELO %s\r\n"),curdomain); m_socket.Send(buff,strlen(buff)); m_socket.Receive(buff,100); if (!IsSameString(buff,3,_T("250"))) { m_socket.Send(_T("QUIT\r\n"),strlen(_T("QUIT\r\n"))); //m_socket.Receive(buff,100); m_socket.Close(); //MessageBox(buff,"HELO命令返回错误"); return ; } //发送MAIL FROM命令 sprintf_s(buff,_T("MAIL FROM:<%s>\r\n"),curmailfrom); m_socket.Send(buff,strlen(buff)); m_socket.Receive(buff,100); if (!IsSameString(buff,3,_T("250"))) { m_socket.Send(_T("QUIT\r\n"),strlen(_T("QUIT\r\n"))); //m_socket.Receive(buff,100); m_socket.Close(); //MessageBox(buff,"MAIL FROM命令返回错误"); return; } //发送RCPT TO命令 sprintf_s(buff,_T("RCPT TO:<%s>\r\n"),currcptto); m_socket.Send(buff,strlen(buff)); m_socket.Receive(buff,100); if (IsSameString(buff,3,_T("550"))) { m_socket.Send(_T("QUIT\r\n"),strlen(_T("QUIT\r\n"))); m_socket.Receive(buff,100); //m_socket.Close(); strtemp.Format(_T("你的邮件收件人地址不存在\r\n服务器信息:%s"),buff); //MessageBox(strtemp); return; } if (!IsSameString(buff,3,_T("250"))) { m_socket.Send(_T("QUIT\r\n"),strlen(_T("QUIT\r\n"))); //m_socket.Receive(buff,100); m_socket.Close(); //MessageBox(buff,"RCPT TO命令返回错误"); return; } sprintf_s(buff,_T("DATA\r\n")); m_socket.Send(buff,strlen(buff)); m_socket.Receive(buff,100); if (!IsSameString(buff,3,_T("354"))) { m_socket.Send(_T("QUIT\r\n"),strlen(_T("QUIT\r\n"))); //m_socket.Receive(buff,100); m_socket.Close(); //MessageBox(buff,"DATA命令返回错误"); return; } //按照格式来构造邮件 strmail=_T(""); strtemp.Format(_T("From: \"%s\" <%s>\r\n"),curuser,curmailfrom); strmail+=strtemp; strtemp.Format(_T("To: <%s>\r\n"),currcptto); strmail+=strtemp; strtemp.Format(_T("Subject: %s\r\n"),strsubject); strmail+=strtemp; CTime time=CTime::GetCurrentTime(); strtemp=time.Format(_T("Date: %a,%d %b %Y %X +0800\r\n")); //"Date: Thu, 30 Aug 2007 15:23:32 +0800\r\n"; //预留日期 strmail+=strtemp; strtemp=_T("Content-Type: multipart/mixed; boundary=\"#BOUNDARY.CMAILSERVER#\"\r\n\r\n\r\n"); strmail+=strtemp; strtemp=_T("--#BOUNDARY.CMAILSERVER#\r\n"); strmail+=strtemp; strtemp=_T("Content-Type: text/html; charset=\"gb2312\"\r\nContent-Transfer-Encoding: 7bit\r\n\r\n"); strmail+=strtemp; strmail+=strmessagebody; strtemp=_T("\r\n\r\n--#BOUNDARY.CMAILSERVER#--\r\n\r\n.\r\n"); strmail+=strtemp; //发送邮件正文 m_socket.Send(strmail,strmail.GetLength()); m_socket.Receive(buff,100); if (!IsSameString(buff,3,_T("250"))) { m_socket.Send(_T("QUIT\r\n"),strlen(_T("QUIT\r\n"))); //m_socket.Receive(buff,100); m_socket.Close(); //MessageBox(buff,"DATA命令返回错误"); return; } //发送QUIT命令 sprintf_s(buff,_T("QUIT\r\n")); m_socket.Send(buff,strlen(buff)); m_socket.Receive(buff,100); if (!IsSameString(buff,3,_T("221"))) { //MessageBox(buff,"QUIT命令返回错误"); return; } m_socket.Close(); //MessageBox("发送成功"); }