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

时间:2013-01-30 15:17:59

标签: c# internet-explorer outlook mailto process.start

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

必需:

  • C#IDE +编译器
  • outlook(在我的情况下:outlook 2010 - 其他版本应该是同样的问题但未经过测试)
  • ie9(ie8或10也应该是“好”)
  • 即必须是默认浏览器(你可以稍后再切换;-))
  • outlook必须与mailto:links
  • 相关

步骤(成功):

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

结果: Outlook启动

步骤(失败)

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

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

我已经检查了什么:

IE以相同的

开头
  • 参数
  • 工作目录
  • 用户
  • architecture(32bit)
我在做错了什么? 如果有更多的想法可以检查,测试,寻找,那就太好了。

1 个答案:

答案 0 :(得分:0)

我可以重现这种行为。在我的情况下,我有一个Outlook Addin导致问题。

---------------------------
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   
---------------------------

一旦我删除了此Addin,它现在可以正常工作。

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

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