Как создать сообщение электронной почты в Microsoft Outlook Outbox в VB6? - PullRequest
0 голосов
/ 10 июня 2009

Мне нужно отправлять электронные письма из моей заявки. Но вместо того, чтобы отправлять электронные письма напрямую через SMTP, я бы хотел отправить их через Microsoft Outlook. Итак ...

Как создать сообщение электронной почты в Microsoft Outlook Outbox в VB6?

Ответы [ 3 ]

2 голосов
/ 10 июня 2009

Использование COM автоматизации. Эта статья базы знаний объясняет, как это сделать из VBA, точно так же и в VB6. Команда References находится в меню Project в VB6, а не в меню Tools, я думаю, что это единственное отличие. РЕДАКТИРОВАТЬ: Эта статья базы знаний объясняет, как это сделать в VB6. Слава Шобану за это, upvote его ответ не мой!

Я думаю, что тема MSDN Автоматизация Outlook из приложений Visual Basic также стоит упомянуть только за опечатку Microsoft в заголовке!

2 голосов
/ 10 июня 2009

На этой странице поддержки от Microsft есть примеры.

Send a message to your new contact.
   Dim olMail As Outlook.MailItem
   Set olMail = olApp.CreateItem(olMailItem)
 ' Fill out & send message...
   olMail.To = olItem.Email1Address
   olMail.Subject = "About our meeting..."
   olMail.Body = _
        "Dear " & olItem.FirstName & ", " & 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
0 голосов
/ 10 июня 2009

Добавление ссылки на проект в библиотеку объектов Microsoft Outlook X

Затем в форме, модуле, классе или чем-то еще ... Я выбрал событие button_click.

Private Sub Command1_Click()
  Dim objOutlook As Outlook.Application
  Dim objMail As MailItem

  Dim strToAddress As String
  Dim strSubject As String
  Dim strBody As String

  Set objOutlook = New Outlook.Application
  Set objMail = Outlook.CreateItem(olMailItem)

  strToAddress = "me@mydomain.com"
  strSubject = "VB6 test email"
  strBody = "This is a test email sent from VB6"

  With objMail
    .To = strToAddress
    .Subject = strSubject
    .BodyFormat = olFormatPlain
    .Body = strBody
  End With

  MsgBox "outlook security will now complain as I try to resolve your email addresses against your address book"
  objMail.Recipients.ResolveAll

  objMail.Save
  Set objMail = Nothing
  Set objOutlook = Nothing

  MsgBox "look in your drafts folder for the new email"

  'Thank you, I'm here all week, try the Veal. Good night.
End Sub
...