gpt4 book ai didi

mshtml - IWebBrowser2 Quit 方法失败并出现 E_FAIL 结果

转载 作者:行者123 更新时间:2023-12-03 06:11:20 28 4
gpt4 key购买 nike

我在自己的窗口中托管 Web 浏览器控件。以下是相关步骤:

CoGetClassObject(CLSID_WebBrowser, 
CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER,
NULL, IID_IClassFactory, (void **)&pClassFactory);

pClassFactory->CreateInstance(0, IID_IOleObject, (void **)&pObject);

pClassFactory->Release();

pObject->SetClientSite((IOleClientSite *)impl)
OleSetContainedObject((struct IUnknown *)pObject, true)
pObject->DoVerb(OLEIVERB_SHOW, NULL, (IOleClientSite *)impl, 0, hHpsWnd, &rect);

pWB->put_Visible(VARIANT_FALSE);

hr=pWB->Quit();

在上面的最后一条语句中,hr 返回值为 E_FAIL。我的代码中此失败的最终结果是泄漏大量资源。我做错了什么?

最佳答案

阅读文档 here它指出 WebBrowser 对象(即 CLSID_WebBrowser)从 Quit 方法返回错误,因为它在上下文中没有意义。 Quit 方法将退出 IE 的进程外版本,该版本也使用相同的接口(interface)进行通信。

我唯一可以建议的是仔细检查您是否正在释放与浏览器相关的所有 COM 对象。

关于mshtml - IWebBrowser2 Quit 方法失败并出现 E_FAIL 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2001164/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com