?
Solved

Using Outlook to send email within Visual Basic .NET

Posted on 2007-03-26
16
Medium Priority
?
249 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 48

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:K V
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
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 
LVL 21

Expert Comment

by:K V
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:K V
ID: 18801910
0
 
LVL 21

Expert Comment

by:K V
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:K V
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:K V
ID: 18802500
oops i am sorry my mistake...
0
 
LVL 21

Expert Comment

by:K V
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:K V
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:
K V earned 1000 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

What’s Wrong with Your Cloud Strategy ?

Even as many CIOs are embracing a cloud-first strategy, the reality is that moving to the cloud is a lengthy process and the end-state is likely to be a blend of multiple clouds—public and private. Learn why multicloud solutions matter in this webinar by Nimble Storage.

Question has a verified solution.

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

This tutorial demonstrates one way to create an application that runs without any Forms but still has a GUI presence via an Icon in the System Tray. The magic lies in Inheriting from the ApplicationContext Class and passing that to Application.Ru…
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…
This is my first video review of Microsoft Bookings, I will be doing a part two with a bit more information, but wanted to get this out to you folks.
In this video, Percona Solution Engineer Rick Golba discuss how (and why) you implement high availability in a database environment. To discuss how Percona Consulting can help with your design and architecture needs for your database and infrastr…

649 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