这篇教程C++ IHTMLDOMNode_Release函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中IHTMLDOMNode_Release函数的典型用法代码示例。如果您正苦于以下问题:C++ IHTMLDOMNode_Release函数的具体用法?C++ IHTMLDOMNode_Release怎么用?C++ IHTMLDOMNode_Release使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了IHTMLDOMNode_Release函数的24个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: HTMLSelectElement_addstatic HRESULT WINAPI HTMLSelectElement_add(IHTMLSelectElement *iface, IHTMLElement *element, VARIANT before){ HTMLSelectElement *This = impl_from_IHTMLSelectElement(iface); IHTMLDOMNode *node, *tmp; HRESULT hres; FIXME("(%p)->(%p %s): semi-stub/n", This, element, debugstr_variant(&before)); if(V_VT(&before) != VT_EMPTY) { FIXME("unhandled before %s/n", debugstr_variant(&before)); return E_NOTIMPL; } hres = IHTMLElement_QueryInterface(element, &IID_IHTMLDOMNode, (void**)&node); if(FAILED(hres)) return hres; hres = IHTMLDOMNode_appendChild(&This->element.node.IHTMLDOMNode_iface, node, &tmp); IHTMLDOMNode_Release(node); if(SUCCEEDED(hres) && tmp) IHTMLDOMNode_Release(tmp); return hres;}
开发者ID:MichaelMcDonnell,项目名称:wine,代码行数:25,
示例2: HTMLTextAreaElement_get_formstatic HRESULT WINAPI HTMLTextAreaElement_get_form(IHTMLTextAreaElement *iface, IHTMLFormElement **p){ HTMLTextAreaElement *This = impl_from_IHTMLTextAreaElement(iface); nsIDOMHTMLFormElement *nsform; nsIDOMNode *nsnode; HTMLDOMNode *node; nsresult nsres; HRESULT hres; TRACE("(%p)->(%p)/n", This, p); nsres = nsIDOMHTMLTextAreaElement_GetForm(This->nstextarea, &nsform); assert(nsres == NS_OK); if(!nsform) { *p = NULL; return S_OK; } nsres = nsIDOMHTMLFormElement_QueryInterface(nsform, &IID_nsIDOMNode, (void**)&nsnode); nsIDOMHTMLFormElement_Release(nsform); assert(nsres == NS_OK); hres = get_node(This->element.node.doc, nsnode, TRUE, &node); nsIDOMNode_Release(nsnode); if(FAILED(hres)) return hres; hres = IHTMLDOMNode_QueryInterface(&node->IHTMLDOMNode_iface, &IID_IHTMLFormElement, (void**)p); IHTMLDOMNode_Release(&node->IHTMLDOMNode_iface); return hres;}
开发者ID:GYGit,项目名称:reactos,代码行数:32,
示例3: release_nodesvoid release_nodes(HTMLDocumentNode *This){ HTMLDOMNode *iter, *next; if(!This->nodes) return; for(iter = This->nodes; iter; iter = next) { next = iter->next; iter->doc = NULL; if(&This->node != iter) IHTMLDOMNode_Release(&iter->IHTMLDOMNode_iface); }}
开发者ID:mgriepentrog,项目名称:wine,代码行数:14,
示例4: IUnknown_QueryInterface/* * FIXME * We should use better way for getting node object (like private interface) * or avoid it at all. */static HTMLDOMNode *get_node_obj(HTMLDocumentNode *This, IUnknown *iface){ HTMLDOMNode *iter = This->nodes; IHTMLDOMNode *node; IUnknown_QueryInterface(iface, &IID_IHTMLDOMNode, (void**)&node); IHTMLDOMNode_Release(node); while(iter) { if(&iter->IHTMLDOMNode_iface == node) return iter; iter = iter->next; } FIXME("Not found %p/n", iface); return NULL;}
开发者ID:mgriepentrog,项目名称:wine,代码行数:22,
示例5: HTMLEventObj_Releasestatic ULONG WINAPI HTMLEventObj_Release(IHTMLEventObj *iface){ HTMLEventObj *This = impl_from_IHTMLEventObj(iface); LONG ref = InterlockedDecrement(&This->ref); TRACE("(%p) ref=%d/n", This, ref); if(!ref) { if(This->target) IHTMLDOMNode_Release(&This->target->IHTMLDOMNode_iface); if(This->nsevent) nsIDOMEvent_Release(This->nsevent); release_dispex(&This->dispex); heap_free(This); } return ref;}
开发者ID:PigFlyGames,项目名称:wine,代码行数:18,
示例6: HTMLElement2_insertAdjacentElementstatic HRESULT WINAPI HTMLElement2_insertAdjacentElement(IHTMLElement2 *iface, BSTR where, IHTMLElement *insertedElement, IHTMLElement **inserted){ HTMLElement *This = impl_from_IHTMLElement2(iface); HTMLDOMNode *ret_node; HTMLElement *elem; HRESULT hres; TRACE("(%p)->(%s %p %p)/n", This, debugstr_w(where), insertedElement, inserted); elem = unsafe_impl_from_IHTMLElement(insertedElement); if(!elem) return E_INVALIDARG; hres = insert_adjacent_node(This, where, elem->node.nsnode, &ret_node); if(FAILED(hres)) return hres; hres = IHTMLDOMNode_QueryInterface(&ret_node->IHTMLDOMNode_iface, &IID_IHTMLElement, (void**)inserted); IHTMLDOMNode_Release(&ret_node->IHTMLDOMNode_iface); return hres;}
开发者ID:RareHare,项目名称:reactos,代码行数:22,
示例7: HTMLDOMNode2_Releasestatic ULONG WINAPI HTMLDOMNode2_Release(IHTMLDOMNode2 *iface){ HTMLDOMNode *This = impl_from_IHTMLDOMNode2(iface); return IHTMLDOMNode_Release(&This->IHTMLDOMNode_iface);}
开发者ID:mgriepentrog,项目名称:wine,代码行数:6,
示例8: HTMLTableRow_Releasestatic ULONG WINAPI HTMLTableRow_Release(IHTMLTableRow *iface){ HTMLTableRow *This = HTMLTABLEROW_THIS(iface); return IHTMLDOMNode_Release(HTMLDOMNODE(&This->element.node));}
开发者ID:bilboed,项目名称:wine,代码行数:6,
示例9: HTMLBodyElement_Releasestatic ULONG WINAPI HTMLBodyElement_Release(IHTMLBodyElement *iface){ HTMLBodyElement *This = impl_from_IHTMLBodyElement(iface); return IHTMLDOMNode_Release(&This->textcont.element.node.IHTMLDOMNode_iface);}
开发者ID:mgriepentrog,项目名称:wine,代码行数:6,
示例10: HTMLObjectElement_Releasestatic ULONG WINAPI HTMLObjectElement_Release(IHTMLObjectElement *iface){ HTMLObjectElement *This = HTMLOBJECT_THIS(iface); return IHTMLDOMNode_Release(HTMLDOMNODE(&This->element.node));}
开发者ID:r6144,项目名称:wine,代码行数:6,
示例11: HTMLFrameBase_Releasestatic ULONG WINAPI HTMLFrameBase_Release(IHTMLFrameBase *iface){ HTMLFrameBase *This = impl_from_IHTMLFrameBase(iface); return IHTMLDOMNode_Release(&This->element.node.IHTMLDOMNode_iface);}
开发者ID:RareHare,项目名称:reactos,代码行数:6,
示例12: HTMLTableRow_Releasestatic ULONG WINAPI HTMLTableRow_Release(IHTMLTableRow *iface){ HTMLTableRow *This = impl_from_IHTMLTableRow(iface); return IHTMLDOMNode_Release(&This->element.node.IHTMLDOMNode_iface);}
开发者ID:JamieYan,项目名称:wine,代码行数:6,
示例13: HTMLFormElement_Releasestatic ULONG WINAPI HTMLFormElement_Release(IHTMLFormElement *iface){ HTMLFormElement *This = HTMLFORM_THIS(iface); return IHTMLDOMNode_Release(HTMLDOMNODE(&This->element.node));}
开发者ID:bilboed,项目名称:wine,代码行数:6,
示例14: InternetHostSecurityManager_Releasestatic ULONG WINAPI InternetHostSecurityManager_Release(IInternetHostSecurityManager *iface){ HTMLDocumentNode *This = impl_from_IInternetHostSecurityManager(iface); return IHTMLDOMNode_Release(&This->node.IHTMLDOMNode_iface);}
开发者ID:MichaelMcDonnell,项目名称:wine,代码行数:5,
示例15: HTMLIFrameElement_Releasestatic ULONG WINAPI HTMLIFrameElement_Release(IHTMLIFrameElement *iface){ HTMLIFrame *This = impl_from_IHTMLIFrameElement(iface); return IHTMLDOMNode_Release(&This->framebase.element.node.IHTMLDOMNode_iface);}
开发者ID:AmesianX,项目名称:RosWine,代码行数:6,
示例16: HTMLCommentElement_Releasestatic ULONG WINAPI HTMLCommentElement_Release(IHTMLCommentElement *iface){ HTMLCommentElement *This = HTMLCOMMENT_THIS(iface); return IHTMLDOMNode_Release(HTMLDOMNODE(&This->element.node));}
开发者ID:NVIDIA,项目名称:winex_lgpl,代码行数:6,
示例17: HTMLScriptElement_Releasestatic ULONG WINAPI HTMLScriptElement_Release(IHTMLScriptElement *iface){ HTMLScriptElement *This = HTMLSCRIPT_THIS(iface); return IHTMLDOMNode_Release(HTMLDOMNODE(&This->element.node));}
开发者ID:bilboed,项目名称:wine,代码行数:6,
示例18: HTMLObjectElement_Releasestatic ULONG WINAPI HTMLObjectElement_Release(IHTMLObjectElement *iface){ HTMLObjectElement *This = impl_from_IHTMLObjectElement(iface); return IHTMLDOMNode_Release(&This->plugin_container.element.node.IHTMLDOMNode_iface);}
开发者ID:GranPC,项目名称:wine,代码行数:6,
示例19: HTMLDOMTextNode_Releasestatic ULONG WINAPI HTMLDOMTextNode_Release(IHTMLDOMTextNode *iface){ HTMLDOMTextNode *This = HTMLTEXT_THIS(iface); return IHTMLDOMNode_Release(HTMLDOMNODE(&This->node));}
开发者ID:WASSUM,项目名称:longene_travel,代码行数:6,
示例20: HTMLOptionElement_Releasestatic ULONG WINAPI HTMLOptionElement_Release(IHTMLOptionElement *iface){ HTMLOptionElement *This = impl_from_IHTMLOptionElement(iface); return IHTMLDOMNode_Release(&This->element.node.IHTMLDOMNode_iface);}
开发者ID:RareHare,项目名称:reactos,代码行数:6,
示例21: get_elem_source_indexHRESULT get_elem_source_index(HTMLElement *elem, LONG *ret){ elem_vector_t buf = {NULL, 0, 8}; nsIDOMNode *parent_node, *iter; UINT16 parent_type; HTMLDOMNode *node; int i; nsresult nsres; HRESULT hres; iter = elem->node.nsnode; nsIDOMNode_AddRef(iter); /* Find document or document fragment parent. */ while(1) { nsres = nsIDOMNode_GetParentNode(iter, &parent_node); nsIDOMNode_Release(iter); assert(nsres == NS_OK); if(!parent_node) break; nsres = nsIDOMNode_GetNodeType(parent_node, &parent_type); assert(nsres == NS_OK); if(parent_type != ELEMENT_NODE) { if(parent_type != DOCUMENT_NODE && parent_type != DOCUMENT_FRAGMENT_NODE) FIXME("Unexpected parent_type %d/n", parent_type); break; } iter = parent_node; } if(!parent_node) { *ret = -1; return S_OK; } hres = get_node(elem->node.doc, parent_node, TRUE, &node); nsIDOMNode_Release(parent_node); if(FAILED(hres)) return hres; /* Create all children collection and find the element in it. * This could be optimized if we ever find the reason. */ buf.buf = heap_alloc(buf.size*sizeof(*buf.buf)); if(!buf.buf) { IHTMLDOMNode_Release(&node->IHTMLDOMNode_iface); return E_OUTOFMEMORY; } create_all_list(elem->node.doc, node, &buf); for(i=0; i < buf.len; i++) { if(buf.buf[i] == elem) break; } IHTMLDOMNode_Release(&node->IHTMLDOMNode_iface); heap_free(buf.buf); if(i == buf.len) { FIXME("The element is not in parent's child list?/n"); return E_UNEXPECTED; } *ret = i; return S_OK;}
开发者ID:AlexSteel,项目名称:wine,代码行数:68,
示例22: HTMLDOMTextNode_Releasestatic ULONG WINAPI HTMLDOMTextNode_Release(IHTMLDOMTextNode *iface){ HTMLDOMTextNode *This = impl_from_IHTMLDOMTextNode(iface); return IHTMLDOMNode_Release(&This->node.IHTMLDOMNode_iface);}
开发者ID:Barrell,项目名称:wine,代码行数:6,
示例23: SVGTextContentElement_Releasestatic ULONG WINAPI SVGTextContentElement_Release(ISVGTextContentElement *iface){ SVGTextContentElement *This = impl_from_ISVGTextContentElement(iface); return IHTMLDOMNode_Release(&This->svg_element->element.node.IHTMLDOMNode_iface);}
开发者ID:wine-mirror,项目名称:wine,代码行数:6,
示例24: HTMLDOMNode_insertBeforestatic HRESULT WINAPI HTMLDOMNode_insertBefore(IHTMLDOMNode *iface, IHTMLDOMNode *newChild, VARIANT refChild, IHTMLDOMNode **node){ HTMLDOMNode *This = impl_from_IHTMLDOMNode(iface); HTMLDOMNode *new_child, *node_obj, *ref_node = NULL; nsIDOMNode *nsnode; nsresult nsres; HRESULT hres = S_OK; TRACE("(%p)->(%p %s %p)/n", This, newChild, debugstr_variant(&refChild), node); new_child = get_node_obj(newChild); if(!new_child) { ERR("invalid newChild/n"); return E_INVALIDARG; } switch(V_VT(&refChild)) { case VT_NULL: break; case VT_DISPATCH: { IHTMLDOMNode *ref_iface; if(!V_DISPATCH(&refChild)) break; hres = IDispatch_QueryInterface(V_DISPATCH(&refChild), &IID_IHTMLDOMNode, (void**)&ref_iface); if(FAILED(hres)) break; ref_node = get_node_obj(ref_iface); IHTMLDOMNode_Release(ref_iface); if(!ref_node) { ERR("unvalid node/n"); hres = E_FAIL; break; } break; } default: FIXME("unimplemented refChild %s/n", debugstr_variant(&refChild)); hres = E_NOTIMPL; } if(SUCCEEDED(hres)) { nsres = nsIDOMNode_InsertBefore(This->nsnode, new_child->nsnode, ref_node ? ref_node->nsnode : NULL, &nsnode); if(NS_FAILED(nsres)) { ERR("InsertBefore failed: %08x/n", nsres); hres = E_FAIL; } } node_release(new_child); if(ref_node) node_release(ref_node); if(FAILED(hres)) return hres; hres = get_node(This->doc, nsnode, TRUE, &node_obj); nsIDOMNode_Release(nsnode); if(FAILED(hres)) return hres; *node = &node_obj->IHTMLDOMNode_iface; return S_OK;}
开发者ID:GYGit,项目名称:reactos,代码行数:65,
注:本文中的IHTMLDOMNode_Release函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ II函数代码示例 C++ IHTMLDOMNode_QueryInterface函数代码示例 |