2 * Defines the COM interfaces and APIs related to the IE Web browser
4 * Copyright (C) 2001 John R. Sheets (for CodeWeavers)
5 * Copyright (C) 2003 Alexandre Julliard
6 * Copyright (C) 2004 Jacek Caban
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either
11 * version 2.1 of the License, or (at your option) any later version.
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this library; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
29 /*****************************************************************************
33 uuid(EAB22AC0-30C1-11CF-A7EB-0000C05BAE0B),
35 helpstring("Microsoft Internet Controls")
40 importlib("stdole2.tlb");
43 /*****************************************************************************
44 * IWebBrowser interface
49 uuid(eab22ac1-30c1-11cf-a7eb-0000c05bae0b),
53 interface IWebBrowser : IDispatch
55 typedef enum BrowserNavConstants
57 navOpenInNewWindow = 0x1,
59 navNoReadFromCache = 0x4,
60 navNoWriteToCache = 0x8,
61 navAllowAutosearch = 0x10,
64 navEnforceRestricted = 0x80
65 } BrowserNavConstants;
67 typedef enum RefreshConstants
70 REFRESH_IFEXPIRED = 1,
71 REFRESH_COMPLETELY = 3
74 [id(100)] HRESULT GoBack();
75 [id(101)] HRESULT GoForward();
76 [id(102)] HRESULT GoHome();
77 [id(103)] HRESULT GoSearch();
82 [in, optional] VARIANT *Flags,
83 [in, optional] VARIANT *TargetFrameName,
84 [in, optional] VARIANT *PostData,
85 [in, optional] VARIANT *Headers);
87 [id(DISPID_REFRESH)] HRESULT Refresh();
88 [id(105)] HRESULT Refresh2([in, optional] VARIANT *Level);
89 [id(106)] HRESULT Stop();
90 [id(200), propget] HRESULT Application([out, retval] IDispatch** ppDisp);
91 [id(201), propget] HRESULT Parent([out, retval] IDispatch** ppDisp);
92 [id(202), propget] HRESULT Container([out, retval] IDispatch** ppDisp);
93 [id(203), propget] HRESULT Document([out, retval] IDispatch** ppDisp);
94 [id(204), propget] HRESULT TopLevelContainer([out, retval] VARIANT_BOOL* pBool);
95 [id(205), propget] HRESULT Type([out, retval] BSTR* Type);
96 [id(206), propget] HRESULT Left([out, retval] long *pl);
97 [id(206), propput] HRESULT Left([in] long Left);
98 [id(207), propget] HRESULT Top([out, retval] long *pl);
99 [id(207), propput] HRESULT Top([in] long Top);
100 [id(208), propget] HRESULT Width([out, retval] long *pl);
101 [id(208), propput] HRESULT Width([in] long Width);
102 [id(209), propget] HRESULT Height([out, retval] long *pl);
103 [id(209), propput] HRESULT Height([in] long Height);
104 [id(210), propget] HRESULT LocationName([out, retval] BSTR *LocationName);
105 [id(211), propget] HRESULT LocationURL([out, retval] BSTR *LocationURL);
106 [id(212), propget] HRESULT Busy([out, retval] VARIANT_BOOL *pBool);
109 /*****************************************************************************
110 * DWebBrowserEvents dispinterface
113 uuid(eab22ac2-30c1-11CF-a7eb-0000C05bae0b),
116 dispinterface DWebBrowserEvents
120 [id(DISPID_BEFORENAVIGATE)]
124 BSTR TargetFrameName,
127 [in, out] VARIANT_BOOL *Cancel);
129 [id(DISPID_NAVIGATECOMPLETE)]
130 void NavigateComplete([in] BSTR URL);
132 [id(DISPID_STATUSTEXTCHANGE)]
133 void StatusTextChange([in] BSTR Text);
135 [id(DISPID_PROGRESSCHANGE)]
136 void ProgressChange([in] long Progress, [in] long ProgressMax);
138 [id(DISPID_DOWNLOADCOMPLETE)]
139 void DownloadComplete();
141 [id(DISPID_COMMANDSTATECHANGE)]
142 void CommandStateChange([in] long Command, [in]VARIANT_BOOL Enable);
144 [id(DISPID_DOWNLOADBEGIN)]
145 void DownloadBegin();
147 [id(DISPID_NEWWINDOW)]
151 [in] BSTR TargetFrameName,
152 [in] VARIANT *PostData,
154 [in,out] VARIANT_BOOL *Processed);
156 [id(DISPID_TITLECHANGE)]
157 void TitleChange([in] BSTR Text);
159 [id(DISPID_FRAMEBEFORENAVIGATE)]
160 void FrameBeforeNavigate(
163 BSTR TargetFrameName,
166 [in, out]VARIANT_BOOL *Cancel);
168 [id(DISPID_FRAMENAVIGATECOMPLETE)]
169 void FrameNavigateComplete([in] BSTR URL);
171 [id(DISPID_FRAMENEWWINDOW)]
175 [in] BSTR TargetFrameName,
176 [in] VARIANT *PostData,
178 [in,out] VARIANT_BOOL *Processed);
181 void Quit([in, out] VARIANT_BOOL *Cancel);
183 [id(DISPID_WINDOWMOVE)]
186 [id(DISPID_WINDOWRESIZE)]
189 [id(DISPID_WINDOWACTIVATE)]
190 void WindowActivate();
192 [id(DISPID_PROPERTYCHANGE)]
193 void PropertyChange([in] BSTR Property);
198 uuid(34a226e0-df30-11cf-89a9-00a0c9054129)
200 enum CommandStateChangeConstants {
201 CSC_UPDATECOMMANDS = -1,
202 CSC_NAVIGATEFORWARD = 1,
204 } CommandStateChangeConstants;
206 /*****************************************************************************
207 * IWebBrowserApp interface
212 uuid(0002df05-0000-0000-c000-000000000046),
216 interface IWebBrowserApp : IWebBrowser
218 [id(300)] HRESULT Quit();
219 [id(301)] HRESULT ClientToWindow([in,out] int* pcx, [in,out] int* pcy);
220 [id(302)] HRESULT PutProperty([in] BSTR Property, [in] VARIANT vtValue);
221 [id(303)] HRESULT GetProperty([in] BSTR Property, [out, retval] VARIANT *pvtValue);
222 [id(0), propget] HRESULT Name([out, retval] BSTR* Name);
223 [id(DISPID_HWND), propget] HRESULT HWND([out, retval] long *pHWND);
224 [id(400), propget] HRESULT FullName([out, retval] BSTR* FullName);
225 [id(401), propget] HRESULT Path([out, retval] BSTR* Path);
226 [id(402), propget] HRESULT Visible([out, retval] VARIANT_BOOL* pBool);
227 [id(402), propput] HRESULT Visible([in] VARIANT_BOOL Value);
228 [id(403), propget] HRESULT StatusBar([out, retval] VARIANT_BOOL* pBool);
229 [id(403), propput] HRESULT StatusBar([in] VARIANT_BOOL Value);
230 [id(404), propget] HRESULT StatusText([out, retval] BSTR *StatusText);
231 [id(404), propput] HRESULT StatusText([in] BSTR StatusText);
232 [id(405), propget] HRESULT ToolBar([out, retval] int * Value);
233 [id(405), propput] HRESULT ToolBar([in] int Value);
234 [id(406), propget] HRESULT MenuBar([out, retval] VARIANT_BOOL *Value);
235 [id(406), propput] HRESULT MenuBar([in] VARIANT_BOOL Value);
236 [id(407), propget] HRESULT FullScreen([out, retval] VARIANT_BOOL *pbFullScreen);
237 [id(407), propput] HRESULT FullScreen([in] VARIANT_BOOL bFullScreen);
240 /*****************************************************************************
241 * IWebBrowser2 interface
246 uuid(d30c1661-cdaf-11d0-8a3e-00c04fc9e26e),
250 interface IWebBrowser2 : IWebBrowserApp
252 [id(500)] HRESULT Navigate2(
254 [in, optional] VARIANT *Flags,
255 [in, optional] VARIANT *TargetFrameName,
256 [in, optional] VARIANT *PostData,
257 [in, optional] VARIANT *Headers);
259 [id(501)] HRESULT QueryStatusWB(
261 [out, retval] OLECMDF *pcmdf);
263 [id(502)] HRESULT ExecWB(
265 [in] OLECMDEXECOPT cmdexecopt,
266 [in, optional] VARIANT *pvaIn,
267 [out, in, optional] VARIANT *pvaOut);
269 [id(503)] HRESULT ShowBrowserBar(
270 [in] VARIANT *pvaClsid,
271 [in, optional] VARIANT *pvarShow,
272 [in, optional] VARIANT *pvarSize);
274 [id(DISPID_READYSTATE), propget, bindable]
275 HRESULT ReadyState([out, retval] READYSTATE *plReadyState);
277 [id(550), propget] HRESULT Offline([out, retval] VARIANT_BOOL *pbOffline);
278 [id(550), propput] HRESULT Offline([in] VARIANT_BOOL bOffline);
279 [id(551), propget] HRESULT Silent([out, retval] VARIANT_BOOL *pbSilent);
280 [id(551), propput] HRESULT Silent([in] VARIANT_BOOL bSilent);
281 [id(552), propget] HRESULT RegisterAsBrowser([out, retval] VARIANT_BOOL *pbRegister);
282 [id(552), propput] HRESULT RegisterAsBrowser([in] VARIANT_BOOL bRegister);
283 [id(553), propget] HRESULT RegisterAsDropTarget([out, retval] VARIANT_BOOL *pbRegister);
284 [id(553), propput] HRESULT RegisterAsDropTarget([in] VARIANT_BOOL bRegister);
285 [id(554), propget] HRESULT TheaterMode([out, retval] VARIANT_BOOL *pbRegister);
286 [id(554), propput] HRESULT TheaterMode([in] VARIANT_BOOL bRegister);
287 [id(555), propget] HRESULT AddressBar([out, retval] VARIANT_BOOL *Value);
288 [id(555), propput] HRESULT AddressBar([in] VARIANT_BOOL Value);
289 [id(556), propget] HRESULT Resizable([out, retval] VARIANT_BOOL *Value);
290 [id(556), propput] HRESULT Resizable([in] VARIANT_BOOL Value);
295 uuid(65507be0-91a8-11d3-a845-009027220e6d)
297 enum SecureLockIconConstants {
298 secureLockIconUnsecure = 0,
299 secureLockIconMixed = 1,
300 secureLockIconSecureUnknownBits = 2,
301 secureLockIconSecure40Bit = 3,
302 secureLockIconSecure56Bit = 4,
303 secureLockIconSecureFortezza = 5,
304 secureLockIconSecure128Bit = 6
305 } SecureLockIconConstants;
307 /*****************************************************************************
308 * DWebBrowserEvents2 dispinterface
311 uuid(34a715a0-6587-11d0-924a-0020afc7ac4d),
314 dispinterface DWebBrowserEvents2
318 [id(DISPID_STATUSTEXTCHANGE)]
319 void StatusTextChange([in] BSTR Text);
321 [id(DISPID_PROGRESSCHANGE)]
322 void ProgressChange([in] long Progress, [in] long ProgressMax);
324 [id(DISPID_COMMANDSTATECHANGE)]
325 void CommandStateChange([in] long Command, [in] VARIANT_BOOL Enable);
327 [id(DISPID_DOWNLOADBEGIN)]
328 void DownloadBegin();
330 [id(DISPID_DOWNLOADCOMPLETE)]
331 void DownloadComplete();
333 [id(DISPID_TITLECHANGE)]
334 void TitleChange([in] BSTR Text);
336 [id(DISPID_PROPERTYCHANGE)]
337 void PropertyChange([in] BSTR szProperty);
339 [id(DISPID_BEFORENAVIGATE2)]
340 void BeforeNavigate2(
341 [in] IDispatch *pDisp,
344 [in] VARIANT *TargetFrameName,
345 [in] VARIANT *PostData,
346 [in] VARIANT *Headers,
347 [in, out] VARIANT_BOOL *Cancel);
349 [id(DISPID_NEWWINDOW2)]
350 void NewWindow2([in, out] IDispatch **ppDisp, [in, out] VARIANT_BOOL *Cancel);
352 [id(DISPID_NAVIGATECOMPLETE2)]
353 void NavigateComplete2([in] IDispatch *pDisp, [in] VARIANT *URL);
355 [id(DISPID_DOCUMENTCOMPLETE)]
356 void DocumentComplete([in] IDispatch *pDisp, [in] VARIANT *URL);
361 [id(DISPID_ONVISIBLE)]
362 void OnVisible([in] VARIANT_BOOL Visible);
364 [id(DISPID_ONTOOLBAR)]
365 void OnToolBar([in] VARIANT_BOOL ToolBar);
367 [id(DISPID_ONMENUBAR)]
368 void OnMenuBar([in] VARIANT_BOOL MenuBar);
370 [id(DISPID_ONSTATUSBAR)]
371 void OnStatusBar([in] VARIANT_BOOL StatusBar);
373 [id(DISPID_ONFULLSCREEN)]
374 void OnFullScreen([in] VARIANT_BOOL FullScreen);
376 [id(DISPID_ONTHEATERMODE)]
377 void OnTheaterMode([in] VARIANT_BOOL TheaterMode);
379 [id(DISPID_WINDOWSETRESIZABLE)]
380 void WindowSetResizable([in] VARIANT_BOOL Resizable);
382 [id(DISPID_WINDOWSETLEFT)]
383 void WindowSetLeft([in] long Left);
385 [id(DISPID_WINDOWSETTOP)]
386 void WindowSetTop([in] long Top);
388 [id(DISPID_WINDOWSETWIDTH)]
389 void WindowSetWidth([in] long Width);
391 [id(DISPID_WINDOWSETHEIGHT)]
392 void WindowSetHeight([in] long Height);
394 [id(DISPID_WINDOWCLOSING)]
396 [in] VARIANT_BOOL IsChildWindow,
397 [in, out] VARIANT_BOOL *Cancel);
399 [id(DISPID_CLIENTTOHOSTWINDOW)]
400 void ClientToHostWindow(
404 [id(DISPID_SETSECURELOCKICON)]
405 void SetSecureLockIcon([in] long SecureLockIcon);
407 [id(DISPID_FILEDOWNLOAD)]
408 void FileDownload([in, out] VARIANT_BOOL* Cancel);
410 [id(DISPID_NAVIGATEERROR)]
412 [in] IDispatch *pDisp,
415 [in] VARIANT *StatusCode,
416 [in, out] VARIANT_BOOL *Cancel);
418 [id(DISPID_PRINTTEMPLATEINSTANTIATION)]
419 void PrintTemplateInstantiation([in] IDispatch *pDisp);
421 [id(DISPID_PRINTTEMPLATETEARDOWN)]
422 void PrintTemplateTeardown([in] IDispatch *pDisp);
424 [id(DISPID_UPDATEPAGESTATUS)]
425 void UpdatePageStatus(
426 [in] IDispatch *pDisp,
428 [in] VARIANT *fDone);
430 [id(DISPID_PRIVACYIMPACTEDSTATECHANGE)]
431 void PrivacyImpactedStateChange([in] VARIANT_BOOL bImpacted);
435 uuid(eab22ac3-30c1-11cf-a7eb-0000c05bae0b),
438 coclass WebBrowser_V1
440 interface IWebBrowser2;
441 [default] interface IWebBrowser;
442 [source] dispinterface DWebBrowserEvents2;
443 [default, source] dispinterface DWebBrowserEvents;
447 uuid(8856f961-340a-11d0-a96b-00c04fd705a2),
452 [default] interface IWebBrowser2;
453 interface IWebBrowser;
454 [default, source] dispinterface DWebBrowserEvents2;
455 [source] dispinterface DWebBrowserEvents;
459 uuid(0002df01-0000-0000-c000-000000000046)
461 coclass InternetExplorer
463 [default] interface IWebBrowser2;
464 interface IWebBrowserApp;
465 [default, source] dispinterface DWebBrowserEvents2;
466 [source] dispinterface DWebBrowserEvents;
470 uuid(C08AFD90-F2A1-11D1-8455-00A0C91F3880),
473 coclass ShellBrowserWindow
475 [default] interface IWebBrowser2;
476 interface IWebBrowserApp;
477 [default, source] dispinterface DWebBrowserEvents2;
478 [source] dispinterface DWebBrowserEvents;
483 uuid(f41e6981-28e5-11d0-82b4-00a0c90c29c5)
485 enum ShellWindowTypeConstants {
490 } ShellWindowTypeConstants;
494 uuid(7716a370-38Ca-11d0-a48B-00a0c90a8f39)
496 enum ShellWindowFindWindowOptions {
497 SWFO_NEEDDISPATCH = 1,
498 SWFO_INCLUDEPENDING = 2,
499 SWFO_COOKIEPASSED = 4
500 } ShellWindowFindWindowOptions;
503 uuid(FE4106E0-399A-11D0-A48C-00A0C90A8F39)
505 dispinterface DShellWindowsEvents {
508 [id(DISPID_WINDOWREGISTERED)]
509 void WindowRegistered([in] long lCookie);
511 [id(DISPID_WINDOWREVOKED)]
512 void WindowRevoked([in] long lCookie);
518 uuid(85cb6900-4d95-11cf-960c-0080c7f4ee85),
521 interface IShellWindows : IDispatch
523 [propget] HRESULT Count([out, retval] long *Count);
525 [id(0)] HRESULT Item(
526 [in, optional] VARIANT index,
527 [out, retval] IDispatch **Folder);
529 [id(-4)] HRESULT _NewEnum([out, retval] IUnknown **ppunk);
531 [hidden] HRESULT Register(
535 [out] long *plCookie);
537 [hidden] HRESULT RegisterPending(
539 [in] VARIANT *pvarloc,
540 [in] VARIANT *pvarlocRoot,
542 [out] long *plCookie);
544 [hidden] HRESULT Revoke([in] long lCookie);
545 [hidden] HRESULT OnNavigate([in] long lCookie, [in] VARIANT *pvarLoc);
546 [hidden] HRESULT OnActivated([in] long lCookie, [in] VARIANT_BOOL fActive);
547 [hidden] HRESULT FindWindowSW(
548 [in] VARIANT *pvarLoc,
549 [in] VARIANT *pvarLocRoot,
552 [in] int swfwOptions,
553 [out, retval] IDispatch **ppdispOut);
555 [hidden] HRESULT OnCreated([in] long lCookie, [in] IUnknown *punk);
556 [hidden] HRESULT ProcessAttachDetach([in] VARIANT_BOOL fAttach);
560 uuid(9ba05972-f6a8-11cf-a442-00a0c90a8f39)
564 [default] interface IShellWindows;
565 [default, source] dispinterface DShellWindowsEvents;
570 uuid(729fe2f8-1ea8-11d1-8f85-00C04fc2fbe1),
574 interface IShellUIHelper : IDispatch {
575 [id(1), hidden] HRESULT ResetFirstBootMode();
576 [id(2), hidden] HRESULT ResetSafeMode();
577 [id(3), hidden] HRESULT RefreshOfflineDesktop();
579 [id(4)] HRESULT AddFavorite(
581 [in, optional] VARIANT* Title);
583 [id(5)] HRESULT AddChannel([in] BSTR URL);
585 [id(6)] HRESULT AddDesktopComponent(
588 [in, optional] VARIANT *Left,
589 [in, optional] VARIANT *Top,
590 [in, optional] VARIANT *Width,
591 [in, optional] VARIANT *Height);
593 [id(7)] HRESULT IsSubscribed(
595 [out, retval] VARIANT_BOOL *pBool);
597 [id(8)] HRESULT NavigateAndFind(
600 [in] VARIANT *varTargetFrame);
602 [id(9)] HRESULT ImportExportFavorites(
603 [in] VARIANT_BOOL fImport,
604 [in] BSTR strImpExpPath);
606 [id(10)] HRESULT AutoCompleteSaveForm([in, optional] VARIANT *Form);
608 [id(11)] HRESULT AutoScan(
610 [in] BSTR strFailureUrl,
611 [in, optional] VARIANT *pvarTargetFrame);
613 [id(12), hidden] HRESULT AutoCompleteAttach([in, optional] VARIANT *Reserved);
615 [id(13)] HRESULT ShowBrowserUI(
617 [in] VARIANT *pvarIn,
618 [out, retval] VARIANT *pvarOut);
622 uuid(64ab4bb7-111e-11d1-8f79-00c04fc2fbe1)
624 coclass ShellUIHelper {
625 [default] interface IShellUIHelper;
629 uuid(55136806-b2de-11d1-b9f2-00a0c98bc547)
631 dispinterface DShellNameSpaceEvents {
634 [id(1)] void FavoritesSelectionChange(
641 [in] long fAvailableOffline);
643 [id(2)] void SelectionChange();
644 [id(3)] void DoubleClick();
645 [id(4)] void Initialized();
650 uuid(55136804-b2de-11d1-b9f2-00a0c98bc547),
655 interface IShellFavoritesNameSpace : IDispatch {
656 [id(1)] HRESULT MoveSelectionUp();
657 [id(2)] HRESULT MoveSelectionDown();
658 [id(3)] HRESULT ResetSort();
659 [id(4)] HRESULT NewFolder();
660 [id(5)] HRESULT Synchronize();
661 [id(6)] HRESULT Import();
662 [id(7)] HRESULT Export();
663 [id(8)] HRESULT InvokeContextMenuCommand([in] BSTR strCommand);
664 [id(9)] HRESULT MoveSelectionTo();
665 [id(10), propget] HRESULT SubscriptionsEnabled([out, retval] VARIANT_BOOL *pBool);
666 [id(11)] HRESULT CreateSubscriptionForSelection([out, retval] VARIANT_BOOL *pBool);
667 [id(12)] HRESULT DeleteSubscriptionForSelection([out, retval] VARIANT_BOOL *pBool);
668 [id(13)] HRESULT SetRoot([in] BSTR bstrFullPath);
673 uuid(e572d3c9-37be-4ae2-825d-d521763e3108),
678 interface IShellNameSpace : IShellFavoritesNameSpace {
679 [id(14), propget] HRESULT EnumOptions([out, retval] long* pgrfEnumFlags);
680 [id(14), propput] HRESULT EnumOptions([in] long pgrfEnumFlags);
682 [id(15), propget] HRESULT SelectedItem([out, retval] IDispatch **pItem);
683 [id(15), propput] HRESULT SelectedItem([in] IDispatch *pItem);
685 [id(16), propget] HRESULT Root([out, retval] VARIANT *pvar);
686 [id(16), propput] HRESULT Root([in] VARIANT pvar);
688 [id(17), propget] HRESULT Depth([out, retval] int *piDepth);
689 [id(17), propput] HRESULT Depth([in] int piDepth);
691 [id(18), propget] HRESULT Mode([out, retval] unsigned int *puMode);
692 [id(18), propput] HRESULT Mode([in] unsigned int puMode);
694 [id(19), propget] HRESULT Flags([out, retval] unsigned long *pdwFlags);
695 [id(19), propput] HRESULT Flags([in] unsigned long pdwFlags);
697 [id(20), propput] HRESULT TVFlags([in] unsigned long dwFlags);
698 [id(20), propget] HRESULT TVFlags([out, retval] unsigned long *dwFlags);
700 [id(21), propget] HRESULT Columns([out, retval] BSTR *bstrColumns);
701 [id(21), propput] HRESULT Columns([in] BSTR bstrColumns);
703 [id(22), propget] HRESULT CountViewTypes([out, retval] int *piTypes);
705 [id(23)] HRESULT SetViewType([in] int iType);
706 [id(24)] HRESULT SelectedItems([out, retval] IDispatch **ppid);
707 [id(25)] HRESULT Expand([in] VARIANT var, int iDepth);
708 [id(26)] HRESULT UnselectAll();
712 uuid(55136805-b2de-11d1-b9f2-00a0c98bc547)
714 coclass ShellNameSpace {
715 [default] interface IShellNameSpace;
716 [default, source] dispinterface DShellNameSpaceEvents;
720 uuid(2f2f1f96-2bc1-4b1c-be28-ea3774f4676a)
722 coclass ShellShellNameSpace {
723 [default] interface IShellNameSpace;
724 [default, source] dispinterface DShellNameSpaceEvents;
729 uuid(f3470f24-15fd-11d2-bb2e-00805ff7efca),
734 interface IScriptErrorList : IDispatch {
735 [id(10)] HRESULT advanceError();
736 [id(11)] HRESULT retreatError();
737 [id(12)] HRESULT canAdvanceError([out, retval] long *pfCanAdvance);
738 [id(13)] HRESULT canRetreatError([out, retval] long *pfCanRetreat);
739 [id(14)] HRESULT getErrorLine([out, retval] long *plLine);
740 [id(15)] HRESULT getErrorChar([out, retval] long *plChar);
741 [id(16)] HRESULT getErrorCode([out, retval] long *plCode);
742 [id(17)] HRESULT getErrorMsg([out, retval] BSTR *pstr);
743 [id(18)] HRESULT getErrorUrl([out, retval] BSTR *pstr);
744 [id(23)] HRESULT getAlwaysShowLockState([out, retval] long *pfAlwaysShowLocked);
745 [id(19)] HRESULT getDetailsPaneOpen([out, retval] long *pfDetailsPaneOpen);
746 [id(20)] HRESULT setDetailsPaneOpen(long fDetailsPaneOpen);
747 [id(21)] HRESULT getPerErrorDisplay([out, retval] long *pfPerErrorDisplay);
748 [id(22)] HRESULT setPerErrorDisplay(long fPerErrorDisplay);
752 uuid(efd01300-160f-11d2-bb2e-00805ff7efca),
755 coclass CScriptErrorList {
756 [default] interface IScriptErrorList;
761 uuid(ba9239a4-3dd5-11d2-bf8b-00c04fb93661),
766 interface ISearch : IDispatch {
767 [propget] HRESULT Title([out, retval] BSTR *pbstrTitle);
768 [propget] HRESULT Id([out, retval] BSTR *pbstrId);
769 [propget] HRESULT URL([out, retval] BSTR *pbstrUrl);
774 uuid(47c922a2-3dd5-11d2-bf8b-00c04fb93661),
779 interface ISearches : IDispatch {
780 [propget] HRESULT Count([out, retval] long *plCount);
781 [propget] HRESULT Default([out, retval] BSTR *pbstrDefault);
784 [in, optional] VARIANT index,
785 [out, retval] ISearch **ppid);
787 [id(-4)] HRESULT _NewEnum([out, retval] IUnknown **ppunk);
792 uuid(72423e8f-8011-11d2-be79-00a0c9a83da1),
797 interface ISearchAssistantOC : IDispatch {
798 [id(1)] HRESULT AddNextMenuItem([in] BSTR bstrText, [in] long idItem);
799 [id(2)] HRESULT SetDefaultSearchUrl([in] BSTR bstrUrl);
800 [id(3)] HRESULT NavigateToDefaultSearch();
802 [id(4)] HRESULT IsRestricted(
804 [out, retval] VARIANT_BOOL *pVal);
806 [id(5), propget] HRESULT ShellFeaturesEnabled([out, retval] VARIANT_BOOL *pVal);
807 [id(6), propget] HRESULT SearchAssistantDefault([out, retval] VARIANT_BOOL *pVal);
808 [id(7), propget] HRESULT Searches([out, retval] ISearches **ppid);
809 [id(8), propget] HRESULT InWebFolder([out, retval] VARIANT_BOOL *pVal);
811 [id(9)] HRESULT PutProperty(
812 [in] VARIANT_BOOL bPerLocale,
814 [in] BSTR bstrValue);
816 [id(10)] HRESULT GetProperty(
817 [in] VARIANT_BOOL bPerLocale,
819 [out, retval] BSTR *pbstrValue);
821 [id(11), propput] HRESULT EventHandled([in] VARIANT_BOOL rhs);
822 [id(12)] HRESULT ResetNextMenu();
823 [id(13)] HRESULT FindOnWeb();
824 [id(14)] HRESULT FindFilesOrFolders();
825 [id(15)] HRESULT FindComputer();
826 [id(16)] HRESULT FindPrinter();
827 [id(17)] HRESULT FindPeople();
829 [id(18)] HRESULT GetSearchAssistantURL(
830 [in] VARIANT_BOOL bSubstitute,
831 [in] VARIANT_BOOL bCustomize,
832 [out, retval] BSTR *pbstrValue);
834 [id(19)] HRESULT NotifySearchSettingsChanged();
836 [id(20), propput] HRESULT ASProvider([in] BSTR pProvider);
837 [id(20), propget] HRESULT ASProvider([out, retval] BSTR *pProvider);
839 [id(21), propput] HRESULT ASSetting([in] int pSetting);
840 [id(21), propget] HRESULT ASSetting([out, retval] int *pSetting);
842 [id(22)] HRESULT NETDetectNextNavigate();
843 [id(23)] HRESULT PutFindText([in] BSTR FindText);
844 [id(24), propget] HRESULT Version([out, retval] int *pVersion);
846 [id(25)] HRESULT EncodeString(
848 [in] BSTR bstrCharSet,
849 [in] VARIANT_BOOL bUseUTF8,
850 [out, retval] BSTR* pbstrResult);
855 uuid(72423e8f-8011-11d2-be79-00a0c9a83da2),
860 interface ISearchAssistantOC2 : ISearchAssistantOC {
861 [id(26), propget] HRESULT ShowFindPrinter([out, retval] VARIANT_BOOL *pbShowFindPrinter);
866 uuid(72423e8f-8011-11d2-be79-00a0c9a83da3),
871 interface ISearchAssistantOC3 : ISearchAssistantOC2 {
872 [id(27), propget] HRESULT SearchCompanionAvailable([out, retval] VARIANT_BOOL *pbAvailable);
874 [id(28), propput] HRESULT UseSearchCompanion([in] VARIANT_BOOL pbUseSC);
875 [id(28), propget] HRESULT UseSearchCompanion([out, retval] VARIANT_BOOL *pbUseSC);
879 uuid(1611fdda-445b-11d2-85de-00C04fa35c89),
882 dispinterface _SearchAssistantEvents {
885 [id(1)] void OnNextMenuSelect([in] long idItem);
886 [id(2)] void OnNewSearch();
890 uuid(b45ff030-4447-11d2-85de-00C04fa35c89),
893 coclass SearchAssistantOC {
894 [default] interface ISearchAssistantOC3;
895 [default, source] dispinterface _SearchAssistantEvents;
899 uuid(2e71fd0f-aab1-42c0-9146-6d2c4edcf07d),
902 coclass ShellSearchAssistantOC {
903 [default] interface ISearchAssistantOC3;
904 [default, source] dispinterface _SearchAssistantEvents;