Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.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
Email 在MS Access/Outlook中兑换(尝试在电子邮件中包含单独的邮件文件)_Email_Ms Access_Vba_Outlook Redemption - Fatal编程技术网

Email 在MS Access/Outlook中兑换(尝试在电子邮件中包含单独的邮件文件)

Email 在MS Access/Outlook中兑换(尝试在电子邮件中包含单独的邮件文件),email,ms-access,vba,outlook-redemption,Email,Ms Access,Vba,Outlook Redemption,此代码位于MS Access(2010)VBA中,使用Microsoft Outlook 2010的赎回库 我以前有过这个过程,但最近我们进行了Citrix升级,我想我的Outlook中重置了一些东西,现在这个过程不再工作了 我有一个文件夹的.msg文件基本上是预先制作的电子邮件模板与所有正确的格式,图像,文本等 这就是我以前所做的: Dim outlookApp As Object, namespace As Object Dim oItem, MyItem Set outlookApp =

此代码位于MS Access(2010)VBA中,使用Microsoft Outlook 2010的赎回库

我以前有过这个过程,但最近我们进行了Citrix升级,我想我的Outlook中重置了一些东西,现在这个过程不再工作了

我有一个文件夹的.msg文件基本上是预先制作的电子邮件模板与所有正确的格式,图像,文本等

这就是我以前所做的:

Dim outlookApp As Object, namespace As Object
Dim oItem, MyItem

Set outlookApp = CreateObject("Outlook.Application")
Set namespace = outlookApp.GetNamespace("MAPI")
namespace.Logon

Set MyItem = outlookApp.CreateItemFromTemplate(path_to_dot_msg_file)

'And then there are many calls like this:
MyItem.HTMLBody = Replace(MyItem.HTMLBody, "Dear Person,", "Dear  " & name)
'...

Set safeItem = CreateObject("Redemption.SafeMailItem")
Set oItem = MyItem
safeItem.Item = oItem


'this next line displays the email, and as of this line, it looks correct
'safeItem.Display  

'but as of this line, the issue occurs
safeItem.HTMLBody = "<p>This is an extra message that shows up before the .msg file</p>" & safeItem.HTMLBody


safeItem.Recipients.ResolveAll
safeItem.Send
Dim outlookApp作为对象,命名空间作为对象
Dim oItem,MyItem
设置outlookApp=CreateObject(“Outlook.Application”)
设置namespace=outlookApp.GetNamespace(“MAPI”)
namespace.Logon
设置MyItem=outlookApp.CreateItemFromTemplate(路径\到\点\消息\文件)
“还有很多这样的电话:
MyItem.HTMLBody=Replace(MyItem.HTMLBody,“亲爱的人”,“亲爱的”&姓名)
'...
设置safeItem=CreateObject(“Redemption.SafeMailItem”)
设置oItem=MyItem
safeItem.Item=oItem
'下一行显示电子邮件,从这一行开始,它看起来是正确的
'safeItem.Display
但从这一行开始,问题就出现了
safeItem.HTMLBody=“这是一条额外的消息,显示在.msg文件

”&safeItem.HTMLBody之前 safeItem.Recipients.ResolveAll 安全物品,发送
现在,当发送电子邮件时,.msg内容根本不存在——唯一显示的是我预先添加到HTMLBody的“额外消息”

我需要更改或更新什么?这是我需要在代码或Outlook设置中更改的内容吗

额外:正文插入:

Function insertStringBodyTag(htmlBody As String, stringToInsert As String)
    Dim s As String
    Dim i As Integer
    s = htmlBody
    i = InStr(1, s, "<body")
    i = InStr(i, s, ">")
    s = Left(s, i) & stringToInsert & Right(s, Len(s) - i)
    insertStringBodyTag = s
End Function

'Called with safeItem.htmlBody = insertStringBodyTag(safeItem.htmlBody, prefix_string)
函数insertStringBodyTag(htmlBody作为字符串,stringToInsert作为字符串)
像线一样变暗
作为整数的Dim i
s=htmlBody
i=仪表(1,s,“”)
s=左(s,i)和弦插入和右(s,Len(s)-i)
insertStringBodyTag=s
端函数
'使用safeItem.htmlBody=insertStringBodyTag调用(safeItem.htmlBody,前缀\u字符串)

您不能连接两个HTML字符串,而希望返回一个有效的HTML字符串-这两个字符串必须合并-找到
的位置。“
(这样您就可以处理带有属性的body元素),然后在“>之后插入HTML字符串.

您不能连接两个HTML字符串,而希望返回一个有效的HTML字符串-这两个字符串必须合并-找到
”的位置(这样您就可以处理带有属性的body元素),然后在“>”之后插入HTML字符串。

我试过了,但不起作用(htmlbody似乎变为空白?)。我在帖子中添加了我的代码来说明我的意思。insertStringBodyTag返回时的值是多少?输入时看起来是空白的。此外,当我将safeItem设置为myItem时,它没有携带属性/HTMLbody。我只是手动设置了HTMLbody,它似乎解决了这个问题。您可能想先保存MailItem对象(MailItem.save),以确保MAPI(和Redemption)可以看到最新的更改。我尝试了,但它不起作用(HTMLbody似乎变成空白?). 我在帖子中添加了我的代码来说明我的意思。insertStringBodyTag返回时的值是多少?输入时看起来是空白的。此外,当我将safeItem设置为myItem时,它没有携带属性/HTMLbody。我只是手动设置HTMLbody,它似乎解决了这个问题。您可能需要先保存MailItem对象(MailItem.save),以确保MAPI(和Redemption)可以看到最新的更改。