【问题标题】:How to get to documenCompleted event from IWebBrowser2?如何从 IWebBrowser2 获取 documenCompleted 事件?
【发布时间】:2014-09-16 11:13:22
【问题描述】:

我正在努力在 Win32 应用程序中实现 oauth。我可以在我的应用程序中托管 Web 浏览器控件,并且使用 IWebBrowser2 界面,能够导航到指定的 oauth 链接。

登录成功后,服务器将响应作为 json 文档发送,其中包含我需要的授权令牌。

我见过客户端代码在 WebBrower.DocumentCompleted 事件中捕获令牌的 C#/WPF 示例。

我想知道如何在我的 C++ 应用程序中访问文档完成事件。我现在只有 IWebBrowser2 对象。问候。

【问题讨论】:

    标签: winapi activex


    【解决方案1】:

    1) WebBrowser2.QueryInterface(IConnectionPointContainer, ConnectionPointContainer)

    2) ConnectionPointContainer.FindConnectionPoint(DIID_DWebBrowserEvents2, ConnectionPoint)

    3) ConnectionPoint.Advise(Self, ConnectionPointCookie)

    4) Self 必须实现 IDispatch

    5) 在 Self.Invoke 中,您将捕获所有事件,包括 DISPID_DOCUMENTCOMPLETE。

    6) 不要忘记在工作结束时调用 ConnectionPoint.Unadvise。

    【讨论】:

    • 太棒了。非常精确,正是我需要的。问候。
    猜你喜欢
    • 2011-05-06
    • 2013-12-26
    • 2017-03-17
    • 2014-06-16
    • 2012-07-23
    • 1970-01-01
    • 1970-01-01
    • 2018-09-26
    • 2019-09-24
    相关资源
    最近更新 更多