A
Anthony Fine
Hello All,
I have a VB.Net app that needs to send mail. I have created a class for
building my e-mail, but keep getting the error (Could not access
'CDO.Message' object.) when trying to send it. I can succesfully send an
e-mail when I use the CreateObject("CDO.Message") method, but it fails when
trying to send using VB.Net. My code is below, I have included three
different ways that I have tried it, and both VB.Net options fail, any help
will be greatly appreciated.
--
Thank you,
Anthony Fine
'// VB 6.0 - This works fine...
'***********************************************
Private Sub Form_Load()
Dim iNewMsg As Object
Set iNewMsg = CreateObject("CDO.Message")
iNewMsg.To = "(e-mail address removed)"
iNewMsg.From = "(e-mail address removed)"
iNewMsg.Subject = "Test"
iNewMsg.TextBody = "Hello..."
iNewMsg.Send
Set iNewMsg = Nothing
End Sub
'***********************************************
'// VB.Net - This fails...
'***********************************************
Imports System.Web.Mail
Imports System.Web.Mail.SmtpMail
Public Class Form1
Inherits System.Windows.Forms.Form
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim iMsg As New MailMessage
Dim srv As SmtpMail
iMsg.To = "(e-mail address removed)"
iMsg.From = "(e-mail address removed)"
iMsg.BodyFormat = MailFormat.Text
iMsg.Body = "Testing..."
iMsg.Subject = "Test..."
srv.SmtpServer = "myServer"
srv.Send(iMsg)
End Sub
End Class
'***********************************************
'// VB.Net - This fails as well...
'***********************************************
Imports System.Web.Mail
Imports System.Web.Mail.SmtpMail
Public Class Form1
Inherits System.Windows.Forms.Form
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim newMail As New emailMessage
newMail.EmailTo = "(e-mail address removed)"
newMail.EmailFrom = "(e-mail address removed)"
newMail.EmailBodyFormat = MailFormat.Text
newMail.EmailBody = "Testing..."
newMail.EmailSubject = "Test..."
newMail.EmailServer = "myServer"
newMail.sendEmail()
newMail = Nothing
End Sub
End Class
Class emailMessage
Dim iMail As New MailMessage
Dim _to As String
Dim _from As String
Dim _server As SmtpMail
Dim _subject As String
Dim _body As String
Dim _bodyFormat As System.Web.Mail.MailFormat
Dim myServer As String
Public Property EmailTo() As String
Get
iMail.To = _to
End Get
Set(ByVal Value As String)
_to = Value
End Set
End Property
Public Property EmailFrom() As String
Get
iMail.From = _from
End Get
Set(ByVal Value As String)
_from = Value
End Set
End Property
Public Property EmailServer() As String
Get
_server.SmtpServer = myServer
End Get
Set(ByVal Value As String)
myServer = Value
End Set
End Property
Public Property EmailSubject() As String
Get
iMail.Subject = _subject
End Get
Set(ByVal Value As String)
_subject = Value
End Set
End Property
Public Property EmailBody() As String
Get
iMail.Body = _body
End Get
Set(ByVal Value As String)
_body = Value
End Set
End Property
Public Property EmailBodyFormat() As System.Web.Mail.MailFormat
Get
iMail.BodyFormat = _bodyFormat
End Get
Set(ByVal Value As System.Web.Mail.MailFormat)
_bodyFormat = Value
End Set
End Property
Public Sub sendEmail()
_server.Send(iMail)
End Sub
End Class
'***********************************************
I have a VB.Net app that needs to send mail. I have created a class for
building my e-mail, but keep getting the error (Could not access
'CDO.Message' object.) when trying to send it. I can succesfully send an
e-mail when I use the CreateObject("CDO.Message") method, but it fails when
trying to send using VB.Net. My code is below, I have included three
different ways that I have tried it, and both VB.Net options fail, any help
will be greatly appreciated.
--
Thank you,
Anthony Fine
'// VB 6.0 - This works fine...
'***********************************************
Private Sub Form_Load()
Dim iNewMsg As Object
Set iNewMsg = CreateObject("CDO.Message")
iNewMsg.To = "(e-mail address removed)"
iNewMsg.From = "(e-mail address removed)"
iNewMsg.Subject = "Test"
iNewMsg.TextBody = "Hello..."
iNewMsg.Send
Set iNewMsg = Nothing
End Sub
'***********************************************
'// VB.Net - This fails...
'***********************************************
Imports System.Web.Mail
Imports System.Web.Mail.SmtpMail
Public Class Form1
Inherits System.Windows.Forms.Form
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim iMsg As New MailMessage
Dim srv As SmtpMail
iMsg.To = "(e-mail address removed)"
iMsg.From = "(e-mail address removed)"
iMsg.BodyFormat = MailFormat.Text
iMsg.Body = "Testing..."
iMsg.Subject = "Test..."
srv.SmtpServer = "myServer"
srv.Send(iMsg)
End Sub
End Class
'***********************************************
'// VB.Net - This fails as well...
'***********************************************
Imports System.Web.Mail
Imports System.Web.Mail.SmtpMail
Public Class Form1
Inherits System.Windows.Forms.Form
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim newMail As New emailMessage
newMail.EmailTo = "(e-mail address removed)"
newMail.EmailFrom = "(e-mail address removed)"
newMail.EmailBodyFormat = MailFormat.Text
newMail.EmailBody = "Testing..."
newMail.EmailSubject = "Test..."
newMail.EmailServer = "myServer"
newMail.sendEmail()
newMail = Nothing
End Sub
End Class
Class emailMessage
Dim iMail As New MailMessage
Dim _to As String
Dim _from As String
Dim _server As SmtpMail
Dim _subject As String
Dim _body As String
Dim _bodyFormat As System.Web.Mail.MailFormat
Dim myServer As String
Public Property EmailTo() As String
Get
iMail.To = _to
End Get
Set(ByVal Value As String)
_to = Value
End Set
End Property
Public Property EmailFrom() As String
Get
iMail.From = _from
End Get
Set(ByVal Value As String)
_from = Value
End Set
End Property
Public Property EmailServer() As String
Get
_server.SmtpServer = myServer
End Get
Set(ByVal Value As String)
myServer = Value
End Set
End Property
Public Property EmailSubject() As String
Get
iMail.Subject = _subject
End Get
Set(ByVal Value As String)
_subject = Value
End Set
End Property
Public Property EmailBody() As String
Get
iMail.Body = _body
End Get
Set(ByVal Value As String)
_body = Value
End Set
End Property
Public Property EmailBodyFormat() As System.Web.Mail.MailFormat
Get
iMail.BodyFormat = _bodyFormat
End Get
Set(ByVal Value As System.Web.Mail.MailFormat)
_bodyFormat = Value
End Set
End Property
Public Sub sendEmail()
_server.Send(iMail)
End Sub
End Class
'***********************************************