如何用MAPI和CDONTS来发邮件
不想另外安装第三方的发邮件组件,想直接利用MS的。
请问在VB里如何用MAPI来发送邮件(好像MAPI是OUTLOOK和OE自带有的吧),需要像在OE里发邮件一样先手工设置好发信帐号吗?能不能像JMAIL一样在发信时指定SMTP服务器及发信验证用户名和密码?
哪里有CDONTS发邮件的源码?我需要能指定发邮件的SMTP及认证用户名和密码的那个版本的,这就相当于JMAIL能实现的功能了,好像低版本的CDO不支持,汗~~~~~
下面是使用winsock实现的发送邮件,但其它问题仍未解决,等待高手
eSTMP.vbp
-------------------------------------------
Type=Exe
Object={248DD890-BB45-11CF-9ABC-0080C7E7B78D}#1.0#0; MSWINSCK.OCX
Form=frmmail.frm
Startup=\"Form1\"
HelpFile=\"\"
Title=\"Email发送\"
ExeName32=\"Email.exe\"
Command32=\"\"
Name=\"Email\"
HelpContextID=\"0\"
CompatibleMode=\"0\"
MajorVer=1
MinorVer=0
RevisionVer=0
AutoIncrementVer=0
ServerSupportFiles=0
VersionCompanyName=\"dapha.net\"
VersionFileDescription=\"Email发送,支持服务器认证,超文本邮件内容\"
VersionLegalCopyright=\"Copyright 2002 dapha.net\"
VersionProductName=\"Email发送软件\"
CompilationType=0
OptimizationType=0
FavorPentiumPro(tm)=0
CodeViewDebugInfo=0
NoAliasing=0
BoundsCheck=0
OverflowCheck=0
FlPointCheck=0
FDIVCheck=0
UnroundedFP=0
StartMode=0
Unattended=0
Retained=0
ThreadPerObject=0
MaxNumberOfThreads=1
[MS Transaction Server]
AutoRefresh=1
frmMail.frm
-----------------------------------------
VERSION 5.00
Object = \"{248DD890-BB45-11CF-9ABC-0080C7E7B78D}#1.0#0\"; \"MSWINSCK.OCX\"
Begin VB.Form Form1
BorderStyle = 1 \'Fixed Single
Caption = \"邮件发送程序(支持smtp服务器验证)\"
ClientHeight = 5550
ClientLeft = 45
ClientTop = 330
ClientWidth = 5805
LinkTopic = \"Form1\"
MaxButton = 0 \'False
ScaleHeight = 5550
ScaleWidth = 5805
StartUpPosition = 3 \'Windows Default
Begin MSWinsockLib.Winsock Winsock1
Left = 2640
Top = 2520
_ExtentX = 741
_ExtentY = 741
_Version = 393216
End
Begin VB.TextBox txtmessage1
Height = 1695
Left = 0
MultiLine = -1 \'True
TabIndex = 8
Text = \"frmmail.frx\":0000
ToolTipText = \"这里为超文本信件内容\"
Top = 3480
Width = 5775
End
Begin VB.TextBox user
Height = 270
Left = 3960
TabIndex = 4
Top = 840
Width = 1575
End
Begin VB.TextBox subject
Height = 270
Left = 960
TabIndex = 3
Text = \"你好\"
Top = 1320
Width = 2295
End
Begin VB.TextBox txtserver
Height = 270
Left = 960
TabIndex = 2
Text = \"smtp.etang.com\"
Top = 960
Width = 2295
End
Begin VB.TextBox txtpwa
Height = 270
IMEMode = 3 \'DISABLE
Left = 3960
PasswordChar = \"*\"
TabIndex = 5
Top = 1200
Width = 1575
End
Begin VB.TextBox getaddress
Height = 300
Left = 960
TabIndex = 1
Top = 600
Width = 2295
End
Begin VB.TextBox txtfrom
Height = 300
Left = 960
TabIndex = 0
Top = 240
Width = 2295
End
Begin VB.CommandButton cmdExit
Caption = \"退出\"
Height = 375
Left = 4680
TabIndex = 9
Top = 240
Width = 975
End
Begin VB.CommandButton CmdSend
Caption = \"发送\"
Default = -1 \'True
Height = 375
Left = 3360
TabIndex = 6
Top = 240
Width = 975
End
Begin VB.TextBox txtMessage
Height = 1815
Left = 0
MultiLine = -1 \'True
TabIndex = 7
Text = \"frmmail.frx\":0A1E
ToolTipText = \"信件内容\"
Top = 1680
Width = 5775
End
Begin VB.Label Label6
AutoSize = -1 \'True
Caption = \"用户名\"
Height = 180
Left = 3360
TabIndex = 16
Top = 840
Width = 540
End
Begin VB.Label StatusTxt
AutoSize = -1 \'True
BackStyle = 0 \'Transparent
BorderStyle = 1 \'Fixed Single
Height = 285
Left = 960
TabIndex = 15
Top = 5200
Width = 3375
End
Begin VB.Label Label5
AutoSize = -1 \'True
Caption = \"主题:\"
Height = 180
Left = 240
TabIndex = 14
Top = 1320
Width = 450
End
Begin VB.Label Label4
AutoSize = -1 \'True
Caption = \"SMTP服务器\"
Height = 180
Left = 0
TabIndex = 13
Top = 960
Width = 900
End
Begin VB.Label Label3
AutoSize = -1 \'True
Caption = \"密码\"
Height = 180
Left = 3360
TabIndex = 12
Top = 1200
Width = 360
End
Begin VB.Label Label2
AutoSize = -1 \'True
Caption = \"收信人地址\"
Height = 180
Left = 0
TabIndex = 11
Top = 600
Width = 900
End
Begin VB.Label Label1
AutoSize = -1 \'True
Caption = \"发信人地址\"
Height = 180
Left = 0
TabIndex = 10
Top = 240
Width = 900
End
End
Attribute VB_Name = \"Form1\"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
\'程序组合:dapha(汪锋)
\'下载http://www.dapha.net
\'我是一名VB爱好者,希望得到大家的帮助,共同学习,进步
\'转摘请保留以上信息,谢谢合作
Private Enum SMTP_State
MAIL_CONNECT
MAIL_HELO
MAIL_from
MAIL_RCPTTO
MAIL_DATA
MAIL_DOT
MAIL_QUIT
MAIL_USER
MAIL_PASS
mail_login
End Enum
Private m_State As SMTP_State
Private m_strEncodedFiles As String
- 上一篇: 10天学会ASP.net之第八天
- 下一篇: VB6 中使用错误处理对于速度的影响