Dim Third As String
            Dim Fourth As String
            Dim Fifth As String
            Dim Sixth As String
            Dim Seventh As String
            Dim Eighth As String
            Dim Ninth As String
            Dim Tenth As String
            
            Third = "Date:" + Chr(32) + Format(Date, "Ddd") & ", " & _
            Format(Date, "dd Mmm YYYY") & " " & Format(Time, "hh:mm:ss") _
            & "" & " -0600" + vbCrLf
            
            '发件人
            Fourth = "From:" + Chr$(32) + Chr$(34) + "VB邮件发送" + Chr$(34) + "<" & StrMailFrom & ">" + vbCrLf
            
            '收件人
            Fifth = "To:" + Chr(32) + StrMailTo + vbCrLf
            
            '主题
            Sixth = "Subject:" + Chr(32) + EmailSubject + vbCrLf
            
            '正文
            Seventh = EmailBodyOfMessage + vbCrLf + "." + vbCrLf
            Ninth = "X-Mailer:xiaoqiangziMail" + vbCrLf
            Tenth = "Mime-Version: 1.0" & vbCrLf + "Content-Type: text/plain;" + " Charset = " + Chr(34) + "gb2312" + Chr(34) + vbCrLf
            Eighth = Fourth + Third + Fifth + Sixth + Ninth + Tenth
            Winsock1.SendData Eighth & vbCrLf & vbCrLf
            DoEvents
            Winsock1.SendData Seventh
            IsMsgBody = True
这段代码里的third、fourth等该如何理解,还有如何解释这段代码的结构及执行过程,仅仅只是一个顺序执行的赋值过程吗?

解决方案 »

  1.   

    1 这段代码里的third、fourth 等只是变量名而已。
    2 只是一个顺序执行的过程,但不仅仅赋值。两处 Winsock1.SendData 发送了数据。
      

  2.   

    Third = "Date:" + Chr(32) + Format(Date, "Ddd") & ", " & _ 
                Format(Date, "dd Mmm YYYY") & " " & Format(Time, "hh:mm:ss") _ 
                & "" & " -0600" + vbCrLf 
    third应该是取的一个日期和时间,或者说取的是NOW()
    fourth内的值是发件人的E-MAIL
      

  3.   

    这段代码,分二次发送了数据,第一次发送了信息的头部,第二次发送了信息的身体部份,
    但如果要我写这段代码的话我会把头和身体放在一起发送,在winsock编程中一定要考虑
    安全和数据完整性,像上面这么写代码,有很大的问题,如果A端在接收B端数据时,网络
    延迟或断网,那么身体部份将接收不到,那么那个头部接收到了又有什么用呢,在数据重
    组时,可能还会出错,就因为身体和头部不能完整匹配.