CComQIPtr<IHTMLDocument2,&IID_IHTMLDocument2> d=ie.GetDocument(); CComPtr<IHTMLElementCollection> c; d->get_all(&c); d->get long len; c->get_length(&len); for(int i=0;i<len;i++){ IDispatch *p; c->item(CComVariant(i),CComVariant(i),&p); CComQIPtr<IHTMLElement,&IID_IHTMLElement> e=p; CComBSTR id; e->get_id(&id); if(id==L"kw"){ CComQIPtr<IHTMLInputTextElement,&IID_IHTMLInputTextElement> kw=e; kw->put_value(CComBSTR("asdsa")); } }