1 /*** Autogenerated by WIDL 6.4 from include/shldisp.idl - Do not edit ***/ 2 3 #ifdef _WIN32 4 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 5 #define __REQUIRED_RPCNDR_H_VERSION__ 475 6 #endif 7 #include <rpc.h> 8 #include <rpcndr.h> 9 #endif 10 11 #ifndef COM_NO_WINDOWS_H 12 #include <windows.h> 13 #include <ole2.h> 14 #endif 15 16 #ifndef __shldisp_h__ 17 #define __shldisp_h__ 18 19 /* Forward declarations */ 20 21 #ifndef __IFolderViewOC_FWD_DEFINED__ 22 #define __IFolderViewOC_FWD_DEFINED__ 23 typedef interface IFolderViewOC IFolderViewOC; 24 #ifdef __cplusplus 25 interface IFolderViewOC; 26 #endif /* __cplusplus */ 27 #endif 28 29 #ifndef __DShellFolderViewEvents_FWD_DEFINED__ 30 #define __DShellFolderViewEvents_FWD_DEFINED__ 31 typedef interface DShellFolderViewEvents DShellFolderViewEvents; 32 #ifdef __cplusplus 33 interface DShellFolderViewEvents; 34 #endif /* __cplusplus */ 35 #endif 36 37 #ifndef __ShellFolderViewOC_FWD_DEFINED__ 38 #define __ShellFolderViewOC_FWD_DEFINED__ 39 #ifdef __cplusplus 40 typedef class ShellFolderViewOC ShellFolderViewOC; 41 #else 42 typedef struct ShellFolderViewOC ShellFolderViewOC; 43 #endif /* defined __cplusplus */ 44 #endif /* defined __ShellFolderViewOC_FWD_DEFINED__ */ 45 46 #ifndef __DFConstraint_FWD_DEFINED__ 47 #define __DFConstraint_FWD_DEFINED__ 48 typedef interface DFConstraint DFConstraint; 49 #ifdef __cplusplus 50 interface DFConstraint; 51 #endif /* __cplusplus */ 52 #endif 53 54 #ifndef __Folder_FWD_DEFINED__ 55 #define __Folder_FWD_DEFINED__ 56 typedef interface Folder Folder; 57 #ifdef __cplusplus 58 interface Folder; 59 #endif /* __cplusplus */ 60 #endif 61 62 #ifndef __Folder2_FWD_DEFINED__ 63 #define __Folder2_FWD_DEFINED__ 64 typedef interface Folder2 Folder2; 65 #ifdef __cplusplus 66 interface Folder2; 67 #endif /* __cplusplus */ 68 #endif 69 70 #ifndef __Folder3_FWD_DEFINED__ 71 #define __Folder3_FWD_DEFINED__ 72 typedef interface Folder3 Folder3; 73 #ifdef __cplusplus 74 interface Folder3; 75 #endif /* __cplusplus */ 76 #endif 77 78 #ifndef __FolderItem_FWD_DEFINED__ 79 #define __FolderItem_FWD_DEFINED__ 80 typedef interface FolderItem FolderItem; 81 #ifdef __cplusplus 82 interface FolderItem; 83 #endif /* __cplusplus */ 84 #endif 85 86 #ifndef __FolderItem2_FWD_DEFINED__ 87 #define __FolderItem2_FWD_DEFINED__ 88 typedef interface FolderItem2 FolderItem2; 89 #ifdef __cplusplus 90 interface FolderItem2; 91 #endif /* __cplusplus */ 92 #endif 93 94 #ifndef __ShellFolderItem_FWD_DEFINED__ 95 #define __ShellFolderItem_FWD_DEFINED__ 96 #ifdef __cplusplus 97 typedef class ShellFolderItem ShellFolderItem; 98 #else 99 typedef struct ShellFolderItem ShellFolderItem; 100 #endif /* defined __cplusplus */ 101 #endif /* defined __ShellFolderItem_FWD_DEFINED__ */ 102 103 #ifndef __FolderItems_FWD_DEFINED__ 104 #define __FolderItems_FWD_DEFINED__ 105 typedef interface FolderItems FolderItems; 106 #ifdef __cplusplus 107 interface FolderItems; 108 #endif /* __cplusplus */ 109 #endif 110 111 #ifndef __FolderItems2_FWD_DEFINED__ 112 #define __FolderItems2_FWD_DEFINED__ 113 typedef interface FolderItems2 FolderItems2; 114 #ifdef __cplusplus 115 interface FolderItems2; 116 #endif /* __cplusplus */ 117 #endif 118 119 #ifndef __FolderItems3_FWD_DEFINED__ 120 #define __FolderItems3_FWD_DEFINED__ 121 typedef interface FolderItems3 FolderItems3; 122 #ifdef __cplusplus 123 interface FolderItems3; 124 #endif /* __cplusplus */ 125 #endif 126 127 #ifndef __FolderItemVerb_FWD_DEFINED__ 128 #define __FolderItemVerb_FWD_DEFINED__ 129 typedef interface FolderItemVerb FolderItemVerb; 130 #ifdef __cplusplus 131 interface FolderItemVerb; 132 #endif /* __cplusplus */ 133 #endif 134 135 #ifndef __FolderItemVerbs_FWD_DEFINED__ 136 #define __FolderItemVerbs_FWD_DEFINED__ 137 typedef interface FolderItemVerbs FolderItemVerbs; 138 #ifdef __cplusplus 139 interface FolderItemVerbs; 140 #endif /* __cplusplus */ 141 #endif 142 143 #ifndef __IShellLinkDual_FWD_DEFINED__ 144 #define __IShellLinkDual_FWD_DEFINED__ 145 typedef interface IShellLinkDual IShellLinkDual; 146 #ifdef __cplusplus 147 interface IShellLinkDual; 148 #endif /* __cplusplus */ 149 #endif 150 151 #ifndef __IShellLinkDual2_FWD_DEFINED__ 152 #define __IShellLinkDual2_FWD_DEFINED__ 153 typedef interface IShellLinkDual2 IShellLinkDual2; 154 #ifdef __cplusplus 155 interface IShellLinkDual2; 156 #endif /* __cplusplus */ 157 #endif 158 159 #ifndef __ShellLinkObject_FWD_DEFINED__ 160 #define __ShellLinkObject_FWD_DEFINED__ 161 #ifdef __cplusplus 162 typedef class ShellLinkObject ShellLinkObject; 163 #else 164 typedef struct ShellLinkObject ShellLinkObject; 165 #endif /* defined __cplusplus */ 166 #endif /* defined __ShellLinkObject_FWD_DEFINED__ */ 167 168 #ifndef __IShellFolderViewDual_FWD_DEFINED__ 169 #define __IShellFolderViewDual_FWD_DEFINED__ 170 typedef interface IShellFolderViewDual IShellFolderViewDual; 171 #ifdef __cplusplus 172 interface IShellFolderViewDual; 173 #endif /* __cplusplus */ 174 #endif 175 176 #ifndef __IShellFolderViewDual2_FWD_DEFINED__ 177 #define __IShellFolderViewDual2_FWD_DEFINED__ 178 typedef interface IShellFolderViewDual2 IShellFolderViewDual2; 179 #ifdef __cplusplus 180 interface IShellFolderViewDual2; 181 #endif /* __cplusplus */ 182 #endif 183 184 #ifndef __IShellFolderViewDual3_FWD_DEFINED__ 185 #define __IShellFolderViewDual3_FWD_DEFINED__ 186 typedef interface IShellFolderViewDual3 IShellFolderViewDual3; 187 #ifdef __cplusplus 188 interface IShellFolderViewDual3; 189 #endif /* __cplusplus */ 190 #endif 191 192 #ifndef __ShellFolderView_FWD_DEFINED__ 193 #define __ShellFolderView_FWD_DEFINED__ 194 #ifdef __cplusplus 195 typedef class ShellFolderView ShellFolderView; 196 #else 197 typedef struct ShellFolderView ShellFolderView; 198 #endif /* defined __cplusplus */ 199 #endif /* defined __ShellFolderView_FWD_DEFINED__ */ 200 201 #ifndef __IShellDispatch_FWD_DEFINED__ 202 #define __IShellDispatch_FWD_DEFINED__ 203 typedef interface IShellDispatch IShellDispatch; 204 #ifdef __cplusplus 205 interface IShellDispatch; 206 #endif /* __cplusplus */ 207 #endif 208 209 #ifndef __IShellDispatch2_FWD_DEFINED__ 210 #define __IShellDispatch2_FWD_DEFINED__ 211 typedef interface IShellDispatch2 IShellDispatch2; 212 #ifdef __cplusplus 213 interface IShellDispatch2; 214 #endif /* __cplusplus */ 215 #endif 216 217 #ifndef __IShellDispatch3_FWD_DEFINED__ 218 #define __IShellDispatch3_FWD_DEFINED__ 219 typedef interface IShellDispatch3 IShellDispatch3; 220 #ifdef __cplusplus 221 interface IShellDispatch3; 222 #endif /* __cplusplus */ 223 #endif 224 225 #ifndef __IShellDispatch4_FWD_DEFINED__ 226 #define __IShellDispatch4_FWD_DEFINED__ 227 typedef interface IShellDispatch4 IShellDispatch4; 228 #ifdef __cplusplus 229 interface IShellDispatch4; 230 #endif /* __cplusplus */ 231 #endif 232 233 #ifndef __IShellDispatch5_FWD_DEFINED__ 234 #define __IShellDispatch5_FWD_DEFINED__ 235 typedef interface IShellDispatch5 IShellDispatch5; 236 #ifdef __cplusplus 237 interface IShellDispatch5; 238 #endif /* __cplusplus */ 239 #endif 240 241 #ifndef __IShellDispatch6_FWD_DEFINED__ 242 #define __IShellDispatch6_FWD_DEFINED__ 243 typedef interface IShellDispatch6 IShellDispatch6; 244 #ifdef __cplusplus 245 interface IShellDispatch6; 246 #endif /* __cplusplus */ 247 #endif 248 249 #ifndef __Shell_FWD_DEFINED__ 250 #define __Shell_FWD_DEFINED__ 251 #ifdef __cplusplus 252 typedef class Shell Shell; 253 #else 254 typedef struct Shell Shell; 255 #endif /* defined __cplusplus */ 256 #endif /* defined __Shell_FWD_DEFINED__ */ 257 258 #ifndef __ShellDispatchInproc_FWD_DEFINED__ 259 #define __ShellDispatchInproc_FWD_DEFINED__ 260 #ifdef __cplusplus 261 typedef class ShellDispatchInproc ShellDispatchInproc; 262 #else 263 typedef struct ShellDispatchInproc ShellDispatchInproc; 264 #endif /* defined __cplusplus */ 265 #endif /* defined __ShellDispatchInproc_FWD_DEFINED__ */ 266 267 #ifndef __IFileSearchBand_FWD_DEFINED__ 268 #define __IFileSearchBand_FWD_DEFINED__ 269 typedef interface IFileSearchBand IFileSearchBand; 270 #ifdef __cplusplus 271 interface IFileSearchBand; 272 #endif /* __cplusplus */ 273 #endif 274 275 #ifndef __FileSearchBand_FWD_DEFINED__ 276 #define __FileSearchBand_FWD_DEFINED__ 277 #ifdef __cplusplus 278 typedef class FileSearchBand FileSearchBand; 279 #else 280 typedef struct FileSearchBand FileSearchBand; 281 #endif /* defined __cplusplus */ 282 #endif /* defined __FileSearchBand_FWD_DEFINED__ */ 283 284 #ifndef __IWebWizardHost_FWD_DEFINED__ 285 #define __IWebWizardHost_FWD_DEFINED__ 286 typedef interface IWebWizardHost IWebWizardHost; 287 #ifdef __cplusplus 288 interface IWebWizardHost; 289 #endif /* __cplusplus */ 290 #endif 291 292 #ifndef __INewWDEvents_FWD_DEFINED__ 293 #define __INewWDEvents_FWD_DEFINED__ 294 typedef interface INewWDEvents INewWDEvents; 295 #ifdef __cplusplus 296 interface INewWDEvents; 297 #endif /* __cplusplus */ 298 #endif 299 300 #ifndef __IAutoComplete_FWD_DEFINED__ 301 #define __IAutoComplete_FWD_DEFINED__ 302 typedef interface IAutoComplete IAutoComplete; 303 #ifdef __cplusplus 304 interface IAutoComplete; 305 #endif /* __cplusplus */ 306 #endif 307 308 #ifndef __IAutoComplete2_FWD_DEFINED__ 309 #define __IAutoComplete2_FWD_DEFINED__ 310 typedef interface IAutoComplete2 IAutoComplete2; 311 #ifdef __cplusplus 312 interface IAutoComplete2; 313 #endif /* __cplusplus */ 314 #endif 315 316 #ifndef __IEnumACString_FWD_DEFINED__ 317 #define __IEnumACString_FWD_DEFINED__ 318 typedef interface IEnumACString IEnumACString; 319 #ifdef __cplusplus 320 interface IEnumACString; 321 #endif /* __cplusplus */ 322 #endif 323 324 #ifndef __IDataObjectAsyncCapability_FWD_DEFINED__ 325 #define __IDataObjectAsyncCapability_FWD_DEFINED__ 326 typedef interface IDataObjectAsyncCapability IDataObjectAsyncCapability; 327 #ifdef __cplusplus 328 interface IDataObjectAsyncCapability; 329 #endif /* __cplusplus */ 330 #endif 331 332 /* Headers for imported files */ 333 334 #include <ocidl.h> 335 336 #ifdef __cplusplus 337 extern "C" { 338 #endif 339 340 #include <winapifamily.h> 341 342 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 343 #ifndef __DShellFolderViewEvents_FWD_DEFINED__ 344 #define __DShellFolderViewEvents_FWD_DEFINED__ 345 typedef interface DShellFolderViewEvents DShellFolderViewEvents; 346 #ifdef __cplusplus 347 interface DShellFolderViewEvents; 348 #endif /* __cplusplus */ 349 #endif 350 351 #ifndef __IAutoComplete_FWD_DEFINED__ 352 #define __IAutoComplete_FWD_DEFINED__ 353 typedef interface IAutoComplete IAutoComplete; 354 #ifdef __cplusplus 355 interface IAutoComplete; 356 #endif /* __cplusplus */ 357 #endif 358 359 #ifndef __FolderItem_FWD_DEFINED__ 360 #define __FolderItem_FWD_DEFINED__ 361 typedef interface FolderItem FolderItem; 362 #ifdef __cplusplus 363 interface FolderItem; 364 #endif /* __cplusplus */ 365 #endif 366 367 #ifndef __FolderItems_FWD_DEFINED__ 368 #define __FolderItems_FWD_DEFINED__ 369 typedef interface FolderItems FolderItems; 370 #ifdef __cplusplus 371 interface FolderItems; 372 #endif /* __cplusplus */ 373 #endif 374 375 #ifndef __FolderItemVerb_FWD_DEFINED__ 376 #define __FolderItemVerb_FWD_DEFINED__ 377 typedef interface FolderItemVerb FolderItemVerb; 378 #ifdef __cplusplus 379 interface FolderItemVerb; 380 #endif /* __cplusplus */ 381 #endif 382 383 #ifndef __FolderItemVerbs_FWD_DEFINED__ 384 #define __FolderItemVerbs_FWD_DEFINED__ 385 typedef interface FolderItemVerbs FolderItemVerbs; 386 #ifdef __cplusplus 387 interface FolderItemVerbs; 388 #endif /* __cplusplus */ 389 #endif 390 391 #ifndef __Shell32_LIBRARY_DEFINED__ 392 #define __Shell32_LIBRARY_DEFINED__ 393 394 DEFINE_GUID(LIBID_Shell32, 0x50a7e9b0, 0x70ef, 0x11d1, 0xb7,0x5a, 0x00,0xa0,0xc9,0x05,0x64,0xfe); 395 396 /***************************************************************************** 397 * IFolderViewOC interface 398 */ 399 #ifndef __IFolderViewOC_INTERFACE_DEFINED__ 400 #define __IFolderViewOC_INTERFACE_DEFINED__ 401 402 DEFINE_GUID(IID_IFolderViewOC, 0x9ba05970, 0xf6a8, 0x11cf, 0xa4,0x42, 0x00,0xa0,0xc9,0x0a,0x8f,0x39); 403 #if defined(__cplusplus) && !defined(CINTERFACE) 404 MIDL_INTERFACE("9ba05970-f6a8-11cf-a442-00a0c90a8f39") 405 IFolderViewOC : public IDispatch 406 { 407 virtual HRESULT STDMETHODCALLTYPE SetFolderView( 408 IDispatch *pdisp) = 0; 409 410 }; 411 #ifdef __CRT_UUID_DECL 412 __CRT_UUID_DECL(IFolderViewOC, 0x9ba05970, 0xf6a8, 0x11cf, 0xa4,0x42, 0x00,0xa0,0xc9,0x0a,0x8f,0x39) 413 #endif 414 #else 415 typedef struct IFolderViewOCVtbl { 416 BEGIN_INTERFACE 417 418 /*** IUnknown methods ***/ 419 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 420 IFolderViewOC *This, 421 REFIID riid, 422 void **ppvObject); 423 424 ULONG (STDMETHODCALLTYPE *AddRef)( 425 IFolderViewOC *This); 426 427 ULONG (STDMETHODCALLTYPE *Release)( 428 IFolderViewOC *This); 429 430 /*** IDispatch methods ***/ 431 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 432 IFolderViewOC *This, 433 UINT *pctinfo); 434 435 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 436 IFolderViewOC *This, 437 UINT iTInfo, 438 LCID lcid, 439 ITypeInfo **ppTInfo); 440 441 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 442 IFolderViewOC *This, 443 REFIID riid, 444 LPOLESTR *rgszNames, 445 UINT cNames, 446 LCID lcid, 447 DISPID *rgDispId); 448 449 HRESULT (STDMETHODCALLTYPE *Invoke)( 450 IFolderViewOC *This, 451 DISPID dispIdMember, 452 REFIID riid, 453 LCID lcid, 454 WORD wFlags, 455 DISPPARAMS *pDispParams, 456 VARIANT *pVarResult, 457 EXCEPINFO *pExcepInfo, 458 UINT *puArgErr); 459 460 /*** IFolderViewOC methods ***/ 461 HRESULT (STDMETHODCALLTYPE *SetFolderView)( 462 IFolderViewOC *This, 463 IDispatch *pdisp); 464 465 END_INTERFACE 466 } IFolderViewOCVtbl; 467 468 interface IFolderViewOC { 469 CONST_VTBL IFolderViewOCVtbl* lpVtbl; 470 }; 471 472 #ifdef COBJMACROS 473 #ifndef WIDL_C_INLINE_WRAPPERS 474 /*** IUnknown methods ***/ 475 #define IFolderViewOC_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 476 #define IFolderViewOC_AddRef(This) (This)->lpVtbl->AddRef(This) 477 #define IFolderViewOC_Release(This) (This)->lpVtbl->Release(This) 478 /*** IDispatch methods ***/ 479 #define IFolderViewOC_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 480 #define IFolderViewOC_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 481 #define IFolderViewOC_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 482 #define IFolderViewOC_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 483 /*** IFolderViewOC methods ***/ 484 #define IFolderViewOC_SetFolderView(This,pdisp) (This)->lpVtbl->SetFolderView(This,pdisp) 485 #else 486 /*** IUnknown methods ***/ 487 static FORCEINLINE HRESULT IFolderViewOC_QueryInterface(IFolderViewOC* This,REFIID riid,void **ppvObject) { 488 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 489 } 490 static FORCEINLINE ULONG IFolderViewOC_AddRef(IFolderViewOC* This) { 491 return This->lpVtbl->AddRef(This); 492 } 493 static FORCEINLINE ULONG IFolderViewOC_Release(IFolderViewOC* This) { 494 return This->lpVtbl->Release(This); 495 } 496 /*** IDispatch methods ***/ 497 static FORCEINLINE HRESULT IFolderViewOC_GetTypeInfoCount(IFolderViewOC* This,UINT *pctinfo) { 498 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 499 } 500 static FORCEINLINE HRESULT IFolderViewOC_GetTypeInfo(IFolderViewOC* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 501 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 502 } 503 static FORCEINLINE HRESULT IFolderViewOC_GetIDsOfNames(IFolderViewOC* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 504 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 505 } 506 static FORCEINLINE HRESULT IFolderViewOC_Invoke(IFolderViewOC* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 507 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 508 } 509 /*** IFolderViewOC methods ***/ 510 static FORCEINLINE HRESULT IFolderViewOC_SetFolderView(IFolderViewOC* This,IDispatch *pdisp) { 511 return This->lpVtbl->SetFolderView(This,pdisp); 512 } 513 #endif 514 #endif 515 516 #endif 517 518 519 #endif /* __IFolderViewOC_INTERFACE_DEFINED__ */ 520 521 /***************************************************************************** 522 * DShellFolderViewEvents dispinterface 523 */ 524 #ifndef __DShellFolderViewEvents_DISPINTERFACE_DEFINED__ 525 #define __DShellFolderViewEvents_DISPINTERFACE_DEFINED__ 526 527 DEFINE_GUID(DIID_DShellFolderViewEvents, 0x62112aa2, 0xebe4, 0x11cf, 0xa5,0xfb, 0x00,0x20,0xaf,0xe7,0x29,0x2d); 528 #if defined(__cplusplus) && !defined(CINTERFACE) 529 MIDL_INTERFACE("62112aa2-ebe4-11cf-a5fb-0020afe7292d") 530 DShellFolderViewEvents : public IDispatch 531 { 532 }; 533 #ifdef __CRT_UUID_DECL 534 __CRT_UUID_DECL(DShellFolderViewEvents, 0x62112aa2, 0xebe4, 0x11cf, 0xa5,0xfb, 0x00,0x20,0xaf,0xe7,0x29,0x2d) 535 #endif 536 #else 537 typedef struct DShellFolderViewEventsVtbl { 538 BEGIN_INTERFACE 539 540 /*** IUnknown methods ***/ 541 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 542 DShellFolderViewEvents *This, 543 REFIID riid, 544 void **ppvObject); 545 546 ULONG (STDMETHODCALLTYPE *AddRef)( 547 DShellFolderViewEvents *This); 548 549 ULONG (STDMETHODCALLTYPE *Release)( 550 DShellFolderViewEvents *This); 551 552 /*** IDispatch methods ***/ 553 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 554 DShellFolderViewEvents *This, 555 UINT *pctinfo); 556 557 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 558 DShellFolderViewEvents *This, 559 UINT iTInfo, 560 LCID lcid, 561 ITypeInfo **ppTInfo); 562 563 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 564 DShellFolderViewEvents *This, 565 REFIID riid, 566 LPOLESTR *rgszNames, 567 UINT cNames, 568 LCID lcid, 569 DISPID *rgDispId); 570 571 HRESULT (STDMETHODCALLTYPE *Invoke)( 572 DShellFolderViewEvents *This, 573 DISPID dispIdMember, 574 REFIID riid, 575 LCID lcid, 576 WORD wFlags, 577 DISPPARAMS *pDispParams, 578 VARIANT *pVarResult, 579 EXCEPINFO *pExcepInfo, 580 UINT *puArgErr); 581 582 END_INTERFACE 583 } DShellFolderViewEventsVtbl; 584 585 interface DShellFolderViewEvents { 586 CONST_VTBL DShellFolderViewEventsVtbl* lpVtbl; 587 }; 588 589 #ifdef COBJMACROS 590 #ifndef WIDL_C_INLINE_WRAPPERS 591 /*** IUnknown methods ***/ 592 #define DShellFolderViewEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 593 #define DShellFolderViewEvents_AddRef(This) (This)->lpVtbl->AddRef(This) 594 #define DShellFolderViewEvents_Release(This) (This)->lpVtbl->Release(This) 595 /*** IDispatch methods ***/ 596 #define DShellFolderViewEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 597 #define DShellFolderViewEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 598 #define DShellFolderViewEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 599 #define DShellFolderViewEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 600 #else 601 /*** IUnknown methods ***/ 602 static FORCEINLINE HRESULT DShellFolderViewEvents_QueryInterface(DShellFolderViewEvents* This,REFIID riid,void **ppvObject) { 603 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 604 } 605 static FORCEINLINE ULONG DShellFolderViewEvents_AddRef(DShellFolderViewEvents* This) { 606 return This->lpVtbl->AddRef(This); 607 } 608 static FORCEINLINE ULONG DShellFolderViewEvents_Release(DShellFolderViewEvents* This) { 609 return This->lpVtbl->Release(This); 610 } 611 /*** IDispatch methods ***/ 612 static FORCEINLINE HRESULT DShellFolderViewEvents_GetTypeInfoCount(DShellFolderViewEvents* This,UINT *pctinfo) { 613 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 614 } 615 static FORCEINLINE HRESULT DShellFolderViewEvents_GetTypeInfo(DShellFolderViewEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 616 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 617 } 618 static FORCEINLINE HRESULT DShellFolderViewEvents_GetIDsOfNames(DShellFolderViewEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 619 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 620 } 621 static FORCEINLINE HRESULT DShellFolderViewEvents_Invoke(DShellFolderViewEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 622 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 623 } 624 #endif 625 #endif 626 627 #endif 628 629 #endif /* __DShellFolderViewEvents_DISPINTERFACE_DEFINED__ */ 630 631 /***************************************************************************** 632 * ShellFolderViewOC coclass 633 */ 634 635 DEFINE_GUID(CLSID_ShellFolderViewOC, 0x9ba05971, 0xf6a8, 0x11cf, 0xa4,0x42, 0x00,0xa0,0xc9,0x0a,0x8f,0x39); 636 637 #ifdef __cplusplus 638 class DECLSPEC_UUID("9ba05971-f6a8-11cf-a442-00a0c90a8f39") ShellFolderViewOC; 639 #ifdef __CRT_UUID_DECL 640 __CRT_UUID_DECL(ShellFolderViewOC, 0x9ba05971, 0xf6a8, 0x11cf, 0xa4,0x42, 0x00,0xa0,0xc9,0x0a,0x8f,0x39) 641 #endif 642 #endif 643 644 /***************************************************************************** 645 * DFConstraint interface 646 */ 647 #ifndef __DFConstraint_INTERFACE_DEFINED__ 648 #define __DFConstraint_INTERFACE_DEFINED__ 649 650 DEFINE_GUID(IID_DFConstraint, 0x4a3df050, 0x23bd, 0x11d2, 0x93,0x9f, 0x00,0xa0,0xc9,0x1e,0xed,0xba); 651 #if defined(__cplusplus) && !defined(CINTERFACE) 652 MIDL_INTERFACE("4a3df050-23bd-11d2-939f-00a0c91eedba") 653 DFConstraint : public IDispatch 654 { 655 virtual HRESULT STDMETHODCALLTYPE get_Name( 656 BSTR *pbs) = 0; 657 658 virtual HRESULT STDMETHODCALLTYPE get_Value( 659 VARIANT *pv) = 0; 660 661 }; 662 #ifdef __CRT_UUID_DECL 663 __CRT_UUID_DECL(DFConstraint, 0x4a3df050, 0x23bd, 0x11d2, 0x93,0x9f, 0x00,0xa0,0xc9,0x1e,0xed,0xba) 664 #endif 665 #else 666 typedef struct DFConstraintVtbl { 667 BEGIN_INTERFACE 668 669 /*** IUnknown methods ***/ 670 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 671 DFConstraint *This, 672 REFIID riid, 673 void **ppvObject); 674 675 ULONG (STDMETHODCALLTYPE *AddRef)( 676 DFConstraint *This); 677 678 ULONG (STDMETHODCALLTYPE *Release)( 679 DFConstraint *This); 680 681 /*** IDispatch methods ***/ 682 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 683 DFConstraint *This, 684 UINT *pctinfo); 685 686 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 687 DFConstraint *This, 688 UINT iTInfo, 689 LCID lcid, 690 ITypeInfo **ppTInfo); 691 692 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 693 DFConstraint *This, 694 REFIID riid, 695 LPOLESTR *rgszNames, 696 UINT cNames, 697 LCID lcid, 698 DISPID *rgDispId); 699 700 HRESULT (STDMETHODCALLTYPE *Invoke)( 701 DFConstraint *This, 702 DISPID dispIdMember, 703 REFIID riid, 704 LCID lcid, 705 WORD wFlags, 706 DISPPARAMS *pDispParams, 707 VARIANT *pVarResult, 708 EXCEPINFO *pExcepInfo, 709 UINT *puArgErr); 710 711 /*** DFConstraint methods ***/ 712 HRESULT (STDMETHODCALLTYPE *get_Name)( 713 DFConstraint *This, 714 BSTR *pbs); 715 716 HRESULT (STDMETHODCALLTYPE *get_Value)( 717 DFConstraint *This, 718 VARIANT *pv); 719 720 END_INTERFACE 721 } DFConstraintVtbl; 722 723 interface DFConstraint { 724 CONST_VTBL DFConstraintVtbl* lpVtbl; 725 }; 726 727 #ifdef COBJMACROS 728 #ifndef WIDL_C_INLINE_WRAPPERS 729 /*** IUnknown methods ***/ 730 #define DFConstraint_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 731 #define DFConstraint_AddRef(This) (This)->lpVtbl->AddRef(This) 732 #define DFConstraint_Release(This) (This)->lpVtbl->Release(This) 733 /*** IDispatch methods ***/ 734 #define DFConstraint_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 735 #define DFConstraint_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 736 #define DFConstraint_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 737 #define DFConstraint_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 738 /*** DFConstraint methods ***/ 739 #define DFConstraint_get_Name(This,pbs) (This)->lpVtbl->get_Name(This,pbs) 740 #define DFConstraint_get_Value(This,pv) (This)->lpVtbl->get_Value(This,pv) 741 #else 742 /*** IUnknown methods ***/ 743 static FORCEINLINE HRESULT DFConstraint_QueryInterface(DFConstraint* This,REFIID riid,void **ppvObject) { 744 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 745 } 746 static FORCEINLINE ULONG DFConstraint_AddRef(DFConstraint* This) { 747 return This->lpVtbl->AddRef(This); 748 } 749 static FORCEINLINE ULONG DFConstraint_Release(DFConstraint* This) { 750 return This->lpVtbl->Release(This); 751 } 752 /*** IDispatch methods ***/ 753 static FORCEINLINE HRESULT DFConstraint_GetTypeInfoCount(DFConstraint* This,UINT *pctinfo) { 754 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 755 } 756 static FORCEINLINE HRESULT DFConstraint_GetTypeInfo(DFConstraint* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 757 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 758 } 759 static FORCEINLINE HRESULT DFConstraint_GetIDsOfNames(DFConstraint* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 760 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 761 } 762 static FORCEINLINE HRESULT DFConstraint_Invoke(DFConstraint* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 763 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 764 } 765 /*** DFConstraint methods ***/ 766 static FORCEINLINE HRESULT DFConstraint_get_Name(DFConstraint* This,BSTR *pbs) { 767 return This->lpVtbl->get_Name(This,pbs); 768 } 769 static FORCEINLINE HRESULT DFConstraint_get_Value(DFConstraint* This,VARIANT *pv) { 770 return This->lpVtbl->get_Value(This,pv); 771 } 772 #endif 773 #endif 774 775 #endif 776 777 778 #endif /* __DFConstraint_INTERFACE_DEFINED__ */ 779 780 /***************************************************************************** 781 * Folder interface 782 */ 783 #ifndef __Folder_INTERFACE_DEFINED__ 784 #define __Folder_INTERFACE_DEFINED__ 785 786 DEFINE_GUID(IID_Folder, 0xbbcbde60, 0xc3ff, 0x11ce, 0x83,0x50, 0x44,0x45,0x53,0x54,0x00,0x00); 787 #if defined(__cplusplus) && !defined(CINTERFACE) 788 MIDL_INTERFACE("bbcbde60-c3ff-11ce-8350-444553540000") 789 Folder : public IDispatch 790 { 791 virtual HRESULT STDMETHODCALLTYPE get_Title( 792 BSTR *pbs) = 0; 793 794 virtual HRESULT STDMETHODCALLTYPE get_Application( 795 IDispatch **ppid) = 0; 796 797 virtual HRESULT STDMETHODCALLTYPE get_Parent( 798 IDispatch **ppid) = 0; 799 800 virtual HRESULT STDMETHODCALLTYPE get_ParentFolder( 801 Folder **ppsf) = 0; 802 803 virtual HRESULT STDMETHODCALLTYPE Items( 804 FolderItems **ppid) = 0; 805 806 virtual HRESULT STDMETHODCALLTYPE ParseName( 807 BSTR bName, 808 FolderItem **ppid) = 0; 809 810 virtual HRESULT STDMETHODCALLTYPE NewFolder( 811 BSTR bName, 812 VARIANT vOptions) = 0; 813 814 virtual HRESULT STDMETHODCALLTYPE MoveHere( 815 VARIANT vItem, 816 VARIANT vOptions) = 0; 817 818 virtual HRESULT STDMETHODCALLTYPE CopyHere( 819 VARIANT vItem, 820 VARIANT vOptions) = 0; 821 822 virtual HRESULT STDMETHODCALLTYPE GetDetailsOf( 823 VARIANT vItem, 824 int iColumn, 825 BSTR *pbs) = 0; 826 827 }; 828 #ifdef __CRT_UUID_DECL 829 __CRT_UUID_DECL(Folder, 0xbbcbde60, 0xc3ff, 0x11ce, 0x83,0x50, 0x44,0x45,0x53,0x54,0x00,0x00) 830 #endif 831 #else 832 typedef struct FolderVtbl { 833 BEGIN_INTERFACE 834 835 /*** IUnknown methods ***/ 836 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 837 Folder *This, 838 REFIID riid, 839 void **ppvObject); 840 841 ULONG (STDMETHODCALLTYPE *AddRef)( 842 Folder *This); 843 844 ULONG (STDMETHODCALLTYPE *Release)( 845 Folder *This); 846 847 /*** IDispatch methods ***/ 848 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 849 Folder *This, 850 UINT *pctinfo); 851 852 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 853 Folder *This, 854 UINT iTInfo, 855 LCID lcid, 856 ITypeInfo **ppTInfo); 857 858 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 859 Folder *This, 860 REFIID riid, 861 LPOLESTR *rgszNames, 862 UINT cNames, 863 LCID lcid, 864 DISPID *rgDispId); 865 866 HRESULT (STDMETHODCALLTYPE *Invoke)( 867 Folder *This, 868 DISPID dispIdMember, 869 REFIID riid, 870 LCID lcid, 871 WORD wFlags, 872 DISPPARAMS *pDispParams, 873 VARIANT *pVarResult, 874 EXCEPINFO *pExcepInfo, 875 UINT *puArgErr); 876 877 /*** Folder methods ***/ 878 HRESULT (STDMETHODCALLTYPE *get_Title)( 879 Folder *This, 880 BSTR *pbs); 881 882 HRESULT (STDMETHODCALLTYPE *get_Application)( 883 Folder *This, 884 IDispatch **ppid); 885 886 HRESULT (STDMETHODCALLTYPE *get_Parent)( 887 Folder *This, 888 IDispatch **ppid); 889 890 HRESULT (STDMETHODCALLTYPE *get_ParentFolder)( 891 Folder *This, 892 Folder **ppsf); 893 894 HRESULT (STDMETHODCALLTYPE *Items)( 895 Folder *This, 896 FolderItems **ppid); 897 898 HRESULT (STDMETHODCALLTYPE *ParseName)( 899 Folder *This, 900 BSTR bName, 901 FolderItem **ppid); 902 903 HRESULT (STDMETHODCALLTYPE *NewFolder)( 904 Folder *This, 905 BSTR bName, 906 VARIANT vOptions); 907 908 HRESULT (STDMETHODCALLTYPE *MoveHere)( 909 Folder *This, 910 VARIANT vItem, 911 VARIANT vOptions); 912 913 HRESULT (STDMETHODCALLTYPE *CopyHere)( 914 Folder *This, 915 VARIANT vItem, 916 VARIANT vOptions); 917 918 HRESULT (STDMETHODCALLTYPE *GetDetailsOf)( 919 Folder *This, 920 VARIANT vItem, 921 int iColumn, 922 BSTR *pbs); 923 924 END_INTERFACE 925 } FolderVtbl; 926 927 interface Folder { 928 CONST_VTBL FolderVtbl* lpVtbl; 929 }; 930 931 #ifdef COBJMACROS 932 #ifndef WIDL_C_INLINE_WRAPPERS 933 /*** IUnknown methods ***/ 934 #define Folder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 935 #define Folder_AddRef(This) (This)->lpVtbl->AddRef(This) 936 #define Folder_Release(This) (This)->lpVtbl->Release(This) 937 /*** IDispatch methods ***/ 938 #define Folder_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 939 #define Folder_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 940 #define Folder_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 941 #define Folder_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 942 /*** Folder methods ***/ 943 #define Folder_get_Title(This,pbs) (This)->lpVtbl->get_Title(This,pbs) 944 #define Folder_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 945 #define Folder_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 946 #define Folder_get_ParentFolder(This,ppsf) (This)->lpVtbl->get_ParentFolder(This,ppsf) 947 #define Folder_Items(This,ppid) (This)->lpVtbl->Items(This,ppid) 948 #define Folder_ParseName(This,bName,ppid) (This)->lpVtbl->ParseName(This,bName,ppid) 949 #define Folder_NewFolder(This,bName,vOptions) (This)->lpVtbl->NewFolder(This,bName,vOptions) 950 #define Folder_MoveHere(This,vItem,vOptions) (This)->lpVtbl->MoveHere(This,vItem,vOptions) 951 #define Folder_CopyHere(This,vItem,vOptions) (This)->lpVtbl->CopyHere(This,vItem,vOptions) 952 #define Folder_GetDetailsOf(This,vItem,iColumn,pbs) (This)->lpVtbl->GetDetailsOf(This,vItem,iColumn,pbs) 953 #else 954 /*** IUnknown methods ***/ 955 static FORCEINLINE HRESULT Folder_QueryInterface(Folder* This,REFIID riid,void **ppvObject) { 956 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 957 } 958 static FORCEINLINE ULONG Folder_AddRef(Folder* This) { 959 return This->lpVtbl->AddRef(This); 960 } 961 static FORCEINLINE ULONG Folder_Release(Folder* This) { 962 return This->lpVtbl->Release(This); 963 } 964 /*** IDispatch methods ***/ 965 static FORCEINLINE HRESULT Folder_GetTypeInfoCount(Folder* This,UINT *pctinfo) { 966 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 967 } 968 static FORCEINLINE HRESULT Folder_GetTypeInfo(Folder* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 969 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 970 } 971 static FORCEINLINE HRESULT Folder_GetIDsOfNames(Folder* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 972 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 973 } 974 static FORCEINLINE HRESULT Folder_Invoke(Folder* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 975 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 976 } 977 /*** Folder methods ***/ 978 static FORCEINLINE HRESULT Folder_get_Title(Folder* This,BSTR *pbs) { 979 return This->lpVtbl->get_Title(This,pbs); 980 } 981 static FORCEINLINE HRESULT Folder_get_Application(Folder* This,IDispatch **ppid) { 982 return This->lpVtbl->get_Application(This,ppid); 983 } 984 static FORCEINLINE HRESULT Folder_get_Parent(Folder* This,IDispatch **ppid) { 985 return This->lpVtbl->get_Parent(This,ppid); 986 } 987 static FORCEINLINE HRESULT Folder_get_ParentFolder(Folder* This,Folder **ppsf) { 988 return This->lpVtbl->get_ParentFolder(This,ppsf); 989 } 990 static FORCEINLINE HRESULT Folder_Items(Folder* This,FolderItems **ppid) { 991 return This->lpVtbl->Items(This,ppid); 992 } 993 static FORCEINLINE HRESULT Folder_ParseName(Folder* This,BSTR bName,FolderItem **ppid) { 994 return This->lpVtbl->ParseName(This,bName,ppid); 995 } 996 static FORCEINLINE HRESULT Folder_NewFolder(Folder* This,BSTR bName,VARIANT vOptions) { 997 return This->lpVtbl->NewFolder(This,bName,vOptions); 998 } 999 static FORCEINLINE HRESULT Folder_MoveHere(Folder* This,VARIANT vItem,VARIANT vOptions) { 1000 return This->lpVtbl->MoveHere(This,vItem,vOptions); 1001 } 1002 static FORCEINLINE HRESULT Folder_CopyHere(Folder* This,VARIANT vItem,VARIANT vOptions) { 1003 return This->lpVtbl->CopyHere(This,vItem,vOptions); 1004 } 1005 static FORCEINLINE HRESULT Folder_GetDetailsOf(Folder* This,VARIANT vItem,int iColumn,BSTR *pbs) { 1006 return This->lpVtbl->GetDetailsOf(This,vItem,iColumn,pbs); 1007 } 1008 #endif 1009 #endif 1010 1011 #endif 1012 1013 1014 #endif /* __Folder_INTERFACE_DEFINED__ */ 1015 1016 /***************************************************************************** 1017 * Folder2 interface 1018 */ 1019 #ifndef __Folder2_INTERFACE_DEFINED__ 1020 #define __Folder2_INTERFACE_DEFINED__ 1021 1022 DEFINE_GUID(IID_Folder2, 0xf0d2d8ef, 0x3890, 0x11d2, 0xbf,0x8b, 0x00,0xc0,0x4f,0xb9,0x36,0x61); 1023 #if defined(__cplusplus) && !defined(CINTERFACE) 1024 MIDL_INTERFACE("f0d2d8ef-3890-11d2-bf8b-00c04fb93661") 1025 Folder2 : public Folder 1026 { 1027 virtual HRESULT STDMETHODCALLTYPE get_Self( 1028 FolderItem **ppfi) = 0; 1029 1030 virtual HRESULT STDMETHODCALLTYPE get_OfflineStatus( 1031 LONG *pul) = 0; 1032 1033 virtual HRESULT STDMETHODCALLTYPE Synchronize( 1034 ) = 0; 1035 1036 virtual HRESULT STDMETHODCALLTYPE get_HaveToShowWebViewBarricade( 1037 VARIANT_BOOL *pbHaveToShowWebViewBarricade) = 0; 1038 1039 virtual HRESULT STDMETHODCALLTYPE DismissedWebViewBarricade( 1040 ) = 0; 1041 1042 }; 1043 #ifdef __CRT_UUID_DECL 1044 __CRT_UUID_DECL(Folder2, 0xf0d2d8ef, 0x3890, 0x11d2, 0xbf,0x8b, 0x00,0xc0,0x4f,0xb9,0x36,0x61) 1045 #endif 1046 #else 1047 typedef struct Folder2Vtbl { 1048 BEGIN_INTERFACE 1049 1050 /*** IUnknown methods ***/ 1051 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1052 Folder2 *This, 1053 REFIID riid, 1054 void **ppvObject); 1055 1056 ULONG (STDMETHODCALLTYPE *AddRef)( 1057 Folder2 *This); 1058 1059 ULONG (STDMETHODCALLTYPE *Release)( 1060 Folder2 *This); 1061 1062 /*** IDispatch methods ***/ 1063 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 1064 Folder2 *This, 1065 UINT *pctinfo); 1066 1067 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 1068 Folder2 *This, 1069 UINT iTInfo, 1070 LCID lcid, 1071 ITypeInfo **ppTInfo); 1072 1073 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 1074 Folder2 *This, 1075 REFIID riid, 1076 LPOLESTR *rgszNames, 1077 UINT cNames, 1078 LCID lcid, 1079 DISPID *rgDispId); 1080 1081 HRESULT (STDMETHODCALLTYPE *Invoke)( 1082 Folder2 *This, 1083 DISPID dispIdMember, 1084 REFIID riid, 1085 LCID lcid, 1086 WORD wFlags, 1087 DISPPARAMS *pDispParams, 1088 VARIANT *pVarResult, 1089 EXCEPINFO *pExcepInfo, 1090 UINT *puArgErr); 1091 1092 /*** Folder methods ***/ 1093 HRESULT (STDMETHODCALLTYPE *get_Title)( 1094 Folder2 *This, 1095 BSTR *pbs); 1096 1097 HRESULT (STDMETHODCALLTYPE *get_Application)( 1098 Folder2 *This, 1099 IDispatch **ppid); 1100 1101 HRESULT (STDMETHODCALLTYPE *get_Parent)( 1102 Folder2 *This, 1103 IDispatch **ppid); 1104 1105 HRESULT (STDMETHODCALLTYPE *get_ParentFolder)( 1106 Folder2 *This, 1107 Folder **ppsf); 1108 1109 HRESULT (STDMETHODCALLTYPE *Items)( 1110 Folder2 *This, 1111 FolderItems **ppid); 1112 1113 HRESULT (STDMETHODCALLTYPE *ParseName)( 1114 Folder2 *This, 1115 BSTR bName, 1116 FolderItem **ppid); 1117 1118 HRESULT (STDMETHODCALLTYPE *NewFolder)( 1119 Folder2 *This, 1120 BSTR bName, 1121 VARIANT vOptions); 1122 1123 HRESULT (STDMETHODCALLTYPE *MoveHere)( 1124 Folder2 *This, 1125 VARIANT vItem, 1126 VARIANT vOptions); 1127 1128 HRESULT (STDMETHODCALLTYPE *CopyHere)( 1129 Folder2 *This, 1130 VARIANT vItem, 1131 VARIANT vOptions); 1132 1133 HRESULT (STDMETHODCALLTYPE *GetDetailsOf)( 1134 Folder2 *This, 1135 VARIANT vItem, 1136 int iColumn, 1137 BSTR *pbs); 1138 1139 /*** Folder2 methods ***/ 1140 HRESULT (STDMETHODCALLTYPE *get_Self)( 1141 Folder2 *This, 1142 FolderItem **ppfi); 1143 1144 HRESULT (STDMETHODCALLTYPE *get_OfflineStatus)( 1145 Folder2 *This, 1146 LONG *pul); 1147 1148 HRESULT (STDMETHODCALLTYPE *Synchronize)( 1149 Folder2 *This); 1150 1151 HRESULT (STDMETHODCALLTYPE *get_HaveToShowWebViewBarricade)( 1152 Folder2 *This, 1153 VARIANT_BOOL *pbHaveToShowWebViewBarricade); 1154 1155 HRESULT (STDMETHODCALLTYPE *DismissedWebViewBarricade)( 1156 Folder2 *This); 1157 1158 END_INTERFACE 1159 } Folder2Vtbl; 1160 1161 interface Folder2 { 1162 CONST_VTBL Folder2Vtbl* lpVtbl; 1163 }; 1164 1165 #ifdef COBJMACROS 1166 #ifndef WIDL_C_INLINE_WRAPPERS 1167 /*** IUnknown methods ***/ 1168 #define Folder2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1169 #define Folder2_AddRef(This) (This)->lpVtbl->AddRef(This) 1170 #define Folder2_Release(This) (This)->lpVtbl->Release(This) 1171 /*** IDispatch methods ***/ 1172 #define Folder2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 1173 #define Folder2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 1174 #define Folder2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 1175 #define Folder2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 1176 /*** Folder methods ***/ 1177 #define Folder2_get_Title(This,pbs) (This)->lpVtbl->get_Title(This,pbs) 1178 #define Folder2_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 1179 #define Folder2_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 1180 #define Folder2_get_ParentFolder(This,ppsf) (This)->lpVtbl->get_ParentFolder(This,ppsf) 1181 #define Folder2_Items(This,ppid) (This)->lpVtbl->Items(This,ppid) 1182 #define Folder2_ParseName(This,bName,ppid) (This)->lpVtbl->ParseName(This,bName,ppid) 1183 #define Folder2_NewFolder(This,bName,vOptions) (This)->lpVtbl->NewFolder(This,bName,vOptions) 1184 #define Folder2_MoveHere(This,vItem,vOptions) (This)->lpVtbl->MoveHere(This,vItem,vOptions) 1185 #define Folder2_CopyHere(This,vItem,vOptions) (This)->lpVtbl->CopyHere(This,vItem,vOptions) 1186 #define Folder2_GetDetailsOf(This,vItem,iColumn,pbs) (This)->lpVtbl->GetDetailsOf(This,vItem,iColumn,pbs) 1187 /*** Folder2 methods ***/ 1188 #define Folder2_get_Self(This,ppfi) (This)->lpVtbl->get_Self(This,ppfi) 1189 #define Folder2_get_OfflineStatus(This,pul) (This)->lpVtbl->get_OfflineStatus(This,pul) 1190 #define Folder2_Synchronize(This) (This)->lpVtbl->Synchronize(This) 1191 #define Folder2_get_HaveToShowWebViewBarricade(This,pbHaveToShowWebViewBarricade) (This)->lpVtbl->get_HaveToShowWebViewBarricade(This,pbHaveToShowWebViewBarricade) 1192 #define Folder2_DismissedWebViewBarricade(This) (This)->lpVtbl->DismissedWebViewBarricade(This) 1193 #else 1194 /*** IUnknown methods ***/ 1195 static FORCEINLINE HRESULT Folder2_QueryInterface(Folder2* This,REFIID riid,void **ppvObject) { 1196 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1197 } 1198 static FORCEINLINE ULONG Folder2_AddRef(Folder2* This) { 1199 return This->lpVtbl->AddRef(This); 1200 } 1201 static FORCEINLINE ULONG Folder2_Release(Folder2* This) { 1202 return This->lpVtbl->Release(This); 1203 } 1204 /*** IDispatch methods ***/ 1205 static FORCEINLINE HRESULT Folder2_GetTypeInfoCount(Folder2* This,UINT *pctinfo) { 1206 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 1207 } 1208 static FORCEINLINE HRESULT Folder2_GetTypeInfo(Folder2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 1209 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 1210 } 1211 static FORCEINLINE HRESULT Folder2_GetIDsOfNames(Folder2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 1212 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 1213 } 1214 static FORCEINLINE HRESULT Folder2_Invoke(Folder2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 1215 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 1216 } 1217 /*** Folder methods ***/ 1218 static FORCEINLINE HRESULT Folder2_get_Title(Folder2* This,BSTR *pbs) { 1219 return This->lpVtbl->get_Title(This,pbs); 1220 } 1221 static FORCEINLINE HRESULT Folder2_get_Application(Folder2* This,IDispatch **ppid) { 1222 return This->lpVtbl->get_Application(This,ppid); 1223 } 1224 static FORCEINLINE HRESULT Folder2_get_Parent(Folder2* This,IDispatch **ppid) { 1225 return This->lpVtbl->get_Parent(This,ppid); 1226 } 1227 static FORCEINLINE HRESULT Folder2_get_ParentFolder(Folder2* This,Folder **ppsf) { 1228 return This->lpVtbl->get_ParentFolder(This,ppsf); 1229 } 1230 static FORCEINLINE HRESULT Folder2_Items(Folder2* This,FolderItems **ppid) { 1231 return This->lpVtbl->Items(This,ppid); 1232 } 1233 static FORCEINLINE HRESULT Folder2_ParseName(Folder2* This,BSTR bName,FolderItem **ppid) { 1234 return This->lpVtbl->ParseName(This,bName,ppid); 1235 } 1236 static FORCEINLINE HRESULT Folder2_NewFolder(Folder2* This,BSTR bName,VARIANT vOptions) { 1237 return This->lpVtbl->NewFolder(This,bName,vOptions); 1238 } 1239 static FORCEINLINE HRESULT Folder2_MoveHere(Folder2* This,VARIANT vItem,VARIANT vOptions) { 1240 return This->lpVtbl->MoveHere(This,vItem,vOptions); 1241 } 1242 static FORCEINLINE HRESULT Folder2_CopyHere(Folder2* This,VARIANT vItem,VARIANT vOptions) { 1243 return This->lpVtbl->CopyHere(This,vItem,vOptions); 1244 } 1245 static FORCEINLINE HRESULT Folder2_GetDetailsOf(Folder2* This,VARIANT vItem,int iColumn,BSTR *pbs) { 1246 return This->lpVtbl->GetDetailsOf(This,vItem,iColumn,pbs); 1247 } 1248 /*** Folder2 methods ***/ 1249 static FORCEINLINE HRESULT Folder2_get_Self(Folder2* This,FolderItem **ppfi) { 1250 return This->lpVtbl->get_Self(This,ppfi); 1251 } 1252 static FORCEINLINE HRESULT Folder2_get_OfflineStatus(Folder2* This,LONG *pul) { 1253 return This->lpVtbl->get_OfflineStatus(This,pul); 1254 } 1255 static FORCEINLINE HRESULT Folder2_Synchronize(Folder2* This) { 1256 return This->lpVtbl->Synchronize(This); 1257 } 1258 static FORCEINLINE HRESULT Folder2_get_HaveToShowWebViewBarricade(Folder2* This,VARIANT_BOOL *pbHaveToShowWebViewBarricade) { 1259 return This->lpVtbl->get_HaveToShowWebViewBarricade(This,pbHaveToShowWebViewBarricade); 1260 } 1261 static FORCEINLINE HRESULT Folder2_DismissedWebViewBarricade(Folder2* This) { 1262 return This->lpVtbl->DismissedWebViewBarricade(This); 1263 } 1264 #endif 1265 #endif 1266 1267 #endif 1268 1269 1270 #endif /* __Folder2_INTERFACE_DEFINED__ */ 1271 1272 typedef enum OfflineFolderStatus { 1273 OFS_INACTIVE = -1, 1274 OFS_ONLINE = 0, 1275 OFS_OFFLINE = 1, 1276 OFS_SERVERBACK = 2, 1277 OFS_DIRTYCACHE = 3 1278 } OfflineFolderStatus; 1279 /***************************************************************************** 1280 * Folder3 interface 1281 */ 1282 #ifndef __Folder3_INTERFACE_DEFINED__ 1283 #define __Folder3_INTERFACE_DEFINED__ 1284 1285 DEFINE_GUID(IID_Folder3, 0xa7ae5f64, 0xc4d7, 0x4d7f, 0x93,0x07, 0x4d,0x24,0xee,0x54,0xb8,0x41); 1286 #if defined(__cplusplus) && !defined(CINTERFACE) 1287 MIDL_INTERFACE("a7ae5f64-c4d7-4d7f-9307-4d24ee54b841") 1288 Folder3 : public Folder2 1289 { 1290 virtual HRESULT STDMETHODCALLTYPE get_ShowWebViewBarricade( 1291 VARIANT_BOOL *pbShowWebViewBarricade) = 0; 1292 1293 virtual HRESULT STDMETHODCALLTYPE put_ShowWebViewBarricade( 1294 VARIANT_BOOL bShowWebViewBarricade) = 0; 1295 1296 }; 1297 #ifdef __CRT_UUID_DECL 1298 __CRT_UUID_DECL(Folder3, 0xa7ae5f64, 0xc4d7, 0x4d7f, 0x93,0x07, 0x4d,0x24,0xee,0x54,0xb8,0x41) 1299 #endif 1300 #else 1301 typedef struct Folder3Vtbl { 1302 BEGIN_INTERFACE 1303 1304 /*** IUnknown methods ***/ 1305 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1306 Folder3 *This, 1307 REFIID riid, 1308 void **ppvObject); 1309 1310 ULONG (STDMETHODCALLTYPE *AddRef)( 1311 Folder3 *This); 1312 1313 ULONG (STDMETHODCALLTYPE *Release)( 1314 Folder3 *This); 1315 1316 /*** IDispatch methods ***/ 1317 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 1318 Folder3 *This, 1319 UINT *pctinfo); 1320 1321 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 1322 Folder3 *This, 1323 UINT iTInfo, 1324 LCID lcid, 1325 ITypeInfo **ppTInfo); 1326 1327 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 1328 Folder3 *This, 1329 REFIID riid, 1330 LPOLESTR *rgszNames, 1331 UINT cNames, 1332 LCID lcid, 1333 DISPID *rgDispId); 1334 1335 HRESULT (STDMETHODCALLTYPE *Invoke)( 1336 Folder3 *This, 1337 DISPID dispIdMember, 1338 REFIID riid, 1339 LCID lcid, 1340 WORD wFlags, 1341 DISPPARAMS *pDispParams, 1342 VARIANT *pVarResult, 1343 EXCEPINFO *pExcepInfo, 1344 UINT *puArgErr); 1345 1346 /*** Folder methods ***/ 1347 HRESULT (STDMETHODCALLTYPE *get_Title)( 1348 Folder3 *This, 1349 BSTR *pbs); 1350 1351 HRESULT (STDMETHODCALLTYPE *get_Application)( 1352 Folder3 *This, 1353 IDispatch **ppid); 1354 1355 HRESULT (STDMETHODCALLTYPE *get_Parent)( 1356 Folder3 *This, 1357 IDispatch **ppid); 1358 1359 HRESULT (STDMETHODCALLTYPE *get_ParentFolder)( 1360 Folder3 *This, 1361 Folder **ppsf); 1362 1363 HRESULT (STDMETHODCALLTYPE *Items)( 1364 Folder3 *This, 1365 FolderItems **ppid); 1366 1367 HRESULT (STDMETHODCALLTYPE *ParseName)( 1368 Folder3 *This, 1369 BSTR bName, 1370 FolderItem **ppid); 1371 1372 HRESULT (STDMETHODCALLTYPE *NewFolder)( 1373 Folder3 *This, 1374 BSTR bName, 1375 VARIANT vOptions); 1376 1377 HRESULT (STDMETHODCALLTYPE *MoveHere)( 1378 Folder3 *This, 1379 VARIANT vItem, 1380 VARIANT vOptions); 1381 1382 HRESULT (STDMETHODCALLTYPE *CopyHere)( 1383 Folder3 *This, 1384 VARIANT vItem, 1385 VARIANT vOptions); 1386 1387 HRESULT (STDMETHODCALLTYPE *GetDetailsOf)( 1388 Folder3 *This, 1389 VARIANT vItem, 1390 int iColumn, 1391 BSTR *pbs); 1392 1393 /*** Folder2 methods ***/ 1394 HRESULT (STDMETHODCALLTYPE *get_Self)( 1395 Folder3 *This, 1396 FolderItem **ppfi); 1397 1398 HRESULT (STDMETHODCALLTYPE *get_OfflineStatus)( 1399 Folder3 *This, 1400 LONG *pul); 1401 1402 HRESULT (STDMETHODCALLTYPE *Synchronize)( 1403 Folder3 *This); 1404 1405 HRESULT (STDMETHODCALLTYPE *get_HaveToShowWebViewBarricade)( 1406 Folder3 *This, 1407 VARIANT_BOOL *pbHaveToShowWebViewBarricade); 1408 1409 HRESULT (STDMETHODCALLTYPE *DismissedWebViewBarricade)( 1410 Folder3 *This); 1411 1412 /*** Folder3 methods ***/ 1413 HRESULT (STDMETHODCALLTYPE *get_ShowWebViewBarricade)( 1414 Folder3 *This, 1415 VARIANT_BOOL *pbShowWebViewBarricade); 1416 1417 HRESULT (STDMETHODCALLTYPE *put_ShowWebViewBarricade)( 1418 Folder3 *This, 1419 VARIANT_BOOL bShowWebViewBarricade); 1420 1421 END_INTERFACE 1422 } Folder3Vtbl; 1423 1424 interface Folder3 { 1425 CONST_VTBL Folder3Vtbl* lpVtbl; 1426 }; 1427 1428 #ifdef COBJMACROS 1429 #ifndef WIDL_C_INLINE_WRAPPERS 1430 /*** IUnknown methods ***/ 1431 #define Folder3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1432 #define Folder3_AddRef(This) (This)->lpVtbl->AddRef(This) 1433 #define Folder3_Release(This) (This)->lpVtbl->Release(This) 1434 /*** IDispatch methods ***/ 1435 #define Folder3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 1436 #define Folder3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 1437 #define Folder3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 1438 #define Folder3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 1439 /*** Folder methods ***/ 1440 #define Folder3_get_Title(This,pbs) (This)->lpVtbl->get_Title(This,pbs) 1441 #define Folder3_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 1442 #define Folder3_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 1443 #define Folder3_get_ParentFolder(This,ppsf) (This)->lpVtbl->get_ParentFolder(This,ppsf) 1444 #define Folder3_Items(This,ppid) (This)->lpVtbl->Items(This,ppid) 1445 #define Folder3_ParseName(This,bName,ppid) (This)->lpVtbl->ParseName(This,bName,ppid) 1446 #define Folder3_NewFolder(This,bName,vOptions) (This)->lpVtbl->NewFolder(This,bName,vOptions) 1447 #define Folder3_MoveHere(This,vItem,vOptions) (This)->lpVtbl->MoveHere(This,vItem,vOptions) 1448 #define Folder3_CopyHere(This,vItem,vOptions) (This)->lpVtbl->CopyHere(This,vItem,vOptions) 1449 #define Folder3_GetDetailsOf(This,vItem,iColumn,pbs) (This)->lpVtbl->GetDetailsOf(This,vItem,iColumn,pbs) 1450 /*** Folder2 methods ***/ 1451 #define Folder3_get_Self(This,ppfi) (This)->lpVtbl->get_Self(This,ppfi) 1452 #define Folder3_get_OfflineStatus(This,pul) (This)->lpVtbl->get_OfflineStatus(This,pul) 1453 #define Folder3_Synchronize(This) (This)->lpVtbl->Synchronize(This) 1454 #define Folder3_get_HaveToShowWebViewBarricade(This,pbHaveToShowWebViewBarricade) (This)->lpVtbl->get_HaveToShowWebViewBarricade(This,pbHaveToShowWebViewBarricade) 1455 #define Folder3_DismissedWebViewBarricade(This) (This)->lpVtbl->DismissedWebViewBarricade(This) 1456 /*** Folder3 methods ***/ 1457 #define Folder3_get_ShowWebViewBarricade(This,pbShowWebViewBarricade) (This)->lpVtbl->get_ShowWebViewBarricade(This,pbShowWebViewBarricade) 1458 #define Folder3_put_ShowWebViewBarricade(This,bShowWebViewBarricade) (This)->lpVtbl->put_ShowWebViewBarricade(This,bShowWebViewBarricade) 1459 #else 1460 /*** IUnknown methods ***/ 1461 static FORCEINLINE HRESULT Folder3_QueryInterface(Folder3* This,REFIID riid,void **ppvObject) { 1462 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1463 } 1464 static FORCEINLINE ULONG Folder3_AddRef(Folder3* This) { 1465 return This->lpVtbl->AddRef(This); 1466 } 1467 static FORCEINLINE ULONG Folder3_Release(Folder3* This) { 1468 return This->lpVtbl->Release(This); 1469 } 1470 /*** IDispatch methods ***/ 1471 static FORCEINLINE HRESULT Folder3_GetTypeInfoCount(Folder3* This,UINT *pctinfo) { 1472 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 1473 } 1474 static FORCEINLINE HRESULT Folder3_GetTypeInfo(Folder3* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 1475 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 1476 } 1477 static FORCEINLINE HRESULT Folder3_GetIDsOfNames(Folder3* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 1478 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 1479 } 1480 static FORCEINLINE HRESULT Folder3_Invoke(Folder3* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 1481 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 1482 } 1483 /*** Folder methods ***/ 1484 static FORCEINLINE HRESULT Folder3_get_Title(Folder3* This,BSTR *pbs) { 1485 return This->lpVtbl->get_Title(This,pbs); 1486 } 1487 static FORCEINLINE HRESULT Folder3_get_Application(Folder3* This,IDispatch **ppid) { 1488 return This->lpVtbl->get_Application(This,ppid); 1489 } 1490 static FORCEINLINE HRESULT Folder3_get_Parent(Folder3* This,IDispatch **ppid) { 1491 return This->lpVtbl->get_Parent(This,ppid); 1492 } 1493 static FORCEINLINE HRESULT Folder3_get_ParentFolder(Folder3* This,Folder **ppsf) { 1494 return This->lpVtbl->get_ParentFolder(This,ppsf); 1495 } 1496 static FORCEINLINE HRESULT Folder3_Items(Folder3* This,FolderItems **ppid) { 1497 return This->lpVtbl->Items(This,ppid); 1498 } 1499 static FORCEINLINE HRESULT Folder3_ParseName(Folder3* This,BSTR bName,FolderItem **ppid) { 1500 return This->lpVtbl->ParseName(This,bName,ppid); 1501 } 1502 static FORCEINLINE HRESULT Folder3_NewFolder(Folder3* This,BSTR bName,VARIANT vOptions) { 1503 return This->lpVtbl->NewFolder(This,bName,vOptions); 1504 } 1505 static FORCEINLINE HRESULT Folder3_MoveHere(Folder3* This,VARIANT vItem,VARIANT vOptions) { 1506 return This->lpVtbl->MoveHere(This,vItem,vOptions); 1507 } 1508 static FORCEINLINE HRESULT Folder3_CopyHere(Folder3* This,VARIANT vItem,VARIANT vOptions) { 1509 return This->lpVtbl->CopyHere(This,vItem,vOptions); 1510 } 1511 static FORCEINLINE HRESULT Folder3_GetDetailsOf(Folder3* This,VARIANT vItem,int iColumn,BSTR *pbs) { 1512 return This->lpVtbl->GetDetailsOf(This,vItem,iColumn,pbs); 1513 } 1514 /*** Folder2 methods ***/ 1515 static FORCEINLINE HRESULT Folder3_get_Self(Folder3* This,FolderItem **ppfi) { 1516 return This->lpVtbl->get_Self(This,ppfi); 1517 } 1518 static FORCEINLINE HRESULT Folder3_get_OfflineStatus(Folder3* This,LONG *pul) { 1519 return This->lpVtbl->get_OfflineStatus(This,pul); 1520 } 1521 static FORCEINLINE HRESULT Folder3_Synchronize(Folder3* This) { 1522 return This->lpVtbl->Synchronize(This); 1523 } 1524 static FORCEINLINE HRESULT Folder3_get_HaveToShowWebViewBarricade(Folder3* This,VARIANT_BOOL *pbHaveToShowWebViewBarricade) { 1525 return This->lpVtbl->get_HaveToShowWebViewBarricade(This,pbHaveToShowWebViewBarricade); 1526 } 1527 static FORCEINLINE HRESULT Folder3_DismissedWebViewBarricade(Folder3* This) { 1528 return This->lpVtbl->DismissedWebViewBarricade(This); 1529 } 1530 /*** Folder3 methods ***/ 1531 static FORCEINLINE HRESULT Folder3_get_ShowWebViewBarricade(Folder3* This,VARIANT_BOOL *pbShowWebViewBarricade) { 1532 return This->lpVtbl->get_ShowWebViewBarricade(This,pbShowWebViewBarricade); 1533 } 1534 static FORCEINLINE HRESULT Folder3_put_ShowWebViewBarricade(Folder3* This,VARIANT_BOOL bShowWebViewBarricade) { 1535 return This->lpVtbl->put_ShowWebViewBarricade(This,bShowWebViewBarricade); 1536 } 1537 #endif 1538 #endif 1539 1540 #endif 1541 1542 1543 #endif /* __Folder3_INTERFACE_DEFINED__ */ 1544 1545 /***************************************************************************** 1546 * FolderItem interface 1547 */ 1548 #ifndef __FolderItem_INTERFACE_DEFINED__ 1549 #define __FolderItem_INTERFACE_DEFINED__ 1550 1551 typedef FolderItem *LPFOLDERITEM; 1552 DEFINE_GUID(IID_FolderItem, 0xfac32c80, 0xcbe4, 0x11ce, 0x83,0x50, 0x44,0x45,0x53,0x54,0x00,0x00); 1553 #if defined(__cplusplus) && !defined(CINTERFACE) 1554 MIDL_INTERFACE("fac32c80-cbe4-11ce-8350-444553540000") 1555 FolderItem : public IDispatch 1556 { 1557 virtual HRESULT STDMETHODCALLTYPE get_Application( 1558 IDispatch **ppid) = 0; 1559 1560 virtual HRESULT STDMETHODCALLTYPE get_Parent( 1561 IDispatch **ppid) = 0; 1562 1563 virtual HRESULT STDMETHODCALLTYPE get_Name( 1564 BSTR *pbs) = 0; 1565 1566 virtual HRESULT STDMETHODCALLTYPE put_Name( 1567 BSTR bs) = 0; 1568 1569 virtual HRESULT STDMETHODCALLTYPE get_Path( 1570 BSTR *pbs) = 0; 1571 1572 virtual HRESULT STDMETHODCALLTYPE get_GetLink( 1573 IDispatch **ppid) = 0; 1574 1575 virtual HRESULT STDMETHODCALLTYPE get_GetFolder( 1576 IDispatch **ppid) = 0; 1577 1578 virtual HRESULT STDMETHODCALLTYPE get_IsLink( 1579 VARIANT_BOOL *pb) = 0; 1580 1581 virtual HRESULT STDMETHODCALLTYPE get_IsFolder( 1582 VARIANT_BOOL *pb) = 0; 1583 1584 virtual HRESULT STDMETHODCALLTYPE get_IsFileSystem( 1585 VARIANT_BOOL *pb) = 0; 1586 1587 virtual HRESULT STDMETHODCALLTYPE get_IsBrowsable( 1588 VARIANT_BOOL *pb) = 0; 1589 1590 virtual HRESULT STDMETHODCALLTYPE get_ModifyDate( 1591 DATE *pdt) = 0; 1592 1593 virtual HRESULT STDMETHODCALLTYPE put_ModifyDate( 1594 DATE dt) = 0; 1595 1596 virtual HRESULT STDMETHODCALLTYPE get_Size( 1597 LONG *pul) = 0; 1598 1599 virtual HRESULT STDMETHODCALLTYPE get_Type( 1600 BSTR *pbs) = 0; 1601 1602 virtual HRESULT STDMETHODCALLTYPE Verbs( 1603 FolderItemVerbs **ppfic) = 0; 1604 1605 virtual HRESULT STDMETHODCALLTYPE InvokeVerb( 1606 VARIANT vVerb) = 0; 1607 1608 }; 1609 #ifdef __CRT_UUID_DECL 1610 __CRT_UUID_DECL(FolderItem, 0xfac32c80, 0xcbe4, 0x11ce, 0x83,0x50, 0x44,0x45,0x53,0x54,0x00,0x00) 1611 #endif 1612 #else 1613 typedef struct FolderItemVtbl { 1614 BEGIN_INTERFACE 1615 1616 /*** IUnknown methods ***/ 1617 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1618 FolderItem *This, 1619 REFIID riid, 1620 void **ppvObject); 1621 1622 ULONG (STDMETHODCALLTYPE *AddRef)( 1623 FolderItem *This); 1624 1625 ULONG (STDMETHODCALLTYPE *Release)( 1626 FolderItem *This); 1627 1628 /*** IDispatch methods ***/ 1629 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 1630 FolderItem *This, 1631 UINT *pctinfo); 1632 1633 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 1634 FolderItem *This, 1635 UINT iTInfo, 1636 LCID lcid, 1637 ITypeInfo **ppTInfo); 1638 1639 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 1640 FolderItem *This, 1641 REFIID riid, 1642 LPOLESTR *rgszNames, 1643 UINT cNames, 1644 LCID lcid, 1645 DISPID *rgDispId); 1646 1647 HRESULT (STDMETHODCALLTYPE *Invoke)( 1648 FolderItem *This, 1649 DISPID dispIdMember, 1650 REFIID riid, 1651 LCID lcid, 1652 WORD wFlags, 1653 DISPPARAMS *pDispParams, 1654 VARIANT *pVarResult, 1655 EXCEPINFO *pExcepInfo, 1656 UINT *puArgErr); 1657 1658 /*** FolderItem methods ***/ 1659 HRESULT (STDMETHODCALLTYPE *get_Application)( 1660 FolderItem *This, 1661 IDispatch **ppid); 1662 1663 HRESULT (STDMETHODCALLTYPE *get_Parent)( 1664 FolderItem *This, 1665 IDispatch **ppid); 1666 1667 HRESULT (STDMETHODCALLTYPE *get_Name)( 1668 FolderItem *This, 1669 BSTR *pbs); 1670 1671 HRESULT (STDMETHODCALLTYPE *put_Name)( 1672 FolderItem *This, 1673 BSTR bs); 1674 1675 HRESULT (STDMETHODCALLTYPE *get_Path)( 1676 FolderItem *This, 1677 BSTR *pbs); 1678 1679 HRESULT (STDMETHODCALLTYPE *get_GetLink)( 1680 FolderItem *This, 1681 IDispatch **ppid); 1682 1683 HRESULT (STDMETHODCALLTYPE *get_GetFolder)( 1684 FolderItem *This, 1685 IDispatch **ppid); 1686 1687 HRESULT (STDMETHODCALLTYPE *get_IsLink)( 1688 FolderItem *This, 1689 VARIANT_BOOL *pb); 1690 1691 HRESULT (STDMETHODCALLTYPE *get_IsFolder)( 1692 FolderItem *This, 1693 VARIANT_BOOL *pb); 1694 1695 HRESULT (STDMETHODCALLTYPE *get_IsFileSystem)( 1696 FolderItem *This, 1697 VARIANT_BOOL *pb); 1698 1699 HRESULT (STDMETHODCALLTYPE *get_IsBrowsable)( 1700 FolderItem *This, 1701 VARIANT_BOOL *pb); 1702 1703 HRESULT (STDMETHODCALLTYPE *get_ModifyDate)( 1704 FolderItem *This, 1705 DATE *pdt); 1706 1707 HRESULT (STDMETHODCALLTYPE *put_ModifyDate)( 1708 FolderItem *This, 1709 DATE dt); 1710 1711 HRESULT (STDMETHODCALLTYPE *get_Size)( 1712 FolderItem *This, 1713 LONG *pul); 1714 1715 HRESULT (STDMETHODCALLTYPE *get_Type)( 1716 FolderItem *This, 1717 BSTR *pbs); 1718 1719 HRESULT (STDMETHODCALLTYPE *Verbs)( 1720 FolderItem *This, 1721 FolderItemVerbs **ppfic); 1722 1723 HRESULT (STDMETHODCALLTYPE *InvokeVerb)( 1724 FolderItem *This, 1725 VARIANT vVerb); 1726 1727 END_INTERFACE 1728 } FolderItemVtbl; 1729 1730 interface FolderItem { 1731 CONST_VTBL FolderItemVtbl* lpVtbl; 1732 }; 1733 1734 #ifdef COBJMACROS 1735 #ifndef WIDL_C_INLINE_WRAPPERS 1736 /*** IUnknown methods ***/ 1737 #define FolderItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1738 #define FolderItem_AddRef(This) (This)->lpVtbl->AddRef(This) 1739 #define FolderItem_Release(This) (This)->lpVtbl->Release(This) 1740 /*** IDispatch methods ***/ 1741 #define FolderItem_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 1742 #define FolderItem_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 1743 #define FolderItem_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 1744 #define FolderItem_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 1745 /*** FolderItem methods ***/ 1746 #define FolderItem_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 1747 #define FolderItem_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 1748 #define FolderItem_get_Name(This,pbs) (This)->lpVtbl->get_Name(This,pbs) 1749 #define FolderItem_put_Name(This,bs) (This)->lpVtbl->put_Name(This,bs) 1750 #define FolderItem_get_Path(This,pbs) (This)->lpVtbl->get_Path(This,pbs) 1751 #define FolderItem_get_GetLink(This,ppid) (This)->lpVtbl->get_GetLink(This,ppid) 1752 #define FolderItem_get_GetFolder(This,ppid) (This)->lpVtbl->get_GetFolder(This,ppid) 1753 #define FolderItem_get_IsLink(This,pb) (This)->lpVtbl->get_IsLink(This,pb) 1754 #define FolderItem_get_IsFolder(This,pb) (This)->lpVtbl->get_IsFolder(This,pb) 1755 #define FolderItem_get_IsFileSystem(This,pb) (This)->lpVtbl->get_IsFileSystem(This,pb) 1756 #define FolderItem_get_IsBrowsable(This,pb) (This)->lpVtbl->get_IsBrowsable(This,pb) 1757 #define FolderItem_get_ModifyDate(This,pdt) (This)->lpVtbl->get_ModifyDate(This,pdt) 1758 #define FolderItem_put_ModifyDate(This,dt) (This)->lpVtbl->put_ModifyDate(This,dt) 1759 #define FolderItem_get_Size(This,pul) (This)->lpVtbl->get_Size(This,pul) 1760 #define FolderItem_get_Type(This,pbs) (This)->lpVtbl->get_Type(This,pbs) 1761 #define FolderItem_Verbs(This,ppfic) (This)->lpVtbl->Verbs(This,ppfic) 1762 #define FolderItem_InvokeVerb(This,vVerb) (This)->lpVtbl->InvokeVerb(This,vVerb) 1763 #else 1764 /*** IUnknown methods ***/ 1765 static FORCEINLINE HRESULT FolderItem_QueryInterface(FolderItem* This,REFIID riid,void **ppvObject) { 1766 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1767 } 1768 static FORCEINLINE ULONG FolderItem_AddRef(FolderItem* This) { 1769 return This->lpVtbl->AddRef(This); 1770 } 1771 static FORCEINLINE ULONG FolderItem_Release(FolderItem* This) { 1772 return This->lpVtbl->Release(This); 1773 } 1774 /*** IDispatch methods ***/ 1775 static FORCEINLINE HRESULT FolderItem_GetTypeInfoCount(FolderItem* This,UINT *pctinfo) { 1776 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 1777 } 1778 static FORCEINLINE HRESULT FolderItem_GetTypeInfo(FolderItem* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 1779 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 1780 } 1781 static FORCEINLINE HRESULT FolderItem_GetIDsOfNames(FolderItem* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 1782 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 1783 } 1784 static FORCEINLINE HRESULT FolderItem_Invoke(FolderItem* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 1785 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 1786 } 1787 /*** FolderItem methods ***/ 1788 static FORCEINLINE HRESULT FolderItem_get_Application(FolderItem* This,IDispatch **ppid) { 1789 return This->lpVtbl->get_Application(This,ppid); 1790 } 1791 static FORCEINLINE HRESULT FolderItem_get_Parent(FolderItem* This,IDispatch **ppid) { 1792 return This->lpVtbl->get_Parent(This,ppid); 1793 } 1794 static FORCEINLINE HRESULT FolderItem_get_Name(FolderItem* This,BSTR *pbs) { 1795 return This->lpVtbl->get_Name(This,pbs); 1796 } 1797 static FORCEINLINE HRESULT FolderItem_put_Name(FolderItem* This,BSTR bs) { 1798 return This->lpVtbl->put_Name(This,bs); 1799 } 1800 static FORCEINLINE HRESULT FolderItem_get_Path(FolderItem* This,BSTR *pbs) { 1801 return This->lpVtbl->get_Path(This,pbs); 1802 } 1803 static FORCEINLINE HRESULT FolderItem_get_GetLink(FolderItem* This,IDispatch **ppid) { 1804 return This->lpVtbl->get_GetLink(This,ppid); 1805 } 1806 static FORCEINLINE HRESULT FolderItem_get_GetFolder(FolderItem* This,IDispatch **ppid) { 1807 return This->lpVtbl->get_GetFolder(This,ppid); 1808 } 1809 static FORCEINLINE HRESULT FolderItem_get_IsLink(FolderItem* This,VARIANT_BOOL *pb) { 1810 return This->lpVtbl->get_IsLink(This,pb); 1811 } 1812 static FORCEINLINE HRESULT FolderItem_get_IsFolder(FolderItem* This,VARIANT_BOOL *pb) { 1813 return This->lpVtbl->get_IsFolder(This,pb); 1814 } 1815 static FORCEINLINE HRESULT FolderItem_get_IsFileSystem(FolderItem* This,VARIANT_BOOL *pb) { 1816 return This->lpVtbl->get_IsFileSystem(This,pb); 1817 } 1818 static FORCEINLINE HRESULT FolderItem_get_IsBrowsable(FolderItem* This,VARIANT_BOOL *pb) { 1819 return This->lpVtbl->get_IsBrowsable(This,pb); 1820 } 1821 static FORCEINLINE HRESULT FolderItem_get_ModifyDate(FolderItem* This,DATE *pdt) { 1822 return This->lpVtbl->get_ModifyDate(This,pdt); 1823 } 1824 static FORCEINLINE HRESULT FolderItem_put_ModifyDate(FolderItem* This,DATE dt) { 1825 return This->lpVtbl->put_ModifyDate(This,dt); 1826 } 1827 static FORCEINLINE HRESULT FolderItem_get_Size(FolderItem* This,LONG *pul) { 1828 return This->lpVtbl->get_Size(This,pul); 1829 } 1830 static FORCEINLINE HRESULT FolderItem_get_Type(FolderItem* This,BSTR *pbs) { 1831 return This->lpVtbl->get_Type(This,pbs); 1832 } 1833 static FORCEINLINE HRESULT FolderItem_Verbs(FolderItem* This,FolderItemVerbs **ppfic) { 1834 return This->lpVtbl->Verbs(This,ppfic); 1835 } 1836 static FORCEINLINE HRESULT FolderItem_InvokeVerb(FolderItem* This,VARIANT vVerb) { 1837 return This->lpVtbl->InvokeVerb(This,vVerb); 1838 } 1839 #endif 1840 #endif 1841 1842 #endif 1843 1844 1845 #endif /* __FolderItem_INTERFACE_DEFINED__ */ 1846 1847 /***************************************************************************** 1848 * FolderItem2 interface 1849 */ 1850 #ifndef __FolderItem2_INTERFACE_DEFINED__ 1851 #define __FolderItem2_INTERFACE_DEFINED__ 1852 1853 DEFINE_GUID(IID_FolderItem2, 0xedc817aa, 0x92b8, 0x11d1, 0xb0,0x75, 0x00,0xc0,0x4f,0xc3,0x3a,0xa5); 1854 #if defined(__cplusplus) && !defined(CINTERFACE) 1855 MIDL_INTERFACE("edc817aa-92b8-11d1-b075-00c04fc33aa5") 1856 FolderItem2 : public FolderItem 1857 { 1858 virtual HRESULT STDMETHODCALLTYPE InvokeVerbEx( 1859 VARIANT vVerb, 1860 VARIANT vArgs) = 0; 1861 1862 virtual HRESULT STDMETHODCALLTYPE ExtendedProperty( 1863 BSTR bstrPropName, 1864 VARIANT *pvRet) = 0; 1865 1866 }; 1867 #ifdef __CRT_UUID_DECL 1868 __CRT_UUID_DECL(FolderItem2, 0xedc817aa, 0x92b8, 0x11d1, 0xb0,0x75, 0x00,0xc0,0x4f,0xc3,0x3a,0xa5) 1869 #endif 1870 #else 1871 typedef struct FolderItem2Vtbl { 1872 BEGIN_INTERFACE 1873 1874 /*** IUnknown methods ***/ 1875 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1876 FolderItem2 *This, 1877 REFIID riid, 1878 void **ppvObject); 1879 1880 ULONG (STDMETHODCALLTYPE *AddRef)( 1881 FolderItem2 *This); 1882 1883 ULONG (STDMETHODCALLTYPE *Release)( 1884 FolderItem2 *This); 1885 1886 /*** IDispatch methods ***/ 1887 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 1888 FolderItem2 *This, 1889 UINT *pctinfo); 1890 1891 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 1892 FolderItem2 *This, 1893 UINT iTInfo, 1894 LCID lcid, 1895 ITypeInfo **ppTInfo); 1896 1897 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 1898 FolderItem2 *This, 1899 REFIID riid, 1900 LPOLESTR *rgszNames, 1901 UINT cNames, 1902 LCID lcid, 1903 DISPID *rgDispId); 1904 1905 HRESULT (STDMETHODCALLTYPE *Invoke)( 1906 FolderItem2 *This, 1907 DISPID dispIdMember, 1908 REFIID riid, 1909 LCID lcid, 1910 WORD wFlags, 1911 DISPPARAMS *pDispParams, 1912 VARIANT *pVarResult, 1913 EXCEPINFO *pExcepInfo, 1914 UINT *puArgErr); 1915 1916 /*** FolderItem methods ***/ 1917 HRESULT (STDMETHODCALLTYPE *get_Application)( 1918 FolderItem2 *This, 1919 IDispatch **ppid); 1920 1921 HRESULT (STDMETHODCALLTYPE *get_Parent)( 1922 FolderItem2 *This, 1923 IDispatch **ppid); 1924 1925 HRESULT (STDMETHODCALLTYPE *get_Name)( 1926 FolderItem2 *This, 1927 BSTR *pbs); 1928 1929 HRESULT (STDMETHODCALLTYPE *put_Name)( 1930 FolderItem2 *This, 1931 BSTR bs); 1932 1933 HRESULT (STDMETHODCALLTYPE *get_Path)( 1934 FolderItem2 *This, 1935 BSTR *pbs); 1936 1937 HRESULT (STDMETHODCALLTYPE *get_GetLink)( 1938 FolderItem2 *This, 1939 IDispatch **ppid); 1940 1941 HRESULT (STDMETHODCALLTYPE *get_GetFolder)( 1942 FolderItem2 *This, 1943 IDispatch **ppid); 1944 1945 HRESULT (STDMETHODCALLTYPE *get_IsLink)( 1946 FolderItem2 *This, 1947 VARIANT_BOOL *pb); 1948 1949 HRESULT (STDMETHODCALLTYPE *get_IsFolder)( 1950 FolderItem2 *This, 1951 VARIANT_BOOL *pb); 1952 1953 HRESULT (STDMETHODCALLTYPE *get_IsFileSystem)( 1954 FolderItem2 *This, 1955 VARIANT_BOOL *pb); 1956 1957 HRESULT (STDMETHODCALLTYPE *get_IsBrowsable)( 1958 FolderItem2 *This, 1959 VARIANT_BOOL *pb); 1960 1961 HRESULT (STDMETHODCALLTYPE *get_ModifyDate)( 1962 FolderItem2 *This, 1963 DATE *pdt); 1964 1965 HRESULT (STDMETHODCALLTYPE *put_ModifyDate)( 1966 FolderItem2 *This, 1967 DATE dt); 1968 1969 HRESULT (STDMETHODCALLTYPE *get_Size)( 1970 FolderItem2 *This, 1971 LONG *pul); 1972 1973 HRESULT (STDMETHODCALLTYPE *get_Type)( 1974 FolderItem2 *This, 1975 BSTR *pbs); 1976 1977 HRESULT (STDMETHODCALLTYPE *Verbs)( 1978 FolderItem2 *This, 1979 FolderItemVerbs **ppfic); 1980 1981 HRESULT (STDMETHODCALLTYPE *InvokeVerb)( 1982 FolderItem2 *This, 1983 VARIANT vVerb); 1984 1985 /*** FolderItem2 methods ***/ 1986 HRESULT (STDMETHODCALLTYPE *InvokeVerbEx)( 1987 FolderItem2 *This, 1988 VARIANT vVerb, 1989 VARIANT vArgs); 1990 1991 HRESULT (STDMETHODCALLTYPE *ExtendedProperty)( 1992 FolderItem2 *This, 1993 BSTR bstrPropName, 1994 VARIANT *pvRet); 1995 1996 END_INTERFACE 1997 } FolderItem2Vtbl; 1998 1999 interface FolderItem2 { 2000 CONST_VTBL FolderItem2Vtbl* lpVtbl; 2001 }; 2002 2003 #ifdef COBJMACROS 2004 #ifndef WIDL_C_INLINE_WRAPPERS 2005 /*** IUnknown methods ***/ 2006 #define FolderItem2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2007 #define FolderItem2_AddRef(This) (This)->lpVtbl->AddRef(This) 2008 #define FolderItem2_Release(This) (This)->lpVtbl->Release(This) 2009 /*** IDispatch methods ***/ 2010 #define FolderItem2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 2011 #define FolderItem2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 2012 #define FolderItem2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 2013 #define FolderItem2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 2014 /*** FolderItem methods ***/ 2015 #define FolderItem2_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 2016 #define FolderItem2_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 2017 #define FolderItem2_get_Name(This,pbs) (This)->lpVtbl->get_Name(This,pbs) 2018 #define FolderItem2_put_Name(This,bs) (This)->lpVtbl->put_Name(This,bs) 2019 #define FolderItem2_get_Path(This,pbs) (This)->lpVtbl->get_Path(This,pbs) 2020 #define FolderItem2_get_GetLink(This,ppid) (This)->lpVtbl->get_GetLink(This,ppid) 2021 #define FolderItem2_get_GetFolder(This,ppid) (This)->lpVtbl->get_GetFolder(This,ppid) 2022 #define FolderItem2_get_IsLink(This,pb) (This)->lpVtbl->get_IsLink(This,pb) 2023 #define FolderItem2_get_IsFolder(This,pb) (This)->lpVtbl->get_IsFolder(This,pb) 2024 #define FolderItem2_get_IsFileSystem(This,pb) (This)->lpVtbl->get_IsFileSystem(This,pb) 2025 #define FolderItem2_get_IsBrowsable(This,pb) (This)->lpVtbl->get_IsBrowsable(This,pb) 2026 #define FolderItem2_get_ModifyDate(This,pdt) (This)->lpVtbl->get_ModifyDate(This,pdt) 2027 #define FolderItem2_put_ModifyDate(This,dt) (This)->lpVtbl->put_ModifyDate(This,dt) 2028 #define FolderItem2_get_Size(This,pul) (This)->lpVtbl->get_Size(This,pul) 2029 #define FolderItem2_get_Type(This,pbs) (This)->lpVtbl->get_Type(This,pbs) 2030 #define FolderItem2_Verbs(This,ppfic) (This)->lpVtbl->Verbs(This,ppfic) 2031 #define FolderItem2_InvokeVerb(This,vVerb) (This)->lpVtbl->InvokeVerb(This,vVerb) 2032 /*** FolderItem2 methods ***/ 2033 #define FolderItem2_InvokeVerbEx(This,vVerb,vArgs) (This)->lpVtbl->InvokeVerbEx(This,vVerb,vArgs) 2034 #define FolderItem2_ExtendedProperty(This,bstrPropName,pvRet) (This)->lpVtbl->ExtendedProperty(This,bstrPropName,pvRet) 2035 #else 2036 /*** IUnknown methods ***/ 2037 static FORCEINLINE HRESULT FolderItem2_QueryInterface(FolderItem2* This,REFIID riid,void **ppvObject) { 2038 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2039 } 2040 static FORCEINLINE ULONG FolderItem2_AddRef(FolderItem2* This) { 2041 return This->lpVtbl->AddRef(This); 2042 } 2043 static FORCEINLINE ULONG FolderItem2_Release(FolderItem2* This) { 2044 return This->lpVtbl->Release(This); 2045 } 2046 /*** IDispatch methods ***/ 2047 static FORCEINLINE HRESULT FolderItem2_GetTypeInfoCount(FolderItem2* This,UINT *pctinfo) { 2048 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 2049 } 2050 static FORCEINLINE HRESULT FolderItem2_GetTypeInfo(FolderItem2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 2051 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 2052 } 2053 static FORCEINLINE HRESULT FolderItem2_GetIDsOfNames(FolderItem2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 2054 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 2055 } 2056 static FORCEINLINE HRESULT FolderItem2_Invoke(FolderItem2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 2057 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 2058 } 2059 /*** FolderItem methods ***/ 2060 static FORCEINLINE HRESULT FolderItem2_get_Application(FolderItem2* This,IDispatch **ppid) { 2061 return This->lpVtbl->get_Application(This,ppid); 2062 } 2063 static FORCEINLINE HRESULT FolderItem2_get_Parent(FolderItem2* This,IDispatch **ppid) { 2064 return This->lpVtbl->get_Parent(This,ppid); 2065 } 2066 static FORCEINLINE HRESULT FolderItem2_get_Name(FolderItem2* This,BSTR *pbs) { 2067 return This->lpVtbl->get_Name(This,pbs); 2068 } 2069 static FORCEINLINE HRESULT FolderItem2_put_Name(FolderItem2* This,BSTR bs) { 2070 return This->lpVtbl->put_Name(This,bs); 2071 } 2072 static FORCEINLINE HRESULT FolderItem2_get_Path(FolderItem2* This,BSTR *pbs) { 2073 return This->lpVtbl->get_Path(This,pbs); 2074 } 2075 static FORCEINLINE HRESULT FolderItem2_get_GetLink(FolderItem2* This,IDispatch **ppid) { 2076 return This->lpVtbl->get_GetLink(This,ppid); 2077 } 2078 static FORCEINLINE HRESULT FolderItem2_get_GetFolder(FolderItem2* This,IDispatch **ppid) { 2079 return This->lpVtbl->get_GetFolder(This,ppid); 2080 } 2081 static FORCEINLINE HRESULT FolderItem2_get_IsLink(FolderItem2* This,VARIANT_BOOL *pb) { 2082 return This->lpVtbl->get_IsLink(This,pb); 2083 } 2084 static FORCEINLINE HRESULT FolderItem2_get_IsFolder(FolderItem2* This,VARIANT_BOOL *pb) { 2085 return This->lpVtbl->get_IsFolder(This,pb); 2086 } 2087 static FORCEINLINE HRESULT FolderItem2_get_IsFileSystem(FolderItem2* This,VARIANT_BOOL *pb) { 2088 return This->lpVtbl->get_IsFileSystem(This,pb); 2089 } 2090 static FORCEINLINE HRESULT FolderItem2_get_IsBrowsable(FolderItem2* This,VARIANT_BOOL *pb) { 2091 return This->lpVtbl->get_IsBrowsable(This,pb); 2092 } 2093 static FORCEINLINE HRESULT FolderItem2_get_ModifyDate(FolderItem2* This,DATE *pdt) { 2094 return This->lpVtbl->get_ModifyDate(This,pdt); 2095 } 2096 static FORCEINLINE HRESULT FolderItem2_put_ModifyDate(FolderItem2* This,DATE dt) { 2097 return This->lpVtbl->put_ModifyDate(This,dt); 2098 } 2099 static FORCEINLINE HRESULT FolderItem2_get_Size(FolderItem2* This,LONG *pul) { 2100 return This->lpVtbl->get_Size(This,pul); 2101 } 2102 static FORCEINLINE HRESULT FolderItem2_get_Type(FolderItem2* This,BSTR *pbs) { 2103 return This->lpVtbl->get_Type(This,pbs); 2104 } 2105 static FORCEINLINE HRESULT FolderItem2_Verbs(FolderItem2* This,FolderItemVerbs **ppfic) { 2106 return This->lpVtbl->Verbs(This,ppfic); 2107 } 2108 static FORCEINLINE HRESULT FolderItem2_InvokeVerb(FolderItem2* This,VARIANT vVerb) { 2109 return This->lpVtbl->InvokeVerb(This,vVerb); 2110 } 2111 /*** FolderItem2 methods ***/ 2112 static FORCEINLINE HRESULT FolderItem2_InvokeVerbEx(FolderItem2* This,VARIANT vVerb,VARIANT vArgs) { 2113 return This->lpVtbl->InvokeVerbEx(This,vVerb,vArgs); 2114 } 2115 static FORCEINLINE HRESULT FolderItem2_ExtendedProperty(FolderItem2* This,BSTR bstrPropName,VARIANT *pvRet) { 2116 return This->lpVtbl->ExtendedProperty(This,bstrPropName,pvRet); 2117 } 2118 #endif 2119 #endif 2120 2121 #endif 2122 2123 2124 #endif /* __FolderItem2_INTERFACE_DEFINED__ */ 2125 2126 /***************************************************************************** 2127 * ShellFolderItem coclass 2128 */ 2129 2130 DEFINE_GUID(CLSID_ShellFolderItem, 0x2fe352ea, 0xfd1f, 0x11d2, 0xb1,0xf4, 0x00,0xc0,0x4f,0x8e,0xeb,0x3e); 2131 2132 #ifdef __cplusplus 2133 class DECLSPEC_UUID("2fe352ea-fd1f-11d2-b1f4-00c04f8eeb3e") ShellFolderItem; 2134 #ifdef __CRT_UUID_DECL 2135 __CRT_UUID_DECL(ShellFolderItem, 0x2fe352ea, 0xfd1f, 0x11d2, 0xb1,0xf4, 0x00,0xc0,0x4f,0x8e,0xeb,0x3e) 2136 #endif 2137 #endif 2138 2139 /***************************************************************************** 2140 * FolderItems interface 2141 */ 2142 #ifndef __FolderItems_INTERFACE_DEFINED__ 2143 #define __FolderItems_INTERFACE_DEFINED__ 2144 2145 DEFINE_GUID(IID_FolderItems, 0x744129e0, 0xcbe5, 0x11ce, 0x83,0x50, 0x44,0x45,0x53,0x54,0x00,0x00); 2146 #if defined(__cplusplus) && !defined(CINTERFACE) 2147 MIDL_INTERFACE("744129e0-cbe5-11ce-8350-444553540000") 2148 FolderItems : public IDispatch 2149 { 2150 virtual HRESULT STDMETHODCALLTYPE get_Count( 2151 LONG *plCount) = 0; 2152 2153 virtual HRESULT STDMETHODCALLTYPE get_Application( 2154 IDispatch **ppid) = 0; 2155 2156 virtual HRESULT STDMETHODCALLTYPE get_Parent( 2157 IDispatch **ppid) = 0; 2158 2159 virtual HRESULT STDMETHODCALLTYPE Item( 2160 VARIANT index, 2161 FolderItem **ppid) = 0; 2162 2163 virtual HRESULT STDMETHODCALLTYPE _NewEnum( 2164 IUnknown **ppunk) = 0; 2165 2166 }; 2167 #ifdef __CRT_UUID_DECL 2168 __CRT_UUID_DECL(FolderItems, 0x744129e0, 0xcbe5, 0x11ce, 0x83,0x50, 0x44,0x45,0x53,0x54,0x00,0x00) 2169 #endif 2170 #else 2171 typedef struct FolderItemsVtbl { 2172 BEGIN_INTERFACE 2173 2174 /*** IUnknown methods ***/ 2175 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2176 FolderItems *This, 2177 REFIID riid, 2178 void **ppvObject); 2179 2180 ULONG (STDMETHODCALLTYPE *AddRef)( 2181 FolderItems *This); 2182 2183 ULONG (STDMETHODCALLTYPE *Release)( 2184 FolderItems *This); 2185 2186 /*** IDispatch methods ***/ 2187 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 2188 FolderItems *This, 2189 UINT *pctinfo); 2190 2191 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 2192 FolderItems *This, 2193 UINT iTInfo, 2194 LCID lcid, 2195 ITypeInfo **ppTInfo); 2196 2197 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 2198 FolderItems *This, 2199 REFIID riid, 2200 LPOLESTR *rgszNames, 2201 UINT cNames, 2202 LCID lcid, 2203 DISPID *rgDispId); 2204 2205 HRESULT (STDMETHODCALLTYPE *Invoke)( 2206 FolderItems *This, 2207 DISPID dispIdMember, 2208 REFIID riid, 2209 LCID lcid, 2210 WORD wFlags, 2211 DISPPARAMS *pDispParams, 2212 VARIANT *pVarResult, 2213 EXCEPINFO *pExcepInfo, 2214 UINT *puArgErr); 2215 2216 /*** FolderItems methods ***/ 2217 HRESULT (STDMETHODCALLTYPE *get_Count)( 2218 FolderItems *This, 2219 LONG *plCount); 2220 2221 HRESULT (STDMETHODCALLTYPE *get_Application)( 2222 FolderItems *This, 2223 IDispatch **ppid); 2224 2225 HRESULT (STDMETHODCALLTYPE *get_Parent)( 2226 FolderItems *This, 2227 IDispatch **ppid); 2228 2229 HRESULT (STDMETHODCALLTYPE *Item)( 2230 FolderItems *This, 2231 VARIANT index, 2232 FolderItem **ppid); 2233 2234 HRESULT (STDMETHODCALLTYPE *_NewEnum)( 2235 FolderItems *This, 2236 IUnknown **ppunk); 2237 2238 END_INTERFACE 2239 } FolderItemsVtbl; 2240 2241 interface FolderItems { 2242 CONST_VTBL FolderItemsVtbl* lpVtbl; 2243 }; 2244 2245 #ifdef COBJMACROS 2246 #ifndef WIDL_C_INLINE_WRAPPERS 2247 /*** IUnknown methods ***/ 2248 #define FolderItems_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2249 #define FolderItems_AddRef(This) (This)->lpVtbl->AddRef(This) 2250 #define FolderItems_Release(This) (This)->lpVtbl->Release(This) 2251 /*** IDispatch methods ***/ 2252 #define FolderItems_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 2253 #define FolderItems_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 2254 #define FolderItems_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 2255 #define FolderItems_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 2256 /*** FolderItems methods ***/ 2257 #define FolderItems_get_Count(This,plCount) (This)->lpVtbl->get_Count(This,plCount) 2258 #define FolderItems_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 2259 #define FolderItems_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 2260 #define FolderItems_Item(This,index,ppid) (This)->lpVtbl->Item(This,index,ppid) 2261 #define FolderItems__NewEnum(This,ppunk) (This)->lpVtbl->_NewEnum(This,ppunk) 2262 #else 2263 /*** IUnknown methods ***/ 2264 static FORCEINLINE HRESULT FolderItems_QueryInterface(FolderItems* This,REFIID riid,void **ppvObject) { 2265 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2266 } 2267 static FORCEINLINE ULONG FolderItems_AddRef(FolderItems* This) { 2268 return This->lpVtbl->AddRef(This); 2269 } 2270 static FORCEINLINE ULONG FolderItems_Release(FolderItems* This) { 2271 return This->lpVtbl->Release(This); 2272 } 2273 /*** IDispatch methods ***/ 2274 static FORCEINLINE HRESULT FolderItems_GetTypeInfoCount(FolderItems* This,UINT *pctinfo) { 2275 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 2276 } 2277 static FORCEINLINE HRESULT FolderItems_GetTypeInfo(FolderItems* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 2278 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 2279 } 2280 static FORCEINLINE HRESULT FolderItems_GetIDsOfNames(FolderItems* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 2281 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 2282 } 2283 static FORCEINLINE HRESULT FolderItems_Invoke(FolderItems* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 2284 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 2285 } 2286 /*** FolderItems methods ***/ 2287 static FORCEINLINE HRESULT FolderItems_get_Count(FolderItems* This,LONG *plCount) { 2288 return This->lpVtbl->get_Count(This,plCount); 2289 } 2290 static FORCEINLINE HRESULT FolderItems_get_Application(FolderItems* This,IDispatch **ppid) { 2291 return This->lpVtbl->get_Application(This,ppid); 2292 } 2293 static FORCEINLINE HRESULT FolderItems_get_Parent(FolderItems* This,IDispatch **ppid) { 2294 return This->lpVtbl->get_Parent(This,ppid); 2295 } 2296 static FORCEINLINE HRESULT FolderItems_Item(FolderItems* This,VARIANT index,FolderItem **ppid) { 2297 return This->lpVtbl->Item(This,index,ppid); 2298 } 2299 static FORCEINLINE HRESULT FolderItems__NewEnum(FolderItems* This,IUnknown **ppunk) { 2300 return This->lpVtbl->_NewEnum(This,ppunk); 2301 } 2302 #endif 2303 #endif 2304 2305 #endif 2306 2307 2308 #endif /* __FolderItems_INTERFACE_DEFINED__ */ 2309 2310 /***************************************************************************** 2311 * FolderItems2 interface 2312 */ 2313 #ifndef __FolderItems2_INTERFACE_DEFINED__ 2314 #define __FolderItems2_INTERFACE_DEFINED__ 2315 2316 DEFINE_GUID(IID_FolderItems2, 0xc94f0ad0, 0xf363, 0x11d2, 0xa3,0x27, 0x00,0xc0,0x4f,0x8e,0xec,0x7f); 2317 #if defined(__cplusplus) && !defined(CINTERFACE) 2318 MIDL_INTERFACE("c94f0ad0-f363-11d2-a327-00c04f8eec7f") 2319 FolderItems2 : public FolderItems 2320 { 2321 virtual HRESULT STDMETHODCALLTYPE InvokeVerbEx( 2322 VARIANT vVerb, 2323 VARIANT vArgs) = 0; 2324 2325 }; 2326 #ifdef __CRT_UUID_DECL 2327 __CRT_UUID_DECL(FolderItems2, 0xc94f0ad0, 0xf363, 0x11d2, 0xa3,0x27, 0x00,0xc0,0x4f,0x8e,0xec,0x7f) 2328 #endif 2329 #else 2330 typedef struct FolderItems2Vtbl { 2331 BEGIN_INTERFACE 2332 2333 /*** IUnknown methods ***/ 2334 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2335 FolderItems2 *This, 2336 REFIID riid, 2337 void **ppvObject); 2338 2339 ULONG (STDMETHODCALLTYPE *AddRef)( 2340 FolderItems2 *This); 2341 2342 ULONG (STDMETHODCALLTYPE *Release)( 2343 FolderItems2 *This); 2344 2345 /*** IDispatch methods ***/ 2346 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 2347 FolderItems2 *This, 2348 UINT *pctinfo); 2349 2350 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 2351 FolderItems2 *This, 2352 UINT iTInfo, 2353 LCID lcid, 2354 ITypeInfo **ppTInfo); 2355 2356 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 2357 FolderItems2 *This, 2358 REFIID riid, 2359 LPOLESTR *rgszNames, 2360 UINT cNames, 2361 LCID lcid, 2362 DISPID *rgDispId); 2363 2364 HRESULT (STDMETHODCALLTYPE *Invoke)( 2365 FolderItems2 *This, 2366 DISPID dispIdMember, 2367 REFIID riid, 2368 LCID lcid, 2369 WORD wFlags, 2370 DISPPARAMS *pDispParams, 2371 VARIANT *pVarResult, 2372 EXCEPINFO *pExcepInfo, 2373 UINT *puArgErr); 2374 2375 /*** FolderItems methods ***/ 2376 HRESULT (STDMETHODCALLTYPE *get_Count)( 2377 FolderItems2 *This, 2378 LONG *plCount); 2379 2380 HRESULT (STDMETHODCALLTYPE *get_Application)( 2381 FolderItems2 *This, 2382 IDispatch **ppid); 2383 2384 HRESULT (STDMETHODCALLTYPE *get_Parent)( 2385 FolderItems2 *This, 2386 IDispatch **ppid); 2387 2388 HRESULT (STDMETHODCALLTYPE *Item)( 2389 FolderItems2 *This, 2390 VARIANT index, 2391 FolderItem **ppid); 2392 2393 HRESULT (STDMETHODCALLTYPE *_NewEnum)( 2394 FolderItems2 *This, 2395 IUnknown **ppunk); 2396 2397 /*** FolderItems2 methods ***/ 2398 HRESULT (STDMETHODCALLTYPE *InvokeVerbEx)( 2399 FolderItems2 *This, 2400 VARIANT vVerb, 2401 VARIANT vArgs); 2402 2403 END_INTERFACE 2404 } FolderItems2Vtbl; 2405 2406 interface FolderItems2 { 2407 CONST_VTBL FolderItems2Vtbl* lpVtbl; 2408 }; 2409 2410 #ifdef COBJMACROS 2411 #ifndef WIDL_C_INLINE_WRAPPERS 2412 /*** IUnknown methods ***/ 2413 #define FolderItems2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2414 #define FolderItems2_AddRef(This) (This)->lpVtbl->AddRef(This) 2415 #define FolderItems2_Release(This) (This)->lpVtbl->Release(This) 2416 /*** IDispatch methods ***/ 2417 #define FolderItems2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 2418 #define FolderItems2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 2419 #define FolderItems2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 2420 #define FolderItems2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 2421 /*** FolderItems methods ***/ 2422 #define FolderItems2_get_Count(This,plCount) (This)->lpVtbl->get_Count(This,plCount) 2423 #define FolderItems2_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 2424 #define FolderItems2_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 2425 #define FolderItems2_Item(This,index,ppid) (This)->lpVtbl->Item(This,index,ppid) 2426 #define FolderItems2__NewEnum(This,ppunk) (This)->lpVtbl->_NewEnum(This,ppunk) 2427 /*** FolderItems2 methods ***/ 2428 #define FolderItems2_InvokeVerbEx(This,vVerb,vArgs) (This)->lpVtbl->InvokeVerbEx(This,vVerb,vArgs) 2429 #else 2430 /*** IUnknown methods ***/ 2431 static FORCEINLINE HRESULT FolderItems2_QueryInterface(FolderItems2* This,REFIID riid,void **ppvObject) { 2432 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2433 } 2434 static FORCEINLINE ULONG FolderItems2_AddRef(FolderItems2* This) { 2435 return This->lpVtbl->AddRef(This); 2436 } 2437 static FORCEINLINE ULONG FolderItems2_Release(FolderItems2* This) { 2438 return This->lpVtbl->Release(This); 2439 } 2440 /*** IDispatch methods ***/ 2441 static FORCEINLINE HRESULT FolderItems2_GetTypeInfoCount(FolderItems2* This,UINT *pctinfo) { 2442 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 2443 } 2444 static FORCEINLINE HRESULT FolderItems2_GetTypeInfo(FolderItems2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 2445 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 2446 } 2447 static FORCEINLINE HRESULT FolderItems2_GetIDsOfNames(FolderItems2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 2448 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 2449 } 2450 static FORCEINLINE HRESULT FolderItems2_Invoke(FolderItems2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 2451 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 2452 } 2453 /*** FolderItems methods ***/ 2454 static FORCEINLINE HRESULT FolderItems2_get_Count(FolderItems2* This,LONG *plCount) { 2455 return This->lpVtbl->get_Count(This,plCount); 2456 } 2457 static FORCEINLINE HRESULT FolderItems2_get_Application(FolderItems2* This,IDispatch **ppid) { 2458 return This->lpVtbl->get_Application(This,ppid); 2459 } 2460 static FORCEINLINE HRESULT FolderItems2_get_Parent(FolderItems2* This,IDispatch **ppid) { 2461 return This->lpVtbl->get_Parent(This,ppid); 2462 } 2463 static FORCEINLINE HRESULT FolderItems2_Item(FolderItems2* This,VARIANT index,FolderItem **ppid) { 2464 return This->lpVtbl->Item(This,index,ppid); 2465 } 2466 static FORCEINLINE HRESULT FolderItems2__NewEnum(FolderItems2* This,IUnknown **ppunk) { 2467 return This->lpVtbl->_NewEnum(This,ppunk); 2468 } 2469 /*** FolderItems2 methods ***/ 2470 static FORCEINLINE HRESULT FolderItems2_InvokeVerbEx(FolderItems2* This,VARIANT vVerb,VARIANT vArgs) { 2471 return This->lpVtbl->InvokeVerbEx(This,vVerb,vArgs); 2472 } 2473 #endif 2474 #endif 2475 2476 #endif 2477 2478 2479 #endif /* __FolderItems2_INTERFACE_DEFINED__ */ 2480 2481 /***************************************************************************** 2482 * FolderItems3 interface 2483 */ 2484 #ifndef __FolderItems3_INTERFACE_DEFINED__ 2485 #define __FolderItems3_INTERFACE_DEFINED__ 2486 2487 DEFINE_GUID(IID_FolderItems3, 0xeaa7c309, 0xbbec, 0x49d5, 0x82,0x1d, 0x64,0xd9,0x66,0xcb,0x66,0x7f); 2488 #if defined(__cplusplus) && !defined(CINTERFACE) 2489 MIDL_INTERFACE("eaa7c309-bbec-49d5-821d-64d966cb667f") 2490 FolderItems3 : public FolderItems2 2491 { 2492 virtual HRESULT STDMETHODCALLTYPE Filter( 2493 LONG grfFlags, 2494 BSTR bstrFileSpec) = 0; 2495 2496 virtual HRESULT STDMETHODCALLTYPE get_Verbs( 2497 FolderItemVerbs **ppfic) = 0; 2498 2499 }; 2500 #ifdef __CRT_UUID_DECL 2501 __CRT_UUID_DECL(FolderItems3, 0xeaa7c309, 0xbbec, 0x49d5, 0x82,0x1d, 0x64,0xd9,0x66,0xcb,0x66,0x7f) 2502 #endif 2503 #else 2504 typedef struct FolderItems3Vtbl { 2505 BEGIN_INTERFACE 2506 2507 /*** IUnknown methods ***/ 2508 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2509 FolderItems3 *This, 2510 REFIID riid, 2511 void **ppvObject); 2512 2513 ULONG (STDMETHODCALLTYPE *AddRef)( 2514 FolderItems3 *This); 2515 2516 ULONG (STDMETHODCALLTYPE *Release)( 2517 FolderItems3 *This); 2518 2519 /*** IDispatch methods ***/ 2520 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 2521 FolderItems3 *This, 2522 UINT *pctinfo); 2523 2524 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 2525 FolderItems3 *This, 2526 UINT iTInfo, 2527 LCID lcid, 2528 ITypeInfo **ppTInfo); 2529 2530 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 2531 FolderItems3 *This, 2532 REFIID riid, 2533 LPOLESTR *rgszNames, 2534 UINT cNames, 2535 LCID lcid, 2536 DISPID *rgDispId); 2537 2538 HRESULT (STDMETHODCALLTYPE *Invoke)( 2539 FolderItems3 *This, 2540 DISPID dispIdMember, 2541 REFIID riid, 2542 LCID lcid, 2543 WORD wFlags, 2544 DISPPARAMS *pDispParams, 2545 VARIANT *pVarResult, 2546 EXCEPINFO *pExcepInfo, 2547 UINT *puArgErr); 2548 2549 /*** FolderItems methods ***/ 2550 HRESULT (STDMETHODCALLTYPE *get_Count)( 2551 FolderItems3 *This, 2552 LONG *plCount); 2553 2554 HRESULT (STDMETHODCALLTYPE *get_Application)( 2555 FolderItems3 *This, 2556 IDispatch **ppid); 2557 2558 HRESULT (STDMETHODCALLTYPE *get_Parent)( 2559 FolderItems3 *This, 2560 IDispatch **ppid); 2561 2562 HRESULT (STDMETHODCALLTYPE *Item)( 2563 FolderItems3 *This, 2564 VARIANT index, 2565 FolderItem **ppid); 2566 2567 HRESULT (STDMETHODCALLTYPE *_NewEnum)( 2568 FolderItems3 *This, 2569 IUnknown **ppunk); 2570 2571 /*** FolderItems2 methods ***/ 2572 HRESULT (STDMETHODCALLTYPE *InvokeVerbEx)( 2573 FolderItems3 *This, 2574 VARIANT vVerb, 2575 VARIANT vArgs); 2576 2577 /*** FolderItems3 methods ***/ 2578 HRESULT (STDMETHODCALLTYPE *Filter)( 2579 FolderItems3 *This, 2580 LONG grfFlags, 2581 BSTR bstrFileSpec); 2582 2583 HRESULT (STDMETHODCALLTYPE *get_Verbs)( 2584 FolderItems3 *This, 2585 FolderItemVerbs **ppfic); 2586 2587 END_INTERFACE 2588 } FolderItems3Vtbl; 2589 2590 interface FolderItems3 { 2591 CONST_VTBL FolderItems3Vtbl* lpVtbl; 2592 }; 2593 2594 #ifdef COBJMACROS 2595 #ifndef WIDL_C_INLINE_WRAPPERS 2596 /*** IUnknown methods ***/ 2597 #define FolderItems3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2598 #define FolderItems3_AddRef(This) (This)->lpVtbl->AddRef(This) 2599 #define FolderItems3_Release(This) (This)->lpVtbl->Release(This) 2600 /*** IDispatch methods ***/ 2601 #define FolderItems3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 2602 #define FolderItems3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 2603 #define FolderItems3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 2604 #define FolderItems3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 2605 /*** FolderItems methods ***/ 2606 #define FolderItems3_get_Count(This,plCount) (This)->lpVtbl->get_Count(This,plCount) 2607 #define FolderItems3_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 2608 #define FolderItems3_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 2609 #define FolderItems3_Item(This,index,ppid) (This)->lpVtbl->Item(This,index,ppid) 2610 #define FolderItems3__NewEnum(This,ppunk) (This)->lpVtbl->_NewEnum(This,ppunk) 2611 /*** FolderItems2 methods ***/ 2612 #define FolderItems3_InvokeVerbEx(This,vVerb,vArgs) (This)->lpVtbl->InvokeVerbEx(This,vVerb,vArgs) 2613 /*** FolderItems3 methods ***/ 2614 #define FolderItems3_Filter(This,grfFlags,bstrFileSpec) (This)->lpVtbl->Filter(This,grfFlags,bstrFileSpec) 2615 #define FolderItems3_get_Verbs(This,ppfic) (This)->lpVtbl->get_Verbs(This,ppfic) 2616 #else 2617 /*** IUnknown methods ***/ 2618 static FORCEINLINE HRESULT FolderItems3_QueryInterface(FolderItems3* This,REFIID riid,void **ppvObject) { 2619 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2620 } 2621 static FORCEINLINE ULONG FolderItems3_AddRef(FolderItems3* This) { 2622 return This->lpVtbl->AddRef(This); 2623 } 2624 static FORCEINLINE ULONG FolderItems3_Release(FolderItems3* This) { 2625 return This->lpVtbl->Release(This); 2626 } 2627 /*** IDispatch methods ***/ 2628 static FORCEINLINE HRESULT FolderItems3_GetTypeInfoCount(FolderItems3* This,UINT *pctinfo) { 2629 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 2630 } 2631 static FORCEINLINE HRESULT FolderItems3_GetTypeInfo(FolderItems3* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 2632 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 2633 } 2634 static FORCEINLINE HRESULT FolderItems3_GetIDsOfNames(FolderItems3* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 2635 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 2636 } 2637 static FORCEINLINE HRESULT FolderItems3_Invoke(FolderItems3* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 2638 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 2639 } 2640 /*** FolderItems methods ***/ 2641 static FORCEINLINE HRESULT FolderItems3_get_Count(FolderItems3* This,LONG *plCount) { 2642 return This->lpVtbl->get_Count(This,plCount); 2643 } 2644 static FORCEINLINE HRESULT FolderItems3_get_Application(FolderItems3* This,IDispatch **ppid) { 2645 return This->lpVtbl->get_Application(This,ppid); 2646 } 2647 static FORCEINLINE HRESULT FolderItems3_get_Parent(FolderItems3* This,IDispatch **ppid) { 2648 return This->lpVtbl->get_Parent(This,ppid); 2649 } 2650 static FORCEINLINE HRESULT FolderItems3_Item(FolderItems3* This,VARIANT index,FolderItem **ppid) { 2651 return This->lpVtbl->Item(This,index,ppid); 2652 } 2653 static FORCEINLINE HRESULT FolderItems3__NewEnum(FolderItems3* This,IUnknown **ppunk) { 2654 return This->lpVtbl->_NewEnum(This,ppunk); 2655 } 2656 /*** FolderItems2 methods ***/ 2657 static FORCEINLINE HRESULT FolderItems3_InvokeVerbEx(FolderItems3* This,VARIANT vVerb,VARIANT vArgs) { 2658 return This->lpVtbl->InvokeVerbEx(This,vVerb,vArgs); 2659 } 2660 /*** FolderItems3 methods ***/ 2661 static FORCEINLINE HRESULT FolderItems3_Filter(FolderItems3* This,LONG grfFlags,BSTR bstrFileSpec) { 2662 return This->lpVtbl->Filter(This,grfFlags,bstrFileSpec); 2663 } 2664 static FORCEINLINE HRESULT FolderItems3_get_Verbs(FolderItems3* This,FolderItemVerbs **ppfic) { 2665 return This->lpVtbl->get_Verbs(This,ppfic); 2666 } 2667 #endif 2668 #endif 2669 2670 #endif 2671 2672 2673 #endif /* __FolderItems3_INTERFACE_DEFINED__ */ 2674 2675 /***************************************************************************** 2676 * FolderItemVerb interface 2677 */ 2678 #ifndef __FolderItemVerb_INTERFACE_DEFINED__ 2679 #define __FolderItemVerb_INTERFACE_DEFINED__ 2680 2681 DEFINE_GUID(IID_FolderItemVerb, 0x08ec3e00, 0x50b0, 0x11cf, 0x96,0x0c, 0x00,0x80,0xc7,0xf4,0xee,0x85); 2682 #if defined(__cplusplus) && !defined(CINTERFACE) 2683 MIDL_INTERFACE("08ec3e00-50b0-11cf-960c-0080c7f4ee85") 2684 FolderItemVerb : public IDispatch 2685 { 2686 virtual HRESULT STDMETHODCALLTYPE get_Application( 2687 IDispatch **ppid) = 0; 2688 2689 virtual HRESULT STDMETHODCALLTYPE get_Parent( 2690 IDispatch **ppid) = 0; 2691 2692 virtual HRESULT STDMETHODCALLTYPE get_Name( 2693 BSTR *pbs) = 0; 2694 2695 virtual HRESULT STDMETHODCALLTYPE DoIt( 2696 ) = 0; 2697 2698 }; 2699 #ifdef __CRT_UUID_DECL 2700 __CRT_UUID_DECL(FolderItemVerb, 0x08ec3e00, 0x50b0, 0x11cf, 0x96,0x0c, 0x00,0x80,0xc7,0xf4,0xee,0x85) 2701 #endif 2702 #else 2703 typedef struct FolderItemVerbVtbl { 2704 BEGIN_INTERFACE 2705 2706 /*** IUnknown methods ***/ 2707 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2708 FolderItemVerb *This, 2709 REFIID riid, 2710 void **ppvObject); 2711 2712 ULONG (STDMETHODCALLTYPE *AddRef)( 2713 FolderItemVerb *This); 2714 2715 ULONG (STDMETHODCALLTYPE *Release)( 2716 FolderItemVerb *This); 2717 2718 /*** IDispatch methods ***/ 2719 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 2720 FolderItemVerb *This, 2721 UINT *pctinfo); 2722 2723 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 2724 FolderItemVerb *This, 2725 UINT iTInfo, 2726 LCID lcid, 2727 ITypeInfo **ppTInfo); 2728 2729 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 2730 FolderItemVerb *This, 2731 REFIID riid, 2732 LPOLESTR *rgszNames, 2733 UINT cNames, 2734 LCID lcid, 2735 DISPID *rgDispId); 2736 2737 HRESULT (STDMETHODCALLTYPE *Invoke)( 2738 FolderItemVerb *This, 2739 DISPID dispIdMember, 2740 REFIID riid, 2741 LCID lcid, 2742 WORD wFlags, 2743 DISPPARAMS *pDispParams, 2744 VARIANT *pVarResult, 2745 EXCEPINFO *pExcepInfo, 2746 UINT *puArgErr); 2747 2748 /*** FolderItemVerb methods ***/ 2749 HRESULT (STDMETHODCALLTYPE *get_Application)( 2750 FolderItemVerb *This, 2751 IDispatch **ppid); 2752 2753 HRESULT (STDMETHODCALLTYPE *get_Parent)( 2754 FolderItemVerb *This, 2755 IDispatch **ppid); 2756 2757 HRESULT (STDMETHODCALLTYPE *get_Name)( 2758 FolderItemVerb *This, 2759 BSTR *pbs); 2760 2761 HRESULT (STDMETHODCALLTYPE *DoIt)( 2762 FolderItemVerb *This); 2763 2764 END_INTERFACE 2765 } FolderItemVerbVtbl; 2766 2767 interface FolderItemVerb { 2768 CONST_VTBL FolderItemVerbVtbl* lpVtbl; 2769 }; 2770 2771 #ifdef COBJMACROS 2772 #ifndef WIDL_C_INLINE_WRAPPERS 2773 /*** IUnknown methods ***/ 2774 #define FolderItemVerb_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2775 #define FolderItemVerb_AddRef(This) (This)->lpVtbl->AddRef(This) 2776 #define FolderItemVerb_Release(This) (This)->lpVtbl->Release(This) 2777 /*** IDispatch methods ***/ 2778 #define FolderItemVerb_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 2779 #define FolderItemVerb_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 2780 #define FolderItemVerb_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 2781 #define FolderItemVerb_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 2782 /*** FolderItemVerb methods ***/ 2783 #define FolderItemVerb_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 2784 #define FolderItemVerb_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 2785 #define FolderItemVerb_get_Name(This,pbs) (This)->lpVtbl->get_Name(This,pbs) 2786 #define FolderItemVerb_DoIt(This) (This)->lpVtbl->DoIt(This) 2787 #else 2788 /*** IUnknown methods ***/ 2789 static FORCEINLINE HRESULT FolderItemVerb_QueryInterface(FolderItemVerb* This,REFIID riid,void **ppvObject) { 2790 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2791 } 2792 static FORCEINLINE ULONG FolderItemVerb_AddRef(FolderItemVerb* This) { 2793 return This->lpVtbl->AddRef(This); 2794 } 2795 static FORCEINLINE ULONG FolderItemVerb_Release(FolderItemVerb* This) { 2796 return This->lpVtbl->Release(This); 2797 } 2798 /*** IDispatch methods ***/ 2799 static FORCEINLINE HRESULT FolderItemVerb_GetTypeInfoCount(FolderItemVerb* This,UINT *pctinfo) { 2800 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 2801 } 2802 static FORCEINLINE HRESULT FolderItemVerb_GetTypeInfo(FolderItemVerb* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 2803 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 2804 } 2805 static FORCEINLINE HRESULT FolderItemVerb_GetIDsOfNames(FolderItemVerb* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 2806 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 2807 } 2808 static FORCEINLINE HRESULT FolderItemVerb_Invoke(FolderItemVerb* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 2809 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 2810 } 2811 /*** FolderItemVerb methods ***/ 2812 static FORCEINLINE HRESULT FolderItemVerb_get_Application(FolderItemVerb* This,IDispatch **ppid) { 2813 return This->lpVtbl->get_Application(This,ppid); 2814 } 2815 static FORCEINLINE HRESULT FolderItemVerb_get_Parent(FolderItemVerb* This,IDispatch **ppid) { 2816 return This->lpVtbl->get_Parent(This,ppid); 2817 } 2818 static FORCEINLINE HRESULT FolderItemVerb_get_Name(FolderItemVerb* This,BSTR *pbs) { 2819 return This->lpVtbl->get_Name(This,pbs); 2820 } 2821 static FORCEINLINE HRESULT FolderItemVerb_DoIt(FolderItemVerb* This) { 2822 return This->lpVtbl->DoIt(This); 2823 } 2824 #endif 2825 #endif 2826 2827 #endif 2828 2829 2830 #endif /* __FolderItemVerb_INTERFACE_DEFINED__ */ 2831 2832 /***************************************************************************** 2833 * FolderItemVerbs interface 2834 */ 2835 #ifndef __FolderItemVerbs_INTERFACE_DEFINED__ 2836 #define __FolderItemVerbs_INTERFACE_DEFINED__ 2837 2838 DEFINE_GUID(IID_FolderItemVerbs, 0x1f8352c0, 0x50b0, 0x11cf, 0x96,0x0c, 0x00,0x80,0xc7,0xf4,0xee,0x85); 2839 #if defined(__cplusplus) && !defined(CINTERFACE) 2840 MIDL_INTERFACE("1f8352c0-50b0-11cf-960c-0080c7f4ee85") 2841 FolderItemVerbs : public IDispatch 2842 { 2843 virtual HRESULT STDMETHODCALLTYPE get_Count( 2844 LONG *plCount) = 0; 2845 2846 virtual HRESULT STDMETHODCALLTYPE get_Application( 2847 IDispatch **ppid) = 0; 2848 2849 virtual HRESULT STDMETHODCALLTYPE get_Parent( 2850 IDispatch **ppid) = 0; 2851 2852 virtual HRESULT STDMETHODCALLTYPE Item( 2853 VARIANT index, 2854 FolderItemVerb **ppid) = 0; 2855 2856 virtual HRESULT STDMETHODCALLTYPE _NewEnum( 2857 IUnknown **ppunk) = 0; 2858 2859 }; 2860 #ifdef __CRT_UUID_DECL 2861 __CRT_UUID_DECL(FolderItemVerbs, 0x1f8352c0, 0x50b0, 0x11cf, 0x96,0x0c, 0x00,0x80,0xc7,0xf4,0xee,0x85) 2862 #endif 2863 #else 2864 typedef struct FolderItemVerbsVtbl { 2865 BEGIN_INTERFACE 2866 2867 /*** IUnknown methods ***/ 2868 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2869 FolderItemVerbs *This, 2870 REFIID riid, 2871 void **ppvObject); 2872 2873 ULONG (STDMETHODCALLTYPE *AddRef)( 2874 FolderItemVerbs *This); 2875 2876 ULONG (STDMETHODCALLTYPE *Release)( 2877 FolderItemVerbs *This); 2878 2879 /*** IDispatch methods ***/ 2880 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 2881 FolderItemVerbs *This, 2882 UINT *pctinfo); 2883 2884 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 2885 FolderItemVerbs *This, 2886 UINT iTInfo, 2887 LCID lcid, 2888 ITypeInfo **ppTInfo); 2889 2890 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 2891 FolderItemVerbs *This, 2892 REFIID riid, 2893 LPOLESTR *rgszNames, 2894 UINT cNames, 2895 LCID lcid, 2896 DISPID *rgDispId); 2897 2898 HRESULT (STDMETHODCALLTYPE *Invoke)( 2899 FolderItemVerbs *This, 2900 DISPID dispIdMember, 2901 REFIID riid, 2902 LCID lcid, 2903 WORD wFlags, 2904 DISPPARAMS *pDispParams, 2905 VARIANT *pVarResult, 2906 EXCEPINFO *pExcepInfo, 2907 UINT *puArgErr); 2908 2909 /*** FolderItemVerbs methods ***/ 2910 HRESULT (STDMETHODCALLTYPE *get_Count)( 2911 FolderItemVerbs *This, 2912 LONG *plCount); 2913 2914 HRESULT (STDMETHODCALLTYPE *get_Application)( 2915 FolderItemVerbs *This, 2916 IDispatch **ppid); 2917 2918 HRESULT (STDMETHODCALLTYPE *get_Parent)( 2919 FolderItemVerbs *This, 2920 IDispatch **ppid); 2921 2922 HRESULT (STDMETHODCALLTYPE *Item)( 2923 FolderItemVerbs *This, 2924 VARIANT index, 2925 FolderItemVerb **ppid); 2926 2927 HRESULT (STDMETHODCALLTYPE *_NewEnum)( 2928 FolderItemVerbs *This, 2929 IUnknown **ppunk); 2930 2931 END_INTERFACE 2932 } FolderItemVerbsVtbl; 2933 2934 interface FolderItemVerbs { 2935 CONST_VTBL FolderItemVerbsVtbl* lpVtbl; 2936 }; 2937 2938 #ifdef COBJMACROS 2939 #ifndef WIDL_C_INLINE_WRAPPERS 2940 /*** IUnknown methods ***/ 2941 #define FolderItemVerbs_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2942 #define FolderItemVerbs_AddRef(This) (This)->lpVtbl->AddRef(This) 2943 #define FolderItemVerbs_Release(This) (This)->lpVtbl->Release(This) 2944 /*** IDispatch methods ***/ 2945 #define FolderItemVerbs_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 2946 #define FolderItemVerbs_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 2947 #define FolderItemVerbs_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 2948 #define FolderItemVerbs_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 2949 /*** FolderItemVerbs methods ***/ 2950 #define FolderItemVerbs_get_Count(This,plCount) (This)->lpVtbl->get_Count(This,plCount) 2951 #define FolderItemVerbs_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 2952 #define FolderItemVerbs_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 2953 #define FolderItemVerbs_Item(This,index,ppid) (This)->lpVtbl->Item(This,index,ppid) 2954 #define FolderItemVerbs__NewEnum(This,ppunk) (This)->lpVtbl->_NewEnum(This,ppunk) 2955 #else 2956 /*** IUnknown methods ***/ 2957 static FORCEINLINE HRESULT FolderItemVerbs_QueryInterface(FolderItemVerbs* This,REFIID riid,void **ppvObject) { 2958 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2959 } 2960 static FORCEINLINE ULONG FolderItemVerbs_AddRef(FolderItemVerbs* This) { 2961 return This->lpVtbl->AddRef(This); 2962 } 2963 static FORCEINLINE ULONG FolderItemVerbs_Release(FolderItemVerbs* This) { 2964 return This->lpVtbl->Release(This); 2965 } 2966 /*** IDispatch methods ***/ 2967 static FORCEINLINE HRESULT FolderItemVerbs_GetTypeInfoCount(FolderItemVerbs* This,UINT *pctinfo) { 2968 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 2969 } 2970 static FORCEINLINE HRESULT FolderItemVerbs_GetTypeInfo(FolderItemVerbs* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 2971 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 2972 } 2973 static FORCEINLINE HRESULT FolderItemVerbs_GetIDsOfNames(FolderItemVerbs* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 2974 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 2975 } 2976 static FORCEINLINE HRESULT FolderItemVerbs_Invoke(FolderItemVerbs* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 2977 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 2978 } 2979 /*** FolderItemVerbs methods ***/ 2980 static FORCEINLINE HRESULT FolderItemVerbs_get_Count(FolderItemVerbs* This,LONG *plCount) { 2981 return This->lpVtbl->get_Count(This,plCount); 2982 } 2983 static FORCEINLINE HRESULT FolderItemVerbs_get_Application(FolderItemVerbs* This,IDispatch **ppid) { 2984 return This->lpVtbl->get_Application(This,ppid); 2985 } 2986 static FORCEINLINE HRESULT FolderItemVerbs_get_Parent(FolderItemVerbs* This,IDispatch **ppid) { 2987 return This->lpVtbl->get_Parent(This,ppid); 2988 } 2989 static FORCEINLINE HRESULT FolderItemVerbs_Item(FolderItemVerbs* This,VARIANT index,FolderItemVerb **ppid) { 2990 return This->lpVtbl->Item(This,index,ppid); 2991 } 2992 static FORCEINLINE HRESULT FolderItemVerbs__NewEnum(FolderItemVerbs* This,IUnknown **ppunk) { 2993 return This->lpVtbl->_NewEnum(This,ppunk); 2994 } 2995 #endif 2996 #endif 2997 2998 #endif 2999 3000 3001 #endif /* __FolderItemVerbs_INTERFACE_DEFINED__ */ 3002 3003 /***************************************************************************** 3004 * IShellLinkDual interface 3005 */ 3006 #ifndef __IShellLinkDual_INTERFACE_DEFINED__ 3007 #define __IShellLinkDual_INTERFACE_DEFINED__ 3008 3009 DEFINE_GUID(IID_IShellLinkDual, 0x88a05c00, 0xf000, 0x11ce, 0x83,0x50, 0x44,0x45,0x53,0x54,0x00,0x00); 3010 #if defined(__cplusplus) && !defined(CINTERFACE) 3011 MIDL_INTERFACE("88a05c00-f000-11ce-8350-444553540000") 3012 IShellLinkDual : public IDispatch 3013 { 3014 virtual HRESULT STDMETHODCALLTYPE get_Path( 3015 BSTR *pbs) = 0; 3016 3017 virtual HRESULT STDMETHODCALLTYPE put_Path( 3018 BSTR bs) = 0; 3019 3020 virtual HRESULT STDMETHODCALLTYPE get_Description( 3021 BSTR *pbs) = 0; 3022 3023 virtual HRESULT STDMETHODCALLTYPE put_Description( 3024 BSTR bs) = 0; 3025 3026 virtual HRESULT STDMETHODCALLTYPE get_WorkingDirectory( 3027 BSTR *pbs) = 0; 3028 3029 virtual HRESULT STDMETHODCALLTYPE put_WorkingDirectory( 3030 BSTR bs) = 0; 3031 3032 virtual HRESULT STDMETHODCALLTYPE get_Arguments( 3033 BSTR *pbs) = 0; 3034 3035 virtual HRESULT STDMETHODCALLTYPE put_Arguments( 3036 BSTR bs) = 0; 3037 3038 virtual HRESULT STDMETHODCALLTYPE get_Hotkey( 3039 int *piHK) = 0; 3040 3041 virtual HRESULT STDMETHODCALLTYPE put_Hotkey( 3042 int iHK) = 0; 3043 3044 virtual HRESULT STDMETHODCALLTYPE get_ShowCommand( 3045 int *piShowCommand) = 0; 3046 3047 virtual HRESULT STDMETHODCALLTYPE put_ShowCommand( 3048 int iShowCommand) = 0; 3049 3050 virtual HRESULT STDMETHODCALLTYPE Resolve( 3051 int fFlags) = 0; 3052 3053 virtual HRESULT STDMETHODCALLTYPE GetIconLocation( 3054 BSTR *pbs, 3055 int *piIcon) = 0; 3056 3057 virtual HRESULT STDMETHODCALLTYPE SetIconLocation( 3058 BSTR bs, 3059 int iIcon) = 0; 3060 3061 virtual HRESULT STDMETHODCALLTYPE Save( 3062 VARIANT vWhere) = 0; 3063 3064 }; 3065 #ifdef __CRT_UUID_DECL 3066 __CRT_UUID_DECL(IShellLinkDual, 0x88a05c00, 0xf000, 0x11ce, 0x83,0x50, 0x44,0x45,0x53,0x54,0x00,0x00) 3067 #endif 3068 #else 3069 typedef struct IShellLinkDualVtbl { 3070 BEGIN_INTERFACE 3071 3072 /*** IUnknown methods ***/ 3073 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3074 IShellLinkDual *This, 3075 REFIID riid, 3076 void **ppvObject); 3077 3078 ULONG (STDMETHODCALLTYPE *AddRef)( 3079 IShellLinkDual *This); 3080 3081 ULONG (STDMETHODCALLTYPE *Release)( 3082 IShellLinkDual *This); 3083 3084 /*** IDispatch methods ***/ 3085 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 3086 IShellLinkDual *This, 3087 UINT *pctinfo); 3088 3089 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 3090 IShellLinkDual *This, 3091 UINT iTInfo, 3092 LCID lcid, 3093 ITypeInfo **ppTInfo); 3094 3095 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 3096 IShellLinkDual *This, 3097 REFIID riid, 3098 LPOLESTR *rgszNames, 3099 UINT cNames, 3100 LCID lcid, 3101 DISPID *rgDispId); 3102 3103 HRESULT (STDMETHODCALLTYPE *Invoke)( 3104 IShellLinkDual *This, 3105 DISPID dispIdMember, 3106 REFIID riid, 3107 LCID lcid, 3108 WORD wFlags, 3109 DISPPARAMS *pDispParams, 3110 VARIANT *pVarResult, 3111 EXCEPINFO *pExcepInfo, 3112 UINT *puArgErr); 3113 3114 /*** IShellLinkDual methods ***/ 3115 HRESULT (STDMETHODCALLTYPE *get_Path)( 3116 IShellLinkDual *This, 3117 BSTR *pbs); 3118 3119 HRESULT (STDMETHODCALLTYPE *put_Path)( 3120 IShellLinkDual *This, 3121 BSTR bs); 3122 3123 HRESULT (STDMETHODCALLTYPE *get_Description)( 3124 IShellLinkDual *This, 3125 BSTR *pbs); 3126 3127 HRESULT (STDMETHODCALLTYPE *put_Description)( 3128 IShellLinkDual *This, 3129 BSTR bs); 3130 3131 HRESULT (STDMETHODCALLTYPE *get_WorkingDirectory)( 3132 IShellLinkDual *This, 3133 BSTR *pbs); 3134 3135 HRESULT (STDMETHODCALLTYPE *put_WorkingDirectory)( 3136 IShellLinkDual *This, 3137 BSTR bs); 3138 3139 HRESULT (STDMETHODCALLTYPE *get_Arguments)( 3140 IShellLinkDual *This, 3141 BSTR *pbs); 3142 3143 HRESULT (STDMETHODCALLTYPE *put_Arguments)( 3144 IShellLinkDual *This, 3145 BSTR bs); 3146 3147 HRESULT (STDMETHODCALLTYPE *get_Hotkey)( 3148 IShellLinkDual *This, 3149 int *piHK); 3150 3151 HRESULT (STDMETHODCALLTYPE *put_Hotkey)( 3152 IShellLinkDual *This, 3153 int iHK); 3154 3155 HRESULT (STDMETHODCALLTYPE *get_ShowCommand)( 3156 IShellLinkDual *This, 3157 int *piShowCommand); 3158 3159 HRESULT (STDMETHODCALLTYPE *put_ShowCommand)( 3160 IShellLinkDual *This, 3161 int iShowCommand); 3162 3163 HRESULT (STDMETHODCALLTYPE *Resolve)( 3164 IShellLinkDual *This, 3165 int fFlags); 3166 3167 HRESULT (STDMETHODCALLTYPE *GetIconLocation)( 3168 IShellLinkDual *This, 3169 BSTR *pbs, 3170 int *piIcon); 3171 3172 HRESULT (STDMETHODCALLTYPE *SetIconLocation)( 3173 IShellLinkDual *This, 3174 BSTR bs, 3175 int iIcon); 3176 3177 HRESULT (STDMETHODCALLTYPE *Save)( 3178 IShellLinkDual *This, 3179 VARIANT vWhere); 3180 3181 END_INTERFACE 3182 } IShellLinkDualVtbl; 3183 3184 interface IShellLinkDual { 3185 CONST_VTBL IShellLinkDualVtbl* lpVtbl; 3186 }; 3187 3188 #ifdef COBJMACROS 3189 #ifndef WIDL_C_INLINE_WRAPPERS 3190 /*** IUnknown methods ***/ 3191 #define IShellLinkDual_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3192 #define IShellLinkDual_AddRef(This) (This)->lpVtbl->AddRef(This) 3193 #define IShellLinkDual_Release(This) (This)->lpVtbl->Release(This) 3194 /*** IDispatch methods ***/ 3195 #define IShellLinkDual_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 3196 #define IShellLinkDual_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 3197 #define IShellLinkDual_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 3198 #define IShellLinkDual_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 3199 /*** IShellLinkDual methods ***/ 3200 #define IShellLinkDual_get_Path(This,pbs) (This)->lpVtbl->get_Path(This,pbs) 3201 #define IShellLinkDual_put_Path(This,bs) (This)->lpVtbl->put_Path(This,bs) 3202 #define IShellLinkDual_get_Description(This,pbs) (This)->lpVtbl->get_Description(This,pbs) 3203 #define IShellLinkDual_put_Description(This,bs) (This)->lpVtbl->put_Description(This,bs) 3204 #define IShellLinkDual_get_WorkingDirectory(This,pbs) (This)->lpVtbl->get_WorkingDirectory(This,pbs) 3205 #define IShellLinkDual_put_WorkingDirectory(This,bs) (This)->lpVtbl->put_WorkingDirectory(This,bs) 3206 #define IShellLinkDual_get_Arguments(This,pbs) (This)->lpVtbl->get_Arguments(This,pbs) 3207 #define IShellLinkDual_put_Arguments(This,bs) (This)->lpVtbl->put_Arguments(This,bs) 3208 #define IShellLinkDual_get_Hotkey(This,piHK) (This)->lpVtbl->get_Hotkey(This,piHK) 3209 #define IShellLinkDual_put_Hotkey(This,iHK) (This)->lpVtbl->put_Hotkey(This,iHK) 3210 #define IShellLinkDual_get_ShowCommand(This,piShowCommand) (This)->lpVtbl->get_ShowCommand(This,piShowCommand) 3211 #define IShellLinkDual_put_ShowCommand(This,iShowCommand) (This)->lpVtbl->put_ShowCommand(This,iShowCommand) 3212 #define IShellLinkDual_Resolve(This,fFlags) (This)->lpVtbl->Resolve(This,fFlags) 3213 #define IShellLinkDual_GetIconLocation(This,pbs,piIcon) (This)->lpVtbl->GetIconLocation(This,pbs,piIcon) 3214 #define IShellLinkDual_SetIconLocation(This,bs,iIcon) (This)->lpVtbl->SetIconLocation(This,bs,iIcon) 3215 #define IShellLinkDual_Save(This,vWhere) (This)->lpVtbl->Save(This,vWhere) 3216 #else 3217 /*** IUnknown methods ***/ 3218 static FORCEINLINE HRESULT IShellLinkDual_QueryInterface(IShellLinkDual* This,REFIID riid,void **ppvObject) { 3219 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3220 } 3221 static FORCEINLINE ULONG IShellLinkDual_AddRef(IShellLinkDual* This) { 3222 return This->lpVtbl->AddRef(This); 3223 } 3224 static FORCEINLINE ULONG IShellLinkDual_Release(IShellLinkDual* This) { 3225 return This->lpVtbl->Release(This); 3226 } 3227 /*** IDispatch methods ***/ 3228 static FORCEINLINE HRESULT IShellLinkDual_GetTypeInfoCount(IShellLinkDual* This,UINT *pctinfo) { 3229 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 3230 } 3231 static FORCEINLINE HRESULT IShellLinkDual_GetTypeInfo(IShellLinkDual* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 3232 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 3233 } 3234 static FORCEINLINE HRESULT IShellLinkDual_GetIDsOfNames(IShellLinkDual* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 3235 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 3236 } 3237 static FORCEINLINE HRESULT IShellLinkDual_Invoke(IShellLinkDual* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 3238 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 3239 } 3240 /*** IShellLinkDual methods ***/ 3241 static FORCEINLINE HRESULT IShellLinkDual_get_Path(IShellLinkDual* This,BSTR *pbs) { 3242 return This->lpVtbl->get_Path(This,pbs); 3243 } 3244 static FORCEINLINE HRESULT IShellLinkDual_put_Path(IShellLinkDual* This,BSTR bs) { 3245 return This->lpVtbl->put_Path(This,bs); 3246 } 3247 static FORCEINLINE HRESULT IShellLinkDual_get_Description(IShellLinkDual* This,BSTR *pbs) { 3248 return This->lpVtbl->get_Description(This,pbs); 3249 } 3250 static FORCEINLINE HRESULT IShellLinkDual_put_Description(IShellLinkDual* This,BSTR bs) { 3251 return This->lpVtbl->put_Description(This,bs); 3252 } 3253 static FORCEINLINE HRESULT IShellLinkDual_get_WorkingDirectory(IShellLinkDual* This,BSTR *pbs) { 3254 return This->lpVtbl->get_WorkingDirectory(This,pbs); 3255 } 3256 static FORCEINLINE HRESULT IShellLinkDual_put_WorkingDirectory(IShellLinkDual* This,BSTR bs) { 3257 return This->lpVtbl->put_WorkingDirectory(This,bs); 3258 } 3259 static FORCEINLINE HRESULT IShellLinkDual_get_Arguments(IShellLinkDual* This,BSTR *pbs) { 3260 return This->lpVtbl->get_Arguments(This,pbs); 3261 } 3262 static FORCEINLINE HRESULT IShellLinkDual_put_Arguments(IShellLinkDual* This,BSTR bs) { 3263 return This->lpVtbl->put_Arguments(This,bs); 3264 } 3265 static FORCEINLINE HRESULT IShellLinkDual_get_Hotkey(IShellLinkDual* This,int *piHK) { 3266 return This->lpVtbl->get_Hotkey(This,piHK); 3267 } 3268 static FORCEINLINE HRESULT IShellLinkDual_put_Hotkey(IShellLinkDual* This,int iHK) { 3269 return This->lpVtbl->put_Hotkey(This,iHK); 3270 } 3271 static FORCEINLINE HRESULT IShellLinkDual_get_ShowCommand(IShellLinkDual* This,int *piShowCommand) { 3272 return This->lpVtbl->get_ShowCommand(This,piShowCommand); 3273 } 3274 static FORCEINLINE HRESULT IShellLinkDual_put_ShowCommand(IShellLinkDual* This,int iShowCommand) { 3275 return This->lpVtbl->put_ShowCommand(This,iShowCommand); 3276 } 3277 static FORCEINLINE HRESULT IShellLinkDual_Resolve(IShellLinkDual* This,int fFlags) { 3278 return This->lpVtbl->Resolve(This,fFlags); 3279 } 3280 static FORCEINLINE HRESULT IShellLinkDual_GetIconLocation(IShellLinkDual* This,BSTR *pbs,int *piIcon) { 3281 return This->lpVtbl->GetIconLocation(This,pbs,piIcon); 3282 } 3283 static FORCEINLINE HRESULT IShellLinkDual_SetIconLocation(IShellLinkDual* This,BSTR bs,int iIcon) { 3284 return This->lpVtbl->SetIconLocation(This,bs,iIcon); 3285 } 3286 static FORCEINLINE HRESULT IShellLinkDual_Save(IShellLinkDual* This,VARIANT vWhere) { 3287 return This->lpVtbl->Save(This,vWhere); 3288 } 3289 #endif 3290 #endif 3291 3292 #endif 3293 3294 3295 #endif /* __IShellLinkDual_INTERFACE_DEFINED__ */ 3296 3297 /***************************************************************************** 3298 * IShellLinkDual2 interface 3299 */ 3300 #ifndef __IShellLinkDual2_INTERFACE_DEFINED__ 3301 #define __IShellLinkDual2_INTERFACE_DEFINED__ 3302 3303 DEFINE_GUID(IID_IShellLinkDual2, 0x317ee249, 0xf12e, 0x11d2, 0xb1,0xe4, 0x00,0xc0,0x4f,0x8e,0xeb,0x3e); 3304 #if defined(__cplusplus) && !defined(CINTERFACE) 3305 MIDL_INTERFACE("317ee249-f12e-11d2-b1e4-00c04f8eeb3e") 3306 IShellLinkDual2 : public IShellLinkDual 3307 { 3308 virtual HRESULT STDMETHODCALLTYPE get_Target( 3309 FolderItem **ppfi) = 0; 3310 3311 }; 3312 #ifdef __CRT_UUID_DECL 3313 __CRT_UUID_DECL(IShellLinkDual2, 0x317ee249, 0xf12e, 0x11d2, 0xb1,0xe4, 0x00,0xc0,0x4f,0x8e,0xeb,0x3e) 3314 #endif 3315 #else 3316 typedef struct IShellLinkDual2Vtbl { 3317 BEGIN_INTERFACE 3318 3319 /*** IUnknown methods ***/ 3320 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3321 IShellLinkDual2 *This, 3322 REFIID riid, 3323 void **ppvObject); 3324 3325 ULONG (STDMETHODCALLTYPE *AddRef)( 3326 IShellLinkDual2 *This); 3327 3328 ULONG (STDMETHODCALLTYPE *Release)( 3329 IShellLinkDual2 *This); 3330 3331 /*** IDispatch methods ***/ 3332 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 3333 IShellLinkDual2 *This, 3334 UINT *pctinfo); 3335 3336 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 3337 IShellLinkDual2 *This, 3338 UINT iTInfo, 3339 LCID lcid, 3340 ITypeInfo **ppTInfo); 3341 3342 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 3343 IShellLinkDual2 *This, 3344 REFIID riid, 3345 LPOLESTR *rgszNames, 3346 UINT cNames, 3347 LCID lcid, 3348 DISPID *rgDispId); 3349 3350 HRESULT (STDMETHODCALLTYPE *Invoke)( 3351 IShellLinkDual2 *This, 3352 DISPID dispIdMember, 3353 REFIID riid, 3354 LCID lcid, 3355 WORD wFlags, 3356 DISPPARAMS *pDispParams, 3357 VARIANT *pVarResult, 3358 EXCEPINFO *pExcepInfo, 3359 UINT *puArgErr); 3360 3361 /*** IShellLinkDual methods ***/ 3362 HRESULT (STDMETHODCALLTYPE *get_Path)( 3363 IShellLinkDual2 *This, 3364 BSTR *pbs); 3365 3366 HRESULT (STDMETHODCALLTYPE *put_Path)( 3367 IShellLinkDual2 *This, 3368 BSTR bs); 3369 3370 HRESULT (STDMETHODCALLTYPE *get_Description)( 3371 IShellLinkDual2 *This, 3372 BSTR *pbs); 3373 3374 HRESULT (STDMETHODCALLTYPE *put_Description)( 3375 IShellLinkDual2 *This, 3376 BSTR bs); 3377 3378 HRESULT (STDMETHODCALLTYPE *get_WorkingDirectory)( 3379 IShellLinkDual2 *This, 3380 BSTR *pbs); 3381 3382 HRESULT (STDMETHODCALLTYPE *put_WorkingDirectory)( 3383 IShellLinkDual2 *This, 3384 BSTR bs); 3385 3386 HRESULT (STDMETHODCALLTYPE *get_Arguments)( 3387 IShellLinkDual2 *This, 3388 BSTR *pbs); 3389 3390 HRESULT (STDMETHODCALLTYPE *put_Arguments)( 3391 IShellLinkDual2 *This, 3392 BSTR bs); 3393 3394 HRESULT (STDMETHODCALLTYPE *get_Hotkey)( 3395 IShellLinkDual2 *This, 3396 int *piHK); 3397 3398 HRESULT (STDMETHODCALLTYPE *put_Hotkey)( 3399 IShellLinkDual2 *This, 3400 int iHK); 3401 3402 HRESULT (STDMETHODCALLTYPE *get_ShowCommand)( 3403 IShellLinkDual2 *This, 3404 int *piShowCommand); 3405 3406 HRESULT (STDMETHODCALLTYPE *put_ShowCommand)( 3407 IShellLinkDual2 *This, 3408 int iShowCommand); 3409 3410 HRESULT (STDMETHODCALLTYPE *Resolve)( 3411 IShellLinkDual2 *This, 3412 int fFlags); 3413 3414 HRESULT (STDMETHODCALLTYPE *GetIconLocation)( 3415 IShellLinkDual2 *This, 3416 BSTR *pbs, 3417 int *piIcon); 3418 3419 HRESULT (STDMETHODCALLTYPE *SetIconLocation)( 3420 IShellLinkDual2 *This, 3421 BSTR bs, 3422 int iIcon); 3423 3424 HRESULT (STDMETHODCALLTYPE *Save)( 3425 IShellLinkDual2 *This, 3426 VARIANT vWhere); 3427 3428 /*** IShellLinkDual2 methods ***/ 3429 HRESULT (STDMETHODCALLTYPE *get_Target)( 3430 IShellLinkDual2 *This, 3431 FolderItem **ppfi); 3432 3433 END_INTERFACE 3434 } IShellLinkDual2Vtbl; 3435 3436 interface IShellLinkDual2 { 3437 CONST_VTBL IShellLinkDual2Vtbl* lpVtbl; 3438 }; 3439 3440 #ifdef COBJMACROS 3441 #ifndef WIDL_C_INLINE_WRAPPERS 3442 /*** IUnknown methods ***/ 3443 #define IShellLinkDual2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3444 #define IShellLinkDual2_AddRef(This) (This)->lpVtbl->AddRef(This) 3445 #define IShellLinkDual2_Release(This) (This)->lpVtbl->Release(This) 3446 /*** IDispatch methods ***/ 3447 #define IShellLinkDual2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 3448 #define IShellLinkDual2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 3449 #define IShellLinkDual2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 3450 #define IShellLinkDual2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 3451 /*** IShellLinkDual methods ***/ 3452 #define IShellLinkDual2_get_Path(This,pbs) (This)->lpVtbl->get_Path(This,pbs) 3453 #define IShellLinkDual2_put_Path(This,bs) (This)->lpVtbl->put_Path(This,bs) 3454 #define IShellLinkDual2_get_Description(This,pbs) (This)->lpVtbl->get_Description(This,pbs) 3455 #define IShellLinkDual2_put_Description(This,bs) (This)->lpVtbl->put_Description(This,bs) 3456 #define IShellLinkDual2_get_WorkingDirectory(This,pbs) (This)->lpVtbl->get_WorkingDirectory(This,pbs) 3457 #define IShellLinkDual2_put_WorkingDirectory(This,bs) (This)->lpVtbl->put_WorkingDirectory(This,bs) 3458 #define IShellLinkDual2_get_Arguments(This,pbs) (This)->lpVtbl->get_Arguments(This,pbs) 3459 #define IShellLinkDual2_put_Arguments(This,bs) (This)->lpVtbl->put_Arguments(This,bs) 3460 #define IShellLinkDual2_get_Hotkey(This,piHK) (This)->lpVtbl->get_Hotkey(This,piHK) 3461 #define IShellLinkDual2_put_Hotkey(This,iHK) (This)->lpVtbl->put_Hotkey(This,iHK) 3462 #define IShellLinkDual2_get_ShowCommand(This,piShowCommand) (This)->lpVtbl->get_ShowCommand(This,piShowCommand) 3463 #define IShellLinkDual2_put_ShowCommand(This,iShowCommand) (This)->lpVtbl->put_ShowCommand(This,iShowCommand) 3464 #define IShellLinkDual2_Resolve(This,fFlags) (This)->lpVtbl->Resolve(This,fFlags) 3465 #define IShellLinkDual2_GetIconLocation(This,pbs,piIcon) (This)->lpVtbl->GetIconLocation(This,pbs,piIcon) 3466 #define IShellLinkDual2_SetIconLocation(This,bs,iIcon) (This)->lpVtbl->SetIconLocation(This,bs,iIcon) 3467 #define IShellLinkDual2_Save(This,vWhere) (This)->lpVtbl->Save(This,vWhere) 3468 /*** IShellLinkDual2 methods ***/ 3469 #define IShellLinkDual2_get_Target(This,ppfi) (This)->lpVtbl->get_Target(This,ppfi) 3470 #else 3471 /*** IUnknown methods ***/ 3472 static FORCEINLINE HRESULT IShellLinkDual2_QueryInterface(IShellLinkDual2* This,REFIID riid,void **ppvObject) { 3473 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3474 } 3475 static FORCEINLINE ULONG IShellLinkDual2_AddRef(IShellLinkDual2* This) { 3476 return This->lpVtbl->AddRef(This); 3477 } 3478 static FORCEINLINE ULONG IShellLinkDual2_Release(IShellLinkDual2* This) { 3479 return This->lpVtbl->Release(This); 3480 } 3481 /*** IDispatch methods ***/ 3482 static FORCEINLINE HRESULT IShellLinkDual2_GetTypeInfoCount(IShellLinkDual2* This,UINT *pctinfo) { 3483 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 3484 } 3485 static FORCEINLINE HRESULT IShellLinkDual2_GetTypeInfo(IShellLinkDual2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 3486 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 3487 } 3488 static FORCEINLINE HRESULT IShellLinkDual2_GetIDsOfNames(IShellLinkDual2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 3489 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 3490 } 3491 static FORCEINLINE HRESULT IShellLinkDual2_Invoke(IShellLinkDual2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 3492 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 3493 } 3494 /*** IShellLinkDual methods ***/ 3495 static FORCEINLINE HRESULT IShellLinkDual2_get_Path(IShellLinkDual2* This,BSTR *pbs) { 3496 return This->lpVtbl->get_Path(This,pbs); 3497 } 3498 static FORCEINLINE HRESULT IShellLinkDual2_put_Path(IShellLinkDual2* This,BSTR bs) { 3499 return This->lpVtbl->put_Path(This,bs); 3500 } 3501 static FORCEINLINE HRESULT IShellLinkDual2_get_Description(IShellLinkDual2* This,BSTR *pbs) { 3502 return This->lpVtbl->get_Description(This,pbs); 3503 } 3504 static FORCEINLINE HRESULT IShellLinkDual2_put_Description(IShellLinkDual2* This,BSTR bs) { 3505 return This->lpVtbl->put_Description(This,bs); 3506 } 3507 static FORCEINLINE HRESULT IShellLinkDual2_get_WorkingDirectory(IShellLinkDual2* This,BSTR *pbs) { 3508 return This->lpVtbl->get_WorkingDirectory(This,pbs); 3509 } 3510 static FORCEINLINE HRESULT IShellLinkDual2_put_WorkingDirectory(IShellLinkDual2* This,BSTR bs) { 3511 return This->lpVtbl->put_WorkingDirectory(This,bs); 3512 } 3513 static FORCEINLINE HRESULT IShellLinkDual2_get_Arguments(IShellLinkDual2* This,BSTR *pbs) { 3514 return This->lpVtbl->get_Arguments(This,pbs); 3515 } 3516 static FORCEINLINE HRESULT IShellLinkDual2_put_Arguments(IShellLinkDual2* This,BSTR bs) { 3517 return This->lpVtbl->put_Arguments(This,bs); 3518 } 3519 static FORCEINLINE HRESULT IShellLinkDual2_get_Hotkey(IShellLinkDual2* This,int *piHK) { 3520 return This->lpVtbl->get_Hotkey(This,piHK); 3521 } 3522 static FORCEINLINE HRESULT IShellLinkDual2_put_Hotkey(IShellLinkDual2* This,int iHK) { 3523 return This->lpVtbl->put_Hotkey(This,iHK); 3524 } 3525 static FORCEINLINE HRESULT IShellLinkDual2_get_ShowCommand(IShellLinkDual2* This,int *piShowCommand) { 3526 return This->lpVtbl->get_ShowCommand(This,piShowCommand); 3527 } 3528 static FORCEINLINE HRESULT IShellLinkDual2_put_ShowCommand(IShellLinkDual2* This,int iShowCommand) { 3529 return This->lpVtbl->put_ShowCommand(This,iShowCommand); 3530 } 3531 static FORCEINLINE HRESULT IShellLinkDual2_Resolve(IShellLinkDual2* This,int fFlags) { 3532 return This->lpVtbl->Resolve(This,fFlags); 3533 } 3534 static FORCEINLINE HRESULT IShellLinkDual2_GetIconLocation(IShellLinkDual2* This,BSTR *pbs,int *piIcon) { 3535 return This->lpVtbl->GetIconLocation(This,pbs,piIcon); 3536 } 3537 static FORCEINLINE HRESULT IShellLinkDual2_SetIconLocation(IShellLinkDual2* This,BSTR bs,int iIcon) { 3538 return This->lpVtbl->SetIconLocation(This,bs,iIcon); 3539 } 3540 static FORCEINLINE HRESULT IShellLinkDual2_Save(IShellLinkDual2* This,VARIANT vWhere) { 3541 return This->lpVtbl->Save(This,vWhere); 3542 } 3543 /*** IShellLinkDual2 methods ***/ 3544 static FORCEINLINE HRESULT IShellLinkDual2_get_Target(IShellLinkDual2* This,FolderItem **ppfi) { 3545 return This->lpVtbl->get_Target(This,ppfi); 3546 } 3547 #endif 3548 #endif 3549 3550 #endif 3551 3552 3553 #endif /* __IShellLinkDual2_INTERFACE_DEFINED__ */ 3554 3555 /***************************************************************************** 3556 * ShellLinkObject coclass 3557 */ 3558 3559 DEFINE_GUID(CLSID_ShellLinkObject, 0x11219420, 0x1768, 0x11d1, 0x95,0xbe, 0x00,0x60,0x97,0x97,0xea,0x4f); 3560 3561 #ifdef __cplusplus 3562 class DECLSPEC_UUID("11219420-1768-11d1-95be-00609797ea4f") ShellLinkObject; 3563 #ifdef __CRT_UUID_DECL 3564 __CRT_UUID_DECL(ShellLinkObject, 0x11219420, 0x1768, 0x11d1, 0x95,0xbe, 0x00,0x60,0x97,0x97,0xea,0x4f) 3565 #endif 3566 #endif 3567 3568 /***************************************************************************** 3569 * IShellFolderViewDual interface 3570 */ 3571 #ifndef __IShellFolderViewDual_INTERFACE_DEFINED__ 3572 #define __IShellFolderViewDual_INTERFACE_DEFINED__ 3573 3574 DEFINE_GUID(IID_IShellFolderViewDual, 0xe7a1af80, 0x4d96, 0x11cf, 0x96,0x0c, 0x00,0x80,0xc7,0xf4,0xee,0x85); 3575 #if defined(__cplusplus) && !defined(CINTERFACE) 3576 MIDL_INTERFACE("e7a1af80-4d96-11cf-960c-0080c7f4ee85") 3577 IShellFolderViewDual : public IDispatch 3578 { 3579 virtual HRESULT STDMETHODCALLTYPE get_Application( 3580 IDispatch **ppid) = 0; 3581 3582 virtual HRESULT STDMETHODCALLTYPE get_Parent( 3583 IDispatch **ppid) = 0; 3584 3585 virtual HRESULT STDMETHODCALLTYPE get_Folder( 3586 Folder **ppid) = 0; 3587 3588 virtual HRESULT STDMETHODCALLTYPE SelectedItems( 3589 FolderItems **ppid) = 0; 3590 3591 virtual HRESULT STDMETHODCALLTYPE get_FocusedItem( 3592 FolderItem **ppid) = 0; 3593 3594 virtual HRESULT STDMETHODCALLTYPE SelectItem( 3595 VARIANT *pvfi, 3596 int dwFlags) = 0; 3597 3598 virtual HRESULT STDMETHODCALLTYPE PopupItemMenu( 3599 FolderItem *pfi, 3600 VARIANT vx, 3601 VARIANT vy, 3602 BSTR *pbs) = 0; 3603 3604 virtual HRESULT STDMETHODCALLTYPE get_Script( 3605 IDispatch **ppDisp) = 0; 3606 3607 virtual HRESULT STDMETHODCALLTYPE get_ViewOptions( 3608 LONG *plViewOptions) = 0; 3609 3610 }; 3611 #ifdef __CRT_UUID_DECL 3612 __CRT_UUID_DECL(IShellFolderViewDual, 0xe7a1af80, 0x4d96, 0x11cf, 0x96,0x0c, 0x00,0x80,0xc7,0xf4,0xee,0x85) 3613 #endif 3614 #else 3615 typedef struct IShellFolderViewDualVtbl { 3616 BEGIN_INTERFACE 3617 3618 /*** IUnknown methods ***/ 3619 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3620 IShellFolderViewDual *This, 3621 REFIID riid, 3622 void **ppvObject); 3623 3624 ULONG (STDMETHODCALLTYPE *AddRef)( 3625 IShellFolderViewDual *This); 3626 3627 ULONG (STDMETHODCALLTYPE *Release)( 3628 IShellFolderViewDual *This); 3629 3630 /*** IDispatch methods ***/ 3631 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 3632 IShellFolderViewDual *This, 3633 UINT *pctinfo); 3634 3635 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 3636 IShellFolderViewDual *This, 3637 UINT iTInfo, 3638 LCID lcid, 3639 ITypeInfo **ppTInfo); 3640 3641 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 3642 IShellFolderViewDual *This, 3643 REFIID riid, 3644 LPOLESTR *rgszNames, 3645 UINT cNames, 3646 LCID lcid, 3647 DISPID *rgDispId); 3648 3649 HRESULT (STDMETHODCALLTYPE *Invoke)( 3650 IShellFolderViewDual *This, 3651 DISPID dispIdMember, 3652 REFIID riid, 3653 LCID lcid, 3654 WORD wFlags, 3655 DISPPARAMS *pDispParams, 3656 VARIANT *pVarResult, 3657 EXCEPINFO *pExcepInfo, 3658 UINT *puArgErr); 3659 3660 /*** IShellFolderViewDual methods ***/ 3661 HRESULT (STDMETHODCALLTYPE *get_Application)( 3662 IShellFolderViewDual *This, 3663 IDispatch **ppid); 3664 3665 HRESULT (STDMETHODCALLTYPE *get_Parent)( 3666 IShellFolderViewDual *This, 3667 IDispatch **ppid); 3668 3669 HRESULT (STDMETHODCALLTYPE *get_Folder)( 3670 IShellFolderViewDual *This, 3671 Folder **ppid); 3672 3673 HRESULT (STDMETHODCALLTYPE *SelectedItems)( 3674 IShellFolderViewDual *This, 3675 FolderItems **ppid); 3676 3677 HRESULT (STDMETHODCALLTYPE *get_FocusedItem)( 3678 IShellFolderViewDual *This, 3679 FolderItem **ppid); 3680 3681 HRESULT (STDMETHODCALLTYPE *SelectItem)( 3682 IShellFolderViewDual *This, 3683 VARIANT *pvfi, 3684 int dwFlags); 3685 3686 HRESULT (STDMETHODCALLTYPE *PopupItemMenu)( 3687 IShellFolderViewDual *This, 3688 FolderItem *pfi, 3689 VARIANT vx, 3690 VARIANT vy, 3691 BSTR *pbs); 3692 3693 HRESULT (STDMETHODCALLTYPE *get_Script)( 3694 IShellFolderViewDual *This, 3695 IDispatch **ppDisp); 3696 3697 HRESULT (STDMETHODCALLTYPE *get_ViewOptions)( 3698 IShellFolderViewDual *This, 3699 LONG *plViewOptions); 3700 3701 END_INTERFACE 3702 } IShellFolderViewDualVtbl; 3703 3704 interface IShellFolderViewDual { 3705 CONST_VTBL IShellFolderViewDualVtbl* lpVtbl; 3706 }; 3707 3708 #ifdef COBJMACROS 3709 #ifndef WIDL_C_INLINE_WRAPPERS 3710 /*** IUnknown methods ***/ 3711 #define IShellFolderViewDual_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3712 #define IShellFolderViewDual_AddRef(This) (This)->lpVtbl->AddRef(This) 3713 #define IShellFolderViewDual_Release(This) (This)->lpVtbl->Release(This) 3714 /*** IDispatch methods ***/ 3715 #define IShellFolderViewDual_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 3716 #define IShellFolderViewDual_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 3717 #define IShellFolderViewDual_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 3718 #define IShellFolderViewDual_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 3719 /*** IShellFolderViewDual methods ***/ 3720 #define IShellFolderViewDual_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 3721 #define IShellFolderViewDual_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 3722 #define IShellFolderViewDual_get_Folder(This,ppid) (This)->lpVtbl->get_Folder(This,ppid) 3723 #define IShellFolderViewDual_SelectedItems(This,ppid) (This)->lpVtbl->SelectedItems(This,ppid) 3724 #define IShellFolderViewDual_get_FocusedItem(This,ppid) (This)->lpVtbl->get_FocusedItem(This,ppid) 3725 #define IShellFolderViewDual_SelectItem(This,pvfi,dwFlags) (This)->lpVtbl->SelectItem(This,pvfi,dwFlags) 3726 #define IShellFolderViewDual_PopupItemMenu(This,pfi,vx,vy,pbs) (This)->lpVtbl->PopupItemMenu(This,pfi,vx,vy,pbs) 3727 #define IShellFolderViewDual_get_Script(This,ppDisp) (This)->lpVtbl->get_Script(This,ppDisp) 3728 #define IShellFolderViewDual_get_ViewOptions(This,plViewOptions) (This)->lpVtbl->get_ViewOptions(This,plViewOptions) 3729 #else 3730 /*** IUnknown methods ***/ 3731 static FORCEINLINE HRESULT IShellFolderViewDual_QueryInterface(IShellFolderViewDual* This,REFIID riid,void **ppvObject) { 3732 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3733 } 3734 static FORCEINLINE ULONG IShellFolderViewDual_AddRef(IShellFolderViewDual* This) { 3735 return This->lpVtbl->AddRef(This); 3736 } 3737 static FORCEINLINE ULONG IShellFolderViewDual_Release(IShellFolderViewDual* This) { 3738 return This->lpVtbl->Release(This); 3739 } 3740 /*** IDispatch methods ***/ 3741 static FORCEINLINE HRESULT IShellFolderViewDual_GetTypeInfoCount(IShellFolderViewDual* This,UINT *pctinfo) { 3742 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 3743 } 3744 static FORCEINLINE HRESULT IShellFolderViewDual_GetTypeInfo(IShellFolderViewDual* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 3745 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 3746 } 3747 static FORCEINLINE HRESULT IShellFolderViewDual_GetIDsOfNames(IShellFolderViewDual* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 3748 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 3749 } 3750 static FORCEINLINE HRESULT IShellFolderViewDual_Invoke(IShellFolderViewDual* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 3751 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 3752 } 3753 /*** IShellFolderViewDual methods ***/ 3754 static FORCEINLINE HRESULT IShellFolderViewDual_get_Application(IShellFolderViewDual* This,IDispatch **ppid) { 3755 return This->lpVtbl->get_Application(This,ppid); 3756 } 3757 static FORCEINLINE HRESULT IShellFolderViewDual_get_Parent(IShellFolderViewDual* This,IDispatch **ppid) { 3758 return This->lpVtbl->get_Parent(This,ppid); 3759 } 3760 static FORCEINLINE HRESULT IShellFolderViewDual_get_Folder(IShellFolderViewDual* This,Folder **ppid) { 3761 return This->lpVtbl->get_Folder(This,ppid); 3762 } 3763 static FORCEINLINE HRESULT IShellFolderViewDual_SelectedItems(IShellFolderViewDual* This,FolderItems **ppid) { 3764 return This->lpVtbl->SelectedItems(This,ppid); 3765 } 3766 static FORCEINLINE HRESULT IShellFolderViewDual_get_FocusedItem(IShellFolderViewDual* This,FolderItem **ppid) { 3767 return This->lpVtbl->get_FocusedItem(This,ppid); 3768 } 3769 static FORCEINLINE HRESULT IShellFolderViewDual_SelectItem(IShellFolderViewDual* This,VARIANT *pvfi,int dwFlags) { 3770 return This->lpVtbl->SelectItem(This,pvfi,dwFlags); 3771 } 3772 static FORCEINLINE HRESULT IShellFolderViewDual_PopupItemMenu(IShellFolderViewDual* This,FolderItem *pfi,VARIANT vx,VARIANT vy,BSTR *pbs) { 3773 return This->lpVtbl->PopupItemMenu(This,pfi,vx,vy,pbs); 3774 } 3775 static FORCEINLINE HRESULT IShellFolderViewDual_get_Script(IShellFolderViewDual* This,IDispatch **ppDisp) { 3776 return This->lpVtbl->get_Script(This,ppDisp); 3777 } 3778 static FORCEINLINE HRESULT IShellFolderViewDual_get_ViewOptions(IShellFolderViewDual* This,LONG *plViewOptions) { 3779 return This->lpVtbl->get_ViewOptions(This,plViewOptions); 3780 } 3781 #endif 3782 #endif 3783 3784 #endif 3785 3786 3787 #endif /* __IShellFolderViewDual_INTERFACE_DEFINED__ */ 3788 3789 /***************************************************************************** 3790 * IShellFolderViewDual2 interface 3791 */ 3792 #ifndef __IShellFolderViewDual2_INTERFACE_DEFINED__ 3793 #define __IShellFolderViewDual2_INTERFACE_DEFINED__ 3794 3795 DEFINE_GUID(IID_IShellFolderViewDual2, 0x31c147b6, 0x0ade, 0x4a3c, 0xb5,0x14, 0xdd,0xf9,0x32,0xef,0x6d,0x17); 3796 #if defined(__cplusplus) && !defined(CINTERFACE) 3797 MIDL_INTERFACE("31c147b6-0ade-4a3c-b514-ddf932ef6d17") 3798 IShellFolderViewDual2 : public IShellFolderViewDual 3799 { 3800 virtual HRESULT STDMETHODCALLTYPE get_CurrentViewMode( 3801 UINT *pViewMode) = 0; 3802 3803 virtual HRESULT STDMETHODCALLTYPE put_CurrentViewMode( 3804 UINT ViewMode) = 0; 3805 3806 virtual HRESULT STDMETHODCALLTYPE SelectItemRelative( 3807 int iRelative) = 0; 3808 3809 }; 3810 #ifdef __CRT_UUID_DECL 3811 __CRT_UUID_DECL(IShellFolderViewDual2, 0x31c147b6, 0x0ade, 0x4a3c, 0xb5,0x14, 0xdd,0xf9,0x32,0xef,0x6d,0x17) 3812 #endif 3813 #else 3814 typedef struct IShellFolderViewDual2Vtbl { 3815 BEGIN_INTERFACE 3816 3817 /*** IUnknown methods ***/ 3818 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3819 IShellFolderViewDual2 *This, 3820 REFIID riid, 3821 void **ppvObject); 3822 3823 ULONG (STDMETHODCALLTYPE *AddRef)( 3824 IShellFolderViewDual2 *This); 3825 3826 ULONG (STDMETHODCALLTYPE *Release)( 3827 IShellFolderViewDual2 *This); 3828 3829 /*** IDispatch methods ***/ 3830 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 3831 IShellFolderViewDual2 *This, 3832 UINT *pctinfo); 3833 3834 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 3835 IShellFolderViewDual2 *This, 3836 UINT iTInfo, 3837 LCID lcid, 3838 ITypeInfo **ppTInfo); 3839 3840 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 3841 IShellFolderViewDual2 *This, 3842 REFIID riid, 3843 LPOLESTR *rgszNames, 3844 UINT cNames, 3845 LCID lcid, 3846 DISPID *rgDispId); 3847 3848 HRESULT (STDMETHODCALLTYPE *Invoke)( 3849 IShellFolderViewDual2 *This, 3850 DISPID dispIdMember, 3851 REFIID riid, 3852 LCID lcid, 3853 WORD wFlags, 3854 DISPPARAMS *pDispParams, 3855 VARIANT *pVarResult, 3856 EXCEPINFO *pExcepInfo, 3857 UINT *puArgErr); 3858 3859 /*** IShellFolderViewDual methods ***/ 3860 HRESULT (STDMETHODCALLTYPE *get_Application)( 3861 IShellFolderViewDual2 *This, 3862 IDispatch **ppid); 3863 3864 HRESULT (STDMETHODCALLTYPE *get_Parent)( 3865 IShellFolderViewDual2 *This, 3866 IDispatch **ppid); 3867 3868 HRESULT (STDMETHODCALLTYPE *get_Folder)( 3869 IShellFolderViewDual2 *This, 3870 Folder **ppid); 3871 3872 HRESULT (STDMETHODCALLTYPE *SelectedItems)( 3873 IShellFolderViewDual2 *This, 3874 FolderItems **ppid); 3875 3876 HRESULT (STDMETHODCALLTYPE *get_FocusedItem)( 3877 IShellFolderViewDual2 *This, 3878 FolderItem **ppid); 3879 3880 HRESULT (STDMETHODCALLTYPE *SelectItem)( 3881 IShellFolderViewDual2 *This, 3882 VARIANT *pvfi, 3883 int dwFlags); 3884 3885 HRESULT (STDMETHODCALLTYPE *PopupItemMenu)( 3886 IShellFolderViewDual2 *This, 3887 FolderItem *pfi, 3888 VARIANT vx, 3889 VARIANT vy, 3890 BSTR *pbs); 3891 3892 HRESULT (STDMETHODCALLTYPE *get_Script)( 3893 IShellFolderViewDual2 *This, 3894 IDispatch **ppDisp); 3895 3896 HRESULT (STDMETHODCALLTYPE *get_ViewOptions)( 3897 IShellFolderViewDual2 *This, 3898 LONG *plViewOptions); 3899 3900 /*** IShellFolderViewDual2 methods ***/ 3901 HRESULT (STDMETHODCALLTYPE *get_CurrentViewMode)( 3902 IShellFolderViewDual2 *This, 3903 UINT *pViewMode); 3904 3905 HRESULT (STDMETHODCALLTYPE *put_CurrentViewMode)( 3906 IShellFolderViewDual2 *This, 3907 UINT ViewMode); 3908 3909 HRESULT (STDMETHODCALLTYPE *SelectItemRelative)( 3910 IShellFolderViewDual2 *This, 3911 int iRelative); 3912 3913 END_INTERFACE 3914 } IShellFolderViewDual2Vtbl; 3915 3916 interface IShellFolderViewDual2 { 3917 CONST_VTBL IShellFolderViewDual2Vtbl* lpVtbl; 3918 }; 3919 3920 #ifdef COBJMACROS 3921 #ifndef WIDL_C_INLINE_WRAPPERS 3922 /*** IUnknown methods ***/ 3923 #define IShellFolderViewDual2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3924 #define IShellFolderViewDual2_AddRef(This) (This)->lpVtbl->AddRef(This) 3925 #define IShellFolderViewDual2_Release(This) (This)->lpVtbl->Release(This) 3926 /*** IDispatch methods ***/ 3927 #define IShellFolderViewDual2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 3928 #define IShellFolderViewDual2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 3929 #define IShellFolderViewDual2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 3930 #define IShellFolderViewDual2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 3931 /*** IShellFolderViewDual methods ***/ 3932 #define IShellFolderViewDual2_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 3933 #define IShellFolderViewDual2_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 3934 #define IShellFolderViewDual2_get_Folder(This,ppid) (This)->lpVtbl->get_Folder(This,ppid) 3935 #define IShellFolderViewDual2_SelectedItems(This,ppid) (This)->lpVtbl->SelectedItems(This,ppid) 3936 #define IShellFolderViewDual2_get_FocusedItem(This,ppid) (This)->lpVtbl->get_FocusedItem(This,ppid) 3937 #define IShellFolderViewDual2_SelectItem(This,pvfi,dwFlags) (This)->lpVtbl->SelectItem(This,pvfi,dwFlags) 3938 #define IShellFolderViewDual2_PopupItemMenu(This,pfi,vx,vy,pbs) (This)->lpVtbl->PopupItemMenu(This,pfi,vx,vy,pbs) 3939 #define IShellFolderViewDual2_get_Script(This,ppDisp) (This)->lpVtbl->get_Script(This,ppDisp) 3940 #define IShellFolderViewDual2_get_ViewOptions(This,plViewOptions) (This)->lpVtbl->get_ViewOptions(This,plViewOptions) 3941 /*** IShellFolderViewDual2 methods ***/ 3942 #define IShellFolderViewDual2_get_CurrentViewMode(This,pViewMode) (This)->lpVtbl->get_CurrentViewMode(This,pViewMode) 3943 #define IShellFolderViewDual2_put_CurrentViewMode(This,ViewMode) (This)->lpVtbl->put_CurrentViewMode(This,ViewMode) 3944 #define IShellFolderViewDual2_SelectItemRelative(This,iRelative) (This)->lpVtbl->SelectItemRelative(This,iRelative) 3945 #else 3946 /*** IUnknown methods ***/ 3947 static FORCEINLINE HRESULT IShellFolderViewDual2_QueryInterface(IShellFolderViewDual2* This,REFIID riid,void **ppvObject) { 3948 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3949 } 3950 static FORCEINLINE ULONG IShellFolderViewDual2_AddRef(IShellFolderViewDual2* This) { 3951 return This->lpVtbl->AddRef(This); 3952 } 3953 static FORCEINLINE ULONG IShellFolderViewDual2_Release(IShellFolderViewDual2* This) { 3954 return This->lpVtbl->Release(This); 3955 } 3956 /*** IDispatch methods ***/ 3957 static FORCEINLINE HRESULT IShellFolderViewDual2_GetTypeInfoCount(IShellFolderViewDual2* This,UINT *pctinfo) { 3958 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 3959 } 3960 static FORCEINLINE HRESULT IShellFolderViewDual2_GetTypeInfo(IShellFolderViewDual2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 3961 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 3962 } 3963 static FORCEINLINE HRESULT IShellFolderViewDual2_GetIDsOfNames(IShellFolderViewDual2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 3964 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 3965 } 3966 static FORCEINLINE HRESULT IShellFolderViewDual2_Invoke(IShellFolderViewDual2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 3967 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 3968 } 3969 /*** IShellFolderViewDual methods ***/ 3970 static FORCEINLINE HRESULT IShellFolderViewDual2_get_Application(IShellFolderViewDual2* This,IDispatch **ppid) { 3971 return This->lpVtbl->get_Application(This,ppid); 3972 } 3973 static FORCEINLINE HRESULT IShellFolderViewDual2_get_Parent(IShellFolderViewDual2* This,IDispatch **ppid) { 3974 return This->lpVtbl->get_Parent(This,ppid); 3975 } 3976 static FORCEINLINE HRESULT IShellFolderViewDual2_get_Folder(IShellFolderViewDual2* This,Folder **ppid) { 3977 return This->lpVtbl->get_Folder(This,ppid); 3978 } 3979 static FORCEINLINE HRESULT IShellFolderViewDual2_SelectedItems(IShellFolderViewDual2* This,FolderItems **ppid) { 3980 return This->lpVtbl->SelectedItems(This,ppid); 3981 } 3982 static FORCEINLINE HRESULT IShellFolderViewDual2_get_FocusedItem(IShellFolderViewDual2* This,FolderItem **ppid) { 3983 return This->lpVtbl->get_FocusedItem(This,ppid); 3984 } 3985 static FORCEINLINE HRESULT IShellFolderViewDual2_SelectItem(IShellFolderViewDual2* This,VARIANT *pvfi,int dwFlags) { 3986 return This->lpVtbl->SelectItem(This,pvfi,dwFlags); 3987 } 3988 static FORCEINLINE HRESULT IShellFolderViewDual2_PopupItemMenu(IShellFolderViewDual2* This,FolderItem *pfi,VARIANT vx,VARIANT vy,BSTR *pbs) { 3989 return This->lpVtbl->PopupItemMenu(This,pfi,vx,vy,pbs); 3990 } 3991 static FORCEINLINE HRESULT IShellFolderViewDual2_get_Script(IShellFolderViewDual2* This,IDispatch **ppDisp) { 3992 return This->lpVtbl->get_Script(This,ppDisp); 3993 } 3994 static FORCEINLINE HRESULT IShellFolderViewDual2_get_ViewOptions(IShellFolderViewDual2* This,LONG *plViewOptions) { 3995 return This->lpVtbl->get_ViewOptions(This,plViewOptions); 3996 } 3997 /*** IShellFolderViewDual2 methods ***/ 3998 static FORCEINLINE HRESULT IShellFolderViewDual2_get_CurrentViewMode(IShellFolderViewDual2* This,UINT *pViewMode) { 3999 return This->lpVtbl->get_CurrentViewMode(This,pViewMode); 4000 } 4001 static FORCEINLINE HRESULT IShellFolderViewDual2_put_CurrentViewMode(IShellFolderViewDual2* This,UINT ViewMode) { 4002 return This->lpVtbl->put_CurrentViewMode(This,ViewMode); 4003 } 4004 static FORCEINLINE HRESULT IShellFolderViewDual2_SelectItemRelative(IShellFolderViewDual2* This,int iRelative) { 4005 return This->lpVtbl->SelectItemRelative(This,iRelative); 4006 } 4007 #endif 4008 #endif 4009 4010 #endif 4011 4012 4013 #endif /* __IShellFolderViewDual2_INTERFACE_DEFINED__ */ 4014 4015 /***************************************************************************** 4016 * IShellFolderViewDual3 interface 4017 */ 4018 #ifndef __IShellFolderViewDual3_INTERFACE_DEFINED__ 4019 #define __IShellFolderViewDual3_INTERFACE_DEFINED__ 4020 4021 DEFINE_GUID(IID_IShellFolderViewDual3, 0x29ec8e6c, 0x46d3, 0x411f, 0xba,0xaa, 0x61,0x1a,0x6c,0x9c,0xac,0x66); 4022 #if defined(__cplusplus) && !defined(CINTERFACE) 4023 MIDL_INTERFACE("29ec8e6c-46d3-411f-baaa-611a6c9cac66") 4024 IShellFolderViewDual3 : public IShellFolderViewDual2 4025 { 4026 virtual HRESULT STDMETHODCALLTYPE get_GroupBy( 4027 BSTR *pbstrGroupBy) = 0; 4028 4029 virtual HRESULT STDMETHODCALLTYPE put_GroupBy( 4030 BSTR bstrGroupBy) = 0; 4031 4032 virtual HRESULT STDMETHODCALLTYPE get_FolderFlags( 4033 DWORD *pdwFlags) = 0; 4034 4035 virtual HRESULT STDMETHODCALLTYPE put_FolderFlags( 4036 DWORD dwFlags) = 0; 4037 4038 virtual HRESULT STDMETHODCALLTYPE get_SortColumns( 4039 BSTR *pbstrSortColumns) = 0; 4040 4041 virtual HRESULT STDMETHODCALLTYPE put_SortColumns( 4042 BSTR bstrSortColumns) = 0; 4043 4044 virtual HRESULT STDMETHODCALLTYPE put_IconSize( 4045 int iIconSize) = 0; 4046 4047 virtual HRESULT STDMETHODCALLTYPE get_IconSize( 4048 int *piIconSize) = 0; 4049 4050 virtual HRESULT STDMETHODCALLTYPE FilterView( 4051 BSTR bstrFilterText) = 0; 4052 4053 }; 4054 #ifdef __CRT_UUID_DECL 4055 __CRT_UUID_DECL(IShellFolderViewDual3, 0x29ec8e6c, 0x46d3, 0x411f, 0xba,0xaa, 0x61,0x1a,0x6c,0x9c,0xac,0x66) 4056 #endif 4057 #else 4058 typedef struct IShellFolderViewDual3Vtbl { 4059 BEGIN_INTERFACE 4060 4061 /*** IUnknown methods ***/ 4062 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4063 IShellFolderViewDual3 *This, 4064 REFIID riid, 4065 void **ppvObject); 4066 4067 ULONG (STDMETHODCALLTYPE *AddRef)( 4068 IShellFolderViewDual3 *This); 4069 4070 ULONG (STDMETHODCALLTYPE *Release)( 4071 IShellFolderViewDual3 *This); 4072 4073 /*** IDispatch methods ***/ 4074 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 4075 IShellFolderViewDual3 *This, 4076 UINT *pctinfo); 4077 4078 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 4079 IShellFolderViewDual3 *This, 4080 UINT iTInfo, 4081 LCID lcid, 4082 ITypeInfo **ppTInfo); 4083 4084 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 4085 IShellFolderViewDual3 *This, 4086 REFIID riid, 4087 LPOLESTR *rgszNames, 4088 UINT cNames, 4089 LCID lcid, 4090 DISPID *rgDispId); 4091 4092 HRESULT (STDMETHODCALLTYPE *Invoke)( 4093 IShellFolderViewDual3 *This, 4094 DISPID dispIdMember, 4095 REFIID riid, 4096 LCID lcid, 4097 WORD wFlags, 4098 DISPPARAMS *pDispParams, 4099 VARIANT *pVarResult, 4100 EXCEPINFO *pExcepInfo, 4101 UINT *puArgErr); 4102 4103 /*** IShellFolderViewDual methods ***/ 4104 HRESULT (STDMETHODCALLTYPE *get_Application)( 4105 IShellFolderViewDual3 *This, 4106 IDispatch **ppid); 4107 4108 HRESULT (STDMETHODCALLTYPE *get_Parent)( 4109 IShellFolderViewDual3 *This, 4110 IDispatch **ppid); 4111 4112 HRESULT (STDMETHODCALLTYPE *get_Folder)( 4113 IShellFolderViewDual3 *This, 4114 Folder **ppid); 4115 4116 HRESULT (STDMETHODCALLTYPE *SelectedItems)( 4117 IShellFolderViewDual3 *This, 4118 FolderItems **ppid); 4119 4120 HRESULT (STDMETHODCALLTYPE *get_FocusedItem)( 4121 IShellFolderViewDual3 *This, 4122 FolderItem **ppid); 4123 4124 HRESULT (STDMETHODCALLTYPE *SelectItem)( 4125 IShellFolderViewDual3 *This, 4126 VARIANT *pvfi, 4127 int dwFlags); 4128 4129 HRESULT (STDMETHODCALLTYPE *PopupItemMenu)( 4130 IShellFolderViewDual3 *This, 4131 FolderItem *pfi, 4132 VARIANT vx, 4133 VARIANT vy, 4134 BSTR *pbs); 4135 4136 HRESULT (STDMETHODCALLTYPE *get_Script)( 4137 IShellFolderViewDual3 *This, 4138 IDispatch **ppDisp); 4139 4140 HRESULT (STDMETHODCALLTYPE *get_ViewOptions)( 4141 IShellFolderViewDual3 *This, 4142 LONG *plViewOptions); 4143 4144 /*** IShellFolderViewDual2 methods ***/ 4145 HRESULT (STDMETHODCALLTYPE *get_CurrentViewMode)( 4146 IShellFolderViewDual3 *This, 4147 UINT *pViewMode); 4148 4149 HRESULT (STDMETHODCALLTYPE *put_CurrentViewMode)( 4150 IShellFolderViewDual3 *This, 4151 UINT ViewMode); 4152 4153 HRESULT (STDMETHODCALLTYPE *SelectItemRelative)( 4154 IShellFolderViewDual3 *This, 4155 int iRelative); 4156 4157 /*** IShellFolderViewDual3 methods ***/ 4158 HRESULT (STDMETHODCALLTYPE *get_GroupBy)( 4159 IShellFolderViewDual3 *This, 4160 BSTR *pbstrGroupBy); 4161 4162 HRESULT (STDMETHODCALLTYPE *put_GroupBy)( 4163 IShellFolderViewDual3 *This, 4164 BSTR bstrGroupBy); 4165 4166 HRESULT (STDMETHODCALLTYPE *get_FolderFlags)( 4167 IShellFolderViewDual3 *This, 4168 DWORD *pdwFlags); 4169 4170 HRESULT (STDMETHODCALLTYPE *put_FolderFlags)( 4171 IShellFolderViewDual3 *This, 4172 DWORD dwFlags); 4173 4174 HRESULT (STDMETHODCALLTYPE *get_SortColumns)( 4175 IShellFolderViewDual3 *This, 4176 BSTR *pbstrSortColumns); 4177 4178 HRESULT (STDMETHODCALLTYPE *put_SortColumns)( 4179 IShellFolderViewDual3 *This, 4180 BSTR bstrSortColumns); 4181 4182 HRESULT (STDMETHODCALLTYPE *put_IconSize)( 4183 IShellFolderViewDual3 *This, 4184 int iIconSize); 4185 4186 HRESULT (STDMETHODCALLTYPE *get_IconSize)( 4187 IShellFolderViewDual3 *This, 4188 int *piIconSize); 4189 4190 HRESULT (STDMETHODCALLTYPE *FilterView)( 4191 IShellFolderViewDual3 *This, 4192 BSTR bstrFilterText); 4193 4194 END_INTERFACE 4195 } IShellFolderViewDual3Vtbl; 4196 4197 interface IShellFolderViewDual3 { 4198 CONST_VTBL IShellFolderViewDual3Vtbl* lpVtbl; 4199 }; 4200 4201 #ifdef COBJMACROS 4202 #ifndef WIDL_C_INLINE_WRAPPERS 4203 /*** IUnknown methods ***/ 4204 #define IShellFolderViewDual3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4205 #define IShellFolderViewDual3_AddRef(This) (This)->lpVtbl->AddRef(This) 4206 #define IShellFolderViewDual3_Release(This) (This)->lpVtbl->Release(This) 4207 /*** IDispatch methods ***/ 4208 #define IShellFolderViewDual3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 4209 #define IShellFolderViewDual3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 4210 #define IShellFolderViewDual3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 4211 #define IShellFolderViewDual3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 4212 /*** IShellFolderViewDual methods ***/ 4213 #define IShellFolderViewDual3_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 4214 #define IShellFolderViewDual3_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 4215 #define IShellFolderViewDual3_get_Folder(This,ppid) (This)->lpVtbl->get_Folder(This,ppid) 4216 #define IShellFolderViewDual3_SelectedItems(This,ppid) (This)->lpVtbl->SelectedItems(This,ppid) 4217 #define IShellFolderViewDual3_get_FocusedItem(This,ppid) (This)->lpVtbl->get_FocusedItem(This,ppid) 4218 #define IShellFolderViewDual3_SelectItem(This,pvfi,dwFlags) (This)->lpVtbl->SelectItem(This,pvfi,dwFlags) 4219 #define IShellFolderViewDual3_PopupItemMenu(This,pfi,vx,vy,pbs) (This)->lpVtbl->PopupItemMenu(This,pfi,vx,vy,pbs) 4220 #define IShellFolderViewDual3_get_Script(This,ppDisp) (This)->lpVtbl->get_Script(This,ppDisp) 4221 #define IShellFolderViewDual3_get_ViewOptions(This,plViewOptions) (This)->lpVtbl->get_ViewOptions(This,plViewOptions) 4222 /*** IShellFolderViewDual2 methods ***/ 4223 #define IShellFolderViewDual3_get_CurrentViewMode(This,pViewMode) (This)->lpVtbl->get_CurrentViewMode(This,pViewMode) 4224 #define IShellFolderViewDual3_put_CurrentViewMode(This,ViewMode) (This)->lpVtbl->put_CurrentViewMode(This,ViewMode) 4225 #define IShellFolderViewDual3_SelectItemRelative(This,iRelative) (This)->lpVtbl->SelectItemRelative(This,iRelative) 4226 /*** IShellFolderViewDual3 methods ***/ 4227 #define IShellFolderViewDual3_get_GroupBy(This,pbstrGroupBy) (This)->lpVtbl->get_GroupBy(This,pbstrGroupBy) 4228 #define IShellFolderViewDual3_put_GroupBy(This,bstrGroupBy) (This)->lpVtbl->put_GroupBy(This,bstrGroupBy) 4229 #define IShellFolderViewDual3_get_FolderFlags(This,pdwFlags) (This)->lpVtbl->get_FolderFlags(This,pdwFlags) 4230 #define IShellFolderViewDual3_put_FolderFlags(This,dwFlags) (This)->lpVtbl->put_FolderFlags(This,dwFlags) 4231 #define IShellFolderViewDual3_get_SortColumns(This,pbstrSortColumns) (This)->lpVtbl->get_SortColumns(This,pbstrSortColumns) 4232 #define IShellFolderViewDual3_put_SortColumns(This,bstrSortColumns) (This)->lpVtbl->put_SortColumns(This,bstrSortColumns) 4233 #define IShellFolderViewDual3_put_IconSize(This,iIconSize) (This)->lpVtbl->put_IconSize(This,iIconSize) 4234 #define IShellFolderViewDual3_get_IconSize(This,piIconSize) (This)->lpVtbl->get_IconSize(This,piIconSize) 4235 #define IShellFolderViewDual3_FilterView(This,bstrFilterText) (This)->lpVtbl->FilterView(This,bstrFilterText) 4236 #else 4237 /*** IUnknown methods ***/ 4238 static FORCEINLINE HRESULT IShellFolderViewDual3_QueryInterface(IShellFolderViewDual3* This,REFIID riid,void **ppvObject) { 4239 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4240 } 4241 static FORCEINLINE ULONG IShellFolderViewDual3_AddRef(IShellFolderViewDual3* This) { 4242 return This->lpVtbl->AddRef(This); 4243 } 4244 static FORCEINLINE ULONG IShellFolderViewDual3_Release(IShellFolderViewDual3* This) { 4245 return This->lpVtbl->Release(This); 4246 } 4247 /*** IDispatch methods ***/ 4248 static FORCEINLINE HRESULT IShellFolderViewDual3_GetTypeInfoCount(IShellFolderViewDual3* This,UINT *pctinfo) { 4249 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 4250 } 4251 static FORCEINLINE HRESULT IShellFolderViewDual3_GetTypeInfo(IShellFolderViewDual3* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 4252 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 4253 } 4254 static FORCEINLINE HRESULT IShellFolderViewDual3_GetIDsOfNames(IShellFolderViewDual3* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 4255 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 4256 } 4257 static FORCEINLINE HRESULT IShellFolderViewDual3_Invoke(IShellFolderViewDual3* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 4258 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 4259 } 4260 /*** IShellFolderViewDual methods ***/ 4261 static FORCEINLINE HRESULT IShellFolderViewDual3_get_Application(IShellFolderViewDual3* This,IDispatch **ppid) { 4262 return This->lpVtbl->get_Application(This,ppid); 4263 } 4264 static FORCEINLINE HRESULT IShellFolderViewDual3_get_Parent(IShellFolderViewDual3* This,IDispatch **ppid) { 4265 return This->lpVtbl->get_Parent(This,ppid); 4266 } 4267 static FORCEINLINE HRESULT IShellFolderViewDual3_get_Folder(IShellFolderViewDual3* This,Folder **ppid) { 4268 return This->lpVtbl->get_Folder(This,ppid); 4269 } 4270 static FORCEINLINE HRESULT IShellFolderViewDual3_SelectedItems(IShellFolderViewDual3* This,FolderItems **ppid) { 4271 return This->lpVtbl->SelectedItems(This,ppid); 4272 } 4273 static FORCEINLINE HRESULT IShellFolderViewDual3_get_FocusedItem(IShellFolderViewDual3* This,FolderItem **ppid) { 4274 return This->lpVtbl->get_FocusedItem(This,ppid); 4275 } 4276 static FORCEINLINE HRESULT IShellFolderViewDual3_SelectItem(IShellFolderViewDual3* This,VARIANT *pvfi,int dwFlags) { 4277 return This->lpVtbl->SelectItem(This,pvfi,dwFlags); 4278 } 4279 static FORCEINLINE HRESULT IShellFolderViewDual3_PopupItemMenu(IShellFolderViewDual3* This,FolderItem *pfi,VARIANT vx,VARIANT vy,BSTR *pbs) { 4280 return This->lpVtbl->PopupItemMenu(This,pfi,vx,vy,pbs); 4281 } 4282 static FORCEINLINE HRESULT IShellFolderViewDual3_get_Script(IShellFolderViewDual3* This,IDispatch **ppDisp) { 4283 return This->lpVtbl->get_Script(This,ppDisp); 4284 } 4285 static FORCEINLINE HRESULT IShellFolderViewDual3_get_ViewOptions(IShellFolderViewDual3* This,LONG *plViewOptions) { 4286 return This->lpVtbl->get_ViewOptions(This,plViewOptions); 4287 } 4288 /*** IShellFolderViewDual2 methods ***/ 4289 static FORCEINLINE HRESULT IShellFolderViewDual3_get_CurrentViewMode(IShellFolderViewDual3* This,UINT *pViewMode) { 4290 return This->lpVtbl->get_CurrentViewMode(This,pViewMode); 4291 } 4292 static FORCEINLINE HRESULT IShellFolderViewDual3_put_CurrentViewMode(IShellFolderViewDual3* This,UINT ViewMode) { 4293 return This->lpVtbl->put_CurrentViewMode(This,ViewMode); 4294 } 4295 static FORCEINLINE HRESULT IShellFolderViewDual3_SelectItemRelative(IShellFolderViewDual3* This,int iRelative) { 4296 return This->lpVtbl->SelectItemRelative(This,iRelative); 4297 } 4298 /*** IShellFolderViewDual3 methods ***/ 4299 static FORCEINLINE HRESULT IShellFolderViewDual3_get_GroupBy(IShellFolderViewDual3* This,BSTR *pbstrGroupBy) { 4300 return This->lpVtbl->get_GroupBy(This,pbstrGroupBy); 4301 } 4302 static FORCEINLINE HRESULT IShellFolderViewDual3_put_GroupBy(IShellFolderViewDual3* This,BSTR bstrGroupBy) { 4303 return This->lpVtbl->put_GroupBy(This,bstrGroupBy); 4304 } 4305 static FORCEINLINE HRESULT IShellFolderViewDual3_get_FolderFlags(IShellFolderViewDual3* This,DWORD *pdwFlags) { 4306 return This->lpVtbl->get_FolderFlags(This,pdwFlags); 4307 } 4308 static FORCEINLINE HRESULT IShellFolderViewDual3_put_FolderFlags(IShellFolderViewDual3* This,DWORD dwFlags) { 4309 return This->lpVtbl->put_FolderFlags(This,dwFlags); 4310 } 4311 static FORCEINLINE HRESULT IShellFolderViewDual3_get_SortColumns(IShellFolderViewDual3* This,BSTR *pbstrSortColumns) { 4312 return This->lpVtbl->get_SortColumns(This,pbstrSortColumns); 4313 } 4314 static FORCEINLINE HRESULT IShellFolderViewDual3_put_SortColumns(IShellFolderViewDual3* This,BSTR bstrSortColumns) { 4315 return This->lpVtbl->put_SortColumns(This,bstrSortColumns); 4316 } 4317 static FORCEINLINE HRESULT IShellFolderViewDual3_put_IconSize(IShellFolderViewDual3* This,int iIconSize) { 4318 return This->lpVtbl->put_IconSize(This,iIconSize); 4319 } 4320 static FORCEINLINE HRESULT IShellFolderViewDual3_get_IconSize(IShellFolderViewDual3* This,int *piIconSize) { 4321 return This->lpVtbl->get_IconSize(This,piIconSize); 4322 } 4323 static FORCEINLINE HRESULT IShellFolderViewDual3_FilterView(IShellFolderViewDual3* This,BSTR bstrFilterText) { 4324 return This->lpVtbl->FilterView(This,bstrFilterText); 4325 } 4326 #endif 4327 #endif 4328 4329 #endif 4330 4331 4332 #endif /* __IShellFolderViewDual3_INTERFACE_DEFINED__ */ 4333 4334 /***************************************************************************** 4335 * ShellFolderView coclass 4336 */ 4337 4338 DEFINE_GUID(CLSID_ShellFolderView, 0x62112aa1, 0xebe4, 0x11cf, 0xa5,0xfb, 0x00,0x20,0xaf,0xe7,0x29,0x2d); 4339 4340 #ifdef __cplusplus 4341 class DECLSPEC_UUID("62112aa1-ebe4-11cf-a5fb-0020afe7292d") ShellFolderView; 4342 #ifdef __CRT_UUID_DECL 4343 __CRT_UUID_DECL(ShellFolderView, 0x62112aa1, 0xebe4, 0x11cf, 0xa5,0xfb, 0x00,0x20,0xaf,0xe7,0x29,0x2d) 4344 #endif 4345 #endif 4346 4347 typedef enum ShellFolderViewOptions { 4348 SFVVO_SHOWALLOBJECTS = 0x1, 4349 SFVVO_SHOWEXTENSIONS = 0x2, 4350 SFVVO_SHOWCOMPCOLOR = 0x8, 4351 SFVVO_SHOWSYSFILES = 0x20, 4352 SFVVO_WIN95CLASSIC = 0x40, 4353 SFVVO_DOUBLECLICKINWEBVIEW = 0x80, 4354 SFVVO_DESKTOPHTML = 0x200 4355 } ShellFolderViewOptions; 4356 /***************************************************************************** 4357 * IShellDispatch interface 4358 */ 4359 #ifndef __IShellDispatch_INTERFACE_DEFINED__ 4360 #define __IShellDispatch_INTERFACE_DEFINED__ 4361 4362 DEFINE_GUID(IID_IShellDispatch, 0xd8f015c0, 0xc278, 0x11ce, 0xa4,0x9e, 0x44,0x45,0x53,0x54,0x00,0x00); 4363 #if defined(__cplusplus) && !defined(CINTERFACE) 4364 MIDL_INTERFACE("d8f015c0-c278-11ce-a49e-444553540000") 4365 IShellDispatch : public IDispatch 4366 { 4367 virtual HRESULT STDMETHODCALLTYPE get_Application( 4368 IDispatch **ppid) = 0; 4369 4370 virtual HRESULT STDMETHODCALLTYPE get_Parent( 4371 IDispatch **ppid) = 0; 4372 4373 virtual HRESULT STDMETHODCALLTYPE NameSpace( 4374 VARIANT vDir, 4375 Folder **ppsdf) = 0; 4376 4377 virtual HRESULT STDMETHODCALLTYPE BrowseForFolder( 4378 LONG Hwnd, 4379 BSTR Title, 4380 LONG Options, 4381 VARIANT RootFolder, 4382 Folder **ppsdf) = 0; 4383 4384 virtual HRESULT STDMETHODCALLTYPE Windows( 4385 IDispatch **ppid) = 0; 4386 4387 virtual HRESULT STDMETHODCALLTYPE Open( 4388 VARIANT vDir) = 0; 4389 4390 virtual HRESULT STDMETHODCALLTYPE Explore( 4391 VARIANT vDir) = 0; 4392 4393 virtual HRESULT STDMETHODCALLTYPE MinimizeAll( 4394 ) = 0; 4395 4396 virtual HRESULT STDMETHODCALLTYPE UndoMinimizeALL( 4397 ) = 0; 4398 4399 virtual HRESULT STDMETHODCALLTYPE FileRun( 4400 ) = 0; 4401 4402 virtual HRESULT STDMETHODCALLTYPE CascadeWindows( 4403 ) = 0; 4404 4405 virtual HRESULT STDMETHODCALLTYPE TileVertically( 4406 ) = 0; 4407 4408 virtual HRESULT STDMETHODCALLTYPE TileHorizontally( 4409 ) = 0; 4410 4411 virtual HRESULT STDMETHODCALLTYPE ShutdownWindows( 4412 ) = 0; 4413 4414 virtual HRESULT STDMETHODCALLTYPE Suspend( 4415 ) = 0; 4416 4417 virtual HRESULT STDMETHODCALLTYPE EjectPC( 4418 ) = 0; 4419 4420 virtual HRESULT STDMETHODCALLTYPE SetTime( 4421 ) = 0; 4422 4423 virtual HRESULT STDMETHODCALLTYPE TrayProperties( 4424 ) = 0; 4425 4426 virtual HRESULT STDMETHODCALLTYPE Help( 4427 ) = 0; 4428 4429 virtual HRESULT STDMETHODCALLTYPE FindFiles( 4430 ) = 0; 4431 4432 virtual HRESULT STDMETHODCALLTYPE FindComputer( 4433 ) = 0; 4434 4435 virtual HRESULT STDMETHODCALLTYPE RefreshMenu( 4436 ) = 0; 4437 4438 virtual HRESULT STDMETHODCALLTYPE ControlPanelItem( 4439 BSTR bstrDir) = 0; 4440 4441 }; 4442 #ifdef __CRT_UUID_DECL 4443 __CRT_UUID_DECL(IShellDispatch, 0xd8f015c0, 0xc278, 0x11ce, 0xa4,0x9e, 0x44,0x45,0x53,0x54,0x00,0x00) 4444 #endif 4445 #else 4446 typedef struct IShellDispatchVtbl { 4447 BEGIN_INTERFACE 4448 4449 /*** IUnknown methods ***/ 4450 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4451 IShellDispatch *This, 4452 REFIID riid, 4453 void **ppvObject); 4454 4455 ULONG (STDMETHODCALLTYPE *AddRef)( 4456 IShellDispatch *This); 4457 4458 ULONG (STDMETHODCALLTYPE *Release)( 4459 IShellDispatch *This); 4460 4461 /*** IDispatch methods ***/ 4462 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 4463 IShellDispatch *This, 4464 UINT *pctinfo); 4465 4466 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 4467 IShellDispatch *This, 4468 UINT iTInfo, 4469 LCID lcid, 4470 ITypeInfo **ppTInfo); 4471 4472 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 4473 IShellDispatch *This, 4474 REFIID riid, 4475 LPOLESTR *rgszNames, 4476 UINT cNames, 4477 LCID lcid, 4478 DISPID *rgDispId); 4479 4480 HRESULT (STDMETHODCALLTYPE *Invoke)( 4481 IShellDispatch *This, 4482 DISPID dispIdMember, 4483 REFIID riid, 4484 LCID lcid, 4485 WORD wFlags, 4486 DISPPARAMS *pDispParams, 4487 VARIANT *pVarResult, 4488 EXCEPINFO *pExcepInfo, 4489 UINT *puArgErr); 4490 4491 /*** IShellDispatch methods ***/ 4492 HRESULT (STDMETHODCALLTYPE *get_Application)( 4493 IShellDispatch *This, 4494 IDispatch **ppid); 4495 4496 HRESULT (STDMETHODCALLTYPE *get_Parent)( 4497 IShellDispatch *This, 4498 IDispatch **ppid); 4499 4500 HRESULT (STDMETHODCALLTYPE *NameSpace)( 4501 IShellDispatch *This, 4502 VARIANT vDir, 4503 Folder **ppsdf); 4504 4505 HRESULT (STDMETHODCALLTYPE *BrowseForFolder)( 4506 IShellDispatch *This, 4507 LONG Hwnd, 4508 BSTR Title, 4509 LONG Options, 4510 VARIANT RootFolder, 4511 Folder **ppsdf); 4512 4513 HRESULT (STDMETHODCALLTYPE *Windows)( 4514 IShellDispatch *This, 4515 IDispatch **ppid); 4516 4517 HRESULT (STDMETHODCALLTYPE *Open)( 4518 IShellDispatch *This, 4519 VARIANT vDir); 4520 4521 HRESULT (STDMETHODCALLTYPE *Explore)( 4522 IShellDispatch *This, 4523 VARIANT vDir); 4524 4525 HRESULT (STDMETHODCALLTYPE *MinimizeAll)( 4526 IShellDispatch *This); 4527 4528 HRESULT (STDMETHODCALLTYPE *UndoMinimizeALL)( 4529 IShellDispatch *This); 4530 4531 HRESULT (STDMETHODCALLTYPE *FileRun)( 4532 IShellDispatch *This); 4533 4534 HRESULT (STDMETHODCALLTYPE *CascadeWindows)( 4535 IShellDispatch *This); 4536 4537 HRESULT (STDMETHODCALLTYPE *TileVertically)( 4538 IShellDispatch *This); 4539 4540 HRESULT (STDMETHODCALLTYPE *TileHorizontally)( 4541 IShellDispatch *This); 4542 4543 HRESULT (STDMETHODCALLTYPE *ShutdownWindows)( 4544 IShellDispatch *This); 4545 4546 HRESULT (STDMETHODCALLTYPE *Suspend)( 4547 IShellDispatch *This); 4548 4549 HRESULT (STDMETHODCALLTYPE *EjectPC)( 4550 IShellDispatch *This); 4551 4552 HRESULT (STDMETHODCALLTYPE *SetTime)( 4553 IShellDispatch *This); 4554 4555 HRESULT (STDMETHODCALLTYPE *TrayProperties)( 4556 IShellDispatch *This); 4557 4558 HRESULT (STDMETHODCALLTYPE *Help)( 4559 IShellDispatch *This); 4560 4561 HRESULT (STDMETHODCALLTYPE *FindFiles)( 4562 IShellDispatch *This); 4563 4564 HRESULT (STDMETHODCALLTYPE *FindComputer)( 4565 IShellDispatch *This); 4566 4567 HRESULT (STDMETHODCALLTYPE *RefreshMenu)( 4568 IShellDispatch *This); 4569 4570 HRESULT (STDMETHODCALLTYPE *ControlPanelItem)( 4571 IShellDispatch *This, 4572 BSTR bstrDir); 4573 4574 END_INTERFACE 4575 } IShellDispatchVtbl; 4576 4577 interface IShellDispatch { 4578 CONST_VTBL IShellDispatchVtbl* lpVtbl; 4579 }; 4580 4581 #ifdef COBJMACROS 4582 #ifndef WIDL_C_INLINE_WRAPPERS 4583 /*** IUnknown methods ***/ 4584 #define IShellDispatch_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4585 #define IShellDispatch_AddRef(This) (This)->lpVtbl->AddRef(This) 4586 #define IShellDispatch_Release(This) (This)->lpVtbl->Release(This) 4587 /*** IDispatch methods ***/ 4588 #define IShellDispatch_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 4589 #define IShellDispatch_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 4590 #define IShellDispatch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 4591 #define IShellDispatch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 4592 /*** IShellDispatch methods ***/ 4593 #define IShellDispatch_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 4594 #define IShellDispatch_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 4595 #define IShellDispatch_NameSpace(This,vDir,ppsdf) (This)->lpVtbl->NameSpace(This,vDir,ppsdf) 4596 #define IShellDispatch_BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) (This)->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) 4597 #define IShellDispatch_Windows(This,ppid) (This)->lpVtbl->Windows(This,ppid) 4598 #define IShellDispatch_Open(This,vDir) (This)->lpVtbl->Open(This,vDir) 4599 #define IShellDispatch_Explore(This,vDir) (This)->lpVtbl->Explore(This,vDir) 4600 #define IShellDispatch_MinimizeAll(This) (This)->lpVtbl->MinimizeAll(This) 4601 #define IShellDispatch_UndoMinimizeALL(This) (This)->lpVtbl->UndoMinimizeALL(This) 4602 #define IShellDispatch_FileRun(This) (This)->lpVtbl->FileRun(This) 4603 #define IShellDispatch_CascadeWindows(This) (This)->lpVtbl->CascadeWindows(This) 4604 #define IShellDispatch_TileVertically(This) (This)->lpVtbl->TileVertically(This) 4605 #define IShellDispatch_TileHorizontally(This) (This)->lpVtbl->TileHorizontally(This) 4606 #define IShellDispatch_ShutdownWindows(This) (This)->lpVtbl->ShutdownWindows(This) 4607 #define IShellDispatch_Suspend(This) (This)->lpVtbl->Suspend(This) 4608 #define IShellDispatch_EjectPC(This) (This)->lpVtbl->EjectPC(This) 4609 #define IShellDispatch_SetTime(This) (This)->lpVtbl->SetTime(This) 4610 #define IShellDispatch_TrayProperties(This) (This)->lpVtbl->TrayProperties(This) 4611 #define IShellDispatch_Help(This) (This)->lpVtbl->Help(This) 4612 #define IShellDispatch_FindFiles(This) (This)->lpVtbl->FindFiles(This) 4613 #define IShellDispatch_FindComputer(This) (This)->lpVtbl->FindComputer(This) 4614 #define IShellDispatch_RefreshMenu(This) (This)->lpVtbl->RefreshMenu(This) 4615 #define IShellDispatch_ControlPanelItem(This,bstrDir) (This)->lpVtbl->ControlPanelItem(This,bstrDir) 4616 #else 4617 /*** IUnknown methods ***/ 4618 static FORCEINLINE HRESULT IShellDispatch_QueryInterface(IShellDispatch* This,REFIID riid,void **ppvObject) { 4619 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4620 } 4621 static FORCEINLINE ULONG IShellDispatch_AddRef(IShellDispatch* This) { 4622 return This->lpVtbl->AddRef(This); 4623 } 4624 static FORCEINLINE ULONG IShellDispatch_Release(IShellDispatch* This) { 4625 return This->lpVtbl->Release(This); 4626 } 4627 /*** IDispatch methods ***/ 4628 static FORCEINLINE HRESULT IShellDispatch_GetTypeInfoCount(IShellDispatch* This,UINT *pctinfo) { 4629 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 4630 } 4631 static FORCEINLINE HRESULT IShellDispatch_GetTypeInfo(IShellDispatch* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 4632 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 4633 } 4634 static FORCEINLINE HRESULT IShellDispatch_GetIDsOfNames(IShellDispatch* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 4635 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 4636 } 4637 static FORCEINLINE HRESULT IShellDispatch_Invoke(IShellDispatch* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 4638 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 4639 } 4640 /*** IShellDispatch methods ***/ 4641 static FORCEINLINE HRESULT IShellDispatch_get_Application(IShellDispatch* This,IDispatch **ppid) { 4642 return This->lpVtbl->get_Application(This,ppid); 4643 } 4644 static FORCEINLINE HRESULT IShellDispatch_get_Parent(IShellDispatch* This,IDispatch **ppid) { 4645 return This->lpVtbl->get_Parent(This,ppid); 4646 } 4647 static FORCEINLINE HRESULT IShellDispatch_NameSpace(IShellDispatch* This,VARIANT vDir,Folder **ppsdf) { 4648 return This->lpVtbl->NameSpace(This,vDir,ppsdf); 4649 } 4650 static FORCEINLINE HRESULT IShellDispatch_BrowseForFolder(IShellDispatch* This,LONG Hwnd,BSTR Title,LONG Options,VARIANT RootFolder,Folder **ppsdf) { 4651 return This->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf); 4652 } 4653 static FORCEINLINE HRESULT IShellDispatch_Windows(IShellDispatch* This,IDispatch **ppid) { 4654 return This->lpVtbl->Windows(This,ppid); 4655 } 4656 static FORCEINLINE HRESULT IShellDispatch_Open(IShellDispatch* This,VARIANT vDir) { 4657 return This->lpVtbl->Open(This,vDir); 4658 } 4659 static FORCEINLINE HRESULT IShellDispatch_Explore(IShellDispatch* This,VARIANT vDir) { 4660 return This->lpVtbl->Explore(This,vDir); 4661 } 4662 static FORCEINLINE HRESULT IShellDispatch_MinimizeAll(IShellDispatch* This) { 4663 return This->lpVtbl->MinimizeAll(This); 4664 } 4665 static FORCEINLINE HRESULT IShellDispatch_UndoMinimizeALL(IShellDispatch* This) { 4666 return This->lpVtbl->UndoMinimizeALL(This); 4667 } 4668 static FORCEINLINE HRESULT IShellDispatch_FileRun(IShellDispatch* This) { 4669 return This->lpVtbl->FileRun(This); 4670 } 4671 static FORCEINLINE HRESULT IShellDispatch_CascadeWindows(IShellDispatch* This) { 4672 return This->lpVtbl->CascadeWindows(This); 4673 } 4674 static FORCEINLINE HRESULT IShellDispatch_TileVertically(IShellDispatch* This) { 4675 return This->lpVtbl->TileVertically(This); 4676 } 4677 static FORCEINLINE HRESULT IShellDispatch_TileHorizontally(IShellDispatch* This) { 4678 return This->lpVtbl->TileHorizontally(This); 4679 } 4680 static FORCEINLINE HRESULT IShellDispatch_ShutdownWindows(IShellDispatch* This) { 4681 return This->lpVtbl->ShutdownWindows(This); 4682 } 4683 static FORCEINLINE HRESULT IShellDispatch_Suspend(IShellDispatch* This) { 4684 return This->lpVtbl->Suspend(This); 4685 } 4686 static FORCEINLINE HRESULT IShellDispatch_EjectPC(IShellDispatch* This) { 4687 return This->lpVtbl->EjectPC(This); 4688 } 4689 static FORCEINLINE HRESULT IShellDispatch_SetTime(IShellDispatch* This) { 4690 return This->lpVtbl->SetTime(This); 4691 } 4692 static FORCEINLINE HRESULT IShellDispatch_TrayProperties(IShellDispatch* This) { 4693 return This->lpVtbl->TrayProperties(This); 4694 } 4695 static FORCEINLINE HRESULT IShellDispatch_Help(IShellDispatch* This) { 4696 return This->lpVtbl->Help(This); 4697 } 4698 static FORCEINLINE HRESULT IShellDispatch_FindFiles(IShellDispatch* This) { 4699 return This->lpVtbl->FindFiles(This); 4700 } 4701 static FORCEINLINE HRESULT IShellDispatch_FindComputer(IShellDispatch* This) { 4702 return This->lpVtbl->FindComputer(This); 4703 } 4704 static FORCEINLINE HRESULT IShellDispatch_RefreshMenu(IShellDispatch* This) { 4705 return This->lpVtbl->RefreshMenu(This); 4706 } 4707 static FORCEINLINE HRESULT IShellDispatch_ControlPanelItem(IShellDispatch* This,BSTR bstrDir) { 4708 return This->lpVtbl->ControlPanelItem(This,bstrDir); 4709 } 4710 #endif 4711 #endif 4712 4713 #endif 4714 4715 4716 #endif /* __IShellDispatch_INTERFACE_DEFINED__ */ 4717 4718 /***************************************************************************** 4719 * IShellDispatch2 interface 4720 */ 4721 #ifndef __IShellDispatch2_INTERFACE_DEFINED__ 4722 #define __IShellDispatch2_INTERFACE_DEFINED__ 4723 4724 DEFINE_GUID(IID_IShellDispatch2, 0xa4c6892c, 0x3ba9, 0x11d2, 0x9d,0xea, 0x00,0xc0,0x4f,0xb1,0x61,0x62); 4725 #if defined(__cplusplus) && !defined(CINTERFACE) 4726 MIDL_INTERFACE("a4c6892c-3ba9-11d2-9dea-00c04fb16162") 4727 IShellDispatch2 : public IShellDispatch 4728 { 4729 virtual HRESULT STDMETHODCALLTYPE IsRestricted( 4730 BSTR Group, 4731 BSTR Restriction, 4732 LONG *plRestrictValue) = 0; 4733 4734 virtual HRESULT STDMETHODCALLTYPE ShellExecute( 4735 BSTR File, 4736 VARIANT vArgs, 4737 VARIANT vDir, 4738 VARIANT vOperation, 4739 VARIANT vShow) = 0; 4740 4741 virtual HRESULT STDMETHODCALLTYPE FindPrinter( 4742 BSTR name, 4743 BSTR location, 4744 BSTR model) = 0; 4745 4746 virtual HRESULT STDMETHODCALLTYPE GetSystemInformation( 4747 BSTR name, 4748 VARIANT *pv) = 0; 4749 4750 virtual HRESULT STDMETHODCALLTYPE ServiceStart( 4751 BSTR ServiceName, 4752 VARIANT Persistent, 4753 VARIANT *pSuccess) = 0; 4754 4755 virtual HRESULT STDMETHODCALLTYPE ServiceStop( 4756 BSTR ServiceName, 4757 VARIANT Persistent, 4758 VARIANT *pSuccess) = 0; 4759 4760 virtual HRESULT STDMETHODCALLTYPE IsServiceRunning( 4761 BSTR ServiceName, 4762 VARIANT *pRunning) = 0; 4763 4764 virtual HRESULT STDMETHODCALLTYPE CanStartStopService( 4765 BSTR ServiceName, 4766 VARIANT *pCanStartStop) = 0; 4767 4768 virtual HRESULT STDMETHODCALLTYPE ShowBrowserBar( 4769 BSTR bstrClsid, 4770 VARIANT bShow, 4771 VARIANT *pSuccess) = 0; 4772 4773 }; 4774 #ifdef __CRT_UUID_DECL 4775 __CRT_UUID_DECL(IShellDispatch2, 0xa4c6892c, 0x3ba9, 0x11d2, 0x9d,0xea, 0x00,0xc0,0x4f,0xb1,0x61,0x62) 4776 #endif 4777 #else 4778 typedef struct IShellDispatch2Vtbl { 4779 BEGIN_INTERFACE 4780 4781 /*** IUnknown methods ***/ 4782 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4783 IShellDispatch2 *This, 4784 REFIID riid, 4785 void **ppvObject); 4786 4787 ULONG (STDMETHODCALLTYPE *AddRef)( 4788 IShellDispatch2 *This); 4789 4790 ULONG (STDMETHODCALLTYPE *Release)( 4791 IShellDispatch2 *This); 4792 4793 /*** IDispatch methods ***/ 4794 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 4795 IShellDispatch2 *This, 4796 UINT *pctinfo); 4797 4798 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 4799 IShellDispatch2 *This, 4800 UINT iTInfo, 4801 LCID lcid, 4802 ITypeInfo **ppTInfo); 4803 4804 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 4805 IShellDispatch2 *This, 4806 REFIID riid, 4807 LPOLESTR *rgszNames, 4808 UINT cNames, 4809 LCID lcid, 4810 DISPID *rgDispId); 4811 4812 HRESULT (STDMETHODCALLTYPE *Invoke)( 4813 IShellDispatch2 *This, 4814 DISPID dispIdMember, 4815 REFIID riid, 4816 LCID lcid, 4817 WORD wFlags, 4818 DISPPARAMS *pDispParams, 4819 VARIANT *pVarResult, 4820 EXCEPINFO *pExcepInfo, 4821 UINT *puArgErr); 4822 4823 /*** IShellDispatch methods ***/ 4824 HRESULT (STDMETHODCALLTYPE *get_Application)( 4825 IShellDispatch2 *This, 4826 IDispatch **ppid); 4827 4828 HRESULT (STDMETHODCALLTYPE *get_Parent)( 4829 IShellDispatch2 *This, 4830 IDispatch **ppid); 4831 4832 HRESULT (STDMETHODCALLTYPE *NameSpace)( 4833 IShellDispatch2 *This, 4834 VARIANT vDir, 4835 Folder **ppsdf); 4836 4837 HRESULT (STDMETHODCALLTYPE *BrowseForFolder)( 4838 IShellDispatch2 *This, 4839 LONG Hwnd, 4840 BSTR Title, 4841 LONG Options, 4842 VARIANT RootFolder, 4843 Folder **ppsdf); 4844 4845 HRESULT (STDMETHODCALLTYPE *Windows)( 4846 IShellDispatch2 *This, 4847 IDispatch **ppid); 4848 4849 HRESULT (STDMETHODCALLTYPE *Open)( 4850 IShellDispatch2 *This, 4851 VARIANT vDir); 4852 4853 HRESULT (STDMETHODCALLTYPE *Explore)( 4854 IShellDispatch2 *This, 4855 VARIANT vDir); 4856 4857 HRESULT (STDMETHODCALLTYPE *MinimizeAll)( 4858 IShellDispatch2 *This); 4859 4860 HRESULT (STDMETHODCALLTYPE *UndoMinimizeALL)( 4861 IShellDispatch2 *This); 4862 4863 HRESULT (STDMETHODCALLTYPE *FileRun)( 4864 IShellDispatch2 *This); 4865 4866 HRESULT (STDMETHODCALLTYPE *CascadeWindows)( 4867 IShellDispatch2 *This); 4868 4869 HRESULT (STDMETHODCALLTYPE *TileVertically)( 4870 IShellDispatch2 *This); 4871 4872 HRESULT (STDMETHODCALLTYPE *TileHorizontally)( 4873 IShellDispatch2 *This); 4874 4875 HRESULT (STDMETHODCALLTYPE *ShutdownWindows)( 4876 IShellDispatch2 *This); 4877 4878 HRESULT (STDMETHODCALLTYPE *Suspend)( 4879 IShellDispatch2 *This); 4880 4881 HRESULT (STDMETHODCALLTYPE *EjectPC)( 4882 IShellDispatch2 *This); 4883 4884 HRESULT (STDMETHODCALLTYPE *SetTime)( 4885 IShellDispatch2 *This); 4886 4887 HRESULT (STDMETHODCALLTYPE *TrayProperties)( 4888 IShellDispatch2 *This); 4889 4890 HRESULT (STDMETHODCALLTYPE *Help)( 4891 IShellDispatch2 *This); 4892 4893 HRESULT (STDMETHODCALLTYPE *FindFiles)( 4894 IShellDispatch2 *This); 4895 4896 HRESULT (STDMETHODCALLTYPE *FindComputer)( 4897 IShellDispatch2 *This); 4898 4899 HRESULT (STDMETHODCALLTYPE *RefreshMenu)( 4900 IShellDispatch2 *This); 4901 4902 HRESULT (STDMETHODCALLTYPE *ControlPanelItem)( 4903 IShellDispatch2 *This, 4904 BSTR bstrDir); 4905 4906 /*** IShellDispatch2 methods ***/ 4907 HRESULT (STDMETHODCALLTYPE *IsRestricted)( 4908 IShellDispatch2 *This, 4909 BSTR Group, 4910 BSTR Restriction, 4911 LONG *plRestrictValue); 4912 4913 HRESULT (STDMETHODCALLTYPE *ShellExecute)( 4914 IShellDispatch2 *This, 4915 BSTR File, 4916 VARIANT vArgs, 4917 VARIANT vDir, 4918 VARIANT vOperation, 4919 VARIANT vShow); 4920 4921 HRESULT (STDMETHODCALLTYPE *FindPrinter)( 4922 IShellDispatch2 *This, 4923 BSTR name, 4924 BSTR location, 4925 BSTR model); 4926 4927 HRESULT (STDMETHODCALLTYPE *GetSystemInformation)( 4928 IShellDispatch2 *This, 4929 BSTR name, 4930 VARIANT *pv); 4931 4932 HRESULT (STDMETHODCALLTYPE *ServiceStart)( 4933 IShellDispatch2 *This, 4934 BSTR ServiceName, 4935 VARIANT Persistent, 4936 VARIANT *pSuccess); 4937 4938 HRESULT (STDMETHODCALLTYPE *ServiceStop)( 4939 IShellDispatch2 *This, 4940 BSTR ServiceName, 4941 VARIANT Persistent, 4942 VARIANT *pSuccess); 4943 4944 HRESULT (STDMETHODCALLTYPE *IsServiceRunning)( 4945 IShellDispatch2 *This, 4946 BSTR ServiceName, 4947 VARIANT *pRunning); 4948 4949 HRESULT (STDMETHODCALLTYPE *CanStartStopService)( 4950 IShellDispatch2 *This, 4951 BSTR ServiceName, 4952 VARIANT *pCanStartStop); 4953 4954 HRESULT (STDMETHODCALLTYPE *ShowBrowserBar)( 4955 IShellDispatch2 *This, 4956 BSTR bstrClsid, 4957 VARIANT bShow, 4958 VARIANT *pSuccess); 4959 4960 END_INTERFACE 4961 } IShellDispatch2Vtbl; 4962 4963 interface IShellDispatch2 { 4964 CONST_VTBL IShellDispatch2Vtbl* lpVtbl; 4965 }; 4966 4967 #ifdef COBJMACROS 4968 #ifndef WIDL_C_INLINE_WRAPPERS 4969 /*** IUnknown methods ***/ 4970 #define IShellDispatch2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4971 #define IShellDispatch2_AddRef(This) (This)->lpVtbl->AddRef(This) 4972 #define IShellDispatch2_Release(This) (This)->lpVtbl->Release(This) 4973 /*** IDispatch methods ***/ 4974 #define IShellDispatch2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 4975 #define IShellDispatch2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 4976 #define IShellDispatch2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 4977 #define IShellDispatch2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 4978 /*** IShellDispatch methods ***/ 4979 #define IShellDispatch2_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 4980 #define IShellDispatch2_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 4981 #define IShellDispatch2_NameSpace(This,vDir,ppsdf) (This)->lpVtbl->NameSpace(This,vDir,ppsdf) 4982 #define IShellDispatch2_BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) (This)->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) 4983 #define IShellDispatch2_Windows(This,ppid) (This)->lpVtbl->Windows(This,ppid) 4984 #define IShellDispatch2_Open(This,vDir) (This)->lpVtbl->Open(This,vDir) 4985 #define IShellDispatch2_Explore(This,vDir) (This)->lpVtbl->Explore(This,vDir) 4986 #define IShellDispatch2_MinimizeAll(This) (This)->lpVtbl->MinimizeAll(This) 4987 #define IShellDispatch2_UndoMinimizeALL(This) (This)->lpVtbl->UndoMinimizeALL(This) 4988 #define IShellDispatch2_FileRun(This) (This)->lpVtbl->FileRun(This) 4989 #define IShellDispatch2_CascadeWindows(This) (This)->lpVtbl->CascadeWindows(This) 4990 #define IShellDispatch2_TileVertically(This) (This)->lpVtbl->TileVertically(This) 4991 #define IShellDispatch2_TileHorizontally(This) (This)->lpVtbl->TileHorizontally(This) 4992 #define IShellDispatch2_ShutdownWindows(This) (This)->lpVtbl->ShutdownWindows(This) 4993 #define IShellDispatch2_Suspend(This) (This)->lpVtbl->Suspend(This) 4994 #define IShellDispatch2_EjectPC(This) (This)->lpVtbl->EjectPC(This) 4995 #define IShellDispatch2_SetTime(This) (This)->lpVtbl->SetTime(This) 4996 #define IShellDispatch2_TrayProperties(This) (This)->lpVtbl->TrayProperties(This) 4997 #define IShellDispatch2_Help(This) (This)->lpVtbl->Help(This) 4998 #define IShellDispatch2_FindFiles(This) (This)->lpVtbl->FindFiles(This) 4999 #define IShellDispatch2_FindComputer(This) (This)->lpVtbl->FindComputer(This) 5000 #define IShellDispatch2_RefreshMenu(This) (This)->lpVtbl->RefreshMenu(This) 5001 #define IShellDispatch2_ControlPanelItem(This,bstrDir) (This)->lpVtbl->ControlPanelItem(This,bstrDir) 5002 /*** IShellDispatch2 methods ***/ 5003 #define IShellDispatch2_IsRestricted(This,Group,Restriction,plRestrictValue) (This)->lpVtbl->IsRestricted(This,Group,Restriction,plRestrictValue) 5004 #define IShellDispatch2_ShellExecute(This,File,vArgs,vDir,vOperation,vShow) (This)->lpVtbl->ShellExecute(This,File,vArgs,vDir,vOperation,vShow) 5005 #define IShellDispatch2_FindPrinter(This,name,location,model) (This)->lpVtbl->FindPrinter(This,name,location,model) 5006 #define IShellDispatch2_GetSystemInformation(This,name,pv) (This)->lpVtbl->GetSystemInformation(This,name,pv) 5007 #define IShellDispatch2_ServiceStart(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStart(This,ServiceName,Persistent,pSuccess) 5008 #define IShellDispatch2_ServiceStop(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStop(This,ServiceName,Persistent,pSuccess) 5009 #define IShellDispatch2_IsServiceRunning(This,ServiceName,pRunning) (This)->lpVtbl->IsServiceRunning(This,ServiceName,pRunning) 5010 #define IShellDispatch2_CanStartStopService(This,ServiceName,pCanStartStop) (This)->lpVtbl->CanStartStopService(This,ServiceName,pCanStartStop) 5011 #define IShellDispatch2_ShowBrowserBar(This,bstrClsid,bShow,pSuccess) (This)->lpVtbl->ShowBrowserBar(This,bstrClsid,bShow,pSuccess) 5012 #else 5013 /*** IUnknown methods ***/ 5014 static FORCEINLINE HRESULT IShellDispatch2_QueryInterface(IShellDispatch2* This,REFIID riid,void **ppvObject) { 5015 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5016 } 5017 static FORCEINLINE ULONG IShellDispatch2_AddRef(IShellDispatch2* This) { 5018 return This->lpVtbl->AddRef(This); 5019 } 5020 static FORCEINLINE ULONG IShellDispatch2_Release(IShellDispatch2* This) { 5021 return This->lpVtbl->Release(This); 5022 } 5023 /*** IDispatch methods ***/ 5024 static FORCEINLINE HRESULT IShellDispatch2_GetTypeInfoCount(IShellDispatch2* This,UINT *pctinfo) { 5025 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 5026 } 5027 static FORCEINLINE HRESULT IShellDispatch2_GetTypeInfo(IShellDispatch2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 5028 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 5029 } 5030 static FORCEINLINE HRESULT IShellDispatch2_GetIDsOfNames(IShellDispatch2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 5031 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 5032 } 5033 static FORCEINLINE HRESULT IShellDispatch2_Invoke(IShellDispatch2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 5034 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 5035 } 5036 /*** IShellDispatch methods ***/ 5037 static FORCEINLINE HRESULT IShellDispatch2_get_Application(IShellDispatch2* This,IDispatch **ppid) { 5038 return This->lpVtbl->get_Application(This,ppid); 5039 } 5040 static FORCEINLINE HRESULT IShellDispatch2_get_Parent(IShellDispatch2* This,IDispatch **ppid) { 5041 return This->lpVtbl->get_Parent(This,ppid); 5042 } 5043 static FORCEINLINE HRESULT IShellDispatch2_NameSpace(IShellDispatch2* This,VARIANT vDir,Folder **ppsdf) { 5044 return This->lpVtbl->NameSpace(This,vDir,ppsdf); 5045 } 5046 static FORCEINLINE HRESULT IShellDispatch2_BrowseForFolder(IShellDispatch2* This,LONG Hwnd,BSTR Title,LONG Options,VARIANT RootFolder,Folder **ppsdf) { 5047 return This->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf); 5048 } 5049 static FORCEINLINE HRESULT IShellDispatch2_Windows(IShellDispatch2* This,IDispatch **ppid) { 5050 return This->lpVtbl->Windows(This,ppid); 5051 } 5052 static FORCEINLINE HRESULT IShellDispatch2_Open(IShellDispatch2* This,VARIANT vDir) { 5053 return This->lpVtbl->Open(This,vDir); 5054 } 5055 static FORCEINLINE HRESULT IShellDispatch2_Explore(IShellDispatch2* This,VARIANT vDir) { 5056 return This->lpVtbl->Explore(This,vDir); 5057 } 5058 static FORCEINLINE HRESULT IShellDispatch2_MinimizeAll(IShellDispatch2* This) { 5059 return This->lpVtbl->MinimizeAll(This); 5060 } 5061 static FORCEINLINE HRESULT IShellDispatch2_UndoMinimizeALL(IShellDispatch2* This) { 5062 return This->lpVtbl->UndoMinimizeALL(This); 5063 } 5064 static FORCEINLINE HRESULT IShellDispatch2_FileRun(IShellDispatch2* This) { 5065 return This->lpVtbl->FileRun(This); 5066 } 5067 static FORCEINLINE HRESULT IShellDispatch2_CascadeWindows(IShellDispatch2* This) { 5068 return This->lpVtbl->CascadeWindows(This); 5069 } 5070 static FORCEINLINE HRESULT IShellDispatch2_TileVertically(IShellDispatch2* This) { 5071 return This->lpVtbl->TileVertically(This); 5072 } 5073 static FORCEINLINE HRESULT IShellDispatch2_TileHorizontally(IShellDispatch2* This) { 5074 return This->lpVtbl->TileHorizontally(This); 5075 } 5076 static FORCEINLINE HRESULT IShellDispatch2_ShutdownWindows(IShellDispatch2* This) { 5077 return This->lpVtbl->ShutdownWindows(This); 5078 } 5079 static FORCEINLINE HRESULT IShellDispatch2_Suspend(IShellDispatch2* This) { 5080 return This->lpVtbl->Suspend(This); 5081 } 5082 static FORCEINLINE HRESULT IShellDispatch2_EjectPC(IShellDispatch2* This) { 5083 return This->lpVtbl->EjectPC(This); 5084 } 5085 static FORCEINLINE HRESULT IShellDispatch2_SetTime(IShellDispatch2* This) { 5086 return This->lpVtbl->SetTime(This); 5087 } 5088 static FORCEINLINE HRESULT IShellDispatch2_TrayProperties(IShellDispatch2* This) { 5089 return This->lpVtbl->TrayProperties(This); 5090 } 5091 static FORCEINLINE HRESULT IShellDispatch2_Help(IShellDispatch2* This) { 5092 return This->lpVtbl->Help(This); 5093 } 5094 static FORCEINLINE HRESULT IShellDispatch2_FindFiles(IShellDispatch2* This) { 5095 return This->lpVtbl->FindFiles(This); 5096 } 5097 static FORCEINLINE HRESULT IShellDispatch2_FindComputer(IShellDispatch2* This) { 5098 return This->lpVtbl->FindComputer(This); 5099 } 5100 static FORCEINLINE HRESULT IShellDispatch2_RefreshMenu(IShellDispatch2* This) { 5101 return This->lpVtbl->RefreshMenu(This); 5102 } 5103 static FORCEINLINE HRESULT IShellDispatch2_ControlPanelItem(IShellDispatch2* This,BSTR bstrDir) { 5104 return This->lpVtbl->ControlPanelItem(This,bstrDir); 5105 } 5106 /*** IShellDispatch2 methods ***/ 5107 static FORCEINLINE HRESULT IShellDispatch2_IsRestricted(IShellDispatch2* This,BSTR Group,BSTR Restriction,LONG *plRestrictValue) { 5108 return This->lpVtbl->IsRestricted(This,Group,Restriction,plRestrictValue); 5109 } 5110 static FORCEINLINE HRESULT IShellDispatch2_ShellExecute(IShellDispatch2* This,BSTR File,VARIANT vArgs,VARIANT vDir,VARIANT vOperation,VARIANT vShow) { 5111 return This->lpVtbl->ShellExecute(This,File,vArgs,vDir,vOperation,vShow); 5112 } 5113 static FORCEINLINE HRESULT IShellDispatch2_FindPrinter(IShellDispatch2* This,BSTR name,BSTR location,BSTR model) { 5114 return This->lpVtbl->FindPrinter(This,name,location,model); 5115 } 5116 static FORCEINLINE HRESULT IShellDispatch2_GetSystemInformation(IShellDispatch2* This,BSTR name,VARIANT *pv) { 5117 return This->lpVtbl->GetSystemInformation(This,name,pv); 5118 } 5119 static FORCEINLINE HRESULT IShellDispatch2_ServiceStart(IShellDispatch2* This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess) { 5120 return This->lpVtbl->ServiceStart(This,ServiceName,Persistent,pSuccess); 5121 } 5122 static FORCEINLINE HRESULT IShellDispatch2_ServiceStop(IShellDispatch2* This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess) { 5123 return This->lpVtbl->ServiceStop(This,ServiceName,Persistent,pSuccess); 5124 } 5125 static FORCEINLINE HRESULT IShellDispatch2_IsServiceRunning(IShellDispatch2* This,BSTR ServiceName,VARIANT *pRunning) { 5126 return This->lpVtbl->IsServiceRunning(This,ServiceName,pRunning); 5127 } 5128 static FORCEINLINE HRESULT IShellDispatch2_CanStartStopService(IShellDispatch2* This,BSTR ServiceName,VARIANT *pCanStartStop) { 5129 return This->lpVtbl->CanStartStopService(This,ServiceName,pCanStartStop); 5130 } 5131 static FORCEINLINE HRESULT IShellDispatch2_ShowBrowserBar(IShellDispatch2* This,BSTR bstrClsid,VARIANT bShow,VARIANT *pSuccess) { 5132 return This->lpVtbl->ShowBrowserBar(This,bstrClsid,bShow,pSuccess); 5133 } 5134 #endif 5135 #endif 5136 5137 #endif 5138 5139 5140 #endif /* __IShellDispatch2_INTERFACE_DEFINED__ */ 5141 5142 /***************************************************************************** 5143 * IShellDispatch3 interface 5144 */ 5145 #ifndef __IShellDispatch3_INTERFACE_DEFINED__ 5146 #define __IShellDispatch3_INTERFACE_DEFINED__ 5147 5148 DEFINE_GUID(IID_IShellDispatch3, 0x177160ca, 0xbb5a, 0x411c, 0x84,0x1d, 0xbd,0x38,0xfa,0xcd,0xea,0xa0); 5149 #if defined(__cplusplus) && !defined(CINTERFACE) 5150 MIDL_INTERFACE("177160ca-bb5a-411c-841d-bd38facdeaa0") 5151 IShellDispatch3 : public IShellDispatch2 5152 { 5153 virtual HRESULT STDMETHODCALLTYPE AddToRecent( 5154 VARIANT varFile, 5155 BSTR bstrCategory) = 0; 5156 5157 }; 5158 #ifdef __CRT_UUID_DECL 5159 __CRT_UUID_DECL(IShellDispatch3, 0x177160ca, 0xbb5a, 0x411c, 0x84,0x1d, 0xbd,0x38,0xfa,0xcd,0xea,0xa0) 5160 #endif 5161 #else 5162 typedef struct IShellDispatch3Vtbl { 5163 BEGIN_INTERFACE 5164 5165 /*** IUnknown methods ***/ 5166 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5167 IShellDispatch3 *This, 5168 REFIID riid, 5169 void **ppvObject); 5170 5171 ULONG (STDMETHODCALLTYPE *AddRef)( 5172 IShellDispatch3 *This); 5173 5174 ULONG (STDMETHODCALLTYPE *Release)( 5175 IShellDispatch3 *This); 5176 5177 /*** IDispatch methods ***/ 5178 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 5179 IShellDispatch3 *This, 5180 UINT *pctinfo); 5181 5182 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 5183 IShellDispatch3 *This, 5184 UINT iTInfo, 5185 LCID lcid, 5186 ITypeInfo **ppTInfo); 5187 5188 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 5189 IShellDispatch3 *This, 5190 REFIID riid, 5191 LPOLESTR *rgszNames, 5192 UINT cNames, 5193 LCID lcid, 5194 DISPID *rgDispId); 5195 5196 HRESULT (STDMETHODCALLTYPE *Invoke)( 5197 IShellDispatch3 *This, 5198 DISPID dispIdMember, 5199 REFIID riid, 5200 LCID lcid, 5201 WORD wFlags, 5202 DISPPARAMS *pDispParams, 5203 VARIANT *pVarResult, 5204 EXCEPINFO *pExcepInfo, 5205 UINT *puArgErr); 5206 5207 /*** IShellDispatch methods ***/ 5208 HRESULT (STDMETHODCALLTYPE *get_Application)( 5209 IShellDispatch3 *This, 5210 IDispatch **ppid); 5211 5212 HRESULT (STDMETHODCALLTYPE *get_Parent)( 5213 IShellDispatch3 *This, 5214 IDispatch **ppid); 5215 5216 HRESULT (STDMETHODCALLTYPE *NameSpace)( 5217 IShellDispatch3 *This, 5218 VARIANT vDir, 5219 Folder **ppsdf); 5220 5221 HRESULT (STDMETHODCALLTYPE *BrowseForFolder)( 5222 IShellDispatch3 *This, 5223 LONG Hwnd, 5224 BSTR Title, 5225 LONG Options, 5226 VARIANT RootFolder, 5227 Folder **ppsdf); 5228 5229 HRESULT (STDMETHODCALLTYPE *Windows)( 5230 IShellDispatch3 *This, 5231 IDispatch **ppid); 5232 5233 HRESULT (STDMETHODCALLTYPE *Open)( 5234 IShellDispatch3 *This, 5235 VARIANT vDir); 5236 5237 HRESULT (STDMETHODCALLTYPE *Explore)( 5238 IShellDispatch3 *This, 5239 VARIANT vDir); 5240 5241 HRESULT (STDMETHODCALLTYPE *MinimizeAll)( 5242 IShellDispatch3 *This); 5243 5244 HRESULT (STDMETHODCALLTYPE *UndoMinimizeALL)( 5245 IShellDispatch3 *This); 5246 5247 HRESULT (STDMETHODCALLTYPE *FileRun)( 5248 IShellDispatch3 *This); 5249 5250 HRESULT (STDMETHODCALLTYPE *CascadeWindows)( 5251 IShellDispatch3 *This); 5252 5253 HRESULT (STDMETHODCALLTYPE *TileVertically)( 5254 IShellDispatch3 *This); 5255 5256 HRESULT (STDMETHODCALLTYPE *TileHorizontally)( 5257 IShellDispatch3 *This); 5258 5259 HRESULT (STDMETHODCALLTYPE *ShutdownWindows)( 5260 IShellDispatch3 *This); 5261 5262 HRESULT (STDMETHODCALLTYPE *Suspend)( 5263 IShellDispatch3 *This); 5264 5265 HRESULT (STDMETHODCALLTYPE *EjectPC)( 5266 IShellDispatch3 *This); 5267 5268 HRESULT (STDMETHODCALLTYPE *SetTime)( 5269 IShellDispatch3 *This); 5270 5271 HRESULT (STDMETHODCALLTYPE *TrayProperties)( 5272 IShellDispatch3 *This); 5273 5274 HRESULT (STDMETHODCALLTYPE *Help)( 5275 IShellDispatch3 *This); 5276 5277 HRESULT (STDMETHODCALLTYPE *FindFiles)( 5278 IShellDispatch3 *This); 5279 5280 HRESULT (STDMETHODCALLTYPE *FindComputer)( 5281 IShellDispatch3 *This); 5282 5283 HRESULT (STDMETHODCALLTYPE *RefreshMenu)( 5284 IShellDispatch3 *This); 5285 5286 HRESULT (STDMETHODCALLTYPE *ControlPanelItem)( 5287 IShellDispatch3 *This, 5288 BSTR bstrDir); 5289 5290 /*** IShellDispatch2 methods ***/ 5291 HRESULT (STDMETHODCALLTYPE *IsRestricted)( 5292 IShellDispatch3 *This, 5293 BSTR Group, 5294 BSTR Restriction, 5295 LONG *plRestrictValue); 5296 5297 HRESULT (STDMETHODCALLTYPE *ShellExecute)( 5298 IShellDispatch3 *This, 5299 BSTR File, 5300 VARIANT vArgs, 5301 VARIANT vDir, 5302 VARIANT vOperation, 5303 VARIANT vShow); 5304 5305 HRESULT (STDMETHODCALLTYPE *FindPrinter)( 5306 IShellDispatch3 *This, 5307 BSTR name, 5308 BSTR location, 5309 BSTR model); 5310 5311 HRESULT (STDMETHODCALLTYPE *GetSystemInformation)( 5312 IShellDispatch3 *This, 5313 BSTR name, 5314 VARIANT *pv); 5315 5316 HRESULT (STDMETHODCALLTYPE *ServiceStart)( 5317 IShellDispatch3 *This, 5318 BSTR ServiceName, 5319 VARIANT Persistent, 5320 VARIANT *pSuccess); 5321 5322 HRESULT (STDMETHODCALLTYPE *ServiceStop)( 5323 IShellDispatch3 *This, 5324 BSTR ServiceName, 5325 VARIANT Persistent, 5326 VARIANT *pSuccess); 5327 5328 HRESULT (STDMETHODCALLTYPE *IsServiceRunning)( 5329 IShellDispatch3 *This, 5330 BSTR ServiceName, 5331 VARIANT *pRunning); 5332 5333 HRESULT (STDMETHODCALLTYPE *CanStartStopService)( 5334 IShellDispatch3 *This, 5335 BSTR ServiceName, 5336 VARIANT *pCanStartStop); 5337 5338 HRESULT (STDMETHODCALLTYPE *ShowBrowserBar)( 5339 IShellDispatch3 *This, 5340 BSTR bstrClsid, 5341 VARIANT bShow, 5342 VARIANT *pSuccess); 5343 5344 /*** IShellDispatch3 methods ***/ 5345 HRESULT (STDMETHODCALLTYPE *AddToRecent)( 5346 IShellDispatch3 *This, 5347 VARIANT varFile, 5348 BSTR bstrCategory); 5349 5350 END_INTERFACE 5351 } IShellDispatch3Vtbl; 5352 5353 interface IShellDispatch3 { 5354 CONST_VTBL IShellDispatch3Vtbl* lpVtbl; 5355 }; 5356 5357 #ifdef COBJMACROS 5358 #ifndef WIDL_C_INLINE_WRAPPERS 5359 /*** IUnknown methods ***/ 5360 #define IShellDispatch3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5361 #define IShellDispatch3_AddRef(This) (This)->lpVtbl->AddRef(This) 5362 #define IShellDispatch3_Release(This) (This)->lpVtbl->Release(This) 5363 /*** IDispatch methods ***/ 5364 #define IShellDispatch3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 5365 #define IShellDispatch3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 5366 #define IShellDispatch3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 5367 #define IShellDispatch3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 5368 /*** IShellDispatch methods ***/ 5369 #define IShellDispatch3_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 5370 #define IShellDispatch3_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 5371 #define IShellDispatch3_NameSpace(This,vDir,ppsdf) (This)->lpVtbl->NameSpace(This,vDir,ppsdf) 5372 #define IShellDispatch3_BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) (This)->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) 5373 #define IShellDispatch3_Windows(This,ppid) (This)->lpVtbl->Windows(This,ppid) 5374 #define IShellDispatch3_Open(This,vDir) (This)->lpVtbl->Open(This,vDir) 5375 #define IShellDispatch3_Explore(This,vDir) (This)->lpVtbl->Explore(This,vDir) 5376 #define IShellDispatch3_MinimizeAll(This) (This)->lpVtbl->MinimizeAll(This) 5377 #define IShellDispatch3_UndoMinimizeALL(This) (This)->lpVtbl->UndoMinimizeALL(This) 5378 #define IShellDispatch3_FileRun(This) (This)->lpVtbl->FileRun(This) 5379 #define IShellDispatch3_CascadeWindows(This) (This)->lpVtbl->CascadeWindows(This) 5380 #define IShellDispatch3_TileVertically(This) (This)->lpVtbl->TileVertically(This) 5381 #define IShellDispatch3_TileHorizontally(This) (This)->lpVtbl->TileHorizontally(This) 5382 #define IShellDispatch3_ShutdownWindows(This) (This)->lpVtbl->ShutdownWindows(This) 5383 #define IShellDispatch3_Suspend(This) (This)->lpVtbl->Suspend(This) 5384 #define IShellDispatch3_EjectPC(This) (This)->lpVtbl->EjectPC(This) 5385 #define IShellDispatch3_SetTime(This) (This)->lpVtbl->SetTime(This) 5386 #define IShellDispatch3_TrayProperties(This) (This)->lpVtbl->TrayProperties(This) 5387 #define IShellDispatch3_Help(This) (This)->lpVtbl->Help(This) 5388 #define IShellDispatch3_FindFiles(This) (This)->lpVtbl->FindFiles(This) 5389 #define IShellDispatch3_FindComputer(This) (This)->lpVtbl->FindComputer(This) 5390 #define IShellDispatch3_RefreshMenu(This) (This)->lpVtbl->RefreshMenu(This) 5391 #define IShellDispatch3_ControlPanelItem(This,bstrDir) (This)->lpVtbl->ControlPanelItem(This,bstrDir) 5392 /*** IShellDispatch2 methods ***/ 5393 #define IShellDispatch3_IsRestricted(This,Group,Restriction,plRestrictValue) (This)->lpVtbl->IsRestricted(This,Group,Restriction,plRestrictValue) 5394 #define IShellDispatch3_ShellExecute(This,File,vArgs,vDir,vOperation,vShow) (This)->lpVtbl->ShellExecute(This,File,vArgs,vDir,vOperation,vShow) 5395 #define IShellDispatch3_FindPrinter(This,name,location,model) (This)->lpVtbl->FindPrinter(This,name,location,model) 5396 #define IShellDispatch3_GetSystemInformation(This,name,pv) (This)->lpVtbl->GetSystemInformation(This,name,pv) 5397 #define IShellDispatch3_ServiceStart(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStart(This,ServiceName,Persistent,pSuccess) 5398 #define IShellDispatch3_ServiceStop(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStop(This,ServiceName,Persistent,pSuccess) 5399 #define IShellDispatch3_IsServiceRunning(This,ServiceName,pRunning) (This)->lpVtbl->IsServiceRunning(This,ServiceName,pRunning) 5400 #define IShellDispatch3_CanStartStopService(This,ServiceName,pCanStartStop) (This)->lpVtbl->CanStartStopService(This,ServiceName,pCanStartStop) 5401 #define IShellDispatch3_ShowBrowserBar(This,bstrClsid,bShow,pSuccess) (This)->lpVtbl->ShowBrowserBar(This,bstrClsid,bShow,pSuccess) 5402 /*** IShellDispatch3 methods ***/ 5403 #define IShellDispatch3_AddToRecent(This,varFile,bstrCategory) (This)->lpVtbl->AddToRecent(This,varFile,bstrCategory) 5404 #else 5405 /*** IUnknown methods ***/ 5406 static FORCEINLINE HRESULT IShellDispatch3_QueryInterface(IShellDispatch3* This,REFIID riid,void **ppvObject) { 5407 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5408 } 5409 static FORCEINLINE ULONG IShellDispatch3_AddRef(IShellDispatch3* This) { 5410 return This->lpVtbl->AddRef(This); 5411 } 5412 static FORCEINLINE ULONG IShellDispatch3_Release(IShellDispatch3* This) { 5413 return This->lpVtbl->Release(This); 5414 } 5415 /*** IDispatch methods ***/ 5416 static FORCEINLINE HRESULT IShellDispatch3_GetTypeInfoCount(IShellDispatch3* This,UINT *pctinfo) { 5417 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 5418 } 5419 static FORCEINLINE HRESULT IShellDispatch3_GetTypeInfo(IShellDispatch3* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 5420 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 5421 } 5422 static FORCEINLINE HRESULT IShellDispatch3_GetIDsOfNames(IShellDispatch3* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 5423 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 5424 } 5425 static FORCEINLINE HRESULT IShellDispatch3_Invoke(IShellDispatch3* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 5426 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 5427 } 5428 /*** IShellDispatch methods ***/ 5429 static FORCEINLINE HRESULT IShellDispatch3_get_Application(IShellDispatch3* This,IDispatch **ppid) { 5430 return This->lpVtbl->get_Application(This,ppid); 5431 } 5432 static FORCEINLINE HRESULT IShellDispatch3_get_Parent(IShellDispatch3* This,IDispatch **ppid) { 5433 return This->lpVtbl->get_Parent(This,ppid); 5434 } 5435 static FORCEINLINE HRESULT IShellDispatch3_NameSpace(IShellDispatch3* This,VARIANT vDir,Folder **ppsdf) { 5436 return This->lpVtbl->NameSpace(This,vDir,ppsdf); 5437 } 5438 static FORCEINLINE HRESULT IShellDispatch3_BrowseForFolder(IShellDispatch3* This,LONG Hwnd,BSTR Title,LONG Options,VARIANT RootFolder,Folder **ppsdf) { 5439 return This->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf); 5440 } 5441 static FORCEINLINE HRESULT IShellDispatch3_Windows(IShellDispatch3* This,IDispatch **ppid) { 5442 return This->lpVtbl->Windows(This,ppid); 5443 } 5444 static FORCEINLINE HRESULT IShellDispatch3_Open(IShellDispatch3* This,VARIANT vDir) { 5445 return This->lpVtbl->Open(This,vDir); 5446 } 5447 static FORCEINLINE HRESULT IShellDispatch3_Explore(IShellDispatch3* This,VARIANT vDir) { 5448 return This->lpVtbl->Explore(This,vDir); 5449 } 5450 static FORCEINLINE HRESULT IShellDispatch3_MinimizeAll(IShellDispatch3* This) { 5451 return This->lpVtbl->MinimizeAll(This); 5452 } 5453 static FORCEINLINE HRESULT IShellDispatch3_UndoMinimizeALL(IShellDispatch3* This) { 5454 return This->lpVtbl->UndoMinimizeALL(This); 5455 } 5456 static FORCEINLINE HRESULT IShellDispatch3_FileRun(IShellDispatch3* This) { 5457 return This->lpVtbl->FileRun(This); 5458 } 5459 static FORCEINLINE HRESULT IShellDispatch3_CascadeWindows(IShellDispatch3* This) { 5460 return This->lpVtbl->CascadeWindows(This); 5461 } 5462 static FORCEINLINE HRESULT IShellDispatch3_TileVertically(IShellDispatch3* This) { 5463 return This->lpVtbl->TileVertically(This); 5464 } 5465 static FORCEINLINE HRESULT IShellDispatch3_TileHorizontally(IShellDispatch3* This) { 5466 return This->lpVtbl->TileHorizontally(This); 5467 } 5468 static FORCEINLINE HRESULT IShellDispatch3_ShutdownWindows(IShellDispatch3* This) { 5469 return This->lpVtbl->ShutdownWindows(This); 5470 } 5471 static FORCEINLINE HRESULT IShellDispatch3_Suspend(IShellDispatch3* This) { 5472 return This->lpVtbl->Suspend(This); 5473 } 5474 static FORCEINLINE HRESULT IShellDispatch3_EjectPC(IShellDispatch3* This) { 5475 return This->lpVtbl->EjectPC(This); 5476 } 5477 static FORCEINLINE HRESULT IShellDispatch3_SetTime(IShellDispatch3* This) { 5478 return This->lpVtbl->SetTime(This); 5479 } 5480 static FORCEINLINE HRESULT IShellDispatch3_TrayProperties(IShellDispatch3* This) { 5481 return This->lpVtbl->TrayProperties(This); 5482 } 5483 static FORCEINLINE HRESULT IShellDispatch3_Help(IShellDispatch3* This) { 5484 return This->lpVtbl->Help(This); 5485 } 5486 static FORCEINLINE HRESULT IShellDispatch3_FindFiles(IShellDispatch3* This) { 5487 return This->lpVtbl->FindFiles(This); 5488 } 5489 static FORCEINLINE HRESULT IShellDispatch3_FindComputer(IShellDispatch3* This) { 5490 return This->lpVtbl->FindComputer(This); 5491 } 5492 static FORCEINLINE HRESULT IShellDispatch3_RefreshMenu(IShellDispatch3* This) { 5493 return This->lpVtbl->RefreshMenu(This); 5494 } 5495 static FORCEINLINE HRESULT IShellDispatch3_ControlPanelItem(IShellDispatch3* This,BSTR bstrDir) { 5496 return This->lpVtbl->ControlPanelItem(This,bstrDir); 5497 } 5498 /*** IShellDispatch2 methods ***/ 5499 static FORCEINLINE HRESULT IShellDispatch3_IsRestricted(IShellDispatch3* This,BSTR Group,BSTR Restriction,LONG *plRestrictValue) { 5500 return This->lpVtbl->IsRestricted(This,Group,Restriction,plRestrictValue); 5501 } 5502 static FORCEINLINE HRESULT IShellDispatch3_ShellExecute(IShellDispatch3* This,BSTR File,VARIANT vArgs,VARIANT vDir,VARIANT vOperation,VARIANT vShow) { 5503 return This->lpVtbl->ShellExecute(This,File,vArgs,vDir,vOperation,vShow); 5504 } 5505 static FORCEINLINE HRESULT IShellDispatch3_FindPrinter(IShellDispatch3* This,BSTR name,BSTR location,BSTR model) { 5506 return This->lpVtbl->FindPrinter(This,name,location,model); 5507 } 5508 static FORCEINLINE HRESULT IShellDispatch3_GetSystemInformation(IShellDispatch3* This,BSTR name,VARIANT *pv) { 5509 return This->lpVtbl->GetSystemInformation(This,name,pv); 5510 } 5511 static FORCEINLINE HRESULT IShellDispatch3_ServiceStart(IShellDispatch3* This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess) { 5512 return This->lpVtbl->ServiceStart(This,ServiceName,Persistent,pSuccess); 5513 } 5514 static FORCEINLINE HRESULT IShellDispatch3_ServiceStop(IShellDispatch3* This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess) { 5515 return This->lpVtbl->ServiceStop(This,ServiceName,Persistent,pSuccess); 5516 } 5517 static FORCEINLINE HRESULT IShellDispatch3_IsServiceRunning(IShellDispatch3* This,BSTR ServiceName,VARIANT *pRunning) { 5518 return This->lpVtbl->IsServiceRunning(This,ServiceName,pRunning); 5519 } 5520 static FORCEINLINE HRESULT IShellDispatch3_CanStartStopService(IShellDispatch3* This,BSTR ServiceName,VARIANT *pCanStartStop) { 5521 return This->lpVtbl->CanStartStopService(This,ServiceName,pCanStartStop); 5522 } 5523 static FORCEINLINE HRESULT IShellDispatch3_ShowBrowserBar(IShellDispatch3* This,BSTR bstrClsid,VARIANT bShow,VARIANT *pSuccess) { 5524 return This->lpVtbl->ShowBrowserBar(This,bstrClsid,bShow,pSuccess); 5525 } 5526 /*** IShellDispatch3 methods ***/ 5527 static FORCEINLINE HRESULT IShellDispatch3_AddToRecent(IShellDispatch3* This,VARIANT varFile,BSTR bstrCategory) { 5528 return This->lpVtbl->AddToRecent(This,varFile,bstrCategory); 5529 } 5530 #endif 5531 #endif 5532 5533 #endif 5534 5535 5536 #endif /* __IShellDispatch3_INTERFACE_DEFINED__ */ 5537 5538 /***************************************************************************** 5539 * IShellDispatch4 interface 5540 */ 5541 #ifndef __IShellDispatch4_INTERFACE_DEFINED__ 5542 #define __IShellDispatch4_INTERFACE_DEFINED__ 5543 5544 DEFINE_GUID(IID_IShellDispatch4, 0xefd84b2d, 0x4bcf, 0x4298, 0xbe,0x25, 0xeb,0x54,0x2a,0x59,0xfb,0xda); 5545 #if defined(__cplusplus) && !defined(CINTERFACE) 5546 MIDL_INTERFACE("efd84b2d-4bcf-4298-be25-eb542a59fbda") 5547 IShellDispatch4 : public IShellDispatch3 5548 { 5549 virtual HRESULT STDMETHODCALLTYPE WindowsSecurity( 5550 ) = 0; 5551 5552 virtual HRESULT STDMETHODCALLTYPE ToggleDesktop( 5553 ) = 0; 5554 5555 virtual HRESULT STDMETHODCALLTYPE ExplorerPolicy( 5556 BSTR bstrPolicyName, 5557 VARIANT *pValue) = 0; 5558 5559 virtual HRESULT STDMETHODCALLTYPE GetSetting( 5560 LONG lSetting, 5561 VARIANT_BOOL *pResult) = 0; 5562 5563 }; 5564 #ifdef __CRT_UUID_DECL 5565 __CRT_UUID_DECL(IShellDispatch4, 0xefd84b2d, 0x4bcf, 0x4298, 0xbe,0x25, 0xeb,0x54,0x2a,0x59,0xfb,0xda) 5566 #endif 5567 #else 5568 typedef struct IShellDispatch4Vtbl { 5569 BEGIN_INTERFACE 5570 5571 /*** IUnknown methods ***/ 5572 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5573 IShellDispatch4 *This, 5574 REFIID riid, 5575 void **ppvObject); 5576 5577 ULONG (STDMETHODCALLTYPE *AddRef)( 5578 IShellDispatch4 *This); 5579 5580 ULONG (STDMETHODCALLTYPE *Release)( 5581 IShellDispatch4 *This); 5582 5583 /*** IDispatch methods ***/ 5584 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 5585 IShellDispatch4 *This, 5586 UINT *pctinfo); 5587 5588 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 5589 IShellDispatch4 *This, 5590 UINT iTInfo, 5591 LCID lcid, 5592 ITypeInfo **ppTInfo); 5593 5594 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 5595 IShellDispatch4 *This, 5596 REFIID riid, 5597 LPOLESTR *rgszNames, 5598 UINT cNames, 5599 LCID lcid, 5600 DISPID *rgDispId); 5601 5602 HRESULT (STDMETHODCALLTYPE *Invoke)( 5603 IShellDispatch4 *This, 5604 DISPID dispIdMember, 5605 REFIID riid, 5606 LCID lcid, 5607 WORD wFlags, 5608 DISPPARAMS *pDispParams, 5609 VARIANT *pVarResult, 5610 EXCEPINFO *pExcepInfo, 5611 UINT *puArgErr); 5612 5613 /*** IShellDispatch methods ***/ 5614 HRESULT (STDMETHODCALLTYPE *get_Application)( 5615 IShellDispatch4 *This, 5616 IDispatch **ppid); 5617 5618 HRESULT (STDMETHODCALLTYPE *get_Parent)( 5619 IShellDispatch4 *This, 5620 IDispatch **ppid); 5621 5622 HRESULT (STDMETHODCALLTYPE *NameSpace)( 5623 IShellDispatch4 *This, 5624 VARIANT vDir, 5625 Folder **ppsdf); 5626 5627 HRESULT (STDMETHODCALLTYPE *BrowseForFolder)( 5628 IShellDispatch4 *This, 5629 LONG Hwnd, 5630 BSTR Title, 5631 LONG Options, 5632 VARIANT RootFolder, 5633 Folder **ppsdf); 5634 5635 HRESULT (STDMETHODCALLTYPE *Windows)( 5636 IShellDispatch4 *This, 5637 IDispatch **ppid); 5638 5639 HRESULT (STDMETHODCALLTYPE *Open)( 5640 IShellDispatch4 *This, 5641 VARIANT vDir); 5642 5643 HRESULT (STDMETHODCALLTYPE *Explore)( 5644 IShellDispatch4 *This, 5645 VARIANT vDir); 5646 5647 HRESULT (STDMETHODCALLTYPE *MinimizeAll)( 5648 IShellDispatch4 *This); 5649 5650 HRESULT (STDMETHODCALLTYPE *UndoMinimizeALL)( 5651 IShellDispatch4 *This); 5652 5653 HRESULT (STDMETHODCALLTYPE *FileRun)( 5654 IShellDispatch4 *This); 5655 5656 HRESULT (STDMETHODCALLTYPE *CascadeWindows)( 5657 IShellDispatch4 *This); 5658 5659 HRESULT (STDMETHODCALLTYPE *TileVertically)( 5660 IShellDispatch4 *This); 5661 5662 HRESULT (STDMETHODCALLTYPE *TileHorizontally)( 5663 IShellDispatch4 *This); 5664 5665 HRESULT (STDMETHODCALLTYPE *ShutdownWindows)( 5666 IShellDispatch4 *This); 5667 5668 HRESULT (STDMETHODCALLTYPE *Suspend)( 5669 IShellDispatch4 *This); 5670 5671 HRESULT (STDMETHODCALLTYPE *EjectPC)( 5672 IShellDispatch4 *This); 5673 5674 HRESULT (STDMETHODCALLTYPE *SetTime)( 5675 IShellDispatch4 *This); 5676 5677 HRESULT (STDMETHODCALLTYPE *TrayProperties)( 5678 IShellDispatch4 *This); 5679 5680 HRESULT (STDMETHODCALLTYPE *Help)( 5681 IShellDispatch4 *This); 5682 5683 HRESULT (STDMETHODCALLTYPE *FindFiles)( 5684 IShellDispatch4 *This); 5685 5686 HRESULT (STDMETHODCALLTYPE *FindComputer)( 5687 IShellDispatch4 *This); 5688 5689 HRESULT (STDMETHODCALLTYPE *RefreshMenu)( 5690 IShellDispatch4 *This); 5691 5692 HRESULT (STDMETHODCALLTYPE *ControlPanelItem)( 5693 IShellDispatch4 *This, 5694 BSTR bstrDir); 5695 5696 /*** IShellDispatch2 methods ***/ 5697 HRESULT (STDMETHODCALLTYPE *IsRestricted)( 5698 IShellDispatch4 *This, 5699 BSTR Group, 5700 BSTR Restriction, 5701 LONG *plRestrictValue); 5702 5703 HRESULT (STDMETHODCALLTYPE *ShellExecute)( 5704 IShellDispatch4 *This, 5705 BSTR File, 5706 VARIANT vArgs, 5707 VARIANT vDir, 5708 VARIANT vOperation, 5709 VARIANT vShow); 5710 5711 HRESULT (STDMETHODCALLTYPE *FindPrinter)( 5712 IShellDispatch4 *This, 5713 BSTR name, 5714 BSTR location, 5715 BSTR model); 5716 5717 HRESULT (STDMETHODCALLTYPE *GetSystemInformation)( 5718 IShellDispatch4 *This, 5719 BSTR name, 5720 VARIANT *pv); 5721 5722 HRESULT (STDMETHODCALLTYPE *ServiceStart)( 5723 IShellDispatch4 *This, 5724 BSTR ServiceName, 5725 VARIANT Persistent, 5726 VARIANT *pSuccess); 5727 5728 HRESULT (STDMETHODCALLTYPE *ServiceStop)( 5729 IShellDispatch4 *This, 5730 BSTR ServiceName, 5731 VARIANT Persistent, 5732 VARIANT *pSuccess); 5733 5734 HRESULT (STDMETHODCALLTYPE *IsServiceRunning)( 5735 IShellDispatch4 *This, 5736 BSTR ServiceName, 5737 VARIANT *pRunning); 5738 5739 HRESULT (STDMETHODCALLTYPE *CanStartStopService)( 5740 IShellDispatch4 *This, 5741 BSTR ServiceName, 5742 VARIANT *pCanStartStop); 5743 5744 HRESULT (STDMETHODCALLTYPE *ShowBrowserBar)( 5745 IShellDispatch4 *This, 5746 BSTR bstrClsid, 5747 VARIANT bShow, 5748 VARIANT *pSuccess); 5749 5750 /*** IShellDispatch3 methods ***/ 5751 HRESULT (STDMETHODCALLTYPE *AddToRecent)( 5752 IShellDispatch4 *This, 5753 VARIANT varFile, 5754 BSTR bstrCategory); 5755 5756 /*** IShellDispatch4 methods ***/ 5757 HRESULT (STDMETHODCALLTYPE *WindowsSecurity)( 5758 IShellDispatch4 *This); 5759 5760 HRESULT (STDMETHODCALLTYPE *ToggleDesktop)( 5761 IShellDispatch4 *This); 5762 5763 HRESULT (STDMETHODCALLTYPE *ExplorerPolicy)( 5764 IShellDispatch4 *This, 5765 BSTR bstrPolicyName, 5766 VARIANT *pValue); 5767 5768 HRESULT (STDMETHODCALLTYPE *GetSetting)( 5769 IShellDispatch4 *This, 5770 LONG lSetting, 5771 VARIANT_BOOL *pResult); 5772 5773 END_INTERFACE 5774 } IShellDispatch4Vtbl; 5775 5776 interface IShellDispatch4 { 5777 CONST_VTBL IShellDispatch4Vtbl* lpVtbl; 5778 }; 5779 5780 #ifdef COBJMACROS 5781 #ifndef WIDL_C_INLINE_WRAPPERS 5782 /*** IUnknown methods ***/ 5783 #define IShellDispatch4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5784 #define IShellDispatch4_AddRef(This) (This)->lpVtbl->AddRef(This) 5785 #define IShellDispatch4_Release(This) (This)->lpVtbl->Release(This) 5786 /*** IDispatch methods ***/ 5787 #define IShellDispatch4_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 5788 #define IShellDispatch4_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 5789 #define IShellDispatch4_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 5790 #define IShellDispatch4_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 5791 /*** IShellDispatch methods ***/ 5792 #define IShellDispatch4_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 5793 #define IShellDispatch4_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 5794 #define IShellDispatch4_NameSpace(This,vDir,ppsdf) (This)->lpVtbl->NameSpace(This,vDir,ppsdf) 5795 #define IShellDispatch4_BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) (This)->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) 5796 #define IShellDispatch4_Windows(This,ppid) (This)->lpVtbl->Windows(This,ppid) 5797 #define IShellDispatch4_Open(This,vDir) (This)->lpVtbl->Open(This,vDir) 5798 #define IShellDispatch4_Explore(This,vDir) (This)->lpVtbl->Explore(This,vDir) 5799 #define IShellDispatch4_MinimizeAll(This) (This)->lpVtbl->MinimizeAll(This) 5800 #define IShellDispatch4_UndoMinimizeALL(This) (This)->lpVtbl->UndoMinimizeALL(This) 5801 #define IShellDispatch4_FileRun(This) (This)->lpVtbl->FileRun(This) 5802 #define IShellDispatch4_CascadeWindows(This) (This)->lpVtbl->CascadeWindows(This) 5803 #define IShellDispatch4_TileVertically(This) (This)->lpVtbl->TileVertically(This) 5804 #define IShellDispatch4_TileHorizontally(This) (This)->lpVtbl->TileHorizontally(This) 5805 #define IShellDispatch4_ShutdownWindows(This) (This)->lpVtbl->ShutdownWindows(This) 5806 #define IShellDispatch4_Suspend(This) (This)->lpVtbl->Suspend(This) 5807 #define IShellDispatch4_EjectPC(This) (This)->lpVtbl->EjectPC(This) 5808 #define IShellDispatch4_SetTime(This) (This)->lpVtbl->SetTime(This) 5809 #define IShellDispatch4_TrayProperties(This) (This)->lpVtbl->TrayProperties(This) 5810 #define IShellDispatch4_Help(This) (This)->lpVtbl->Help(This) 5811 #define IShellDispatch4_FindFiles(This) (This)->lpVtbl->FindFiles(This) 5812 #define IShellDispatch4_FindComputer(This) (This)->lpVtbl->FindComputer(This) 5813 #define IShellDispatch4_RefreshMenu(This) (This)->lpVtbl->RefreshMenu(This) 5814 #define IShellDispatch4_ControlPanelItem(This,bstrDir) (This)->lpVtbl->ControlPanelItem(This,bstrDir) 5815 /*** IShellDispatch2 methods ***/ 5816 #define IShellDispatch4_IsRestricted(This,Group,Restriction,plRestrictValue) (This)->lpVtbl->IsRestricted(This,Group,Restriction,plRestrictValue) 5817 #define IShellDispatch4_ShellExecute(This,File,vArgs,vDir,vOperation,vShow) (This)->lpVtbl->ShellExecute(This,File,vArgs,vDir,vOperation,vShow) 5818 #define IShellDispatch4_FindPrinter(This,name,location,model) (This)->lpVtbl->FindPrinter(This,name,location,model) 5819 #define IShellDispatch4_GetSystemInformation(This,name,pv) (This)->lpVtbl->GetSystemInformation(This,name,pv) 5820 #define IShellDispatch4_ServiceStart(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStart(This,ServiceName,Persistent,pSuccess) 5821 #define IShellDispatch4_ServiceStop(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStop(This,ServiceName,Persistent,pSuccess) 5822 #define IShellDispatch4_IsServiceRunning(This,ServiceName,pRunning) (This)->lpVtbl->IsServiceRunning(This,ServiceName,pRunning) 5823 #define IShellDispatch4_CanStartStopService(This,ServiceName,pCanStartStop) (This)->lpVtbl->CanStartStopService(This,ServiceName,pCanStartStop) 5824 #define IShellDispatch4_ShowBrowserBar(This,bstrClsid,bShow,pSuccess) (This)->lpVtbl->ShowBrowserBar(This,bstrClsid,bShow,pSuccess) 5825 /*** IShellDispatch3 methods ***/ 5826 #define IShellDispatch4_AddToRecent(This,varFile,bstrCategory) (This)->lpVtbl->AddToRecent(This,varFile,bstrCategory) 5827 /*** IShellDispatch4 methods ***/ 5828 #define IShellDispatch4_WindowsSecurity(This) (This)->lpVtbl->WindowsSecurity(This) 5829 #define IShellDispatch4_ToggleDesktop(This) (This)->lpVtbl->ToggleDesktop(This) 5830 #define IShellDispatch4_ExplorerPolicy(This,bstrPolicyName,pValue) (This)->lpVtbl->ExplorerPolicy(This,bstrPolicyName,pValue) 5831 #define IShellDispatch4_GetSetting(This,lSetting,pResult) (This)->lpVtbl->GetSetting(This,lSetting,pResult) 5832 #else 5833 /*** IUnknown methods ***/ 5834 static FORCEINLINE HRESULT IShellDispatch4_QueryInterface(IShellDispatch4* This,REFIID riid,void **ppvObject) { 5835 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5836 } 5837 static FORCEINLINE ULONG IShellDispatch4_AddRef(IShellDispatch4* This) { 5838 return This->lpVtbl->AddRef(This); 5839 } 5840 static FORCEINLINE ULONG IShellDispatch4_Release(IShellDispatch4* This) { 5841 return This->lpVtbl->Release(This); 5842 } 5843 /*** IDispatch methods ***/ 5844 static FORCEINLINE HRESULT IShellDispatch4_GetTypeInfoCount(IShellDispatch4* This,UINT *pctinfo) { 5845 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 5846 } 5847 static FORCEINLINE HRESULT IShellDispatch4_GetTypeInfo(IShellDispatch4* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 5848 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 5849 } 5850 static FORCEINLINE HRESULT IShellDispatch4_GetIDsOfNames(IShellDispatch4* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 5851 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 5852 } 5853 static FORCEINLINE HRESULT IShellDispatch4_Invoke(IShellDispatch4* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 5854 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 5855 } 5856 /*** IShellDispatch methods ***/ 5857 static FORCEINLINE HRESULT IShellDispatch4_get_Application(IShellDispatch4* This,IDispatch **ppid) { 5858 return This->lpVtbl->get_Application(This,ppid); 5859 } 5860 static FORCEINLINE HRESULT IShellDispatch4_get_Parent(IShellDispatch4* This,IDispatch **ppid) { 5861 return This->lpVtbl->get_Parent(This,ppid); 5862 } 5863 static FORCEINLINE HRESULT IShellDispatch4_NameSpace(IShellDispatch4* This,VARIANT vDir,Folder **ppsdf) { 5864 return This->lpVtbl->NameSpace(This,vDir,ppsdf); 5865 } 5866 static FORCEINLINE HRESULT IShellDispatch4_BrowseForFolder(IShellDispatch4* This,LONG Hwnd,BSTR Title,LONG Options,VARIANT RootFolder,Folder **ppsdf) { 5867 return This->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf); 5868 } 5869 static FORCEINLINE HRESULT IShellDispatch4_Windows(IShellDispatch4* This,IDispatch **ppid) { 5870 return This->lpVtbl->Windows(This,ppid); 5871 } 5872 static FORCEINLINE HRESULT IShellDispatch4_Open(IShellDispatch4* This,VARIANT vDir) { 5873 return This->lpVtbl->Open(This,vDir); 5874 } 5875 static FORCEINLINE HRESULT IShellDispatch4_Explore(IShellDispatch4* This,VARIANT vDir) { 5876 return This->lpVtbl->Explore(This,vDir); 5877 } 5878 static FORCEINLINE HRESULT IShellDispatch4_MinimizeAll(IShellDispatch4* This) { 5879 return This->lpVtbl->MinimizeAll(This); 5880 } 5881 static FORCEINLINE HRESULT IShellDispatch4_UndoMinimizeALL(IShellDispatch4* This) { 5882 return This->lpVtbl->UndoMinimizeALL(This); 5883 } 5884 static FORCEINLINE HRESULT IShellDispatch4_FileRun(IShellDispatch4* This) { 5885 return This->lpVtbl->FileRun(This); 5886 } 5887 static FORCEINLINE HRESULT IShellDispatch4_CascadeWindows(IShellDispatch4* This) { 5888 return This->lpVtbl->CascadeWindows(This); 5889 } 5890 static FORCEINLINE HRESULT IShellDispatch4_TileVertically(IShellDispatch4* This) { 5891 return This->lpVtbl->TileVertically(This); 5892 } 5893 static FORCEINLINE HRESULT IShellDispatch4_TileHorizontally(IShellDispatch4* This) { 5894 return This->lpVtbl->TileHorizontally(This); 5895 } 5896 static FORCEINLINE HRESULT IShellDispatch4_ShutdownWindows(IShellDispatch4* This) { 5897 return This->lpVtbl->ShutdownWindows(This); 5898 } 5899 static FORCEINLINE HRESULT IShellDispatch4_Suspend(IShellDispatch4* This) { 5900 return This->lpVtbl->Suspend(This); 5901 } 5902 static FORCEINLINE HRESULT IShellDispatch4_EjectPC(IShellDispatch4* This) { 5903 return This->lpVtbl->EjectPC(This); 5904 } 5905 static FORCEINLINE HRESULT IShellDispatch4_SetTime(IShellDispatch4* This) { 5906 return This->lpVtbl->SetTime(This); 5907 } 5908 static FORCEINLINE HRESULT IShellDispatch4_TrayProperties(IShellDispatch4* This) { 5909 return This->lpVtbl->TrayProperties(This); 5910 } 5911 static FORCEINLINE HRESULT IShellDispatch4_Help(IShellDispatch4* This) { 5912 return This->lpVtbl->Help(This); 5913 } 5914 static FORCEINLINE HRESULT IShellDispatch4_FindFiles(IShellDispatch4* This) { 5915 return This->lpVtbl->FindFiles(This); 5916 } 5917 static FORCEINLINE HRESULT IShellDispatch4_FindComputer(IShellDispatch4* This) { 5918 return This->lpVtbl->FindComputer(This); 5919 } 5920 static FORCEINLINE HRESULT IShellDispatch4_RefreshMenu(IShellDispatch4* This) { 5921 return This->lpVtbl->RefreshMenu(This); 5922 } 5923 static FORCEINLINE HRESULT IShellDispatch4_ControlPanelItem(IShellDispatch4* This,BSTR bstrDir) { 5924 return This->lpVtbl->ControlPanelItem(This,bstrDir); 5925 } 5926 /*** IShellDispatch2 methods ***/ 5927 static FORCEINLINE HRESULT IShellDispatch4_IsRestricted(IShellDispatch4* This,BSTR Group,BSTR Restriction,LONG *plRestrictValue) { 5928 return This->lpVtbl->IsRestricted(This,Group,Restriction,plRestrictValue); 5929 } 5930 static FORCEINLINE HRESULT IShellDispatch4_ShellExecute(IShellDispatch4* This,BSTR File,VARIANT vArgs,VARIANT vDir,VARIANT vOperation,VARIANT vShow) { 5931 return This->lpVtbl->ShellExecute(This,File,vArgs,vDir,vOperation,vShow); 5932 } 5933 static FORCEINLINE HRESULT IShellDispatch4_FindPrinter(IShellDispatch4* This,BSTR name,BSTR location,BSTR model) { 5934 return This->lpVtbl->FindPrinter(This,name,location,model); 5935 } 5936 static FORCEINLINE HRESULT IShellDispatch4_GetSystemInformation(IShellDispatch4* This,BSTR name,VARIANT *pv) { 5937 return This->lpVtbl->GetSystemInformation(This,name,pv); 5938 } 5939 static FORCEINLINE HRESULT IShellDispatch4_ServiceStart(IShellDispatch4* This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess) { 5940 return This->lpVtbl->ServiceStart(This,ServiceName,Persistent,pSuccess); 5941 } 5942 static FORCEINLINE HRESULT IShellDispatch4_ServiceStop(IShellDispatch4* This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess) { 5943 return This->lpVtbl->ServiceStop(This,ServiceName,Persistent,pSuccess); 5944 } 5945 static FORCEINLINE HRESULT IShellDispatch4_IsServiceRunning(IShellDispatch4* This,BSTR ServiceName,VARIANT *pRunning) { 5946 return This->lpVtbl->IsServiceRunning(This,ServiceName,pRunning); 5947 } 5948 static FORCEINLINE HRESULT IShellDispatch4_CanStartStopService(IShellDispatch4* This,BSTR ServiceName,VARIANT *pCanStartStop) { 5949 return This->lpVtbl->CanStartStopService(This,ServiceName,pCanStartStop); 5950 } 5951 static FORCEINLINE HRESULT IShellDispatch4_ShowBrowserBar(IShellDispatch4* This,BSTR bstrClsid,VARIANT bShow,VARIANT *pSuccess) { 5952 return This->lpVtbl->ShowBrowserBar(This,bstrClsid,bShow,pSuccess); 5953 } 5954 /*** IShellDispatch3 methods ***/ 5955 static FORCEINLINE HRESULT IShellDispatch4_AddToRecent(IShellDispatch4* This,VARIANT varFile,BSTR bstrCategory) { 5956 return This->lpVtbl->AddToRecent(This,varFile,bstrCategory); 5957 } 5958 /*** IShellDispatch4 methods ***/ 5959 static FORCEINLINE HRESULT IShellDispatch4_WindowsSecurity(IShellDispatch4* This) { 5960 return This->lpVtbl->WindowsSecurity(This); 5961 } 5962 static FORCEINLINE HRESULT IShellDispatch4_ToggleDesktop(IShellDispatch4* This) { 5963 return This->lpVtbl->ToggleDesktop(This); 5964 } 5965 static FORCEINLINE HRESULT IShellDispatch4_ExplorerPolicy(IShellDispatch4* This,BSTR bstrPolicyName,VARIANT *pValue) { 5966 return This->lpVtbl->ExplorerPolicy(This,bstrPolicyName,pValue); 5967 } 5968 static FORCEINLINE HRESULT IShellDispatch4_GetSetting(IShellDispatch4* This,LONG lSetting,VARIANT_BOOL *pResult) { 5969 return This->lpVtbl->GetSetting(This,lSetting,pResult); 5970 } 5971 #endif 5972 #endif 5973 5974 #endif 5975 5976 5977 #endif /* __IShellDispatch4_INTERFACE_DEFINED__ */ 5978 5979 /***************************************************************************** 5980 * IShellDispatch5 interface 5981 */ 5982 #ifndef __IShellDispatch5_INTERFACE_DEFINED__ 5983 #define __IShellDispatch5_INTERFACE_DEFINED__ 5984 5985 DEFINE_GUID(IID_IShellDispatch5, 0x866738b9, 0x6cf2, 0x4de8, 0x87,0x67, 0xf7,0x94,0xeb,0xe7,0x4f,0x4e); 5986 #if defined(__cplusplus) && !defined(CINTERFACE) 5987 MIDL_INTERFACE("866738b9-6cf2-4de8-8767-f794ebe74f4e") 5988 IShellDispatch5 : public IShellDispatch4 5989 { 5990 virtual HRESULT STDMETHODCALLTYPE WindowSwitcher( 5991 ) = 0; 5992 5993 }; 5994 #ifdef __CRT_UUID_DECL 5995 __CRT_UUID_DECL(IShellDispatch5, 0x866738b9, 0x6cf2, 0x4de8, 0x87,0x67, 0xf7,0x94,0xeb,0xe7,0x4f,0x4e) 5996 #endif 5997 #else 5998 typedef struct IShellDispatch5Vtbl { 5999 BEGIN_INTERFACE 6000 6001 /*** IUnknown methods ***/ 6002 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6003 IShellDispatch5 *This, 6004 REFIID riid, 6005 void **ppvObject); 6006 6007 ULONG (STDMETHODCALLTYPE *AddRef)( 6008 IShellDispatch5 *This); 6009 6010 ULONG (STDMETHODCALLTYPE *Release)( 6011 IShellDispatch5 *This); 6012 6013 /*** IDispatch methods ***/ 6014 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 6015 IShellDispatch5 *This, 6016 UINT *pctinfo); 6017 6018 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 6019 IShellDispatch5 *This, 6020 UINT iTInfo, 6021 LCID lcid, 6022 ITypeInfo **ppTInfo); 6023 6024 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 6025 IShellDispatch5 *This, 6026 REFIID riid, 6027 LPOLESTR *rgszNames, 6028 UINT cNames, 6029 LCID lcid, 6030 DISPID *rgDispId); 6031 6032 HRESULT (STDMETHODCALLTYPE *Invoke)( 6033 IShellDispatch5 *This, 6034 DISPID dispIdMember, 6035 REFIID riid, 6036 LCID lcid, 6037 WORD wFlags, 6038 DISPPARAMS *pDispParams, 6039 VARIANT *pVarResult, 6040 EXCEPINFO *pExcepInfo, 6041 UINT *puArgErr); 6042 6043 /*** IShellDispatch methods ***/ 6044 HRESULT (STDMETHODCALLTYPE *get_Application)( 6045 IShellDispatch5 *This, 6046 IDispatch **ppid); 6047 6048 HRESULT (STDMETHODCALLTYPE *get_Parent)( 6049 IShellDispatch5 *This, 6050 IDispatch **ppid); 6051 6052 HRESULT (STDMETHODCALLTYPE *NameSpace)( 6053 IShellDispatch5 *This, 6054 VARIANT vDir, 6055 Folder **ppsdf); 6056 6057 HRESULT (STDMETHODCALLTYPE *BrowseForFolder)( 6058 IShellDispatch5 *This, 6059 LONG Hwnd, 6060 BSTR Title, 6061 LONG Options, 6062 VARIANT RootFolder, 6063 Folder **ppsdf); 6064 6065 HRESULT (STDMETHODCALLTYPE *Windows)( 6066 IShellDispatch5 *This, 6067 IDispatch **ppid); 6068 6069 HRESULT (STDMETHODCALLTYPE *Open)( 6070 IShellDispatch5 *This, 6071 VARIANT vDir); 6072 6073 HRESULT (STDMETHODCALLTYPE *Explore)( 6074 IShellDispatch5 *This, 6075 VARIANT vDir); 6076 6077 HRESULT (STDMETHODCALLTYPE *MinimizeAll)( 6078 IShellDispatch5 *This); 6079 6080 HRESULT (STDMETHODCALLTYPE *UndoMinimizeALL)( 6081 IShellDispatch5 *This); 6082 6083 HRESULT (STDMETHODCALLTYPE *FileRun)( 6084 IShellDispatch5 *This); 6085 6086 HRESULT (STDMETHODCALLTYPE *CascadeWindows)( 6087 IShellDispatch5 *This); 6088 6089 HRESULT (STDMETHODCALLTYPE *TileVertically)( 6090 IShellDispatch5 *This); 6091 6092 HRESULT (STDMETHODCALLTYPE *TileHorizontally)( 6093 IShellDispatch5 *This); 6094 6095 HRESULT (STDMETHODCALLTYPE *ShutdownWindows)( 6096 IShellDispatch5 *This); 6097 6098 HRESULT (STDMETHODCALLTYPE *Suspend)( 6099 IShellDispatch5 *This); 6100 6101 HRESULT (STDMETHODCALLTYPE *EjectPC)( 6102 IShellDispatch5 *This); 6103 6104 HRESULT (STDMETHODCALLTYPE *SetTime)( 6105 IShellDispatch5 *This); 6106 6107 HRESULT (STDMETHODCALLTYPE *TrayProperties)( 6108 IShellDispatch5 *This); 6109 6110 HRESULT (STDMETHODCALLTYPE *Help)( 6111 IShellDispatch5 *This); 6112 6113 HRESULT (STDMETHODCALLTYPE *FindFiles)( 6114 IShellDispatch5 *This); 6115 6116 HRESULT (STDMETHODCALLTYPE *FindComputer)( 6117 IShellDispatch5 *This); 6118 6119 HRESULT (STDMETHODCALLTYPE *RefreshMenu)( 6120 IShellDispatch5 *This); 6121 6122 HRESULT (STDMETHODCALLTYPE *ControlPanelItem)( 6123 IShellDispatch5 *This, 6124 BSTR bstrDir); 6125 6126 /*** IShellDispatch2 methods ***/ 6127 HRESULT (STDMETHODCALLTYPE *IsRestricted)( 6128 IShellDispatch5 *This, 6129 BSTR Group, 6130 BSTR Restriction, 6131 LONG *plRestrictValue); 6132 6133 HRESULT (STDMETHODCALLTYPE *ShellExecute)( 6134 IShellDispatch5 *This, 6135 BSTR File, 6136 VARIANT vArgs, 6137 VARIANT vDir, 6138 VARIANT vOperation, 6139 VARIANT vShow); 6140 6141 HRESULT (STDMETHODCALLTYPE *FindPrinter)( 6142 IShellDispatch5 *This, 6143 BSTR name, 6144 BSTR location, 6145 BSTR model); 6146 6147 HRESULT (STDMETHODCALLTYPE *GetSystemInformation)( 6148 IShellDispatch5 *This, 6149 BSTR name, 6150 VARIANT *pv); 6151 6152 HRESULT (STDMETHODCALLTYPE *ServiceStart)( 6153 IShellDispatch5 *This, 6154 BSTR ServiceName, 6155 VARIANT Persistent, 6156 VARIANT *pSuccess); 6157 6158 HRESULT (STDMETHODCALLTYPE *ServiceStop)( 6159 IShellDispatch5 *This, 6160 BSTR ServiceName, 6161 VARIANT Persistent, 6162 VARIANT *pSuccess); 6163 6164 HRESULT (STDMETHODCALLTYPE *IsServiceRunning)( 6165 IShellDispatch5 *This, 6166 BSTR ServiceName, 6167 VARIANT *pRunning); 6168 6169 HRESULT (STDMETHODCALLTYPE *CanStartStopService)( 6170 IShellDispatch5 *This, 6171 BSTR ServiceName, 6172 VARIANT *pCanStartStop); 6173 6174 HRESULT (STDMETHODCALLTYPE *ShowBrowserBar)( 6175 IShellDispatch5 *This, 6176 BSTR bstrClsid, 6177 VARIANT bShow, 6178 VARIANT *pSuccess); 6179 6180 /*** IShellDispatch3 methods ***/ 6181 HRESULT (STDMETHODCALLTYPE *AddToRecent)( 6182 IShellDispatch5 *This, 6183 VARIANT varFile, 6184 BSTR bstrCategory); 6185 6186 /*** IShellDispatch4 methods ***/ 6187 HRESULT (STDMETHODCALLTYPE *WindowsSecurity)( 6188 IShellDispatch5 *This); 6189 6190 HRESULT (STDMETHODCALLTYPE *ToggleDesktop)( 6191 IShellDispatch5 *This); 6192 6193 HRESULT (STDMETHODCALLTYPE *ExplorerPolicy)( 6194 IShellDispatch5 *This, 6195 BSTR bstrPolicyName, 6196 VARIANT *pValue); 6197 6198 HRESULT (STDMETHODCALLTYPE *GetSetting)( 6199 IShellDispatch5 *This, 6200 LONG lSetting, 6201 VARIANT_BOOL *pResult); 6202 6203 /*** IShellDispatch5 methods ***/ 6204 HRESULT (STDMETHODCALLTYPE *WindowSwitcher)( 6205 IShellDispatch5 *This); 6206 6207 END_INTERFACE 6208 } IShellDispatch5Vtbl; 6209 6210 interface IShellDispatch5 { 6211 CONST_VTBL IShellDispatch5Vtbl* lpVtbl; 6212 }; 6213 6214 #ifdef COBJMACROS 6215 #ifndef WIDL_C_INLINE_WRAPPERS 6216 /*** IUnknown methods ***/ 6217 #define IShellDispatch5_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6218 #define IShellDispatch5_AddRef(This) (This)->lpVtbl->AddRef(This) 6219 #define IShellDispatch5_Release(This) (This)->lpVtbl->Release(This) 6220 /*** IDispatch methods ***/ 6221 #define IShellDispatch5_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 6222 #define IShellDispatch5_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 6223 #define IShellDispatch5_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 6224 #define IShellDispatch5_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 6225 /*** IShellDispatch methods ***/ 6226 #define IShellDispatch5_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 6227 #define IShellDispatch5_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 6228 #define IShellDispatch5_NameSpace(This,vDir,ppsdf) (This)->lpVtbl->NameSpace(This,vDir,ppsdf) 6229 #define IShellDispatch5_BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) (This)->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) 6230 #define IShellDispatch5_Windows(This,ppid) (This)->lpVtbl->Windows(This,ppid) 6231 #define IShellDispatch5_Open(This,vDir) (This)->lpVtbl->Open(This,vDir) 6232 #define IShellDispatch5_Explore(This,vDir) (This)->lpVtbl->Explore(This,vDir) 6233 #define IShellDispatch5_MinimizeAll(This) (This)->lpVtbl->MinimizeAll(This) 6234 #define IShellDispatch5_UndoMinimizeALL(This) (This)->lpVtbl->UndoMinimizeALL(This) 6235 #define IShellDispatch5_FileRun(This) (This)->lpVtbl->FileRun(This) 6236 #define IShellDispatch5_CascadeWindows(This) (This)->lpVtbl->CascadeWindows(This) 6237 #define IShellDispatch5_TileVertically(This) (This)->lpVtbl->TileVertically(This) 6238 #define IShellDispatch5_TileHorizontally(This) (This)->lpVtbl->TileHorizontally(This) 6239 #define IShellDispatch5_ShutdownWindows(This) (This)->lpVtbl->ShutdownWindows(This) 6240 #define IShellDispatch5_Suspend(This) (This)->lpVtbl->Suspend(This) 6241 #define IShellDispatch5_EjectPC(This) (This)->lpVtbl->EjectPC(This) 6242 #define IShellDispatch5_SetTime(This) (This)->lpVtbl->SetTime(This) 6243 #define IShellDispatch5_TrayProperties(This) (This)->lpVtbl->TrayProperties(This) 6244 #define IShellDispatch5_Help(This) (This)->lpVtbl->Help(This) 6245 #define IShellDispatch5_FindFiles(This) (This)->lpVtbl->FindFiles(This) 6246 #define IShellDispatch5_FindComputer(This) (This)->lpVtbl->FindComputer(This) 6247 #define IShellDispatch5_RefreshMenu(This) (This)->lpVtbl->RefreshMenu(This) 6248 #define IShellDispatch5_ControlPanelItem(This,bstrDir) (This)->lpVtbl->ControlPanelItem(This,bstrDir) 6249 /*** IShellDispatch2 methods ***/ 6250 #define IShellDispatch5_IsRestricted(This,Group,Restriction,plRestrictValue) (This)->lpVtbl->IsRestricted(This,Group,Restriction,plRestrictValue) 6251 #define IShellDispatch5_ShellExecute(This,File,vArgs,vDir,vOperation,vShow) (This)->lpVtbl->ShellExecute(This,File,vArgs,vDir,vOperation,vShow) 6252 #define IShellDispatch5_FindPrinter(This,name,location,model) (This)->lpVtbl->FindPrinter(This,name,location,model) 6253 #define IShellDispatch5_GetSystemInformation(This,name,pv) (This)->lpVtbl->GetSystemInformation(This,name,pv) 6254 #define IShellDispatch5_ServiceStart(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStart(This,ServiceName,Persistent,pSuccess) 6255 #define IShellDispatch5_ServiceStop(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStop(This,ServiceName,Persistent,pSuccess) 6256 #define IShellDispatch5_IsServiceRunning(This,ServiceName,pRunning) (This)->lpVtbl->IsServiceRunning(This,ServiceName,pRunning) 6257 #define IShellDispatch5_CanStartStopService(This,ServiceName,pCanStartStop) (This)->lpVtbl->CanStartStopService(This,ServiceName,pCanStartStop) 6258 #define IShellDispatch5_ShowBrowserBar(This,bstrClsid,bShow,pSuccess) (This)->lpVtbl->ShowBrowserBar(This,bstrClsid,bShow,pSuccess) 6259 /*** IShellDispatch3 methods ***/ 6260 #define IShellDispatch5_AddToRecent(This,varFile,bstrCategory) (This)->lpVtbl->AddToRecent(This,varFile,bstrCategory) 6261 /*** IShellDispatch4 methods ***/ 6262 #define IShellDispatch5_WindowsSecurity(This) (This)->lpVtbl->WindowsSecurity(This) 6263 #define IShellDispatch5_ToggleDesktop(This) (This)->lpVtbl->ToggleDesktop(This) 6264 #define IShellDispatch5_ExplorerPolicy(This,bstrPolicyName,pValue) (This)->lpVtbl->ExplorerPolicy(This,bstrPolicyName,pValue) 6265 #define IShellDispatch5_GetSetting(This,lSetting,pResult) (This)->lpVtbl->GetSetting(This,lSetting,pResult) 6266 /*** IShellDispatch5 methods ***/ 6267 #define IShellDispatch5_WindowSwitcher(This) (This)->lpVtbl->WindowSwitcher(This) 6268 #else 6269 /*** IUnknown methods ***/ 6270 static FORCEINLINE HRESULT IShellDispatch5_QueryInterface(IShellDispatch5* This,REFIID riid,void **ppvObject) { 6271 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6272 } 6273 static FORCEINLINE ULONG IShellDispatch5_AddRef(IShellDispatch5* This) { 6274 return This->lpVtbl->AddRef(This); 6275 } 6276 static FORCEINLINE ULONG IShellDispatch5_Release(IShellDispatch5* This) { 6277 return This->lpVtbl->Release(This); 6278 } 6279 /*** IDispatch methods ***/ 6280 static FORCEINLINE HRESULT IShellDispatch5_GetTypeInfoCount(IShellDispatch5* This,UINT *pctinfo) { 6281 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 6282 } 6283 static FORCEINLINE HRESULT IShellDispatch5_GetTypeInfo(IShellDispatch5* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 6284 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 6285 } 6286 static FORCEINLINE HRESULT IShellDispatch5_GetIDsOfNames(IShellDispatch5* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 6287 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 6288 } 6289 static FORCEINLINE HRESULT IShellDispatch5_Invoke(IShellDispatch5* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 6290 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 6291 } 6292 /*** IShellDispatch methods ***/ 6293 static FORCEINLINE HRESULT IShellDispatch5_get_Application(IShellDispatch5* This,IDispatch **ppid) { 6294 return This->lpVtbl->get_Application(This,ppid); 6295 } 6296 static FORCEINLINE HRESULT IShellDispatch5_get_Parent(IShellDispatch5* This,IDispatch **ppid) { 6297 return This->lpVtbl->get_Parent(This,ppid); 6298 } 6299 static FORCEINLINE HRESULT IShellDispatch5_NameSpace(IShellDispatch5* This,VARIANT vDir,Folder **ppsdf) { 6300 return This->lpVtbl->NameSpace(This,vDir,ppsdf); 6301 } 6302 static FORCEINLINE HRESULT IShellDispatch5_BrowseForFolder(IShellDispatch5* This,LONG Hwnd,BSTR Title,LONG Options,VARIANT RootFolder,Folder **ppsdf) { 6303 return This->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf); 6304 } 6305 static FORCEINLINE HRESULT IShellDispatch5_Windows(IShellDispatch5* This,IDispatch **ppid) { 6306 return This->lpVtbl->Windows(This,ppid); 6307 } 6308 static FORCEINLINE HRESULT IShellDispatch5_Open(IShellDispatch5* This,VARIANT vDir) { 6309 return This->lpVtbl->Open(This,vDir); 6310 } 6311 static FORCEINLINE HRESULT IShellDispatch5_Explore(IShellDispatch5* This,VARIANT vDir) { 6312 return This->lpVtbl->Explore(This,vDir); 6313 } 6314 static FORCEINLINE HRESULT IShellDispatch5_MinimizeAll(IShellDispatch5* This) { 6315 return This->lpVtbl->MinimizeAll(This); 6316 } 6317 static FORCEINLINE HRESULT IShellDispatch5_UndoMinimizeALL(IShellDispatch5* This) { 6318 return This->lpVtbl->UndoMinimizeALL(This); 6319 } 6320 static FORCEINLINE HRESULT IShellDispatch5_FileRun(IShellDispatch5* This) { 6321 return This->lpVtbl->FileRun(This); 6322 } 6323 static FORCEINLINE HRESULT IShellDispatch5_CascadeWindows(IShellDispatch5* This) { 6324 return This->lpVtbl->CascadeWindows(This); 6325 } 6326 static FORCEINLINE HRESULT IShellDispatch5_TileVertically(IShellDispatch5* This) { 6327 return This->lpVtbl->TileVertically(This); 6328 } 6329 static FORCEINLINE HRESULT IShellDispatch5_TileHorizontally(IShellDispatch5* This) { 6330 return This->lpVtbl->TileHorizontally(This); 6331 } 6332 static FORCEINLINE HRESULT IShellDispatch5_ShutdownWindows(IShellDispatch5* This) { 6333 return This->lpVtbl->ShutdownWindows(This); 6334 } 6335 static FORCEINLINE HRESULT IShellDispatch5_Suspend(IShellDispatch5* This) { 6336 return This->lpVtbl->Suspend(This); 6337 } 6338 static FORCEINLINE HRESULT IShellDispatch5_EjectPC(IShellDispatch5* This) { 6339 return This->lpVtbl->EjectPC(This); 6340 } 6341 static FORCEINLINE HRESULT IShellDispatch5_SetTime(IShellDispatch5* This) { 6342 return This->lpVtbl->SetTime(This); 6343 } 6344 static FORCEINLINE HRESULT IShellDispatch5_TrayProperties(IShellDispatch5* This) { 6345 return This->lpVtbl->TrayProperties(This); 6346 } 6347 static FORCEINLINE HRESULT IShellDispatch5_Help(IShellDispatch5* This) { 6348 return This->lpVtbl->Help(This); 6349 } 6350 static FORCEINLINE HRESULT IShellDispatch5_FindFiles(IShellDispatch5* This) { 6351 return This->lpVtbl->FindFiles(This); 6352 } 6353 static FORCEINLINE HRESULT IShellDispatch5_FindComputer(IShellDispatch5* This) { 6354 return This->lpVtbl->FindComputer(This); 6355 } 6356 static FORCEINLINE HRESULT IShellDispatch5_RefreshMenu(IShellDispatch5* This) { 6357 return This->lpVtbl->RefreshMenu(This); 6358 } 6359 static FORCEINLINE HRESULT IShellDispatch5_ControlPanelItem(IShellDispatch5* This,BSTR bstrDir) { 6360 return This->lpVtbl->ControlPanelItem(This,bstrDir); 6361 } 6362 /*** IShellDispatch2 methods ***/ 6363 static FORCEINLINE HRESULT IShellDispatch5_IsRestricted(IShellDispatch5* This,BSTR Group,BSTR Restriction,LONG *plRestrictValue) { 6364 return This->lpVtbl->IsRestricted(This,Group,Restriction,plRestrictValue); 6365 } 6366 static FORCEINLINE HRESULT IShellDispatch5_ShellExecute(IShellDispatch5* This,BSTR File,VARIANT vArgs,VARIANT vDir,VARIANT vOperation,VARIANT vShow) { 6367 return This->lpVtbl->ShellExecute(This,File,vArgs,vDir,vOperation,vShow); 6368 } 6369 static FORCEINLINE HRESULT IShellDispatch5_FindPrinter(IShellDispatch5* This,BSTR name,BSTR location,BSTR model) { 6370 return This->lpVtbl->FindPrinter(This,name,location,model); 6371 } 6372 static FORCEINLINE HRESULT IShellDispatch5_GetSystemInformation(IShellDispatch5* This,BSTR name,VARIANT *pv) { 6373 return This->lpVtbl->GetSystemInformation(This,name,pv); 6374 } 6375 static FORCEINLINE HRESULT IShellDispatch5_ServiceStart(IShellDispatch5* This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess) { 6376 return This->lpVtbl->ServiceStart(This,ServiceName,Persistent,pSuccess); 6377 } 6378 static FORCEINLINE HRESULT IShellDispatch5_ServiceStop(IShellDispatch5* This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess) { 6379 return This->lpVtbl->ServiceStop(This,ServiceName,Persistent,pSuccess); 6380 } 6381 static FORCEINLINE HRESULT IShellDispatch5_IsServiceRunning(IShellDispatch5* This,BSTR ServiceName,VARIANT *pRunning) { 6382 return This->lpVtbl->IsServiceRunning(This,ServiceName,pRunning); 6383 } 6384 static FORCEINLINE HRESULT IShellDispatch5_CanStartStopService(IShellDispatch5* This,BSTR ServiceName,VARIANT *pCanStartStop) { 6385 return This->lpVtbl->CanStartStopService(This,ServiceName,pCanStartStop); 6386 } 6387 static FORCEINLINE HRESULT IShellDispatch5_ShowBrowserBar(IShellDispatch5* This,BSTR bstrClsid,VARIANT bShow,VARIANT *pSuccess) { 6388 return This->lpVtbl->ShowBrowserBar(This,bstrClsid,bShow,pSuccess); 6389 } 6390 /*** IShellDispatch3 methods ***/ 6391 static FORCEINLINE HRESULT IShellDispatch5_AddToRecent(IShellDispatch5* This,VARIANT varFile,BSTR bstrCategory) { 6392 return This->lpVtbl->AddToRecent(This,varFile,bstrCategory); 6393 } 6394 /*** IShellDispatch4 methods ***/ 6395 static FORCEINLINE HRESULT IShellDispatch5_WindowsSecurity(IShellDispatch5* This) { 6396 return This->lpVtbl->WindowsSecurity(This); 6397 } 6398 static FORCEINLINE HRESULT IShellDispatch5_ToggleDesktop(IShellDispatch5* This) { 6399 return This->lpVtbl->ToggleDesktop(This); 6400 } 6401 static FORCEINLINE HRESULT IShellDispatch5_ExplorerPolicy(IShellDispatch5* This,BSTR bstrPolicyName,VARIANT *pValue) { 6402 return This->lpVtbl->ExplorerPolicy(This,bstrPolicyName,pValue); 6403 } 6404 static FORCEINLINE HRESULT IShellDispatch5_GetSetting(IShellDispatch5* This,LONG lSetting,VARIANT_BOOL *pResult) { 6405 return This->lpVtbl->GetSetting(This,lSetting,pResult); 6406 } 6407 /*** IShellDispatch5 methods ***/ 6408 static FORCEINLINE HRESULT IShellDispatch5_WindowSwitcher(IShellDispatch5* This) { 6409 return This->lpVtbl->WindowSwitcher(This); 6410 } 6411 #endif 6412 #endif 6413 6414 #endif 6415 6416 6417 #endif /* __IShellDispatch5_INTERFACE_DEFINED__ */ 6418 6419 #if NTDDI_VERSION >= NTDDI_WIN8 6420 /***************************************************************************** 6421 * IShellDispatch6 interface 6422 */ 6423 #ifndef __IShellDispatch6_INTERFACE_DEFINED__ 6424 #define __IShellDispatch6_INTERFACE_DEFINED__ 6425 6426 DEFINE_GUID(IID_IShellDispatch6, 0x286e6f1b, 0x7113, 0x4355, 0x95,0x62, 0x96,0xb7,0xe9,0xd6,0x4c,0x54); 6427 #if defined(__cplusplus) && !defined(CINTERFACE) 6428 MIDL_INTERFACE("286e6f1b-7113-4355-9562-96b7e9d64c54") 6429 IShellDispatch6 : public IShellDispatch5 6430 { 6431 virtual HRESULT STDMETHODCALLTYPE SearchCommand( 6432 ) = 0; 6433 6434 }; 6435 #ifdef __CRT_UUID_DECL 6436 __CRT_UUID_DECL(IShellDispatch6, 0x286e6f1b, 0x7113, 0x4355, 0x95,0x62, 0x96,0xb7,0xe9,0xd6,0x4c,0x54) 6437 #endif 6438 #else 6439 typedef struct IShellDispatch6Vtbl { 6440 BEGIN_INTERFACE 6441 6442 /*** IUnknown methods ***/ 6443 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6444 IShellDispatch6 *This, 6445 REFIID riid, 6446 void **ppvObject); 6447 6448 ULONG (STDMETHODCALLTYPE *AddRef)( 6449 IShellDispatch6 *This); 6450 6451 ULONG (STDMETHODCALLTYPE *Release)( 6452 IShellDispatch6 *This); 6453 6454 /*** IDispatch methods ***/ 6455 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 6456 IShellDispatch6 *This, 6457 UINT *pctinfo); 6458 6459 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 6460 IShellDispatch6 *This, 6461 UINT iTInfo, 6462 LCID lcid, 6463 ITypeInfo **ppTInfo); 6464 6465 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 6466 IShellDispatch6 *This, 6467 REFIID riid, 6468 LPOLESTR *rgszNames, 6469 UINT cNames, 6470 LCID lcid, 6471 DISPID *rgDispId); 6472 6473 HRESULT (STDMETHODCALLTYPE *Invoke)( 6474 IShellDispatch6 *This, 6475 DISPID dispIdMember, 6476 REFIID riid, 6477 LCID lcid, 6478 WORD wFlags, 6479 DISPPARAMS *pDispParams, 6480 VARIANT *pVarResult, 6481 EXCEPINFO *pExcepInfo, 6482 UINT *puArgErr); 6483 6484 /*** IShellDispatch methods ***/ 6485 HRESULT (STDMETHODCALLTYPE *get_Application)( 6486 IShellDispatch6 *This, 6487 IDispatch **ppid); 6488 6489 HRESULT (STDMETHODCALLTYPE *get_Parent)( 6490 IShellDispatch6 *This, 6491 IDispatch **ppid); 6492 6493 HRESULT (STDMETHODCALLTYPE *NameSpace)( 6494 IShellDispatch6 *This, 6495 VARIANT vDir, 6496 Folder **ppsdf); 6497 6498 HRESULT (STDMETHODCALLTYPE *BrowseForFolder)( 6499 IShellDispatch6 *This, 6500 LONG Hwnd, 6501 BSTR Title, 6502 LONG Options, 6503 VARIANT RootFolder, 6504 Folder **ppsdf); 6505 6506 HRESULT (STDMETHODCALLTYPE *Windows)( 6507 IShellDispatch6 *This, 6508 IDispatch **ppid); 6509 6510 HRESULT (STDMETHODCALLTYPE *Open)( 6511 IShellDispatch6 *This, 6512 VARIANT vDir); 6513 6514 HRESULT (STDMETHODCALLTYPE *Explore)( 6515 IShellDispatch6 *This, 6516 VARIANT vDir); 6517 6518 HRESULT (STDMETHODCALLTYPE *MinimizeAll)( 6519 IShellDispatch6 *This); 6520 6521 HRESULT (STDMETHODCALLTYPE *UndoMinimizeALL)( 6522 IShellDispatch6 *This); 6523 6524 HRESULT (STDMETHODCALLTYPE *FileRun)( 6525 IShellDispatch6 *This); 6526 6527 HRESULT (STDMETHODCALLTYPE *CascadeWindows)( 6528 IShellDispatch6 *This); 6529 6530 HRESULT (STDMETHODCALLTYPE *TileVertically)( 6531 IShellDispatch6 *This); 6532 6533 HRESULT (STDMETHODCALLTYPE *TileHorizontally)( 6534 IShellDispatch6 *This); 6535 6536 HRESULT (STDMETHODCALLTYPE *ShutdownWindows)( 6537 IShellDispatch6 *This); 6538 6539 HRESULT (STDMETHODCALLTYPE *Suspend)( 6540 IShellDispatch6 *This); 6541 6542 HRESULT (STDMETHODCALLTYPE *EjectPC)( 6543 IShellDispatch6 *This); 6544 6545 HRESULT (STDMETHODCALLTYPE *SetTime)( 6546 IShellDispatch6 *This); 6547 6548 HRESULT (STDMETHODCALLTYPE *TrayProperties)( 6549 IShellDispatch6 *This); 6550 6551 HRESULT (STDMETHODCALLTYPE *Help)( 6552 IShellDispatch6 *This); 6553 6554 HRESULT (STDMETHODCALLTYPE *FindFiles)( 6555 IShellDispatch6 *This); 6556 6557 HRESULT (STDMETHODCALLTYPE *FindComputer)( 6558 IShellDispatch6 *This); 6559 6560 HRESULT (STDMETHODCALLTYPE *RefreshMenu)( 6561 IShellDispatch6 *This); 6562 6563 HRESULT (STDMETHODCALLTYPE *ControlPanelItem)( 6564 IShellDispatch6 *This, 6565 BSTR bstrDir); 6566 6567 /*** IShellDispatch2 methods ***/ 6568 HRESULT (STDMETHODCALLTYPE *IsRestricted)( 6569 IShellDispatch6 *This, 6570 BSTR Group, 6571 BSTR Restriction, 6572 LONG *plRestrictValue); 6573 6574 HRESULT (STDMETHODCALLTYPE *ShellExecute)( 6575 IShellDispatch6 *This, 6576 BSTR File, 6577 VARIANT vArgs, 6578 VARIANT vDir, 6579 VARIANT vOperation, 6580 VARIANT vShow); 6581 6582 HRESULT (STDMETHODCALLTYPE *FindPrinter)( 6583 IShellDispatch6 *This, 6584 BSTR name, 6585 BSTR location, 6586 BSTR model); 6587 6588 HRESULT (STDMETHODCALLTYPE *GetSystemInformation)( 6589 IShellDispatch6 *This, 6590 BSTR name, 6591 VARIANT *pv); 6592 6593 HRESULT (STDMETHODCALLTYPE *ServiceStart)( 6594 IShellDispatch6 *This, 6595 BSTR ServiceName, 6596 VARIANT Persistent, 6597 VARIANT *pSuccess); 6598 6599 HRESULT (STDMETHODCALLTYPE *ServiceStop)( 6600 IShellDispatch6 *This, 6601 BSTR ServiceName, 6602 VARIANT Persistent, 6603 VARIANT *pSuccess); 6604 6605 HRESULT (STDMETHODCALLTYPE *IsServiceRunning)( 6606 IShellDispatch6 *This, 6607 BSTR ServiceName, 6608 VARIANT *pRunning); 6609 6610 HRESULT (STDMETHODCALLTYPE *CanStartStopService)( 6611 IShellDispatch6 *This, 6612 BSTR ServiceName, 6613 VARIANT *pCanStartStop); 6614 6615 HRESULT (STDMETHODCALLTYPE *ShowBrowserBar)( 6616 IShellDispatch6 *This, 6617 BSTR bstrClsid, 6618 VARIANT bShow, 6619 VARIANT *pSuccess); 6620 6621 /*** IShellDispatch3 methods ***/ 6622 HRESULT (STDMETHODCALLTYPE *AddToRecent)( 6623 IShellDispatch6 *This, 6624 VARIANT varFile, 6625 BSTR bstrCategory); 6626 6627 /*** IShellDispatch4 methods ***/ 6628 HRESULT (STDMETHODCALLTYPE *WindowsSecurity)( 6629 IShellDispatch6 *This); 6630 6631 HRESULT (STDMETHODCALLTYPE *ToggleDesktop)( 6632 IShellDispatch6 *This); 6633 6634 HRESULT (STDMETHODCALLTYPE *ExplorerPolicy)( 6635 IShellDispatch6 *This, 6636 BSTR bstrPolicyName, 6637 VARIANT *pValue); 6638 6639 HRESULT (STDMETHODCALLTYPE *GetSetting)( 6640 IShellDispatch6 *This, 6641 LONG lSetting, 6642 VARIANT_BOOL *pResult); 6643 6644 /*** IShellDispatch5 methods ***/ 6645 HRESULT (STDMETHODCALLTYPE *WindowSwitcher)( 6646 IShellDispatch6 *This); 6647 6648 /*** IShellDispatch6 methods ***/ 6649 HRESULT (STDMETHODCALLTYPE *SearchCommand)( 6650 IShellDispatch6 *This); 6651 6652 END_INTERFACE 6653 } IShellDispatch6Vtbl; 6654 6655 interface IShellDispatch6 { 6656 CONST_VTBL IShellDispatch6Vtbl* lpVtbl; 6657 }; 6658 6659 #ifdef COBJMACROS 6660 #ifndef WIDL_C_INLINE_WRAPPERS 6661 /*** IUnknown methods ***/ 6662 #define IShellDispatch6_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6663 #define IShellDispatch6_AddRef(This) (This)->lpVtbl->AddRef(This) 6664 #define IShellDispatch6_Release(This) (This)->lpVtbl->Release(This) 6665 /*** IDispatch methods ***/ 6666 #define IShellDispatch6_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 6667 #define IShellDispatch6_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 6668 #define IShellDispatch6_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 6669 #define IShellDispatch6_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 6670 /*** IShellDispatch methods ***/ 6671 #define IShellDispatch6_get_Application(This,ppid) (This)->lpVtbl->get_Application(This,ppid) 6672 #define IShellDispatch6_get_Parent(This,ppid) (This)->lpVtbl->get_Parent(This,ppid) 6673 #define IShellDispatch6_NameSpace(This,vDir,ppsdf) (This)->lpVtbl->NameSpace(This,vDir,ppsdf) 6674 #define IShellDispatch6_BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) (This)->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf) 6675 #define IShellDispatch6_Windows(This,ppid) (This)->lpVtbl->Windows(This,ppid) 6676 #define IShellDispatch6_Open(This,vDir) (This)->lpVtbl->Open(This,vDir) 6677 #define IShellDispatch6_Explore(This,vDir) (This)->lpVtbl->Explore(This,vDir) 6678 #define IShellDispatch6_MinimizeAll(This) (This)->lpVtbl->MinimizeAll(This) 6679 #define IShellDispatch6_UndoMinimizeALL(This) (This)->lpVtbl->UndoMinimizeALL(This) 6680 #define IShellDispatch6_FileRun(This) (This)->lpVtbl->FileRun(This) 6681 #define IShellDispatch6_CascadeWindows(This) (This)->lpVtbl->CascadeWindows(This) 6682 #define IShellDispatch6_TileVertically(This) (This)->lpVtbl->TileVertically(This) 6683 #define IShellDispatch6_TileHorizontally(This) (This)->lpVtbl->TileHorizontally(This) 6684 #define IShellDispatch6_ShutdownWindows(This) (This)->lpVtbl->ShutdownWindows(This) 6685 #define IShellDispatch6_Suspend(This) (This)->lpVtbl->Suspend(This) 6686 #define IShellDispatch6_EjectPC(This) (This)->lpVtbl->EjectPC(This) 6687 #define IShellDispatch6_SetTime(This) (This)->lpVtbl->SetTime(This) 6688 #define IShellDispatch6_TrayProperties(This) (This)->lpVtbl->TrayProperties(This) 6689 #define IShellDispatch6_Help(This) (This)->lpVtbl->Help(This) 6690 #define IShellDispatch6_FindFiles(This) (This)->lpVtbl->FindFiles(This) 6691 #define IShellDispatch6_FindComputer(This) (This)->lpVtbl->FindComputer(This) 6692 #define IShellDispatch6_RefreshMenu(This) (This)->lpVtbl->RefreshMenu(This) 6693 #define IShellDispatch6_ControlPanelItem(This,bstrDir) (This)->lpVtbl->ControlPanelItem(This,bstrDir) 6694 /*** IShellDispatch2 methods ***/ 6695 #define IShellDispatch6_IsRestricted(This,Group,Restriction,plRestrictValue) (This)->lpVtbl->IsRestricted(This,Group,Restriction,plRestrictValue) 6696 #define IShellDispatch6_ShellExecute(This,File,vArgs,vDir,vOperation,vShow) (This)->lpVtbl->ShellExecute(This,File,vArgs,vDir,vOperation,vShow) 6697 #define IShellDispatch6_FindPrinter(This,name,location,model) (This)->lpVtbl->FindPrinter(This,name,location,model) 6698 #define IShellDispatch6_GetSystemInformation(This,name,pv) (This)->lpVtbl->GetSystemInformation(This,name,pv) 6699 #define IShellDispatch6_ServiceStart(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStart(This,ServiceName,Persistent,pSuccess) 6700 #define IShellDispatch6_ServiceStop(This,ServiceName,Persistent,pSuccess) (This)->lpVtbl->ServiceStop(This,ServiceName,Persistent,pSuccess) 6701 #define IShellDispatch6_IsServiceRunning(This,ServiceName,pRunning) (This)->lpVtbl->IsServiceRunning(This,ServiceName,pRunning) 6702 #define IShellDispatch6_CanStartStopService(This,ServiceName,pCanStartStop) (This)->lpVtbl->CanStartStopService(This,ServiceName,pCanStartStop) 6703 #define IShellDispatch6_ShowBrowserBar(This,bstrClsid,bShow,pSuccess) (This)->lpVtbl->ShowBrowserBar(This,bstrClsid,bShow,pSuccess) 6704 /*** IShellDispatch3 methods ***/ 6705 #define IShellDispatch6_AddToRecent(This,varFile,bstrCategory) (This)->lpVtbl->AddToRecent(This,varFile,bstrCategory) 6706 /*** IShellDispatch4 methods ***/ 6707 #define IShellDispatch6_WindowsSecurity(This) (This)->lpVtbl->WindowsSecurity(This) 6708 #define IShellDispatch6_ToggleDesktop(This) (This)->lpVtbl->ToggleDesktop(This) 6709 #define IShellDispatch6_ExplorerPolicy(This,bstrPolicyName,pValue) (This)->lpVtbl->ExplorerPolicy(This,bstrPolicyName,pValue) 6710 #define IShellDispatch6_GetSetting(This,lSetting,pResult) (This)->lpVtbl->GetSetting(This,lSetting,pResult) 6711 /*** IShellDispatch5 methods ***/ 6712 #define IShellDispatch6_WindowSwitcher(This) (This)->lpVtbl->WindowSwitcher(This) 6713 /*** IShellDispatch6 methods ***/ 6714 #define IShellDispatch6_SearchCommand(This) (This)->lpVtbl->SearchCommand(This) 6715 #else 6716 /*** IUnknown methods ***/ 6717 static FORCEINLINE HRESULT IShellDispatch6_QueryInterface(IShellDispatch6* This,REFIID riid,void **ppvObject) { 6718 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6719 } 6720 static FORCEINLINE ULONG IShellDispatch6_AddRef(IShellDispatch6* This) { 6721 return This->lpVtbl->AddRef(This); 6722 } 6723 static FORCEINLINE ULONG IShellDispatch6_Release(IShellDispatch6* This) { 6724 return This->lpVtbl->Release(This); 6725 } 6726 /*** IDispatch methods ***/ 6727 static FORCEINLINE HRESULT IShellDispatch6_GetTypeInfoCount(IShellDispatch6* This,UINT *pctinfo) { 6728 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 6729 } 6730 static FORCEINLINE HRESULT IShellDispatch6_GetTypeInfo(IShellDispatch6* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 6731 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 6732 } 6733 static FORCEINLINE HRESULT IShellDispatch6_GetIDsOfNames(IShellDispatch6* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 6734 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 6735 } 6736 static FORCEINLINE HRESULT IShellDispatch6_Invoke(IShellDispatch6* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 6737 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 6738 } 6739 /*** IShellDispatch methods ***/ 6740 static FORCEINLINE HRESULT IShellDispatch6_get_Application(IShellDispatch6* This,IDispatch **ppid) { 6741 return This->lpVtbl->get_Application(This,ppid); 6742 } 6743 static FORCEINLINE HRESULT IShellDispatch6_get_Parent(IShellDispatch6* This,IDispatch **ppid) { 6744 return This->lpVtbl->get_Parent(This,ppid); 6745 } 6746 static FORCEINLINE HRESULT IShellDispatch6_NameSpace(IShellDispatch6* This,VARIANT vDir,Folder **ppsdf) { 6747 return This->lpVtbl->NameSpace(This,vDir,ppsdf); 6748 } 6749 static FORCEINLINE HRESULT IShellDispatch6_BrowseForFolder(IShellDispatch6* This,LONG Hwnd,BSTR Title,LONG Options,VARIANT RootFolder,Folder **ppsdf) { 6750 return This->lpVtbl->BrowseForFolder(This,Hwnd,Title,Options,RootFolder,ppsdf); 6751 } 6752 static FORCEINLINE HRESULT IShellDispatch6_Windows(IShellDispatch6* This,IDispatch **ppid) { 6753 return This->lpVtbl->Windows(This,ppid); 6754 } 6755 static FORCEINLINE HRESULT IShellDispatch6_Open(IShellDispatch6* This,VARIANT vDir) { 6756 return This->lpVtbl->Open(This,vDir); 6757 } 6758 static FORCEINLINE HRESULT IShellDispatch6_Explore(IShellDispatch6* This,VARIANT vDir) { 6759 return This->lpVtbl->Explore(This,vDir); 6760 } 6761 static FORCEINLINE HRESULT IShellDispatch6_MinimizeAll(IShellDispatch6* This) { 6762 return This->lpVtbl->MinimizeAll(This); 6763 } 6764 static FORCEINLINE HRESULT IShellDispatch6_UndoMinimizeALL(IShellDispatch6* This) { 6765 return This->lpVtbl->UndoMinimizeALL(This); 6766 } 6767 static FORCEINLINE HRESULT IShellDispatch6_FileRun(IShellDispatch6* This) { 6768 return This->lpVtbl->FileRun(This); 6769 } 6770 static FORCEINLINE HRESULT IShellDispatch6_CascadeWindows(IShellDispatch6* This) { 6771 return This->lpVtbl->CascadeWindows(This); 6772 } 6773 static FORCEINLINE HRESULT IShellDispatch6_TileVertically(IShellDispatch6* This) { 6774 return This->lpVtbl->TileVertically(This); 6775 } 6776 static FORCEINLINE HRESULT IShellDispatch6_TileHorizontally(IShellDispatch6* This) { 6777 return This->lpVtbl->TileHorizontally(This); 6778 } 6779 static FORCEINLINE HRESULT IShellDispatch6_ShutdownWindows(IShellDispatch6* This) { 6780 return This->lpVtbl->ShutdownWindows(This); 6781 } 6782 static FORCEINLINE HRESULT IShellDispatch6_Suspend(IShellDispatch6* This) { 6783 return This->lpVtbl->Suspend(This); 6784 } 6785 static FORCEINLINE HRESULT IShellDispatch6_EjectPC(IShellDispatch6* This) { 6786 return This->lpVtbl->EjectPC(This); 6787 } 6788 static FORCEINLINE HRESULT IShellDispatch6_SetTime(IShellDispatch6* This) { 6789 return This->lpVtbl->SetTime(This); 6790 } 6791 static FORCEINLINE HRESULT IShellDispatch6_TrayProperties(IShellDispatch6* This) { 6792 return This->lpVtbl->TrayProperties(This); 6793 } 6794 static FORCEINLINE HRESULT IShellDispatch6_Help(IShellDispatch6* This) { 6795 return This->lpVtbl->Help(This); 6796 } 6797 static FORCEINLINE HRESULT IShellDispatch6_FindFiles(IShellDispatch6* This) { 6798 return This->lpVtbl->FindFiles(This); 6799 } 6800 static FORCEINLINE HRESULT IShellDispatch6_FindComputer(IShellDispatch6* This) { 6801 return This->lpVtbl->FindComputer(This); 6802 } 6803 static FORCEINLINE HRESULT IShellDispatch6_RefreshMenu(IShellDispatch6* This) { 6804 return This->lpVtbl->RefreshMenu(This); 6805 } 6806 static FORCEINLINE HRESULT IShellDispatch6_ControlPanelItem(IShellDispatch6* This,BSTR bstrDir) { 6807 return This->lpVtbl->ControlPanelItem(This,bstrDir); 6808 } 6809 /*** IShellDispatch2 methods ***/ 6810 static FORCEINLINE HRESULT IShellDispatch6_IsRestricted(IShellDispatch6* This,BSTR Group,BSTR Restriction,LONG *plRestrictValue) { 6811 return This->lpVtbl->IsRestricted(This,Group,Restriction,plRestrictValue); 6812 } 6813 static FORCEINLINE HRESULT IShellDispatch6_ShellExecute(IShellDispatch6* This,BSTR File,VARIANT vArgs,VARIANT vDir,VARIANT vOperation,VARIANT vShow) { 6814 return This->lpVtbl->ShellExecute(This,File,vArgs,vDir,vOperation,vShow); 6815 } 6816 static FORCEINLINE HRESULT IShellDispatch6_FindPrinter(IShellDispatch6* This,BSTR name,BSTR location,BSTR model) { 6817 return This->lpVtbl->FindPrinter(This,name,location,model); 6818 } 6819 static FORCEINLINE HRESULT IShellDispatch6_GetSystemInformation(IShellDispatch6* This,BSTR name,VARIANT *pv) { 6820 return This->lpVtbl->GetSystemInformation(This,name,pv); 6821 } 6822 static FORCEINLINE HRESULT IShellDispatch6_ServiceStart(IShellDispatch6* This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess) { 6823 return This->lpVtbl->ServiceStart(This,ServiceName,Persistent,pSuccess); 6824 } 6825 static FORCEINLINE HRESULT IShellDispatch6_ServiceStop(IShellDispatch6* This,BSTR ServiceName,VARIANT Persistent,VARIANT *pSuccess) { 6826 return This->lpVtbl->ServiceStop(This,ServiceName,Persistent,pSuccess); 6827 } 6828 static FORCEINLINE HRESULT IShellDispatch6_IsServiceRunning(IShellDispatch6* This,BSTR ServiceName,VARIANT *pRunning) { 6829 return This->lpVtbl->IsServiceRunning(This,ServiceName,pRunning); 6830 } 6831 static FORCEINLINE HRESULT IShellDispatch6_CanStartStopService(IShellDispatch6* This,BSTR ServiceName,VARIANT *pCanStartStop) { 6832 return This->lpVtbl->CanStartStopService(This,ServiceName,pCanStartStop); 6833 } 6834 static FORCEINLINE HRESULT IShellDispatch6_ShowBrowserBar(IShellDispatch6* This,BSTR bstrClsid,VARIANT bShow,VARIANT *pSuccess) { 6835 return This->lpVtbl->ShowBrowserBar(This,bstrClsid,bShow,pSuccess); 6836 } 6837 /*** IShellDispatch3 methods ***/ 6838 static FORCEINLINE HRESULT IShellDispatch6_AddToRecent(IShellDispatch6* This,VARIANT varFile,BSTR bstrCategory) { 6839 return This->lpVtbl->AddToRecent(This,varFile,bstrCategory); 6840 } 6841 /*** IShellDispatch4 methods ***/ 6842 static FORCEINLINE HRESULT IShellDispatch6_WindowsSecurity(IShellDispatch6* This) { 6843 return This->lpVtbl->WindowsSecurity(This); 6844 } 6845 static FORCEINLINE HRESULT IShellDispatch6_ToggleDesktop(IShellDispatch6* This) { 6846 return This->lpVtbl->ToggleDesktop(This); 6847 } 6848 static FORCEINLINE HRESULT IShellDispatch6_ExplorerPolicy(IShellDispatch6* This,BSTR bstrPolicyName,VARIANT *pValue) { 6849 return This->lpVtbl->ExplorerPolicy(This,bstrPolicyName,pValue); 6850 } 6851 static FORCEINLINE HRESULT IShellDispatch6_GetSetting(IShellDispatch6* This,LONG lSetting,VARIANT_BOOL *pResult) { 6852 return This->lpVtbl->GetSetting(This,lSetting,pResult); 6853 } 6854 /*** IShellDispatch5 methods ***/ 6855 static FORCEINLINE HRESULT IShellDispatch6_WindowSwitcher(IShellDispatch6* This) { 6856 return This->lpVtbl->WindowSwitcher(This); 6857 } 6858 /*** IShellDispatch6 methods ***/ 6859 static FORCEINLINE HRESULT IShellDispatch6_SearchCommand(IShellDispatch6* This) { 6860 return This->lpVtbl->SearchCommand(This); 6861 } 6862 #endif 6863 #endif 6864 6865 #endif 6866 6867 6868 #endif /* __IShellDispatch6_INTERFACE_DEFINED__ */ 6869 6870 #endif 6871 /***************************************************************************** 6872 * Shell coclass 6873 */ 6874 6875 DEFINE_GUID(CLSID_Shell, 0x13709620, 0xc279, 0x11ce, 0xa4,0x9e, 0x44,0x45,0x53,0x54,0x00,0x00); 6876 6877 #ifdef __cplusplus 6878 class DECLSPEC_UUID("13709620-c279-11ce-a49e-444553540000") Shell; 6879 #ifdef __CRT_UUID_DECL 6880 __CRT_UUID_DECL(Shell, 0x13709620, 0xc279, 0x11ce, 0xa4,0x9e, 0x44,0x45,0x53,0x54,0x00,0x00) 6881 #endif 6882 #endif 6883 6884 /***************************************************************************** 6885 * ShellDispatchInproc coclass 6886 */ 6887 6888 DEFINE_GUID(CLSID_ShellDispatchInproc, 0x0a89a860, 0xd7b1, 0x11ce, 0x83,0x50, 0x44,0x45,0x53,0x54,0x00,0x00); 6889 6890 #ifdef __cplusplus 6891 class DECLSPEC_UUID("0a89a860-d7b1-11ce-8350-444553540000") ShellDispatchInproc; 6892 #ifdef __CRT_UUID_DECL 6893 __CRT_UUID_DECL(ShellDispatchInproc, 0x0a89a860, 0xd7b1, 0x11ce, 0x83,0x50, 0x44,0x45,0x53,0x54,0x00,0x00) 6894 #endif 6895 #endif 6896 6897 typedef enum ShellSpecialFolderConstants { 6898 ssfDESKTOP = 0x0, 6899 ssfPROGRAMS = 0x2, 6900 ssfCONTROLS = 0x3, 6901 ssfPRINTERS = 0x4, 6902 ssfPERSONAL = 0x5, 6903 ssfFAVORITES = 0x6, 6904 ssfSTARTUP = 0x7, 6905 ssfRECENT = 0x8, 6906 ssfSENDTO = 0x9, 6907 ssfBITBUCKET = 0xa, 6908 ssfSTARTMENU = 0xb, 6909 ssfDESKTOPDIRECTORY = 0x10, 6910 ssfDRIVES = 0x11, 6911 ssfNETWORK = 0x12, 6912 ssfNETHOOD = 0x13, 6913 ssfFONTS = 0x14, 6914 ssfTEMPLATES = 0x15, 6915 ssfCOMMONSTARTMENU = 0x16, 6916 ssfCOMMONPROGRAMS = 0x17, 6917 ssfCOMMONSTARTUP = 0x18, 6918 ssfCOMMONDESKTOPDIR = 0x19, 6919 ssfAPPDATA = 0x1a, 6920 ssfPRINTHOOD = 0x1b, 6921 ssfLOCALAPPDATA = 0x1c, 6922 ssfALTSTARTUP = 0x1d, 6923 ssfCOMMONALTSTARTUP = 0x1e, 6924 ssfCOMMONFAVORITES = 0x1f, 6925 ssfINTERNETCACHE = 0x20, 6926 ssfCOOKIES = 0x21, 6927 ssfHISTORY = 0x22, 6928 ssfCOMMONAPPDATA = 0x23, 6929 ssfWINDOWS = 0x24, 6930 ssfSYSTEM = 0x25, 6931 ssfPROGRAMFILES = 0x26, 6932 ssfMYPICTURES = 0x27, 6933 ssfPROFILE = 0x28, 6934 ssfSYSTEMx86 = 0x29, 6935 ssfPROGRAMFILESx86 = 0x30 6936 } ShellSpecialFolderConstants; 6937 /***************************************************************************** 6938 * IFileSearchBand interface 6939 */ 6940 #ifndef __IFileSearchBand_INTERFACE_DEFINED__ 6941 #define __IFileSearchBand_INTERFACE_DEFINED__ 6942 6943 DEFINE_GUID(IID_IFileSearchBand, 0x2d91eea1, 0x9932, 0x11d2, 0xbe,0x86, 0x00,0xa0,0xc9,0xa8,0x3d,0xa1); 6944 #if defined(__cplusplus) && !defined(CINTERFACE) 6945 MIDL_INTERFACE("2d91eea1-9932-11d2-be86-00a0c9a83da1") 6946 IFileSearchBand : public IDispatch 6947 { 6948 virtual HRESULT STDMETHODCALLTYPE SetFocus( 6949 ) = 0; 6950 6951 virtual HRESULT STDMETHODCALLTYPE SetSearchParameters( 6952 BSTR *pbstrSearchID, 6953 VARIANT_BOOL bNavToResults, 6954 VARIANT *pvarScope, 6955 VARIANT *pvarQueryFile) = 0; 6956 6957 virtual HRESULT STDMETHODCALLTYPE get_SearchID( 6958 BSTR *pbstrSearchID) = 0; 6959 6960 virtual HRESULT STDMETHODCALLTYPE get_Scope( 6961 VARIANT *pvarScope) = 0; 6962 6963 virtual HRESULT STDMETHODCALLTYPE get_QueryFile( 6964 VARIANT *pvarFile) = 0; 6965 6966 }; 6967 #ifdef __CRT_UUID_DECL 6968 __CRT_UUID_DECL(IFileSearchBand, 0x2d91eea1, 0x9932, 0x11d2, 0xbe,0x86, 0x00,0xa0,0xc9,0xa8,0x3d,0xa1) 6969 #endif 6970 #else 6971 typedef struct IFileSearchBandVtbl { 6972 BEGIN_INTERFACE 6973 6974 /*** IUnknown methods ***/ 6975 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6976 IFileSearchBand *This, 6977 REFIID riid, 6978 void **ppvObject); 6979 6980 ULONG (STDMETHODCALLTYPE *AddRef)( 6981 IFileSearchBand *This); 6982 6983 ULONG (STDMETHODCALLTYPE *Release)( 6984 IFileSearchBand *This); 6985 6986 /*** IDispatch methods ***/ 6987 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 6988 IFileSearchBand *This, 6989 UINT *pctinfo); 6990 6991 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 6992 IFileSearchBand *This, 6993 UINT iTInfo, 6994 LCID lcid, 6995 ITypeInfo **ppTInfo); 6996 6997 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 6998 IFileSearchBand *This, 6999 REFIID riid, 7000 LPOLESTR *rgszNames, 7001 UINT cNames, 7002 LCID lcid, 7003 DISPID *rgDispId); 7004 7005 HRESULT (STDMETHODCALLTYPE *Invoke)( 7006 IFileSearchBand *This, 7007 DISPID dispIdMember, 7008 REFIID riid, 7009 LCID lcid, 7010 WORD wFlags, 7011 DISPPARAMS *pDispParams, 7012 VARIANT *pVarResult, 7013 EXCEPINFO *pExcepInfo, 7014 UINT *puArgErr); 7015 7016 /*** IFileSearchBand methods ***/ 7017 HRESULT (STDMETHODCALLTYPE *SetFocus)( 7018 IFileSearchBand *This); 7019 7020 HRESULT (STDMETHODCALLTYPE *SetSearchParameters)( 7021 IFileSearchBand *This, 7022 BSTR *pbstrSearchID, 7023 VARIANT_BOOL bNavToResults, 7024 VARIANT *pvarScope, 7025 VARIANT *pvarQueryFile); 7026 7027 HRESULT (STDMETHODCALLTYPE *get_SearchID)( 7028 IFileSearchBand *This, 7029 BSTR *pbstrSearchID); 7030 7031 HRESULT (STDMETHODCALLTYPE *get_Scope)( 7032 IFileSearchBand *This, 7033 VARIANT *pvarScope); 7034 7035 HRESULT (STDMETHODCALLTYPE *get_QueryFile)( 7036 IFileSearchBand *This, 7037 VARIANT *pvarFile); 7038 7039 END_INTERFACE 7040 } IFileSearchBandVtbl; 7041 7042 interface IFileSearchBand { 7043 CONST_VTBL IFileSearchBandVtbl* lpVtbl; 7044 }; 7045 7046 #ifdef COBJMACROS 7047 #ifndef WIDL_C_INLINE_WRAPPERS 7048 /*** IUnknown methods ***/ 7049 #define IFileSearchBand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7050 #define IFileSearchBand_AddRef(This) (This)->lpVtbl->AddRef(This) 7051 #define IFileSearchBand_Release(This) (This)->lpVtbl->Release(This) 7052 /*** IDispatch methods ***/ 7053 #define IFileSearchBand_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 7054 #define IFileSearchBand_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 7055 #define IFileSearchBand_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 7056 #define IFileSearchBand_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 7057 /*** IFileSearchBand methods ***/ 7058 #define IFileSearchBand_SetFocus(This) (This)->lpVtbl->SetFocus(This) 7059 #define IFileSearchBand_SetSearchParameters(This,pbstrSearchID,bNavToResults,pvarScope,pvarQueryFile) (This)->lpVtbl->SetSearchParameters(This,pbstrSearchID,bNavToResults,pvarScope,pvarQueryFile) 7060 #define IFileSearchBand_get_SearchID(This,pbstrSearchID) (This)->lpVtbl->get_SearchID(This,pbstrSearchID) 7061 #define IFileSearchBand_get_Scope(This,pvarScope) (This)->lpVtbl->get_Scope(This,pvarScope) 7062 #define IFileSearchBand_get_QueryFile(This,pvarFile) (This)->lpVtbl->get_QueryFile(This,pvarFile) 7063 #else 7064 /*** IUnknown methods ***/ 7065 static FORCEINLINE HRESULT IFileSearchBand_QueryInterface(IFileSearchBand* This,REFIID riid,void **ppvObject) { 7066 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7067 } 7068 static FORCEINLINE ULONG IFileSearchBand_AddRef(IFileSearchBand* This) { 7069 return This->lpVtbl->AddRef(This); 7070 } 7071 static FORCEINLINE ULONG IFileSearchBand_Release(IFileSearchBand* This) { 7072 return This->lpVtbl->Release(This); 7073 } 7074 /*** IDispatch methods ***/ 7075 static FORCEINLINE HRESULT IFileSearchBand_GetTypeInfoCount(IFileSearchBand* This,UINT *pctinfo) { 7076 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 7077 } 7078 static FORCEINLINE HRESULT IFileSearchBand_GetTypeInfo(IFileSearchBand* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 7079 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 7080 } 7081 static FORCEINLINE HRESULT IFileSearchBand_GetIDsOfNames(IFileSearchBand* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 7082 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 7083 } 7084 static FORCEINLINE HRESULT IFileSearchBand_Invoke(IFileSearchBand* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 7085 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 7086 } 7087 /*** IFileSearchBand methods ***/ 7088 static FORCEINLINE HRESULT IFileSearchBand_SetFocus(IFileSearchBand* This) { 7089 return This->lpVtbl->SetFocus(This); 7090 } 7091 static FORCEINLINE HRESULT IFileSearchBand_SetSearchParameters(IFileSearchBand* This,BSTR *pbstrSearchID,VARIANT_BOOL bNavToResults,VARIANT *pvarScope,VARIANT *pvarQueryFile) { 7092 return This->lpVtbl->SetSearchParameters(This,pbstrSearchID,bNavToResults,pvarScope,pvarQueryFile); 7093 } 7094 static FORCEINLINE HRESULT IFileSearchBand_get_SearchID(IFileSearchBand* This,BSTR *pbstrSearchID) { 7095 return This->lpVtbl->get_SearchID(This,pbstrSearchID); 7096 } 7097 static FORCEINLINE HRESULT IFileSearchBand_get_Scope(IFileSearchBand* This,VARIANT *pvarScope) { 7098 return This->lpVtbl->get_Scope(This,pvarScope); 7099 } 7100 static FORCEINLINE HRESULT IFileSearchBand_get_QueryFile(IFileSearchBand* This,VARIANT *pvarFile) { 7101 return This->lpVtbl->get_QueryFile(This,pvarFile); 7102 } 7103 #endif 7104 #endif 7105 7106 #endif 7107 7108 7109 #endif /* __IFileSearchBand_INTERFACE_DEFINED__ */ 7110 7111 /***************************************************************************** 7112 * FileSearchBand coclass 7113 */ 7114 7115 DEFINE_GUID(CLSID_FileSearchBand, 0xc4ee31f3, 0x4768, 0x11d2, 0xbe,0x5c, 0x00,0xa0,0xc9,0xa8,0x3d,0xa1); 7116 7117 #ifdef __cplusplus 7118 class DECLSPEC_UUID("c4ee31f3-4768-11d2-be5c-00a0c9a83da1") FileSearchBand; 7119 #ifdef __CRT_UUID_DECL 7120 __CRT_UUID_DECL(FileSearchBand, 0xc4ee31f3, 0x4768, 0x11d2, 0xbe,0x5c, 0x00,0xa0,0xc9,0xa8,0x3d,0xa1) 7121 #endif 7122 #endif 7123 7124 /***************************************************************************** 7125 * IWebWizardHost interface 7126 */ 7127 #ifndef __IWebWizardHost_INTERFACE_DEFINED__ 7128 #define __IWebWizardHost_INTERFACE_DEFINED__ 7129 7130 DEFINE_GUID(IID_IWebWizardHost, 0x18bcc359, 0x4990, 0x4bfb, 0xb9,0x51, 0x3c,0x83,0x70,0x2b,0xe5,0xf9); 7131 #if defined(__cplusplus) && !defined(CINTERFACE) 7132 MIDL_INTERFACE("18bcc359-4990-4bfb-b951-3c83702be5f9") 7133 IWebWizardHost : public IDispatch 7134 { 7135 virtual HRESULT STDMETHODCALLTYPE FinalBack( 7136 ) = 0; 7137 7138 virtual HRESULT STDMETHODCALLTYPE FinalNext( 7139 ) = 0; 7140 7141 virtual HRESULT STDMETHODCALLTYPE Cancel( 7142 ) = 0; 7143 7144 virtual HRESULT STDMETHODCALLTYPE put_Caption( 7145 BSTR bstrCaption) = 0; 7146 7147 virtual HRESULT STDMETHODCALLTYPE get_Caption( 7148 BSTR *pbstrCaption) = 0; 7149 7150 virtual HRESULT STDMETHODCALLTYPE put_Property( 7151 BSTR bstrPropertyName, 7152 VARIANT *pvProperty) = 0; 7153 7154 virtual HRESULT STDMETHODCALLTYPE get_Property( 7155 BSTR bstrPropertyName, 7156 VARIANT *pvProperty) = 0; 7157 7158 virtual HRESULT STDMETHODCALLTYPE SetWizardButtons( 7159 VARIANT_BOOL vfEnableBack, 7160 VARIANT_BOOL vfEnableNext, 7161 VARIANT_BOOL vfLastPage) = 0; 7162 7163 virtual HRESULT STDMETHODCALLTYPE SetHeaderText( 7164 BSTR bstrHeaderTitle, 7165 BSTR bstrHeaderSubtitle) = 0; 7166 7167 }; 7168 #ifdef __CRT_UUID_DECL 7169 __CRT_UUID_DECL(IWebWizardHost, 0x18bcc359, 0x4990, 0x4bfb, 0xb9,0x51, 0x3c,0x83,0x70,0x2b,0xe5,0xf9) 7170 #endif 7171 #else 7172 typedef struct IWebWizardHostVtbl { 7173 BEGIN_INTERFACE 7174 7175 /*** IUnknown methods ***/ 7176 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7177 IWebWizardHost *This, 7178 REFIID riid, 7179 void **ppvObject); 7180 7181 ULONG (STDMETHODCALLTYPE *AddRef)( 7182 IWebWizardHost *This); 7183 7184 ULONG (STDMETHODCALLTYPE *Release)( 7185 IWebWizardHost *This); 7186 7187 /*** IDispatch methods ***/ 7188 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 7189 IWebWizardHost *This, 7190 UINT *pctinfo); 7191 7192 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 7193 IWebWizardHost *This, 7194 UINT iTInfo, 7195 LCID lcid, 7196 ITypeInfo **ppTInfo); 7197 7198 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 7199 IWebWizardHost *This, 7200 REFIID riid, 7201 LPOLESTR *rgszNames, 7202 UINT cNames, 7203 LCID lcid, 7204 DISPID *rgDispId); 7205 7206 HRESULT (STDMETHODCALLTYPE *Invoke)( 7207 IWebWizardHost *This, 7208 DISPID dispIdMember, 7209 REFIID riid, 7210 LCID lcid, 7211 WORD wFlags, 7212 DISPPARAMS *pDispParams, 7213 VARIANT *pVarResult, 7214 EXCEPINFO *pExcepInfo, 7215 UINT *puArgErr); 7216 7217 /*** IWebWizardHost methods ***/ 7218 HRESULT (STDMETHODCALLTYPE *FinalBack)( 7219 IWebWizardHost *This); 7220 7221 HRESULT (STDMETHODCALLTYPE *FinalNext)( 7222 IWebWizardHost *This); 7223 7224 HRESULT (STDMETHODCALLTYPE *Cancel)( 7225 IWebWizardHost *This); 7226 7227 HRESULT (STDMETHODCALLTYPE *put_Caption)( 7228 IWebWizardHost *This, 7229 BSTR bstrCaption); 7230 7231 HRESULT (STDMETHODCALLTYPE *get_Caption)( 7232 IWebWizardHost *This, 7233 BSTR *pbstrCaption); 7234 7235 HRESULT (STDMETHODCALLTYPE *put_Property)( 7236 IWebWizardHost *This, 7237 BSTR bstrPropertyName, 7238 VARIANT *pvProperty); 7239 7240 HRESULT (STDMETHODCALLTYPE *get_Property)( 7241 IWebWizardHost *This, 7242 BSTR bstrPropertyName, 7243 VARIANT *pvProperty); 7244 7245 HRESULT (STDMETHODCALLTYPE *SetWizardButtons)( 7246 IWebWizardHost *This, 7247 VARIANT_BOOL vfEnableBack, 7248 VARIANT_BOOL vfEnableNext, 7249 VARIANT_BOOL vfLastPage); 7250 7251 HRESULT (STDMETHODCALLTYPE *SetHeaderText)( 7252 IWebWizardHost *This, 7253 BSTR bstrHeaderTitle, 7254 BSTR bstrHeaderSubtitle); 7255 7256 END_INTERFACE 7257 } IWebWizardHostVtbl; 7258 7259 interface IWebWizardHost { 7260 CONST_VTBL IWebWizardHostVtbl* lpVtbl; 7261 }; 7262 7263 #ifdef COBJMACROS 7264 #ifndef WIDL_C_INLINE_WRAPPERS 7265 /*** IUnknown methods ***/ 7266 #define IWebWizardHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7267 #define IWebWizardHost_AddRef(This) (This)->lpVtbl->AddRef(This) 7268 #define IWebWizardHost_Release(This) (This)->lpVtbl->Release(This) 7269 /*** IDispatch methods ***/ 7270 #define IWebWizardHost_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 7271 #define IWebWizardHost_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 7272 #define IWebWizardHost_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 7273 #define IWebWizardHost_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 7274 /*** IWebWizardHost methods ***/ 7275 #define IWebWizardHost_FinalBack(This) (This)->lpVtbl->FinalBack(This) 7276 #define IWebWizardHost_FinalNext(This) (This)->lpVtbl->FinalNext(This) 7277 #define IWebWizardHost_Cancel(This) (This)->lpVtbl->Cancel(This) 7278 #define IWebWizardHost_put_Caption(This,bstrCaption) (This)->lpVtbl->put_Caption(This,bstrCaption) 7279 #define IWebWizardHost_get_Caption(This,pbstrCaption) (This)->lpVtbl->get_Caption(This,pbstrCaption) 7280 #define IWebWizardHost_put_Property(This,bstrPropertyName,pvProperty) (This)->lpVtbl->put_Property(This,bstrPropertyName,pvProperty) 7281 #define IWebWizardHost_get_Property(This,bstrPropertyName,pvProperty) (This)->lpVtbl->get_Property(This,bstrPropertyName,pvProperty) 7282 #define IWebWizardHost_SetWizardButtons(This,vfEnableBack,vfEnableNext,vfLastPage) (This)->lpVtbl->SetWizardButtons(This,vfEnableBack,vfEnableNext,vfLastPage) 7283 #define IWebWizardHost_SetHeaderText(This,bstrHeaderTitle,bstrHeaderSubtitle) (This)->lpVtbl->SetHeaderText(This,bstrHeaderTitle,bstrHeaderSubtitle) 7284 #else 7285 /*** IUnknown methods ***/ 7286 static FORCEINLINE HRESULT IWebWizardHost_QueryInterface(IWebWizardHost* This,REFIID riid,void **ppvObject) { 7287 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7288 } 7289 static FORCEINLINE ULONG IWebWizardHost_AddRef(IWebWizardHost* This) { 7290 return This->lpVtbl->AddRef(This); 7291 } 7292 static FORCEINLINE ULONG IWebWizardHost_Release(IWebWizardHost* This) { 7293 return This->lpVtbl->Release(This); 7294 } 7295 /*** IDispatch methods ***/ 7296 static FORCEINLINE HRESULT IWebWizardHost_GetTypeInfoCount(IWebWizardHost* This,UINT *pctinfo) { 7297 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 7298 } 7299 static FORCEINLINE HRESULT IWebWizardHost_GetTypeInfo(IWebWizardHost* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 7300 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 7301 } 7302 static FORCEINLINE HRESULT IWebWizardHost_GetIDsOfNames(IWebWizardHost* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 7303 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 7304 } 7305 static FORCEINLINE HRESULT IWebWizardHost_Invoke(IWebWizardHost* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 7306 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 7307 } 7308 /*** IWebWizardHost methods ***/ 7309 static FORCEINLINE HRESULT IWebWizardHost_FinalBack(IWebWizardHost* This) { 7310 return This->lpVtbl->FinalBack(This); 7311 } 7312 static FORCEINLINE HRESULT IWebWizardHost_FinalNext(IWebWizardHost* This) { 7313 return This->lpVtbl->FinalNext(This); 7314 } 7315 static FORCEINLINE HRESULT IWebWizardHost_Cancel(IWebWizardHost* This) { 7316 return This->lpVtbl->Cancel(This); 7317 } 7318 static FORCEINLINE HRESULT IWebWizardHost_put_Caption(IWebWizardHost* This,BSTR bstrCaption) { 7319 return This->lpVtbl->put_Caption(This,bstrCaption); 7320 } 7321 static FORCEINLINE HRESULT IWebWizardHost_get_Caption(IWebWizardHost* This,BSTR *pbstrCaption) { 7322 return This->lpVtbl->get_Caption(This,pbstrCaption); 7323 } 7324 static FORCEINLINE HRESULT IWebWizardHost_put_Property(IWebWizardHost* This,BSTR bstrPropertyName,VARIANT *pvProperty) { 7325 return This->lpVtbl->put_Property(This,bstrPropertyName,pvProperty); 7326 } 7327 static FORCEINLINE HRESULT IWebWizardHost_get_Property(IWebWizardHost* This,BSTR bstrPropertyName,VARIANT *pvProperty) { 7328 return This->lpVtbl->get_Property(This,bstrPropertyName,pvProperty); 7329 } 7330 static FORCEINLINE HRESULT IWebWizardHost_SetWizardButtons(IWebWizardHost* This,VARIANT_BOOL vfEnableBack,VARIANT_BOOL vfEnableNext,VARIANT_BOOL vfLastPage) { 7331 return This->lpVtbl->SetWizardButtons(This,vfEnableBack,vfEnableNext,vfLastPage); 7332 } 7333 static FORCEINLINE HRESULT IWebWizardHost_SetHeaderText(IWebWizardHost* This,BSTR bstrHeaderTitle,BSTR bstrHeaderSubtitle) { 7334 return This->lpVtbl->SetHeaderText(This,bstrHeaderTitle,bstrHeaderSubtitle); 7335 } 7336 #endif 7337 #endif 7338 7339 #endif 7340 7341 7342 #endif /* __IWebWizardHost_INTERFACE_DEFINED__ */ 7343 7344 /***************************************************************************** 7345 * INewWDEvents interface 7346 */ 7347 #ifndef __INewWDEvents_INTERFACE_DEFINED__ 7348 #define __INewWDEvents_INTERFACE_DEFINED__ 7349 7350 DEFINE_GUID(IID_INewWDEvents, 0x0751c551, 0x7568, 0x41c9, 0x8e,0x5b, 0xe2,0x2e,0x38,0x91,0x92,0x36); 7351 #if defined(__cplusplus) && !defined(CINTERFACE) 7352 MIDL_INTERFACE("0751c551-7568-41c9-8e5b-e22e38919236") 7353 INewWDEvents : public IWebWizardHost 7354 { 7355 virtual HRESULT STDMETHODCALLTYPE PassportAuthenticate( 7356 BSTR bstrSignInUrl, 7357 VARIANT_BOOL *pvfAuthenitcated) = 0; 7358 7359 }; 7360 #ifdef __CRT_UUID_DECL 7361 __CRT_UUID_DECL(INewWDEvents, 0x0751c551, 0x7568, 0x41c9, 0x8e,0x5b, 0xe2,0x2e,0x38,0x91,0x92,0x36) 7362 #endif 7363 #else 7364 typedef struct INewWDEventsVtbl { 7365 BEGIN_INTERFACE 7366 7367 /*** IUnknown methods ***/ 7368 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7369 INewWDEvents *This, 7370 REFIID riid, 7371 void **ppvObject); 7372 7373 ULONG (STDMETHODCALLTYPE *AddRef)( 7374 INewWDEvents *This); 7375 7376 ULONG (STDMETHODCALLTYPE *Release)( 7377 INewWDEvents *This); 7378 7379 /*** IDispatch methods ***/ 7380 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( 7381 INewWDEvents *This, 7382 UINT *pctinfo); 7383 7384 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( 7385 INewWDEvents *This, 7386 UINT iTInfo, 7387 LCID lcid, 7388 ITypeInfo **ppTInfo); 7389 7390 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( 7391 INewWDEvents *This, 7392 REFIID riid, 7393 LPOLESTR *rgszNames, 7394 UINT cNames, 7395 LCID lcid, 7396 DISPID *rgDispId); 7397 7398 HRESULT (STDMETHODCALLTYPE *Invoke)( 7399 INewWDEvents *This, 7400 DISPID dispIdMember, 7401 REFIID riid, 7402 LCID lcid, 7403 WORD wFlags, 7404 DISPPARAMS *pDispParams, 7405 VARIANT *pVarResult, 7406 EXCEPINFO *pExcepInfo, 7407 UINT *puArgErr); 7408 7409 /*** IWebWizardHost methods ***/ 7410 HRESULT (STDMETHODCALLTYPE *FinalBack)( 7411 INewWDEvents *This); 7412 7413 HRESULT (STDMETHODCALLTYPE *FinalNext)( 7414 INewWDEvents *This); 7415 7416 HRESULT (STDMETHODCALLTYPE *Cancel)( 7417 INewWDEvents *This); 7418 7419 HRESULT (STDMETHODCALLTYPE *put_Caption)( 7420 INewWDEvents *This, 7421 BSTR bstrCaption); 7422 7423 HRESULT (STDMETHODCALLTYPE *get_Caption)( 7424 INewWDEvents *This, 7425 BSTR *pbstrCaption); 7426 7427 HRESULT (STDMETHODCALLTYPE *put_Property)( 7428 INewWDEvents *This, 7429 BSTR bstrPropertyName, 7430 VARIANT *pvProperty); 7431 7432 HRESULT (STDMETHODCALLTYPE *get_Property)( 7433 INewWDEvents *This, 7434 BSTR bstrPropertyName, 7435 VARIANT *pvProperty); 7436 7437 HRESULT (STDMETHODCALLTYPE *SetWizardButtons)( 7438 INewWDEvents *This, 7439 VARIANT_BOOL vfEnableBack, 7440 VARIANT_BOOL vfEnableNext, 7441 VARIANT_BOOL vfLastPage); 7442 7443 HRESULT (STDMETHODCALLTYPE *SetHeaderText)( 7444 INewWDEvents *This, 7445 BSTR bstrHeaderTitle, 7446 BSTR bstrHeaderSubtitle); 7447 7448 /*** INewWDEvents methods ***/ 7449 HRESULT (STDMETHODCALLTYPE *PassportAuthenticate)( 7450 INewWDEvents *This, 7451 BSTR bstrSignInUrl, 7452 VARIANT_BOOL *pvfAuthenitcated); 7453 7454 END_INTERFACE 7455 } INewWDEventsVtbl; 7456 7457 interface INewWDEvents { 7458 CONST_VTBL INewWDEventsVtbl* lpVtbl; 7459 }; 7460 7461 #ifdef COBJMACROS 7462 #ifndef WIDL_C_INLINE_WRAPPERS 7463 /*** IUnknown methods ***/ 7464 #define INewWDEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7465 #define INewWDEvents_AddRef(This) (This)->lpVtbl->AddRef(This) 7466 #define INewWDEvents_Release(This) (This)->lpVtbl->Release(This) 7467 /*** IDispatch methods ***/ 7468 #define INewWDEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) 7469 #define INewWDEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) 7470 #define INewWDEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) 7471 #define INewWDEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) 7472 /*** IWebWizardHost methods ***/ 7473 #define INewWDEvents_FinalBack(This) (This)->lpVtbl->FinalBack(This) 7474 #define INewWDEvents_FinalNext(This) (This)->lpVtbl->FinalNext(This) 7475 #define INewWDEvents_Cancel(This) (This)->lpVtbl->Cancel(This) 7476 #define INewWDEvents_put_Caption(This,bstrCaption) (This)->lpVtbl->put_Caption(This,bstrCaption) 7477 #define INewWDEvents_get_Caption(This,pbstrCaption) (This)->lpVtbl->get_Caption(This,pbstrCaption) 7478 #define INewWDEvents_put_Property(This,bstrPropertyName,pvProperty) (This)->lpVtbl->put_Property(This,bstrPropertyName,pvProperty) 7479 #define INewWDEvents_get_Property(This,bstrPropertyName,pvProperty) (This)->lpVtbl->get_Property(This,bstrPropertyName,pvProperty) 7480 #define INewWDEvents_SetWizardButtons(This,vfEnableBack,vfEnableNext,vfLastPage) (This)->lpVtbl->SetWizardButtons(This,vfEnableBack,vfEnableNext,vfLastPage) 7481 #define INewWDEvents_SetHeaderText(This,bstrHeaderTitle,bstrHeaderSubtitle) (This)->lpVtbl->SetHeaderText(This,bstrHeaderTitle,bstrHeaderSubtitle) 7482 /*** INewWDEvents methods ***/ 7483 #define INewWDEvents_PassportAuthenticate(This,bstrSignInUrl,pvfAuthenitcated) (This)->lpVtbl->PassportAuthenticate(This,bstrSignInUrl,pvfAuthenitcated) 7484 #else 7485 /*** IUnknown methods ***/ 7486 static FORCEINLINE HRESULT INewWDEvents_QueryInterface(INewWDEvents* This,REFIID riid,void **ppvObject) { 7487 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7488 } 7489 static FORCEINLINE ULONG INewWDEvents_AddRef(INewWDEvents* This) { 7490 return This->lpVtbl->AddRef(This); 7491 } 7492 static FORCEINLINE ULONG INewWDEvents_Release(INewWDEvents* This) { 7493 return This->lpVtbl->Release(This); 7494 } 7495 /*** IDispatch methods ***/ 7496 static FORCEINLINE HRESULT INewWDEvents_GetTypeInfoCount(INewWDEvents* This,UINT *pctinfo) { 7497 return This->lpVtbl->GetTypeInfoCount(This,pctinfo); 7498 } 7499 static FORCEINLINE HRESULT INewWDEvents_GetTypeInfo(INewWDEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { 7500 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); 7501 } 7502 static FORCEINLINE HRESULT INewWDEvents_GetIDsOfNames(INewWDEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { 7503 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); 7504 } 7505 static FORCEINLINE HRESULT INewWDEvents_Invoke(INewWDEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { 7506 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); 7507 } 7508 /*** IWebWizardHost methods ***/ 7509 static FORCEINLINE HRESULT INewWDEvents_FinalBack(INewWDEvents* This) { 7510 return This->lpVtbl->FinalBack(This); 7511 } 7512 static FORCEINLINE HRESULT INewWDEvents_FinalNext(INewWDEvents* This) { 7513 return This->lpVtbl->FinalNext(This); 7514 } 7515 static FORCEINLINE HRESULT INewWDEvents_Cancel(INewWDEvents* This) { 7516 return This->lpVtbl->Cancel(This); 7517 } 7518 static FORCEINLINE HRESULT INewWDEvents_put_Caption(INewWDEvents* This,BSTR bstrCaption) { 7519 return This->lpVtbl->put_Caption(This,bstrCaption); 7520 } 7521 static FORCEINLINE HRESULT INewWDEvents_get_Caption(INewWDEvents* This,BSTR *pbstrCaption) { 7522 return This->lpVtbl->get_Caption(This,pbstrCaption); 7523 } 7524 static FORCEINLINE HRESULT INewWDEvents_put_Property(INewWDEvents* This,BSTR bstrPropertyName,VARIANT *pvProperty) { 7525 return This->lpVtbl->put_Property(This,bstrPropertyName,pvProperty); 7526 } 7527 static FORCEINLINE HRESULT INewWDEvents_get_Property(INewWDEvents* This,BSTR bstrPropertyName,VARIANT *pvProperty) { 7528 return This->lpVtbl->get_Property(This,bstrPropertyName,pvProperty); 7529 } 7530 static FORCEINLINE HRESULT INewWDEvents_SetWizardButtons(INewWDEvents* This,VARIANT_BOOL vfEnableBack,VARIANT_BOOL vfEnableNext,VARIANT_BOOL vfLastPage) { 7531 return This->lpVtbl->SetWizardButtons(This,vfEnableBack,vfEnableNext,vfLastPage); 7532 } 7533 static FORCEINLINE HRESULT INewWDEvents_SetHeaderText(INewWDEvents* This,BSTR bstrHeaderTitle,BSTR bstrHeaderSubtitle) { 7534 return This->lpVtbl->SetHeaderText(This,bstrHeaderTitle,bstrHeaderSubtitle); 7535 } 7536 /*** INewWDEvents methods ***/ 7537 static FORCEINLINE HRESULT INewWDEvents_PassportAuthenticate(INewWDEvents* This,BSTR bstrSignInUrl,VARIANT_BOOL *pvfAuthenitcated) { 7538 return This->lpVtbl->PassportAuthenticate(This,bstrSignInUrl,pvfAuthenitcated); 7539 } 7540 #endif 7541 #endif 7542 7543 #endif 7544 7545 7546 #endif /* __INewWDEvents_INTERFACE_DEFINED__ */ 7547 7548 #endif /* __Shell32_LIBRARY_DEFINED__ */ 7549 /***************************************************************************** 7550 * IAutoComplete interface 7551 */ 7552 #ifndef __IAutoComplete_INTERFACE_DEFINED__ 7553 #define __IAutoComplete_INTERFACE_DEFINED__ 7554 7555 typedef IAutoComplete *LPAUTOCOMPLETE; 7556 DEFINE_GUID(IID_IAutoComplete, 0x00bb2762, 0x6a77, 0x11d0, 0xa5,0x35, 0x00,0xc0,0x4f,0xd7,0xd0,0x62); 7557 #if defined(__cplusplus) && !defined(CINTERFACE) 7558 MIDL_INTERFACE("00bb2762-6a77-11d0-a535-00c04fd7d062") 7559 IAutoComplete : public IUnknown 7560 { 7561 virtual HRESULT STDMETHODCALLTYPE Init( 7562 HWND hwndEdit, 7563 IUnknown *punkACL, 7564 LPCWSTR pwszRegKeyPath, 7565 LPCWSTR pwszQuickComplete) = 0; 7566 7567 virtual HRESULT STDMETHODCALLTYPE Enable( 7568 WINBOOL fEnable) = 0; 7569 7570 }; 7571 #ifdef __CRT_UUID_DECL 7572 __CRT_UUID_DECL(IAutoComplete, 0x00bb2762, 0x6a77, 0x11d0, 0xa5,0x35, 0x00,0xc0,0x4f,0xd7,0xd0,0x62) 7573 #endif 7574 #else 7575 typedef struct IAutoCompleteVtbl { 7576 BEGIN_INTERFACE 7577 7578 /*** IUnknown methods ***/ 7579 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7580 IAutoComplete *This, 7581 REFIID riid, 7582 void **ppvObject); 7583 7584 ULONG (STDMETHODCALLTYPE *AddRef)( 7585 IAutoComplete *This); 7586 7587 ULONG (STDMETHODCALLTYPE *Release)( 7588 IAutoComplete *This); 7589 7590 /*** IAutoComplete methods ***/ 7591 HRESULT (STDMETHODCALLTYPE *Init)( 7592 IAutoComplete *This, 7593 HWND hwndEdit, 7594 IUnknown *punkACL, 7595 LPCWSTR pwszRegKeyPath, 7596 LPCWSTR pwszQuickComplete); 7597 7598 HRESULT (STDMETHODCALLTYPE *Enable)( 7599 IAutoComplete *This, 7600 WINBOOL fEnable); 7601 7602 END_INTERFACE 7603 } IAutoCompleteVtbl; 7604 7605 interface IAutoComplete { 7606 CONST_VTBL IAutoCompleteVtbl* lpVtbl; 7607 }; 7608 7609 #ifdef COBJMACROS 7610 #ifndef WIDL_C_INLINE_WRAPPERS 7611 /*** IUnknown methods ***/ 7612 #define IAutoComplete_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7613 #define IAutoComplete_AddRef(This) (This)->lpVtbl->AddRef(This) 7614 #define IAutoComplete_Release(This) (This)->lpVtbl->Release(This) 7615 /*** IAutoComplete methods ***/ 7616 #define IAutoComplete_Init(This,hwndEdit,punkACL,pwszRegKeyPath,pwszQuickComplete) (This)->lpVtbl->Init(This,hwndEdit,punkACL,pwszRegKeyPath,pwszQuickComplete) 7617 #define IAutoComplete_Enable(This,fEnable) (This)->lpVtbl->Enable(This,fEnable) 7618 #else 7619 /*** IUnknown methods ***/ 7620 static FORCEINLINE HRESULT IAutoComplete_QueryInterface(IAutoComplete* This,REFIID riid,void **ppvObject) { 7621 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7622 } 7623 static FORCEINLINE ULONG IAutoComplete_AddRef(IAutoComplete* This) { 7624 return This->lpVtbl->AddRef(This); 7625 } 7626 static FORCEINLINE ULONG IAutoComplete_Release(IAutoComplete* This) { 7627 return This->lpVtbl->Release(This); 7628 } 7629 /*** IAutoComplete methods ***/ 7630 static FORCEINLINE HRESULT IAutoComplete_Init(IAutoComplete* This,HWND hwndEdit,IUnknown *punkACL,LPCWSTR pwszRegKeyPath,LPCWSTR pwszQuickComplete) { 7631 return This->lpVtbl->Init(This,hwndEdit,punkACL,pwszRegKeyPath,pwszQuickComplete); 7632 } 7633 static FORCEINLINE HRESULT IAutoComplete_Enable(IAutoComplete* This,WINBOOL fEnable) { 7634 return This->lpVtbl->Enable(This,fEnable); 7635 } 7636 #endif 7637 #endif 7638 7639 #endif 7640 7641 7642 #endif /* __IAutoComplete_INTERFACE_DEFINED__ */ 7643 7644 /***************************************************************************** 7645 * IAutoComplete2 interface 7646 */ 7647 #ifndef __IAutoComplete2_INTERFACE_DEFINED__ 7648 #define __IAutoComplete2_INTERFACE_DEFINED__ 7649 7650 typedef IAutoComplete2 *LPAUTOCOMPLETE2; 7651 typedef enum _tagAUTOCOMPLETEOPTIONS { 7652 ACO_NONE = 0x0, 7653 ACO_AUTOSUGGEST = 0x1, 7654 ACO_AUTOAPPEND = 0x2, 7655 ACO_SEARCH = 0x4, 7656 ACO_FILTERPREFIXES = 0x8, 7657 ACO_USETAB = 0x10, 7658 ACO_UPDOWNKEYDROPSLIST = 0x20, 7659 ACO_RTLREADING = 0x40, 7660 ACO_WORD_FILTER = 0x80, 7661 ACO_NOPREFIXFILTERING = 0x100 7662 } AUTOCOMPLETEOPTIONS; 7663 DEFINE_GUID(IID_IAutoComplete2, 0xeac04bc0, 0x3791, 0x11d2, 0xbb,0x95, 0x00,0x60,0x97,0x7b,0x46,0x4c); 7664 #if defined(__cplusplus) && !defined(CINTERFACE) 7665 MIDL_INTERFACE("eac04bc0-3791-11d2-bb95-0060977b464c") 7666 IAutoComplete2 : public IAutoComplete 7667 { 7668 virtual HRESULT STDMETHODCALLTYPE SetOptions( 7669 DWORD dwFlag) = 0; 7670 7671 virtual HRESULT STDMETHODCALLTYPE GetOptions( 7672 DWORD *pdwFlag) = 0; 7673 7674 }; 7675 #ifdef __CRT_UUID_DECL 7676 __CRT_UUID_DECL(IAutoComplete2, 0xeac04bc0, 0x3791, 0x11d2, 0xbb,0x95, 0x00,0x60,0x97,0x7b,0x46,0x4c) 7677 #endif 7678 #else 7679 typedef struct IAutoComplete2Vtbl { 7680 BEGIN_INTERFACE 7681 7682 /*** IUnknown methods ***/ 7683 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7684 IAutoComplete2 *This, 7685 REFIID riid, 7686 void **ppvObject); 7687 7688 ULONG (STDMETHODCALLTYPE *AddRef)( 7689 IAutoComplete2 *This); 7690 7691 ULONG (STDMETHODCALLTYPE *Release)( 7692 IAutoComplete2 *This); 7693 7694 /*** IAutoComplete methods ***/ 7695 HRESULT (STDMETHODCALLTYPE *Init)( 7696 IAutoComplete2 *This, 7697 HWND hwndEdit, 7698 IUnknown *punkACL, 7699 LPCWSTR pwszRegKeyPath, 7700 LPCWSTR pwszQuickComplete); 7701 7702 HRESULT (STDMETHODCALLTYPE *Enable)( 7703 IAutoComplete2 *This, 7704 WINBOOL fEnable); 7705 7706 /*** IAutoComplete2 methods ***/ 7707 HRESULT (STDMETHODCALLTYPE *SetOptions)( 7708 IAutoComplete2 *This, 7709 DWORD dwFlag); 7710 7711 HRESULT (STDMETHODCALLTYPE *GetOptions)( 7712 IAutoComplete2 *This, 7713 DWORD *pdwFlag); 7714 7715 END_INTERFACE 7716 } IAutoComplete2Vtbl; 7717 7718 interface IAutoComplete2 { 7719 CONST_VTBL IAutoComplete2Vtbl* lpVtbl; 7720 }; 7721 7722 #ifdef COBJMACROS 7723 #ifndef WIDL_C_INLINE_WRAPPERS 7724 /*** IUnknown methods ***/ 7725 #define IAutoComplete2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7726 #define IAutoComplete2_AddRef(This) (This)->lpVtbl->AddRef(This) 7727 #define IAutoComplete2_Release(This) (This)->lpVtbl->Release(This) 7728 /*** IAutoComplete methods ***/ 7729 #define IAutoComplete2_Init(This,hwndEdit,punkACL,pwszRegKeyPath,pwszQuickComplete) (This)->lpVtbl->Init(This,hwndEdit,punkACL,pwszRegKeyPath,pwszQuickComplete) 7730 #define IAutoComplete2_Enable(This,fEnable) (This)->lpVtbl->Enable(This,fEnable) 7731 /*** IAutoComplete2 methods ***/ 7732 #define IAutoComplete2_SetOptions(This,dwFlag) (This)->lpVtbl->SetOptions(This,dwFlag) 7733 #define IAutoComplete2_GetOptions(This,pdwFlag) (This)->lpVtbl->GetOptions(This,pdwFlag) 7734 #else 7735 /*** IUnknown methods ***/ 7736 static FORCEINLINE HRESULT IAutoComplete2_QueryInterface(IAutoComplete2* This,REFIID riid,void **ppvObject) { 7737 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7738 } 7739 static FORCEINLINE ULONG IAutoComplete2_AddRef(IAutoComplete2* This) { 7740 return This->lpVtbl->AddRef(This); 7741 } 7742 static FORCEINLINE ULONG IAutoComplete2_Release(IAutoComplete2* This) { 7743 return This->lpVtbl->Release(This); 7744 } 7745 /*** IAutoComplete methods ***/ 7746 static FORCEINLINE HRESULT IAutoComplete2_Init(IAutoComplete2* This,HWND hwndEdit,IUnknown *punkACL,LPCWSTR pwszRegKeyPath,LPCWSTR pwszQuickComplete) { 7747 return This->lpVtbl->Init(This,hwndEdit,punkACL,pwszRegKeyPath,pwszQuickComplete); 7748 } 7749 static FORCEINLINE HRESULT IAutoComplete2_Enable(IAutoComplete2* This,WINBOOL fEnable) { 7750 return This->lpVtbl->Enable(This,fEnable); 7751 } 7752 /*** IAutoComplete2 methods ***/ 7753 static FORCEINLINE HRESULT IAutoComplete2_SetOptions(IAutoComplete2* This,DWORD dwFlag) { 7754 return This->lpVtbl->SetOptions(This,dwFlag); 7755 } 7756 static FORCEINLINE HRESULT IAutoComplete2_GetOptions(IAutoComplete2* This,DWORD *pdwFlag) { 7757 return This->lpVtbl->GetOptions(This,pdwFlag); 7758 } 7759 #endif 7760 #endif 7761 7762 #endif 7763 7764 7765 #endif /* __IAutoComplete2_INTERFACE_DEFINED__ */ 7766 7767 7768 /***************************************************************************** 7769 * IEnumACString interface 7770 */ 7771 #ifndef __IEnumACString_INTERFACE_DEFINED__ 7772 #define __IEnumACString_INTERFACE_DEFINED__ 7773 7774 typedef IEnumACString *PENUMACSTRING; 7775 typedef IEnumACString *LPENUMACSTRING; 7776 typedef enum _tagACENUMOPTION { 7777 ACEO_NONE = 0x0, 7778 ACEO_MOSTRECENTFIRST = 0x1, 7779 ACEO_FIRSTUNUSED = 0x10000 7780 } ACENUMOPTION; 7781 DEFINE_GUID(IID_IEnumACString, 0x8e74c210, 0xcf9d, 0x4eaf, 0xa4,0x03, 0x73,0x56,0x42,0x8f,0x0a,0x5a); 7782 #if defined(__cplusplus) && !defined(CINTERFACE) 7783 MIDL_INTERFACE("8e74c210-cf9d-4eaf-a403-7356428f0a5a") 7784 IEnumACString : public IEnumString 7785 { 7786 virtual HRESULT STDMETHODCALLTYPE NextItem( 7787 LPWSTR pszUrl, 7788 ULONG cchMax, 7789 ULONG *pulSortIndex) = 0; 7790 7791 virtual HRESULT STDMETHODCALLTYPE SetEnumOptions( 7792 DWORD dwOptions) = 0; 7793 7794 virtual HRESULT STDMETHODCALLTYPE GetEnumOptions( 7795 DWORD *pdwOptions) = 0; 7796 7797 }; 7798 #ifdef __CRT_UUID_DECL 7799 __CRT_UUID_DECL(IEnumACString, 0x8e74c210, 0xcf9d, 0x4eaf, 0xa4,0x03, 0x73,0x56,0x42,0x8f,0x0a,0x5a) 7800 #endif 7801 #else 7802 typedef struct IEnumACStringVtbl { 7803 BEGIN_INTERFACE 7804 7805 /*** IUnknown methods ***/ 7806 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7807 IEnumACString *This, 7808 REFIID riid, 7809 void **ppvObject); 7810 7811 ULONG (STDMETHODCALLTYPE *AddRef)( 7812 IEnumACString *This); 7813 7814 ULONG (STDMETHODCALLTYPE *Release)( 7815 IEnumACString *This); 7816 7817 /*** IEnumString methods ***/ 7818 HRESULT (STDMETHODCALLTYPE *Next)( 7819 IEnumACString *This, 7820 ULONG celt, 7821 LPOLESTR *rgelt, 7822 ULONG *pceltFetched); 7823 7824 HRESULT (STDMETHODCALLTYPE *Skip)( 7825 IEnumACString *This, 7826 ULONG celt); 7827 7828 HRESULT (STDMETHODCALLTYPE *Reset)( 7829 IEnumACString *This); 7830 7831 HRESULT (STDMETHODCALLTYPE *Clone)( 7832 IEnumACString *This, 7833 IEnumString **ppenum); 7834 7835 /*** IEnumACString methods ***/ 7836 HRESULT (STDMETHODCALLTYPE *NextItem)( 7837 IEnumACString *This, 7838 LPWSTR pszUrl, 7839 ULONG cchMax, 7840 ULONG *pulSortIndex); 7841 7842 HRESULT (STDMETHODCALLTYPE *SetEnumOptions)( 7843 IEnumACString *This, 7844 DWORD dwOptions); 7845 7846 HRESULT (STDMETHODCALLTYPE *GetEnumOptions)( 7847 IEnumACString *This, 7848 DWORD *pdwOptions); 7849 7850 END_INTERFACE 7851 } IEnumACStringVtbl; 7852 7853 interface IEnumACString { 7854 CONST_VTBL IEnumACStringVtbl* lpVtbl; 7855 }; 7856 7857 #ifdef COBJMACROS 7858 #ifndef WIDL_C_INLINE_WRAPPERS 7859 /*** IUnknown methods ***/ 7860 #define IEnumACString_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7861 #define IEnumACString_AddRef(This) (This)->lpVtbl->AddRef(This) 7862 #define IEnumACString_Release(This) (This)->lpVtbl->Release(This) 7863 /*** IEnumString methods ***/ 7864 #define IEnumACString_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) 7865 #define IEnumACString_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 7866 #define IEnumACString_Reset(This) (This)->lpVtbl->Reset(This) 7867 #define IEnumACString_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) 7868 /*** IEnumACString methods ***/ 7869 #define IEnumACString_NextItem(This,pszUrl,cchMax,pulSortIndex) (This)->lpVtbl->NextItem(This,pszUrl,cchMax,pulSortIndex) 7870 #define IEnumACString_SetEnumOptions(This,dwOptions) (This)->lpVtbl->SetEnumOptions(This,dwOptions) 7871 #define IEnumACString_GetEnumOptions(This,pdwOptions) (This)->lpVtbl->GetEnumOptions(This,pdwOptions) 7872 #else 7873 /*** IUnknown methods ***/ 7874 static FORCEINLINE HRESULT IEnumACString_QueryInterface(IEnumACString* This,REFIID riid,void **ppvObject) { 7875 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7876 } 7877 static FORCEINLINE ULONG IEnumACString_AddRef(IEnumACString* This) { 7878 return This->lpVtbl->AddRef(This); 7879 } 7880 static FORCEINLINE ULONG IEnumACString_Release(IEnumACString* This) { 7881 return This->lpVtbl->Release(This); 7882 } 7883 /*** IEnumString methods ***/ 7884 static FORCEINLINE HRESULT IEnumACString_Next(IEnumACString* This,ULONG celt,LPOLESTR *rgelt,ULONG *pceltFetched) { 7885 return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); 7886 } 7887 static FORCEINLINE HRESULT IEnumACString_Skip(IEnumACString* This,ULONG celt) { 7888 return This->lpVtbl->Skip(This,celt); 7889 } 7890 static FORCEINLINE HRESULT IEnumACString_Reset(IEnumACString* This) { 7891 return This->lpVtbl->Reset(This); 7892 } 7893 static FORCEINLINE HRESULT IEnumACString_Clone(IEnumACString* This,IEnumString **ppenum) { 7894 return This->lpVtbl->Clone(This,ppenum); 7895 } 7896 /*** IEnumACString methods ***/ 7897 static FORCEINLINE HRESULT IEnumACString_NextItem(IEnumACString* This,LPWSTR pszUrl,ULONG cchMax,ULONG *pulSortIndex) { 7898 return This->lpVtbl->NextItem(This,pszUrl,cchMax,pulSortIndex); 7899 } 7900 static FORCEINLINE HRESULT IEnumACString_SetEnumOptions(IEnumACString* This,DWORD dwOptions) { 7901 return This->lpVtbl->SetEnumOptions(This,dwOptions); 7902 } 7903 static FORCEINLINE HRESULT IEnumACString_GetEnumOptions(IEnumACString* This,DWORD *pdwOptions) { 7904 return This->lpVtbl->GetEnumOptions(This,pdwOptions); 7905 } 7906 #endif 7907 #endif 7908 7909 #endif 7910 7911 7912 #endif /* __IEnumACString_INTERFACE_DEFINED__ */ 7913 7914 /***************************************************************************** 7915 * IDataObjectAsyncCapability interface 7916 */ 7917 #ifndef __IDataObjectAsyncCapability_INTERFACE_DEFINED__ 7918 #define __IDataObjectAsyncCapability_INTERFACE_DEFINED__ 7919 7920 DEFINE_GUID(IID_IDataObjectAsyncCapability, 0x3d8b0590, 0xf691, 0x11d2, 0x8e,0xa9, 0x00,0x60,0x97,0xdf,0x5b,0xd4); 7921 #if defined(__cplusplus) && !defined(CINTERFACE) 7922 MIDL_INTERFACE("3d8b0590-f691-11d2-8ea9-006097df5bd4") 7923 IDataObjectAsyncCapability : public IUnknown 7924 { 7925 virtual HRESULT STDMETHODCALLTYPE SetAsyncMode( 7926 WINBOOL fDoOpAsync) = 0; 7927 7928 virtual HRESULT STDMETHODCALLTYPE GetAsyncMode( 7929 WINBOOL *pfIsOpAsync) = 0; 7930 7931 virtual HRESULT STDMETHODCALLTYPE StartOperation( 7932 IBindCtx *pbcReserved) = 0; 7933 7934 virtual HRESULT STDMETHODCALLTYPE InOperation( 7935 WINBOOL *pfInAsyncOp) = 0; 7936 7937 virtual HRESULT STDMETHODCALLTYPE EndOperation( 7938 HRESULT hResult, 7939 IBindCtx *pbcReserved, 7940 DWORD dwEffects) = 0; 7941 7942 }; 7943 #ifdef __CRT_UUID_DECL 7944 __CRT_UUID_DECL(IDataObjectAsyncCapability, 0x3d8b0590, 0xf691, 0x11d2, 0x8e,0xa9, 0x00,0x60,0x97,0xdf,0x5b,0xd4) 7945 #endif 7946 #else 7947 typedef struct IDataObjectAsyncCapabilityVtbl { 7948 BEGIN_INTERFACE 7949 7950 /*** IUnknown methods ***/ 7951 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7952 IDataObjectAsyncCapability *This, 7953 REFIID riid, 7954 void **ppvObject); 7955 7956 ULONG (STDMETHODCALLTYPE *AddRef)( 7957 IDataObjectAsyncCapability *This); 7958 7959 ULONG (STDMETHODCALLTYPE *Release)( 7960 IDataObjectAsyncCapability *This); 7961 7962 /*** IDataObjectAsyncCapability methods ***/ 7963 HRESULT (STDMETHODCALLTYPE *SetAsyncMode)( 7964 IDataObjectAsyncCapability *This, 7965 WINBOOL fDoOpAsync); 7966 7967 HRESULT (STDMETHODCALLTYPE *GetAsyncMode)( 7968 IDataObjectAsyncCapability *This, 7969 WINBOOL *pfIsOpAsync); 7970 7971 HRESULT (STDMETHODCALLTYPE *StartOperation)( 7972 IDataObjectAsyncCapability *This, 7973 IBindCtx *pbcReserved); 7974 7975 HRESULT (STDMETHODCALLTYPE *InOperation)( 7976 IDataObjectAsyncCapability *This, 7977 WINBOOL *pfInAsyncOp); 7978 7979 HRESULT (STDMETHODCALLTYPE *EndOperation)( 7980 IDataObjectAsyncCapability *This, 7981 HRESULT hResult, 7982 IBindCtx *pbcReserved, 7983 DWORD dwEffects); 7984 7985 END_INTERFACE 7986 } IDataObjectAsyncCapabilityVtbl; 7987 7988 interface IDataObjectAsyncCapability { 7989 CONST_VTBL IDataObjectAsyncCapabilityVtbl* lpVtbl; 7990 }; 7991 7992 #ifdef COBJMACROS 7993 #ifndef WIDL_C_INLINE_WRAPPERS 7994 /*** IUnknown methods ***/ 7995 #define IDataObjectAsyncCapability_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7996 #define IDataObjectAsyncCapability_AddRef(This) (This)->lpVtbl->AddRef(This) 7997 #define IDataObjectAsyncCapability_Release(This) (This)->lpVtbl->Release(This) 7998 /*** IDataObjectAsyncCapability methods ***/ 7999 #define IDataObjectAsyncCapability_SetAsyncMode(This,fDoOpAsync) (This)->lpVtbl->SetAsyncMode(This,fDoOpAsync) 8000 #define IDataObjectAsyncCapability_GetAsyncMode(This,pfIsOpAsync) (This)->lpVtbl->GetAsyncMode(This,pfIsOpAsync) 8001 #define IDataObjectAsyncCapability_StartOperation(This,pbcReserved) (This)->lpVtbl->StartOperation(This,pbcReserved) 8002 #define IDataObjectAsyncCapability_InOperation(This,pfInAsyncOp) (This)->lpVtbl->InOperation(This,pfInAsyncOp) 8003 #define IDataObjectAsyncCapability_EndOperation(This,hResult,pbcReserved,dwEffects) (This)->lpVtbl->EndOperation(This,hResult,pbcReserved,dwEffects) 8004 #else 8005 /*** IUnknown methods ***/ 8006 static FORCEINLINE HRESULT IDataObjectAsyncCapability_QueryInterface(IDataObjectAsyncCapability* This,REFIID riid,void **ppvObject) { 8007 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 8008 } 8009 static FORCEINLINE ULONG IDataObjectAsyncCapability_AddRef(IDataObjectAsyncCapability* This) { 8010 return This->lpVtbl->AddRef(This); 8011 } 8012 static FORCEINLINE ULONG IDataObjectAsyncCapability_Release(IDataObjectAsyncCapability* This) { 8013 return This->lpVtbl->Release(This); 8014 } 8015 /*** IDataObjectAsyncCapability methods ***/ 8016 static FORCEINLINE HRESULT IDataObjectAsyncCapability_SetAsyncMode(IDataObjectAsyncCapability* This,WINBOOL fDoOpAsync) { 8017 return This->lpVtbl->SetAsyncMode(This,fDoOpAsync); 8018 } 8019 static FORCEINLINE HRESULT IDataObjectAsyncCapability_GetAsyncMode(IDataObjectAsyncCapability* This,WINBOOL *pfIsOpAsync) { 8020 return This->lpVtbl->GetAsyncMode(This,pfIsOpAsync); 8021 } 8022 static FORCEINLINE HRESULT IDataObjectAsyncCapability_StartOperation(IDataObjectAsyncCapability* This,IBindCtx *pbcReserved) { 8023 return This->lpVtbl->StartOperation(This,pbcReserved); 8024 } 8025 static FORCEINLINE HRESULT IDataObjectAsyncCapability_InOperation(IDataObjectAsyncCapability* This,WINBOOL *pfInAsyncOp) { 8026 return This->lpVtbl->InOperation(This,pfInAsyncOp); 8027 } 8028 static FORCEINLINE HRESULT IDataObjectAsyncCapability_EndOperation(IDataObjectAsyncCapability* This,HRESULT hResult,IBindCtx *pbcReserved,DWORD dwEffects) { 8029 return This->lpVtbl->EndOperation(This,hResult,pbcReserved,dwEffects); 8030 } 8031 #endif 8032 #endif 8033 8034 #endif 8035 8036 8037 #endif /* __IDataObjectAsyncCapability_INTERFACE_DEFINED__ */ 8038 8039 #endif 8040 /* Begin additional prototypes for all interfaces */ 8041 8042 ULONG __RPC_USER BSTR_UserSize (ULONG *, ULONG, BSTR *); 8043 unsigned char * __RPC_USER BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *); 8044 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *); 8045 void __RPC_USER BSTR_UserFree (ULONG *, BSTR *); 8046 ULONG __RPC_USER VARIANT_UserSize (ULONG *, ULONG, VARIANT *); 8047 unsigned char * __RPC_USER VARIANT_UserMarshal (ULONG *, unsigned char *, VARIANT *); 8048 unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *); 8049 void __RPC_USER VARIANT_UserFree (ULONG *, VARIANT *); 8050 8051 /* End additional prototypes */ 8052 8053 #ifdef __cplusplus 8054 } 8055 #endif 8056 8057 #endif /* __shldisp_h__ */ 8058