【问题标题】:How does UPS WorldShip know if Internet Explorer launched?UPS WorldShip 如何知道 Internet Explorer 是否启动?
【发布时间】:2013-03-14 19:55:00
【问题描述】:

我们使用 Aurora 作为浏览器,但 UPS WorldShip 固执地使用 Internet Explorer。所以我创建了一个名为iexplore.exe 的可执行文件,并用我的“假”替换了真正的iexplore.exe。我的“假”iexplore.exe 刚刚启动了 Aurora。所以我启动 WorldShip,然后单击UPS Home Page(或类似的东西),它就会启动 Aurora。但随后 WorldShip 挂起,并说 Connecting... Please Wait 好像没有启动一样。

我的问题是:IE 如何与 WorldShip 通信以让它知道 IE 已启动? 我怎样才能在我自己的程序中实现它(最好用 C 语言)?

编辑
IE 以-Embedding 选项启动。有人知道这是做什么的吗?

【问题讨论】:

  • 您可以尝试通过欺骗 User-Agent 来欺骗 Web 服务器。试试User Agent Switcher 插件。然而,就像@rekire 所说的那样,如果网站正在做的事情是真正的 IE,它仍然不适合你。

标签: c internet-explorer communication


【解决方案1】:

HTTP 标头中的User-Agent 检测到Internet Explorer(如RFC2616 中所定义)。因此,如果您的浏览器没有在 User-Agent 中的某处发送“MSIE”,UPS 就不会认为您使用的是 Internet Explorer。

根据 UPS 使用的 API,您可能确实需要使用 IE,尤其是在使用 ActiveX 的情况下。任何其他浏览器都不支持此功能。

【讨论】:

  • 我说的是 UPS WorldShip 计划。有一个打开浏览器的菜单项,我试图让 UPS WS 打开 Firefox 而不是 IE。该网站确实可与 Firefox 一起使用。我说清楚了吗?
  • ie 的午餐方式有多种选择。您是否尝试将 InternetExplorer.exe 放在与该 ups 工具相同的目录中?哪个打印出来仅用于调试命令行?请注意,您的测试程序不能自行退出,等待按键左右。如果您的 exe 被执行,请将命令行添加到您的问题中。 (但你应该审查关键数据。)
  • UPS WS 在Program Files (x86)\Internet Explorer 中查找iexplore.exe。但我从没想过试图找到命令行。我会尝试一下,然后发布结果。
  • -embedding 命令行选项意味着通过MSDN 的OLE 嵌入(例如WebBrowser 控件)启动Windows Internet Explorer
猜你喜欢
  • 1970-01-01
  • 2011-09-21
  • 2012-06-03
  • 2010-09-16
  • 1970-01-01
  • 1970-01-01
  • 2015-03-31
  • 2020-01-08
  • 2023-03-04
相关资源
最近更新 更多