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 * Copuright (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
;
721 uuid(f3470f24
-15fd
-11d2
-bb2e
-00805ff7efca
),
726 interface IScriptErrorList
: IDispatch
{
727 [id(10)] HRESULT advanceError
();
728 [id(11)] HRESULT retreatError
();
729 [id(12)] HRESULT canAdvanceError
([out, retval] long *pfCanAdvance
);
730 [id(13)] HRESULT canRetreatError
([out, retval] long *pfCanRetreat
);
731 [id(14)] HRESULT getErrorLine
([out, retval] long *plLine
);
732 [id(15)] HRESULT getErrorChar
([out, retval] long *plChar
);
733 [id(16)] HRESULT getErrorCode
([out, retval] long *plCode
);
734 [id(17)] HRESULT getErrorMsg
([out, retval] BSTR *pstr
);
735 [id(18)] HRESULT getErrorUrl
([out, retval] BSTR *pstr
);
736 [id(23)] HRESULT getAlwaysShowLockState
([out, retval] long *pfAlwaysShowLocked
);
737 [id(19)] HRESULT getDetailsPaneOpen
([out, retval] long *pfDetailsPaneOpen
);
738 [id(20)] HRESULT setDetailsPaneOpen
(long fDetailsPaneOpen
);
739 [id(21)] HRESULT getPerErrorDisplay
([out, retval] long *pfPerErrorDisplay
);
740 [id(22)] HRESULT setPerErrorDisplay
(long fPerErrorDisplay
);
744 uuid(efd01300
-160f
-11d2
-bb2e
-00805ff7efca
),
747 coclass CScriptErrorList
{
748 [default] interface IScriptErrorList
;
753 uuid(ba9239a4
-3dd5
-11d2
-bf8b
-00c04fb93661
),
758 interface ISearch
: IDispatch
{
759 [propget] HRESULT Title
([out, retval] BSTR *pbstrTitle
);
760 [propget] HRESULT Id([out, retval] BSTR *pbstrId
);
761 [propget] HRESULT URL
([out, retval] BSTR *pbstrUrl
);
766 uuid(47c922a2
-3dd5
-11d2
-bf8b
-00c04fb93661
),
771 interface ISearches
: IDispatch
{
772 [propget] HRESULT Count
([out, retval] long *plCount
);
773 [propget] HRESULT Default([out, retval] BSTR *pbstrDefault
);
776 [in, optional] VARIANT index
,
777 [out, retval] ISearch
**ppid
);
779 [id(-4)] HRESULT _NewEnum
([out, retval] IUnknown
**ppunk
);
784 uuid(72423e8f
-8011-11d2
-be79
-00a0c9a83da1
),
789 interface ISearchAssistantOC
: IDispatch
{
790 [id(1)] HRESULT AddNextMenuItem
([in] BSTR bstrText
, [in] long idItem
);
791 [id(2)] HRESULT SetDefaultSearchUrl
([in] BSTR bstrUrl
);
792 [id(3)] HRESULT NavigateToDefaultSearch
();
794 [id(4)] HRESULT IsRestricted
(
796 [out, retval] VARIANT_BOOL *pVal
);
798 [id(5), propget] HRESULT ShellFeaturesEnabled
([out, retval] VARIANT_BOOL *pVal
);
799 [id(6), propget] HRESULT SearchAssistantDefault
([out, retval] VARIANT_BOOL *pVal
);
800 [id(7), propget] HRESULT Searches
([out, retval] ISearches
**ppid
);
801 [id(8), propget] HRESULT InWebFolder
([out, retval] VARIANT_BOOL *pVal
);
803 [id(9)] HRESULT PutProperty
(
804 [in] VARIANT_BOOL bPerLocale
,
806 [in] BSTR bstrValue
);
808 [id(10)] HRESULT GetProperty
(
809 [in] VARIANT_BOOL bPerLocale
,
811 [out, retval] BSTR *pbstrValue
);
813 [id(11), propput] HRESULT EventHandled
([in] VARIANT_BOOL rhs
);
814 [id(12)] HRESULT ResetNextMenu
();
815 [id(13)] HRESULT FindOnWeb
();
816 [id(14)] HRESULT FindFilesOrFolders
();
817 [id(15)] HRESULT FindComputer
();
818 [id(16)] HRESULT FindPrinter
();
819 [id(17)] HRESULT FindPeople
();
821 [id(18)] HRESULT GetSearchAssistantURL
(
822 [in] VARIANT_BOOL bSubstitute
,
823 [in] VARIANT_BOOL bCustomize
,
824 [out, retval] BSTR *pbstrValue
);
826 [id(19)] HRESULT NotifySearchSettingsChanged
();
828 [id(20), propput] HRESULT ASProvider
([in] BSTR pProvider
);
829 [id(20), propget] HRESULT ASProvider
([out, retval] BSTR *pProvider
);
831 [id(21), propput] HRESULT ASSetting
([in] int pSetting
);
832 [id(21), propget] HRESULT ASSetting
([out, retval] int *pSetting
);
834 [id(22)] HRESULT NETDetectNextNavigate
();
835 [id(23)] HRESULT PutFindText
([in] BSTR FindText
);
836 [id(24), propget] HRESULT Version([out, retval] int *pVersion
);
838 [id(25)] HRESULT EncodeString
(
840 [in] BSTR bstrCharSet
,
841 [in] VARIANT_BOOL bUseUTF8
,
842 [out, retval] BSTR* pbstrResult
);
847 uuid(72423e8f
-8011-11d2
-be79
-00a0c9a83da2
),
852 interface ISearchAssistantOC2
: ISearchAssistantOC
{
853 [id(26), propget] HRESULT ShowFindPrinter
([out, retval] VARIANT_BOOL *pbShowFindPrinter
);
858 uuid(72423e8f
-8011-11d2
-be79
-00a0c9a83da3
),
863 interface ISearchAssistantOC3
: ISearchAssistantOC2
{
864 [id(27), propget] HRESULT SearchCompanionAvailable
([out, retval] VARIANT_BOOL *pbAvailable
);
866 [id(28), propput] HRESULT UseSearchCompanion
([in] VARIANT_BOOL pbUseSC
);
867 [id(28), propget] HRESULT UseSearchCompanion
([out, retval] VARIANT_BOOL *pbUseSC
);
871 uuid(1611fdda
-445b
-11d2
-85de
-00C04fa35c89
),
874 dispinterface _SearchAssistantEvents
{
877 [id(1)] void OnNextMenuSelect
([in] long idItem
);
878 [id(2)] void OnNewSearch
();
882 uuid(b45ff030
-4447-11d2
-85de
-00C04fa35c89
),
885 coclass SearchAssistantOC
{
886 [default] interface ISearchAssistantOC3
;
887 [default, source] dispinterface _SearchAssistantEvents
;