Solved

Using Outlook to send email within Visual Basic .NET

Posted on 2007-03-26
16
238 Views
Last Modified: 2010-04-23
Hello,

I am trying to send email by Outlook using Visual Basic. Microsoft has a article on it: http://support.microsoft.com/kb/220595

For some reason, Dim olApp As Outlook.Application ....   where Outlook.Application is not found by VB .NET...

What can I do to fix this? Is there a class that I need to Imports in order to work?

Thanks
0
Comment
Question by:bri_stc
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 9
  • 6
16 Comments
 
LVL 47

Expert Comment

by:Wayne Taylor (webtubbs)
ID: 18796604
Hi bri_stc,

You will need to add a reference to Outlook as instructed in the article.

Regards,

Wayne
0
 
LVL 21

Expert Comment

by:theGhost_k8
ID: 18797836
and also use imports statement
Imports Microsoft.Office.Interop.Outlook.
0
 
LVL 1

Author Comment

by:bri_stc
ID: 18801810
Hello experts,

Adding the references have solve majority of the problem.

Now I am only down to these not being recognize:

olItem = olApp.CreateItem(olContactItem)  <------- where olContactItem is not recognize
olAppt = olApp.CreateItem(olAppointmentItem)<------- where olAppointmentItem is not recognize
olMail = olApp.CreateItem(olMailItem) <------- where olMailItem is not recognize

:) I am fairly green in VB .NET
Thanks

0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 21

Expert Comment

by:theGhost_k8
ID: 18801870
Dim olAppt As Outlook.AppointmentItem
and same is the others
0
 
LVL 1

Author Comment

by:bri_stc
ID: 18801909
I have done that already but no give~
0
 
LVL 21

Expert Comment

by:theGhost_k8
ID: 18801924
also www.outlookcode.com for some good tutorials
0
 
LVL 1

Author Comment

by:bri_stc
ID: 18801995
I think i have done that already...

In fact, i just want to be able to sent email out and this is what i have:

Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
        ' Start Outlook.
        ' If it is already running, you'll use the same instance...
        Dim olApp As Outlook.Application
        olApp = CreateObject("Outlook.Application")

        ' Logon. Doesn't hurt if you are already running and logged on...
        Dim olNs As Outlook.NameSpace
        olNs = olApp.GetNamespace("MAPI")
        olNs.Logon()



        ' Send a message to your new contact.
        Dim olMail As Outlook.MailItem
        olMail = olApp.CreateItem(olMailItem)
        ' Fill out & send message...
        olMail.To = "test@test.com"
        olMail.Subject = "About our meeting..."
        olMail.Body = _
             "Dear " & "Whomever is concern" & ", " & vbCr & vbCr & vbTab & _
             "I'll see you in 2 minutes for our meeting!" & vbCr & vbCr & _
             "Btw: I've added you to my contact list."
        olMail.Send()

        ' Clean up...
        MsgBox("All done...", vbMsgBoxSetForeground)
        olNs.Logoff()
        olNs = Nothing
        olMail = Nothing

        olApp = Nothing

    End Sub

___________________________

I am getting a error there:   olMail = olApp.CreateItem(olMailItem)  <----- olMailitem is undefine....
0
 
LVL 21

Expert Comment

by:theGhost_k8
ID: 18802464
Dim olMail As Outlook.MailItem << I site prob here
olMail = olApp.CreateItem(olMailItem)

Dim olMailItem As Outlook.MailItem << it should be like this
olMail = olApp.CreateItem(olMailItem)
0
 
LVL 21

Expert Comment

by:theGhost_k8
ID: 18802500
oops i am sorry my mistake...
0
 
LVL 21

Expert Comment

by:theGhost_k8
ID: 18802533
Imports Microsoft.Office.Interop.Outlook
olMailItem should be there in Outlook's properties
Outlook.olMailItem or Outlook.items.olMailitem
0
 
LVL 21

Expert Comment

by:theGhost_k8
ID: 18802598
you add a reference to Outlook object Library from Project -> References correct?  
Now if you go to View -> Object Browser, select the Outlook Library from the dropdown list to get all methods, etc.


you try this in a saperate app and check if the flow is correct.. this error points me to missing ref.
0
 
LVL 21

Accepted Solution

by:
theGhost_k8 earned 250 total points
ID: 18802654
try this too..

CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem);
you might need to typecast Outlook.MailItem

please check  the references
0
 
LVL 1

Author Comment

by:bri_stc
ID: 18802818
I am looking at the object browser right now, I dont see olMailItem in the reference list...

and for some reason, Microsoft.Office.Interop.Outlook dont seem to exist....

here is a screen shot of the object browser:
http://img107.imageshack.us/my.php?image=referencespv9.jpg
0
 
LVL 1

Author Comment

by:bri_stc
ID: 18802898
How about this:
 
Dim sendingemail As Outlook.MailItem

sendingemail.To = "mmok@stcbus.com"
sendingemail.Subject = "About our meeting..."
sendingemail.Body = _
             "Dear " & "Whomever is concern" & ", " & vbCr & vbCr & vbTab & _
             "I'll see you in 2 minutes for our meeting!" & vbCr & vbCr & _
             "Btw: I've added you to my contact list."
sendingemail.Send()

Just to make things simply, but now I am getting a error with this line when I run it: sendingemail.To = "mmok@stcbus.com"....  but it compile just fine, just when I execute the send, this line causes an error.
0
 
LVL 1

Author Comment

by:bri_stc
ID: 18802953
I have finally found the answer!!!   olmailitem is listed under Outlook.OlItemType.olMailItem

Thanks theGhost_k8...  handing you the point now!
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

If you're writing a .NET application to connect to an Access .mdb database and use pre-existing queries that require parameters, you've come to the right place! Let's say the pre-existing query(qryCust) in Access takes a Date as a parameter and l…
Introduction As chip makers focus on adding processor cores over increasing clock speed, developers need to utilize the features of modern CPUs.  One of the ways we can do this is by implementing parallel algorithms in our software.   One recent…
This is a high-level webinar that covers the history of enterprise open source database use. It addresses both the advantages companies see in using open source database technologies, as well as the fears and reservations they might have. In this…
NetCrunch network monitor is a highly extensive platform for network monitoring and alert generation. In this video you'll see a live demo of NetCrunch with most notable features explained in a walk-through manner. You'll also get to know the philos…

717 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question