Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用.net在Outlook中发送文本消息_.net_Email_Text_Outlook - Fatal编程技术网

使用.net在Outlook中发送文本消息

使用.net在Outlook中发送文本消息,.net,email,text,outlook,.net,Email,Text,Outlook,这是我第一次在这里提出问题,如果有什么不清楚的地方,请道歉 我正在使用.net应用程序阅读和发送Outlook电子邮件。这是使用Outlook对象库完成的,代码如下: Private Sub SendEmail(ByVal Message As String, ByVal EmailAddress As String) Dim objOutlook As Object Dim objOutlookMsg As Object objOutlook = CreateObjec

这是我第一次在这里提出问题,如果有什么不清楚的地方,请道歉

我正在使用.net应用程序阅读和发送Outlook电子邮件。这是使用Outlook对象库完成的,代码如下:

Private Sub SendEmail(ByVal Message As String, ByVal EmailAddress As String)
    Dim objOutlook As Object
    Dim objOutlookMsg As Object
    objOutlook = CreateObject("Outlook.Application")
    objOutlookMsg = objOutlook.CreateItem(0)
        With objOutlookMsg
            .To = EmailAddress
            .Subject = "Subject"
            .Body = Message
            .Send()
        End With
        objOutlookMsg = Nothing
        objOutlook = Nothing
End Sub

Outlook 2010支持发送文本消息。我已经设置好了,可以从Outlook应用程序手动发送文本消息。我的问题是如何修改上面的代码以发送文本消息而不是电子邮件?Createitem数组没有文本消息对象,我在其他地方找不到任何示例。

以下操作应该有效:

With objOulookMsg
    .To = EmailAddress
    .Recipients.ResolveAll()
    .Subject = "Subject"
    ' .BodyFormat = outlook.OlBodyFormat.olFormatPlain 
    ' symbolic constant olFormatPlain not known without Outlook project reference!
    .BodyFormat = 1    
    .Body = Message
End With
查看或以获取更详细的说明,以及如何使用Outlook的VB项目引用

属性BodyFormat定义邮件项目的格式。属性体用于文本格式。但HTML和RichText邮件也在属性体中保留邮件的文本表示

如果通过“项目”菜单添加对Microsoft.Office.Interop.Outlook的引用,请添加引用COM类型库Microsoft Outlook 14.0对象库(假定为Outlook 2010),然后在代码顶部添加以下行

Imports outlook = Microsoft.Office.Interop.Outlook

Visual Basic将了解所有Outlook类、属性、方法和常量,并允许您使用Intellisense访问和使用所有内容。

我仍然面临的问题是程序在发送命令时崩溃。当我键入手机号码而不是电子邮件地址时,它会显示Outlook无法识别一个或多个姓名。我认为错误是因为它无法识别手机号码为有效的收件人。但是,当我在Outlook应用程序中尝试它时,它工作得非常好。有什么想法吗?Outlook通常配置为使用地址列表和联系人文件夹来解析收件人。在解析收件人之前保存邮件项目可能会有所帮助。看这里:不幸的是,这没有什么区别。你认为它可能无法解决,因为它试图从我的电子邮件帐户发送它?我认为短信是在另一个账户上设置的。如果您认为这会有所帮助,您知道如何更改它发送的帐户吗?我会看看我是否能弄明白…是的,Outlook使用您的默认邮件帐户。如果希望它使用其他帐户,则必须执行显式登录: