1/* 2 * Defines the COM interfaces and APIs related to the IE Web browser 3 * 4 * Copyright (C) 2001 John R. Sheets (for CodeWeavers) 5 * Copyright (C) 2003 Alexandre Julliard 6 * Copyright (C) 2004 Jacek Caban 7 * 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. 12 * 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. 17 * 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 21 */ 22 23import "ocidl.idl"; 24import "docobj.idl"; 25 26#include <olectl.h> 27#include <exdispid.h> 28 29#ifndef __WIDL__ 30#define threading(model) 31#define progid(str) 32#define vi_progid(str) 33#endif 34 35cpp_quote("#ifdef WINE_NO_UNICODE_MACROS") 36cpp_quote("#undef FindText") 37cpp_quote("#endif") 38 39/***************************************************************************** 40 * SHDocVw library 41 */ 42[ 43 uuid(EAB22AC0-30C1-11CF-A7EB-0000C05BAE0B), 44 version(1.1), 45 helpstring("Microsoft Internet Controls") 46] 47library SHDocVw 48{ 49 50importlib("stdole2.tlb"); 51 52 53/***************************************************************************** 54 * IWebBrowser interface 55 */ 56[ 57 object, 58 oleautomation, 59 uuid(eab22ac1-30c1-11cf-a7eb-0000c05bae0b), 60 hidden, 61 dual 62] 63interface IWebBrowser : IDispatch 64{ 65 typedef enum BrowserNavConstants 66 { 67 navOpenInNewWindow = 0x1, 68 navNoHistory = 0x2, 69 navNoReadFromCache = 0x4, 70 navNoWriteToCache = 0x8, 71 navAllowAutosearch = 0x10, 72 navBrowserBar = 0x20, 73 navHyperlink = 0x40, 74 navEnforceRestricted = 0x80 75 } BrowserNavConstants; 76 77 typedef enum RefreshConstants 78 { 79 REFRESH_NORMAL = 0, 80 REFRESH_IFEXPIRED = 1, 81 REFRESH_COMPLETELY = 3 82 } RefreshConstants; 83 84 [id(100)] HRESULT GoBack(); 85 [id(101)] HRESULT GoForward(); 86 [id(102)] HRESULT GoHome(); 87 [id(103)] HRESULT GoSearch(); 88 89 [id(104)] 90 HRESULT Navigate( 91 [in] BSTR URL, 92 [in, optional] VARIANT *Flags, 93 [in, optional] VARIANT *TargetFrameName, 94 [in, optional] VARIANT *PostData, 95 [in, optional] VARIANT *Headers); 96 97 [id(DISPID_REFRESH)] HRESULT Refresh(); 98 [id(105)] HRESULT Refresh2([in, optional] VARIANT *Level); 99 [id(106)] HRESULT Stop(); 100 [id(200), propget] HRESULT Application([out, retval] IDispatch** ppDisp); 101 [id(201), propget] HRESULT Parent([out, retval] IDispatch** ppDisp); 102 [id(202), propget] HRESULT Container([out, retval] IDispatch** ppDisp); 103 [id(203), propget] HRESULT Document([out, retval] IDispatch** ppDisp); 104 [id(204), propget] HRESULT TopLevelContainer([out, retval] VARIANT_BOOL* pBool); 105 [id(205), propget] HRESULT Type([out, retval] BSTR* Type); 106 [id(206), propget] HRESULT Left([out, retval] long *pl); 107 [id(206), propput] HRESULT Left([in] long Left); 108 [id(207), propget] HRESULT Top([out, retval] long *pl); 109 [id(207), propput] HRESULT Top([in] long Top); 110 [id(208), propget] HRESULT Width([out, retval] long *pl); 111 [id(208), propput] HRESULT Width([in] long Width); 112 [id(209), propget] HRESULT Height([out, retval] long *pl); 113 [id(209), propput] HRESULT Height([in] long Height); 114 [id(210), propget] HRESULT LocationName([out, retval] BSTR *LocationName); 115 [id(211), propget] HRESULT LocationURL([out, retval] BSTR *LocationURL); 116 [id(212), propget] HRESULT Busy([out, retval] VARIANT_BOOL *pBool); 117} 118 119/***************************************************************************** 120 * DWebBrowserEvents dispinterface 121 */ 122[ 123 uuid(eab22ac2-30c1-11CF-a7eb-0000C05bae0b), 124 hidden 125] 126dispinterface DWebBrowserEvents 127{ 128 properties: 129 methods: 130 [id(DISPID_BEFORENAVIGATE)] 131 void BeforeNavigate( 132 [in] BSTR URL, 133 long Flags, 134 BSTR TargetFrameName, 135 VARIANT *PostData, 136 BSTR Headers, 137 [in, out] VARIANT_BOOL *Cancel); 138 139 [id(DISPID_NAVIGATECOMPLETE)] 140 void NavigateComplete([in] BSTR URL); 141 142 [id(DISPID_STATUSTEXTCHANGE)] 143 void StatusTextChange([in] BSTR Text); 144 145 [id(DISPID_PROGRESSCHANGE)] 146 void ProgressChange([in] long Progress, [in] long ProgressMax); 147 148 [id(DISPID_DOWNLOADCOMPLETE)] 149 void DownloadComplete(); 150 151 [id(DISPID_COMMANDSTATECHANGE)] 152 void CommandStateChange([in] long Command, [in]VARIANT_BOOL Enable); 153 154 [id(DISPID_DOWNLOADBEGIN)] 155 void DownloadBegin(); 156 157 [id(DISPID_NEWWINDOW)] 158 void NewWindow( 159 [in] BSTR URL, 160 [in] long Flags, 161 [in] BSTR TargetFrameName, 162 [in] VARIANT *PostData, 163 [in] BSTR Headers, 164 [in,out] VARIANT_BOOL *Processed); 165 166 [id(DISPID_TITLECHANGE)] 167 void TitleChange([in] BSTR Text); 168 169 [id(DISPID_FRAMEBEFORENAVIGATE)] 170 void FrameBeforeNavigate( 171 [in] BSTR URL, 172 long Flags, 173 BSTR TargetFrameName, 174 VARIANT *PostData, 175 BSTR Headers, 176 [in, out]VARIANT_BOOL *Cancel); 177 178 [id(DISPID_FRAMENAVIGATECOMPLETE)] 179 void FrameNavigateComplete([in] BSTR URL); 180 181 [id(DISPID_FRAMENEWWINDOW)] 182 void FrameNewWindow( 183 [in] BSTR URL, 184 [in] long Flags, 185 [in] BSTR TargetFrameName, 186 [in] VARIANT *PostData, 187 [in] BSTR Headers, 188 [in,out] VARIANT_BOOL *Processed); 189 190 [id(DISPID_QUIT)] 191 void Quit([in, out] VARIANT_BOOL *Cancel); 192 193 [id(DISPID_WINDOWMOVE)] 194 void WindowMove(); 195 196 [id(DISPID_WINDOWRESIZE)] 197 void WindowResize(); 198 199 [id(DISPID_WINDOWACTIVATE)] 200 void WindowActivate(); 201 202 [id(DISPID_PROPERTYCHANGE)] 203 void PropertyChange([in] BSTR Property); 204} 205 206typedef 207[ 208 uuid(34a226e0-df30-11cf-89a9-00a0c9054129) 209] 210enum CommandStateChangeConstants { 211 CSC_UPDATECOMMANDS = -1, 212 CSC_NAVIGATEFORWARD = 1, 213 CSC_NAVIGATEBACK = 2 214} CommandStateChangeConstants; 215 216/***************************************************************************** 217 * IWebBrowserApp interface 218 */ 219[ 220 object, 221 oleautomation, 222 uuid(0002df05-0000-0000-c000-000000000046), 223 hidden, 224 dual 225] 226interface IWebBrowserApp : IWebBrowser 227{ 228 [id(300)] HRESULT Quit(); 229 [id(301)] HRESULT ClientToWindow([in,out] int* pcx, [in,out] int* pcy); 230 [id(302)] HRESULT PutProperty([in] BSTR Property, [in] VARIANT vtValue); 231 [id(303)] HRESULT GetProperty([in] BSTR Property, [out, retval] VARIANT *pvtValue); 232 [id(0), propget] HRESULT Name([out, retval] BSTR* Name); 233 [id(DISPID_HWND), propget] HRESULT HWND([out, retval] SHANDLE_PTR *pHWND); 234 [id(400), propget] HRESULT FullName([out, retval] BSTR* FullName); 235 [id(401), propget] HRESULT Path([out, retval] BSTR* Path); 236 [id(402), propget] HRESULT Visible([out, retval] VARIANT_BOOL* pBool); 237 [id(402), propput] HRESULT Visible([in] VARIANT_BOOL Value); 238 [id(403), propget] HRESULT StatusBar([out, retval] VARIANT_BOOL* pBool); 239 [id(403), propput] HRESULT StatusBar([in] VARIANT_BOOL Value); 240 [id(404), propget] HRESULT StatusText([out, retval] BSTR *StatusText); 241 [id(404), propput] HRESULT StatusText([in] BSTR StatusText); 242 [id(405), propget] HRESULT ToolBar([out, retval] int * Value); 243 [id(405), propput] HRESULT ToolBar([in] int Value); 244 [id(406), propget] HRESULT MenuBar([out, retval] VARIANT_BOOL *Value); 245 [id(406), propput] HRESULT MenuBar([in] VARIANT_BOOL Value); 246 [id(407), propget] HRESULT FullScreen([out, retval] VARIANT_BOOL *pbFullScreen); 247 [id(407), propput] HRESULT FullScreen([in] VARIANT_BOOL bFullScreen); 248} 249 250/***************************************************************************** 251 * IWebBrowser2 interface 252 */ 253[ 254 object, 255 oleautomation, 256 uuid(d30c1661-cdaf-11d0-8a3e-00c04fc9e26e), 257 hidden, 258 dual 259] 260interface IWebBrowser2 : IWebBrowserApp 261{ 262 [id(500)] HRESULT Navigate2( 263 [in] VARIANT *URL, 264 [in, optional] VARIANT *Flags, 265 [in, optional] VARIANT *TargetFrameName, 266 [in, optional] VARIANT *PostData, 267 [in, optional] VARIANT *Headers); 268 269 [id(501)] HRESULT QueryStatusWB( 270 [in] OLECMDID cmdID, 271 [out, retval] OLECMDF *pcmdf); 272 273 [id(502)] HRESULT ExecWB( 274 [in] OLECMDID cmdID, 275 [in] OLECMDEXECOPT cmdexecopt, 276 [in, optional] VARIANT *pvaIn, 277 [out, in, optional] VARIANT *pvaOut); 278 279 [id(503)] HRESULT ShowBrowserBar( 280 [in] VARIANT *pvaClsid, 281 [in, optional] VARIANT *pvarShow, 282 [in, optional] VARIANT *pvarSize); 283 284 [id(DISPID_READYSTATE), propget, bindable] 285 HRESULT ReadyState([out, retval] READYSTATE *plReadyState); 286 287 [id(550), propget] HRESULT Offline([out, retval] VARIANT_BOOL *pbOffline); 288 [id(550), propput] HRESULT Offline([in] VARIANT_BOOL bOffline); 289 [id(551), propget] HRESULT Silent([out, retval] VARIANT_BOOL *pbSilent); 290 [id(551), propput] HRESULT Silent([in] VARIANT_BOOL bSilent); 291 [id(552), propget] HRESULT RegisterAsBrowser([out, retval] VARIANT_BOOL *pbRegister); 292 [id(552), propput] HRESULT RegisterAsBrowser([in] VARIANT_BOOL bRegister); 293 [id(553), propget] HRESULT RegisterAsDropTarget([out, retval] VARIANT_BOOL *pbRegister); 294 [id(553), propput] HRESULT RegisterAsDropTarget([in] VARIANT_BOOL bRegister); 295 [id(554), propget] HRESULT TheaterMode([out, retval] VARIANT_BOOL *pbRegister); 296 [id(554), propput] HRESULT TheaterMode([in] VARIANT_BOOL bRegister); 297 [id(555), propget] HRESULT AddressBar([out, retval] VARIANT_BOOL *Value); 298 [id(555), propput] HRESULT AddressBar([in] VARIANT_BOOL Value); 299 [id(556), propget] HRESULT Resizable([out, retval] VARIANT_BOOL *Value); 300 [id(556), propput] HRESULT Resizable([in] VARIANT_BOOL Value); 301} 302 303typedef 304[ 305 uuid(65507be0-91a8-11d3-a845-009027220e6d) 306] 307enum SecureLockIconConstants { 308 secureLockIconUnsecure = 0, 309 secureLockIconMixed = 1, 310 secureLockIconSecureUnknownBits = 2, 311 secureLockIconSecure40Bit = 3, 312 secureLockIconSecure56Bit = 4, 313 secureLockIconSecureFortezza = 5, 314 secureLockIconSecure128Bit = 6 315} SecureLockIconConstants; 316 317/***************************************************************************** 318 * DWebBrowserEvents2 dispinterface 319 */ 320[ 321 uuid(34a715a0-6587-11d0-924a-0020afc7ac4d), 322 hidden 323] 324dispinterface DWebBrowserEvents2 325{ 326 properties: 327 methods: 328 [id(DISPID_STATUSTEXTCHANGE)] 329 void StatusTextChange([in] BSTR Text); 330 331 [id(DISPID_PROGRESSCHANGE)] 332 void ProgressChange([in] long Progress, [in] long ProgressMax); 333 334 [id(DISPID_COMMANDSTATECHANGE)] 335 void CommandStateChange([in] long Command, [in] VARIANT_BOOL Enable); 336 337 [id(DISPID_DOWNLOADBEGIN)] 338 void DownloadBegin(); 339 340 [id(DISPID_DOWNLOADCOMPLETE)] 341 void DownloadComplete(); 342 343 [id(DISPID_TITLECHANGE)] 344 void TitleChange([in] BSTR Text); 345 346 [id(DISPID_PROPERTYCHANGE)] 347 void PropertyChange([in] BSTR szProperty); 348 349 [id(DISPID_BEFORENAVIGATE2)] 350 void BeforeNavigate2( 351 [in] IDispatch *pDisp, 352 [in] VARIANT *URL, 353 [in] VARIANT *Flags, 354 [in] VARIANT *TargetFrameName, 355 [in] VARIANT *PostData, 356 [in] VARIANT *Headers, 357 [in, out] VARIANT_BOOL *Cancel); 358 359 [id(DISPID_NEWWINDOW2)] 360 void NewWindow2([in, out] IDispatch **ppDisp, [in, out] VARIANT_BOOL *Cancel); 361 362 [id(DISPID_NAVIGATECOMPLETE2)] 363 void NavigateComplete2([in] IDispatch *pDisp, [in] VARIANT *URL); 364 365 [id(DISPID_DOCUMENTCOMPLETE)] 366 void DocumentComplete([in] IDispatch *pDisp, [in] VARIANT *URL); 367 368 [id(DISPID_ONQUIT)] 369 void OnQuit(); 370 371 [id(DISPID_ONVISIBLE)] 372 void OnVisible([in] VARIANT_BOOL Visible); 373 374 [id(DISPID_ONTOOLBAR)] 375 void OnToolBar([in] VARIANT_BOOL ToolBar); 376 377 [id(DISPID_ONMENUBAR)] 378 void OnMenuBar([in] VARIANT_BOOL MenuBar); 379 380 [id(DISPID_ONSTATUSBAR)] 381 void OnStatusBar([in] VARIANT_BOOL StatusBar); 382 383 [id(DISPID_ONFULLSCREEN)] 384 void OnFullScreen([in] VARIANT_BOOL FullScreen); 385 386 [id(DISPID_ONTHEATERMODE)] 387 void OnTheaterMode([in] VARIANT_BOOL TheaterMode); 388 389 [id(DISPID_WINDOWSETRESIZABLE)] 390 void WindowSetResizable([in] VARIANT_BOOL Resizable); 391 392 [id(DISPID_WINDOWSETLEFT)] 393 void WindowSetLeft([in] long Left); 394 395 [id(DISPID_WINDOWSETTOP)] 396 void WindowSetTop([in] long Top); 397 398 [id(DISPID_WINDOWSETWIDTH)] 399 void WindowSetWidth([in] long Width); 400 401 [id(DISPID_WINDOWSETHEIGHT)] 402 void WindowSetHeight([in] long Height); 403 404 [id(DISPID_WINDOWCLOSING)] 405 void WindowClosing( 406 [in] VARIANT_BOOL IsChildWindow, 407 [in, out] VARIANT_BOOL *Cancel); 408 409 [id(DISPID_CLIENTTOHOSTWINDOW)] 410 void ClientToHostWindow( 411 [in, out] long *CX, 412 [in, out] long *CY); 413 414 [id(DISPID_SETSECURELOCKICON)] 415 void SetSecureLockIcon([in] long SecureLockIcon); 416 417 [id(DISPID_FILEDOWNLOAD)] 418 void FileDownload( 419 [in] VARIANT_BOOL ActiveDocument, 420 [in, out] VARIANT_BOOL *Cancel); 421 422 [id(DISPID_NAVIGATEERROR)] 423 void NavigateError( 424 [in] IDispatch *pDisp, 425 [in] VARIANT *URL, 426 [in] VARIANT *Frame, 427 [in] VARIANT *StatusCode, 428 [in, out] VARIANT_BOOL *Cancel); 429 430 [id(DISPID_PRINTTEMPLATEINSTANTIATION)] 431 void PrintTemplateInstantiation([in] IDispatch *pDisp); 432 433 [id(DISPID_PRINTTEMPLATETEARDOWN)] 434 void PrintTemplateTeardown([in] IDispatch *pDisp); 435 436 [id(DISPID_UPDATEPAGESTATUS)] 437 void UpdatePageStatus( 438 [in] IDispatch *pDisp, 439 [in] VARIANT *nPage, 440 [in] VARIANT *fDone); 441 442 [id(DISPID_PRIVACYIMPACTEDSTATECHANGE)] 443 void PrivacyImpactedStateChange([in] VARIANT_BOOL bImpacted); 444 445 [id(DISPID_NEWWINDOW3)] 446 void NewWindow3( 447 [in, out] IDispatch **ppDisp, 448 [in, out] VARIANT_BOOL *Cancel, 449 [in] DWORD dwFlags, 450 [in] BSTR bstrUrlContext, 451 [in] BSTR bstrUrl); 452 453 [id(DISPID_SETPHISHINGFILTERSTATUS)] 454 void SetPhishingFilterStatus([in] long PhishingFilterStatus); 455 456 [id(DISPID_WINDOWSTATECHANGED)] 457 void WindowStateChanged( 458 [in] DWORD dwWindowStateFlags, 459 [in] DWORD dwValidFlagsMask); 460 461 [id(DISPID_NEWPROCESS)] 462 void NewProcess( 463 [in] long lCauseFlag, 464 [in] IDispatch *pWB2, 465 [in, out] VARIANT_BOOL *Cancel); 466 467 [id(DISPID_THIRDPARTYURLBLOCKED)] 468 void ThirdPartyUrlBlocked( 469 [in] VARIANT *URL, 470 [in] DWORD dwCount); 471 472 [id(DISPID_REDIRECTXDOMAINBLOCKED)] 473 void RedirectXDomainBlocked( 474 [in] IDispatch *pDisp, 475 [in] VARIANT *StartURL, 476 [in] VARIANT *RedirectURL, 477 [in] VARIANT *Frame, 478 [in] VARIANT *StatusCode); 479} 480 481[ 482 helpstring("Microsoft Web Browser Version 1"), 483 threading(apartment), 484 progid("Shell.Explorer.1"), 485 vi_progid("Shell.Explorer"), 486 uuid(eab22ac3-30c1-11cf-a7eb-0000c05bae0b), 487 control 488] 489coclass WebBrowser_V1 490{ 491 interface IWebBrowser2; 492 [default] interface IWebBrowser; 493 [source] dispinterface DWebBrowserEvents2; 494 [default, source] dispinterface DWebBrowserEvents; 495} 496 497[ 498 helpstring("Microsoft Web Browser"), 499 threading(apartment), 500 progid("Shell.Explorer.2"), 501 vi_progid("Shell.Explorer"), 502 uuid(8856f961-340a-11d0-a96b-00c04fd705a2), 503 control 504] 505coclass WebBrowser 506{ 507 [default] interface IWebBrowser2; 508 interface IWebBrowser; 509 [default, source] dispinterface DWebBrowserEvents2; 510 [source] dispinterface DWebBrowserEvents; 511} 512 513[ 514 helpstring("Internet Explorer(Ver 1.0)"), 515 progid("InternetExplorer.Application.1"), 516 vi_progid("InternetExplorer.Application"), 517 uuid(0002df01-0000-0000-c000-000000000046) 518] 519coclass InternetExplorer 520{ 521 [default] interface IWebBrowser2; 522 interface IWebBrowserApp; 523 [default, source] dispinterface DWebBrowserEvents2; 524 [source] dispinterface DWebBrowserEvents; 525} 526 527[ 528 uuid(C08AFD90-F2A1-11D1-8455-00A0C91F3880), 529 hidden 530] 531coclass ShellBrowserWindow 532{ 533 [default] interface IWebBrowser2; 534 interface IWebBrowserApp; 535 [default, source] dispinterface DWebBrowserEvents2; 536 [source] dispinterface DWebBrowserEvents; 537} 538 539typedef 540[ 541 uuid(f41e6981-28e5-11d0-82b4-00a0c90c29c5) 542] 543enum ShellWindowTypeConstants { 544 SWC_EXPLORER = 0, 545 SWC_BROWSER = 1, 546 SWC_3RDPARTY = 2, 547 SWC_CALLBACK = 4, 548 SWC_DESKTOP = 8 549} ShellWindowTypeConstants; 550 551typedef 552[ 553 uuid(7716a370-38Ca-11d0-a48B-00a0c90a8f39) 554] 555enum ShellWindowFindWindowOptions { 556 SWFO_NEEDDISPATCH = 1, 557 SWFO_INCLUDEPENDING = 2, 558 SWFO_COOKIEPASSED = 4 559} ShellWindowFindWindowOptions; 560 561[ 562 uuid(FE4106E0-399A-11D0-A48C-00A0C90A8F39) 563] 564dispinterface DShellWindowsEvents { 565 properties: 566 methods: 567 [id(DISPID_WINDOWREGISTERED)] 568 void WindowRegistered([in] long lCookie); 569 570 [id(DISPID_WINDOWREVOKED)] 571 void WindowRevoked([in] long lCookie); 572} 573 574[ 575 object, 576 oleautomation, 577 uuid(85cb6900-4d95-11cf-960c-0080c7f4ee85), 578 dual 579] 580interface IShellWindows : IDispatch 581{ 582 [propget] HRESULT Count([out, retval] long *Count); 583 584 [id(0)] HRESULT Item( 585 [in, optional] VARIANT index, 586 [out, retval] IDispatch **Folder); 587 588 [id(-4)] HRESULT _NewEnum([out, retval] IUnknown **ppunk); 589 590 [hidden] HRESULT Register( 591 [in] IDispatch *pid, 592 [in] long hWnd, 593 [in] int swClass, 594 [out] long *plCookie); 595 596 [hidden] HRESULT RegisterPending( 597 [in] long lThreadId, 598 [in] VARIANT *pvarloc, 599 [in] VARIANT *pvarlocRoot, 600 [in] int swClass, 601 [out] long *plCookie); 602 603 [hidden] HRESULT Revoke([in] long lCookie); 604 [hidden] HRESULT OnNavigate([in] long lCookie, [in] VARIANT *pvarLoc); 605 [hidden] HRESULT OnActivated([in] long lCookie, [in] VARIANT_BOOL fActive); 606 [hidden] HRESULT FindWindowSW( 607 [in] VARIANT *pvarLoc, 608 [in] VARIANT *pvarLocRoot, 609 [in] int swClass, 610 [out] long *phwnd, 611 [in] int swfwOptions, 612 [out, retval] IDispatch **ppdispOut); 613 614 [hidden] HRESULT OnCreated([in] long lCookie, [in] IUnknown *punk); 615 [hidden] HRESULT ProcessAttachDetach([in] VARIANT_BOOL fAttach); 616} 617 618[ 619 threading(apartment), 620 uuid(9ba05972-f6a8-11cf-a442-00a0c90a8f39) 621] 622coclass ShellWindows 623{ 624 [default] interface IShellWindows; 625 [default, source] dispinterface DShellWindowsEvents; 626} 627 628[ 629 odl, 630 uuid(729fe2f8-1ea8-11d1-8f85-00C04fc2fbe1), 631 dual, 632 oleautomation 633] 634interface IShellUIHelper : IDispatch { 635 [id(1), hidden] HRESULT ResetFirstBootMode(); 636 [id(2), hidden] HRESULT ResetSafeMode(); 637 [id(3), hidden] HRESULT RefreshOfflineDesktop(); 638 639 [id(4)] HRESULT AddFavorite( 640 [in] BSTR URL, 641 [in, optional] VARIANT* Title); 642 643 [id(5)] HRESULT AddChannel([in] BSTR URL); 644 645 [id(6)] HRESULT AddDesktopComponent( 646 [in] BSTR URL, 647 [in] BSTR Type, 648 [in, optional] VARIANT *Left, 649 [in, optional] VARIANT *Top, 650 [in, optional] VARIANT *Width, 651 [in, optional] VARIANT *Height); 652 653 [id(7)] HRESULT IsSubscribed( 654 [in] BSTR URL, 655 [out, retval] VARIANT_BOOL *pBool); 656 657 [id(8)] HRESULT NavigateAndFind( 658 [in] BSTR URL, 659 [in] BSTR strQuery, 660 [in] VARIANT *varTargetFrame); 661 662 [id(9)] HRESULT ImportExportFavorites( 663 [in] VARIANT_BOOL fImport, 664 [in] BSTR strImpExpPath); 665 666 [id(10)] HRESULT AutoCompleteSaveForm([in, optional] VARIANT *Form); 667 668 [id(11)] HRESULT AutoScan( 669 [in] BSTR strSearch, 670 [in] BSTR strFailureUrl, 671 [in, optional] VARIANT *pvarTargetFrame); 672 673 [id(12), hidden] HRESULT AutoCompleteAttach([in, optional] VARIANT *Reserved); 674 675 [id(13)] HRESULT ShowBrowserUI( 676 [in] BSTR bstrName, 677 [in] VARIANT *pvarIn, 678 [out, retval] VARIANT *pvarOut); 679} 680 681[ 682 uuid(a7fe6eda-1932-4281-b881-87b31b8bc52c), 683 oleautomation, 684 dual 685] 686interface IShellUIHelper2 : IShellUIHelper { 687 [id(DISPID_ADDSEARCHPROVIDER)] 688 HRESULT AddSearchProvider([in] BSTR URL); 689 690 [id(DISPID_RUNONCESHOWN)] 691 HRESULT RunOnceShown(); 692 693 [id(DISPID_SKIPRUNONCE)] 694 HRESULT SkipRunOnce(); 695 696 [id(DISPID_CUSTOMIZESETTINGS)] HRESULT CustomizeSettings( 697 [in] VARIANT_BOOL fSQM, 698 [in] VARIANT_BOOL fPhishing, 699 [in] BSTR bstrLocale); 700 701 [id(DISPID_SQMENABLED)] 702 HRESULT SqmEnabled([out, retval] VARIANT_BOOL *pfEnabled); 703 704 [id(DISPID_PHISHINGENABLED)] 705 HRESULT PhishingEnabled([out, retval] VARIANT_BOOL *pfEnabled); 706 707 [id(DISPID_BRANDIMAGEURI)] 708 HRESULT BrandImageUri([out, retval] BSTR *pbstrUri); 709 710 [id(DISPID_SKIPTABSWELCOME)] 711 HRESULT SkipTabsWelcome(); 712 713 [id(DISPID_DIAGNOSECONNECTION)] 714 HRESULT DiagnoseConnection(); 715 716 [id(DISPID_CUSTOMIZECLEARTYPE)] 717 HRESULT CustomizeClearType([in] VARIANT_BOOL fSet); 718 719 [id(DISPID_ISSEARCHPROVIDERINSTALLED)] 720 HRESULT IsSearchProviderInstalled( 721 [in] BSTR URL, 722 [out, retval] DWORD *pdwResult); 723 724 [id(DISPID_ISSEARCHMIGRATED)] 725 HRESULT IsSearchMigrated([out, retval] VARIANT_BOOL *pfMigrated); 726 727 [id(DISPID_DEFAULTSEARCHPROVIDER)] 728 HRESULT DefaultSearchProvider([out, retval] BSTR *pbstrName); 729 730 [id(DISPID_RUNONCEREQUIREDSETTINGSCOMPLETE)] 731 HRESULT RunOnceRequiredSettingsComplete([in] VARIANT_BOOL fComplete); 732 733 [id(DISPID_RUNONCEHASSHOWN)] 734 HRESULT RunOnceHasShown([out, retval] VARIANT_BOOL *pfShown); 735 736 [id(DISPID_SEARCHGUIDEURL)] 737 HRESULT SearchGuideUrl([out, retval] BSTR *pbstrUrl); 738} 739 740[ 741 helpstring("Microsoft Shell UI Helper"), 742 threading(apartment), 743 progid("Shell.UIHelper.1"), 744 vi_progid("Shell.UIHelper"), 745 uuid(64ab4bb7-111e-11d1-8f79-00c04fc2fbe1) 746] 747coclass ShellUIHelper { 748 [default] interface IShellUIHelper2; 749} 750 751[ 752 uuid(55136806-b2de-11d1-b9f2-00a0c98bc547) 753] 754dispinterface DShellNameSpaceEvents { 755 properties: 756 methods: 757 [id(1)] void FavoritesSelectionChange( 758 [in] long cItems, 759 [in] long hItem, 760 [in] BSTR strName, 761 [in] BSTR strUrl, 762 [in] long cVisits, 763 [in] BSTR strDate, 764 [in] long fAvailableOffline); 765 766 [id(2)] void SelectionChange(); 767 [id(3)] void DoubleClick(); 768 [id(4)] void Initialized(); 769} 770 771[ 772 odl, 773 uuid(55136804-b2de-11d1-b9f2-00a0c98bc547), 774 hidden, 775 dual, 776 oleautomation 777] 778interface IShellFavoritesNameSpace : IDispatch { 779 [id(1)] HRESULT MoveSelectionUp(); 780 [id(2)] HRESULT MoveSelectionDown(); 781 [id(3)] HRESULT ResetSort(); 782 [id(4)] HRESULT NewFolder(); 783 [id(5)] HRESULT Synchronize(); 784 [id(6)] HRESULT Import(); 785 [id(7)] HRESULT Export(); 786 [id(8)] HRESULT InvokeContextMenuCommand([in] BSTR strCommand); 787 [id(9)] HRESULT MoveSelectionTo(); 788 [id(10), propget] HRESULT SubscriptionsEnabled([out, retval] VARIANT_BOOL *pBool); 789 [id(11)] HRESULT CreateSubscriptionForSelection([out, retval] VARIANT_BOOL *pBool); 790 [id(12)] HRESULT DeleteSubscriptionForSelection([out, retval] VARIANT_BOOL *pBool); 791 [id(13)] HRESULT SetRoot([in] BSTR bstrFullPath); 792} 793 794[ 795 odl, 796 uuid(e572d3c9-37be-4ae2-825d-d521763e3108), 797 hidden, 798 dual, 799 oleautomation 800] 801interface IShellNameSpace : IShellFavoritesNameSpace { 802 [id(14), propget] HRESULT EnumOptions([out, retval] long* pgrfEnumFlags); 803 [id(14), propput] HRESULT EnumOptions([in] long pgrfEnumFlags); 804 805 [id(15), propget] HRESULT SelectedItem([out, retval] IDispatch **pItem); 806 [id(15), propput] HRESULT SelectedItem([in] IDispatch *pItem); 807 808 [id(16), propget] HRESULT Root([out, retval] VARIANT *pvar); 809 [id(16), propput] HRESULT Root([in] VARIANT pvar); 810 811 [id(17), propget] HRESULT Depth([out, retval] int *piDepth); 812 [id(17), propput] HRESULT Depth([in] int piDepth); 813 814 [id(18), propget] HRESULT Mode([out, retval] unsigned int *puMode); 815 [id(18), propput] HRESULT Mode([in] unsigned int puMode); 816 817 [id(19), propget] HRESULT Flags([out, retval] unsigned long *pdwFlags); 818 [id(19), propput] HRESULT Flags([in] unsigned long pdwFlags); 819 820 [id(20), propput] HRESULT TVFlags([in] unsigned long dwFlags); 821 [id(20), propget] HRESULT TVFlags([out, retval] unsigned long *dwFlags); 822 823 [id(21), propget] HRESULT Columns([out, retval] BSTR *bstrColumns); 824 [id(21), propput] HRESULT Columns([in] BSTR bstrColumns); 825 826 [id(22), propget] HRESULT CountViewTypes([out, retval] int *piTypes); 827 828 [id(23)] HRESULT SetViewType([in] int iType); 829 [id(24)] HRESULT SelectedItems([out, retval] IDispatch **ppid); 830 [id(25)] HRESULT Expand([in] VARIANT var, int iDepth); 831 [id(26)] HRESULT UnselectAll(); 832} 833 834[ 835 helpstring("Shell Name Space"), 836 threading(apartment), 837 progid("ShellNameSpace.ShellNameSpace.1"), 838 vi_progid("ShellNameSpace.ShellNameSpace"), 839 uuid(2f2f1f96-2bc1-4b1c-be28-ea3774f4676a) 840] 841coclass ShellShellNameSpace { 842 [default] interface IShellNameSpace; 843 [default, source] dispinterface DShellNameSpaceEvents; 844} 845 846[ 847 helpstring("Shell Name Space"), 848 threading(apartment), 849 progid("ShellNameSpace.ShellNameSpace.1"), 850 vi_progid("ShellNameSpace.ShellNameSpace"), 851 uuid(55136805-b2de-11d1-b9f2-00a0c98bc547) 852] 853coclass ShellNameSpace { 854 [default] interface IShellNameSpace; 855 [default, source] dispinterface DShellNameSpaceEvents; 856} 857 858[ 859 odl, 860 uuid(f3470f24-15fd-11d2-bb2e-00805ff7efca), 861 hidden, 862 dual, 863 oleautomation 864] 865interface IScriptErrorList : IDispatch { 866 [id(10)] HRESULT advanceError(); 867 [id(11)] HRESULT retreatError(); 868 [id(12)] HRESULT canAdvanceError([out, retval] long *pfCanAdvance); 869 [id(13)] HRESULT canRetreatError([out, retval] long *pfCanRetreat); 870 [id(14)] HRESULT getErrorLine([out, retval] long *plLine); 871 [id(15)] HRESULT getErrorChar([out, retval] long *plChar); 872 [id(16)] HRESULT getErrorCode([out, retval] long *plCode); 873 [id(17)] HRESULT getErrorMsg([out, retval] BSTR *pstr); 874 [id(18)] HRESULT getErrorUrl([out, retval] BSTR *pstr); 875 [id(23)] HRESULT getAlwaysShowLockState([out, retval] long *pfAlwaysShowLocked); 876 [id(19)] HRESULT getDetailsPaneOpen([out, retval] long *pfDetailsPaneOpen); 877 [id(20)] HRESULT setDetailsPaneOpen(long fDetailsPaneOpen); 878 [id(21)] HRESULT getPerErrorDisplay([out, retval] long *pfPerErrorDisplay); 879 [id(22)] HRESULT setPerErrorDisplay(long fPerErrorDisplay); 880} 881 882[ 883 uuid(efd01300-160f-11d2-bb2e-00805ff7efca), 884 hidden, 885 noncreatable 886] 887coclass CScriptErrorList { 888 [default] interface IScriptErrorList; 889} 890 891[ 892 odl, 893 uuid(ba9239a4-3dd5-11d2-bf8b-00c04fb93661), 894 hidden, 895 dual, 896 oleautomation 897] 898interface ISearch : IDispatch { 899 [propget] HRESULT Title([out, retval] BSTR *pbstrTitle); 900 [propget] HRESULT Id([out, retval] BSTR *pbstrId); 901 [propget] HRESULT URL([out, retval] BSTR *pbstrUrl); 902} 903 904[ 905 odl, 906 uuid(47c922a2-3dd5-11d2-bf8b-00c04fb93661), 907 hidden, 908 dual, 909 oleautomation 910] 911interface ISearches : IDispatch { 912 [propget] HRESULT Count([out, retval] long *plCount); 913 [propget] HRESULT Default([out, retval] BSTR *pbstrDefault); 914 915 HRESULT Item( 916 [in, optional] VARIANT index, 917 [out, retval] ISearch **ppid); 918 919 [id(-4)] HRESULT _NewEnum([out, retval] IUnknown **ppunk); 920} 921 922[ 923 odl, 924 uuid(72423e8f-8011-11d2-be79-00a0c9a83da1), 925 hidden, 926 dual, 927 oleautomation 928] 929interface ISearchAssistantOC : IDispatch { 930 [id(1)] HRESULT AddNextMenuItem([in] BSTR bstrText, [in] long idItem); 931 [id(2)] HRESULT SetDefaultSearchUrl([in] BSTR bstrUrl); 932 [id(3)] HRESULT NavigateToDefaultSearch(); 933 934 [id(4)] HRESULT IsRestricted( 935 [in] BSTR bstrGuid, 936 [out, retval] VARIANT_BOOL *pVal); 937 938 [id(5), propget] HRESULT ShellFeaturesEnabled([out, retval] VARIANT_BOOL *pVal); 939 [id(6), propget] HRESULT SearchAssistantDefault([out, retval] VARIANT_BOOL *pVal); 940 [id(7), propget] HRESULT Searches([out, retval] ISearches **ppid); 941 [id(8), propget] HRESULT InWebFolder([out, retval] VARIANT_BOOL *pVal); 942 943 [id(9)] HRESULT PutProperty( 944 [in] VARIANT_BOOL bPerLocale, 945 [in] BSTR bstrName, 946 [in] BSTR bstrValue); 947 948 [id(10)] HRESULT GetProperty( 949 [in] VARIANT_BOOL bPerLocale, 950 [in] BSTR bstrName, 951 [out, retval] BSTR *pbstrValue); 952 953 [id(11), propput] HRESULT EventHandled([in] VARIANT_BOOL rhs); 954 [id(12)] HRESULT ResetNextMenu(); 955 [id(13)] HRESULT FindOnWeb(); 956 [id(14)] HRESULT FindFilesOrFolders(); 957 [id(15)] HRESULT FindComputer(); 958 [id(16)] HRESULT FindPrinter(); 959 [id(17)] HRESULT FindPeople(); 960 961 [id(18)] HRESULT GetSearchAssistantURL( 962 [in] VARIANT_BOOL bSubstitute, 963 [in] VARIANT_BOOL bCustomize, 964 [out, retval] BSTR *pbstrValue); 965 966 [id(19)] HRESULT NotifySearchSettingsChanged(); 967 968 [id(20), propput] HRESULT ASProvider([in] BSTR pProvider); 969 [id(20), propget] HRESULT ASProvider([out, retval] BSTR *pProvider); 970 971 [id(21), propput] HRESULT ASSetting([in] int pSetting); 972 [id(21), propget] HRESULT ASSetting([out, retval] int *pSetting); 973 974 [id(22)] HRESULT NETDetectNextNavigate(); 975 [id(23)] HRESULT PutFindText([in] BSTR FindText); 976 [id(24), propget] HRESULT Version([out, retval] int *pVersion); 977 978 [id(25)] HRESULT EncodeString( 979 [in] BSTR bstrValue, 980 [in] BSTR bstrCharSet, 981 [in] VARIANT_BOOL bUseUTF8, 982 [out, retval] BSTR* pbstrResult); 983} 984 985[ 986 odl, 987 uuid(72423e8f-8011-11d2-be79-00a0c9a83da2), 988 hidden, 989 dual, 990 oleautomation 991] 992interface ISearchAssistantOC2 : ISearchAssistantOC { 993 [id(26), propget] HRESULT ShowFindPrinter([out, retval] VARIANT_BOOL *pbShowFindPrinter); 994} 995 996[ 997 odl, 998 uuid(72423e8f-8011-11d2-be79-00a0c9a83da3), 999 hidden, 1000 dual, 1001 oleautomation 1002] 1003interface ISearchAssistantOC3 : ISearchAssistantOC2 { 1004 [id(27), propget] HRESULT SearchCompanionAvailable([out, retval] VARIANT_BOOL *pbAvailable); 1005 1006 [id(28), propput] HRESULT UseSearchCompanion([in] VARIANT_BOOL pbUseSC); 1007 [id(28), propget] HRESULT UseSearchCompanion([out, retval] VARIANT_BOOL *pbUseSC); 1008} 1009 1010[ 1011 uuid(1611fdda-445b-11d2-85de-00C04fa35c89), 1012 hidden 1013] 1014dispinterface _SearchAssistantEvents { 1015 properties: 1016 methods: 1017 [id(1)] void OnNextMenuSelect([in] long idItem); 1018 [id(2)] void OnNewSearch(); 1019} 1020 1021[ 1022 helpstring("SearchAssistantOC"), 1023 threading(apartment), 1024 progid("SearchAssistantOC.SearchAssistantOC.1"), 1025 vi_progid("SearchAssistantOC.SearchAssistantOC"), 1026 uuid(2e71fd0f-aab1-42c0-9146-6d2c4edcf07d), 1027 hidden 1028] 1029coclass ShellSearchAssistantOC { 1030 [default] interface ISearchAssistantOC3; 1031 [default, source] dispinterface _SearchAssistantEvents; 1032} 1033 1034[ 1035 threading(apartment), 1036 progid("SearchAssistantOC.SearchAssistantOC.1"), 1037 vi_progid("SearchAssistantOC.SearchAssistantOC"), 1038 uuid(b45ff030-4447-11d2-85de-00C04fa35c89), 1039 hidden 1040] 1041coclass SearchAssistantOC { 1042 [default] interface ISearchAssistantOC3; 1043 [default, source] dispinterface _SearchAssistantEvents; 1044} 1045 1046[ 1047 uuid(60890160-69f0-11d1-b758-00a0c90564fe), 1048 hidden 1049] 1050dispinterface DSearchCommandEvents { 1051 properties: 1052 methods: 1053 [id(DISPID_SEARCHSTART)] void SearchStart(); 1054 [id(DISPID_SEARCHCOMPLETE)] void SearchComplete(); 1055 [id(DISPID_SEARCHABORT)] void SearchAbort(); 1056} 1057 1058} /* library */ 1059