【问题标题】:Read Email in VB.NET / ASP.NET在 VB.NET / ASP.NET 中阅读电子邮件
【发布时间】:2019-03-27 10:57:22
【问题描述】:

更新

现在,在尝试使用 EWS 作为替代方案后,我收到了一条我似乎无法修复的新错误消息:

此 XML 文档中禁止使用 DTD。

是的,我已经尝试过这些代码:

  1. Dim 设置 As XmlReaderSettings = New XmlReaderSettings()
  2. settings.XmlResolver = 无
  3. settings.DtdProcessing = DtdProcessing.Parse
  4. settings.ValidationType = ValidationType.DTD
  5. 暗淡阅读器 As XmlReader = XmlReader.Create(".xml", settings)

但这并没有什么不同。请帮忙!!

供您参考:我正在尝试使其在基于网络的版本中运行


我的代码在执行期间可以完美地使用 VB.NET 阅读电子邮件。

不幸的是,这发生了:

“由于以下错误,检索具有 CLSID {0006F03A-0000-0000-C000-000000000046} 的组件的 COM 类工厂失败:80070005 访问被拒绝。(来自 HRESULT 的异常:0x80070005 (E_ACCESSDENIED))”

附加信息:

  1. 我是公司员工 = 我要检索的电子邮件正在使用公司 域(例如:...@company.com)

  2. Windows 10

  3. Microsoft Outlook 2016

  4. Visual Studio 2012

  5. .NET 框架 4.5.1 & 4.5.2

  6. 我使用 Microsoft.Office.Interop 对其进行编码

我已经在谷歌上搜索了有关如何处理问题的解决方案,但到目前为止没有运气。

  1. 我试过修改 DCOM
  2. 我想从 support.microsoft 下载新的安全更新,但由于公司的 Internet 限制而没有运气

请帮忙。我在这个问题上卡了将近一个月

【问题讨论】:

  • 您可能正在尝试通过网络进行互操作。不支持。
  • 改用 EWS
  • @sasfrog 这个 EWS 是否使用第三方应用程序?如果是这样,那么我认为我的手被束缚了,特别是如果我必须为此付出代价,因为我是一名公司员工
  • @Jimi 但有趣的是,我尝试了相同的代码,但将其转换为 C# 并且它可以工作
  • EWS 是 Exchange 的接口:docs.microsoft.com/en-us/exchange/client-developer/… 客户端库/SDK 免费提供。虽然如果您使用的是 Office 365,我建议您首先查看 Microsoft Graph API,看看它是否适合您的目的

标签: asp.net vb.net email outlook


【解决方案1】:

如果 Outlook 和您的应用在不同的安全上下文中运行(例如,一个应用以管理员身份运行),很可能会发生这种情况。尝试在启动您的应用之前关闭 Outlook - 如果可行,则说明您的安全上下文不匹配。

另外请记住,Office 应用(包括 Outlook)不能在服务(例如 IIS)中运行。

【讨论】:

  • 经过大量挖掘后,我发现我无法通过 Outlook 应用程序阅读基于 Web 的内容。所以这个答案实际上是有效的。仅供参考,我通过使用 EWS 阅读电子邮件服务器解决了这个问题。感谢您的回答。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-12
  • 1970-01-01
  • 2017-09-05
  • 1970-01-01
  • 2018-06-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多