【问题标题】:CDOSYS error using HTMLBody (all right with TextBody) in Classic ASP在经典 ASP 中使用 HTMLBody(可以使用 TextBody)的 CDOSYS 错误
【发布时间】:2011-12-08 22:23:24
【问题描述】:

我在 IIS 7.5 上使用 HTMLBody 的 CDOSYS 存在问题
简单地说,这是行不通的:

Set Mail = CreateObject("CDO.Message")
With Mail
    .Subject = "My mail test"
    .From = "me@localhost"
    .To = "myrealmail@mydomain.com"
    .HTMLBody = "My body message"
    .Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    .Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "localhost"
    .Configuration.Fields.Update
    .Send
End With
Set Mail = Nothing

并在行

抛出一个神秘的“CDO.Message.1 error '80040605' Unknown Error”
.HTMLBody = "My body message"

如果我改变它没有问题

.TextBody = "My body message"

请问您有解决办法吗?
提前致谢

【问题讨论】:

  • 看看,可能会有帮助:forums.asp.net/post/1348573.aspx
  • 谢谢,我尝试按照该帖子中的建议取消注册/重新注册 cdosys.dll,但没有成功。无论如何,我刚刚发现这是一个与 my-pc 相关的问题:另一台机器上的相同代码(IIS 7.5 也是)完美运行......好吧,我尝试在我的开发电脑上解决这个问题......
  • 我没有 iis7.5 来检查这个,但请以这种形式尝试一次。HTMLBody = "我的正文消息"
  • 我刚刚遇到了这种完全相同的行为。如果我找到解决方案,我会发布它。只是让你知道你不会发疯。 :)

标签: asp-classic cdo.message


【解决方案1】:

找到了某种解决方案,但并不理想。 CDO 应该能够自动生成 HTMLBody 的纯文本版本,但也许最近的 MS 更新破坏了它。

看来,以前我可以省略 TextBody 属性,只指定 HTMLBody,现在我必须做这两件事之一:

a) 指定 TextBody。 TextBody = "" 不行,必须是 > ""

b) 指定 AutoGenerateTextBody = False

做这些事情中的任何一个都可以绕过错误,但会导致没有纯文本版本,或者必须自己制作,这很糟糕。不知道这个问题是什么时候开始的,但是 afaik 曾经能够单独指定 HTMLBody,没有问题。当当。

【讨论】:

    猜你喜欢
    • 2017-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多