简单的用winsock控件,还可以用mapi控件.

解决方案 »

  1.   

    需要例子代码的话,请留个Email
      

  2.   

    算了,要吃饭了,直接给你个例子吧,
    加载:MAPIMessages1
          MAPISession1
          txtName
          txtAddress
          txtSubject
          txtNote
          cmdSend
          cmdExit
    窗体内代码如下:
    Private Sub cmdSend_Click()
        ' 开始 MAPI Session
        MAPISession1.SignOn
            
        ' 当 MAPI Session 建立后,
        ' Session 所产生的 Handle 会存于 SessionID 属性中
        If MAPISession1.SessionID <> 0 Then
        
            ' 建立 MAPIMessages 与 MAPISession 间之有效联系
            MAPIMessages1.SessionID = MAPISession1.SessionID
            
            ' 建立新的 E-Mail Message
            MAPIMessages1.Compose
            
            ' 收件人 (Recipient's Name)
            MAPIMessages1.RecipDisplayName = txtName.Text
            
            ' 收件人的 E-Mail 地址
            MAPIMessages1.RecipAddress = txtAddress.Text
            
            ' 是否要检查收件人有无存在于全域 (Global) 或个人 (Personal) 通讯录中
            MAPIMessages1.AddressResolveUI = True
            
            ' 检查收件人有无存在于全域 (Global) 或个人 (Personal) 通讯录中
            MAPIMessages1.ResolveName
            
            ' E-Mail 的主题
            MAPIMessages1.MsgSubject = txtSubject.Text
            
            ' E-Mail 的内文
            MAPIMessages1.MsgNoteText = txtNote.Text
            
            ' 发送 E-Mail 且不显示"邮件对话框" (直接发送)
            MAPIMessages1.Send False
        End If
        
        ' 结束 MAPI Session
        MAPISession1.SignOff
    End SubPrivate Sub cmdExit_Click()
        End
    End Sub
      

  3.   

    用Sockets发送电子邮件 
    想必大多数程序员都是运用Microsoft MAPI控件来发送电子邮件。那你有没有想过其它方法呢?其实,只需简单到4个参数,通过WinSock也可以发电子邮件,不信?
    在Form中添加一个WinSock控件,命名为Socket。
    Function SendMail(psTo As String, psFrom As String, psSubject As String, psBody As String) As Boolean
    Dim lsMessage As String
    Dim lsSep As String
    lsMessage = "MAIL FROM: <" & psFrom & ">" & vbCrLf _
    & "RCPT TO: <" & psTo & ">" & vbCrLf _
    & "DATA" & vbCrLf _
    & "DATE: " & Format$(Now, "dd mmm yy ttttt") & vbCrLf _
    & "FROM: " & psFrom & vbCrLf _
    & "TO: " & psTo & vbCrLf _
    & "SUBJECT: " & psSubject & vbCrLf & vbCrLf _
    & psBody & vbCrLf & "." & vbCrLf
    Socket.SendData (lsMessage) 
    End Function
    其中,psFrom是发送人的地址,psTo是收件人的地址,psSubject是邮件主题,psBody是邮件内容。
    如何,够简单吧。 
      

  4.   

    Dim xOutLook As New Outlook.Application
        Set xMail = xOutLook.CreateItem(olMailItem)
        xMail.To = txtAddress.Text
        xMail.Subject = txtSubject.Text
        xMail.HTMLBody = strHTML 'HTML&Icirc;&Auml;&micro;&micro;&Auml;&Uacute;&Egrave;&Yacute;
       xMail.Send
        
    就这么简单
      

  5.   

    to DeityFox(神狐):
    我用你的方法出错,提示是:
    Run-time error '10047';
    Address Family is not supported这是什么问题?谢谢!!!
      

  6.   

    to:DeityFox(神狐)你这个方法不错,但是出错,我不知道如何解决!能帮忙么?就是WinSock怎么设计呢?