Process.Start()
(.Net Framework)在IE中会有奇怪的行为。
要重现此问题,请按照以下步骤操作:
必需条件:
- C# IDE+编译器
- Outlook(我使用的是Outlook 2010 - 其他版本应该也有相同的问题,但未经测试)
- IE9(IE8或10也可以“成功”)
- IE必须是默认浏览器(您稍后可以切换回来;-))
- Outlook必须关联mailto链接
步骤(成功):
- 关闭所有IE和Outlook实例
- 打开IE(32位)
- 打开URL:mailto:foo@example.com
结果: Outlook启动
步骤(失败)
- 关闭所有IE和Outlook实例
- 编译此代码片段:System.Diagnostics.Process.Start("http://www.example.org");
- 执行代码(IE应该开始显示示例页面)
- 现在在URL栏中键入或复制mailto:foo@example.com
结果:无法启动Microsoft Outlook(或类似的东西)- WTF?
我已经检查过的内容:
IE以相同的方式启动
- 参数
- 工作目录
- 用户
- 架构(32位)
我错了哪里?
如果还有更多的想法,我会很高兴进行检查、测试和查找。
System.Diagnostics.Process.Start("iexplore", "http://www.example.org");
行为是否相同? - SliverNinja - MSFT