ShellExecute 不打开默认 Web 浏览器

Posted

技术标签:

【中文标题】ShellExecute 不打开默认 Web 浏览器【英文标题】:ShellExecute Does not open Default Web Browser 【发布时间】:2014-06-27 06:41:25 【问题描述】:

问题是我的 exe 是由服务启动的,在该 exe 中,我调用了 ShellExecute 以打开链接。在这种情况下,ShellExecute 总是在 IE 而不是默认 Web 浏览器中打开链接。

我认为当我通过服务执行 exe 时,它​​不会在用户上下文中运行,因此它不会在默认 Web 浏览器中打开链接。

谁能帮我在这种情况下如何在默认网络浏览器中打开链接。

【问题讨论】:

Is it possible for a Windows service impersonate a user without a password?的可能重复 【参考方案1】:

您需要在服务中模拟用户帐户/上下文。使用this link 了解如何在服务中模拟活动用户上下文。

【讨论】:

只提供链接答案是不好的,因为链接可能无效,因此答案变得无用。请将链接中的要点复制到您的答案中。 确实,我的第一行答案是链接中内容的摘要。我也考虑过 1)链接在 *** 中 2)通过复制而不是出于自己的想法/经验添加更多信息有点接近窃取 3)如果“那个”*** 链接有用,那么该链接应该得到一个赞成票,而不是我的。 @ πάντα ῥεῖ :您错过了该规则的要点。这里的链接不是问题的答案,但它解释了如何实现答案。实际规则涵盖链接指向答案本身的情况。

以上是关于ShellExecute 不打开默认 Web 浏览器的主要内容,如果未能解决你的问题,请参考以下文章

shellexecute() 函数打开链接文件不起作用,不知道,为啥?

比较轻松的打开网页

VC中,ShellExecute函数如何用默认打印机打印?

请问delphi中ShellExecute的功能,和直接用show有啥不同?

用ShellExecute调用外部程序出现的程序无法正常打开的错误!

Posixy方式启动浏览器?