Internet Explorer - 通过 C# 打开 IE -> mailto 失败

本文关键字:mailto IE 失败 Explorer 通过 Internet 打开 | 更新日期: 2023-09-27 17:56:45

我在Process.Start()(.Net Framework)启动的IE中发现了一些奇怪的行为要重现这一点,只需按照以下步骤操作。

必填:

  • C# IDE+编译器
  • 展望(在我的情况下:Outlook 2010 - 其他版本应该是相同的问题,但未测试)
  • IE9(IE8或10也应该是"好的")
  • 即必须是默认浏览器(您可以稍后切换回来;-)
  • Outlook 必须与 mailto: 链接相关

步骤(成功):

  • 关闭所有 IE 和 Outlook 实例
  • 打开 IE(32 位)
  • 打开网址:mailto:foo@example.com

结果: 展望开始

步骤(失败)

  • 关闭所有 IE 和 Outlook 实例
  • 编译此代码片段 System.Diagnostics.Process.Start("http://www.example.org");
  • 执行代码(IE 应该开始显示示例页面)
  • 现在键入或复制mailto:foo@example.com到您的网址栏

结果: 无法启动Microsoft Outlook(或类似的东西) - WTF?

我已经检查过的内容:

IE以相同的开头

  • 参数
  • 工作目录
  • 用户
  • 体系结构(32 位)

我做错了什么?如果有更多我可以检查、测试、寻找的想法,那就太好了。

Internet Explorer - 通过 C# 打开 IE -> mailto 失败

我可以重现这种行为。就我而言,我有一个导致问题的 Outlook 插件。

---------------------------
MS Outlook Extension
---------------------------
The <Outlook Addin Name> MS Outlook Extension can't be loaded because Outlook is currently in use by another application. Please try again later.
---------------------------
OK   
---------------------------

一旦我删除了这个插件,它现在可以工作了。

可能有帮助的事情是:http://www.codeproject.com/Articles/4051/Windows-Impersonation-using-C

如果您的问题不是像我这样的插件,则冒充其他用户可能会有所帮助。