none
如何向程序内嵌的IE浏览器的userAgent尾部写入标识信息 RRS feed

  • 问题

  • 如何向程序内嵌的IE浏览器的userAgent尾部写入标识信息

    网上有很多方法,但是都没办法做到IE678内核通用,现在看来遨游最新版已经实现了,所以来问问,看看各位有没有办法实现。

    希望有高手能研究下。

    2011年1月13日 7:40

答案

  • IOleControl::OnAmbientPropertyChange调用过了?

    如果UrlMkSetSessionOption URLMON_OPTION_USERAGENT不起作用,那么把注册表里面的代理改掉,调用完UrlMkSetSessionOption URLMON_OPTION_USERAGENTREFRESH再改回去。



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    2011年1月14日 17:22
    版主

全部回复

  • DISPID_AMBIENT_USERAGENT

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    2011年1月13日 22:47
    版主
  • 这个试过了,本地navigator.userAgent 得到的字符串没有变化

    可否告知更详细的细节,或有别的实现方式?最新版本的Maxthon是实现这个了,应该是有办法的。

    2011年1月14日 2:46
  • UrlMkSetSessionOption URLMON_OPTION_USERAGENT& URLMON_OPTION_USERAGENTREFRESH

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    2011年1月14日 3:09
    版主
  • 这个API也试过了。只在IE8下有效,更低版本调了没有效果

    请问还有别的什么实现方法么,非常的感谢?

    2011年1月14日 5:44
  • 还有就是Hook WinInet的API自己实现了,提供沙盒功能的浏览器都这么干

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    2011年1月14日 5:57
    版主
  • 非常感谢你,最后一个我应该是也试过了

    这个方式发送到服务器的User-Agent是改过的,但navigator.userAgent 读取的还是默认的

    我主要想实现的就是在IE6,7,8内核下通过页面JS的navigator.userAgent来判断用户是否用客户端打开的网页,不是的话好做跳转。

    我昨天其实已经找人问过maxthon的技术,但对方不肯说(说不方便),也许有什么高深的技术吧,因为他们自己的标识也是最近才做到IE6,7,8都能打上这个地步的(以前只有IE8才有标识)。

    可能的话,多谢高手研究下这个就好了,现在很困扰啊。

    2011年1月14日 6:13
  • IOleControl::OnAmbientPropertyChange调用过了?

    如果UrlMkSetSessionOption URLMON_OPTION_USERAGENT不起作用,那么把注册表里面的代理改掉,调用完UrlMkSetSessionOption URLMON_OPTION_USERAGENTREFRESH再改回去。



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    2011年1月14日 17:22
    版主
  • 这个也试过了。IE8这样改可以,但IE6,7下没有效果。

    其实现在看,问题就是如何搞定IE6,7,搞定IE6,7后问题就算解决的呢。

    MVP兄,还有什么别的办法么,劳驾您再指导下,谢谢。

    市面上的外壳浏览器“世界之窗”和最新版的“遨游”都已实现该功能了,当然我并不是做外壳浏览器的。

    http://img.doyo.cn/img/doyo_soft/12/AddUserAgent.rar

    上面这个链接是我这边写的示例源码,麻烦您看看,再次感谢

    2011年1月20日 2:30