1 /*** Autogenerated by WIDL 1.6 from include/shobjidl.idl - Do not edit ***/ 2 3 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 4 #define __REQUIRED_RPCNDR_H_VERSION__ 475 5 #endif 6 7 #include <rpc.h> 8 #include <rpcndr.h> 9 10 #ifndef COM_NO_WINDOWS_H 11 #include <windows.h> 12 #include <ole2.h> 13 #endif 14 15 #ifndef __shobjidl_h__ 16 #define __shobjidl_h__ 17 18 /* Forward declarations */ 19 20 #ifndef __IContextMenu_FWD_DEFINED__ 21 #define __IContextMenu_FWD_DEFINED__ 22 typedef interface IContextMenu IContextMenu; 23 #endif 24 25 #ifndef __IContextMenu2_FWD_DEFINED__ 26 #define __IContextMenu2_FWD_DEFINED__ 27 typedef interface IContextMenu2 IContextMenu2; 28 #endif 29 30 #ifndef __IContextMenu3_FWD_DEFINED__ 31 #define __IContextMenu3_FWD_DEFINED__ 32 typedef interface IContextMenu3 IContextMenu3; 33 #endif 34 35 #ifndef __IExecuteCommand_FWD_DEFINED__ 36 #define __IExecuteCommand_FWD_DEFINED__ 37 typedef interface IExecuteCommand IExecuteCommand; 38 #endif 39 40 #ifndef __IPersistFolder_FWD_DEFINED__ 41 #define __IPersistFolder_FWD_DEFINED__ 42 typedef interface IPersistFolder IPersistFolder; 43 #endif 44 45 #ifndef __IRunnableTask_FWD_DEFINED__ 46 #define __IRunnableTask_FWD_DEFINED__ 47 typedef interface IRunnableTask IRunnableTask; 48 #endif 49 50 #ifndef __IShellTaskScheduler_FWD_DEFINED__ 51 #define __IShellTaskScheduler_FWD_DEFINED__ 52 typedef interface IShellTaskScheduler IShellTaskScheduler; 53 #endif 54 55 #ifndef __IQueryCodePage_FWD_DEFINED__ 56 #define __IQueryCodePage_FWD_DEFINED__ 57 typedef interface IQueryCodePage IQueryCodePage; 58 #endif 59 60 #ifndef __IPersistFolder2_FWD_DEFINED__ 61 #define __IPersistFolder2_FWD_DEFINED__ 62 typedef interface IPersistFolder2 IPersistFolder2; 63 #endif 64 65 #ifndef __IPersistFolder3_FWD_DEFINED__ 66 #define __IPersistFolder3_FWD_DEFINED__ 67 typedef interface IPersistFolder3 IPersistFolder3; 68 #endif 69 70 #ifndef __IPersistIDList_FWD_DEFINED__ 71 #define __IPersistIDList_FWD_DEFINED__ 72 typedef interface IPersistIDList IPersistIDList; 73 #endif 74 75 #ifndef __IEnumIDList_FWD_DEFINED__ 76 #define __IEnumIDList_FWD_DEFINED__ 77 typedef interface IEnumIDList IEnumIDList; 78 #endif 79 80 #ifndef __IEnumFullIDList_FWD_DEFINED__ 81 #define __IEnumFullIDList_FWD_DEFINED__ 82 typedef interface IEnumFullIDList IEnumFullIDList; 83 #endif 84 85 #ifndef __IObjectWithFolderEnumMode_FWD_DEFINED__ 86 #define __IObjectWithFolderEnumMode_FWD_DEFINED__ 87 typedef interface IObjectWithFolderEnumMode IObjectWithFolderEnumMode; 88 #endif 89 90 #ifndef __IParseAndCreateItem_FWD_DEFINED__ 91 #define __IParseAndCreateItem_FWD_DEFINED__ 92 typedef interface IParseAndCreateItem IParseAndCreateItem; 93 #endif 94 95 #ifndef __IShellFolder_FWD_DEFINED__ 96 #define __IShellFolder_FWD_DEFINED__ 97 typedef interface IShellFolder IShellFolder; 98 #endif 99 100 #ifndef __IEnumExtraSearch_FWD_DEFINED__ 101 #define __IEnumExtraSearch_FWD_DEFINED__ 102 typedef interface IEnumExtraSearch IEnumExtraSearch; 103 #endif 104 105 #ifndef __IShellFolder2_FWD_DEFINED__ 106 #define __IShellFolder2_FWD_DEFINED__ 107 typedef interface IShellFolder2 IShellFolder2; 108 #endif 109 110 #ifndef __IFolderViewOptions_FWD_DEFINED__ 111 #define __IFolderViewOptions_FWD_DEFINED__ 112 typedef interface IFolderViewOptions IFolderViewOptions; 113 #endif 114 115 #ifndef __IShellView_FWD_DEFINED__ 116 #define __IShellView_FWD_DEFINED__ 117 typedef interface IShellView IShellView; 118 #endif 119 120 #ifndef __IShellView2_FWD_DEFINED__ 121 #define __IShellView2_FWD_DEFINED__ 122 typedef interface IShellView2 IShellView2; 123 #endif 124 125 #ifndef __IShellView3_FWD_DEFINED__ 126 #define __IShellView3_FWD_DEFINED__ 127 typedef interface IShellView3 IShellView3; 128 #endif 129 130 #ifndef __IFolderView_FWD_DEFINED__ 131 #define __IFolderView_FWD_DEFINED__ 132 typedef interface IFolderView IFolderView; 133 #endif 134 135 #ifndef __ISearchBoxInfo_FWD_DEFINED__ 136 #define __ISearchBoxInfo_FWD_DEFINED__ 137 typedef interface ISearchBoxInfo ISearchBoxInfo; 138 #endif 139 140 #ifndef __IFolderView2_FWD_DEFINED__ 141 #define __IFolderView2_FWD_DEFINED__ 142 typedef interface IFolderView2 IFolderView2; 143 #endif 144 145 #ifndef __IFolderViewSettings_FWD_DEFINED__ 146 #define __IFolderViewSettings_FWD_DEFINED__ 147 typedef interface IFolderViewSettings IFolderViewSettings; 148 #endif 149 150 #ifndef __IPreviewHandlerVisuals_FWD_DEFINED__ 151 #define __IPreviewHandlerVisuals_FWD_DEFINED__ 152 typedef interface IPreviewHandlerVisuals IPreviewHandlerVisuals; 153 #endif 154 155 #ifndef __IVisualProperties_FWD_DEFINED__ 156 #define __IVisualProperties_FWD_DEFINED__ 157 typedef interface IVisualProperties IVisualProperties; 158 #endif 159 160 #ifndef __ICommDlgBrowser_FWD_DEFINED__ 161 #define __ICommDlgBrowser_FWD_DEFINED__ 162 typedef interface ICommDlgBrowser ICommDlgBrowser; 163 #endif 164 165 #ifndef __ICommDlgBrowser2_FWD_DEFINED__ 166 #define __ICommDlgBrowser2_FWD_DEFINED__ 167 typedef interface ICommDlgBrowser2 ICommDlgBrowser2; 168 #endif 169 170 #ifndef __ICommDlgBrowser3_FWD_DEFINED__ 171 #define __ICommDlgBrowser3_FWD_DEFINED__ 172 typedef interface ICommDlgBrowser3 ICommDlgBrowser3; 173 #endif 174 175 #ifndef __IColumnManager_FWD_DEFINED__ 176 #define __IColumnManager_FWD_DEFINED__ 177 typedef interface IColumnManager IColumnManager; 178 #endif 179 180 #ifndef __IFolderFilterSite_FWD_DEFINED__ 181 #define __IFolderFilterSite_FWD_DEFINED__ 182 typedef interface IFolderFilterSite IFolderFilterSite; 183 #endif 184 185 #ifndef __IFolderFilter_FWD_DEFINED__ 186 #define __IFolderFilter_FWD_DEFINED__ 187 typedef interface IFolderFilter IFolderFilter; 188 #endif 189 190 #ifndef __IInputObjectSite_FWD_DEFINED__ 191 #define __IInputObjectSite_FWD_DEFINED__ 192 typedef interface IInputObjectSite IInputObjectSite; 193 #endif 194 195 #ifndef __IInputObject_FWD_DEFINED__ 196 #define __IInputObject_FWD_DEFINED__ 197 typedef interface IInputObject IInputObject; 198 #endif 199 200 #ifndef __IInputObject2_FWD_DEFINED__ 201 #define __IInputObject2_FWD_DEFINED__ 202 typedef interface IInputObject2 IInputObject2; 203 #endif 204 205 #ifndef __IShellIcon_FWD_DEFINED__ 206 #define __IShellIcon_FWD_DEFINED__ 207 typedef interface IShellIcon IShellIcon; 208 #endif 209 210 #ifndef __IShellBrowser_FWD_DEFINED__ 211 #define __IShellBrowser_FWD_DEFINED__ 212 typedef interface IShellBrowser IShellBrowser; 213 #endif 214 215 #ifndef __IProfferService_FWD_DEFINED__ 216 #define __IProfferService_FWD_DEFINED__ 217 typedef interface IProfferService IProfferService; 218 #endif 219 220 #ifndef __IShellItem_FWD_DEFINED__ 221 #define __IShellItem_FWD_DEFINED__ 222 typedef interface IShellItem IShellItem; 223 #endif 224 225 #ifndef __IShellItem2_FWD_DEFINED__ 226 #define __IShellItem2_FWD_DEFINED__ 227 typedef interface IShellItem2 IShellItem2; 228 #endif 229 230 #ifndef __IShellItemImageFactory_FWD_DEFINED__ 231 #define __IShellItemImageFactory_FWD_DEFINED__ 232 typedef interface IShellItemImageFactory IShellItemImageFactory; 233 #endif 234 235 #ifndef __IUserAccountChangeCallback_FWD_DEFINED__ 236 #define __IUserAccountChangeCallback_FWD_DEFINED__ 237 typedef interface IUserAccountChangeCallback IUserAccountChangeCallback; 238 #endif 239 240 #ifndef __IEnumShellItems_FWD_DEFINED__ 241 #define __IEnumShellItems_FWD_DEFINED__ 242 typedef interface IEnumShellItems IEnumShellItems; 243 #endif 244 245 #ifndef __ITransferAdviseSink_FWD_DEFINED__ 246 #define __ITransferAdviseSink_FWD_DEFINED__ 247 typedef interface ITransferAdviseSink ITransferAdviseSink; 248 #endif 249 250 #ifndef __ITransferSource_FWD_DEFINED__ 251 #define __ITransferSource_FWD_DEFINED__ 252 typedef interface ITransferSource ITransferSource; 253 #endif 254 255 #ifndef __IEnumResources_FWD_DEFINED__ 256 #define __IEnumResources_FWD_DEFINED__ 257 typedef interface IEnumResources IEnumResources; 258 #endif 259 260 #ifndef __IShellItemResources_FWD_DEFINED__ 261 #define __IShellItemResources_FWD_DEFINED__ 262 typedef interface IShellItemResources IShellItemResources; 263 #endif 264 265 #ifndef __ITransferDestination_FWD_DEFINED__ 266 #define __ITransferDestination_FWD_DEFINED__ 267 typedef interface ITransferDestination ITransferDestination; 268 #endif 269 270 #ifndef __IStreamAsync_FWD_DEFINED__ 271 #define __IStreamAsync_FWD_DEFINED__ 272 typedef interface IStreamAsync IStreamAsync; 273 #endif 274 275 #ifndef __IStreamUnbufferedInfo_FWD_DEFINED__ 276 #define __IStreamUnbufferedInfo_FWD_DEFINED__ 277 typedef interface IStreamUnbufferedInfo IStreamUnbufferedInfo; 278 #endif 279 280 #ifndef __IFileOperationProgressSink_FWD_DEFINED__ 281 #define __IFileOperationProgressSink_FWD_DEFINED__ 282 typedef interface IFileOperationProgressSink IFileOperationProgressSink; 283 #endif 284 285 #ifndef __IShellItemArray_FWD_DEFINED__ 286 #define __IShellItemArray_FWD_DEFINED__ 287 typedef interface IShellItemArray IShellItemArray; 288 #endif 289 290 #ifndef __IInitializeWithItem_FWD_DEFINED__ 291 #define __IInitializeWithItem_FWD_DEFINED__ 292 typedef interface IInitializeWithItem IInitializeWithItem; 293 #endif 294 295 #ifndef __IObjectWithSelection_FWD_DEFINED__ 296 #define __IObjectWithSelection_FWD_DEFINED__ 297 typedef interface IObjectWithSelection IObjectWithSelection; 298 #endif 299 300 #ifndef __IObjectWithBackReferences_FWD_DEFINED__ 301 #define __IObjectWithBackReferences_FWD_DEFINED__ 302 typedef interface IObjectWithBackReferences IObjectWithBackReferences; 303 #endif 304 305 #ifndef __IPropertyUI_FWD_DEFINED__ 306 #define __IPropertyUI_FWD_DEFINED__ 307 typedef interface IPropertyUI IPropertyUI; 308 #endif 309 310 #ifndef __ICategoryProvider_FWD_DEFINED__ 311 #define __ICategoryProvider_FWD_DEFINED__ 312 typedef interface ICategoryProvider ICategoryProvider; 313 #endif 314 315 #ifndef __ICategorizer_FWD_DEFINED__ 316 #define __ICategorizer_FWD_DEFINED__ 317 typedef interface ICategorizer ICategorizer; 318 #endif 319 320 #ifndef __IDropTargetHelper_FWD_DEFINED__ 321 #define __IDropTargetHelper_FWD_DEFINED__ 322 typedef interface IDropTargetHelper IDropTargetHelper; 323 #endif 324 325 #ifndef __IDragSourceHelper_FWD_DEFINED__ 326 #define __IDragSourceHelper_FWD_DEFINED__ 327 typedef interface IDragSourceHelper IDragSourceHelper; 328 #endif 329 330 #ifndef __IDragSourceHelper2_FWD_DEFINED__ 331 #define __IDragSourceHelper2_FWD_DEFINED__ 332 typedef interface IDragSourceHelper2 IDragSourceHelper2; 333 #endif 334 335 #ifndef __IShellLinkA_FWD_DEFINED__ 336 #define __IShellLinkA_FWD_DEFINED__ 337 typedef interface IShellLinkA IShellLinkA; 338 #endif 339 340 #ifndef __IShellLinkW_FWD_DEFINED__ 341 #define __IShellLinkW_FWD_DEFINED__ 342 typedef interface IShellLinkW IShellLinkW; 343 #endif 344 345 #ifndef __IShellLinkDataList_FWD_DEFINED__ 346 #define __IShellLinkDataList_FWD_DEFINED__ 347 typedef interface IShellLinkDataList IShellLinkDataList; 348 #endif 349 350 #ifndef __IResolveShellLink_FWD_DEFINED__ 351 #define __IResolveShellLink_FWD_DEFINED__ 352 typedef interface IResolveShellLink IResolveShellLink; 353 #endif 354 355 #ifndef __IActionProgressDialog_FWD_DEFINED__ 356 #define __IActionProgressDialog_FWD_DEFINED__ 357 typedef interface IActionProgressDialog IActionProgressDialog; 358 #endif 359 360 #ifndef __IHWEventHandler_FWD_DEFINED__ 361 #define __IHWEventHandler_FWD_DEFINED__ 362 typedef interface IHWEventHandler IHWEventHandler; 363 #endif 364 365 #ifndef __IHWEventHandler2_FWD_DEFINED__ 366 #define __IHWEventHandler2_FWD_DEFINED__ 367 typedef interface IHWEventHandler2 IHWEventHandler2; 368 #endif 369 370 #ifndef __IQueryCancelAutoPlay_FWD_DEFINED__ 371 #define __IQueryCancelAutoPlay_FWD_DEFINED__ 372 typedef interface IQueryCancelAutoPlay IQueryCancelAutoPlay; 373 #endif 374 375 #ifndef __IDynamicHWHandler_FWD_DEFINED__ 376 #define __IDynamicHWHandler_FWD_DEFINED__ 377 typedef interface IDynamicHWHandler IDynamicHWHandler; 378 #endif 379 380 #ifndef __IActionProgress_FWD_DEFINED__ 381 #define __IActionProgress_FWD_DEFINED__ 382 typedef interface IActionProgress IActionProgress; 383 #endif 384 385 #ifndef __IShellExtInit_FWD_DEFINED__ 386 #define __IShellExtInit_FWD_DEFINED__ 387 typedef interface IShellExtInit IShellExtInit; 388 #endif 389 390 #ifndef __IShellPropSheetExt_FWD_DEFINED__ 391 #define __IShellPropSheetExt_FWD_DEFINED__ 392 typedef interface IShellPropSheetExt IShellPropSheetExt; 393 #endif 394 395 #ifndef __IRemoteComputer_FWD_DEFINED__ 396 #define __IRemoteComputer_FWD_DEFINED__ 397 typedef interface IRemoteComputer IRemoteComputer; 398 #endif 399 400 #ifndef __IQueryContinue_FWD_DEFINED__ 401 #define __IQueryContinue_FWD_DEFINED__ 402 typedef interface IQueryContinue IQueryContinue; 403 #endif 404 405 #ifndef __IObjectWithCancelEvent_FWD_DEFINED__ 406 #define __IObjectWithCancelEvent_FWD_DEFINED__ 407 typedef interface IObjectWithCancelEvent IObjectWithCancelEvent; 408 #endif 409 410 #ifndef __IUserNotification_FWD_DEFINED__ 411 #define __IUserNotification_FWD_DEFINED__ 412 typedef interface IUserNotification IUserNotification; 413 #endif 414 415 #ifndef __IUserNotificationCallback_FWD_DEFINED__ 416 #define __IUserNotificationCallback_FWD_DEFINED__ 417 typedef interface IUserNotificationCallback IUserNotificationCallback; 418 #endif 419 420 #ifndef __IUserNotification2_FWD_DEFINED__ 421 #define __IUserNotification2_FWD_DEFINED__ 422 typedef interface IUserNotification2 IUserNotification2; 423 #endif 424 425 #ifndef __IItemNameLimits_FWD_DEFINED__ 426 #define __IItemNameLimits_FWD_DEFINED__ 427 typedef interface IItemNameLimits IItemNameLimits; 428 #endif 429 430 #ifndef __ISearchFolderItemFactory_FWD_DEFINED__ 431 #define __ISearchFolderItemFactory_FWD_DEFINED__ 432 typedef interface ISearchFolderItemFactory ISearchFolderItemFactory; 433 #endif 434 435 #ifndef __IExtractImage_FWD_DEFINED__ 436 #define __IExtractImage_FWD_DEFINED__ 437 typedef interface IExtractImage IExtractImage; 438 #endif 439 440 #ifndef __IExtractImage2_FWD_DEFINED__ 441 #define __IExtractImage2_FWD_DEFINED__ 442 typedef interface IExtractImage2 IExtractImage2; 443 #endif 444 445 #ifndef __IThumbnailHandlerFactory_FWD_DEFINED__ 446 #define __IThumbnailHandlerFactory_FWD_DEFINED__ 447 typedef interface IThumbnailHandlerFactory IThumbnailHandlerFactory; 448 #endif 449 450 #ifndef __IParentAndItem_FWD_DEFINED__ 451 #define __IParentAndItem_FWD_DEFINED__ 452 typedef interface IParentAndItem IParentAndItem; 453 #endif 454 455 #ifndef __IDockingWindow_FWD_DEFINED__ 456 #define __IDockingWindow_FWD_DEFINED__ 457 typedef interface IDockingWindow IDockingWindow; 458 #endif 459 460 #ifndef __IDeskBand_FWD_DEFINED__ 461 #define __IDeskBand_FWD_DEFINED__ 462 typedef interface IDeskBand IDeskBand; 463 #endif 464 465 #ifndef __IDeskBandInfo_FWD_DEFINED__ 466 #define __IDeskBandInfo_FWD_DEFINED__ 467 typedef interface IDeskBandInfo IDeskBandInfo; 468 #endif 469 470 #ifndef __IDeskBand2_FWD_DEFINED__ 471 #define __IDeskBand2_FWD_DEFINED__ 472 typedef interface IDeskBand2 IDeskBand2; 473 #endif 474 475 #ifndef __ITaskbarList_FWD_DEFINED__ 476 #define __ITaskbarList_FWD_DEFINED__ 477 typedef interface ITaskbarList ITaskbarList; 478 #endif 479 480 #ifndef __ITaskbarList2_FWD_DEFINED__ 481 #define __ITaskbarList2_FWD_DEFINED__ 482 typedef interface ITaskbarList2 ITaskbarList2; 483 #endif 484 485 #ifndef __ITaskbarList3_FWD_DEFINED__ 486 #define __ITaskbarList3_FWD_DEFINED__ 487 typedef interface ITaskbarList3 ITaskbarList3; 488 #endif 489 490 #ifndef __ITaskbarList4_FWD_DEFINED__ 491 #define __ITaskbarList4_FWD_DEFINED__ 492 typedef interface ITaskbarList4 ITaskbarList4; 493 #endif 494 495 #ifndef __IStartMenuPinnedList_FWD_DEFINED__ 496 #define __IStartMenuPinnedList_FWD_DEFINED__ 497 typedef interface IStartMenuPinnedList IStartMenuPinnedList; 498 #endif 499 500 #ifndef __ICDBurn_FWD_DEFINED__ 501 #define __ICDBurn_FWD_DEFINED__ 502 typedef interface ICDBurn ICDBurn; 503 #endif 504 505 #ifndef __IWizardSite_FWD_DEFINED__ 506 #define __IWizardSite_FWD_DEFINED__ 507 typedef interface IWizardSite IWizardSite; 508 #endif 509 510 #ifndef __IWizardExtension_FWD_DEFINED__ 511 #define __IWizardExtension_FWD_DEFINED__ 512 typedef interface IWizardExtension IWizardExtension; 513 #endif 514 515 #ifndef __IWebWizardExtension_FWD_DEFINED__ 516 #define __IWebWizardExtension_FWD_DEFINED__ 517 typedef interface IWebWizardExtension IWebWizardExtension; 518 #endif 519 520 #ifndef __IPublishingWizard_FWD_DEFINED__ 521 #define __IPublishingWizard_FWD_DEFINED__ 522 typedef interface IPublishingWizard IPublishingWizard; 523 #endif 524 525 #ifndef __IFolderViewHost_FWD_DEFINED__ 526 #define __IFolderViewHost_FWD_DEFINED__ 527 typedef interface IFolderViewHost IFolderViewHost; 528 #endif 529 530 #ifndef __IExplorerBrowserEvents_FWD_DEFINED__ 531 #define __IExplorerBrowserEvents_FWD_DEFINED__ 532 typedef interface IExplorerBrowserEvents IExplorerBrowserEvents; 533 #endif 534 535 #ifndef __IExplorerBrowser_FWD_DEFINED__ 536 #define __IExplorerBrowser_FWD_DEFINED__ 537 typedef interface IExplorerBrowser IExplorerBrowser; 538 #endif 539 540 #ifndef __IAccessibleObject_FWD_DEFINED__ 541 #define __IAccessibleObject_FWD_DEFINED__ 542 typedef interface IAccessibleObject IAccessibleObject; 543 #endif 544 545 #ifndef __IResultsFolder_FWD_DEFINED__ 546 #define __IResultsFolder_FWD_DEFINED__ 547 typedef interface IResultsFolder IResultsFolder; 548 #endif 549 550 #ifndef __IEnumObjects_FWD_DEFINED__ 551 #define __IEnumObjects_FWD_DEFINED__ 552 typedef interface IEnumObjects IEnumObjects; 553 #endif 554 555 #ifndef __IOperationsProgressDialog_FWD_DEFINED__ 556 #define __IOperationsProgressDialog_FWD_DEFINED__ 557 typedef interface IOperationsProgressDialog IOperationsProgressDialog; 558 #endif 559 560 #ifndef __IIOCancelInformation_FWD_DEFINED__ 561 #define __IIOCancelInformation_FWD_DEFINED__ 562 typedef interface IIOCancelInformation IIOCancelInformation; 563 #endif 564 565 #ifndef __IFileOperation_FWD_DEFINED__ 566 #define __IFileOperation_FWD_DEFINED__ 567 typedef interface IFileOperation IFileOperation; 568 #endif 569 570 #ifndef __IObjectProvider_FWD_DEFINED__ 571 #define __IObjectProvider_FWD_DEFINED__ 572 typedef interface IObjectProvider IObjectProvider; 573 #endif 574 575 #ifndef __INamespaceWalkCB_FWD_DEFINED__ 576 #define __INamespaceWalkCB_FWD_DEFINED__ 577 typedef interface INamespaceWalkCB INamespaceWalkCB; 578 #endif 579 580 #ifndef __INamespaceWalkCB2_FWD_DEFINED__ 581 #define __INamespaceWalkCB2_FWD_DEFINED__ 582 typedef interface INamespaceWalkCB2 INamespaceWalkCB2; 583 #endif 584 585 #ifndef __INamespaceWalk_FWD_DEFINED__ 586 #define __INamespaceWalk_FWD_DEFINED__ 587 typedef interface INamespaceWalk INamespaceWalk; 588 #endif 589 590 #ifndef __IAutoCompleteDropDown_FWD_DEFINED__ 591 #define __IAutoCompleteDropDown_FWD_DEFINED__ 592 typedef interface IAutoCompleteDropDown IAutoCompleteDropDown; 593 #endif 594 595 #ifndef __IBandSite_FWD_DEFINED__ 596 #define __IBandSite_FWD_DEFINED__ 597 typedef interface IBandSite IBandSite; 598 #endif 599 600 #ifndef __IModalWindow_FWD_DEFINED__ 601 #define __IModalWindow_FWD_DEFINED__ 602 typedef interface IModalWindow IModalWindow; 603 #endif 604 605 #ifndef __ICDBurnExt_FWD_DEFINED__ 606 #define __ICDBurnExt_FWD_DEFINED__ 607 typedef interface ICDBurnExt ICDBurnExt; 608 #endif 609 610 #ifndef __IContextMenuSite_FWD_DEFINED__ 611 #define __IContextMenuSite_FWD_DEFINED__ 612 typedef interface IContextMenuSite IContextMenuSite; 613 #endif 614 615 #ifndef __IEnumReadyCallback_FWD_DEFINED__ 616 #define __IEnumReadyCallback_FWD_DEFINED__ 617 typedef interface IEnumReadyCallback IEnumReadyCallback; 618 #endif 619 620 #ifndef __IEnumerableView_FWD_DEFINED__ 621 #define __IEnumerableView_FWD_DEFINED__ 622 typedef interface IEnumerableView IEnumerableView; 623 #endif 624 625 #ifndef __IInsertItem_FWD_DEFINED__ 626 #define __IInsertItem_FWD_DEFINED__ 627 typedef interface IInsertItem IInsertItem; 628 #endif 629 630 #ifndef __IMenuBand_FWD_DEFINED__ 631 #define __IMenuBand_FWD_DEFINED__ 632 typedef interface IMenuBand IMenuBand; 633 #endif 634 635 #ifndef __IFolderBandPriv_FWD_DEFINED__ 636 #define __IFolderBandPriv_FWD_DEFINED__ 637 typedef interface IFolderBandPriv IFolderBandPriv; 638 #endif 639 640 #ifndef __IRegTreeItem_FWD_DEFINED__ 641 #define __IRegTreeItem_FWD_DEFINED__ 642 typedef interface IRegTreeItem IRegTreeItem; 643 #endif 644 645 #ifndef __IImageRecompress_FWD_DEFINED__ 646 #define __IImageRecompress_FWD_DEFINED__ 647 typedef interface IImageRecompress IImageRecompress; 648 #endif 649 650 #ifndef __IDeskBar_FWD_DEFINED__ 651 #define __IDeskBar_FWD_DEFINED__ 652 typedef interface IDeskBar IDeskBar; 653 #endif 654 655 #ifndef __IMenuPopup_FWD_DEFINED__ 656 #define __IMenuPopup_FWD_DEFINED__ 657 typedef interface IMenuPopup IMenuPopup; 658 #endif 659 660 #ifndef __IFileIsInUse_FWD_DEFINED__ 661 #define __IFileIsInUse_FWD_DEFINED__ 662 typedef interface IFileIsInUse IFileIsInUse; 663 #endif 664 665 #ifndef __IFileDialogEvents_FWD_DEFINED__ 666 #define __IFileDialogEvents_FWD_DEFINED__ 667 typedef interface IFileDialogEvents IFileDialogEvents; 668 #endif 669 670 #ifndef __IFileDialog_FWD_DEFINED__ 671 #define __IFileDialog_FWD_DEFINED__ 672 typedef interface IFileDialog IFileDialog; 673 #endif 674 675 #ifndef __IFileSaveDialog_FWD_DEFINED__ 676 #define __IFileSaveDialog_FWD_DEFINED__ 677 typedef interface IFileSaveDialog IFileSaveDialog; 678 #endif 679 680 #ifndef __IFileOpenDialog_FWD_DEFINED__ 681 #define __IFileOpenDialog_FWD_DEFINED__ 682 typedef interface IFileOpenDialog IFileOpenDialog; 683 #endif 684 685 #ifndef __IFileDialogCustomize_FWD_DEFINED__ 686 #define __IFileDialogCustomize_FWD_DEFINED__ 687 typedef interface IFileDialogCustomize IFileDialogCustomize; 688 #endif 689 690 #ifndef __IFileDialogControlEvents_FWD_DEFINED__ 691 #define __IFileDialogControlEvents_FWD_DEFINED__ 692 typedef interface IFileDialogControlEvents IFileDialogControlEvents; 693 #endif 694 695 #ifndef __IFileDialog2_FWD_DEFINED__ 696 #define __IFileDialog2_FWD_DEFINED__ 697 typedef interface IFileDialog2 IFileDialog2; 698 #endif 699 700 #ifndef __IApplicationAssociationRegistration_FWD_DEFINED__ 701 #define __IApplicationAssociationRegistration_FWD_DEFINED__ 702 typedef interface IApplicationAssociationRegistration IApplicationAssociationRegistration; 703 #endif 704 705 #ifndef __IApplicationAssociationRegistrationUI_FWD_DEFINED__ 706 #define __IApplicationAssociationRegistrationUI_FWD_DEFINED__ 707 typedef interface IApplicationAssociationRegistrationUI IApplicationAssociationRegistrationUI; 708 #endif 709 710 #ifndef __IDelegateFolder_FWD_DEFINED__ 711 #define __IDelegateFolder_FWD_DEFINED__ 712 typedef interface IDelegateFolder IDelegateFolder; 713 #endif 714 715 #ifndef __IBrowserFrameOptions_FWD_DEFINED__ 716 #define __IBrowserFrameOptions_FWD_DEFINED__ 717 typedef interface IBrowserFrameOptions IBrowserFrameOptions; 718 #endif 719 720 #ifndef __INewWindowManager_FWD_DEFINED__ 721 #define __INewWindowManager_FWD_DEFINED__ 722 typedef interface INewWindowManager INewWindowManager; 723 #endif 724 725 #ifndef __IAttachmentExecute_FWD_DEFINED__ 726 #define __IAttachmentExecute_FWD_DEFINED__ 727 typedef interface IAttachmentExecute IAttachmentExecute; 728 #endif 729 730 #ifndef __IShellMenuCallback_FWD_DEFINED__ 731 #define __IShellMenuCallback_FWD_DEFINED__ 732 typedef interface IShellMenuCallback IShellMenuCallback; 733 #endif 734 735 #ifndef __IShellMenu_FWD_DEFINED__ 736 #define __IShellMenu_FWD_DEFINED__ 737 typedef interface IShellMenu IShellMenu; 738 #endif 739 740 #ifndef __IShellRunDll_FWD_DEFINED__ 741 #define __IShellRunDll_FWD_DEFINED__ 742 typedef interface IShellRunDll IShellRunDll; 743 #endif 744 745 #ifndef __IKnownFolder_FWD_DEFINED__ 746 #define __IKnownFolder_FWD_DEFINED__ 747 typedef interface IKnownFolder IKnownFolder; 748 #endif 749 750 #ifndef __IKnownFolderManager_FWD_DEFINED__ 751 #define __IKnownFolderManager_FWD_DEFINED__ 752 typedef interface IKnownFolderManager IKnownFolderManager; 753 #endif 754 755 #ifndef __ISharingConfigurationManager_FWD_DEFINED__ 756 #define __ISharingConfigurationManager_FWD_DEFINED__ 757 typedef interface ISharingConfigurationManager ISharingConfigurationManager; 758 #endif 759 760 #ifndef __IPreviousVersionsInfo_FWD_DEFINED__ 761 #define __IPreviousVersionsInfo_FWD_DEFINED__ 762 typedef interface IPreviousVersionsInfo IPreviousVersionsInfo; 763 #endif 764 765 #ifndef __IRelatedItem_FWD_DEFINED__ 766 #define __IRelatedItem_FWD_DEFINED__ 767 typedef interface IRelatedItem IRelatedItem; 768 #endif 769 770 #ifndef __IIdentityName_FWD_DEFINED__ 771 #define __IIdentityName_FWD_DEFINED__ 772 typedef interface IIdentityName IIdentityName; 773 #endif 774 775 #ifndef __IDelegateItem_FWD_DEFINED__ 776 #define __IDelegateItem_FWD_DEFINED__ 777 typedef interface IDelegateItem IDelegateItem; 778 #endif 779 780 #ifndef __ICurrentItem_FWD_DEFINED__ 781 #define __ICurrentItem_FWD_DEFINED__ 782 typedef interface ICurrentItem ICurrentItem; 783 #endif 784 785 #ifndef __ITransferMediumItem_FWD_DEFINED__ 786 #define __ITransferMediumItem_FWD_DEFINED__ 787 typedef interface ITransferMediumItem ITransferMediumItem; 788 #endif 789 790 #ifndef __IUseToBrowseItem_FWD_DEFINED__ 791 #define __IUseToBrowseItem_FWD_DEFINED__ 792 typedef interface IUseToBrowseItem IUseToBrowseItem; 793 #endif 794 795 #ifndef __IDisplayItem_FWD_DEFINED__ 796 #define __IDisplayItem_FWD_DEFINED__ 797 typedef interface IDisplayItem IDisplayItem; 798 #endif 799 800 #ifndef __IViewStateIdentityItem_FWD_DEFINED__ 801 #define __IViewStateIdentityItem_FWD_DEFINED__ 802 typedef interface IViewStateIdentityItem IViewStateIdentityItem; 803 #endif 804 805 #ifndef __IPreviewItem_FWD_DEFINED__ 806 #define __IPreviewItem_FWD_DEFINED__ 807 typedef interface IPreviewItem IPreviewItem; 808 #endif 809 810 #ifndef __IDestinationStreamFactory_FWD_DEFINED__ 811 #define __IDestinationStreamFactory_FWD_DEFINED__ 812 typedef interface IDestinationStreamFactory IDestinationStreamFactory; 813 #endif 814 815 #ifndef __INewMenuClient_FWD_DEFINED__ 816 #define __INewMenuClient_FWD_DEFINED__ 817 typedef interface INewMenuClient INewMenuClient; 818 #endif 819 820 #ifndef __IInitializeWithBindCtx_FWD_DEFINED__ 821 #define __IInitializeWithBindCtx_FWD_DEFINED__ 822 typedef interface IInitializeWithBindCtx IInitializeWithBindCtx; 823 #endif 824 825 #ifndef __IShellItemFilter_FWD_DEFINED__ 826 #define __IShellItemFilter_FWD_DEFINED__ 827 typedef interface IShellItemFilter IShellItemFilter; 828 #endif 829 830 #ifndef __INameSpaceTreeControl_FWD_DEFINED__ 831 #define __INameSpaceTreeControl_FWD_DEFINED__ 832 typedef interface INameSpaceTreeControl INameSpaceTreeControl; 833 #endif 834 835 #ifndef __INameSpaceTreeControl2_FWD_DEFINED__ 836 #define __INameSpaceTreeControl2_FWD_DEFINED__ 837 typedef interface INameSpaceTreeControl2 INameSpaceTreeControl2; 838 #endif 839 840 #ifndef __INameSpaceTreeControlEvents_FWD_DEFINED__ 841 #define __INameSpaceTreeControlEvents_FWD_DEFINED__ 842 typedef interface INameSpaceTreeControlEvents INameSpaceTreeControlEvents; 843 #endif 844 845 #ifndef __INameSpaceTreeControlDropHandler_FWD_DEFINED__ 846 #define __INameSpaceTreeControlDropHandler_FWD_DEFINED__ 847 typedef interface INameSpaceTreeControlDropHandler INameSpaceTreeControlDropHandler; 848 #endif 849 850 #ifndef __INameSpaceTreeAccessible_FWD_DEFINED__ 851 #define __INameSpaceTreeAccessible_FWD_DEFINED__ 852 typedef interface INameSpaceTreeAccessible INameSpaceTreeAccessible; 853 #endif 854 855 #ifndef __INameSpaceTreeControlCustomDraw_FWD_DEFINED__ 856 #define __INameSpaceTreeControlCustomDraw_FWD_DEFINED__ 857 typedef interface INameSpaceTreeControlCustomDraw INameSpaceTreeControlCustomDraw; 858 #endif 859 860 #ifndef __INameSpaceTreeControlFolderCapabilities_FWD_DEFINED__ 861 #define __INameSpaceTreeControlFolderCapabilities_FWD_DEFINED__ 862 typedef interface INameSpaceTreeControlFolderCapabilities INameSpaceTreeControlFolderCapabilities; 863 #endif 864 865 #ifndef __IPreviewHandler_FWD_DEFINED__ 866 #define __IPreviewHandler_FWD_DEFINED__ 867 typedef interface IPreviewHandler IPreviewHandler; 868 #endif 869 870 #ifndef __IPreviewHandlerFrame_FWD_DEFINED__ 871 #define __IPreviewHandlerFrame_FWD_DEFINED__ 872 typedef interface IPreviewHandlerFrame IPreviewHandlerFrame; 873 #endif 874 875 #ifndef __ITrayDeskBand_FWD_DEFINED__ 876 #define __ITrayDeskBand_FWD_DEFINED__ 877 typedef interface ITrayDeskBand ITrayDeskBand; 878 #endif 879 880 #ifndef __IBandHost_FWD_DEFINED__ 881 #define __IBandHost_FWD_DEFINED__ 882 typedef interface IBandHost IBandHost; 883 #endif 884 885 #ifndef __IExplorerPaneVisibility_FWD_DEFINED__ 886 #define __IExplorerPaneVisibility_FWD_DEFINED__ 887 typedef interface IExplorerPaneVisibility IExplorerPaneVisibility; 888 #endif 889 890 #ifndef __IContextMenuCB_FWD_DEFINED__ 891 #define __IContextMenuCB_FWD_DEFINED__ 892 typedef interface IContextMenuCB IContextMenuCB; 893 #endif 894 895 #ifndef __IDefaultExtractIconInit_FWD_DEFINED__ 896 #define __IDefaultExtractIconInit_FWD_DEFINED__ 897 typedef interface IDefaultExtractIconInit IDefaultExtractIconInit; 898 #endif 899 900 #ifndef __IExplorerCommand_FWD_DEFINED__ 901 #define __IExplorerCommand_FWD_DEFINED__ 902 typedef interface IExplorerCommand IExplorerCommand; 903 #endif 904 905 #ifndef __IExplorerCommandState_FWD_DEFINED__ 906 #define __IExplorerCommandState_FWD_DEFINED__ 907 typedef interface IExplorerCommandState IExplorerCommandState; 908 #endif 909 910 #ifndef __IInitializeCommand_FWD_DEFINED__ 911 #define __IInitializeCommand_FWD_DEFINED__ 912 typedef interface IInitializeCommand IInitializeCommand; 913 #endif 914 915 #ifndef __IEnumExplorerCommand_FWD_DEFINED__ 916 #define __IEnumExplorerCommand_FWD_DEFINED__ 917 typedef interface IEnumExplorerCommand IEnumExplorerCommand; 918 #endif 919 920 #ifndef __IExplorerCommandProvider_FWD_DEFINED__ 921 #define __IExplorerCommandProvider_FWD_DEFINED__ 922 typedef interface IExplorerCommandProvider IExplorerCommandProvider; 923 #endif 924 925 #ifndef __IInitializeNetworkFolder_FWD_DEFINED__ 926 #define __IInitializeNetworkFolder_FWD_DEFINED__ 927 typedef interface IInitializeNetworkFolder IInitializeNetworkFolder; 928 #endif 929 930 #ifndef __IOpenControlPanel_FWD_DEFINED__ 931 #define __IOpenControlPanel_FWD_DEFINED__ 932 typedef interface IOpenControlPanel IOpenControlPanel; 933 #endif 934 935 #ifndef __IComputerInfoChangeNotify_FWD_DEFINED__ 936 #define __IComputerInfoChangeNotify_FWD_DEFINED__ 937 typedef interface IComputerInfoChangeNotify IComputerInfoChangeNotify; 938 #endif 939 940 #ifndef __IFileSystemBindData_FWD_DEFINED__ 941 #define __IFileSystemBindData_FWD_DEFINED__ 942 typedef interface IFileSystemBindData IFileSystemBindData; 943 #endif 944 945 #ifndef __IFileSystemBindData2_FWD_DEFINED__ 946 #define __IFileSystemBindData2_FWD_DEFINED__ 947 typedef interface IFileSystemBindData2 IFileSystemBindData2; 948 #endif 949 950 #ifndef __ICustomDestinationList_FWD_DEFINED__ 951 #define __ICustomDestinationList_FWD_DEFINED__ 952 typedef interface ICustomDestinationList ICustomDestinationList; 953 #endif 954 955 #ifndef __IApplicationDestinations_FWD_DEFINED__ 956 #define __IApplicationDestinations_FWD_DEFINED__ 957 typedef interface IApplicationDestinations IApplicationDestinations; 958 #endif 959 960 #ifndef __IApplicationDocumentLists_FWD_DEFINED__ 961 #define __IApplicationDocumentLists_FWD_DEFINED__ 962 typedef interface IApplicationDocumentLists IApplicationDocumentLists; 963 #endif 964 965 #ifndef __IObjectWithAppUserModelID_FWD_DEFINED__ 966 #define __IObjectWithAppUserModelID_FWD_DEFINED__ 967 typedef interface IObjectWithAppUserModelID IObjectWithAppUserModelID; 968 #endif 969 970 #ifndef __IObjectWithProgID_FWD_DEFINED__ 971 #define __IObjectWithProgID_FWD_DEFINED__ 972 typedef interface IObjectWithProgID IObjectWithProgID; 973 #endif 974 975 #ifndef __IUpdateIDList_FWD_DEFINED__ 976 #define __IUpdateIDList_FWD_DEFINED__ 977 typedef interface IUpdateIDList IUpdateIDList; 978 #endif 979 980 #ifndef __IDesktopGadget_FWD_DEFINED__ 981 #define __IDesktopGadget_FWD_DEFINED__ 982 typedef interface IDesktopGadget IDesktopGadget; 983 #endif 984 985 #ifndef __IDesktopWallpaper_FWD_DEFINED__ 986 #define __IDesktopWallpaper_FWD_DEFINED__ 987 typedef interface IDesktopWallpaper IDesktopWallpaper; 988 #endif 989 990 #ifndef __IHomeGroup_FWD_DEFINED__ 991 #define __IHomeGroup_FWD_DEFINED__ 992 typedef interface IHomeGroup IHomeGroup; 993 #endif 994 995 #ifndef __IInitializeWithPropertyStore_FWD_DEFINED__ 996 #define __IInitializeWithPropertyStore_FWD_DEFINED__ 997 typedef interface IInitializeWithPropertyStore IInitializeWithPropertyStore; 998 #endif 999 1000 #ifndef __IOpenSearchSource_FWD_DEFINED__ 1001 #define __IOpenSearchSource_FWD_DEFINED__ 1002 typedef interface IOpenSearchSource IOpenSearchSource; 1003 #endif 1004 1005 #ifndef __IShellLibrary_FWD_DEFINED__ 1006 #define __IShellLibrary_FWD_DEFINED__ 1007 typedef interface IShellLibrary IShellLibrary; 1008 #endif 1009 1010 #ifndef __IPlaybackManagerEvents_FWD_DEFINED__ 1011 #define __IPlaybackManagerEvents_FWD_DEFINED__ 1012 typedef interface IPlaybackManagerEvents IPlaybackManagerEvents; 1013 #endif 1014 1015 #ifndef __IPlaybackManager_FWD_DEFINED__ 1016 #define __IPlaybackManager_FWD_DEFINED__ 1017 typedef interface IPlaybackManager IPlaybackManager; 1018 #endif 1019 1020 #ifndef __IDefaultFolderMenuInitialize_FWD_DEFINED__ 1021 #define __IDefaultFolderMenuInitialize_FWD_DEFINED__ 1022 typedef interface IDefaultFolderMenuInitialize IDefaultFolderMenuInitialize; 1023 #endif 1024 1025 #ifndef __IApplicationActivationManager_FWD_DEFINED__ 1026 #define __IApplicationActivationManager_FWD_DEFINED__ 1027 typedef interface IApplicationActivationManager IApplicationActivationManager; 1028 #endif 1029 1030 #ifndef __DesktopWallpaper_FWD_DEFINED__ 1031 #define __DesktopWallpaper_FWD_DEFINED__ 1032 #ifdef __cplusplus 1033 typedef class DesktopWallpaper DesktopWallpaper; 1034 #else 1035 typedef struct DesktopWallpaper DesktopWallpaper; 1036 #endif /* defined __cplusplus */ 1037 #endif /* defined __DesktopWallpaper_FWD_DEFINED__ */ 1038 1039 #ifndef __ShellDesktop_FWD_DEFINED__ 1040 #define __ShellDesktop_FWD_DEFINED__ 1041 #ifdef __cplusplus 1042 typedef class ShellDesktop ShellDesktop; 1043 #else 1044 typedef struct ShellDesktop ShellDesktop; 1045 #endif /* defined __cplusplus */ 1046 #endif /* defined __ShellDesktop_FWD_DEFINED__ */ 1047 1048 #ifndef __ShellFSFolder_FWD_DEFINED__ 1049 #define __ShellFSFolder_FWD_DEFINED__ 1050 #ifdef __cplusplus 1051 typedef class ShellFSFolder ShellFSFolder; 1052 #else 1053 typedef struct ShellFSFolder ShellFSFolder; 1054 #endif /* defined __cplusplus */ 1055 #endif /* defined __ShellFSFolder_FWD_DEFINED__ */ 1056 1057 #ifndef __NetworkPlaces_FWD_DEFINED__ 1058 #define __NetworkPlaces_FWD_DEFINED__ 1059 #ifdef __cplusplus 1060 typedef class NetworkPlaces NetworkPlaces; 1061 #else 1062 typedef struct NetworkPlaces NetworkPlaces; 1063 #endif /* defined __cplusplus */ 1064 #endif /* defined __NetworkPlaces_FWD_DEFINED__ */ 1065 1066 #ifndef __ShellLink_FWD_DEFINED__ 1067 #define __ShellLink_FWD_DEFINED__ 1068 #ifdef __cplusplus 1069 typedef class ShellLink ShellLink; 1070 #else 1071 typedef struct ShellLink ShellLink; 1072 #endif /* defined __cplusplus */ 1073 #endif /* defined __ShellLink_FWD_DEFINED__ */ 1074 1075 #ifndef __QueryCancelAutoPlay_FWD_DEFINED__ 1076 #define __QueryCancelAutoPlay_FWD_DEFINED__ 1077 #ifdef __cplusplus 1078 typedef class QueryCancelAutoPlay QueryCancelAutoPlay; 1079 #else 1080 typedef struct QueryCancelAutoPlay QueryCancelAutoPlay; 1081 #endif /* defined __cplusplus */ 1082 #endif /* defined __QueryCancelAutoPlay_FWD_DEFINED__ */ 1083 1084 #ifndef __DriveSizeCategorizer_FWD_DEFINED__ 1085 #define __DriveSizeCategorizer_FWD_DEFINED__ 1086 #ifdef __cplusplus 1087 typedef class DriveSizeCategorizer DriveSizeCategorizer; 1088 #else 1089 typedef struct DriveSizeCategorizer DriveSizeCategorizer; 1090 #endif /* defined __cplusplus */ 1091 #endif /* defined __DriveSizeCategorizer_FWD_DEFINED__ */ 1092 1093 #ifndef __DriveTypeCategorizer_FWD_DEFINED__ 1094 #define __DriveTypeCategorizer_FWD_DEFINED__ 1095 #ifdef __cplusplus 1096 typedef class DriveTypeCategorizer DriveTypeCategorizer; 1097 #else 1098 typedef struct DriveTypeCategorizer DriveTypeCategorizer; 1099 #endif /* defined __cplusplus */ 1100 #endif /* defined __DriveTypeCategorizer_FWD_DEFINED__ */ 1101 1102 #ifndef __FreeSpaceCategorizer_FWD_DEFINED__ 1103 #define __FreeSpaceCategorizer_FWD_DEFINED__ 1104 #ifdef __cplusplus 1105 typedef class FreeSpaceCategorizer FreeSpaceCategorizer; 1106 #else 1107 typedef struct FreeSpaceCategorizer FreeSpaceCategorizer; 1108 #endif /* defined __cplusplus */ 1109 #endif /* defined __FreeSpaceCategorizer_FWD_DEFINED__ */ 1110 1111 #ifndef __TimeCategorizer_FWD_DEFINED__ 1112 #define __TimeCategorizer_FWD_DEFINED__ 1113 #ifdef __cplusplus 1114 typedef class TimeCategorizer TimeCategorizer; 1115 #else 1116 typedef struct TimeCategorizer TimeCategorizer; 1117 #endif /* defined __cplusplus */ 1118 #endif /* defined __TimeCategorizer_FWD_DEFINED__ */ 1119 1120 #ifndef __SizeCategorizer_FWD_DEFINED__ 1121 #define __SizeCategorizer_FWD_DEFINED__ 1122 #ifdef __cplusplus 1123 typedef class SizeCategorizer SizeCategorizer; 1124 #else 1125 typedef struct SizeCategorizer SizeCategorizer; 1126 #endif /* defined __cplusplus */ 1127 #endif /* defined __SizeCategorizer_FWD_DEFINED__ */ 1128 1129 #ifndef __AlphabeticalCategorizer_FWD_DEFINED__ 1130 #define __AlphabeticalCategorizer_FWD_DEFINED__ 1131 #ifdef __cplusplus 1132 typedef class AlphabeticalCategorizer AlphabeticalCategorizer; 1133 #else 1134 typedef struct AlphabeticalCategorizer AlphabeticalCategorizer; 1135 #endif /* defined __cplusplus */ 1136 #endif /* defined __AlphabeticalCategorizer_FWD_DEFINED__ */ 1137 1138 #ifndef __MergedCategorizer_FWD_DEFINED__ 1139 #define __MergedCategorizer_FWD_DEFINED__ 1140 #ifdef __cplusplus 1141 typedef class MergedCategorizer MergedCategorizer; 1142 #else 1143 typedef struct MergedCategorizer MergedCategorizer; 1144 #endif /* defined __cplusplus */ 1145 #endif /* defined __MergedCategorizer_FWD_DEFINED__ */ 1146 1147 #ifndef __ImageProperties_FWD_DEFINED__ 1148 #define __ImageProperties_FWD_DEFINED__ 1149 #ifdef __cplusplus 1150 typedef class ImageProperties ImageProperties; 1151 #else 1152 typedef struct ImageProperties ImageProperties; 1153 #endif /* defined __cplusplus */ 1154 #endif /* defined __ImageProperties_FWD_DEFINED__ */ 1155 1156 #ifndef __PropertiesUI_FWD_DEFINED__ 1157 #define __PropertiesUI_FWD_DEFINED__ 1158 #ifdef __cplusplus 1159 typedef class PropertiesUI PropertiesUI; 1160 #else 1161 typedef struct PropertiesUI PropertiesUI; 1162 #endif /* defined __cplusplus */ 1163 #endif /* defined __PropertiesUI_FWD_DEFINED__ */ 1164 1165 #ifndef __UserNotification_FWD_DEFINED__ 1166 #define __UserNotification_FWD_DEFINED__ 1167 #ifdef __cplusplus 1168 typedef class UserNotification UserNotification; 1169 #else 1170 typedef struct UserNotification UserNotification; 1171 #endif /* defined __cplusplus */ 1172 #endif /* defined __UserNotification_FWD_DEFINED__ */ 1173 1174 #ifndef __CDBurn_FWD_DEFINED__ 1175 #define __CDBurn_FWD_DEFINED__ 1176 #ifdef __cplusplus 1177 typedef class CDBurn CDBurn; 1178 #else 1179 typedef struct CDBurn CDBurn; 1180 #endif /* defined __cplusplus */ 1181 #endif /* defined __CDBurn_FWD_DEFINED__ */ 1182 1183 #ifndef __TaskbarList_FWD_DEFINED__ 1184 #define __TaskbarList_FWD_DEFINED__ 1185 #ifdef __cplusplus 1186 typedef class TaskbarList TaskbarList; 1187 #else 1188 typedef struct TaskbarList TaskbarList; 1189 #endif /* defined __cplusplus */ 1190 #endif /* defined __TaskbarList_FWD_DEFINED__ */ 1191 1192 #ifndef __StartMenuPin_FWD_DEFINED__ 1193 #define __StartMenuPin_FWD_DEFINED__ 1194 #ifdef __cplusplus 1195 typedef class StartMenuPin StartMenuPin; 1196 #else 1197 typedef struct StartMenuPin StartMenuPin; 1198 #endif /* defined __cplusplus */ 1199 #endif /* defined __StartMenuPin_FWD_DEFINED__ */ 1200 1201 #ifndef __WebWizardHost_FWD_DEFINED__ 1202 #define __WebWizardHost_FWD_DEFINED__ 1203 #ifdef __cplusplus 1204 typedef class WebWizardHost WebWizardHost; 1205 #else 1206 typedef struct WebWizardHost WebWizardHost; 1207 #endif /* defined __cplusplus */ 1208 #endif /* defined __WebWizardHost_FWD_DEFINED__ */ 1209 1210 #ifndef __PublishDropTarget_FWD_DEFINED__ 1211 #define __PublishDropTarget_FWD_DEFINED__ 1212 #ifdef __cplusplus 1213 typedef class PublishDropTarget PublishDropTarget; 1214 #else 1215 typedef struct PublishDropTarget PublishDropTarget; 1216 #endif /* defined __cplusplus */ 1217 #endif /* defined __PublishDropTarget_FWD_DEFINED__ */ 1218 1219 #ifndef __PublishingWizard_FWD_DEFINED__ 1220 #define __PublishingWizard_FWD_DEFINED__ 1221 #ifdef __cplusplus 1222 typedef class PublishingWizard PublishingWizard; 1223 #else 1224 typedef struct PublishingWizard PublishingWizard; 1225 #endif /* defined __cplusplus */ 1226 #endif /* defined __PublishingWizard_FWD_DEFINED__ */ 1227 1228 #ifndef __InternetPrintOrdering_FWD_DEFINED__ 1229 #define __InternetPrintOrdering_FWD_DEFINED__ 1230 #ifdef __cplusplus 1231 typedef class InternetPrintOrdering InternetPrintOrdering; 1232 #else 1233 typedef struct InternetPrintOrdering InternetPrintOrdering; 1234 #endif /* defined __cplusplus */ 1235 #endif /* defined __InternetPrintOrdering_FWD_DEFINED__ */ 1236 1237 #ifndef __FolderViewHost_FWD_DEFINED__ 1238 #define __FolderViewHost_FWD_DEFINED__ 1239 #ifdef __cplusplus 1240 typedef class FolderViewHost FolderViewHost; 1241 #else 1242 typedef struct FolderViewHost FolderViewHost; 1243 #endif /* defined __cplusplus */ 1244 #endif /* defined __FolderViewHost_FWD_DEFINED__ */ 1245 1246 #ifndef __ExplorerBrowser_FWD_DEFINED__ 1247 #define __ExplorerBrowser_FWD_DEFINED__ 1248 #ifdef __cplusplus 1249 typedef class ExplorerBrowser ExplorerBrowser; 1250 #else 1251 typedef struct ExplorerBrowser ExplorerBrowser; 1252 #endif /* defined __cplusplus */ 1253 #endif /* defined __ExplorerBrowser_FWD_DEFINED__ */ 1254 1255 #ifndef __ImageRecompress_FWD_DEFINED__ 1256 #define __ImageRecompress_FWD_DEFINED__ 1257 #ifdef __cplusplus 1258 typedef class ImageRecompress ImageRecompress; 1259 #else 1260 typedef struct ImageRecompress ImageRecompress; 1261 #endif /* defined __cplusplus */ 1262 #endif /* defined __ImageRecompress_FWD_DEFINED__ */ 1263 1264 #ifndef __TrayBandSiteService_FWD_DEFINED__ 1265 #define __TrayBandSiteService_FWD_DEFINED__ 1266 #ifdef __cplusplus 1267 typedef class TrayBandSiteService TrayBandSiteService; 1268 #else 1269 typedef struct TrayBandSiteService TrayBandSiteService; 1270 #endif /* defined __cplusplus */ 1271 #endif /* defined __TrayBandSiteService_FWD_DEFINED__ */ 1272 1273 #ifndef __TrayDeskBand_FWD_DEFINED__ 1274 #define __TrayDeskBand_FWD_DEFINED__ 1275 #ifdef __cplusplus 1276 typedef class TrayDeskBand TrayDeskBand; 1277 #else 1278 typedef struct TrayDeskBand TrayDeskBand; 1279 #endif /* defined __cplusplus */ 1280 #endif /* defined __TrayDeskBand_FWD_DEFINED__ */ 1281 1282 #ifndef __AttachmentServices_FWD_DEFINED__ 1283 #define __AttachmentServices_FWD_DEFINED__ 1284 #ifdef __cplusplus 1285 typedef class AttachmentServices AttachmentServices; 1286 #else 1287 typedef struct AttachmentServices AttachmentServices; 1288 #endif /* defined __cplusplus */ 1289 #endif /* defined __AttachmentServices_FWD_DEFINED__ */ 1290 1291 #ifndef __DocPropShellExtension_FWD_DEFINED__ 1292 #define __DocPropShellExtension_FWD_DEFINED__ 1293 #ifdef __cplusplus 1294 typedef class DocPropShellExtension DocPropShellExtension; 1295 #else 1296 typedef struct DocPropShellExtension DocPropShellExtension; 1297 #endif /* defined __cplusplus */ 1298 #endif /* defined __DocPropShellExtension_FWD_DEFINED__ */ 1299 1300 #ifndef __ShellItem_FWD_DEFINED__ 1301 #define __ShellItem_FWD_DEFINED__ 1302 #ifdef __cplusplus 1303 typedef class ShellItem ShellItem; 1304 #else 1305 typedef struct ShellItem ShellItem; 1306 #endif /* defined __cplusplus */ 1307 #endif /* defined __ShellItem_FWD_DEFINED__ */ 1308 1309 #ifndef __NamespaceWalker_FWD_DEFINED__ 1310 #define __NamespaceWalker_FWD_DEFINED__ 1311 #ifdef __cplusplus 1312 typedef class NamespaceWalker NamespaceWalker; 1313 #else 1314 typedef struct NamespaceWalker NamespaceWalker; 1315 #endif /* defined __cplusplus */ 1316 #endif /* defined __NamespaceWalker_FWD_DEFINED__ */ 1317 1318 #ifndef __FileOperation_FWD_DEFINED__ 1319 #define __FileOperation_FWD_DEFINED__ 1320 #ifdef __cplusplus 1321 typedef class FileOperation FileOperation; 1322 #else 1323 typedef struct FileOperation FileOperation; 1324 #endif /* defined __cplusplus */ 1325 #endif /* defined __FileOperation_FWD_DEFINED__ */ 1326 1327 #ifndef __FileOpenDialog_FWD_DEFINED__ 1328 #define __FileOpenDialog_FWD_DEFINED__ 1329 #ifdef __cplusplus 1330 typedef class FileOpenDialog FileOpenDialog; 1331 #else 1332 typedef struct FileOpenDialog FileOpenDialog; 1333 #endif /* defined __cplusplus */ 1334 #endif /* defined __FileOpenDialog_FWD_DEFINED__ */ 1335 1336 #ifndef __FileSaveDialog_FWD_DEFINED__ 1337 #define __FileSaveDialog_FWD_DEFINED__ 1338 #ifdef __cplusplus 1339 typedef class FileSaveDialog FileSaveDialog; 1340 #else 1341 typedef struct FileSaveDialog FileSaveDialog; 1342 #endif /* defined __cplusplus */ 1343 #endif /* defined __FileSaveDialog_FWD_DEFINED__ */ 1344 1345 #ifndef __KnownFolderManager_FWD_DEFINED__ 1346 #define __KnownFolderManager_FWD_DEFINED__ 1347 #ifdef __cplusplus 1348 typedef class KnownFolderManager KnownFolderManager; 1349 #else 1350 typedef struct KnownFolderManager KnownFolderManager; 1351 #endif /* defined __cplusplus */ 1352 #endif /* defined __KnownFolderManager_FWD_DEFINED__ */ 1353 1354 #ifndef __FSCopyHandler_FWD_DEFINED__ 1355 #define __FSCopyHandler_FWD_DEFINED__ 1356 #ifdef __cplusplus 1357 typedef class FSCopyHandler FSCopyHandler; 1358 #else 1359 typedef struct FSCopyHandler FSCopyHandler; 1360 #endif /* defined __cplusplus */ 1361 #endif /* defined __FSCopyHandler_FWD_DEFINED__ */ 1362 1363 #ifndef __SharingConfigurationManager_FWD_DEFINED__ 1364 #define __SharingConfigurationManager_FWD_DEFINED__ 1365 #ifdef __cplusplus 1366 typedef class SharingConfigurationManager SharingConfigurationManager; 1367 #else 1368 typedef struct SharingConfigurationManager SharingConfigurationManager; 1369 #endif /* defined __cplusplus */ 1370 #endif /* defined __SharingConfigurationManager_FWD_DEFINED__ */ 1371 1372 #ifndef __PreviousVersions_FWD_DEFINED__ 1373 #define __PreviousVersions_FWD_DEFINED__ 1374 #ifdef __cplusplus 1375 typedef class PreviousVersions PreviousVersions; 1376 #else 1377 typedef struct PreviousVersions PreviousVersions; 1378 #endif /* defined __cplusplus */ 1379 #endif /* defined __PreviousVersions_FWD_DEFINED__ */ 1380 1381 #ifndef __NetworkConnections_FWD_DEFINED__ 1382 #define __NetworkConnections_FWD_DEFINED__ 1383 #ifdef __cplusplus 1384 typedef class NetworkConnections NetworkConnections; 1385 #else 1386 typedef struct NetworkConnections NetworkConnections; 1387 #endif /* defined __cplusplus */ 1388 #endif /* defined __NetworkConnections_FWD_DEFINED__ */ 1389 1390 #ifndef __NamespaceTreeControl_FWD_DEFINED__ 1391 #define __NamespaceTreeControl_FWD_DEFINED__ 1392 #ifdef __cplusplus 1393 typedef class NamespaceTreeControl NamespaceTreeControl; 1394 #else 1395 typedef struct NamespaceTreeControl NamespaceTreeControl; 1396 #endif /* defined __cplusplus */ 1397 #endif /* defined __NamespaceTreeControl_FWD_DEFINED__ */ 1398 1399 #ifndef __IENamespaceTreeControl_FWD_DEFINED__ 1400 #define __IENamespaceTreeControl_FWD_DEFINED__ 1401 #ifdef __cplusplus 1402 typedef class IENamespaceTreeControl IENamespaceTreeControl; 1403 #else 1404 typedef struct IENamespaceTreeControl IENamespaceTreeControl; 1405 #endif /* defined __cplusplus */ 1406 #endif /* defined __IENamespaceTreeControl_FWD_DEFINED__ */ 1407 1408 #ifndef __ScheduledTasks_FWD_DEFINED__ 1409 #define __ScheduledTasks_FWD_DEFINED__ 1410 #ifdef __cplusplus 1411 typedef class ScheduledTasks ScheduledTasks; 1412 #else 1413 typedef struct ScheduledTasks ScheduledTasks; 1414 #endif /* defined __cplusplus */ 1415 #endif /* defined __ScheduledTasks_FWD_DEFINED__ */ 1416 1417 #ifndef __ApplicationAssociationRegistration_FWD_DEFINED__ 1418 #define __ApplicationAssociationRegistration_FWD_DEFINED__ 1419 #ifdef __cplusplus 1420 typedef class ApplicationAssociationRegistration ApplicationAssociationRegistration; 1421 #else 1422 typedef struct ApplicationAssociationRegistration ApplicationAssociationRegistration; 1423 #endif /* defined __cplusplus */ 1424 #endif /* defined __ApplicationAssociationRegistration_FWD_DEFINED__ */ 1425 1426 #ifndef __ApplicationAssociationRegistrationUI_FWD_DEFINED__ 1427 #define __ApplicationAssociationRegistrationUI_FWD_DEFINED__ 1428 #ifdef __cplusplus 1429 typedef class ApplicationAssociationRegistrationUI ApplicationAssociationRegistrationUI; 1430 #else 1431 typedef struct ApplicationAssociationRegistrationUI ApplicationAssociationRegistrationUI; 1432 #endif /* defined __cplusplus */ 1433 #endif /* defined __ApplicationAssociationRegistrationUI_FWD_DEFINED__ */ 1434 1435 #ifndef __SearchFolderItemFactory_FWD_DEFINED__ 1436 #define __SearchFolderItemFactory_FWD_DEFINED__ 1437 #ifdef __cplusplus 1438 typedef class SearchFolderItemFactory SearchFolderItemFactory; 1439 #else 1440 typedef struct SearchFolderItemFactory SearchFolderItemFactory; 1441 #endif /* defined __cplusplus */ 1442 #endif /* defined __SearchFolderItemFactory_FWD_DEFINED__ */ 1443 1444 #ifndef __OpenControlPanel_FWD_DEFINED__ 1445 #define __OpenControlPanel_FWD_DEFINED__ 1446 #ifdef __cplusplus 1447 typedef class OpenControlPanel OpenControlPanel; 1448 #else 1449 typedef struct OpenControlPanel OpenControlPanel; 1450 #endif /* defined __cplusplus */ 1451 #endif /* defined __OpenControlPanel_FWD_DEFINED__ */ 1452 1453 #ifndef __MailRecipient_FWD_DEFINED__ 1454 #define __MailRecipient_FWD_DEFINED__ 1455 #ifdef __cplusplus 1456 typedef class MailRecipient MailRecipient; 1457 #else 1458 typedef struct MailRecipient MailRecipient; 1459 #endif /* defined __cplusplus */ 1460 #endif /* defined __MailRecipient_FWD_DEFINED__ */ 1461 1462 #ifndef __NetworkExplorerFolder_FWD_DEFINED__ 1463 #define __NetworkExplorerFolder_FWD_DEFINED__ 1464 #ifdef __cplusplus 1465 typedef class NetworkExplorerFolder NetworkExplorerFolder; 1466 #else 1467 typedef struct NetworkExplorerFolder NetworkExplorerFolder; 1468 #endif /* defined __cplusplus */ 1469 #endif /* defined __NetworkExplorerFolder_FWD_DEFINED__ */ 1470 1471 #ifndef __DestinationList_FWD_DEFINED__ 1472 #define __DestinationList_FWD_DEFINED__ 1473 #ifdef __cplusplus 1474 typedef class DestinationList DestinationList; 1475 #else 1476 typedef struct DestinationList DestinationList; 1477 #endif /* defined __cplusplus */ 1478 #endif /* defined __DestinationList_FWD_DEFINED__ */ 1479 1480 #ifndef __ApplicationDestinations_FWD_DEFINED__ 1481 #define __ApplicationDestinations_FWD_DEFINED__ 1482 #ifdef __cplusplus 1483 typedef class ApplicationDestinations ApplicationDestinations; 1484 #else 1485 typedef struct ApplicationDestinations ApplicationDestinations; 1486 #endif /* defined __cplusplus */ 1487 #endif /* defined __ApplicationDestinations_FWD_DEFINED__ */ 1488 1489 #ifndef __ApplicationDocumentLists_FWD_DEFINED__ 1490 #define __ApplicationDocumentLists_FWD_DEFINED__ 1491 #ifdef __cplusplus 1492 typedef class ApplicationDocumentLists ApplicationDocumentLists; 1493 #else 1494 typedef struct ApplicationDocumentLists ApplicationDocumentLists; 1495 #endif /* defined __cplusplus */ 1496 #endif /* defined __ApplicationDocumentLists_FWD_DEFINED__ */ 1497 1498 #ifndef __HomeGroup_FWD_DEFINED__ 1499 #define __HomeGroup_FWD_DEFINED__ 1500 #ifdef __cplusplus 1501 typedef class HomeGroup HomeGroup; 1502 #else 1503 typedef struct HomeGroup HomeGroup; 1504 #endif /* defined __cplusplus */ 1505 #endif /* defined __HomeGroup_FWD_DEFINED__ */ 1506 1507 #ifndef __ShellLibrary_FWD_DEFINED__ 1508 #define __ShellLibrary_FWD_DEFINED__ 1509 #ifdef __cplusplus 1510 typedef class ShellLibrary ShellLibrary; 1511 #else 1512 typedef struct ShellLibrary ShellLibrary; 1513 #endif /* defined __cplusplus */ 1514 #endif /* defined __ShellLibrary_FWD_DEFINED__ */ 1515 1516 #ifndef __AppStartupLink_FWD_DEFINED__ 1517 #define __AppStartupLink_FWD_DEFINED__ 1518 #ifdef __cplusplus 1519 typedef class AppStartupLink AppStartupLink; 1520 #else 1521 typedef struct AppStartupLink AppStartupLink; 1522 #endif /* defined __cplusplus */ 1523 #endif /* defined __AppStartupLink_FWD_DEFINED__ */ 1524 1525 #ifndef __EnumerableObjectCollection_FWD_DEFINED__ 1526 #define __EnumerableObjectCollection_FWD_DEFINED__ 1527 #ifdef __cplusplus 1528 typedef class EnumerableObjectCollection EnumerableObjectCollection; 1529 #else 1530 typedef struct EnumerableObjectCollection EnumerableObjectCollection; 1531 #endif /* defined __cplusplus */ 1532 #endif /* defined __EnumerableObjectCollection_FWD_DEFINED__ */ 1533 1534 #ifndef __DesktopGadget_FWD_DEFINED__ 1535 #define __DesktopGadget_FWD_DEFINED__ 1536 #ifdef __cplusplus 1537 typedef class DesktopGadget DesktopGadget; 1538 #else 1539 typedef struct DesktopGadget DesktopGadget; 1540 #endif /* defined __cplusplus */ 1541 #endif /* defined __DesktopGadget_FWD_DEFINED__ */ 1542 1543 #ifndef __PlaybackManager_FWD_DEFINED__ 1544 #define __PlaybackManager_FWD_DEFINED__ 1545 #ifdef __cplusplus 1546 typedef class PlaybackManager PlaybackManager; 1547 #else 1548 typedef struct PlaybackManager PlaybackManager; 1549 #endif /* defined __cplusplus */ 1550 #endif /* defined __PlaybackManager_FWD_DEFINED__ */ 1551 1552 #ifndef __AccessibilityDockingService_FWD_DEFINED__ 1553 #define __AccessibilityDockingService_FWD_DEFINED__ 1554 #ifdef __cplusplus 1555 typedef class AccessibilityDockingService AccessibilityDockingService; 1556 #else 1557 typedef struct AccessibilityDockingService AccessibilityDockingService; 1558 #endif /* defined __cplusplus */ 1559 #endif /* defined __AccessibilityDockingService_FWD_DEFINED__ */ 1560 1561 #ifndef __FrameworkInputPane_FWD_DEFINED__ 1562 #define __FrameworkInputPane_FWD_DEFINED__ 1563 #ifdef __cplusplus 1564 typedef class FrameworkInputPane FrameworkInputPane; 1565 #else 1566 typedef struct FrameworkInputPane FrameworkInputPane; 1567 #endif /* defined __cplusplus */ 1568 #endif /* defined __FrameworkInputPane_FWD_DEFINED__ */ 1569 1570 #ifndef __DefFolderMenu_FWD_DEFINED__ 1571 #define __DefFolderMenu_FWD_DEFINED__ 1572 #ifdef __cplusplus 1573 typedef class DefFolderMenu DefFolderMenu; 1574 #else 1575 typedef struct DefFolderMenu DefFolderMenu; 1576 #endif /* defined __cplusplus */ 1577 #endif /* defined __DefFolderMenu_FWD_DEFINED__ */ 1578 1579 #ifndef __AppVisibility_FWD_DEFINED__ 1580 #define __AppVisibility_FWD_DEFINED__ 1581 #ifdef __cplusplus 1582 typedef class AppVisibility AppVisibility; 1583 #else 1584 typedef struct AppVisibility AppVisibility; 1585 #endif /* defined __cplusplus */ 1586 #endif /* defined __AppVisibility_FWD_DEFINED__ */ 1587 1588 #ifndef __AppShellVerbHandler_FWD_DEFINED__ 1589 #define __AppShellVerbHandler_FWD_DEFINED__ 1590 #ifdef __cplusplus 1591 typedef class AppShellVerbHandler AppShellVerbHandler; 1592 #else 1593 typedef struct AppShellVerbHandler AppShellVerbHandler; 1594 #endif /* defined __cplusplus */ 1595 #endif /* defined __AppShellVerbHandler_FWD_DEFINED__ */ 1596 1597 #ifndef __ExecuteUnknown_FWD_DEFINED__ 1598 #define __ExecuteUnknown_FWD_DEFINED__ 1599 #ifdef __cplusplus 1600 typedef class ExecuteUnknown ExecuteUnknown; 1601 #else 1602 typedef struct ExecuteUnknown ExecuteUnknown; 1603 #endif /* defined __cplusplus */ 1604 #endif /* defined __ExecuteUnknown_FWD_DEFINED__ */ 1605 1606 #ifndef __PackageDebugSettings_FWD_DEFINED__ 1607 #define __PackageDebugSettings_FWD_DEFINED__ 1608 #ifdef __cplusplus 1609 typedef class PackageDebugSettings PackageDebugSettings; 1610 #else 1611 typedef struct PackageDebugSettings PackageDebugSettings; 1612 #endif /* defined __cplusplus */ 1613 #endif /* defined __PackageDebugSettings_FWD_DEFINED__ */ 1614 1615 #ifndef __ApplicationActivationManager_FWD_DEFINED__ 1616 #define __ApplicationActivationManager_FWD_DEFINED__ 1617 #ifdef __cplusplus 1618 typedef class ApplicationActivationManager ApplicationActivationManager; 1619 #else 1620 typedef struct ApplicationActivationManager ApplicationActivationManager; 1621 #endif /* defined __cplusplus */ 1622 #endif /* defined __ApplicationActivationManager_FWD_DEFINED__ */ 1623 1624 #ifndef __ApplicationDesignModeSettings_FWD_DEFINED__ 1625 #define __ApplicationDesignModeSettings_FWD_DEFINED__ 1626 #ifdef __cplusplus 1627 typedef class ApplicationDesignModeSettings ApplicationDesignModeSettings; 1628 #else 1629 typedef struct ApplicationDesignModeSettings ApplicationDesignModeSettings; 1630 #endif /* defined __cplusplus */ 1631 #endif /* defined __ApplicationDesignModeSettings_FWD_DEFINED__ */ 1632 1633 #ifndef __ExecuteFolder_FWD_DEFINED__ 1634 #define __ExecuteFolder_FWD_DEFINED__ 1635 #ifdef __cplusplus 1636 typedef class ExecuteFolder ExecuteFolder; 1637 #else 1638 typedef struct ExecuteFolder ExecuteFolder; 1639 #endif /* defined __cplusplus */ 1640 #endif /* defined __ExecuteFolder_FWD_DEFINED__ */ 1641 1642 #ifndef __IAssocHandlerInvoker_FWD_DEFINED__ 1643 #define __IAssocHandlerInvoker_FWD_DEFINED__ 1644 typedef interface IAssocHandlerInvoker IAssocHandlerInvoker; 1645 #endif 1646 1647 #ifndef __IAssocHandler_FWD_DEFINED__ 1648 #define __IAssocHandler_FWD_DEFINED__ 1649 typedef interface IAssocHandler IAssocHandler; 1650 #endif 1651 1652 #ifndef __IEnumAssocHandlers_FWD_DEFINED__ 1653 #define __IEnumAssocHandlers_FWD_DEFINED__ 1654 typedef interface IEnumAssocHandlers IEnumAssocHandlers; 1655 #endif 1656 1657 #ifndef __IDataObjectProvider_FWD_DEFINED__ 1658 #define __IDataObjectProvider_FWD_DEFINED__ 1659 typedef interface IDataObjectProvider IDataObjectProvider; 1660 #endif 1661 1662 #ifndef __IDataTransferManagerInterop_FWD_DEFINED__ 1663 #define __IDataTransferManagerInterop_FWD_DEFINED__ 1664 typedef interface IDataTransferManagerInterop IDataTransferManagerInterop; 1665 #endif 1666 1667 #ifndef __IFrameworkInputPaneHandler_FWD_DEFINED__ 1668 #define __IFrameworkInputPaneHandler_FWD_DEFINED__ 1669 typedef interface IFrameworkInputPaneHandler IFrameworkInputPaneHandler; 1670 #endif 1671 1672 #ifndef __IFrameworkInputPane_FWD_DEFINED__ 1673 #define __IFrameworkInputPane_FWD_DEFINED__ 1674 typedef interface IFrameworkInputPane IFrameworkInputPane; 1675 #endif 1676 1677 #ifndef __ISearchableApplication_FWD_DEFINED__ 1678 #define __ISearchableApplication_FWD_DEFINED__ 1679 typedef interface ISearchableApplication ISearchableApplication; 1680 #endif 1681 1682 #ifndef __IAccessibilityDockingServiceCallback_FWD_DEFINED__ 1683 #define __IAccessibilityDockingServiceCallback_FWD_DEFINED__ 1684 typedef interface IAccessibilityDockingServiceCallback IAccessibilityDockingServiceCallback; 1685 #endif 1686 1687 #ifndef __IAccessibilityDockingService_FWD_DEFINED__ 1688 #define __IAccessibilityDockingService_FWD_DEFINED__ 1689 typedef interface IAccessibilityDockingService IAccessibilityDockingService; 1690 #endif 1691 1692 #ifndef __IAppVisibilityEvents_FWD_DEFINED__ 1693 #define __IAppVisibilityEvents_FWD_DEFINED__ 1694 typedef interface IAppVisibilityEvents IAppVisibilityEvents; 1695 #endif 1696 1697 #ifndef __IAppVisibility_FWD_DEFINED__ 1698 #define __IAppVisibility_FWD_DEFINED__ 1699 typedef interface IAppVisibility IAppVisibility; 1700 #endif 1701 1702 #ifndef __IPackageExecutionStateChangeNotification_FWD_DEFINED__ 1703 #define __IPackageExecutionStateChangeNotification_FWD_DEFINED__ 1704 typedef interface IPackageExecutionStateChangeNotification IPackageExecutionStateChangeNotification; 1705 #endif 1706 1707 #ifndef __IPackageDebugSettings_FWD_DEFINED__ 1708 #define __IPackageDebugSettings_FWD_DEFINED__ 1709 typedef interface IPackageDebugSettings IPackageDebugSettings; 1710 #endif 1711 1712 #ifndef __IExecuteCommandApplicationHostEnvironment_FWD_DEFINED__ 1713 #define __IExecuteCommandApplicationHostEnvironment_FWD_DEFINED__ 1714 typedef interface IExecuteCommandApplicationHostEnvironment IExecuteCommandApplicationHostEnvironment; 1715 #endif 1716 1717 #ifndef __IExecuteCommandHost_FWD_DEFINED__ 1718 #define __IExecuteCommandHost_FWD_DEFINED__ 1719 typedef interface IExecuteCommandHost IExecuteCommandHost; 1720 #endif 1721 1722 #ifndef __IApplicationDesignModeSettings_FWD_DEFINED__ 1723 #define __IApplicationDesignModeSettings_FWD_DEFINED__ 1724 typedef interface IApplicationDesignModeSettings IApplicationDesignModeSettings; 1725 #endif 1726 1727 #ifndef __IInitializeWithWindow_FWD_DEFINED__ 1728 #define __IInitializeWithWindow_FWD_DEFINED__ 1729 typedef interface IInitializeWithWindow IInitializeWithWindow; 1730 #endif 1731 1732 #ifndef __IHandlerInfo_FWD_DEFINED__ 1733 #define __IHandlerInfo_FWD_DEFINED__ 1734 typedef interface IHandlerInfo IHandlerInfo; 1735 #endif 1736 1737 #ifndef __IHandlerActivationHost_FWD_DEFINED__ 1738 #define __IHandlerActivationHost_FWD_DEFINED__ 1739 typedef interface IHandlerActivationHost IHandlerActivationHost; 1740 #endif 1741 1742 /* Headers for imported files */ 1743 1744 #include <objidl.h> 1745 #include <oleidl.h> 1746 #include <oaidl.h> 1747 #include <docobj.h> 1748 #include <shtypes.h> 1749 #include <servprov.h> 1750 #include <comcat.h> 1751 #include <propidl.h> 1752 #include <prsht.h> 1753 #include <msxml.h> 1754 #include <wtypes.h> 1755 #include <propsys.h> 1756 #include <objectarray.h> 1757 #include <structuredquerycondition.h> 1758 1759 #ifdef __cplusplus 1760 extern "C" { 1761 #endif 1762 1763 /** 1764 * This file is part of the mingw-w64 runtime package. 1765 * No warranty is given; refer to the file DISCLAIMER within this package. 1766 */ 1767 1768 #include <winapifamily.h> 1769 1770 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 1771 1772 #include <_mingw_unicode.h> 1773 1774 1775 #include <sherrors.h> 1776 1777 #ifndef SHSTDAPI 1778 #ifdef _SHELL32_ 1779 #define SHSTDAPI STDAPI 1780 #define SHSTDAPI_(type) STDAPI_(type) 1781 #else 1782 #define SHSTDAPI EXTERN_C DECLSPEC_IMPORT HRESULT STDAPICALLTYPE 1783 #define SHSTDAPI_(type) EXTERN_C DECLSPEC_IMPORT type STDAPICALLTYPE 1784 #endif 1785 #endif 1786 1787 #define CMF_NORMAL 0x0 1788 #define CMF_DEFAULTONLY 0x1 1789 #define CMF_VERBSONLY 0x2 1790 #define CMF_EXPLORE 0x4 1791 #define CMF_NOVERBS 0x8 1792 #define CMF_CANRENAME 0x10 1793 #define CMF_NODEFAULT 0x20 1794 #if NTDDI_VERSION < NTDDI_VISTA 1795 #define CMF_INCLUDESTATIC 0x40 1796 #endif 1797 #if NTDDI_VERSION >= NTDDI_VISTA 1798 #define CMF_ITEMMENU 0x80 1799 #endif 1800 #define CMF_EXTENDEDVERBS 0x100 1801 #if NTDDI_VERSION >= NTDDI_VISTA 1802 #define CMF_DISABLEDVERBS 0x200 1803 #endif 1804 #define CMF_ASYNCVERBSTATE 0x400 1805 #define CMF_OPTIMIZEFORINVOKE 0x800 1806 #define CMF_SYNCCASCADEMENU 0x1000 1807 #define CMF_DONOTPICKDEFAULT 0x2000 1808 #define CMF_RESERVED 0xffff0000 1809 1810 #define GCS_VERBA 0x0 1811 #define GCS_HELPTEXTA 0x1 1812 #define GCS_VALIDATEA 0x2 1813 #define GCS_VERBW 0x4 1814 #define GCS_HELPTEXTW 0x5 1815 #define GCS_VALIDATEW 0x6 1816 #define GCS_VERBICONW 0x14 1817 #define GCS_UNICODE 0x4 1818 1819 #define GCS_VERB __MINGW_NAME_AW(GCS_VERB) 1820 #define GCS_HELPTEXT __MINGW_NAME_AW(GCS_HELPTEXT) 1821 #define GCS_VALIDATE __MINGW_NAME_AW(GCS_VALIDATE) 1822 1823 #define CMDSTR_NEWFOLDERA "NewFolder" 1824 #define CMDSTR_VIEWLISTA "ViewList" 1825 #define CMDSTR_VIEWDETAILSA "ViewDetails" 1826 #define CMDSTR_NEWFOLDERW L"NewFolder" 1827 #define CMDSTR_VIEWLISTW L"ViewList" 1828 #define CMDSTR_VIEWDETAILSW L"ViewDetails" 1829 1830 #define CMDSTR_NEWFOLDER __MINGW_NAME_AW(CMDSTR_NEWFOLDER) 1831 #define CMDSTR_VIEWLIST __MINGW_NAME_AW(CMDSTR_VIEWLIST) 1832 #define CMDSTR_VIEWDETAILS __MINGW_NAME_AW(CMDSTR_VIEWDETAILS) 1833 1834 #define CMIC_MASK_HOTKEY SEE_MASK_HOTKEY 1835 #define CMIC_MASK_ICON SEE_MASK_ICON 1836 #define CMIC_MASK_FLAG_NO_UI SEE_MASK_FLAG_NO_UI 1837 #define CMIC_MASK_UNICODE SEE_MASK_UNICODE 1838 #define CMIC_MASK_NO_CONSOLE SEE_MASK_NO_CONSOLE 1839 #if NTDDI_VERSION < NTDDI_VISTA 1840 #define CMIC_MASK_HASLINKNAME SEE_MASK_HASLINKNAME 1841 #define CMIC_MASK_HASTITLE SEE_MASK_HASTITLE 1842 #endif 1843 #define CMIC_MASK_FLAG_SEP_VDM SEE_MASK_FLAG_SEPVDM 1844 #define CMIC_MASK_ASYNCOK SEE_MASK_ASYNCOK 1845 #if NTDDI_VERSION >= NTDDI_VISTA 1846 #define CMIC_MASK_NOASYNC SEE_MASK_NOASYNC 1847 #endif 1848 #define CMIC_MASK_SHIFT_DOWN 0x10000000 1849 #define CMIC_MASK_CONTROL_DOWN 0x40000000 1850 #define CMIC_MASK_FLAG_LOG_USAGE SEE_MASK_FLAG_LOG_USAGE 1851 #define CMIC_MASK_NOZONECHECKS SEE_MASK_NOZONECHECKS 1852 #define CMIC_MASK_PTINVOKE 0x20000000 1853 1854 #include <pshpack8.h> 1855 typedef struct _CMINVOKECOMMANDINFO { 1856 DWORD cbSize; 1857 DWORD fMask; 1858 HWND hwnd; 1859 LPCSTR lpVerb; 1860 LPCSTR lpParameters; 1861 LPCSTR lpDirectory; 1862 int nShow; 1863 DWORD dwHotKey; 1864 HANDLE hIcon; 1865 } CMINVOKECOMMANDINFO; 1866 1867 typedef CMINVOKECOMMANDINFO *LPCMINVOKECOMMANDINFO; 1868 typedef const CMINVOKECOMMANDINFO *PCCMINVOKECOMMANDINFO; 1869 1870 typedef struct _CMINVOKECOMMANDINFOEX { 1871 DWORD cbSize; 1872 DWORD fMask; 1873 HWND hwnd; 1874 LPCSTR lpVerb; 1875 LPCSTR lpParameters; 1876 LPCSTR lpDirectory; 1877 int nShow; 1878 DWORD dwHotKey; 1879 HANDLE hIcon; 1880 LPCSTR lpTitle; 1881 LPCWSTR lpVerbW; 1882 LPCWSTR lpParametersW; 1883 LPCWSTR lpDirectoryW; 1884 LPCWSTR lpTitleW; 1885 POINT ptInvoke; 1886 } CMINVOKECOMMANDINFOEX; 1887 1888 typedef CMINVOKECOMMANDINFOEX *LPCMINVOKECOMMANDINFOEX; 1889 typedef const CMINVOKECOMMANDINFOEX *PCCMINVOKECOMMANDINFOEX; 1890 #include <poppack.h> 1891 1892 /***************************************************************************** 1893 * IContextMenu interface 1894 */ 1895 #ifndef __IContextMenu_INTERFACE_DEFINED__ 1896 #define __IContextMenu_INTERFACE_DEFINED__ 1897 1898 DEFINE_GUID(IID_IContextMenu, 0x000214e4, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 1899 #if defined(__cplusplus) && !defined(CINTERFACE) 1900 MIDL_INTERFACE("000214e4-0000-0000-c000-000000000046") 1901 IContextMenu : public IUnknown 1902 { 1903 virtual HRESULT STDMETHODCALLTYPE QueryContextMenu( 1904 HMENU hmenu, 1905 UINT indexMenu, 1906 UINT idCmdFirst, 1907 UINT idCmdLast, 1908 UINT uFlags) = 0; 1909 1910 virtual HRESULT STDMETHODCALLTYPE InvokeCommand( 1911 CMINVOKECOMMANDINFO *pici) = 0; 1912 1913 virtual HRESULT STDMETHODCALLTYPE GetCommandString( 1914 UINT_PTR idCmd, 1915 UINT uType, 1916 UINT *pReserved, 1917 CHAR *pszName, 1918 UINT cchMax) = 0; 1919 1920 }; 1921 #ifdef __CRT_UUID_DECL 1922 __CRT_UUID_DECL(IContextMenu, 0x000214e4, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 1923 #endif 1924 #else 1925 typedef struct IContextMenuVtbl { 1926 BEGIN_INTERFACE 1927 1928 /*** IUnknown methods ***/ 1929 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 1930 IContextMenu* This, 1931 REFIID riid, 1932 void **ppvObject); 1933 1934 ULONG (STDMETHODCALLTYPE *AddRef)( 1935 IContextMenu* This); 1936 1937 ULONG (STDMETHODCALLTYPE *Release)( 1938 IContextMenu* This); 1939 1940 /*** IContextMenu methods ***/ 1941 HRESULT (STDMETHODCALLTYPE *QueryContextMenu)( 1942 IContextMenu* This, 1943 HMENU hmenu, 1944 UINT indexMenu, 1945 UINT idCmdFirst, 1946 UINT idCmdLast, 1947 UINT uFlags); 1948 1949 HRESULT (STDMETHODCALLTYPE *InvokeCommand)( 1950 IContextMenu* This, 1951 CMINVOKECOMMANDINFO *pici); 1952 1953 HRESULT (STDMETHODCALLTYPE *GetCommandString)( 1954 IContextMenu* This, 1955 UINT_PTR idCmd, 1956 UINT uType, 1957 UINT *pReserved, 1958 CHAR *pszName, 1959 UINT cchMax); 1960 1961 END_INTERFACE 1962 } IContextMenuVtbl; 1963 interface IContextMenu { 1964 CONST_VTBL IContextMenuVtbl* lpVtbl; 1965 }; 1966 1967 #ifdef COBJMACROS 1968 #ifndef WIDL_C_INLINE_WRAPPERS 1969 /*** IUnknown methods ***/ 1970 #define IContextMenu_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 1971 #define IContextMenu_AddRef(This) (This)->lpVtbl->AddRef(This) 1972 #define IContextMenu_Release(This) (This)->lpVtbl->Release(This) 1973 /*** IContextMenu methods ***/ 1974 #define IContextMenu_QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) (This)->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) 1975 #define IContextMenu_InvokeCommand(This,pici) (This)->lpVtbl->InvokeCommand(This,pici) 1976 #define IContextMenu_GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax) (This)->lpVtbl->GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax) 1977 #else 1978 /*** IUnknown methods ***/ 1979 static FORCEINLINE HRESULT IContextMenu_QueryInterface(IContextMenu* This,REFIID riid,void **ppvObject) { 1980 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 1981 } 1982 static FORCEINLINE ULONG IContextMenu_AddRef(IContextMenu* This) { 1983 return This->lpVtbl->AddRef(This); 1984 } 1985 static FORCEINLINE ULONG IContextMenu_Release(IContextMenu* This) { 1986 return This->lpVtbl->Release(This); 1987 } 1988 /*** IContextMenu methods ***/ 1989 static FORCEINLINE HRESULT IContextMenu_QueryContextMenu(IContextMenu* This,HMENU hmenu,UINT indexMenu,UINT idCmdFirst,UINT idCmdLast,UINT uFlags) { 1990 return This->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags); 1991 } 1992 static FORCEINLINE HRESULT IContextMenu_InvokeCommand(IContextMenu* This,CMINVOKECOMMANDINFO *pici) { 1993 return This->lpVtbl->InvokeCommand(This,pici); 1994 } 1995 static FORCEINLINE HRESULT IContextMenu_GetCommandString(IContextMenu* This,UINT_PTR idCmd,UINT uType,UINT *pReserved,CHAR *pszName,UINT cchMax) { 1996 return This->lpVtbl->GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax); 1997 } 1998 #endif 1999 #endif 2000 2001 #endif 2002 2003 HRESULT STDMETHODCALLTYPE IContextMenu_QueryContextMenu_Proxy( 2004 IContextMenu* This, 2005 HMENU hmenu, 2006 UINT indexMenu, 2007 UINT idCmdFirst, 2008 UINT idCmdLast, 2009 UINT uFlags); 2010 void __RPC_STUB IContextMenu_QueryContextMenu_Stub( 2011 IRpcStubBuffer* This, 2012 IRpcChannelBuffer* pRpcChannelBuffer, 2013 PRPC_MESSAGE pRpcMessage, 2014 DWORD* pdwStubPhase); 2015 HRESULT STDMETHODCALLTYPE IContextMenu_InvokeCommand_Proxy( 2016 IContextMenu* This, 2017 CMINVOKECOMMANDINFO *pici); 2018 void __RPC_STUB IContextMenu_InvokeCommand_Stub( 2019 IRpcStubBuffer* This, 2020 IRpcChannelBuffer* pRpcChannelBuffer, 2021 PRPC_MESSAGE pRpcMessage, 2022 DWORD* pdwStubPhase); 2023 HRESULT STDMETHODCALLTYPE IContextMenu_GetCommandString_Proxy( 2024 IContextMenu* This, 2025 UINT_PTR idCmd, 2026 UINT uType, 2027 UINT *pReserved, 2028 CHAR *pszName, 2029 UINT cchMax); 2030 void __RPC_STUB IContextMenu_GetCommandString_Stub( 2031 IRpcStubBuffer* This, 2032 IRpcChannelBuffer* pRpcChannelBuffer, 2033 PRPC_MESSAGE pRpcMessage, 2034 DWORD* pdwStubPhase); 2035 2036 #endif /* __IContextMenu_INTERFACE_DEFINED__ */ 2037 2038 typedef IContextMenu *LPCONTEXTMENU; 2039 2040 /***************************************************************************** 2041 * IContextMenu2 interface 2042 */ 2043 #ifndef __IContextMenu2_INTERFACE_DEFINED__ 2044 #define __IContextMenu2_INTERFACE_DEFINED__ 2045 2046 DEFINE_GUID(IID_IContextMenu2, 0x000214f4, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 2047 #if defined(__cplusplus) && !defined(CINTERFACE) 2048 MIDL_INTERFACE("000214f4-0000-0000-c000-000000000046") 2049 IContextMenu2 : public IContextMenu 2050 { 2051 virtual HRESULT STDMETHODCALLTYPE HandleMenuMsg( 2052 UINT uMsg, 2053 WPARAM wParam, 2054 LPARAM lParam) = 0; 2055 2056 }; 2057 #ifdef __CRT_UUID_DECL 2058 __CRT_UUID_DECL(IContextMenu2, 0x000214f4, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 2059 #endif 2060 #else 2061 typedef struct IContextMenu2Vtbl { 2062 BEGIN_INTERFACE 2063 2064 /*** IUnknown methods ***/ 2065 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2066 IContextMenu2* This, 2067 REFIID riid, 2068 void **ppvObject); 2069 2070 ULONG (STDMETHODCALLTYPE *AddRef)( 2071 IContextMenu2* This); 2072 2073 ULONG (STDMETHODCALLTYPE *Release)( 2074 IContextMenu2* This); 2075 2076 /*** IContextMenu methods ***/ 2077 HRESULT (STDMETHODCALLTYPE *QueryContextMenu)( 2078 IContextMenu2* This, 2079 HMENU hmenu, 2080 UINT indexMenu, 2081 UINT idCmdFirst, 2082 UINT idCmdLast, 2083 UINT uFlags); 2084 2085 HRESULT (STDMETHODCALLTYPE *InvokeCommand)( 2086 IContextMenu2* This, 2087 CMINVOKECOMMANDINFO *pici); 2088 2089 HRESULT (STDMETHODCALLTYPE *GetCommandString)( 2090 IContextMenu2* This, 2091 UINT_PTR idCmd, 2092 UINT uType, 2093 UINT *pReserved, 2094 CHAR *pszName, 2095 UINT cchMax); 2096 2097 /*** IContextMenu2 methods ***/ 2098 HRESULT (STDMETHODCALLTYPE *HandleMenuMsg)( 2099 IContextMenu2* This, 2100 UINT uMsg, 2101 WPARAM wParam, 2102 LPARAM lParam); 2103 2104 END_INTERFACE 2105 } IContextMenu2Vtbl; 2106 interface IContextMenu2 { 2107 CONST_VTBL IContextMenu2Vtbl* lpVtbl; 2108 }; 2109 2110 #ifdef COBJMACROS 2111 #ifndef WIDL_C_INLINE_WRAPPERS 2112 /*** IUnknown methods ***/ 2113 #define IContextMenu2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2114 #define IContextMenu2_AddRef(This) (This)->lpVtbl->AddRef(This) 2115 #define IContextMenu2_Release(This) (This)->lpVtbl->Release(This) 2116 /*** IContextMenu methods ***/ 2117 #define IContextMenu2_QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) (This)->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) 2118 #define IContextMenu2_InvokeCommand(This,pici) (This)->lpVtbl->InvokeCommand(This,pici) 2119 #define IContextMenu2_GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax) (This)->lpVtbl->GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax) 2120 /*** IContextMenu2 methods ***/ 2121 #define IContextMenu2_HandleMenuMsg(This,uMsg,wParam,lParam) (This)->lpVtbl->HandleMenuMsg(This,uMsg,wParam,lParam) 2122 #else 2123 /*** IUnknown methods ***/ 2124 static FORCEINLINE HRESULT IContextMenu2_QueryInterface(IContextMenu2* This,REFIID riid,void **ppvObject) { 2125 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2126 } 2127 static FORCEINLINE ULONG IContextMenu2_AddRef(IContextMenu2* This) { 2128 return This->lpVtbl->AddRef(This); 2129 } 2130 static FORCEINLINE ULONG IContextMenu2_Release(IContextMenu2* This) { 2131 return This->lpVtbl->Release(This); 2132 } 2133 /*** IContextMenu methods ***/ 2134 static FORCEINLINE HRESULT IContextMenu2_QueryContextMenu(IContextMenu2* This,HMENU hmenu,UINT indexMenu,UINT idCmdFirst,UINT idCmdLast,UINT uFlags) { 2135 return This->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags); 2136 } 2137 static FORCEINLINE HRESULT IContextMenu2_InvokeCommand(IContextMenu2* This,CMINVOKECOMMANDINFO *pici) { 2138 return This->lpVtbl->InvokeCommand(This,pici); 2139 } 2140 static FORCEINLINE HRESULT IContextMenu2_GetCommandString(IContextMenu2* This,UINT_PTR idCmd,UINT uType,UINT *pReserved,CHAR *pszName,UINT cchMax) { 2141 return This->lpVtbl->GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax); 2142 } 2143 /*** IContextMenu2 methods ***/ 2144 static FORCEINLINE HRESULT IContextMenu2_HandleMenuMsg(IContextMenu2* This,UINT uMsg,WPARAM wParam,LPARAM lParam) { 2145 return This->lpVtbl->HandleMenuMsg(This,uMsg,wParam,lParam); 2146 } 2147 #endif 2148 #endif 2149 2150 #endif 2151 2152 HRESULT STDMETHODCALLTYPE IContextMenu2_HandleMenuMsg_Proxy( 2153 IContextMenu2* This, 2154 UINT uMsg, 2155 WPARAM wParam, 2156 LPARAM lParam); 2157 void __RPC_STUB IContextMenu2_HandleMenuMsg_Stub( 2158 IRpcStubBuffer* This, 2159 IRpcChannelBuffer* pRpcChannelBuffer, 2160 PRPC_MESSAGE pRpcMessage, 2161 DWORD* pdwStubPhase); 2162 2163 #endif /* __IContextMenu2_INTERFACE_DEFINED__ */ 2164 2165 typedef IContextMenu2 *LPCONTEXTMENU2; 2166 2167 /***************************************************************************** 2168 * IContextMenu3 interface 2169 */ 2170 #ifndef __IContextMenu3_INTERFACE_DEFINED__ 2171 #define __IContextMenu3_INTERFACE_DEFINED__ 2172 2173 DEFINE_GUID(IID_IContextMenu3, 0xbcfce0a0, 0xec17, 0x11d0, 0x8d,0x10, 0x00,0xa0,0xc9,0x0f,0x27,0x19); 2174 #if defined(__cplusplus) && !defined(CINTERFACE) 2175 MIDL_INTERFACE("bcfce0a0-ec17-11d0-8d10-00a0c90f2719") 2176 IContextMenu3 : public IContextMenu2 2177 { 2178 virtual HRESULT STDMETHODCALLTYPE HandleMenuMsg2( 2179 UINT uMsg, 2180 WPARAM wParam, 2181 LPARAM lParam, 2182 LRESULT *plResult) = 0; 2183 2184 }; 2185 #ifdef __CRT_UUID_DECL 2186 __CRT_UUID_DECL(IContextMenu3, 0xbcfce0a0, 0xec17, 0x11d0, 0x8d,0x10, 0x00,0xa0,0xc9,0x0f,0x27,0x19) 2187 #endif 2188 #else 2189 typedef struct IContextMenu3Vtbl { 2190 BEGIN_INTERFACE 2191 2192 /*** IUnknown methods ***/ 2193 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2194 IContextMenu3* This, 2195 REFIID riid, 2196 void **ppvObject); 2197 2198 ULONG (STDMETHODCALLTYPE *AddRef)( 2199 IContextMenu3* This); 2200 2201 ULONG (STDMETHODCALLTYPE *Release)( 2202 IContextMenu3* This); 2203 2204 /*** IContextMenu methods ***/ 2205 HRESULT (STDMETHODCALLTYPE *QueryContextMenu)( 2206 IContextMenu3* This, 2207 HMENU hmenu, 2208 UINT indexMenu, 2209 UINT idCmdFirst, 2210 UINT idCmdLast, 2211 UINT uFlags); 2212 2213 HRESULT (STDMETHODCALLTYPE *InvokeCommand)( 2214 IContextMenu3* This, 2215 CMINVOKECOMMANDINFO *pici); 2216 2217 HRESULT (STDMETHODCALLTYPE *GetCommandString)( 2218 IContextMenu3* This, 2219 UINT_PTR idCmd, 2220 UINT uType, 2221 UINT *pReserved, 2222 CHAR *pszName, 2223 UINT cchMax); 2224 2225 /*** IContextMenu2 methods ***/ 2226 HRESULT (STDMETHODCALLTYPE *HandleMenuMsg)( 2227 IContextMenu3* This, 2228 UINT uMsg, 2229 WPARAM wParam, 2230 LPARAM lParam); 2231 2232 /*** IContextMenu3 methods ***/ 2233 HRESULT (STDMETHODCALLTYPE *HandleMenuMsg2)( 2234 IContextMenu3* This, 2235 UINT uMsg, 2236 WPARAM wParam, 2237 LPARAM lParam, 2238 LRESULT *plResult); 2239 2240 END_INTERFACE 2241 } IContextMenu3Vtbl; 2242 interface IContextMenu3 { 2243 CONST_VTBL IContextMenu3Vtbl* lpVtbl; 2244 }; 2245 2246 #ifdef COBJMACROS 2247 #ifndef WIDL_C_INLINE_WRAPPERS 2248 /*** IUnknown methods ***/ 2249 #define IContextMenu3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2250 #define IContextMenu3_AddRef(This) (This)->lpVtbl->AddRef(This) 2251 #define IContextMenu3_Release(This) (This)->lpVtbl->Release(This) 2252 /*** IContextMenu methods ***/ 2253 #define IContextMenu3_QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) (This)->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags) 2254 #define IContextMenu3_InvokeCommand(This,pici) (This)->lpVtbl->InvokeCommand(This,pici) 2255 #define IContextMenu3_GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax) (This)->lpVtbl->GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax) 2256 /*** IContextMenu2 methods ***/ 2257 #define IContextMenu3_HandleMenuMsg(This,uMsg,wParam,lParam) (This)->lpVtbl->HandleMenuMsg(This,uMsg,wParam,lParam) 2258 /*** IContextMenu3 methods ***/ 2259 #define IContextMenu3_HandleMenuMsg2(This,uMsg,wParam,lParam,plResult) (This)->lpVtbl->HandleMenuMsg2(This,uMsg,wParam,lParam,plResult) 2260 #else 2261 /*** IUnknown methods ***/ 2262 static FORCEINLINE HRESULT IContextMenu3_QueryInterface(IContextMenu3* This,REFIID riid,void **ppvObject) { 2263 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2264 } 2265 static FORCEINLINE ULONG IContextMenu3_AddRef(IContextMenu3* This) { 2266 return This->lpVtbl->AddRef(This); 2267 } 2268 static FORCEINLINE ULONG IContextMenu3_Release(IContextMenu3* This) { 2269 return This->lpVtbl->Release(This); 2270 } 2271 /*** IContextMenu methods ***/ 2272 static FORCEINLINE HRESULT IContextMenu3_QueryContextMenu(IContextMenu3* This,HMENU hmenu,UINT indexMenu,UINT idCmdFirst,UINT idCmdLast,UINT uFlags) { 2273 return This->lpVtbl->QueryContextMenu(This,hmenu,indexMenu,idCmdFirst,idCmdLast,uFlags); 2274 } 2275 static FORCEINLINE HRESULT IContextMenu3_InvokeCommand(IContextMenu3* This,CMINVOKECOMMANDINFO *pici) { 2276 return This->lpVtbl->InvokeCommand(This,pici); 2277 } 2278 static FORCEINLINE HRESULT IContextMenu3_GetCommandString(IContextMenu3* This,UINT_PTR idCmd,UINT uType,UINT *pReserved,CHAR *pszName,UINT cchMax) { 2279 return This->lpVtbl->GetCommandString(This,idCmd,uType,pReserved,pszName,cchMax); 2280 } 2281 /*** IContextMenu2 methods ***/ 2282 static FORCEINLINE HRESULT IContextMenu3_HandleMenuMsg(IContextMenu3* This,UINT uMsg,WPARAM wParam,LPARAM lParam) { 2283 return This->lpVtbl->HandleMenuMsg(This,uMsg,wParam,lParam); 2284 } 2285 /*** IContextMenu3 methods ***/ 2286 static FORCEINLINE HRESULT IContextMenu3_HandleMenuMsg2(IContextMenu3* This,UINT uMsg,WPARAM wParam,LPARAM lParam,LRESULT *plResult) { 2287 return This->lpVtbl->HandleMenuMsg2(This,uMsg,wParam,lParam,plResult); 2288 } 2289 #endif 2290 #endif 2291 2292 #endif 2293 2294 HRESULT STDMETHODCALLTYPE IContextMenu3_HandleMenuMsg2_Proxy( 2295 IContextMenu3* This, 2296 UINT uMsg, 2297 WPARAM wParam, 2298 LPARAM lParam, 2299 LRESULT *plResult); 2300 void __RPC_STUB IContextMenu3_HandleMenuMsg2_Stub( 2301 IRpcStubBuffer* This, 2302 IRpcChannelBuffer* pRpcChannelBuffer, 2303 PRPC_MESSAGE pRpcMessage, 2304 DWORD* pdwStubPhase); 2305 2306 #endif /* __IContextMenu3_INTERFACE_DEFINED__ */ 2307 2308 typedef IContextMenu3 *LPCONTEXTMENU3; 2309 2310 /***************************************************************************** 2311 * IExecuteCommand interface 2312 */ 2313 #ifndef __IExecuteCommand_INTERFACE_DEFINED__ 2314 #define __IExecuteCommand_INTERFACE_DEFINED__ 2315 2316 DEFINE_GUID(IID_IExecuteCommand, 0x7f9185b0, 0xcb92, 0x43c5, 0x80,0xa9, 0x92,0x27,0x7a,0x4f,0x7b,0x54); 2317 #if defined(__cplusplus) && !defined(CINTERFACE) 2318 MIDL_INTERFACE("7f9185b0-cb92-43c5-80a9-92277a4f7b54") 2319 IExecuteCommand : public IUnknown 2320 { 2321 virtual HRESULT STDMETHODCALLTYPE SetKeyState( 2322 DWORD grfKeyState) = 0; 2323 2324 virtual HRESULT STDMETHODCALLTYPE SetParameters( 2325 LPCWSTR pszParameters) = 0; 2326 2327 virtual HRESULT STDMETHODCALLTYPE SetPosition( 2328 POINT pt) = 0; 2329 2330 virtual HRESULT STDMETHODCALLTYPE SetShowWindow( 2331 int nShow) = 0; 2332 2333 virtual HRESULT STDMETHODCALLTYPE SetNoShowUI( 2334 WINBOOL fNoShowUI) = 0; 2335 2336 virtual HRESULT STDMETHODCALLTYPE SetDirectory( 2337 LPCWSTR pszDirectory) = 0; 2338 2339 virtual HRESULT STDMETHODCALLTYPE Execute( 2340 ) = 0; 2341 2342 }; 2343 #ifdef __CRT_UUID_DECL 2344 __CRT_UUID_DECL(IExecuteCommand, 0x7f9185b0, 0xcb92, 0x43c5, 0x80,0xa9, 0x92,0x27,0x7a,0x4f,0x7b,0x54) 2345 #endif 2346 #else 2347 typedef struct IExecuteCommandVtbl { 2348 BEGIN_INTERFACE 2349 2350 /*** IUnknown methods ***/ 2351 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2352 IExecuteCommand* This, 2353 REFIID riid, 2354 void **ppvObject); 2355 2356 ULONG (STDMETHODCALLTYPE *AddRef)( 2357 IExecuteCommand* This); 2358 2359 ULONG (STDMETHODCALLTYPE *Release)( 2360 IExecuteCommand* This); 2361 2362 /*** IExecuteCommand methods ***/ 2363 HRESULT (STDMETHODCALLTYPE *SetKeyState)( 2364 IExecuteCommand* This, 2365 DWORD grfKeyState); 2366 2367 HRESULT (STDMETHODCALLTYPE *SetParameters)( 2368 IExecuteCommand* This, 2369 LPCWSTR pszParameters); 2370 2371 HRESULT (STDMETHODCALLTYPE *SetPosition)( 2372 IExecuteCommand* This, 2373 POINT pt); 2374 2375 HRESULT (STDMETHODCALLTYPE *SetShowWindow)( 2376 IExecuteCommand* This, 2377 int nShow); 2378 2379 HRESULT (STDMETHODCALLTYPE *SetNoShowUI)( 2380 IExecuteCommand* This, 2381 WINBOOL fNoShowUI); 2382 2383 HRESULT (STDMETHODCALLTYPE *SetDirectory)( 2384 IExecuteCommand* This, 2385 LPCWSTR pszDirectory); 2386 2387 HRESULT (STDMETHODCALLTYPE *Execute)( 2388 IExecuteCommand* This); 2389 2390 END_INTERFACE 2391 } IExecuteCommandVtbl; 2392 interface IExecuteCommand { 2393 CONST_VTBL IExecuteCommandVtbl* lpVtbl; 2394 }; 2395 2396 #ifdef COBJMACROS 2397 #ifndef WIDL_C_INLINE_WRAPPERS 2398 /*** IUnknown methods ***/ 2399 #define IExecuteCommand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2400 #define IExecuteCommand_AddRef(This) (This)->lpVtbl->AddRef(This) 2401 #define IExecuteCommand_Release(This) (This)->lpVtbl->Release(This) 2402 /*** IExecuteCommand methods ***/ 2403 #define IExecuteCommand_SetKeyState(This,grfKeyState) (This)->lpVtbl->SetKeyState(This,grfKeyState) 2404 #define IExecuteCommand_SetParameters(This,pszParameters) (This)->lpVtbl->SetParameters(This,pszParameters) 2405 #define IExecuteCommand_SetPosition(This,pt) (This)->lpVtbl->SetPosition(This,pt) 2406 #define IExecuteCommand_SetShowWindow(This,nShow) (This)->lpVtbl->SetShowWindow(This,nShow) 2407 #define IExecuteCommand_SetNoShowUI(This,fNoShowUI) (This)->lpVtbl->SetNoShowUI(This,fNoShowUI) 2408 #define IExecuteCommand_SetDirectory(This,pszDirectory) (This)->lpVtbl->SetDirectory(This,pszDirectory) 2409 #define IExecuteCommand_Execute(This) (This)->lpVtbl->Execute(This) 2410 #else 2411 /*** IUnknown methods ***/ 2412 static FORCEINLINE HRESULT IExecuteCommand_QueryInterface(IExecuteCommand* This,REFIID riid,void **ppvObject) { 2413 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2414 } 2415 static FORCEINLINE ULONG IExecuteCommand_AddRef(IExecuteCommand* This) { 2416 return This->lpVtbl->AddRef(This); 2417 } 2418 static FORCEINLINE ULONG IExecuteCommand_Release(IExecuteCommand* This) { 2419 return This->lpVtbl->Release(This); 2420 } 2421 /*** IExecuteCommand methods ***/ 2422 static FORCEINLINE HRESULT IExecuteCommand_SetKeyState(IExecuteCommand* This,DWORD grfKeyState) { 2423 return This->lpVtbl->SetKeyState(This,grfKeyState); 2424 } 2425 static FORCEINLINE HRESULT IExecuteCommand_SetParameters(IExecuteCommand* This,LPCWSTR pszParameters) { 2426 return This->lpVtbl->SetParameters(This,pszParameters); 2427 } 2428 static FORCEINLINE HRESULT IExecuteCommand_SetPosition(IExecuteCommand* This,POINT pt) { 2429 return This->lpVtbl->SetPosition(This,pt); 2430 } 2431 static FORCEINLINE HRESULT IExecuteCommand_SetShowWindow(IExecuteCommand* This,int nShow) { 2432 return This->lpVtbl->SetShowWindow(This,nShow); 2433 } 2434 static FORCEINLINE HRESULT IExecuteCommand_SetNoShowUI(IExecuteCommand* This,WINBOOL fNoShowUI) { 2435 return This->lpVtbl->SetNoShowUI(This,fNoShowUI); 2436 } 2437 static FORCEINLINE HRESULT IExecuteCommand_SetDirectory(IExecuteCommand* This,LPCWSTR pszDirectory) { 2438 return This->lpVtbl->SetDirectory(This,pszDirectory); 2439 } 2440 static FORCEINLINE HRESULT IExecuteCommand_Execute(IExecuteCommand* This) { 2441 return This->lpVtbl->Execute(This); 2442 } 2443 #endif 2444 #endif 2445 2446 #endif 2447 2448 HRESULT STDMETHODCALLTYPE IExecuteCommand_SetKeyState_Proxy( 2449 IExecuteCommand* This, 2450 DWORD grfKeyState); 2451 void __RPC_STUB IExecuteCommand_SetKeyState_Stub( 2452 IRpcStubBuffer* This, 2453 IRpcChannelBuffer* pRpcChannelBuffer, 2454 PRPC_MESSAGE pRpcMessage, 2455 DWORD* pdwStubPhase); 2456 HRESULT STDMETHODCALLTYPE IExecuteCommand_SetParameters_Proxy( 2457 IExecuteCommand* This, 2458 LPCWSTR pszParameters); 2459 void __RPC_STUB IExecuteCommand_SetParameters_Stub( 2460 IRpcStubBuffer* This, 2461 IRpcChannelBuffer* pRpcChannelBuffer, 2462 PRPC_MESSAGE pRpcMessage, 2463 DWORD* pdwStubPhase); 2464 HRESULT STDMETHODCALLTYPE IExecuteCommand_SetPosition_Proxy( 2465 IExecuteCommand* This, 2466 POINT pt); 2467 void __RPC_STUB IExecuteCommand_SetPosition_Stub( 2468 IRpcStubBuffer* This, 2469 IRpcChannelBuffer* pRpcChannelBuffer, 2470 PRPC_MESSAGE pRpcMessage, 2471 DWORD* pdwStubPhase); 2472 HRESULT STDMETHODCALLTYPE IExecuteCommand_SetShowWindow_Proxy( 2473 IExecuteCommand* This, 2474 int nShow); 2475 void __RPC_STUB IExecuteCommand_SetShowWindow_Stub( 2476 IRpcStubBuffer* This, 2477 IRpcChannelBuffer* pRpcChannelBuffer, 2478 PRPC_MESSAGE pRpcMessage, 2479 DWORD* pdwStubPhase); 2480 HRESULT STDMETHODCALLTYPE IExecuteCommand_SetNoShowUI_Proxy( 2481 IExecuteCommand* This, 2482 WINBOOL fNoShowUI); 2483 void __RPC_STUB IExecuteCommand_SetNoShowUI_Stub( 2484 IRpcStubBuffer* This, 2485 IRpcChannelBuffer* pRpcChannelBuffer, 2486 PRPC_MESSAGE pRpcMessage, 2487 DWORD* pdwStubPhase); 2488 HRESULT STDMETHODCALLTYPE IExecuteCommand_SetDirectory_Proxy( 2489 IExecuteCommand* This, 2490 LPCWSTR pszDirectory); 2491 void __RPC_STUB IExecuteCommand_SetDirectory_Stub( 2492 IRpcStubBuffer* This, 2493 IRpcChannelBuffer* pRpcChannelBuffer, 2494 PRPC_MESSAGE pRpcMessage, 2495 DWORD* pdwStubPhase); 2496 HRESULT STDMETHODCALLTYPE IExecuteCommand_Execute_Proxy( 2497 IExecuteCommand* This); 2498 void __RPC_STUB IExecuteCommand_Execute_Stub( 2499 IRpcStubBuffer* This, 2500 IRpcChannelBuffer* pRpcChannelBuffer, 2501 PRPC_MESSAGE pRpcMessage, 2502 DWORD* pdwStubPhase); 2503 2504 #endif /* __IExecuteCommand_INTERFACE_DEFINED__ */ 2505 2506 2507 /***************************************************************************** 2508 * IPersistFolder interface 2509 */ 2510 #ifndef __IPersistFolder_INTERFACE_DEFINED__ 2511 #define __IPersistFolder_INTERFACE_DEFINED__ 2512 2513 DEFINE_GUID(IID_IPersistFolder, 0x000214ea, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 2514 #if defined(__cplusplus) && !defined(CINTERFACE) 2515 MIDL_INTERFACE("000214ea-0000-0000-c000-000000000046") 2516 IPersistFolder : public IPersist 2517 { 2518 virtual HRESULT STDMETHODCALLTYPE Initialize( 2519 PCIDLIST_ABSOLUTE pidl) = 0; 2520 2521 }; 2522 #ifdef __CRT_UUID_DECL 2523 __CRT_UUID_DECL(IPersistFolder, 0x000214ea, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 2524 #endif 2525 #else 2526 typedef struct IPersistFolderVtbl { 2527 BEGIN_INTERFACE 2528 2529 /*** IUnknown methods ***/ 2530 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2531 IPersistFolder* This, 2532 REFIID riid, 2533 void **ppvObject); 2534 2535 ULONG (STDMETHODCALLTYPE *AddRef)( 2536 IPersistFolder* This); 2537 2538 ULONG (STDMETHODCALLTYPE *Release)( 2539 IPersistFolder* This); 2540 2541 /*** IPersist methods ***/ 2542 HRESULT (STDMETHODCALLTYPE *GetClassID)( 2543 IPersistFolder* This, 2544 CLSID *pClassID); 2545 2546 /*** IPersistFolder methods ***/ 2547 HRESULT (STDMETHODCALLTYPE *Initialize)( 2548 IPersistFolder* This, 2549 PCIDLIST_ABSOLUTE pidl); 2550 2551 END_INTERFACE 2552 } IPersistFolderVtbl; 2553 interface IPersistFolder { 2554 CONST_VTBL IPersistFolderVtbl* lpVtbl; 2555 }; 2556 2557 #ifdef COBJMACROS 2558 #ifndef WIDL_C_INLINE_WRAPPERS 2559 /*** IUnknown methods ***/ 2560 #define IPersistFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2561 #define IPersistFolder_AddRef(This) (This)->lpVtbl->AddRef(This) 2562 #define IPersistFolder_Release(This) (This)->lpVtbl->Release(This) 2563 /*** IPersist methods ***/ 2564 #define IPersistFolder_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) 2565 /*** IPersistFolder methods ***/ 2566 #define IPersistFolder_Initialize(This,pidl) (This)->lpVtbl->Initialize(This,pidl) 2567 #else 2568 /*** IUnknown methods ***/ 2569 static FORCEINLINE HRESULT IPersistFolder_QueryInterface(IPersistFolder* This,REFIID riid,void **ppvObject) { 2570 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2571 } 2572 static FORCEINLINE ULONG IPersistFolder_AddRef(IPersistFolder* This) { 2573 return This->lpVtbl->AddRef(This); 2574 } 2575 static FORCEINLINE ULONG IPersistFolder_Release(IPersistFolder* This) { 2576 return This->lpVtbl->Release(This); 2577 } 2578 /*** IPersist methods ***/ 2579 static FORCEINLINE HRESULT IPersistFolder_GetClassID(IPersistFolder* This,CLSID *pClassID) { 2580 return This->lpVtbl->GetClassID(This,pClassID); 2581 } 2582 /*** IPersistFolder methods ***/ 2583 static FORCEINLINE HRESULT IPersistFolder_Initialize(IPersistFolder* This,PCIDLIST_ABSOLUTE pidl) { 2584 return This->lpVtbl->Initialize(This,pidl); 2585 } 2586 #endif 2587 #endif 2588 2589 #endif 2590 2591 HRESULT STDMETHODCALLTYPE IPersistFolder_Initialize_Proxy( 2592 IPersistFolder* This, 2593 PCIDLIST_ABSOLUTE pidl); 2594 void __RPC_STUB IPersistFolder_Initialize_Stub( 2595 IRpcStubBuffer* This, 2596 IRpcChannelBuffer* pRpcChannelBuffer, 2597 PRPC_MESSAGE pRpcMessage, 2598 DWORD* pdwStubPhase); 2599 2600 #endif /* __IPersistFolder_INTERFACE_DEFINED__ */ 2601 2602 typedef IPersistFolder *LPPERSISTFOLDER; 2603 2604 #define IRTIR_TASK_NOT_RUNNING 0 2605 #define IRTIR_TASK_RUNNING 1 2606 #define IRTIR_TASK_SUSPENDED 2 2607 #define IRTIR_TASK_PENDING 3 2608 #define IRTIR_TASK_FINISHED 4 2609 2610 /***************************************************************************** 2611 * IRunnableTask interface 2612 */ 2613 #ifndef __IRunnableTask_INTERFACE_DEFINED__ 2614 #define __IRunnableTask_INTERFACE_DEFINED__ 2615 2616 DEFINE_GUID(IID_IRunnableTask, 0x85788d00, 0x6807, 0x11d0, 0xb8,0x10, 0x00,0xc0,0x4f,0xd7,0x06,0xec); 2617 #if defined(__cplusplus) && !defined(CINTERFACE) 2618 MIDL_INTERFACE("85788d00-6807-11d0-b810-00c04fd706ec") 2619 IRunnableTask : public IUnknown 2620 { 2621 virtual HRESULT STDMETHODCALLTYPE Run( 2622 ) = 0; 2623 2624 virtual HRESULT STDMETHODCALLTYPE Kill( 2625 WINBOOL bWait) = 0; 2626 2627 virtual HRESULT STDMETHODCALLTYPE Suspend( 2628 ) = 0; 2629 2630 virtual HRESULT STDMETHODCALLTYPE Resume( 2631 ) = 0; 2632 2633 virtual ULONG STDMETHODCALLTYPE IsRunning( 2634 ) = 0; 2635 2636 }; 2637 #ifdef __CRT_UUID_DECL 2638 __CRT_UUID_DECL(IRunnableTask, 0x85788d00, 0x6807, 0x11d0, 0xb8,0x10, 0x00,0xc0,0x4f,0xd7,0x06,0xec) 2639 #endif 2640 #else 2641 typedef struct IRunnableTaskVtbl { 2642 BEGIN_INTERFACE 2643 2644 /*** IUnknown methods ***/ 2645 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2646 IRunnableTask* This, 2647 REFIID riid, 2648 void **ppvObject); 2649 2650 ULONG (STDMETHODCALLTYPE *AddRef)( 2651 IRunnableTask* This); 2652 2653 ULONG (STDMETHODCALLTYPE *Release)( 2654 IRunnableTask* This); 2655 2656 /*** IRunnableTask methods ***/ 2657 HRESULT (STDMETHODCALLTYPE *Run)( 2658 IRunnableTask* This); 2659 2660 HRESULT (STDMETHODCALLTYPE *Kill)( 2661 IRunnableTask* This, 2662 WINBOOL bWait); 2663 2664 HRESULT (STDMETHODCALLTYPE *Suspend)( 2665 IRunnableTask* This); 2666 2667 HRESULT (STDMETHODCALLTYPE *Resume)( 2668 IRunnableTask* This); 2669 2670 ULONG (STDMETHODCALLTYPE *IsRunning)( 2671 IRunnableTask* This); 2672 2673 END_INTERFACE 2674 } IRunnableTaskVtbl; 2675 interface IRunnableTask { 2676 CONST_VTBL IRunnableTaskVtbl* lpVtbl; 2677 }; 2678 2679 #ifdef COBJMACROS 2680 #ifndef WIDL_C_INLINE_WRAPPERS 2681 /*** IUnknown methods ***/ 2682 #define IRunnableTask_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2683 #define IRunnableTask_AddRef(This) (This)->lpVtbl->AddRef(This) 2684 #define IRunnableTask_Release(This) (This)->lpVtbl->Release(This) 2685 /*** IRunnableTask methods ***/ 2686 #define IRunnableTask_Run(This) (This)->lpVtbl->Run(This) 2687 #define IRunnableTask_Kill(This,bWait) (This)->lpVtbl->Kill(This,bWait) 2688 #define IRunnableTask_Suspend(This) (This)->lpVtbl->Suspend(This) 2689 #define IRunnableTask_Resume(This) (This)->lpVtbl->Resume(This) 2690 #define IRunnableTask_IsRunning(This) (This)->lpVtbl->IsRunning(This) 2691 #else 2692 /*** IUnknown methods ***/ 2693 static FORCEINLINE HRESULT IRunnableTask_QueryInterface(IRunnableTask* This,REFIID riid,void **ppvObject) { 2694 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2695 } 2696 static FORCEINLINE ULONG IRunnableTask_AddRef(IRunnableTask* This) { 2697 return This->lpVtbl->AddRef(This); 2698 } 2699 static FORCEINLINE ULONG IRunnableTask_Release(IRunnableTask* This) { 2700 return This->lpVtbl->Release(This); 2701 } 2702 /*** IRunnableTask methods ***/ 2703 static FORCEINLINE HRESULT IRunnableTask_Run(IRunnableTask* This) { 2704 return This->lpVtbl->Run(This); 2705 } 2706 static FORCEINLINE HRESULT IRunnableTask_Kill(IRunnableTask* This,WINBOOL bWait) { 2707 return This->lpVtbl->Kill(This,bWait); 2708 } 2709 static FORCEINLINE HRESULT IRunnableTask_Suspend(IRunnableTask* This) { 2710 return This->lpVtbl->Suspend(This); 2711 } 2712 static FORCEINLINE HRESULT IRunnableTask_Resume(IRunnableTask* This) { 2713 return This->lpVtbl->Resume(This); 2714 } 2715 static FORCEINLINE ULONG IRunnableTask_IsRunning(IRunnableTask* This) { 2716 return This->lpVtbl->IsRunning(This); 2717 } 2718 #endif 2719 #endif 2720 2721 #endif 2722 2723 HRESULT STDMETHODCALLTYPE IRunnableTask_Run_Proxy( 2724 IRunnableTask* This); 2725 void __RPC_STUB IRunnableTask_Run_Stub( 2726 IRpcStubBuffer* This, 2727 IRpcChannelBuffer* pRpcChannelBuffer, 2728 PRPC_MESSAGE pRpcMessage, 2729 DWORD* pdwStubPhase); 2730 HRESULT STDMETHODCALLTYPE IRunnableTask_Kill_Proxy( 2731 IRunnableTask* This, 2732 WINBOOL bWait); 2733 void __RPC_STUB IRunnableTask_Kill_Stub( 2734 IRpcStubBuffer* This, 2735 IRpcChannelBuffer* pRpcChannelBuffer, 2736 PRPC_MESSAGE pRpcMessage, 2737 DWORD* pdwStubPhase); 2738 HRESULT STDMETHODCALLTYPE IRunnableTask_Suspend_Proxy( 2739 IRunnableTask* This); 2740 void __RPC_STUB IRunnableTask_Suspend_Stub( 2741 IRpcStubBuffer* This, 2742 IRpcChannelBuffer* pRpcChannelBuffer, 2743 PRPC_MESSAGE pRpcMessage, 2744 DWORD* pdwStubPhase); 2745 HRESULT STDMETHODCALLTYPE IRunnableTask_Resume_Proxy( 2746 IRunnableTask* This); 2747 void __RPC_STUB IRunnableTask_Resume_Stub( 2748 IRpcStubBuffer* This, 2749 IRpcChannelBuffer* pRpcChannelBuffer, 2750 PRPC_MESSAGE pRpcMessage, 2751 DWORD* pdwStubPhase); 2752 ULONG STDMETHODCALLTYPE IRunnableTask_IsRunning_Proxy( 2753 IRunnableTask* This); 2754 void __RPC_STUB IRunnableTask_IsRunning_Stub( 2755 IRpcStubBuffer* This, 2756 IRpcChannelBuffer* pRpcChannelBuffer, 2757 PRPC_MESSAGE pRpcMessage, 2758 DWORD* pdwStubPhase); 2759 2760 #endif /* __IRunnableTask_INTERFACE_DEFINED__ */ 2761 2762 2763 #define TOID_NULL GUID_NULL 2764 #define ITSAT_DEFAULT_LPARAM ((DWORD_PTR)-1) 2765 2766 #define ITSAT_DEFAULT_PRIORITY 0x10000000 2767 #define ITSAT_MAX_PRIORITY 0x7fffffff 2768 #define ITSAT_MIN_PRIORITY 0x00000000 2769 2770 #define ITSSFLAG_COMPLETE_ON_DESTROY 0x0 2771 #define ITSSFLAG_KILL_ON_DESTROY 0x1 2772 2773 #define ITSSFLAG_FLAGS_MASK 0x3 2774 2775 #define ITSS_THREAD_DESTROY_DEFAULT_TIMEOUT (10 * 1000) 2776 #define ITSS_THREAD_TERMINATE_TIMEOUT (INFINITE) 2777 #define ITSS_THREAD_TIMEOUT_NO_CHANGE (INFINITE - 1) 2778 2779 /***************************************************************************** 2780 * IShellTaskScheduler interface 2781 */ 2782 #ifndef __IShellTaskScheduler_INTERFACE_DEFINED__ 2783 #define __IShellTaskScheduler_INTERFACE_DEFINED__ 2784 2785 DEFINE_GUID(IID_IShellTaskScheduler, 0x6ccb7be0, 0x6807, 0x11d0, 0xb8,0x10, 0x00,0xc0,0x4f,0xd7,0x06,0xec); 2786 #if defined(__cplusplus) && !defined(CINTERFACE) 2787 MIDL_INTERFACE("6ccb7be0-6807-11d0-b810-00c04fd706ec") 2788 IShellTaskScheduler : public IUnknown 2789 { 2790 virtual HRESULT STDMETHODCALLTYPE AddTask( 2791 IRunnableTask *prt, 2792 REFTASKOWNERID rtoid, 2793 DWORD_PTR lParam, 2794 DWORD dwPriority) = 0; 2795 2796 virtual HRESULT STDMETHODCALLTYPE RemoveTasks( 2797 REFTASKOWNERID rtoid, 2798 DWORD_PTR lParam, 2799 WINBOOL bWaitIfRunning) = 0; 2800 2801 virtual UINT STDMETHODCALLTYPE CountTasks( 2802 REFTASKOWNERID rtoid) = 0; 2803 2804 virtual HRESULT STDMETHODCALLTYPE Status( 2805 DWORD dwReleaseStatus, 2806 DWORD dwThreadTimeout) = 0; 2807 2808 }; 2809 #ifdef __CRT_UUID_DECL 2810 __CRT_UUID_DECL(IShellTaskScheduler, 0x6ccb7be0, 0x6807, 0x11d0, 0xb8,0x10, 0x00,0xc0,0x4f,0xd7,0x06,0xec) 2811 #endif 2812 #else 2813 typedef struct IShellTaskSchedulerVtbl { 2814 BEGIN_INTERFACE 2815 2816 /*** IUnknown methods ***/ 2817 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2818 IShellTaskScheduler* This, 2819 REFIID riid, 2820 void **ppvObject); 2821 2822 ULONG (STDMETHODCALLTYPE *AddRef)( 2823 IShellTaskScheduler* This); 2824 2825 ULONG (STDMETHODCALLTYPE *Release)( 2826 IShellTaskScheduler* This); 2827 2828 /*** IShellTaskScheduler methods ***/ 2829 HRESULT (STDMETHODCALLTYPE *AddTask)( 2830 IShellTaskScheduler* This, 2831 IRunnableTask *prt, 2832 REFTASKOWNERID rtoid, 2833 DWORD_PTR lParam, 2834 DWORD dwPriority); 2835 2836 HRESULT (STDMETHODCALLTYPE *RemoveTasks)( 2837 IShellTaskScheduler* This, 2838 REFTASKOWNERID rtoid, 2839 DWORD_PTR lParam, 2840 WINBOOL bWaitIfRunning); 2841 2842 UINT (STDMETHODCALLTYPE *CountTasks)( 2843 IShellTaskScheduler* This, 2844 REFTASKOWNERID rtoid); 2845 2846 HRESULT (STDMETHODCALLTYPE *Status)( 2847 IShellTaskScheduler* This, 2848 DWORD dwReleaseStatus, 2849 DWORD dwThreadTimeout); 2850 2851 END_INTERFACE 2852 } IShellTaskSchedulerVtbl; 2853 interface IShellTaskScheduler { 2854 CONST_VTBL IShellTaskSchedulerVtbl* lpVtbl; 2855 }; 2856 2857 #ifdef COBJMACROS 2858 #ifndef WIDL_C_INLINE_WRAPPERS 2859 /*** IUnknown methods ***/ 2860 #define IShellTaskScheduler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2861 #define IShellTaskScheduler_AddRef(This) (This)->lpVtbl->AddRef(This) 2862 #define IShellTaskScheduler_Release(This) (This)->lpVtbl->Release(This) 2863 /*** IShellTaskScheduler methods ***/ 2864 #define IShellTaskScheduler_AddTask(This,prt,rtoid,lParam,dwPriority) (This)->lpVtbl->AddTask(This,prt,rtoid,lParam,dwPriority) 2865 #define IShellTaskScheduler_RemoveTasks(This,rtoid,lParam,bWaitIfRunning) (This)->lpVtbl->RemoveTasks(This,rtoid,lParam,bWaitIfRunning) 2866 #define IShellTaskScheduler_CountTasks(This,rtoid) (This)->lpVtbl->CountTasks(This,rtoid) 2867 #define IShellTaskScheduler_Status(This,dwReleaseStatus,dwThreadTimeout) (This)->lpVtbl->Status(This,dwReleaseStatus,dwThreadTimeout) 2868 #else 2869 /*** IUnknown methods ***/ 2870 static FORCEINLINE HRESULT IShellTaskScheduler_QueryInterface(IShellTaskScheduler* This,REFIID riid,void **ppvObject) { 2871 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 2872 } 2873 static FORCEINLINE ULONG IShellTaskScheduler_AddRef(IShellTaskScheduler* This) { 2874 return This->lpVtbl->AddRef(This); 2875 } 2876 static FORCEINLINE ULONG IShellTaskScheduler_Release(IShellTaskScheduler* This) { 2877 return This->lpVtbl->Release(This); 2878 } 2879 /*** IShellTaskScheduler methods ***/ 2880 static FORCEINLINE HRESULT IShellTaskScheduler_AddTask(IShellTaskScheduler* This,IRunnableTask *prt,REFTASKOWNERID rtoid,DWORD_PTR lParam,DWORD dwPriority) { 2881 return This->lpVtbl->AddTask(This,prt,rtoid,lParam,dwPriority); 2882 } 2883 static FORCEINLINE HRESULT IShellTaskScheduler_RemoveTasks(IShellTaskScheduler* This,REFTASKOWNERID rtoid,DWORD_PTR lParam,WINBOOL bWaitIfRunning) { 2884 return This->lpVtbl->RemoveTasks(This,rtoid,lParam,bWaitIfRunning); 2885 } 2886 static FORCEINLINE UINT IShellTaskScheduler_CountTasks(IShellTaskScheduler* This,REFTASKOWNERID rtoid) { 2887 return This->lpVtbl->CountTasks(This,rtoid); 2888 } 2889 static FORCEINLINE HRESULT IShellTaskScheduler_Status(IShellTaskScheduler* This,DWORD dwReleaseStatus,DWORD dwThreadTimeout) { 2890 return This->lpVtbl->Status(This,dwReleaseStatus,dwThreadTimeout); 2891 } 2892 #endif 2893 #endif 2894 2895 #endif 2896 2897 HRESULT STDMETHODCALLTYPE IShellTaskScheduler_AddTask_Proxy( 2898 IShellTaskScheduler* This, 2899 IRunnableTask *prt, 2900 REFTASKOWNERID rtoid, 2901 DWORD_PTR lParam, 2902 DWORD dwPriority); 2903 void __RPC_STUB IShellTaskScheduler_AddTask_Stub( 2904 IRpcStubBuffer* This, 2905 IRpcChannelBuffer* pRpcChannelBuffer, 2906 PRPC_MESSAGE pRpcMessage, 2907 DWORD* pdwStubPhase); 2908 HRESULT STDMETHODCALLTYPE IShellTaskScheduler_RemoveTasks_Proxy( 2909 IShellTaskScheduler* This, 2910 REFTASKOWNERID rtoid, 2911 DWORD_PTR lParam, 2912 WINBOOL bWaitIfRunning); 2913 void __RPC_STUB IShellTaskScheduler_RemoveTasks_Stub( 2914 IRpcStubBuffer* This, 2915 IRpcChannelBuffer* pRpcChannelBuffer, 2916 PRPC_MESSAGE pRpcMessage, 2917 DWORD* pdwStubPhase); 2918 UINT STDMETHODCALLTYPE IShellTaskScheduler_CountTasks_Proxy( 2919 IShellTaskScheduler* This, 2920 REFTASKOWNERID rtoid); 2921 void __RPC_STUB IShellTaskScheduler_CountTasks_Stub( 2922 IRpcStubBuffer* This, 2923 IRpcChannelBuffer* pRpcChannelBuffer, 2924 PRPC_MESSAGE pRpcMessage, 2925 DWORD* pdwStubPhase); 2926 HRESULT STDMETHODCALLTYPE IShellTaskScheduler_Status_Proxy( 2927 IShellTaskScheduler* This, 2928 DWORD dwReleaseStatus, 2929 DWORD dwThreadTimeout); 2930 void __RPC_STUB IShellTaskScheduler_Status_Stub( 2931 IRpcStubBuffer* This, 2932 IRpcChannelBuffer* pRpcChannelBuffer, 2933 PRPC_MESSAGE pRpcMessage, 2934 DWORD* pdwStubPhase); 2935 2936 #endif /* __IShellTaskScheduler_INTERFACE_DEFINED__ */ 2937 2938 2939 #define SID_ShellTaskScheduler IID_IShellTaskScheduler 2940 2941 /***************************************************************************** 2942 * IQueryCodePage interface 2943 */ 2944 #ifndef __IQueryCodePage_INTERFACE_DEFINED__ 2945 #define __IQueryCodePage_INTERFACE_DEFINED__ 2946 2947 DEFINE_GUID(IID_IQueryCodePage, 0xc7b236ce, 0xee80, 0x11d0, 0x98,0x5f, 0x00,0x60,0x08,0x05,0x93,0x82); 2948 #if defined(__cplusplus) && !defined(CINTERFACE) 2949 MIDL_INTERFACE("c7b236ce-ee80-11d0-985f-006008059382") 2950 IQueryCodePage : public IUnknown 2951 { 2952 virtual HRESULT STDMETHODCALLTYPE GetCodePage( 2953 UINT *puiCodePage) = 0; 2954 2955 virtual HRESULT STDMETHODCALLTYPE SetCodePage( 2956 UINT uiCodePage) = 0; 2957 2958 }; 2959 #ifdef __CRT_UUID_DECL 2960 __CRT_UUID_DECL(IQueryCodePage, 0xc7b236ce, 0xee80, 0x11d0, 0x98,0x5f, 0x00,0x60,0x08,0x05,0x93,0x82) 2961 #endif 2962 #else 2963 typedef struct IQueryCodePageVtbl { 2964 BEGIN_INTERFACE 2965 2966 /*** IUnknown methods ***/ 2967 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 2968 IQueryCodePage* This, 2969 REFIID riid, 2970 void **ppvObject); 2971 2972 ULONG (STDMETHODCALLTYPE *AddRef)( 2973 IQueryCodePage* This); 2974 2975 ULONG (STDMETHODCALLTYPE *Release)( 2976 IQueryCodePage* This); 2977 2978 /*** IQueryCodePage methods ***/ 2979 HRESULT (STDMETHODCALLTYPE *GetCodePage)( 2980 IQueryCodePage* This, 2981 UINT *puiCodePage); 2982 2983 HRESULT (STDMETHODCALLTYPE *SetCodePage)( 2984 IQueryCodePage* This, 2985 UINT uiCodePage); 2986 2987 END_INTERFACE 2988 } IQueryCodePageVtbl; 2989 interface IQueryCodePage { 2990 CONST_VTBL IQueryCodePageVtbl* lpVtbl; 2991 }; 2992 2993 #ifdef COBJMACROS 2994 #ifndef WIDL_C_INLINE_WRAPPERS 2995 /*** IUnknown methods ***/ 2996 #define IQueryCodePage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 2997 #define IQueryCodePage_AddRef(This) (This)->lpVtbl->AddRef(This) 2998 #define IQueryCodePage_Release(This) (This)->lpVtbl->Release(This) 2999 /*** IQueryCodePage methods ***/ 3000 #define IQueryCodePage_GetCodePage(This,puiCodePage) (This)->lpVtbl->GetCodePage(This,puiCodePage) 3001 #define IQueryCodePage_SetCodePage(This,uiCodePage) (This)->lpVtbl->SetCodePage(This,uiCodePage) 3002 #else 3003 /*** IUnknown methods ***/ 3004 static FORCEINLINE HRESULT IQueryCodePage_QueryInterface(IQueryCodePage* This,REFIID riid,void **ppvObject) { 3005 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3006 } 3007 static FORCEINLINE ULONG IQueryCodePage_AddRef(IQueryCodePage* This) { 3008 return This->lpVtbl->AddRef(This); 3009 } 3010 static FORCEINLINE ULONG IQueryCodePage_Release(IQueryCodePage* This) { 3011 return This->lpVtbl->Release(This); 3012 } 3013 /*** IQueryCodePage methods ***/ 3014 static FORCEINLINE HRESULT IQueryCodePage_GetCodePage(IQueryCodePage* This,UINT *puiCodePage) { 3015 return This->lpVtbl->GetCodePage(This,puiCodePage); 3016 } 3017 static FORCEINLINE HRESULT IQueryCodePage_SetCodePage(IQueryCodePage* This,UINT uiCodePage) { 3018 return This->lpVtbl->SetCodePage(This,uiCodePage); 3019 } 3020 #endif 3021 #endif 3022 3023 #endif 3024 3025 HRESULT STDMETHODCALLTYPE IQueryCodePage_GetCodePage_Proxy( 3026 IQueryCodePage* This, 3027 UINT *puiCodePage); 3028 void __RPC_STUB IQueryCodePage_GetCodePage_Stub( 3029 IRpcStubBuffer* This, 3030 IRpcChannelBuffer* pRpcChannelBuffer, 3031 PRPC_MESSAGE pRpcMessage, 3032 DWORD* pdwStubPhase); 3033 HRESULT STDMETHODCALLTYPE IQueryCodePage_SetCodePage_Proxy( 3034 IQueryCodePage* This, 3035 UINT uiCodePage); 3036 void __RPC_STUB IQueryCodePage_SetCodePage_Stub( 3037 IRpcStubBuffer* This, 3038 IRpcChannelBuffer* pRpcChannelBuffer, 3039 PRPC_MESSAGE pRpcMessage, 3040 DWORD* pdwStubPhase); 3041 3042 #endif /* __IQueryCodePage_INTERFACE_DEFINED__ */ 3043 3044 3045 /***************************************************************************** 3046 * IPersistFolder2 interface 3047 */ 3048 #ifndef __IPersistFolder2_INTERFACE_DEFINED__ 3049 #define __IPersistFolder2_INTERFACE_DEFINED__ 3050 3051 DEFINE_GUID(IID_IPersistFolder2, 0x1ac3d9f0, 0x175c, 0x11d1, 0x95,0xbe, 0x00,0x60,0x97,0x97,0xea,0x4f); 3052 #if defined(__cplusplus) && !defined(CINTERFACE) 3053 MIDL_INTERFACE("1ac3d9f0-175c-11d1-95be-00609797ea4f") 3054 IPersistFolder2 : public IPersistFolder 3055 { 3056 virtual HRESULT STDMETHODCALLTYPE GetCurFolder( 3057 PIDLIST_ABSOLUTE *ppidl) = 0; 3058 3059 }; 3060 #ifdef __CRT_UUID_DECL 3061 __CRT_UUID_DECL(IPersistFolder2, 0x1ac3d9f0, 0x175c, 0x11d1, 0x95,0xbe, 0x00,0x60,0x97,0x97,0xea,0x4f) 3062 #endif 3063 #else 3064 typedef struct IPersistFolder2Vtbl { 3065 BEGIN_INTERFACE 3066 3067 /*** IUnknown methods ***/ 3068 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3069 IPersistFolder2* This, 3070 REFIID riid, 3071 void **ppvObject); 3072 3073 ULONG (STDMETHODCALLTYPE *AddRef)( 3074 IPersistFolder2* This); 3075 3076 ULONG (STDMETHODCALLTYPE *Release)( 3077 IPersistFolder2* This); 3078 3079 /*** IPersist methods ***/ 3080 HRESULT (STDMETHODCALLTYPE *GetClassID)( 3081 IPersistFolder2* This, 3082 CLSID *pClassID); 3083 3084 /*** IPersistFolder methods ***/ 3085 HRESULT (STDMETHODCALLTYPE *Initialize)( 3086 IPersistFolder2* This, 3087 PCIDLIST_ABSOLUTE pidl); 3088 3089 /*** IPersistFolder2 methods ***/ 3090 HRESULT (STDMETHODCALLTYPE *GetCurFolder)( 3091 IPersistFolder2* This, 3092 PIDLIST_ABSOLUTE *ppidl); 3093 3094 END_INTERFACE 3095 } IPersistFolder2Vtbl; 3096 interface IPersistFolder2 { 3097 CONST_VTBL IPersistFolder2Vtbl* lpVtbl; 3098 }; 3099 3100 #ifdef COBJMACROS 3101 #ifndef WIDL_C_INLINE_WRAPPERS 3102 /*** IUnknown methods ***/ 3103 #define IPersistFolder2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3104 #define IPersistFolder2_AddRef(This) (This)->lpVtbl->AddRef(This) 3105 #define IPersistFolder2_Release(This) (This)->lpVtbl->Release(This) 3106 /*** IPersist methods ***/ 3107 #define IPersistFolder2_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) 3108 /*** IPersistFolder methods ***/ 3109 #define IPersistFolder2_Initialize(This,pidl) (This)->lpVtbl->Initialize(This,pidl) 3110 /*** IPersistFolder2 methods ***/ 3111 #define IPersistFolder2_GetCurFolder(This,ppidl) (This)->lpVtbl->GetCurFolder(This,ppidl) 3112 #else 3113 /*** IUnknown methods ***/ 3114 static FORCEINLINE HRESULT IPersistFolder2_QueryInterface(IPersistFolder2* This,REFIID riid,void **ppvObject) { 3115 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3116 } 3117 static FORCEINLINE ULONG IPersistFolder2_AddRef(IPersistFolder2* This) { 3118 return This->lpVtbl->AddRef(This); 3119 } 3120 static FORCEINLINE ULONG IPersistFolder2_Release(IPersistFolder2* This) { 3121 return This->lpVtbl->Release(This); 3122 } 3123 /*** IPersist methods ***/ 3124 static FORCEINLINE HRESULT IPersistFolder2_GetClassID(IPersistFolder2* This,CLSID *pClassID) { 3125 return This->lpVtbl->GetClassID(This,pClassID); 3126 } 3127 /*** IPersistFolder methods ***/ 3128 static FORCEINLINE HRESULT IPersistFolder2_Initialize(IPersistFolder2* This,PCIDLIST_ABSOLUTE pidl) { 3129 return This->lpVtbl->Initialize(This,pidl); 3130 } 3131 /*** IPersistFolder2 methods ***/ 3132 static FORCEINLINE HRESULT IPersistFolder2_GetCurFolder(IPersistFolder2* This,PIDLIST_ABSOLUTE *ppidl) { 3133 return This->lpVtbl->GetCurFolder(This,ppidl); 3134 } 3135 #endif 3136 #endif 3137 3138 #endif 3139 3140 HRESULT STDMETHODCALLTYPE IPersistFolder2_GetCurFolder_Proxy( 3141 IPersistFolder2* This, 3142 PIDLIST_ABSOLUTE *ppidl); 3143 void __RPC_STUB IPersistFolder2_GetCurFolder_Stub( 3144 IRpcStubBuffer* This, 3145 IRpcChannelBuffer* pRpcChannelBuffer, 3146 PRPC_MESSAGE pRpcMessage, 3147 DWORD* pdwStubPhase); 3148 3149 #endif /* __IPersistFolder2_INTERFACE_DEFINED__ */ 3150 3151 3152 #define CSIDL_FLAG_PFTI_TRACKTARGET CSIDL_FLAG_DONT_VERIFY 3153 3154 #include <pshpack8.h> 3155 typedef struct _PERSIST_FOLDER_TARGET_INFO { 3156 PIDLIST_ABSOLUTE pidlTargetFolder; 3157 WCHAR szTargetParsingName[260]; 3158 WCHAR szNetworkProvider[260]; 3159 DWORD dwAttributes; 3160 int csidl; 3161 } PERSIST_FOLDER_TARGET_INFO; 3162 #include <poppack.h> 3163 3164 /***************************************************************************** 3165 * IPersistFolder3 interface 3166 */ 3167 #ifndef __IPersistFolder3_INTERFACE_DEFINED__ 3168 #define __IPersistFolder3_INTERFACE_DEFINED__ 3169 3170 DEFINE_GUID(IID_IPersistFolder3, 0xcef04fdf, 0xfe72, 0x11d2, 0x87,0xa5, 0x00,0xc0,0x4f,0x68,0x37,0xcf); 3171 #if defined(__cplusplus) && !defined(CINTERFACE) 3172 MIDL_INTERFACE("cef04fdf-fe72-11d2-87a5-00c04f6837cf") 3173 IPersistFolder3 : public IPersistFolder2 3174 { 3175 virtual HRESULT STDMETHODCALLTYPE InitializeEx( 3176 IBindCtx *pbc, 3177 PCIDLIST_ABSOLUTE pidlRoot, 3178 const PERSIST_FOLDER_TARGET_INFO *ppfti) = 0; 3179 3180 virtual HRESULT STDMETHODCALLTYPE GetFolderTargetInfo( 3181 PERSIST_FOLDER_TARGET_INFO *ppfti) = 0; 3182 3183 }; 3184 #ifdef __CRT_UUID_DECL 3185 __CRT_UUID_DECL(IPersistFolder3, 0xcef04fdf, 0xfe72, 0x11d2, 0x87,0xa5, 0x00,0xc0,0x4f,0x68,0x37,0xcf) 3186 #endif 3187 #else 3188 typedef struct IPersistFolder3Vtbl { 3189 BEGIN_INTERFACE 3190 3191 /*** IUnknown methods ***/ 3192 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3193 IPersistFolder3* This, 3194 REFIID riid, 3195 void **ppvObject); 3196 3197 ULONG (STDMETHODCALLTYPE *AddRef)( 3198 IPersistFolder3* This); 3199 3200 ULONG (STDMETHODCALLTYPE *Release)( 3201 IPersistFolder3* This); 3202 3203 /*** IPersist methods ***/ 3204 HRESULT (STDMETHODCALLTYPE *GetClassID)( 3205 IPersistFolder3* This, 3206 CLSID *pClassID); 3207 3208 /*** IPersistFolder methods ***/ 3209 HRESULT (STDMETHODCALLTYPE *Initialize)( 3210 IPersistFolder3* This, 3211 PCIDLIST_ABSOLUTE pidl); 3212 3213 /*** IPersistFolder2 methods ***/ 3214 HRESULT (STDMETHODCALLTYPE *GetCurFolder)( 3215 IPersistFolder3* This, 3216 PIDLIST_ABSOLUTE *ppidl); 3217 3218 /*** IPersistFolder3 methods ***/ 3219 HRESULT (STDMETHODCALLTYPE *InitializeEx)( 3220 IPersistFolder3* This, 3221 IBindCtx *pbc, 3222 PCIDLIST_ABSOLUTE pidlRoot, 3223 const PERSIST_FOLDER_TARGET_INFO *ppfti); 3224 3225 HRESULT (STDMETHODCALLTYPE *GetFolderTargetInfo)( 3226 IPersistFolder3* This, 3227 PERSIST_FOLDER_TARGET_INFO *ppfti); 3228 3229 END_INTERFACE 3230 } IPersistFolder3Vtbl; 3231 interface IPersistFolder3 { 3232 CONST_VTBL IPersistFolder3Vtbl* lpVtbl; 3233 }; 3234 3235 #ifdef COBJMACROS 3236 #ifndef WIDL_C_INLINE_WRAPPERS 3237 /*** IUnknown methods ***/ 3238 #define IPersistFolder3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3239 #define IPersistFolder3_AddRef(This) (This)->lpVtbl->AddRef(This) 3240 #define IPersistFolder3_Release(This) (This)->lpVtbl->Release(This) 3241 /*** IPersist methods ***/ 3242 #define IPersistFolder3_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) 3243 /*** IPersistFolder methods ***/ 3244 #define IPersistFolder3_Initialize(This,pidl) (This)->lpVtbl->Initialize(This,pidl) 3245 /*** IPersistFolder2 methods ***/ 3246 #define IPersistFolder3_GetCurFolder(This,ppidl) (This)->lpVtbl->GetCurFolder(This,ppidl) 3247 /*** IPersistFolder3 methods ***/ 3248 #define IPersistFolder3_InitializeEx(This,pbc,pidlRoot,ppfti) (This)->lpVtbl->InitializeEx(This,pbc,pidlRoot,ppfti) 3249 #define IPersistFolder3_GetFolderTargetInfo(This,ppfti) (This)->lpVtbl->GetFolderTargetInfo(This,ppfti) 3250 #else 3251 /*** IUnknown methods ***/ 3252 static FORCEINLINE HRESULT IPersistFolder3_QueryInterface(IPersistFolder3* This,REFIID riid,void **ppvObject) { 3253 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3254 } 3255 static FORCEINLINE ULONG IPersistFolder3_AddRef(IPersistFolder3* This) { 3256 return This->lpVtbl->AddRef(This); 3257 } 3258 static FORCEINLINE ULONG IPersistFolder3_Release(IPersistFolder3* This) { 3259 return This->lpVtbl->Release(This); 3260 } 3261 /*** IPersist methods ***/ 3262 static FORCEINLINE HRESULT IPersistFolder3_GetClassID(IPersistFolder3* This,CLSID *pClassID) { 3263 return This->lpVtbl->GetClassID(This,pClassID); 3264 } 3265 /*** IPersistFolder methods ***/ 3266 static FORCEINLINE HRESULT IPersistFolder3_Initialize(IPersistFolder3* This,PCIDLIST_ABSOLUTE pidl) { 3267 return This->lpVtbl->Initialize(This,pidl); 3268 } 3269 /*** IPersistFolder2 methods ***/ 3270 static FORCEINLINE HRESULT IPersistFolder3_GetCurFolder(IPersistFolder3* This,PIDLIST_ABSOLUTE *ppidl) { 3271 return This->lpVtbl->GetCurFolder(This,ppidl); 3272 } 3273 /*** IPersistFolder3 methods ***/ 3274 static FORCEINLINE HRESULT IPersistFolder3_InitializeEx(IPersistFolder3* This,IBindCtx *pbc,PCIDLIST_ABSOLUTE pidlRoot,const PERSIST_FOLDER_TARGET_INFO *ppfti) { 3275 return This->lpVtbl->InitializeEx(This,pbc,pidlRoot,ppfti); 3276 } 3277 static FORCEINLINE HRESULT IPersistFolder3_GetFolderTargetInfo(IPersistFolder3* This,PERSIST_FOLDER_TARGET_INFO *ppfti) { 3278 return This->lpVtbl->GetFolderTargetInfo(This,ppfti); 3279 } 3280 #endif 3281 #endif 3282 3283 #endif 3284 3285 HRESULT STDMETHODCALLTYPE IPersistFolder3_InitializeEx_Proxy( 3286 IPersistFolder3* This, 3287 IBindCtx *pbc, 3288 PCIDLIST_ABSOLUTE pidlRoot, 3289 const PERSIST_FOLDER_TARGET_INFO *ppfti); 3290 void __RPC_STUB IPersistFolder3_InitializeEx_Stub( 3291 IRpcStubBuffer* This, 3292 IRpcChannelBuffer* pRpcChannelBuffer, 3293 PRPC_MESSAGE pRpcMessage, 3294 DWORD* pdwStubPhase); 3295 HRESULT STDMETHODCALLTYPE IPersistFolder3_GetFolderTargetInfo_Proxy( 3296 IPersistFolder3* This, 3297 PERSIST_FOLDER_TARGET_INFO *ppfti); 3298 void __RPC_STUB IPersistFolder3_GetFolderTargetInfo_Stub( 3299 IRpcStubBuffer* This, 3300 IRpcChannelBuffer* pRpcChannelBuffer, 3301 PRPC_MESSAGE pRpcMessage, 3302 DWORD* pdwStubPhase); 3303 3304 #endif /* __IPersistFolder3_INTERFACE_DEFINED__ */ 3305 3306 3307 /***************************************************************************** 3308 * IPersistIDList interface 3309 */ 3310 #ifndef __IPersistIDList_INTERFACE_DEFINED__ 3311 #define __IPersistIDList_INTERFACE_DEFINED__ 3312 3313 DEFINE_GUID(IID_IPersistIDList, 0x1079acfc, 0x29bd, 0x11d3, 0x8e,0x0d, 0x00,0xc0,0x4f,0x68,0x37,0xd5); 3314 #if defined(__cplusplus) && !defined(CINTERFACE) 3315 MIDL_INTERFACE("1079acfc-29bd-11d3-8e0d-00c04f6837d5") 3316 IPersistIDList : public IPersist 3317 { 3318 virtual HRESULT STDMETHODCALLTYPE SetIDList( 3319 PCIDLIST_ABSOLUTE pidl) = 0; 3320 3321 virtual HRESULT STDMETHODCALLTYPE GetIDList( 3322 PIDLIST_ABSOLUTE *ppidl) = 0; 3323 3324 }; 3325 #ifdef __CRT_UUID_DECL 3326 __CRT_UUID_DECL(IPersistIDList, 0x1079acfc, 0x29bd, 0x11d3, 0x8e,0x0d, 0x00,0xc0,0x4f,0x68,0x37,0xd5) 3327 #endif 3328 #else 3329 typedef struct IPersistIDListVtbl { 3330 BEGIN_INTERFACE 3331 3332 /*** IUnknown methods ***/ 3333 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3334 IPersistIDList* This, 3335 REFIID riid, 3336 void **ppvObject); 3337 3338 ULONG (STDMETHODCALLTYPE *AddRef)( 3339 IPersistIDList* This); 3340 3341 ULONG (STDMETHODCALLTYPE *Release)( 3342 IPersistIDList* This); 3343 3344 /*** IPersist methods ***/ 3345 HRESULT (STDMETHODCALLTYPE *GetClassID)( 3346 IPersistIDList* This, 3347 CLSID *pClassID); 3348 3349 /*** IPersistIDList methods ***/ 3350 HRESULT (STDMETHODCALLTYPE *SetIDList)( 3351 IPersistIDList* This, 3352 PCIDLIST_ABSOLUTE pidl); 3353 3354 HRESULT (STDMETHODCALLTYPE *GetIDList)( 3355 IPersistIDList* This, 3356 PIDLIST_ABSOLUTE *ppidl); 3357 3358 END_INTERFACE 3359 } IPersistIDListVtbl; 3360 interface IPersistIDList { 3361 CONST_VTBL IPersistIDListVtbl* lpVtbl; 3362 }; 3363 3364 #ifdef COBJMACROS 3365 #ifndef WIDL_C_INLINE_WRAPPERS 3366 /*** IUnknown methods ***/ 3367 #define IPersistIDList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3368 #define IPersistIDList_AddRef(This) (This)->lpVtbl->AddRef(This) 3369 #define IPersistIDList_Release(This) (This)->lpVtbl->Release(This) 3370 /*** IPersist methods ***/ 3371 #define IPersistIDList_GetClassID(This,pClassID) (This)->lpVtbl->GetClassID(This,pClassID) 3372 /*** IPersistIDList methods ***/ 3373 #define IPersistIDList_SetIDList(This,pidl) (This)->lpVtbl->SetIDList(This,pidl) 3374 #define IPersistIDList_GetIDList(This,ppidl) (This)->lpVtbl->GetIDList(This,ppidl) 3375 #else 3376 /*** IUnknown methods ***/ 3377 static FORCEINLINE HRESULT IPersistIDList_QueryInterface(IPersistIDList* This,REFIID riid,void **ppvObject) { 3378 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3379 } 3380 static FORCEINLINE ULONG IPersistIDList_AddRef(IPersistIDList* This) { 3381 return This->lpVtbl->AddRef(This); 3382 } 3383 static FORCEINLINE ULONG IPersistIDList_Release(IPersistIDList* This) { 3384 return This->lpVtbl->Release(This); 3385 } 3386 /*** IPersist methods ***/ 3387 static FORCEINLINE HRESULT IPersistIDList_GetClassID(IPersistIDList* This,CLSID *pClassID) { 3388 return This->lpVtbl->GetClassID(This,pClassID); 3389 } 3390 /*** IPersistIDList methods ***/ 3391 static FORCEINLINE HRESULT IPersistIDList_SetIDList(IPersistIDList* This,PCIDLIST_ABSOLUTE pidl) { 3392 return This->lpVtbl->SetIDList(This,pidl); 3393 } 3394 static FORCEINLINE HRESULT IPersistIDList_GetIDList(IPersistIDList* This,PIDLIST_ABSOLUTE *ppidl) { 3395 return This->lpVtbl->GetIDList(This,ppidl); 3396 } 3397 #endif 3398 #endif 3399 3400 #endif 3401 3402 HRESULT STDMETHODCALLTYPE IPersistIDList_SetIDList_Proxy( 3403 IPersistIDList* This, 3404 PCIDLIST_ABSOLUTE pidl); 3405 void __RPC_STUB IPersistIDList_SetIDList_Stub( 3406 IRpcStubBuffer* This, 3407 IRpcChannelBuffer* pRpcChannelBuffer, 3408 PRPC_MESSAGE pRpcMessage, 3409 DWORD* pdwStubPhase); 3410 HRESULT STDMETHODCALLTYPE IPersistIDList_GetIDList_Proxy( 3411 IPersistIDList* This, 3412 PIDLIST_ABSOLUTE *ppidl); 3413 void __RPC_STUB IPersistIDList_GetIDList_Stub( 3414 IRpcStubBuffer* This, 3415 IRpcChannelBuffer* pRpcChannelBuffer, 3416 PRPC_MESSAGE pRpcMessage, 3417 DWORD* pdwStubPhase); 3418 3419 #endif /* __IPersistIDList_INTERFACE_DEFINED__ */ 3420 3421 3422 /***************************************************************************** 3423 * IEnumIDList interface 3424 */ 3425 #ifndef __IEnumIDList_INTERFACE_DEFINED__ 3426 #define __IEnumIDList_INTERFACE_DEFINED__ 3427 3428 DEFINE_GUID(IID_IEnumIDList, 0x000214f2, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 3429 #if defined(__cplusplus) && !defined(CINTERFACE) 3430 MIDL_INTERFACE("000214f2-0000-0000-c000-000000000046") 3431 IEnumIDList : public IUnknown 3432 { 3433 virtual HRESULT STDMETHODCALLTYPE Next( 3434 ULONG celt, 3435 PITEMID_CHILD *rgelt, 3436 ULONG *pceltFetched) = 0; 3437 3438 virtual HRESULT STDMETHODCALLTYPE Skip( 3439 ULONG celt) = 0; 3440 3441 virtual HRESULT STDMETHODCALLTYPE Reset( 3442 ) = 0; 3443 3444 virtual HRESULT STDMETHODCALLTYPE Clone( 3445 IEnumIDList **ppenum) = 0; 3446 3447 }; 3448 #ifdef __CRT_UUID_DECL 3449 __CRT_UUID_DECL(IEnumIDList, 0x000214f2, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 3450 #endif 3451 #else 3452 typedef struct IEnumIDListVtbl { 3453 BEGIN_INTERFACE 3454 3455 /*** IUnknown methods ***/ 3456 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3457 IEnumIDList* This, 3458 REFIID riid, 3459 void **ppvObject); 3460 3461 ULONG (STDMETHODCALLTYPE *AddRef)( 3462 IEnumIDList* This); 3463 3464 ULONG (STDMETHODCALLTYPE *Release)( 3465 IEnumIDList* This); 3466 3467 /*** IEnumIDList methods ***/ 3468 HRESULT (STDMETHODCALLTYPE *Next)( 3469 IEnumIDList* This, 3470 ULONG celt, 3471 PITEMID_CHILD *rgelt, 3472 ULONG *pceltFetched); 3473 3474 HRESULT (STDMETHODCALLTYPE *Skip)( 3475 IEnumIDList* This, 3476 ULONG celt); 3477 3478 HRESULT (STDMETHODCALLTYPE *Reset)( 3479 IEnumIDList* This); 3480 3481 HRESULT (STDMETHODCALLTYPE *Clone)( 3482 IEnumIDList* This, 3483 IEnumIDList **ppenum); 3484 3485 END_INTERFACE 3486 } IEnumIDListVtbl; 3487 interface IEnumIDList { 3488 CONST_VTBL IEnumIDListVtbl* lpVtbl; 3489 }; 3490 3491 #ifdef COBJMACROS 3492 #ifndef WIDL_C_INLINE_WRAPPERS 3493 /*** IUnknown methods ***/ 3494 #define IEnumIDList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3495 #define IEnumIDList_AddRef(This) (This)->lpVtbl->AddRef(This) 3496 #define IEnumIDList_Release(This) (This)->lpVtbl->Release(This) 3497 /*** IEnumIDList methods ***/ 3498 #define IEnumIDList_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) 3499 #define IEnumIDList_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 3500 #define IEnumIDList_Reset(This) (This)->lpVtbl->Reset(This) 3501 #define IEnumIDList_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) 3502 #else 3503 /*** IUnknown methods ***/ 3504 static FORCEINLINE HRESULT IEnumIDList_QueryInterface(IEnumIDList* This,REFIID riid,void **ppvObject) { 3505 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3506 } 3507 static FORCEINLINE ULONG IEnumIDList_AddRef(IEnumIDList* This) { 3508 return This->lpVtbl->AddRef(This); 3509 } 3510 static FORCEINLINE ULONG IEnumIDList_Release(IEnumIDList* This) { 3511 return This->lpVtbl->Release(This); 3512 } 3513 /*** IEnumIDList methods ***/ 3514 static FORCEINLINE HRESULT IEnumIDList_Next(IEnumIDList* This,ULONG celt,PITEMID_CHILD *rgelt,ULONG *pceltFetched) { 3515 return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); 3516 } 3517 static FORCEINLINE HRESULT IEnumIDList_Skip(IEnumIDList* This,ULONG celt) { 3518 return This->lpVtbl->Skip(This,celt); 3519 } 3520 static FORCEINLINE HRESULT IEnumIDList_Reset(IEnumIDList* This) { 3521 return This->lpVtbl->Reset(This); 3522 } 3523 static FORCEINLINE HRESULT IEnumIDList_Clone(IEnumIDList* This,IEnumIDList **ppenum) { 3524 return This->lpVtbl->Clone(This,ppenum); 3525 } 3526 #endif 3527 #endif 3528 3529 #endif 3530 3531 HRESULT STDMETHODCALLTYPE IEnumIDList_RemoteNext_Proxy( 3532 IEnumIDList* This, 3533 ULONG celt, 3534 PITEMID_CHILD *rgelt, 3535 ULONG *pceltFetched); 3536 void __RPC_STUB IEnumIDList_RemoteNext_Stub( 3537 IRpcStubBuffer* This, 3538 IRpcChannelBuffer* pRpcChannelBuffer, 3539 PRPC_MESSAGE pRpcMessage, 3540 DWORD* pdwStubPhase); 3541 HRESULT STDMETHODCALLTYPE IEnumIDList_Skip_Proxy( 3542 IEnumIDList* This, 3543 ULONG celt); 3544 void __RPC_STUB IEnumIDList_Skip_Stub( 3545 IRpcStubBuffer* This, 3546 IRpcChannelBuffer* pRpcChannelBuffer, 3547 PRPC_MESSAGE pRpcMessage, 3548 DWORD* pdwStubPhase); 3549 HRESULT STDMETHODCALLTYPE IEnumIDList_Reset_Proxy( 3550 IEnumIDList* This); 3551 void __RPC_STUB IEnumIDList_Reset_Stub( 3552 IRpcStubBuffer* This, 3553 IRpcChannelBuffer* pRpcChannelBuffer, 3554 PRPC_MESSAGE pRpcMessage, 3555 DWORD* pdwStubPhase); 3556 HRESULT STDMETHODCALLTYPE IEnumIDList_Clone_Proxy( 3557 IEnumIDList* This, 3558 IEnumIDList **ppenum); 3559 void __RPC_STUB IEnumIDList_Clone_Stub( 3560 IRpcStubBuffer* This, 3561 IRpcChannelBuffer* pRpcChannelBuffer, 3562 PRPC_MESSAGE pRpcMessage, 3563 DWORD* pdwStubPhase); 3564 HRESULT CALLBACK IEnumIDList_Next_Proxy( 3565 IEnumIDList* This, 3566 ULONG celt, 3567 PITEMID_CHILD *rgelt, 3568 ULONG *pceltFetched); 3569 HRESULT __RPC_STUB IEnumIDList_Next_Stub( 3570 IEnumIDList* This, 3571 ULONG celt, 3572 PITEMID_CHILD *rgelt, 3573 ULONG *pceltFetched); 3574 3575 #endif /* __IEnumIDList_INTERFACE_DEFINED__ */ 3576 3577 typedef IEnumIDList *LPENUMIDLIST; 3578 3579 /***************************************************************************** 3580 * IEnumFullIDList interface 3581 */ 3582 #ifndef __IEnumFullIDList_INTERFACE_DEFINED__ 3583 #define __IEnumFullIDList_INTERFACE_DEFINED__ 3584 3585 DEFINE_GUID(IID_IEnumFullIDList, 0xd0191542, 0x7954, 0x4908, 0xbc,0x06, 0xb2,0x36,0x0b,0xbe,0x45,0xba); 3586 #if defined(__cplusplus) && !defined(CINTERFACE) 3587 MIDL_INTERFACE("d0191542-7954-4908-bc06-b2360bbe45ba") 3588 IEnumFullIDList : public IUnknown 3589 { 3590 virtual HRESULT STDMETHODCALLTYPE Next( 3591 ULONG celt, 3592 PIDLIST_ABSOLUTE *rgelt, 3593 ULONG *pceltFetched) = 0; 3594 3595 virtual HRESULT STDMETHODCALLTYPE Skip( 3596 ULONG celt) = 0; 3597 3598 virtual HRESULT STDMETHODCALLTYPE Reset( 3599 ) = 0; 3600 3601 virtual HRESULT STDMETHODCALLTYPE Clone( 3602 IEnumFullIDList **ppenum) = 0; 3603 3604 }; 3605 #ifdef __CRT_UUID_DECL 3606 __CRT_UUID_DECL(IEnumFullIDList, 0xd0191542, 0x7954, 0x4908, 0xbc,0x06, 0xb2,0x36,0x0b,0xbe,0x45,0xba) 3607 #endif 3608 #else 3609 typedef struct IEnumFullIDListVtbl { 3610 BEGIN_INTERFACE 3611 3612 /*** IUnknown methods ***/ 3613 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3614 IEnumFullIDList* This, 3615 REFIID riid, 3616 void **ppvObject); 3617 3618 ULONG (STDMETHODCALLTYPE *AddRef)( 3619 IEnumFullIDList* This); 3620 3621 ULONG (STDMETHODCALLTYPE *Release)( 3622 IEnumFullIDList* This); 3623 3624 /*** IEnumFullIDList methods ***/ 3625 HRESULT (STDMETHODCALLTYPE *Next)( 3626 IEnumFullIDList* This, 3627 ULONG celt, 3628 PIDLIST_ABSOLUTE *rgelt, 3629 ULONG *pceltFetched); 3630 3631 HRESULT (STDMETHODCALLTYPE *Skip)( 3632 IEnumFullIDList* This, 3633 ULONG celt); 3634 3635 HRESULT (STDMETHODCALLTYPE *Reset)( 3636 IEnumFullIDList* This); 3637 3638 HRESULT (STDMETHODCALLTYPE *Clone)( 3639 IEnumFullIDList* This, 3640 IEnumFullIDList **ppenum); 3641 3642 END_INTERFACE 3643 } IEnumFullIDListVtbl; 3644 interface IEnumFullIDList { 3645 CONST_VTBL IEnumFullIDListVtbl* lpVtbl; 3646 }; 3647 3648 #ifdef COBJMACROS 3649 #ifndef WIDL_C_INLINE_WRAPPERS 3650 /*** IUnknown methods ***/ 3651 #define IEnumFullIDList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3652 #define IEnumFullIDList_AddRef(This) (This)->lpVtbl->AddRef(This) 3653 #define IEnumFullIDList_Release(This) (This)->lpVtbl->Release(This) 3654 /*** IEnumFullIDList methods ***/ 3655 #define IEnumFullIDList_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) 3656 #define IEnumFullIDList_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 3657 #define IEnumFullIDList_Reset(This) (This)->lpVtbl->Reset(This) 3658 #define IEnumFullIDList_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) 3659 #else 3660 /*** IUnknown methods ***/ 3661 static FORCEINLINE HRESULT IEnumFullIDList_QueryInterface(IEnumFullIDList* This,REFIID riid,void **ppvObject) { 3662 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3663 } 3664 static FORCEINLINE ULONG IEnumFullIDList_AddRef(IEnumFullIDList* This) { 3665 return This->lpVtbl->AddRef(This); 3666 } 3667 static FORCEINLINE ULONG IEnumFullIDList_Release(IEnumFullIDList* This) { 3668 return This->lpVtbl->Release(This); 3669 } 3670 /*** IEnumFullIDList methods ***/ 3671 static FORCEINLINE HRESULT IEnumFullIDList_Next(IEnumFullIDList* This,ULONG celt,PIDLIST_ABSOLUTE *rgelt,ULONG *pceltFetched) { 3672 return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); 3673 } 3674 static FORCEINLINE HRESULT IEnumFullIDList_Skip(IEnumFullIDList* This,ULONG celt) { 3675 return This->lpVtbl->Skip(This,celt); 3676 } 3677 static FORCEINLINE HRESULT IEnumFullIDList_Reset(IEnumFullIDList* This) { 3678 return This->lpVtbl->Reset(This); 3679 } 3680 static FORCEINLINE HRESULT IEnumFullIDList_Clone(IEnumFullIDList* This,IEnumFullIDList **ppenum) { 3681 return This->lpVtbl->Clone(This,ppenum); 3682 } 3683 #endif 3684 #endif 3685 3686 #endif 3687 3688 HRESULT STDMETHODCALLTYPE IEnumFullIDList_RemoteNext_Proxy( 3689 IEnumFullIDList* This, 3690 ULONG celt, 3691 PIDLIST_ABSOLUTE *rgelt, 3692 ULONG *pceltFetched); 3693 void __RPC_STUB IEnumFullIDList_RemoteNext_Stub( 3694 IRpcStubBuffer* This, 3695 IRpcChannelBuffer* pRpcChannelBuffer, 3696 PRPC_MESSAGE pRpcMessage, 3697 DWORD* pdwStubPhase); 3698 HRESULT STDMETHODCALLTYPE IEnumFullIDList_Skip_Proxy( 3699 IEnumFullIDList* This, 3700 ULONG celt); 3701 void __RPC_STUB IEnumFullIDList_Skip_Stub( 3702 IRpcStubBuffer* This, 3703 IRpcChannelBuffer* pRpcChannelBuffer, 3704 PRPC_MESSAGE pRpcMessage, 3705 DWORD* pdwStubPhase); 3706 HRESULT STDMETHODCALLTYPE IEnumFullIDList_Reset_Proxy( 3707 IEnumFullIDList* This); 3708 void __RPC_STUB IEnumFullIDList_Reset_Stub( 3709 IRpcStubBuffer* This, 3710 IRpcChannelBuffer* pRpcChannelBuffer, 3711 PRPC_MESSAGE pRpcMessage, 3712 DWORD* pdwStubPhase); 3713 HRESULT STDMETHODCALLTYPE IEnumFullIDList_Clone_Proxy( 3714 IEnumFullIDList* This, 3715 IEnumFullIDList **ppenum); 3716 void __RPC_STUB IEnumFullIDList_Clone_Stub( 3717 IRpcStubBuffer* This, 3718 IRpcChannelBuffer* pRpcChannelBuffer, 3719 PRPC_MESSAGE pRpcMessage, 3720 DWORD* pdwStubPhase); 3721 HRESULT CALLBACK IEnumFullIDList_Next_Proxy( 3722 IEnumFullIDList* This, 3723 ULONG celt, 3724 PIDLIST_ABSOLUTE *rgelt, 3725 ULONG *pceltFetched); 3726 HRESULT __RPC_STUB IEnumFullIDList_Next_Stub( 3727 IEnumFullIDList* This, 3728 ULONG celt, 3729 PIDLIST_ABSOLUTE *rgelt, 3730 ULONG *pceltFetched); 3731 3732 #endif /* __IEnumFullIDList_INTERFACE_DEFINED__ */ 3733 3734 3735 enum _SHGDNF { 3736 SHGDN_NORMAL = 0x0, 3737 SHGDN_INFOLDER = 0x1, 3738 SHGDN_FOREDITING = 0x1000, 3739 SHGDN_FORADDRESSBAR = 0x4000, 3740 SHGDN_FORPARSING = 0x8000 3741 }; 3742 3743 3744 typedef DWORD SHGDNF; 3745 3746 enum _SHCONTF { 3747 SHCONTF_CHECKING_FOR_CHILDREN = 0x10, 3748 SHCONTF_FOLDERS = 0x20, 3749 SHCONTF_NONFOLDERS = 0x40, 3750 SHCONTF_INCLUDEHIDDEN = 0x80, 3751 SHCONTF_INIT_ON_FIRST_NEXT = 0x100, 3752 SHCONTF_NETPRINTERSRCH = 0x200, 3753 SHCONTF_SHAREABLE = 0x400, 3754 SHCONTF_STORAGE = 0x800, 3755 SHCONTF_NAVIGATION_ENUM = 0x1000, 3756 SHCONTF_FASTITEMS = 0x2000, 3757 SHCONTF_FLATLIST = 0x4000, 3758 SHCONTF_ENABLE_ASYNC = 0x8000, 3759 SHCONTF_INCLUDESUPERHIDDEN = 0x10000 3760 }; 3761 3762 3763 typedef DWORD SHCONTF; 3764 3765 #define SHCIDS_ALLFIELDS __MSABI_LONG(0x80000000) 3766 #define SHCIDS_CANONICALONLY __MSABI_LONG(0x10000000) 3767 #define SHCIDS_BITMASK __MSABI_LONG(0xffff0000) 3768 #define SHCIDS_COLUMNMASK __MSABI_LONG(0x0000ffff) 3769 3770 #define SFGAO_CANCOPY DROPEFFECT_COPY 3771 #define SFGAO_CANMOVE DROPEFFECT_MOVE 3772 #define SFGAO_CANLINK DROPEFFECT_LINK 3773 #define SFGAO_STORAGE __MSABI_LONG(0x8) 3774 #define SFGAO_CANRENAME __MSABI_LONG(0x10) 3775 #define SFGAO_CANDELETE __MSABI_LONG(0x20) 3776 #define SFGAO_HASPROPSHEET __MSABI_LONG(0x40) 3777 #define SFGAO_DROPTARGET __MSABI_LONG(0x100) 3778 3779 #define SFGAO_CAPABILITYMASK __MSABI_LONG(0x177) 3780 3781 #define SFGAO_SYSTEM __MSABI_LONG(0x1000) 3782 #define SFGAO_ENCRYPTED __MSABI_LONG(0x2000) 3783 #define SFGAO_ISSLOW __MSABI_LONG(0x4000) 3784 #define SFGAO_GHOSTED __MSABI_LONG(0x8000) 3785 #define SFGAO_LINK __MSABI_LONG(0x10000) 3786 #define SFGAO_SHARE __MSABI_LONG(0x20000) 3787 #define SFGAO_READONLY __MSABI_LONG(0x40000) 3788 #define SFGAO_HIDDEN __MSABI_LONG(0x80000) 3789 3790 #define SFGAO_DISPLAYATTRMASK __MSABI_LONG(0xfc000) 3791 3792 #define SFGAO_FILESYSANCESTOR __MSABI_LONG(0x10000000) 3793 #define SFGAO_FOLDER __MSABI_LONG(0x20000000) 3794 #define SFGAO_FILESYSTEM __MSABI_LONG(0x40000000) 3795 #define SFGAO_HASSUBFOLDER __MSABI_LONG(0x80000000) 3796 3797 #define SFGAO_CONTENTSMASK __MSABI_LONG(0x80000000) 3798 3799 #define SFGAO_VALIDATE __MSABI_LONG(0x1000000) 3800 #define SFGAO_REMOVABLE __MSABI_LONG(0x2000000) 3801 #define SFGAO_COMPRESSED __MSABI_LONG(0x4000000) 3802 #define SFGAO_BROWSABLE __MSABI_LONG(0x8000000) 3803 #define SFGAO_NONENUMERATED __MSABI_LONG(0x100000) 3804 #define SFGAO_NEWCONTENT __MSABI_LONG(0x200000) 3805 #define SFGAO_CANMONIKER __MSABI_LONG(0x400000) 3806 #define SFGAO_HASSTORAGE __MSABI_LONG(0x400000) 3807 #define SFGAO_STREAM __MSABI_LONG(0x400000) 3808 #define SFGAO_STORAGEANCESTOR __MSABI_LONG(0x00800000) 3809 3810 #define SFGAO_STORAGECAPMASK __MSABI_LONG(0x70c50008) 3811 #define SFGAO_PKEYSFGAOMASK __MSABI_LONG(0x81044000) 3812 3813 typedef ULONG SFGAOF; 3814 3815 #define STR_BIND_FORCE_FOLDER_SHORTCUT_RESOLVE L"Force Folder Shortcut Resolve" 3816 #define STR_AVOID_DRIVE_RESTRICTION_POLICY L"Avoid Drive Restriction Policy" 3817 #define STR_AVOID_DRIVE_RESTRICTION_POLICY L"Avoid Drive Restriction Policy" 3818 #define STR_SKIP_BINDING_CLSID L"Skip Binding CLSID" 3819 #define STR_PARSE_PREFER_FOLDER_BROWSING L"Parse Prefer Folder Browsing" 3820 #define STR_DONT_PARSE_RELATIVE L"Don't Parse Relative" 3821 #define STR_PARSE_TRANSLATE_ALIASES L"Parse Translate Aliases" 3822 #define STR_PARSE_SKIP_NET_CACHE L"Skip Net Resource Cache" 3823 #define STR_PARSE_SHELL_PROTOCOL_TO_FILE_OBJECTS L"Parse Shell Protocol To File Objects" 3824 #if _WIN32_IE >= 0x0700 3825 #define STR_TRACK_CLSID L"Track the CLSID" 3826 #define STR_INTERNAL_NAVIGATE L"Internal Navigation" 3827 #define STR_PARSE_PROPERTYSTORE L"DelegateNamedProperties" 3828 #define STR_NO_VALIDATE_FILENAME_CHARS L"NoValidateFilenameChars" 3829 #define STR_BIND_DELEGATE_CREATE_OBJECT L"Delegate Object Creation" 3830 #define STR_PARSE_ALLOW_INTERNET_SHELL_FOLDERS L"Allow binding to Internet shell folder handlers and negate STR_PARSE_PREFER_WEB_BROWSING" 3831 #define STR_PARSE_PREFER_WEB_BROWSING L"Do not bind to Internet shell folder handlers" 3832 #define STR_PARSE_SHOW_NET_DIAGNOSTICS_UI L"Show network diagnostics UI" 3833 #define STR_PARSE_DONT_REQUIRE_VALIDATED_URLS L"Do not require validated URLs" 3834 #define STR_INTERNETFOLDER_PARSE_ONLY_URLMON_BINDABLE L"Validate URL" 3835 #endif 3836 3837 #if NTDDI_VERSION >= NTDDI_WIN8 3838 #define BIND_INTERRUPTABLE 0xffffffff 3839 #endif 3840 3841 #if NTDDI_VERSION >= NTDDI_WIN7 3842 #define STR_BIND_FOLDERS_READ_ONLY L"Folders As Read Only" 3843 #define STR_BIND_FOLDER_ENUM_MODE L"Folder Enum Mode" 3844 3845 typedef enum FOLDER_ENUM_MODE { 3846 FEM_VIEWRESULT = 0, 3847 FEM_NAVIGATION = 1 3848 } FOLDER_ENUM_MODE; 3849 3850 /***************************************************************************** 3851 * IObjectWithFolderEnumMode interface 3852 */ 3853 #ifndef __IObjectWithFolderEnumMode_INTERFACE_DEFINED__ 3854 #define __IObjectWithFolderEnumMode_INTERFACE_DEFINED__ 3855 3856 DEFINE_GUID(IID_IObjectWithFolderEnumMode, 0x6a9d9026, 0x0e6e, 0x464c, 0xb0,0x00, 0x42,0xec,0xc0,0x7d,0xe6,0x73); 3857 #if defined(__cplusplus) && !defined(CINTERFACE) 3858 MIDL_INTERFACE("6a9d9026-0e6e-464c-b000-42ecc07de673") 3859 IObjectWithFolderEnumMode : public IUnknown 3860 { 3861 virtual HRESULT STDMETHODCALLTYPE SetMode( 3862 FOLDER_ENUM_MODE feMode) = 0; 3863 3864 virtual HRESULT STDMETHODCALLTYPE GetMode( 3865 FOLDER_ENUM_MODE *pfeMode) = 0; 3866 3867 }; 3868 #ifdef __CRT_UUID_DECL 3869 __CRT_UUID_DECL(IObjectWithFolderEnumMode, 0x6a9d9026, 0x0e6e, 0x464c, 0xb0,0x00, 0x42,0xec,0xc0,0x7d,0xe6,0x73) 3870 #endif 3871 #else 3872 typedef struct IObjectWithFolderEnumModeVtbl { 3873 BEGIN_INTERFACE 3874 3875 /*** IUnknown methods ***/ 3876 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3877 IObjectWithFolderEnumMode* This, 3878 REFIID riid, 3879 void **ppvObject); 3880 3881 ULONG (STDMETHODCALLTYPE *AddRef)( 3882 IObjectWithFolderEnumMode* This); 3883 3884 ULONG (STDMETHODCALLTYPE *Release)( 3885 IObjectWithFolderEnumMode* This); 3886 3887 /*** IObjectWithFolderEnumMode methods ***/ 3888 HRESULT (STDMETHODCALLTYPE *SetMode)( 3889 IObjectWithFolderEnumMode* This, 3890 FOLDER_ENUM_MODE feMode); 3891 3892 HRESULT (STDMETHODCALLTYPE *GetMode)( 3893 IObjectWithFolderEnumMode* This, 3894 FOLDER_ENUM_MODE *pfeMode); 3895 3896 END_INTERFACE 3897 } IObjectWithFolderEnumModeVtbl; 3898 interface IObjectWithFolderEnumMode { 3899 CONST_VTBL IObjectWithFolderEnumModeVtbl* lpVtbl; 3900 }; 3901 3902 #ifdef COBJMACROS 3903 #ifndef WIDL_C_INLINE_WRAPPERS 3904 /*** IUnknown methods ***/ 3905 #define IObjectWithFolderEnumMode_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 3906 #define IObjectWithFolderEnumMode_AddRef(This) (This)->lpVtbl->AddRef(This) 3907 #define IObjectWithFolderEnumMode_Release(This) (This)->lpVtbl->Release(This) 3908 /*** IObjectWithFolderEnumMode methods ***/ 3909 #define IObjectWithFolderEnumMode_SetMode(This,feMode) (This)->lpVtbl->SetMode(This,feMode) 3910 #define IObjectWithFolderEnumMode_GetMode(This,pfeMode) (This)->lpVtbl->GetMode(This,pfeMode) 3911 #else 3912 /*** IUnknown methods ***/ 3913 static FORCEINLINE HRESULT IObjectWithFolderEnumMode_QueryInterface(IObjectWithFolderEnumMode* This,REFIID riid,void **ppvObject) { 3914 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 3915 } 3916 static FORCEINLINE ULONG IObjectWithFolderEnumMode_AddRef(IObjectWithFolderEnumMode* This) { 3917 return This->lpVtbl->AddRef(This); 3918 } 3919 static FORCEINLINE ULONG IObjectWithFolderEnumMode_Release(IObjectWithFolderEnumMode* This) { 3920 return This->lpVtbl->Release(This); 3921 } 3922 /*** IObjectWithFolderEnumMode methods ***/ 3923 static FORCEINLINE HRESULT IObjectWithFolderEnumMode_SetMode(IObjectWithFolderEnumMode* This,FOLDER_ENUM_MODE feMode) { 3924 return This->lpVtbl->SetMode(This,feMode); 3925 } 3926 static FORCEINLINE HRESULT IObjectWithFolderEnumMode_GetMode(IObjectWithFolderEnumMode* This,FOLDER_ENUM_MODE *pfeMode) { 3927 return This->lpVtbl->GetMode(This,pfeMode); 3928 } 3929 #endif 3930 #endif 3931 3932 #endif 3933 3934 HRESULT STDMETHODCALLTYPE IObjectWithFolderEnumMode_SetMode_Proxy( 3935 IObjectWithFolderEnumMode* This, 3936 FOLDER_ENUM_MODE feMode); 3937 void __RPC_STUB IObjectWithFolderEnumMode_SetMode_Stub( 3938 IRpcStubBuffer* This, 3939 IRpcChannelBuffer* pRpcChannelBuffer, 3940 PRPC_MESSAGE pRpcMessage, 3941 DWORD* pdwStubPhase); 3942 HRESULT STDMETHODCALLTYPE IObjectWithFolderEnumMode_GetMode_Proxy( 3943 IObjectWithFolderEnumMode* This, 3944 FOLDER_ENUM_MODE *pfeMode); 3945 void __RPC_STUB IObjectWithFolderEnumMode_GetMode_Stub( 3946 IRpcStubBuffer* This, 3947 IRpcChannelBuffer* pRpcChannelBuffer, 3948 PRPC_MESSAGE pRpcMessage, 3949 DWORD* pdwStubPhase); 3950 3951 #endif /* __IObjectWithFolderEnumMode_INTERFACE_DEFINED__ */ 3952 3953 3954 #define STR_PARSE_WITH_EXPLICIT_PROGID L"ExplicitProgid" 3955 #define STR_PARSE_WITH_EXPLICIT_ASSOCAPP L"ExplicitAssociationApp" 3956 #define STR_PARSE_EXPLICIT_ASSOCIATION_SUCCESSFUL L"ExplicitAssociationSuccessful" 3957 #define STR_PARSE_AND_CREATE_ITEM L"ParseAndCreateItem" 3958 #define STR_PROPERTYBAG_PARAM L"SHBindCtxPropertyBag" 3959 #define STR_ENUM_ITEMS_FLAGS L"SHCONTF" 3960 3961 #ifndef __IShellItem_FWD_DEFINED__ 3962 #define __IShellItem_FWD_DEFINED__ 3963 typedef interface IShellItem IShellItem; 3964 #endif 3965 3966 3967 /***************************************************************************** 3968 * IParseAndCreateItem interface 3969 */ 3970 #ifndef __IParseAndCreateItem_INTERFACE_DEFINED__ 3971 #define __IParseAndCreateItem_INTERFACE_DEFINED__ 3972 3973 DEFINE_GUID(IID_IParseAndCreateItem, 0x67efed0e, 0xe827, 0x4408, 0xb4,0x93, 0x78,0xf3,0x98,0x2b,0x68,0x5c); 3974 #if defined(__cplusplus) && !defined(CINTERFACE) 3975 MIDL_INTERFACE("67efed0e-e827-4408-b493-78f3982b685c") 3976 IParseAndCreateItem : public IUnknown 3977 { 3978 virtual HRESULT STDMETHODCALLTYPE SetItem( 3979 IShellItem *psi) = 0; 3980 3981 virtual HRESULT STDMETHODCALLTYPE GetItem( 3982 REFIID riid, 3983 void **ppv) = 0; 3984 3985 }; 3986 #ifdef __CRT_UUID_DECL 3987 __CRT_UUID_DECL(IParseAndCreateItem, 0x67efed0e, 0xe827, 0x4408, 0xb4,0x93, 0x78,0xf3,0x98,0x2b,0x68,0x5c) 3988 #endif 3989 #else 3990 typedef struct IParseAndCreateItemVtbl { 3991 BEGIN_INTERFACE 3992 3993 /*** IUnknown methods ***/ 3994 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 3995 IParseAndCreateItem* This, 3996 REFIID riid, 3997 void **ppvObject); 3998 3999 ULONG (STDMETHODCALLTYPE *AddRef)( 4000 IParseAndCreateItem* This); 4001 4002 ULONG (STDMETHODCALLTYPE *Release)( 4003 IParseAndCreateItem* This); 4004 4005 /*** IParseAndCreateItem methods ***/ 4006 HRESULT (STDMETHODCALLTYPE *SetItem)( 4007 IParseAndCreateItem* This, 4008 IShellItem *psi); 4009 4010 HRESULT (STDMETHODCALLTYPE *GetItem)( 4011 IParseAndCreateItem* This, 4012 REFIID riid, 4013 void **ppv); 4014 4015 END_INTERFACE 4016 } IParseAndCreateItemVtbl; 4017 interface IParseAndCreateItem { 4018 CONST_VTBL IParseAndCreateItemVtbl* lpVtbl; 4019 }; 4020 4021 #ifdef COBJMACROS 4022 #ifndef WIDL_C_INLINE_WRAPPERS 4023 /*** IUnknown methods ***/ 4024 #define IParseAndCreateItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4025 #define IParseAndCreateItem_AddRef(This) (This)->lpVtbl->AddRef(This) 4026 #define IParseAndCreateItem_Release(This) (This)->lpVtbl->Release(This) 4027 /*** IParseAndCreateItem methods ***/ 4028 #define IParseAndCreateItem_SetItem(This,psi) (This)->lpVtbl->SetItem(This,psi) 4029 #define IParseAndCreateItem_GetItem(This,riid,ppv) (This)->lpVtbl->GetItem(This,riid,ppv) 4030 #else 4031 /*** IUnknown methods ***/ 4032 static FORCEINLINE HRESULT IParseAndCreateItem_QueryInterface(IParseAndCreateItem* This,REFIID riid,void **ppvObject) { 4033 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4034 } 4035 static FORCEINLINE ULONG IParseAndCreateItem_AddRef(IParseAndCreateItem* This) { 4036 return This->lpVtbl->AddRef(This); 4037 } 4038 static FORCEINLINE ULONG IParseAndCreateItem_Release(IParseAndCreateItem* This) { 4039 return This->lpVtbl->Release(This); 4040 } 4041 /*** IParseAndCreateItem methods ***/ 4042 static FORCEINLINE HRESULT IParseAndCreateItem_SetItem(IParseAndCreateItem* This,IShellItem *psi) { 4043 return This->lpVtbl->SetItem(This,psi); 4044 } 4045 static FORCEINLINE HRESULT IParseAndCreateItem_GetItem(IParseAndCreateItem* This,REFIID riid,void **ppv) { 4046 return This->lpVtbl->GetItem(This,riid,ppv); 4047 } 4048 #endif 4049 #endif 4050 4051 #endif 4052 4053 HRESULT STDMETHODCALLTYPE IParseAndCreateItem_SetItem_Proxy( 4054 IParseAndCreateItem* This, 4055 IShellItem *psi); 4056 void __RPC_STUB IParseAndCreateItem_SetItem_Stub( 4057 IRpcStubBuffer* This, 4058 IRpcChannelBuffer* pRpcChannelBuffer, 4059 PRPC_MESSAGE pRpcMessage, 4060 DWORD* pdwStubPhase); 4061 HRESULT STDMETHODCALLTYPE IParseAndCreateItem_GetItem_Proxy( 4062 IParseAndCreateItem* This, 4063 REFIID riid, 4064 void **ppv); 4065 void __RPC_STUB IParseAndCreateItem_GetItem_Stub( 4066 IRpcStubBuffer* This, 4067 IRpcChannelBuffer* pRpcChannelBuffer, 4068 PRPC_MESSAGE pRpcMessage, 4069 DWORD* pdwStubPhase); 4070 4071 #endif /* __IParseAndCreateItem_INTERFACE_DEFINED__ */ 4072 4073 4074 #define STR_ITEM_CACHE_CONTEXT L"ItemCacheContext" 4075 #endif 4076 4077 #ifndef __IShellFolder_FWD_DEFINED__ 4078 #define __IShellFolder_FWD_DEFINED__ 4079 typedef interface IShellFolder IShellFolder; 4080 #endif 4081 4082 4083 /***************************************************************************** 4084 * IShellFolder interface 4085 */ 4086 #ifndef __IShellFolder_INTERFACE_DEFINED__ 4087 #define __IShellFolder_INTERFACE_DEFINED__ 4088 4089 DEFINE_GUID(IID_IShellFolder, 0x000214e6, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 4090 #if defined(__cplusplus) && !defined(CINTERFACE) 4091 MIDL_INTERFACE("000214e6-0000-0000-c000-000000000046") 4092 IShellFolder : public IUnknown 4093 { 4094 virtual HRESULT STDMETHODCALLTYPE ParseDisplayName( 4095 HWND hwnd, 4096 IBindCtx *pbc, 4097 LPWSTR pszDisplayName, 4098 ULONG *pchEaten, 4099 PIDLIST_RELATIVE *ppidl, 4100 ULONG *pdwAttributes) = 0; 4101 4102 virtual HRESULT STDMETHODCALLTYPE EnumObjects( 4103 HWND hwnd, 4104 SHCONTF grfFlags, 4105 IEnumIDList **ppenumIDList) = 0; 4106 4107 virtual HRESULT STDMETHODCALLTYPE BindToObject( 4108 PCUIDLIST_RELATIVE pidl, 4109 IBindCtx *pbc, 4110 REFIID riid, 4111 void **ppv) = 0; 4112 4113 virtual HRESULT STDMETHODCALLTYPE BindToStorage( 4114 PCUIDLIST_RELATIVE pidl, 4115 IBindCtx *pbc, 4116 REFIID riid, 4117 void **ppv) = 0; 4118 4119 virtual HRESULT STDMETHODCALLTYPE CompareIDs( 4120 LPARAM lParam, 4121 PCUIDLIST_RELATIVE pidl1, 4122 PCUIDLIST_RELATIVE pidl2) = 0; 4123 4124 virtual HRESULT STDMETHODCALLTYPE CreateViewObject( 4125 HWND hwndOwner, 4126 REFIID riid, 4127 void **ppv) = 0; 4128 4129 virtual HRESULT STDMETHODCALLTYPE GetAttributesOf( 4130 UINT cidl, 4131 PCUITEMID_CHILD_ARRAY apidl, 4132 SFGAOF *rgfInOut) = 0; 4133 4134 virtual HRESULT STDMETHODCALLTYPE GetUIObjectOf( 4135 HWND hwndOwner, 4136 UINT cidl, 4137 PCUITEMID_CHILD_ARRAY apidl, 4138 REFIID riid, 4139 UINT *rgfReserved, 4140 void **ppv) = 0; 4141 4142 virtual HRESULT STDMETHODCALLTYPE GetDisplayNameOf( 4143 PCUITEMID_CHILD pidl, 4144 SHGDNF uFlags, 4145 STRRET *pName) = 0; 4146 4147 virtual HRESULT STDMETHODCALLTYPE SetNameOf( 4148 HWND hwnd, 4149 PCUITEMID_CHILD pidl, 4150 LPCWSTR pszName, 4151 SHGDNF uFlags, 4152 PITEMID_CHILD *ppidlOut) = 0; 4153 4154 }; 4155 #ifdef __CRT_UUID_DECL 4156 __CRT_UUID_DECL(IShellFolder, 0x000214e6, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 4157 #endif 4158 #else 4159 typedef struct IShellFolderVtbl { 4160 BEGIN_INTERFACE 4161 4162 /*** IUnknown methods ***/ 4163 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4164 IShellFolder* This, 4165 REFIID riid, 4166 void **ppvObject); 4167 4168 ULONG (STDMETHODCALLTYPE *AddRef)( 4169 IShellFolder* This); 4170 4171 ULONG (STDMETHODCALLTYPE *Release)( 4172 IShellFolder* This); 4173 4174 /*** IShellFolder methods ***/ 4175 HRESULT (STDMETHODCALLTYPE *ParseDisplayName)( 4176 IShellFolder* This, 4177 HWND hwnd, 4178 IBindCtx *pbc, 4179 LPWSTR pszDisplayName, 4180 ULONG *pchEaten, 4181 PIDLIST_RELATIVE *ppidl, 4182 ULONG *pdwAttributes); 4183 4184 HRESULT (STDMETHODCALLTYPE *EnumObjects)( 4185 IShellFolder* This, 4186 HWND hwnd, 4187 SHCONTF grfFlags, 4188 IEnumIDList **ppenumIDList); 4189 4190 HRESULT (STDMETHODCALLTYPE *BindToObject)( 4191 IShellFolder* This, 4192 PCUIDLIST_RELATIVE pidl, 4193 IBindCtx *pbc, 4194 REFIID riid, 4195 void **ppv); 4196 4197 HRESULT (STDMETHODCALLTYPE *BindToStorage)( 4198 IShellFolder* This, 4199 PCUIDLIST_RELATIVE pidl, 4200 IBindCtx *pbc, 4201 REFIID riid, 4202 void **ppv); 4203 4204 HRESULT (STDMETHODCALLTYPE *CompareIDs)( 4205 IShellFolder* This, 4206 LPARAM lParam, 4207 PCUIDLIST_RELATIVE pidl1, 4208 PCUIDLIST_RELATIVE pidl2); 4209 4210 HRESULT (STDMETHODCALLTYPE *CreateViewObject)( 4211 IShellFolder* This, 4212 HWND hwndOwner, 4213 REFIID riid, 4214 void **ppv); 4215 4216 HRESULT (STDMETHODCALLTYPE *GetAttributesOf)( 4217 IShellFolder* This, 4218 UINT cidl, 4219 PCUITEMID_CHILD_ARRAY apidl, 4220 SFGAOF *rgfInOut); 4221 4222 HRESULT (STDMETHODCALLTYPE *GetUIObjectOf)( 4223 IShellFolder* This, 4224 HWND hwndOwner, 4225 UINT cidl, 4226 PCUITEMID_CHILD_ARRAY apidl, 4227 REFIID riid, 4228 UINT *rgfReserved, 4229 void **ppv); 4230 4231 HRESULT (STDMETHODCALLTYPE *GetDisplayNameOf)( 4232 IShellFolder* This, 4233 PCUITEMID_CHILD pidl, 4234 SHGDNF uFlags, 4235 STRRET *pName); 4236 4237 HRESULT (STDMETHODCALLTYPE *SetNameOf)( 4238 IShellFolder* This, 4239 HWND hwnd, 4240 PCUITEMID_CHILD pidl, 4241 LPCWSTR pszName, 4242 SHGDNF uFlags, 4243 PITEMID_CHILD *ppidlOut); 4244 4245 END_INTERFACE 4246 } IShellFolderVtbl; 4247 interface IShellFolder { 4248 CONST_VTBL IShellFolderVtbl* lpVtbl; 4249 }; 4250 4251 #ifdef COBJMACROS 4252 #ifndef WIDL_C_INLINE_WRAPPERS 4253 /*** IUnknown methods ***/ 4254 #define IShellFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4255 #define IShellFolder_AddRef(This) (This)->lpVtbl->AddRef(This) 4256 #define IShellFolder_Release(This) (This)->lpVtbl->Release(This) 4257 /*** IShellFolder methods ***/ 4258 #define IShellFolder_ParseDisplayName(This,hwnd,pbc,pszDisplayName,pchEaten,ppidl,pdwAttributes) (This)->lpVtbl->ParseDisplayName(This,hwnd,pbc,pszDisplayName,pchEaten,ppidl,pdwAttributes) 4259 #define IShellFolder_EnumObjects(This,hwnd,grfFlags,ppenumIDList) (This)->lpVtbl->EnumObjects(This,hwnd,grfFlags,ppenumIDList) 4260 #define IShellFolder_BindToObject(This,pidl,pbc,riid,ppv) (This)->lpVtbl->BindToObject(This,pidl,pbc,riid,ppv) 4261 #define IShellFolder_BindToStorage(This,pidl,pbc,riid,ppv) (This)->lpVtbl->BindToStorage(This,pidl,pbc,riid,ppv) 4262 #define IShellFolder_CompareIDs(This,lParam,pidl1,pidl2) (This)->lpVtbl->CompareIDs(This,lParam,pidl1,pidl2) 4263 #define IShellFolder_CreateViewObject(This,hwndOwner,riid,ppv) (This)->lpVtbl->CreateViewObject(This,hwndOwner,riid,ppv) 4264 #define IShellFolder_GetAttributesOf(This,cidl,apidl,rgfInOut) (This)->lpVtbl->GetAttributesOf(This,cidl,apidl,rgfInOut) 4265 #define IShellFolder_GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,rgfReserved,ppv) (This)->lpVtbl->GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,rgfReserved,ppv) 4266 #define IShellFolder_GetDisplayNameOf(This,pidl,uFlags,pName) (This)->lpVtbl->GetDisplayNameOf(This,pidl,uFlags,pName) 4267 #define IShellFolder_SetNameOf(This,hwnd,pidl,pszName,uFlags,ppidlOut) (This)->lpVtbl->SetNameOf(This,hwnd,pidl,pszName,uFlags,ppidlOut) 4268 #else 4269 /*** IUnknown methods ***/ 4270 static FORCEINLINE HRESULT IShellFolder_QueryInterface(IShellFolder* This,REFIID riid,void **ppvObject) { 4271 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4272 } 4273 static FORCEINLINE ULONG IShellFolder_AddRef(IShellFolder* This) { 4274 return This->lpVtbl->AddRef(This); 4275 } 4276 static FORCEINLINE ULONG IShellFolder_Release(IShellFolder* This) { 4277 return This->lpVtbl->Release(This); 4278 } 4279 /*** IShellFolder methods ***/ 4280 static FORCEINLINE HRESULT IShellFolder_ParseDisplayName(IShellFolder* This,HWND hwnd,IBindCtx *pbc,LPWSTR pszDisplayName,ULONG *pchEaten,PIDLIST_RELATIVE *ppidl,ULONG *pdwAttributes) { 4281 return This->lpVtbl->ParseDisplayName(This,hwnd,pbc,pszDisplayName,pchEaten,ppidl,pdwAttributes); 4282 } 4283 static FORCEINLINE HRESULT IShellFolder_EnumObjects(IShellFolder* This,HWND hwnd,SHCONTF grfFlags,IEnumIDList **ppenumIDList) { 4284 return This->lpVtbl->EnumObjects(This,hwnd,grfFlags,ppenumIDList); 4285 } 4286 static FORCEINLINE HRESULT IShellFolder_BindToObject(IShellFolder* This,PCUIDLIST_RELATIVE pidl,IBindCtx *pbc,REFIID riid,void **ppv) { 4287 return This->lpVtbl->BindToObject(This,pidl,pbc,riid,ppv); 4288 } 4289 static FORCEINLINE HRESULT IShellFolder_BindToStorage(IShellFolder* This,PCUIDLIST_RELATIVE pidl,IBindCtx *pbc,REFIID riid,void **ppv) { 4290 return This->lpVtbl->BindToStorage(This,pidl,pbc,riid,ppv); 4291 } 4292 static FORCEINLINE HRESULT IShellFolder_CompareIDs(IShellFolder* This,LPARAM lParam,PCUIDLIST_RELATIVE pidl1,PCUIDLIST_RELATIVE pidl2) { 4293 return This->lpVtbl->CompareIDs(This,lParam,pidl1,pidl2); 4294 } 4295 static FORCEINLINE HRESULT IShellFolder_CreateViewObject(IShellFolder* This,HWND hwndOwner,REFIID riid,void **ppv) { 4296 return This->lpVtbl->CreateViewObject(This,hwndOwner,riid,ppv); 4297 } 4298 static FORCEINLINE HRESULT IShellFolder_GetAttributesOf(IShellFolder* This,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,SFGAOF *rgfInOut) { 4299 return This->lpVtbl->GetAttributesOf(This,cidl,apidl,rgfInOut); 4300 } 4301 static FORCEINLINE HRESULT IShellFolder_GetUIObjectOf(IShellFolder* This,HWND hwndOwner,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,REFIID riid,UINT *rgfReserved,void **ppv) { 4302 return This->lpVtbl->GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,rgfReserved,ppv); 4303 } 4304 static FORCEINLINE HRESULT IShellFolder_GetDisplayNameOf(IShellFolder* This,PCUITEMID_CHILD pidl,SHGDNF uFlags,STRRET *pName) { 4305 return This->lpVtbl->GetDisplayNameOf(This,pidl,uFlags,pName); 4306 } 4307 static FORCEINLINE HRESULT IShellFolder_SetNameOf(IShellFolder* This,HWND hwnd,PCUITEMID_CHILD pidl,LPCWSTR pszName,SHGDNF uFlags,PITEMID_CHILD *ppidlOut) { 4308 return This->lpVtbl->SetNameOf(This,hwnd,pidl,pszName,uFlags,ppidlOut); 4309 } 4310 #endif 4311 #endif 4312 4313 #endif 4314 4315 HRESULT STDMETHODCALLTYPE IShellFolder_ParseDisplayName_Proxy( 4316 IShellFolder* This, 4317 HWND hwnd, 4318 IBindCtx *pbc, 4319 LPWSTR pszDisplayName, 4320 ULONG *pchEaten, 4321 PIDLIST_RELATIVE *ppidl, 4322 ULONG *pdwAttributes); 4323 void __RPC_STUB IShellFolder_ParseDisplayName_Stub( 4324 IRpcStubBuffer* This, 4325 IRpcChannelBuffer* pRpcChannelBuffer, 4326 PRPC_MESSAGE pRpcMessage, 4327 DWORD* pdwStubPhase); 4328 HRESULT STDMETHODCALLTYPE IShellFolder_EnumObjects_Proxy( 4329 IShellFolder* This, 4330 HWND hwnd, 4331 SHCONTF grfFlags, 4332 IEnumIDList **ppenumIDList); 4333 void __RPC_STUB IShellFolder_EnumObjects_Stub( 4334 IRpcStubBuffer* This, 4335 IRpcChannelBuffer* pRpcChannelBuffer, 4336 PRPC_MESSAGE pRpcMessage, 4337 DWORD* pdwStubPhase); 4338 HRESULT STDMETHODCALLTYPE IShellFolder_BindToObject_Proxy( 4339 IShellFolder* This, 4340 PCUIDLIST_RELATIVE pidl, 4341 IBindCtx *pbc, 4342 REFIID riid, 4343 void **ppv); 4344 void __RPC_STUB IShellFolder_BindToObject_Stub( 4345 IRpcStubBuffer* This, 4346 IRpcChannelBuffer* pRpcChannelBuffer, 4347 PRPC_MESSAGE pRpcMessage, 4348 DWORD* pdwStubPhase); 4349 HRESULT STDMETHODCALLTYPE IShellFolder_BindToStorage_Proxy( 4350 IShellFolder* This, 4351 PCUIDLIST_RELATIVE pidl, 4352 IBindCtx *pbc, 4353 REFIID riid, 4354 void **ppv); 4355 void __RPC_STUB IShellFolder_BindToStorage_Stub( 4356 IRpcStubBuffer* This, 4357 IRpcChannelBuffer* pRpcChannelBuffer, 4358 PRPC_MESSAGE pRpcMessage, 4359 DWORD* pdwStubPhase); 4360 HRESULT STDMETHODCALLTYPE IShellFolder_CompareIDs_Proxy( 4361 IShellFolder* This, 4362 LPARAM lParam, 4363 PCUIDLIST_RELATIVE pidl1, 4364 PCUIDLIST_RELATIVE pidl2); 4365 void __RPC_STUB IShellFolder_CompareIDs_Stub( 4366 IRpcStubBuffer* This, 4367 IRpcChannelBuffer* pRpcChannelBuffer, 4368 PRPC_MESSAGE pRpcMessage, 4369 DWORD* pdwStubPhase); 4370 HRESULT STDMETHODCALLTYPE IShellFolder_CreateViewObject_Proxy( 4371 IShellFolder* This, 4372 HWND hwndOwner, 4373 REFIID riid, 4374 void **ppv); 4375 void __RPC_STUB IShellFolder_CreateViewObject_Stub( 4376 IRpcStubBuffer* This, 4377 IRpcChannelBuffer* pRpcChannelBuffer, 4378 PRPC_MESSAGE pRpcMessage, 4379 DWORD* pdwStubPhase); 4380 HRESULT STDMETHODCALLTYPE IShellFolder_GetAttributesOf_Proxy( 4381 IShellFolder* This, 4382 UINT cidl, 4383 PCUITEMID_CHILD_ARRAY apidl, 4384 SFGAOF *rgfInOut); 4385 void __RPC_STUB IShellFolder_GetAttributesOf_Stub( 4386 IRpcStubBuffer* This, 4387 IRpcChannelBuffer* pRpcChannelBuffer, 4388 PRPC_MESSAGE pRpcMessage, 4389 DWORD* pdwStubPhase); 4390 HRESULT STDMETHODCALLTYPE IShellFolder_GetUIObjectOf_Proxy( 4391 IShellFolder* This, 4392 HWND hwndOwner, 4393 UINT cidl, 4394 PCUITEMID_CHILD_ARRAY apidl, 4395 REFIID riid, 4396 UINT *rgfReserved, 4397 void **ppv); 4398 void __RPC_STUB IShellFolder_GetUIObjectOf_Stub( 4399 IRpcStubBuffer* This, 4400 IRpcChannelBuffer* pRpcChannelBuffer, 4401 PRPC_MESSAGE pRpcMessage, 4402 DWORD* pdwStubPhase); 4403 HRESULT STDMETHODCALLTYPE IShellFolder_GetDisplayNameOf_Proxy( 4404 IShellFolder* This, 4405 PCUITEMID_CHILD pidl, 4406 SHGDNF uFlags, 4407 STRRET *pName); 4408 void __RPC_STUB IShellFolder_GetDisplayNameOf_Stub( 4409 IRpcStubBuffer* This, 4410 IRpcChannelBuffer* pRpcChannelBuffer, 4411 PRPC_MESSAGE pRpcMessage, 4412 DWORD* pdwStubPhase); 4413 HRESULT STDMETHODCALLTYPE IShellFolder_RemoteSetNameOf_Proxy( 4414 IShellFolder* This, 4415 HWND hwnd, 4416 PCUITEMID_CHILD pidl, 4417 LPCWSTR pszName, 4418 SHGDNF uFlags, 4419 PITEMID_CHILD *ppidlOut); 4420 void __RPC_STUB IShellFolder_RemoteSetNameOf_Stub( 4421 IRpcStubBuffer* This, 4422 IRpcChannelBuffer* pRpcChannelBuffer, 4423 PRPC_MESSAGE pRpcMessage, 4424 DWORD* pdwStubPhase); 4425 HRESULT CALLBACK IShellFolder_SetNameOf_Proxy( 4426 IShellFolder* This, 4427 HWND hwnd, 4428 PCUITEMID_CHILD pidl, 4429 LPCWSTR pszName, 4430 SHGDNF uFlags, 4431 PITEMID_CHILD *ppidlOut); 4432 HRESULT __RPC_STUB IShellFolder_SetNameOf_Stub( 4433 IShellFolder* This, 4434 HWND hwnd, 4435 PCUITEMID_CHILD pidl, 4436 LPCWSTR pszName, 4437 SHGDNF uFlags, 4438 PITEMID_CHILD *ppidlOut); 4439 4440 #endif /* __IShellFolder_INTERFACE_DEFINED__ */ 4441 4442 typedef IShellFolder *LPSHELLFOLDER; 4443 4444 typedef struct EXTRASEARCH { 4445 GUID guidSearch; 4446 WCHAR wszFriendlyName[80]; 4447 WCHAR wszUrl[2084]; 4448 } EXTRASEARCH; 4449 typedef struct EXTRASEARCH *LPEXTRASEARCH; 4450 4451 /***************************************************************************** 4452 * IEnumExtraSearch interface 4453 */ 4454 #ifndef __IEnumExtraSearch_INTERFACE_DEFINED__ 4455 #define __IEnumExtraSearch_INTERFACE_DEFINED__ 4456 4457 DEFINE_GUID(IID_IEnumExtraSearch, 0x0e700be1, 0x9db6, 0x11d1, 0xa1,0xce, 0x00,0xc0,0x4f,0xd7,0x5d,0x13); 4458 #if defined(__cplusplus) && !defined(CINTERFACE) 4459 MIDL_INTERFACE("0e700be1-9db6-11d1-a1ce-00c04fd75d13") 4460 IEnumExtraSearch : public IUnknown 4461 { 4462 virtual HRESULT STDMETHODCALLTYPE Next( 4463 ULONG celt, 4464 EXTRASEARCH *rgelt, 4465 ULONG *pceltFetched) = 0; 4466 4467 virtual HRESULT STDMETHODCALLTYPE Skip( 4468 ULONG celt) = 0; 4469 4470 virtual HRESULT STDMETHODCALLTYPE Reset( 4471 ) = 0; 4472 4473 virtual HRESULT STDMETHODCALLTYPE Clone( 4474 IEnumExtraSearch **ppenum) = 0; 4475 4476 }; 4477 #ifdef __CRT_UUID_DECL 4478 __CRT_UUID_DECL(IEnumExtraSearch, 0x0e700be1, 0x9db6, 0x11d1, 0xa1,0xce, 0x00,0xc0,0x4f,0xd7,0x5d,0x13) 4479 #endif 4480 #else 4481 typedef struct IEnumExtraSearchVtbl { 4482 BEGIN_INTERFACE 4483 4484 /*** IUnknown methods ***/ 4485 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4486 IEnumExtraSearch* This, 4487 REFIID riid, 4488 void **ppvObject); 4489 4490 ULONG (STDMETHODCALLTYPE *AddRef)( 4491 IEnumExtraSearch* This); 4492 4493 ULONG (STDMETHODCALLTYPE *Release)( 4494 IEnumExtraSearch* This); 4495 4496 /*** IEnumExtraSearch methods ***/ 4497 HRESULT (STDMETHODCALLTYPE *Next)( 4498 IEnumExtraSearch* This, 4499 ULONG celt, 4500 EXTRASEARCH *rgelt, 4501 ULONG *pceltFetched); 4502 4503 HRESULT (STDMETHODCALLTYPE *Skip)( 4504 IEnumExtraSearch* This, 4505 ULONG celt); 4506 4507 HRESULT (STDMETHODCALLTYPE *Reset)( 4508 IEnumExtraSearch* This); 4509 4510 HRESULT (STDMETHODCALLTYPE *Clone)( 4511 IEnumExtraSearch* This, 4512 IEnumExtraSearch **ppenum); 4513 4514 END_INTERFACE 4515 } IEnumExtraSearchVtbl; 4516 interface IEnumExtraSearch { 4517 CONST_VTBL IEnumExtraSearchVtbl* lpVtbl; 4518 }; 4519 4520 #ifdef COBJMACROS 4521 #ifndef WIDL_C_INLINE_WRAPPERS 4522 /*** IUnknown methods ***/ 4523 #define IEnumExtraSearch_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4524 #define IEnumExtraSearch_AddRef(This) (This)->lpVtbl->AddRef(This) 4525 #define IEnumExtraSearch_Release(This) (This)->lpVtbl->Release(This) 4526 /*** IEnumExtraSearch methods ***/ 4527 #define IEnumExtraSearch_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) 4528 #define IEnumExtraSearch_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 4529 #define IEnumExtraSearch_Reset(This) (This)->lpVtbl->Reset(This) 4530 #define IEnumExtraSearch_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) 4531 #else 4532 /*** IUnknown methods ***/ 4533 static FORCEINLINE HRESULT IEnumExtraSearch_QueryInterface(IEnumExtraSearch* This,REFIID riid,void **ppvObject) { 4534 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4535 } 4536 static FORCEINLINE ULONG IEnumExtraSearch_AddRef(IEnumExtraSearch* This) { 4537 return This->lpVtbl->AddRef(This); 4538 } 4539 static FORCEINLINE ULONG IEnumExtraSearch_Release(IEnumExtraSearch* This) { 4540 return This->lpVtbl->Release(This); 4541 } 4542 /*** IEnumExtraSearch methods ***/ 4543 static FORCEINLINE HRESULT IEnumExtraSearch_Next(IEnumExtraSearch* This,ULONG celt,EXTRASEARCH *rgelt,ULONG *pceltFetched) { 4544 return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); 4545 } 4546 static FORCEINLINE HRESULT IEnumExtraSearch_Skip(IEnumExtraSearch* This,ULONG celt) { 4547 return This->lpVtbl->Skip(This,celt); 4548 } 4549 static FORCEINLINE HRESULT IEnumExtraSearch_Reset(IEnumExtraSearch* This) { 4550 return This->lpVtbl->Reset(This); 4551 } 4552 static FORCEINLINE HRESULT IEnumExtraSearch_Clone(IEnumExtraSearch* This,IEnumExtraSearch **ppenum) { 4553 return This->lpVtbl->Clone(This,ppenum); 4554 } 4555 #endif 4556 #endif 4557 4558 #endif 4559 4560 HRESULT STDMETHODCALLTYPE IEnumExtraSearch_Next_Proxy( 4561 IEnumExtraSearch* This, 4562 ULONG celt, 4563 EXTRASEARCH *rgelt, 4564 ULONG *pceltFetched); 4565 void __RPC_STUB IEnumExtraSearch_Next_Stub( 4566 IRpcStubBuffer* This, 4567 IRpcChannelBuffer* pRpcChannelBuffer, 4568 PRPC_MESSAGE pRpcMessage, 4569 DWORD* pdwStubPhase); 4570 HRESULT STDMETHODCALLTYPE IEnumExtraSearch_Skip_Proxy( 4571 IEnumExtraSearch* This, 4572 ULONG celt); 4573 void __RPC_STUB IEnumExtraSearch_Skip_Stub( 4574 IRpcStubBuffer* This, 4575 IRpcChannelBuffer* pRpcChannelBuffer, 4576 PRPC_MESSAGE pRpcMessage, 4577 DWORD* pdwStubPhase); 4578 HRESULT STDMETHODCALLTYPE IEnumExtraSearch_Reset_Proxy( 4579 IEnumExtraSearch* This); 4580 void __RPC_STUB IEnumExtraSearch_Reset_Stub( 4581 IRpcStubBuffer* This, 4582 IRpcChannelBuffer* pRpcChannelBuffer, 4583 PRPC_MESSAGE pRpcMessage, 4584 DWORD* pdwStubPhase); 4585 HRESULT STDMETHODCALLTYPE IEnumExtraSearch_Clone_Proxy( 4586 IEnumExtraSearch* This, 4587 IEnumExtraSearch **ppenum); 4588 void __RPC_STUB IEnumExtraSearch_Clone_Stub( 4589 IRpcStubBuffer* This, 4590 IRpcChannelBuffer* pRpcChannelBuffer, 4591 PRPC_MESSAGE pRpcMessage, 4592 DWORD* pdwStubPhase); 4593 4594 #endif /* __IEnumExtraSearch_INTERFACE_DEFINED__ */ 4595 4596 typedef IEnumExtraSearch *LPENUMEXTRASEARCH; 4597 4598 /***************************************************************************** 4599 * IShellFolder2 interface 4600 */ 4601 #ifndef __IShellFolder2_INTERFACE_DEFINED__ 4602 #define __IShellFolder2_INTERFACE_DEFINED__ 4603 4604 DEFINE_GUID(IID_IShellFolder2, 0x93f2f68c, 0x1d1b, 0x11d3, 0xa3,0x0e, 0x00,0xc0,0x4f,0x79,0xab,0xd1); 4605 #if defined(__cplusplus) && !defined(CINTERFACE) 4606 MIDL_INTERFACE("93f2f68c-1d1b-11d3-a30e-00c04f79abd1") 4607 IShellFolder2 : public IShellFolder 4608 { 4609 virtual HRESULT STDMETHODCALLTYPE GetDefaultSearchGUID( 4610 GUID *pguid) = 0; 4611 4612 virtual HRESULT STDMETHODCALLTYPE EnumSearches( 4613 IEnumExtraSearch **ppenum) = 0; 4614 4615 virtual HRESULT STDMETHODCALLTYPE GetDefaultColumn( 4616 DWORD dwRes, 4617 ULONG *pSort, 4618 ULONG *pDisplay) = 0; 4619 4620 virtual HRESULT STDMETHODCALLTYPE GetDefaultColumnState( 4621 UINT iColumn, 4622 SHCOLSTATEF *pcsFlags) = 0; 4623 4624 virtual HRESULT STDMETHODCALLTYPE GetDetailsEx( 4625 PCUITEMID_CHILD pidl, 4626 const SHCOLUMNID *pscid, 4627 VARIANT *pv) = 0; 4628 4629 virtual HRESULT STDMETHODCALLTYPE GetDetailsOf( 4630 PCUITEMID_CHILD pidl, 4631 UINT iColumn, 4632 SHELLDETAILS *psd) = 0; 4633 4634 virtual HRESULT STDMETHODCALLTYPE MapColumnToSCID( 4635 UINT iColumn, 4636 SHCOLUMNID *pscid) = 0; 4637 4638 }; 4639 #ifdef __CRT_UUID_DECL 4640 __CRT_UUID_DECL(IShellFolder2, 0x93f2f68c, 0x1d1b, 0x11d3, 0xa3,0x0e, 0x00,0xc0,0x4f,0x79,0xab,0xd1) 4641 #endif 4642 #else 4643 typedef struct IShellFolder2Vtbl { 4644 BEGIN_INTERFACE 4645 4646 /*** IUnknown methods ***/ 4647 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 4648 IShellFolder2* This, 4649 REFIID riid, 4650 void **ppvObject); 4651 4652 ULONG (STDMETHODCALLTYPE *AddRef)( 4653 IShellFolder2* This); 4654 4655 ULONG (STDMETHODCALLTYPE *Release)( 4656 IShellFolder2* This); 4657 4658 /*** IShellFolder methods ***/ 4659 HRESULT (STDMETHODCALLTYPE *ParseDisplayName)( 4660 IShellFolder2* This, 4661 HWND hwnd, 4662 IBindCtx *pbc, 4663 LPWSTR pszDisplayName, 4664 ULONG *pchEaten, 4665 PIDLIST_RELATIVE *ppidl, 4666 ULONG *pdwAttributes); 4667 4668 HRESULT (STDMETHODCALLTYPE *EnumObjects)( 4669 IShellFolder2* This, 4670 HWND hwnd, 4671 SHCONTF grfFlags, 4672 IEnumIDList **ppenumIDList); 4673 4674 HRESULT (STDMETHODCALLTYPE *BindToObject)( 4675 IShellFolder2* This, 4676 PCUIDLIST_RELATIVE pidl, 4677 IBindCtx *pbc, 4678 REFIID riid, 4679 void **ppv); 4680 4681 HRESULT (STDMETHODCALLTYPE *BindToStorage)( 4682 IShellFolder2* This, 4683 PCUIDLIST_RELATIVE pidl, 4684 IBindCtx *pbc, 4685 REFIID riid, 4686 void **ppv); 4687 4688 HRESULT (STDMETHODCALLTYPE *CompareIDs)( 4689 IShellFolder2* This, 4690 LPARAM lParam, 4691 PCUIDLIST_RELATIVE pidl1, 4692 PCUIDLIST_RELATIVE pidl2); 4693 4694 HRESULT (STDMETHODCALLTYPE *CreateViewObject)( 4695 IShellFolder2* This, 4696 HWND hwndOwner, 4697 REFIID riid, 4698 void **ppv); 4699 4700 HRESULT (STDMETHODCALLTYPE *GetAttributesOf)( 4701 IShellFolder2* This, 4702 UINT cidl, 4703 PCUITEMID_CHILD_ARRAY apidl, 4704 SFGAOF *rgfInOut); 4705 4706 HRESULT (STDMETHODCALLTYPE *GetUIObjectOf)( 4707 IShellFolder2* This, 4708 HWND hwndOwner, 4709 UINT cidl, 4710 PCUITEMID_CHILD_ARRAY apidl, 4711 REFIID riid, 4712 UINT *rgfReserved, 4713 void **ppv); 4714 4715 HRESULT (STDMETHODCALLTYPE *GetDisplayNameOf)( 4716 IShellFolder2* This, 4717 PCUITEMID_CHILD pidl, 4718 SHGDNF uFlags, 4719 STRRET *pName); 4720 4721 HRESULT (STDMETHODCALLTYPE *SetNameOf)( 4722 IShellFolder2* This, 4723 HWND hwnd, 4724 PCUITEMID_CHILD pidl, 4725 LPCWSTR pszName, 4726 SHGDNF uFlags, 4727 PITEMID_CHILD *ppidlOut); 4728 4729 /*** IShellFolder2 methods ***/ 4730 HRESULT (STDMETHODCALLTYPE *GetDefaultSearchGUID)( 4731 IShellFolder2* This, 4732 GUID *pguid); 4733 4734 HRESULT (STDMETHODCALLTYPE *EnumSearches)( 4735 IShellFolder2* This, 4736 IEnumExtraSearch **ppenum); 4737 4738 HRESULT (STDMETHODCALLTYPE *GetDefaultColumn)( 4739 IShellFolder2* This, 4740 DWORD dwRes, 4741 ULONG *pSort, 4742 ULONG *pDisplay); 4743 4744 HRESULT (STDMETHODCALLTYPE *GetDefaultColumnState)( 4745 IShellFolder2* This, 4746 UINT iColumn, 4747 SHCOLSTATEF *pcsFlags); 4748 4749 HRESULT (STDMETHODCALLTYPE *GetDetailsEx)( 4750 IShellFolder2* This, 4751 PCUITEMID_CHILD pidl, 4752 const SHCOLUMNID *pscid, 4753 VARIANT *pv); 4754 4755 HRESULT (STDMETHODCALLTYPE *GetDetailsOf)( 4756 IShellFolder2* This, 4757 PCUITEMID_CHILD pidl, 4758 UINT iColumn, 4759 SHELLDETAILS *psd); 4760 4761 HRESULT (STDMETHODCALLTYPE *MapColumnToSCID)( 4762 IShellFolder2* This, 4763 UINT iColumn, 4764 SHCOLUMNID *pscid); 4765 4766 END_INTERFACE 4767 } IShellFolder2Vtbl; 4768 interface IShellFolder2 { 4769 CONST_VTBL IShellFolder2Vtbl* lpVtbl; 4770 }; 4771 4772 #ifdef COBJMACROS 4773 #ifndef WIDL_C_INLINE_WRAPPERS 4774 /*** IUnknown methods ***/ 4775 #define IShellFolder2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 4776 #define IShellFolder2_AddRef(This) (This)->lpVtbl->AddRef(This) 4777 #define IShellFolder2_Release(This) (This)->lpVtbl->Release(This) 4778 /*** IShellFolder methods ***/ 4779 #define IShellFolder2_ParseDisplayName(This,hwnd,pbc,pszDisplayName,pchEaten,ppidl,pdwAttributes) (This)->lpVtbl->ParseDisplayName(This,hwnd,pbc,pszDisplayName,pchEaten,ppidl,pdwAttributes) 4780 #define IShellFolder2_EnumObjects(This,hwnd,grfFlags,ppenumIDList) (This)->lpVtbl->EnumObjects(This,hwnd,grfFlags,ppenumIDList) 4781 #define IShellFolder2_BindToObject(This,pidl,pbc,riid,ppv) (This)->lpVtbl->BindToObject(This,pidl,pbc,riid,ppv) 4782 #define IShellFolder2_BindToStorage(This,pidl,pbc,riid,ppv) (This)->lpVtbl->BindToStorage(This,pidl,pbc,riid,ppv) 4783 #define IShellFolder2_CompareIDs(This,lParam,pidl1,pidl2) (This)->lpVtbl->CompareIDs(This,lParam,pidl1,pidl2) 4784 #define IShellFolder2_CreateViewObject(This,hwndOwner,riid,ppv) (This)->lpVtbl->CreateViewObject(This,hwndOwner,riid,ppv) 4785 #define IShellFolder2_GetAttributesOf(This,cidl,apidl,rgfInOut) (This)->lpVtbl->GetAttributesOf(This,cidl,apidl,rgfInOut) 4786 #define IShellFolder2_GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,rgfReserved,ppv) (This)->lpVtbl->GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,rgfReserved,ppv) 4787 #define IShellFolder2_GetDisplayNameOf(This,pidl,uFlags,pName) (This)->lpVtbl->GetDisplayNameOf(This,pidl,uFlags,pName) 4788 #define IShellFolder2_SetNameOf(This,hwnd,pidl,pszName,uFlags,ppidlOut) (This)->lpVtbl->SetNameOf(This,hwnd,pidl,pszName,uFlags,ppidlOut) 4789 /*** IShellFolder2 methods ***/ 4790 #define IShellFolder2_GetDefaultSearchGUID(This,pguid) (This)->lpVtbl->GetDefaultSearchGUID(This,pguid) 4791 #define IShellFolder2_EnumSearches(This,ppenum) (This)->lpVtbl->EnumSearches(This,ppenum) 4792 #define IShellFolder2_GetDefaultColumn(This,dwRes,pSort,pDisplay) (This)->lpVtbl->GetDefaultColumn(This,dwRes,pSort,pDisplay) 4793 #define IShellFolder2_GetDefaultColumnState(This,iColumn,pcsFlags) (This)->lpVtbl->GetDefaultColumnState(This,iColumn,pcsFlags) 4794 #define IShellFolder2_GetDetailsEx(This,pidl,pscid,pv) (This)->lpVtbl->GetDetailsEx(This,pidl,pscid,pv) 4795 #define IShellFolder2_GetDetailsOf(This,pidl,iColumn,psd) (This)->lpVtbl->GetDetailsOf(This,pidl,iColumn,psd) 4796 #define IShellFolder2_MapColumnToSCID(This,iColumn,pscid) (This)->lpVtbl->MapColumnToSCID(This,iColumn,pscid) 4797 #else 4798 /*** IUnknown methods ***/ 4799 static FORCEINLINE HRESULT IShellFolder2_QueryInterface(IShellFolder2* This,REFIID riid,void **ppvObject) { 4800 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 4801 } 4802 static FORCEINLINE ULONG IShellFolder2_AddRef(IShellFolder2* This) { 4803 return This->lpVtbl->AddRef(This); 4804 } 4805 static FORCEINLINE ULONG IShellFolder2_Release(IShellFolder2* This) { 4806 return This->lpVtbl->Release(This); 4807 } 4808 /*** IShellFolder methods ***/ 4809 static FORCEINLINE HRESULT IShellFolder2_ParseDisplayName(IShellFolder2* This,HWND hwnd,IBindCtx *pbc,LPWSTR pszDisplayName,ULONG *pchEaten,PIDLIST_RELATIVE *ppidl,ULONG *pdwAttributes) { 4810 return This->lpVtbl->ParseDisplayName(This,hwnd,pbc,pszDisplayName,pchEaten,ppidl,pdwAttributes); 4811 } 4812 static FORCEINLINE HRESULT IShellFolder2_EnumObjects(IShellFolder2* This,HWND hwnd,SHCONTF grfFlags,IEnumIDList **ppenumIDList) { 4813 return This->lpVtbl->EnumObjects(This,hwnd,grfFlags,ppenumIDList); 4814 } 4815 static FORCEINLINE HRESULT IShellFolder2_BindToObject(IShellFolder2* This,PCUIDLIST_RELATIVE pidl,IBindCtx *pbc,REFIID riid,void **ppv) { 4816 return This->lpVtbl->BindToObject(This,pidl,pbc,riid,ppv); 4817 } 4818 static FORCEINLINE HRESULT IShellFolder2_BindToStorage(IShellFolder2* This,PCUIDLIST_RELATIVE pidl,IBindCtx *pbc,REFIID riid,void **ppv) { 4819 return This->lpVtbl->BindToStorage(This,pidl,pbc,riid,ppv); 4820 } 4821 static FORCEINLINE HRESULT IShellFolder2_CompareIDs(IShellFolder2* This,LPARAM lParam,PCUIDLIST_RELATIVE pidl1,PCUIDLIST_RELATIVE pidl2) { 4822 return This->lpVtbl->CompareIDs(This,lParam,pidl1,pidl2); 4823 } 4824 static FORCEINLINE HRESULT IShellFolder2_CreateViewObject(IShellFolder2* This,HWND hwndOwner,REFIID riid,void **ppv) { 4825 return This->lpVtbl->CreateViewObject(This,hwndOwner,riid,ppv); 4826 } 4827 static FORCEINLINE HRESULT IShellFolder2_GetAttributesOf(IShellFolder2* This,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,SFGAOF *rgfInOut) { 4828 return This->lpVtbl->GetAttributesOf(This,cidl,apidl,rgfInOut); 4829 } 4830 static FORCEINLINE HRESULT IShellFolder2_GetUIObjectOf(IShellFolder2* This,HWND hwndOwner,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,REFIID riid,UINT *rgfReserved,void **ppv) { 4831 return This->lpVtbl->GetUIObjectOf(This,hwndOwner,cidl,apidl,riid,rgfReserved,ppv); 4832 } 4833 static FORCEINLINE HRESULT IShellFolder2_GetDisplayNameOf(IShellFolder2* This,PCUITEMID_CHILD pidl,SHGDNF uFlags,STRRET *pName) { 4834 return This->lpVtbl->GetDisplayNameOf(This,pidl,uFlags,pName); 4835 } 4836 static FORCEINLINE HRESULT IShellFolder2_SetNameOf(IShellFolder2* This,HWND hwnd,PCUITEMID_CHILD pidl,LPCWSTR pszName,SHGDNF uFlags,PITEMID_CHILD *ppidlOut) { 4837 return This->lpVtbl->SetNameOf(This,hwnd,pidl,pszName,uFlags,ppidlOut); 4838 } 4839 /*** IShellFolder2 methods ***/ 4840 static FORCEINLINE HRESULT IShellFolder2_GetDefaultSearchGUID(IShellFolder2* This,GUID *pguid) { 4841 return This->lpVtbl->GetDefaultSearchGUID(This,pguid); 4842 } 4843 static FORCEINLINE HRESULT IShellFolder2_EnumSearches(IShellFolder2* This,IEnumExtraSearch **ppenum) { 4844 return This->lpVtbl->EnumSearches(This,ppenum); 4845 } 4846 static FORCEINLINE HRESULT IShellFolder2_GetDefaultColumn(IShellFolder2* This,DWORD dwRes,ULONG *pSort,ULONG *pDisplay) { 4847 return This->lpVtbl->GetDefaultColumn(This,dwRes,pSort,pDisplay); 4848 } 4849 static FORCEINLINE HRESULT IShellFolder2_GetDefaultColumnState(IShellFolder2* This,UINT iColumn,SHCOLSTATEF *pcsFlags) { 4850 return This->lpVtbl->GetDefaultColumnState(This,iColumn,pcsFlags); 4851 } 4852 static FORCEINLINE HRESULT IShellFolder2_GetDetailsEx(IShellFolder2* This,PCUITEMID_CHILD pidl,const SHCOLUMNID *pscid,VARIANT *pv) { 4853 return This->lpVtbl->GetDetailsEx(This,pidl,pscid,pv); 4854 } 4855 static FORCEINLINE HRESULT IShellFolder2_GetDetailsOf(IShellFolder2* This,PCUITEMID_CHILD pidl,UINT iColumn,SHELLDETAILS *psd) { 4856 return This->lpVtbl->GetDetailsOf(This,pidl,iColumn,psd); 4857 } 4858 static FORCEINLINE HRESULT IShellFolder2_MapColumnToSCID(IShellFolder2* This,UINT iColumn,SHCOLUMNID *pscid) { 4859 return This->lpVtbl->MapColumnToSCID(This,iColumn,pscid); 4860 } 4861 #endif 4862 #endif 4863 4864 #endif 4865 4866 HRESULT STDMETHODCALLTYPE IShellFolder2_GetDefaultSearchGUID_Proxy( 4867 IShellFolder2* This, 4868 GUID *pguid); 4869 void __RPC_STUB IShellFolder2_GetDefaultSearchGUID_Stub( 4870 IRpcStubBuffer* This, 4871 IRpcChannelBuffer* pRpcChannelBuffer, 4872 PRPC_MESSAGE pRpcMessage, 4873 DWORD* pdwStubPhase); 4874 HRESULT STDMETHODCALLTYPE IShellFolder2_EnumSearches_Proxy( 4875 IShellFolder2* This, 4876 IEnumExtraSearch **ppenum); 4877 void __RPC_STUB IShellFolder2_EnumSearches_Stub( 4878 IRpcStubBuffer* This, 4879 IRpcChannelBuffer* pRpcChannelBuffer, 4880 PRPC_MESSAGE pRpcMessage, 4881 DWORD* pdwStubPhase); 4882 HRESULT STDMETHODCALLTYPE IShellFolder2_GetDefaultColumn_Proxy( 4883 IShellFolder2* This, 4884 DWORD dwRes, 4885 ULONG *pSort, 4886 ULONG *pDisplay); 4887 void __RPC_STUB IShellFolder2_GetDefaultColumn_Stub( 4888 IRpcStubBuffer* This, 4889 IRpcChannelBuffer* pRpcChannelBuffer, 4890 PRPC_MESSAGE pRpcMessage, 4891 DWORD* pdwStubPhase); 4892 HRESULT STDMETHODCALLTYPE IShellFolder2_GetDefaultColumnState_Proxy( 4893 IShellFolder2* This, 4894 UINT iColumn, 4895 SHCOLSTATEF *pcsFlags); 4896 void __RPC_STUB IShellFolder2_GetDefaultColumnState_Stub( 4897 IRpcStubBuffer* This, 4898 IRpcChannelBuffer* pRpcChannelBuffer, 4899 PRPC_MESSAGE pRpcMessage, 4900 DWORD* pdwStubPhase); 4901 HRESULT STDMETHODCALLTYPE IShellFolder2_GetDetailsEx_Proxy( 4902 IShellFolder2* This, 4903 PCUITEMID_CHILD pidl, 4904 const SHCOLUMNID *pscid, 4905 VARIANT *pv); 4906 void __RPC_STUB IShellFolder2_GetDetailsEx_Stub( 4907 IRpcStubBuffer* This, 4908 IRpcChannelBuffer* pRpcChannelBuffer, 4909 PRPC_MESSAGE pRpcMessage, 4910 DWORD* pdwStubPhase); 4911 HRESULT STDMETHODCALLTYPE IShellFolder2_GetDetailsOf_Proxy( 4912 IShellFolder2* This, 4913 PCUITEMID_CHILD pidl, 4914 UINT iColumn, 4915 SHELLDETAILS *psd); 4916 void __RPC_STUB IShellFolder2_GetDetailsOf_Stub( 4917 IRpcStubBuffer* This, 4918 IRpcChannelBuffer* pRpcChannelBuffer, 4919 PRPC_MESSAGE pRpcMessage, 4920 DWORD* pdwStubPhase); 4921 HRESULT STDMETHODCALLTYPE IShellFolder2_MapColumnToSCID_Proxy( 4922 IShellFolder2* This, 4923 UINT iColumn, 4924 SHCOLUMNID *pscid); 4925 void __RPC_STUB IShellFolder2_MapColumnToSCID_Stub( 4926 IRpcStubBuffer* This, 4927 IRpcChannelBuffer* pRpcChannelBuffer, 4928 PRPC_MESSAGE pRpcMessage, 4929 DWORD* pdwStubPhase); 4930 4931 #endif /* __IShellFolder2_INTERFACE_DEFINED__ */ 4932 4933 typedef char *LPVIEWSETTINGS; 4934 4935 typedef enum FOLDERFLAGS { 4936 FWF_NONE = 0x0, 4937 FWF_AUTOARRANGE = 0x1, 4938 FWF_ABBREVIATEDNAMES = 0x2, 4939 FWF_SNAPTOGRID = 0x4, 4940 FWF_OWNERDATA = 0x8, 4941 FWF_BESTFITWINDOW = 0x10, 4942 FWF_DESKTOP = 0x20, 4943 FWF_SINGLESEL = 0x40, 4944 FWF_NOSUBFOLDERS = 0x80, 4945 FWF_TRANSPARENT = 0x100, 4946 FWF_NOCLIENTEDGE = 0x200, 4947 FWF_NOSCROLL = 0x400, 4948 FWF_ALIGNLEFT = 0x800, 4949 FWF_NOICONS = 0x1000, 4950 FWF_SHOWSELALWAYS = 0x2000, 4951 FWF_NOVISIBLE = 0x4000, 4952 FWF_SINGLECLICKACTIVATE = 0x8000, 4953 FWF_NOWEBVIEW = 0x10000, 4954 FWF_HIDEFILENAMES = 0x20000, 4955 FWF_CHECKSELECT = 0x40000, 4956 FWF_NOENUMREFRESH = 0x80000, 4957 FWF_NOGROUPING = 0x100000, 4958 FWF_FULLROWSELECT = 0x200000, 4959 FWF_NOFILTERS = 0x400000, 4960 FWF_NOCOLUMNHEADER = 0x800000, 4961 FWF_NOHEADERINALLVIEWS = 0x1000000, 4962 FWF_EXTENDEDTILES = 0x2000000, 4963 FWF_TRICHECKSELECT = 0x4000000, 4964 FWF_AUTOCHECKSELECT = 0x8000000, 4965 FWF_NOBROWSERVIEWSTATE = 0x10000000, 4966 FWF_SUBSETGROUPS = 0x20000000, 4967 FWF_USESEARCHFOLDER = 0x40000000, 4968 FWF_ALLOWRTLREADING = 0x80000000 4969 } FOLDERFLAGS; 4970 4971 DEFINE_ENUM_FLAG_OPERATORS(FOLDERFLAGS) 4972 4973 typedef enum FOLDERVIEWMODE { 4974 FVM_AUTO = -1, 4975 FVM_FIRST = 1, 4976 FVM_ICON = 1, 4977 FVM_SMALLICON = 2, 4978 FVM_LIST = 3, 4979 FVM_DETAILS = 4, 4980 FVM_THUMBNAIL = 5, 4981 FVM_TILE = 6, 4982 FVM_THUMBSTRIP = 7, 4983 FVM_CONTENT = 8, 4984 FVM_LAST = 8 4985 } FOLDERVIEWMODE; 4986 4987 #if NTDDI_VERSION >= NTDDI_VISTA 4988 typedef enum FOLDERLOGICALVIEWMODE { 4989 FLVM_UNSPECIFIED = -1, 4990 FLVM_FIRST = 1, 4991 FLVM_DETAILS = 1, 4992 FLVM_TILES = 2, 4993 FLVM_ICONS = 3, 4994 FLVM_LIST = 4, 4995 FLVM_CONTENT = 5, 4996 FLVM_LAST = 5 4997 } FOLDERLOGICALVIEWMODE; 4998 #endif 4999 typedef struct FOLDERSETTINGS { 5000 UINT ViewMode; 5001 UINT fFlags; 5002 } FOLDERSETTINGS; 5003 5004 typedef FOLDERSETTINGS *LPFOLDERSETTINGS; 5005 typedef const FOLDERSETTINGS *LPCFOLDERSETTINGS; 5006 typedef FOLDERSETTINGS *PFOLDERSETTINGS; 5007 5008 /***************************************************************************** 5009 * IFolderViewOptions interface 5010 */ 5011 #ifndef __IFolderViewOptions_INTERFACE_DEFINED__ 5012 #define __IFolderViewOptions_INTERFACE_DEFINED__ 5013 5014 typedef enum FOLDERVIEWOPTIONS { 5015 FVO_DEFAULT = 0x0, 5016 FVO_VISTALAYOUT = 0x1, 5017 FVO_CUSTOMPOSITION = 0x2, 5018 FVO_CUSTOMORDERING = 0x4, 5019 FVO_SUPPORTHYPERLINKS = 0x8, 5020 FVO_NOANIMATIONS = 0x10, 5021 FVO_NOSCROLLTIPS = 0x20 5022 } FOLDERVIEWOPTIONS; 5023 5024 DEFINE_ENUM_FLAG_OPERATORS(FOLDERVIEWOPTIONS) 5025 5026 DEFINE_GUID(IID_IFolderViewOptions, 0x3cc974d2, 0xb302, 0x4d36, 0xad,0x3e, 0x06,0xd9,0x3f,0x69,0x5d,0x3f); 5027 #if defined(__cplusplus) && !defined(CINTERFACE) 5028 MIDL_INTERFACE("3cc974d2-b302-4d36-ad3e-06d93f695d3f") 5029 IFolderViewOptions : public IUnknown 5030 { 5031 virtual HRESULT STDMETHODCALLTYPE SetFolderViewOptions( 5032 FOLDERVIEWOPTIONS fvoMask, 5033 FOLDERVIEWOPTIONS fvoFlags) = 0; 5034 5035 virtual HRESULT STDMETHODCALLTYPE GetFolderViewOptions( 5036 FOLDERVIEWOPTIONS *pfvoFlags) = 0; 5037 5038 }; 5039 #ifdef __CRT_UUID_DECL 5040 __CRT_UUID_DECL(IFolderViewOptions, 0x3cc974d2, 0xb302, 0x4d36, 0xad,0x3e, 0x06,0xd9,0x3f,0x69,0x5d,0x3f) 5041 #endif 5042 #else 5043 typedef struct IFolderViewOptionsVtbl { 5044 BEGIN_INTERFACE 5045 5046 /*** IUnknown methods ***/ 5047 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5048 IFolderViewOptions* This, 5049 REFIID riid, 5050 void **ppvObject); 5051 5052 ULONG (STDMETHODCALLTYPE *AddRef)( 5053 IFolderViewOptions* This); 5054 5055 ULONG (STDMETHODCALLTYPE *Release)( 5056 IFolderViewOptions* This); 5057 5058 /*** IFolderViewOptions methods ***/ 5059 HRESULT (STDMETHODCALLTYPE *SetFolderViewOptions)( 5060 IFolderViewOptions* This, 5061 FOLDERVIEWOPTIONS fvoMask, 5062 FOLDERVIEWOPTIONS fvoFlags); 5063 5064 HRESULT (STDMETHODCALLTYPE *GetFolderViewOptions)( 5065 IFolderViewOptions* This, 5066 FOLDERVIEWOPTIONS *pfvoFlags); 5067 5068 END_INTERFACE 5069 } IFolderViewOptionsVtbl; 5070 interface IFolderViewOptions { 5071 CONST_VTBL IFolderViewOptionsVtbl* lpVtbl; 5072 }; 5073 5074 #ifdef COBJMACROS 5075 #ifndef WIDL_C_INLINE_WRAPPERS 5076 /*** IUnknown methods ***/ 5077 #define IFolderViewOptions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5078 #define IFolderViewOptions_AddRef(This) (This)->lpVtbl->AddRef(This) 5079 #define IFolderViewOptions_Release(This) (This)->lpVtbl->Release(This) 5080 /*** IFolderViewOptions methods ***/ 5081 #define IFolderViewOptions_SetFolderViewOptions(This,fvoMask,fvoFlags) (This)->lpVtbl->SetFolderViewOptions(This,fvoMask,fvoFlags) 5082 #define IFolderViewOptions_GetFolderViewOptions(This,pfvoFlags) (This)->lpVtbl->GetFolderViewOptions(This,pfvoFlags) 5083 #else 5084 /*** IUnknown methods ***/ 5085 static FORCEINLINE HRESULT IFolderViewOptions_QueryInterface(IFolderViewOptions* This,REFIID riid,void **ppvObject) { 5086 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5087 } 5088 static FORCEINLINE ULONG IFolderViewOptions_AddRef(IFolderViewOptions* This) { 5089 return This->lpVtbl->AddRef(This); 5090 } 5091 static FORCEINLINE ULONG IFolderViewOptions_Release(IFolderViewOptions* This) { 5092 return This->lpVtbl->Release(This); 5093 } 5094 /*** IFolderViewOptions methods ***/ 5095 static FORCEINLINE HRESULT IFolderViewOptions_SetFolderViewOptions(IFolderViewOptions* This,FOLDERVIEWOPTIONS fvoMask,FOLDERVIEWOPTIONS fvoFlags) { 5096 return This->lpVtbl->SetFolderViewOptions(This,fvoMask,fvoFlags); 5097 } 5098 static FORCEINLINE HRESULT IFolderViewOptions_GetFolderViewOptions(IFolderViewOptions* This,FOLDERVIEWOPTIONS *pfvoFlags) { 5099 return This->lpVtbl->GetFolderViewOptions(This,pfvoFlags); 5100 } 5101 #endif 5102 #endif 5103 5104 #endif 5105 5106 HRESULT STDMETHODCALLTYPE IFolderViewOptions_SetFolderViewOptions_Proxy( 5107 IFolderViewOptions* This, 5108 FOLDERVIEWOPTIONS fvoMask, 5109 FOLDERVIEWOPTIONS fvoFlags); 5110 void __RPC_STUB IFolderViewOptions_SetFolderViewOptions_Stub( 5111 IRpcStubBuffer* This, 5112 IRpcChannelBuffer* pRpcChannelBuffer, 5113 PRPC_MESSAGE pRpcMessage, 5114 DWORD* pdwStubPhase); 5115 HRESULT STDMETHODCALLTYPE IFolderViewOptions_GetFolderViewOptions_Proxy( 5116 IFolderViewOptions* This, 5117 FOLDERVIEWOPTIONS *pfvoFlags); 5118 void __RPC_STUB IFolderViewOptions_GetFolderViewOptions_Stub( 5119 IRpcStubBuffer* This, 5120 IRpcChannelBuffer* pRpcChannelBuffer, 5121 PRPC_MESSAGE pRpcMessage, 5122 DWORD* pdwStubPhase); 5123 5124 #endif /* __IFolderViewOptions_INTERFACE_DEFINED__ */ 5125 5126 typedef enum _SVSIF { 5127 SVSI_DESELECT = 0x0, 5128 SVSI_SELECT = 0x1, 5129 SVSI_EDIT = 0x3, 5130 SVSI_DESELECTOTHERS = 0x4, 5131 SVSI_ENSUREVISIBLE = 0x8, 5132 SVSI_FOCUSED = 0x10, 5133 SVSI_TRANSLATEPT = 0x20, 5134 SVSI_SELECTIONMARK = 0x40, 5135 SVSI_POSITIONITEM = 0x80, 5136 SVSI_CHECK = 0x100, 5137 SVSI_CHECK2 = 0x200, 5138 SVSI_KEYBOARDSELECT = 0x401, 5139 SVSI_NOTAKEFOCUS = 0x40000000 5140 } _SVSIF; 5141 5142 #define SVSI_NOSTATECHANGE ((UINT)0x80000000) 5143 5144 typedef UINT SVSIF; 5145 5146 typedef enum _SVGIO { 5147 SVGIO_BACKGROUND = 0x0, 5148 SVGIO_SELECTION = 0x1, 5149 SVGIO_ALLVIEW = 0x2, 5150 SVGIO_CHECKED = 0x3, 5151 SVGIO_TYPE_MASK = 0xf, 5152 SVGIO_FLAG_VIEWORDER = 0x80000000 5153 } _SVGIO; 5154 5155 DEFINE_ENUM_FLAG_OPERATORS(_SVGIO) 5156 5157 typedef int SVGIO; 5158 5159 typedef enum SVUIA_STATUS { 5160 SVUIA_DEACTIVATE = 0, 5161 SVUIA_ACTIVATE_NOFOCUS = 1, 5162 SVUIA_ACTIVATE_FOCUS = 2, 5163 SVUIA_INPLACEACTIVATE = 3 5164 } SVUIA_STATUS; 5165 5166 #ifdef _FIX_ENABLEMODELESS_CONFLICT 5167 #define EnableModeless EnableModelessSV 5168 #endif 5169 5170 #if 0 5171 typedef LPARAM LPFNSVADDPROPSHEETPAGE; 5172 #else 5173 #include <prsht.h> 5174 typedef LPFNADDPROPSHEETPAGE LPFNSVADDPROPSHEETPAGE; 5175 #endif 5176 5177 #ifndef __IShellBrowser_FWD_DEFINED__ 5178 #define __IShellBrowser_FWD_DEFINED__ 5179 typedef interface IShellBrowser IShellBrowser; 5180 #endif 5181 5182 5183 /***************************************************************************** 5184 * IShellView interface 5185 */ 5186 #ifndef __IShellView_INTERFACE_DEFINED__ 5187 #define __IShellView_INTERFACE_DEFINED__ 5188 5189 DEFINE_GUID(IID_IShellView, 0x000214e3, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 5190 #if defined(__cplusplus) && !defined(CINTERFACE) 5191 MIDL_INTERFACE("000214e3-0000-0000-c000-000000000046") 5192 IShellView : public IOleWindow 5193 { 5194 virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator( 5195 MSG *pmsg) = 0; 5196 5197 virtual HRESULT STDMETHODCALLTYPE EnableModeless( 5198 WINBOOL fEnable) = 0; 5199 5200 virtual HRESULT STDMETHODCALLTYPE UIActivate( 5201 UINT uState) = 0; 5202 5203 virtual HRESULT STDMETHODCALLTYPE Refresh( 5204 ) = 0; 5205 5206 virtual HRESULT STDMETHODCALLTYPE CreateViewWindow( 5207 IShellView *psvPrevious, 5208 LPCFOLDERSETTINGS pfs, 5209 IShellBrowser *psb, 5210 RECT *prcView, 5211 HWND *phWnd) = 0; 5212 5213 virtual HRESULT STDMETHODCALLTYPE DestroyViewWindow( 5214 ) = 0; 5215 5216 virtual HRESULT STDMETHODCALLTYPE GetCurrentInfo( 5217 LPFOLDERSETTINGS pfs) = 0; 5218 5219 virtual HRESULT STDMETHODCALLTYPE AddPropertySheetPages( 5220 DWORD dwReserved, 5221 LPFNSVADDPROPSHEETPAGE pfn, 5222 LPARAM lparam) = 0; 5223 5224 virtual HRESULT STDMETHODCALLTYPE SaveViewState( 5225 ) = 0; 5226 5227 virtual HRESULT STDMETHODCALLTYPE SelectItem( 5228 PCUITEMID_CHILD pidlItem, 5229 SVSIF uFlags) = 0; 5230 5231 virtual HRESULT STDMETHODCALLTYPE GetItemObject( 5232 UINT uItem, 5233 REFIID riid, 5234 void **ppv) = 0; 5235 5236 }; 5237 #ifdef __CRT_UUID_DECL 5238 __CRT_UUID_DECL(IShellView, 0x000214e3, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 5239 #endif 5240 #else 5241 typedef struct IShellViewVtbl { 5242 BEGIN_INTERFACE 5243 5244 /*** IUnknown methods ***/ 5245 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5246 IShellView* This, 5247 REFIID riid, 5248 void **ppvObject); 5249 5250 ULONG (STDMETHODCALLTYPE *AddRef)( 5251 IShellView* This); 5252 5253 ULONG (STDMETHODCALLTYPE *Release)( 5254 IShellView* This); 5255 5256 /*** IOleWindow methods ***/ 5257 HRESULT (STDMETHODCALLTYPE *GetWindow)( 5258 IShellView* This, 5259 HWND *phwnd); 5260 5261 HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( 5262 IShellView* This, 5263 WINBOOL fEnterMode); 5264 5265 /*** IShellView methods ***/ 5266 HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( 5267 IShellView* This, 5268 MSG *pmsg); 5269 5270 HRESULT (STDMETHODCALLTYPE *EnableModeless)( 5271 IShellView* This, 5272 WINBOOL fEnable); 5273 5274 HRESULT (STDMETHODCALLTYPE *UIActivate)( 5275 IShellView* This, 5276 UINT uState); 5277 5278 HRESULT (STDMETHODCALLTYPE *Refresh)( 5279 IShellView* This); 5280 5281 HRESULT (STDMETHODCALLTYPE *CreateViewWindow)( 5282 IShellView* This, 5283 IShellView *psvPrevious, 5284 LPCFOLDERSETTINGS pfs, 5285 IShellBrowser *psb, 5286 RECT *prcView, 5287 HWND *phWnd); 5288 5289 HRESULT (STDMETHODCALLTYPE *DestroyViewWindow)( 5290 IShellView* This); 5291 5292 HRESULT (STDMETHODCALLTYPE *GetCurrentInfo)( 5293 IShellView* This, 5294 LPFOLDERSETTINGS pfs); 5295 5296 HRESULT (STDMETHODCALLTYPE *AddPropertySheetPages)( 5297 IShellView* This, 5298 DWORD dwReserved, 5299 LPFNSVADDPROPSHEETPAGE pfn, 5300 LPARAM lparam); 5301 5302 HRESULT (STDMETHODCALLTYPE *SaveViewState)( 5303 IShellView* This); 5304 5305 HRESULT (STDMETHODCALLTYPE *SelectItem)( 5306 IShellView* This, 5307 PCUITEMID_CHILD pidlItem, 5308 SVSIF uFlags); 5309 5310 HRESULT (STDMETHODCALLTYPE *GetItemObject)( 5311 IShellView* This, 5312 UINT uItem, 5313 REFIID riid, 5314 void **ppv); 5315 5316 END_INTERFACE 5317 } IShellViewVtbl; 5318 interface IShellView { 5319 CONST_VTBL IShellViewVtbl* lpVtbl; 5320 }; 5321 5322 #ifdef COBJMACROS 5323 #ifndef WIDL_C_INLINE_WRAPPERS 5324 /*** IUnknown methods ***/ 5325 #define IShellView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5326 #define IShellView_AddRef(This) (This)->lpVtbl->AddRef(This) 5327 #define IShellView_Release(This) (This)->lpVtbl->Release(This) 5328 /*** IOleWindow methods ***/ 5329 #define IShellView_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) 5330 #define IShellView_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) 5331 /*** IShellView methods ***/ 5332 #define IShellView_TranslateAccelerator(This,pmsg) (This)->lpVtbl->TranslateAccelerator(This,pmsg) 5333 #define IShellView_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable) 5334 #define IShellView_UIActivate(This,uState) (This)->lpVtbl->UIActivate(This,uState) 5335 #define IShellView_Refresh(This) (This)->lpVtbl->Refresh(This) 5336 #define IShellView_CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd) (This)->lpVtbl->CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd) 5337 #define IShellView_DestroyViewWindow(This) (This)->lpVtbl->DestroyViewWindow(This) 5338 #define IShellView_GetCurrentInfo(This,pfs) (This)->lpVtbl->GetCurrentInfo(This,pfs) 5339 #define IShellView_AddPropertySheetPages(This,dwReserved,pfn,lparam) (This)->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam) 5340 #define IShellView_SaveViewState(This) (This)->lpVtbl->SaveViewState(This) 5341 #define IShellView_SelectItem(This,pidlItem,uFlags) (This)->lpVtbl->SelectItem(This,pidlItem,uFlags) 5342 #define IShellView_GetItemObject(This,uItem,riid,ppv) (This)->lpVtbl->GetItemObject(This,uItem,riid,ppv) 5343 #else 5344 /*** IUnknown methods ***/ 5345 static FORCEINLINE HRESULT IShellView_QueryInterface(IShellView* This,REFIID riid,void **ppvObject) { 5346 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5347 } 5348 static FORCEINLINE ULONG IShellView_AddRef(IShellView* This) { 5349 return This->lpVtbl->AddRef(This); 5350 } 5351 static FORCEINLINE ULONG IShellView_Release(IShellView* This) { 5352 return This->lpVtbl->Release(This); 5353 } 5354 /*** IOleWindow methods ***/ 5355 static FORCEINLINE HRESULT IShellView_GetWindow(IShellView* This,HWND *phwnd) { 5356 return This->lpVtbl->GetWindow(This,phwnd); 5357 } 5358 static FORCEINLINE HRESULT IShellView_ContextSensitiveHelp(IShellView* This,WINBOOL fEnterMode) { 5359 return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); 5360 } 5361 /*** IShellView methods ***/ 5362 static FORCEINLINE HRESULT IShellView_TranslateAccelerator(IShellView* This,MSG *pmsg) { 5363 return This->lpVtbl->TranslateAccelerator(This,pmsg); 5364 } 5365 static FORCEINLINE HRESULT IShellView_EnableModeless(IShellView* This,WINBOOL fEnable) { 5366 return This->lpVtbl->EnableModeless(This,fEnable); 5367 } 5368 static FORCEINLINE HRESULT IShellView_UIActivate(IShellView* This,UINT uState) { 5369 return This->lpVtbl->UIActivate(This,uState); 5370 } 5371 static FORCEINLINE HRESULT IShellView_Refresh(IShellView* This) { 5372 return This->lpVtbl->Refresh(This); 5373 } 5374 static FORCEINLINE HRESULT IShellView_CreateViewWindow(IShellView* This,IShellView *psvPrevious,LPCFOLDERSETTINGS pfs,IShellBrowser *psb,RECT *prcView,HWND *phWnd) { 5375 return This->lpVtbl->CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd); 5376 } 5377 static FORCEINLINE HRESULT IShellView_DestroyViewWindow(IShellView* This) { 5378 return This->lpVtbl->DestroyViewWindow(This); 5379 } 5380 static FORCEINLINE HRESULT IShellView_GetCurrentInfo(IShellView* This,LPFOLDERSETTINGS pfs) { 5381 return This->lpVtbl->GetCurrentInfo(This,pfs); 5382 } 5383 static FORCEINLINE HRESULT IShellView_AddPropertySheetPages(IShellView* This,DWORD dwReserved,LPFNSVADDPROPSHEETPAGE pfn,LPARAM lparam) { 5384 return This->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam); 5385 } 5386 static FORCEINLINE HRESULT IShellView_SaveViewState(IShellView* This) { 5387 return This->lpVtbl->SaveViewState(This); 5388 } 5389 static FORCEINLINE HRESULT IShellView_SelectItem(IShellView* This,PCUITEMID_CHILD pidlItem,SVSIF uFlags) { 5390 return This->lpVtbl->SelectItem(This,pidlItem,uFlags); 5391 } 5392 static FORCEINLINE HRESULT IShellView_GetItemObject(IShellView* This,UINT uItem,REFIID riid,void **ppv) { 5393 return This->lpVtbl->GetItemObject(This,uItem,riid,ppv); 5394 } 5395 #endif 5396 #endif 5397 5398 #endif 5399 5400 HRESULT STDMETHODCALLTYPE IShellView_TranslateAccelerator_Proxy( 5401 IShellView* This, 5402 MSG *pmsg); 5403 void __RPC_STUB IShellView_TranslateAccelerator_Stub( 5404 IRpcStubBuffer* This, 5405 IRpcChannelBuffer* pRpcChannelBuffer, 5406 PRPC_MESSAGE pRpcMessage, 5407 DWORD* pdwStubPhase); 5408 HRESULT STDMETHODCALLTYPE IShellView_EnableModeless_Proxy( 5409 IShellView* This, 5410 WINBOOL fEnable); 5411 void __RPC_STUB IShellView_EnableModeless_Stub( 5412 IRpcStubBuffer* This, 5413 IRpcChannelBuffer* pRpcChannelBuffer, 5414 PRPC_MESSAGE pRpcMessage, 5415 DWORD* pdwStubPhase); 5416 HRESULT STDMETHODCALLTYPE IShellView_UIActivate_Proxy( 5417 IShellView* This, 5418 UINT uState); 5419 void __RPC_STUB IShellView_UIActivate_Stub( 5420 IRpcStubBuffer* This, 5421 IRpcChannelBuffer* pRpcChannelBuffer, 5422 PRPC_MESSAGE pRpcMessage, 5423 DWORD* pdwStubPhase); 5424 HRESULT STDMETHODCALLTYPE IShellView_Refresh_Proxy( 5425 IShellView* This); 5426 void __RPC_STUB IShellView_Refresh_Stub( 5427 IRpcStubBuffer* This, 5428 IRpcChannelBuffer* pRpcChannelBuffer, 5429 PRPC_MESSAGE pRpcMessage, 5430 DWORD* pdwStubPhase); 5431 HRESULT STDMETHODCALLTYPE IShellView_CreateViewWindow_Proxy( 5432 IShellView* This, 5433 IShellView *psvPrevious, 5434 LPCFOLDERSETTINGS pfs, 5435 IShellBrowser *psb, 5436 RECT *prcView, 5437 HWND *phWnd); 5438 void __RPC_STUB IShellView_CreateViewWindow_Stub( 5439 IRpcStubBuffer* This, 5440 IRpcChannelBuffer* pRpcChannelBuffer, 5441 PRPC_MESSAGE pRpcMessage, 5442 DWORD* pdwStubPhase); 5443 HRESULT STDMETHODCALLTYPE IShellView_DestroyViewWindow_Proxy( 5444 IShellView* This); 5445 void __RPC_STUB IShellView_DestroyViewWindow_Stub( 5446 IRpcStubBuffer* This, 5447 IRpcChannelBuffer* pRpcChannelBuffer, 5448 PRPC_MESSAGE pRpcMessage, 5449 DWORD* pdwStubPhase); 5450 HRESULT STDMETHODCALLTYPE IShellView_GetCurrentInfo_Proxy( 5451 IShellView* This, 5452 LPFOLDERSETTINGS pfs); 5453 void __RPC_STUB IShellView_GetCurrentInfo_Stub( 5454 IRpcStubBuffer* This, 5455 IRpcChannelBuffer* pRpcChannelBuffer, 5456 PRPC_MESSAGE pRpcMessage, 5457 DWORD* pdwStubPhase); 5458 HRESULT STDMETHODCALLTYPE IShellView_SaveViewState_Proxy( 5459 IShellView* This); 5460 void __RPC_STUB IShellView_SaveViewState_Stub( 5461 IRpcStubBuffer* This, 5462 IRpcChannelBuffer* pRpcChannelBuffer, 5463 PRPC_MESSAGE pRpcMessage, 5464 DWORD* pdwStubPhase); 5465 HRESULT STDMETHODCALLTYPE IShellView_SelectItem_Proxy( 5466 IShellView* This, 5467 PCUITEMID_CHILD pidlItem, 5468 SVSIF uFlags); 5469 void __RPC_STUB IShellView_SelectItem_Stub( 5470 IRpcStubBuffer* This, 5471 IRpcChannelBuffer* pRpcChannelBuffer, 5472 PRPC_MESSAGE pRpcMessage, 5473 DWORD* pdwStubPhase); 5474 HRESULT STDMETHODCALLTYPE IShellView_GetItemObject_Proxy( 5475 IShellView* This, 5476 UINT uItem, 5477 REFIID riid, 5478 void **ppv); 5479 void __RPC_STUB IShellView_GetItemObject_Stub( 5480 IRpcStubBuffer* This, 5481 IRpcChannelBuffer* pRpcChannelBuffer, 5482 PRPC_MESSAGE pRpcMessage, 5483 DWORD* pdwStubPhase); 5484 5485 #endif /* __IShellView_INTERFACE_DEFINED__ */ 5486 5487 typedef IShellView *LPSHELLVIEW; 5488 5489 /***************************************************************************** 5490 * IShellView2 interface 5491 */ 5492 #ifndef __IShellView2_INTERFACE_DEFINED__ 5493 #define __IShellView2_INTERFACE_DEFINED__ 5494 5495 typedef GUID SHELLVIEWID; 5496 5497 #define SV2GV_CURRENTVIEW ((UINT)-1) 5498 #define SV2GV_DEFAULTVIEW ((UINT)-2) 5499 5500 #include <pshpack8.h> 5501 typedef struct _SV2CVW2_PARAMS { 5502 DWORD cbSize; 5503 IShellView *psvPrev; 5504 LPCFOLDERSETTINGS pfs; 5505 IShellBrowser *psbOwner; 5506 RECT *prcView; 5507 const SHELLVIEWID *pvid; 5508 HWND hwndView; 5509 } SV2CVW2_PARAMS; 5510 typedef struct _SV2CVW2_PARAMS *LPSV2CVW2_PARAMS; 5511 #include <poppack.h> 5512 5513 DEFINE_GUID(IID_IShellView2, 0x88e39e80, 0x3578, 0x11cf, 0xae,0x69, 0x08,0x00,0x2b,0x2e,0x12,0x62); 5514 #if defined(__cplusplus) && !defined(CINTERFACE) 5515 MIDL_INTERFACE("88e39e80-3578-11cf-ae69-08002b2e1262") 5516 IShellView2 : public IShellView 5517 { 5518 virtual HRESULT STDMETHODCALLTYPE GetView( 5519 SHELLVIEWID *pvid, 5520 ULONG uView) = 0; 5521 5522 virtual HRESULT STDMETHODCALLTYPE CreateViewWindow2( 5523 LPSV2CVW2_PARAMS lpParams) = 0; 5524 5525 virtual HRESULT STDMETHODCALLTYPE HandleRename( 5526 PCUITEMID_CHILD pidlNew) = 0; 5527 5528 virtual HRESULT STDMETHODCALLTYPE SelectAndPositionItem( 5529 PCUITEMID_CHILD pidlItem, 5530 UINT uFlags, 5531 POINT *ppt) = 0; 5532 5533 }; 5534 #ifdef __CRT_UUID_DECL 5535 __CRT_UUID_DECL(IShellView2, 0x88e39e80, 0x3578, 0x11cf, 0xae,0x69, 0x08,0x00,0x2b,0x2e,0x12,0x62) 5536 #endif 5537 #else 5538 typedef struct IShellView2Vtbl { 5539 BEGIN_INTERFACE 5540 5541 /*** IUnknown methods ***/ 5542 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5543 IShellView2* This, 5544 REFIID riid, 5545 void **ppvObject); 5546 5547 ULONG (STDMETHODCALLTYPE *AddRef)( 5548 IShellView2* This); 5549 5550 ULONG (STDMETHODCALLTYPE *Release)( 5551 IShellView2* This); 5552 5553 /*** IOleWindow methods ***/ 5554 HRESULT (STDMETHODCALLTYPE *GetWindow)( 5555 IShellView2* This, 5556 HWND *phwnd); 5557 5558 HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( 5559 IShellView2* This, 5560 WINBOOL fEnterMode); 5561 5562 /*** IShellView methods ***/ 5563 HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( 5564 IShellView2* This, 5565 MSG *pmsg); 5566 5567 HRESULT (STDMETHODCALLTYPE *EnableModeless)( 5568 IShellView2* This, 5569 WINBOOL fEnable); 5570 5571 HRESULT (STDMETHODCALLTYPE *UIActivate)( 5572 IShellView2* This, 5573 UINT uState); 5574 5575 HRESULT (STDMETHODCALLTYPE *Refresh)( 5576 IShellView2* This); 5577 5578 HRESULT (STDMETHODCALLTYPE *CreateViewWindow)( 5579 IShellView2* This, 5580 IShellView *psvPrevious, 5581 LPCFOLDERSETTINGS pfs, 5582 IShellBrowser *psb, 5583 RECT *prcView, 5584 HWND *phWnd); 5585 5586 HRESULT (STDMETHODCALLTYPE *DestroyViewWindow)( 5587 IShellView2* This); 5588 5589 HRESULT (STDMETHODCALLTYPE *GetCurrentInfo)( 5590 IShellView2* This, 5591 LPFOLDERSETTINGS pfs); 5592 5593 HRESULT (STDMETHODCALLTYPE *AddPropertySheetPages)( 5594 IShellView2* This, 5595 DWORD dwReserved, 5596 LPFNSVADDPROPSHEETPAGE pfn, 5597 LPARAM lparam); 5598 5599 HRESULT (STDMETHODCALLTYPE *SaveViewState)( 5600 IShellView2* This); 5601 5602 HRESULT (STDMETHODCALLTYPE *SelectItem)( 5603 IShellView2* This, 5604 PCUITEMID_CHILD pidlItem, 5605 SVSIF uFlags); 5606 5607 HRESULT (STDMETHODCALLTYPE *GetItemObject)( 5608 IShellView2* This, 5609 UINT uItem, 5610 REFIID riid, 5611 void **ppv); 5612 5613 /*** IShellView2 methods ***/ 5614 HRESULT (STDMETHODCALLTYPE *GetView)( 5615 IShellView2* This, 5616 SHELLVIEWID *pvid, 5617 ULONG uView); 5618 5619 HRESULT (STDMETHODCALLTYPE *CreateViewWindow2)( 5620 IShellView2* This, 5621 LPSV2CVW2_PARAMS lpParams); 5622 5623 HRESULT (STDMETHODCALLTYPE *HandleRename)( 5624 IShellView2* This, 5625 PCUITEMID_CHILD pidlNew); 5626 5627 HRESULT (STDMETHODCALLTYPE *SelectAndPositionItem)( 5628 IShellView2* This, 5629 PCUITEMID_CHILD pidlItem, 5630 UINT uFlags, 5631 POINT *ppt); 5632 5633 END_INTERFACE 5634 } IShellView2Vtbl; 5635 interface IShellView2 { 5636 CONST_VTBL IShellView2Vtbl* lpVtbl; 5637 }; 5638 5639 #ifdef COBJMACROS 5640 #ifndef WIDL_C_INLINE_WRAPPERS 5641 /*** IUnknown methods ***/ 5642 #define IShellView2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5643 #define IShellView2_AddRef(This) (This)->lpVtbl->AddRef(This) 5644 #define IShellView2_Release(This) (This)->lpVtbl->Release(This) 5645 /*** IOleWindow methods ***/ 5646 #define IShellView2_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) 5647 #define IShellView2_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) 5648 /*** IShellView methods ***/ 5649 #define IShellView2_TranslateAccelerator(This,pmsg) (This)->lpVtbl->TranslateAccelerator(This,pmsg) 5650 #define IShellView2_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable) 5651 #define IShellView2_UIActivate(This,uState) (This)->lpVtbl->UIActivate(This,uState) 5652 #define IShellView2_Refresh(This) (This)->lpVtbl->Refresh(This) 5653 #define IShellView2_CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd) (This)->lpVtbl->CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd) 5654 #define IShellView2_DestroyViewWindow(This) (This)->lpVtbl->DestroyViewWindow(This) 5655 #define IShellView2_GetCurrentInfo(This,pfs) (This)->lpVtbl->GetCurrentInfo(This,pfs) 5656 #define IShellView2_AddPropertySheetPages(This,dwReserved,pfn,lparam) (This)->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam) 5657 #define IShellView2_SaveViewState(This) (This)->lpVtbl->SaveViewState(This) 5658 #define IShellView2_SelectItem(This,pidlItem,uFlags) (This)->lpVtbl->SelectItem(This,pidlItem,uFlags) 5659 #define IShellView2_GetItemObject(This,uItem,riid,ppv) (This)->lpVtbl->GetItemObject(This,uItem,riid,ppv) 5660 /*** IShellView2 methods ***/ 5661 #define IShellView2_GetView(This,pvid,uView) (This)->lpVtbl->GetView(This,pvid,uView) 5662 #define IShellView2_CreateViewWindow2(This,lpParams) (This)->lpVtbl->CreateViewWindow2(This,lpParams) 5663 #define IShellView2_HandleRename(This,pidlNew) (This)->lpVtbl->HandleRename(This,pidlNew) 5664 #define IShellView2_SelectAndPositionItem(This,pidlItem,uFlags,ppt) (This)->lpVtbl->SelectAndPositionItem(This,pidlItem,uFlags,ppt) 5665 #else 5666 /*** IUnknown methods ***/ 5667 static FORCEINLINE HRESULT IShellView2_QueryInterface(IShellView2* This,REFIID riid,void **ppvObject) { 5668 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5669 } 5670 static FORCEINLINE ULONG IShellView2_AddRef(IShellView2* This) { 5671 return This->lpVtbl->AddRef(This); 5672 } 5673 static FORCEINLINE ULONG IShellView2_Release(IShellView2* This) { 5674 return This->lpVtbl->Release(This); 5675 } 5676 /*** IOleWindow methods ***/ 5677 static FORCEINLINE HRESULT IShellView2_GetWindow(IShellView2* This,HWND *phwnd) { 5678 return This->lpVtbl->GetWindow(This,phwnd); 5679 } 5680 static FORCEINLINE HRESULT IShellView2_ContextSensitiveHelp(IShellView2* This,WINBOOL fEnterMode) { 5681 return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); 5682 } 5683 /*** IShellView methods ***/ 5684 static FORCEINLINE HRESULT IShellView2_TranslateAccelerator(IShellView2* This,MSG *pmsg) { 5685 return This->lpVtbl->TranslateAccelerator(This,pmsg); 5686 } 5687 static FORCEINLINE HRESULT IShellView2_EnableModeless(IShellView2* This,WINBOOL fEnable) { 5688 return This->lpVtbl->EnableModeless(This,fEnable); 5689 } 5690 static FORCEINLINE HRESULT IShellView2_UIActivate(IShellView2* This,UINT uState) { 5691 return This->lpVtbl->UIActivate(This,uState); 5692 } 5693 static FORCEINLINE HRESULT IShellView2_Refresh(IShellView2* This) { 5694 return This->lpVtbl->Refresh(This); 5695 } 5696 static FORCEINLINE HRESULT IShellView2_CreateViewWindow(IShellView2* This,IShellView *psvPrevious,LPCFOLDERSETTINGS pfs,IShellBrowser *psb,RECT *prcView,HWND *phWnd) { 5697 return This->lpVtbl->CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd); 5698 } 5699 static FORCEINLINE HRESULT IShellView2_DestroyViewWindow(IShellView2* This) { 5700 return This->lpVtbl->DestroyViewWindow(This); 5701 } 5702 static FORCEINLINE HRESULT IShellView2_GetCurrentInfo(IShellView2* This,LPFOLDERSETTINGS pfs) { 5703 return This->lpVtbl->GetCurrentInfo(This,pfs); 5704 } 5705 static FORCEINLINE HRESULT IShellView2_AddPropertySheetPages(IShellView2* This,DWORD dwReserved,LPFNSVADDPROPSHEETPAGE pfn,LPARAM lparam) { 5706 return This->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam); 5707 } 5708 static FORCEINLINE HRESULT IShellView2_SaveViewState(IShellView2* This) { 5709 return This->lpVtbl->SaveViewState(This); 5710 } 5711 static FORCEINLINE HRESULT IShellView2_SelectItem(IShellView2* This,PCUITEMID_CHILD pidlItem,SVSIF uFlags) { 5712 return This->lpVtbl->SelectItem(This,pidlItem,uFlags); 5713 } 5714 static FORCEINLINE HRESULT IShellView2_GetItemObject(IShellView2* This,UINT uItem,REFIID riid,void **ppv) { 5715 return This->lpVtbl->GetItemObject(This,uItem,riid,ppv); 5716 } 5717 /*** IShellView2 methods ***/ 5718 static FORCEINLINE HRESULT IShellView2_GetView(IShellView2* This,SHELLVIEWID *pvid,ULONG uView) { 5719 return This->lpVtbl->GetView(This,pvid,uView); 5720 } 5721 static FORCEINLINE HRESULT IShellView2_CreateViewWindow2(IShellView2* This,LPSV2CVW2_PARAMS lpParams) { 5722 return This->lpVtbl->CreateViewWindow2(This,lpParams); 5723 } 5724 static FORCEINLINE HRESULT IShellView2_HandleRename(IShellView2* This,PCUITEMID_CHILD pidlNew) { 5725 return This->lpVtbl->HandleRename(This,pidlNew); 5726 } 5727 static FORCEINLINE HRESULT IShellView2_SelectAndPositionItem(IShellView2* This,PCUITEMID_CHILD pidlItem,UINT uFlags,POINT *ppt) { 5728 return This->lpVtbl->SelectAndPositionItem(This,pidlItem,uFlags,ppt); 5729 } 5730 #endif 5731 #endif 5732 5733 #endif 5734 5735 HRESULT STDMETHODCALLTYPE IShellView2_GetView_Proxy( 5736 IShellView2* This, 5737 SHELLVIEWID *pvid, 5738 ULONG uView); 5739 void __RPC_STUB IShellView2_GetView_Stub( 5740 IRpcStubBuffer* This, 5741 IRpcChannelBuffer* pRpcChannelBuffer, 5742 PRPC_MESSAGE pRpcMessage, 5743 DWORD* pdwStubPhase); 5744 HRESULT STDMETHODCALLTYPE IShellView2_CreateViewWindow2_Proxy( 5745 IShellView2* This, 5746 LPSV2CVW2_PARAMS lpParams); 5747 void __RPC_STUB IShellView2_CreateViewWindow2_Stub( 5748 IRpcStubBuffer* This, 5749 IRpcChannelBuffer* pRpcChannelBuffer, 5750 PRPC_MESSAGE pRpcMessage, 5751 DWORD* pdwStubPhase); 5752 HRESULT STDMETHODCALLTYPE IShellView2_HandleRename_Proxy( 5753 IShellView2* This, 5754 PCUITEMID_CHILD pidlNew); 5755 void __RPC_STUB IShellView2_HandleRename_Stub( 5756 IRpcStubBuffer* This, 5757 IRpcChannelBuffer* pRpcChannelBuffer, 5758 PRPC_MESSAGE pRpcMessage, 5759 DWORD* pdwStubPhase); 5760 HRESULT STDMETHODCALLTYPE IShellView2_SelectAndPositionItem_Proxy( 5761 IShellView2* This, 5762 PCUITEMID_CHILD pidlItem, 5763 UINT uFlags, 5764 POINT *ppt); 5765 void __RPC_STUB IShellView2_SelectAndPositionItem_Stub( 5766 IRpcStubBuffer* This, 5767 IRpcChannelBuffer* pRpcChannelBuffer, 5768 PRPC_MESSAGE pRpcMessage, 5769 DWORD* pdwStubPhase); 5770 5771 #endif /* __IShellView2_INTERFACE_DEFINED__ */ 5772 5773 5774 #if NTDDI_VERSION >= NTDDI_VISTA 5775 /***************************************************************************** 5776 * IShellView3 interface 5777 */ 5778 #ifndef __IShellView3_INTERFACE_DEFINED__ 5779 #define __IShellView3_INTERFACE_DEFINED__ 5780 5781 enum _SV3CVW3_FLAGS { 5782 SV3CVW3_DEFAULT = 0x0, 5783 SV3CVW3_NONINTERACTIVE = 0x1, 5784 SV3CVW3_FORCEVIEWMODE = 0x2, 5785 SV3CVW3_FORCEFOLDERFLAGS = 0x4 5786 }; 5787 5788 5789 typedef DWORD SV3CVW3_FLAGS; 5790 5791 DEFINE_GUID(IID_IShellView3, 0xec39fa88, 0xf8af, 0x41c5, 0x84,0x21, 0x38,0xbe,0xd2,0x8f,0x46,0x73); 5792 #if defined(__cplusplus) && !defined(CINTERFACE) 5793 MIDL_INTERFACE("ec39fa88-f8af-41c5-8421-38bed28f4673") 5794 IShellView3 : public IShellView2 5795 { 5796 virtual HRESULT STDMETHODCALLTYPE CreateViewWindow3( 5797 IShellBrowser *psbOwner, 5798 IShellView *psvPrev, 5799 SV3CVW3_FLAGS dwViewFlags, 5800 FOLDERFLAGS dwMask, 5801 FOLDERFLAGS dwFlags, 5802 FOLDERVIEWMODE fvMode, 5803 const SHELLVIEWID *pvid, 5804 const RECT *prcView, 5805 HWND *phwndView) = 0; 5806 5807 }; 5808 #ifdef __CRT_UUID_DECL 5809 __CRT_UUID_DECL(IShellView3, 0xec39fa88, 0xf8af, 0x41c5, 0x84,0x21, 0x38,0xbe,0xd2,0x8f,0x46,0x73) 5810 #endif 5811 #else 5812 typedef struct IShellView3Vtbl { 5813 BEGIN_INTERFACE 5814 5815 /*** IUnknown methods ***/ 5816 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 5817 IShellView3* This, 5818 REFIID riid, 5819 void **ppvObject); 5820 5821 ULONG (STDMETHODCALLTYPE *AddRef)( 5822 IShellView3* This); 5823 5824 ULONG (STDMETHODCALLTYPE *Release)( 5825 IShellView3* This); 5826 5827 /*** IOleWindow methods ***/ 5828 HRESULT (STDMETHODCALLTYPE *GetWindow)( 5829 IShellView3* This, 5830 HWND *phwnd); 5831 5832 HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( 5833 IShellView3* This, 5834 WINBOOL fEnterMode); 5835 5836 /*** IShellView methods ***/ 5837 HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( 5838 IShellView3* This, 5839 MSG *pmsg); 5840 5841 HRESULT (STDMETHODCALLTYPE *EnableModeless)( 5842 IShellView3* This, 5843 WINBOOL fEnable); 5844 5845 HRESULT (STDMETHODCALLTYPE *UIActivate)( 5846 IShellView3* This, 5847 UINT uState); 5848 5849 HRESULT (STDMETHODCALLTYPE *Refresh)( 5850 IShellView3* This); 5851 5852 HRESULT (STDMETHODCALLTYPE *CreateViewWindow)( 5853 IShellView3* This, 5854 IShellView *psvPrevious, 5855 LPCFOLDERSETTINGS pfs, 5856 IShellBrowser *psb, 5857 RECT *prcView, 5858 HWND *phWnd); 5859 5860 HRESULT (STDMETHODCALLTYPE *DestroyViewWindow)( 5861 IShellView3* This); 5862 5863 HRESULT (STDMETHODCALLTYPE *GetCurrentInfo)( 5864 IShellView3* This, 5865 LPFOLDERSETTINGS pfs); 5866 5867 HRESULT (STDMETHODCALLTYPE *AddPropertySheetPages)( 5868 IShellView3* This, 5869 DWORD dwReserved, 5870 LPFNSVADDPROPSHEETPAGE pfn, 5871 LPARAM lparam); 5872 5873 HRESULT (STDMETHODCALLTYPE *SaveViewState)( 5874 IShellView3* This); 5875 5876 HRESULT (STDMETHODCALLTYPE *SelectItem)( 5877 IShellView3* This, 5878 PCUITEMID_CHILD pidlItem, 5879 SVSIF uFlags); 5880 5881 HRESULT (STDMETHODCALLTYPE *GetItemObject)( 5882 IShellView3* This, 5883 UINT uItem, 5884 REFIID riid, 5885 void **ppv); 5886 5887 /*** IShellView2 methods ***/ 5888 HRESULT (STDMETHODCALLTYPE *GetView)( 5889 IShellView3* This, 5890 SHELLVIEWID *pvid, 5891 ULONG uView); 5892 5893 HRESULT (STDMETHODCALLTYPE *CreateViewWindow2)( 5894 IShellView3* This, 5895 LPSV2CVW2_PARAMS lpParams); 5896 5897 HRESULT (STDMETHODCALLTYPE *HandleRename)( 5898 IShellView3* This, 5899 PCUITEMID_CHILD pidlNew); 5900 5901 HRESULT (STDMETHODCALLTYPE *SelectAndPositionItem)( 5902 IShellView3* This, 5903 PCUITEMID_CHILD pidlItem, 5904 UINT uFlags, 5905 POINT *ppt); 5906 5907 /*** IShellView3 methods ***/ 5908 HRESULT (STDMETHODCALLTYPE *CreateViewWindow3)( 5909 IShellView3* This, 5910 IShellBrowser *psbOwner, 5911 IShellView *psvPrev, 5912 SV3CVW3_FLAGS dwViewFlags, 5913 FOLDERFLAGS dwMask, 5914 FOLDERFLAGS dwFlags, 5915 FOLDERVIEWMODE fvMode, 5916 const SHELLVIEWID *pvid, 5917 const RECT *prcView, 5918 HWND *phwndView); 5919 5920 END_INTERFACE 5921 } IShellView3Vtbl; 5922 interface IShellView3 { 5923 CONST_VTBL IShellView3Vtbl* lpVtbl; 5924 }; 5925 5926 #ifdef COBJMACROS 5927 #ifndef WIDL_C_INLINE_WRAPPERS 5928 /*** IUnknown methods ***/ 5929 #define IShellView3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 5930 #define IShellView3_AddRef(This) (This)->lpVtbl->AddRef(This) 5931 #define IShellView3_Release(This) (This)->lpVtbl->Release(This) 5932 /*** IOleWindow methods ***/ 5933 #define IShellView3_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) 5934 #define IShellView3_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) 5935 /*** IShellView methods ***/ 5936 #define IShellView3_TranslateAccelerator(This,pmsg) (This)->lpVtbl->TranslateAccelerator(This,pmsg) 5937 #define IShellView3_EnableModeless(This,fEnable) (This)->lpVtbl->EnableModeless(This,fEnable) 5938 #define IShellView3_UIActivate(This,uState) (This)->lpVtbl->UIActivate(This,uState) 5939 #define IShellView3_Refresh(This) (This)->lpVtbl->Refresh(This) 5940 #define IShellView3_CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd) (This)->lpVtbl->CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd) 5941 #define IShellView3_DestroyViewWindow(This) (This)->lpVtbl->DestroyViewWindow(This) 5942 #define IShellView3_GetCurrentInfo(This,pfs) (This)->lpVtbl->GetCurrentInfo(This,pfs) 5943 #define IShellView3_AddPropertySheetPages(This,dwReserved,pfn,lparam) (This)->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam) 5944 #define IShellView3_SaveViewState(This) (This)->lpVtbl->SaveViewState(This) 5945 #define IShellView3_SelectItem(This,pidlItem,uFlags) (This)->lpVtbl->SelectItem(This,pidlItem,uFlags) 5946 #define IShellView3_GetItemObject(This,uItem,riid,ppv) (This)->lpVtbl->GetItemObject(This,uItem,riid,ppv) 5947 /*** IShellView2 methods ***/ 5948 #define IShellView3_GetView(This,pvid,uView) (This)->lpVtbl->GetView(This,pvid,uView) 5949 #define IShellView3_CreateViewWindow2(This,lpParams) (This)->lpVtbl->CreateViewWindow2(This,lpParams) 5950 #define IShellView3_HandleRename(This,pidlNew) (This)->lpVtbl->HandleRename(This,pidlNew) 5951 #define IShellView3_SelectAndPositionItem(This,pidlItem,uFlags,ppt) (This)->lpVtbl->SelectAndPositionItem(This,pidlItem,uFlags,ppt) 5952 /*** IShellView3 methods ***/ 5953 #define IShellView3_CreateViewWindow3(This,psbOwner,psvPrev,dwViewFlags,dwMask,dwFlags,fvMode,pvid,prcView,phwndView) (This)->lpVtbl->CreateViewWindow3(This,psbOwner,psvPrev,dwViewFlags,dwMask,dwFlags,fvMode,pvid,prcView,phwndView) 5954 #else 5955 /*** IUnknown methods ***/ 5956 static FORCEINLINE HRESULT IShellView3_QueryInterface(IShellView3* This,REFIID riid,void **ppvObject) { 5957 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 5958 } 5959 static FORCEINLINE ULONG IShellView3_AddRef(IShellView3* This) { 5960 return This->lpVtbl->AddRef(This); 5961 } 5962 static FORCEINLINE ULONG IShellView3_Release(IShellView3* This) { 5963 return This->lpVtbl->Release(This); 5964 } 5965 /*** IOleWindow methods ***/ 5966 static FORCEINLINE HRESULT IShellView3_GetWindow(IShellView3* This,HWND *phwnd) { 5967 return This->lpVtbl->GetWindow(This,phwnd); 5968 } 5969 static FORCEINLINE HRESULT IShellView3_ContextSensitiveHelp(IShellView3* This,WINBOOL fEnterMode) { 5970 return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); 5971 } 5972 /*** IShellView methods ***/ 5973 static FORCEINLINE HRESULT IShellView3_TranslateAccelerator(IShellView3* This,MSG *pmsg) { 5974 return This->lpVtbl->TranslateAccelerator(This,pmsg); 5975 } 5976 static FORCEINLINE HRESULT IShellView3_EnableModeless(IShellView3* This,WINBOOL fEnable) { 5977 return This->lpVtbl->EnableModeless(This,fEnable); 5978 } 5979 static FORCEINLINE HRESULT IShellView3_UIActivate(IShellView3* This,UINT uState) { 5980 return This->lpVtbl->UIActivate(This,uState); 5981 } 5982 static FORCEINLINE HRESULT IShellView3_Refresh(IShellView3* This) { 5983 return This->lpVtbl->Refresh(This); 5984 } 5985 static FORCEINLINE HRESULT IShellView3_CreateViewWindow(IShellView3* This,IShellView *psvPrevious,LPCFOLDERSETTINGS pfs,IShellBrowser *psb,RECT *prcView,HWND *phWnd) { 5986 return This->lpVtbl->CreateViewWindow(This,psvPrevious,pfs,psb,prcView,phWnd); 5987 } 5988 static FORCEINLINE HRESULT IShellView3_DestroyViewWindow(IShellView3* This) { 5989 return This->lpVtbl->DestroyViewWindow(This); 5990 } 5991 static FORCEINLINE HRESULT IShellView3_GetCurrentInfo(IShellView3* This,LPFOLDERSETTINGS pfs) { 5992 return This->lpVtbl->GetCurrentInfo(This,pfs); 5993 } 5994 static FORCEINLINE HRESULT IShellView3_AddPropertySheetPages(IShellView3* This,DWORD dwReserved,LPFNSVADDPROPSHEETPAGE pfn,LPARAM lparam) { 5995 return This->lpVtbl->AddPropertySheetPages(This,dwReserved,pfn,lparam); 5996 } 5997 static FORCEINLINE HRESULT IShellView3_SaveViewState(IShellView3* This) { 5998 return This->lpVtbl->SaveViewState(This); 5999 } 6000 static FORCEINLINE HRESULT IShellView3_SelectItem(IShellView3* This,PCUITEMID_CHILD pidlItem,SVSIF uFlags) { 6001 return This->lpVtbl->SelectItem(This,pidlItem,uFlags); 6002 } 6003 static FORCEINLINE HRESULT IShellView3_GetItemObject(IShellView3* This,UINT uItem,REFIID riid,void **ppv) { 6004 return This->lpVtbl->GetItemObject(This,uItem,riid,ppv); 6005 } 6006 /*** IShellView2 methods ***/ 6007 static FORCEINLINE HRESULT IShellView3_GetView(IShellView3* This,SHELLVIEWID *pvid,ULONG uView) { 6008 return This->lpVtbl->GetView(This,pvid,uView); 6009 } 6010 static FORCEINLINE HRESULT IShellView3_CreateViewWindow2(IShellView3* This,LPSV2CVW2_PARAMS lpParams) { 6011 return This->lpVtbl->CreateViewWindow2(This,lpParams); 6012 } 6013 static FORCEINLINE HRESULT IShellView3_HandleRename(IShellView3* This,PCUITEMID_CHILD pidlNew) { 6014 return This->lpVtbl->HandleRename(This,pidlNew); 6015 } 6016 static FORCEINLINE HRESULT IShellView3_SelectAndPositionItem(IShellView3* This,PCUITEMID_CHILD pidlItem,UINT uFlags,POINT *ppt) { 6017 return This->lpVtbl->SelectAndPositionItem(This,pidlItem,uFlags,ppt); 6018 } 6019 /*** IShellView3 methods ***/ 6020 static FORCEINLINE HRESULT IShellView3_CreateViewWindow3(IShellView3* This,IShellBrowser *psbOwner,IShellView *psvPrev,SV3CVW3_FLAGS dwViewFlags,FOLDERFLAGS dwMask,FOLDERFLAGS dwFlags,FOLDERVIEWMODE fvMode,const SHELLVIEWID *pvid,const RECT *prcView,HWND *phwndView) { 6021 return This->lpVtbl->CreateViewWindow3(This,psbOwner,psvPrev,dwViewFlags,dwMask,dwFlags,fvMode,pvid,prcView,phwndView); 6022 } 6023 #endif 6024 #endif 6025 6026 #endif 6027 6028 HRESULT STDMETHODCALLTYPE IShellView3_CreateViewWindow3_Proxy( 6029 IShellView3* This, 6030 IShellBrowser *psbOwner, 6031 IShellView *psvPrev, 6032 SV3CVW3_FLAGS dwViewFlags, 6033 FOLDERFLAGS dwMask, 6034 FOLDERFLAGS dwFlags, 6035 FOLDERVIEWMODE fvMode, 6036 const SHELLVIEWID *pvid, 6037 const RECT *prcView, 6038 HWND *phwndView); 6039 void __RPC_STUB IShellView3_CreateViewWindow3_Stub( 6040 IRpcStubBuffer* This, 6041 IRpcChannelBuffer* pRpcChannelBuffer, 6042 PRPC_MESSAGE pRpcMessage, 6043 DWORD* pdwStubPhase); 6044 6045 #endif /* __IShellView3_INTERFACE_DEFINED__ */ 6046 6047 #endif 6048 #ifdef _FIX_ENABLEMODELESS_CONFLICT 6049 #undef EnableModeless 6050 #endif 6051 6052 /***************************************************************************** 6053 * IFolderView interface 6054 */ 6055 #ifndef __IFolderView_INTERFACE_DEFINED__ 6056 #define __IFolderView_INTERFACE_DEFINED__ 6057 6058 DEFINE_GUID(IID_IFolderView, 0xcde725b0, 0xccc9, 0x4519, 0x91,0x7e, 0x32,0x5d,0x72,0xfa,0xb4,0xce); 6059 #if defined(__cplusplus) && !defined(CINTERFACE) 6060 MIDL_INTERFACE("cde725b0-ccc9-4519-917e-325d72fab4ce") 6061 IFolderView : public IUnknown 6062 { 6063 virtual HRESULT STDMETHODCALLTYPE GetCurrentViewMode( 6064 UINT *pViewMode) = 0; 6065 6066 virtual HRESULT STDMETHODCALLTYPE SetCurrentViewMode( 6067 UINT ViewMode) = 0; 6068 6069 virtual HRESULT STDMETHODCALLTYPE GetFolder( 6070 REFIID riid, 6071 void **ppv) = 0; 6072 6073 virtual HRESULT STDMETHODCALLTYPE Item( 6074 int iItemIndex, 6075 PITEMID_CHILD *ppidl) = 0; 6076 6077 virtual HRESULT STDMETHODCALLTYPE ItemCount( 6078 UINT uFlags, 6079 int *pcItems) = 0; 6080 6081 virtual HRESULT STDMETHODCALLTYPE Items( 6082 UINT uFlags, 6083 REFIID riid, 6084 void **ppv) = 0; 6085 6086 virtual HRESULT STDMETHODCALLTYPE GetSelectionMarkedItem( 6087 int *piItem) = 0; 6088 6089 virtual HRESULT STDMETHODCALLTYPE GetFocusedItem( 6090 int *piItem) = 0; 6091 6092 virtual HRESULT STDMETHODCALLTYPE GetItemPosition( 6093 PCUITEMID_CHILD pidl, 6094 POINT *ppt) = 0; 6095 6096 virtual HRESULT STDMETHODCALLTYPE GetSpacing( 6097 POINT *ppt) = 0; 6098 6099 virtual HRESULT STDMETHODCALLTYPE GetDefaultSpacing( 6100 POINT *ppt) = 0; 6101 6102 virtual HRESULT STDMETHODCALLTYPE GetAutoArrange( 6103 ) = 0; 6104 6105 virtual HRESULT STDMETHODCALLTYPE SelectItem( 6106 int iItem, 6107 DWORD dwFlags) = 0; 6108 6109 virtual HRESULT STDMETHODCALLTYPE SelectAndPositionItems( 6110 UINT cidl, 6111 PCUITEMID_CHILD_ARRAY apidl, 6112 POINT *apt, 6113 DWORD dwFlags) = 0; 6114 6115 }; 6116 #ifdef __CRT_UUID_DECL 6117 __CRT_UUID_DECL(IFolderView, 0xcde725b0, 0xccc9, 0x4519, 0x91,0x7e, 0x32,0x5d,0x72,0xfa,0xb4,0xce) 6118 #endif 6119 #else 6120 typedef struct IFolderViewVtbl { 6121 BEGIN_INTERFACE 6122 6123 /*** IUnknown methods ***/ 6124 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6125 IFolderView* This, 6126 REFIID riid, 6127 void **ppvObject); 6128 6129 ULONG (STDMETHODCALLTYPE *AddRef)( 6130 IFolderView* This); 6131 6132 ULONG (STDMETHODCALLTYPE *Release)( 6133 IFolderView* This); 6134 6135 /*** IFolderView methods ***/ 6136 HRESULT (STDMETHODCALLTYPE *GetCurrentViewMode)( 6137 IFolderView* This, 6138 UINT *pViewMode); 6139 6140 HRESULT (STDMETHODCALLTYPE *SetCurrentViewMode)( 6141 IFolderView* This, 6142 UINT ViewMode); 6143 6144 HRESULT (STDMETHODCALLTYPE *GetFolder)( 6145 IFolderView* This, 6146 REFIID riid, 6147 void **ppv); 6148 6149 HRESULT (STDMETHODCALLTYPE *Item)( 6150 IFolderView* This, 6151 int iItemIndex, 6152 PITEMID_CHILD *ppidl); 6153 6154 HRESULT (STDMETHODCALLTYPE *ItemCount)( 6155 IFolderView* This, 6156 UINT uFlags, 6157 int *pcItems); 6158 6159 HRESULT (STDMETHODCALLTYPE *Items)( 6160 IFolderView* This, 6161 UINT uFlags, 6162 REFIID riid, 6163 void **ppv); 6164 6165 HRESULT (STDMETHODCALLTYPE *GetSelectionMarkedItem)( 6166 IFolderView* This, 6167 int *piItem); 6168 6169 HRESULT (STDMETHODCALLTYPE *GetFocusedItem)( 6170 IFolderView* This, 6171 int *piItem); 6172 6173 HRESULT (STDMETHODCALLTYPE *GetItemPosition)( 6174 IFolderView* This, 6175 PCUITEMID_CHILD pidl, 6176 POINT *ppt); 6177 6178 HRESULT (STDMETHODCALLTYPE *GetSpacing)( 6179 IFolderView* This, 6180 POINT *ppt); 6181 6182 HRESULT (STDMETHODCALLTYPE *GetDefaultSpacing)( 6183 IFolderView* This, 6184 POINT *ppt); 6185 6186 HRESULT (STDMETHODCALLTYPE *GetAutoArrange)( 6187 IFolderView* This); 6188 6189 HRESULT (STDMETHODCALLTYPE *SelectItem)( 6190 IFolderView* This, 6191 int iItem, 6192 DWORD dwFlags); 6193 6194 HRESULT (STDMETHODCALLTYPE *SelectAndPositionItems)( 6195 IFolderView* This, 6196 UINT cidl, 6197 PCUITEMID_CHILD_ARRAY apidl, 6198 POINT *apt, 6199 DWORD dwFlags); 6200 6201 END_INTERFACE 6202 } IFolderViewVtbl; 6203 interface IFolderView { 6204 CONST_VTBL IFolderViewVtbl* lpVtbl; 6205 }; 6206 6207 #ifdef COBJMACROS 6208 #ifndef WIDL_C_INLINE_WRAPPERS 6209 /*** IUnknown methods ***/ 6210 #define IFolderView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6211 #define IFolderView_AddRef(This) (This)->lpVtbl->AddRef(This) 6212 #define IFolderView_Release(This) (This)->lpVtbl->Release(This) 6213 /*** IFolderView methods ***/ 6214 #define IFolderView_GetCurrentViewMode(This,pViewMode) (This)->lpVtbl->GetCurrentViewMode(This,pViewMode) 6215 #define IFolderView_SetCurrentViewMode(This,ViewMode) (This)->lpVtbl->SetCurrentViewMode(This,ViewMode) 6216 #define IFolderView_GetFolder(This,riid,ppv) (This)->lpVtbl->GetFolder(This,riid,ppv) 6217 #define IFolderView_Item(This,iItemIndex,ppidl) (This)->lpVtbl->Item(This,iItemIndex,ppidl) 6218 #define IFolderView_ItemCount(This,uFlags,pcItems) (This)->lpVtbl->ItemCount(This,uFlags,pcItems) 6219 #define IFolderView_Items(This,uFlags,riid,ppv) (This)->lpVtbl->Items(This,uFlags,riid,ppv) 6220 #define IFolderView_GetSelectionMarkedItem(This,piItem) (This)->lpVtbl->GetSelectionMarkedItem(This,piItem) 6221 #define IFolderView_GetFocusedItem(This,piItem) (This)->lpVtbl->GetFocusedItem(This,piItem) 6222 #define IFolderView_GetItemPosition(This,pidl,ppt) (This)->lpVtbl->GetItemPosition(This,pidl,ppt) 6223 #define IFolderView_GetSpacing(This,ppt) (This)->lpVtbl->GetSpacing(This,ppt) 6224 #define IFolderView_GetDefaultSpacing(This,ppt) (This)->lpVtbl->GetDefaultSpacing(This,ppt) 6225 #define IFolderView_GetAutoArrange(This) (This)->lpVtbl->GetAutoArrange(This) 6226 #define IFolderView_SelectItem(This,iItem,dwFlags) (This)->lpVtbl->SelectItem(This,iItem,dwFlags) 6227 #define IFolderView_SelectAndPositionItems(This,cidl,apidl,apt,dwFlags) (This)->lpVtbl->SelectAndPositionItems(This,cidl,apidl,apt,dwFlags) 6228 #else 6229 /*** IUnknown methods ***/ 6230 static FORCEINLINE HRESULT IFolderView_QueryInterface(IFolderView* This,REFIID riid,void **ppvObject) { 6231 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6232 } 6233 static FORCEINLINE ULONG IFolderView_AddRef(IFolderView* This) { 6234 return This->lpVtbl->AddRef(This); 6235 } 6236 static FORCEINLINE ULONG IFolderView_Release(IFolderView* This) { 6237 return This->lpVtbl->Release(This); 6238 } 6239 /*** IFolderView methods ***/ 6240 static FORCEINLINE HRESULT IFolderView_GetCurrentViewMode(IFolderView* This,UINT *pViewMode) { 6241 return This->lpVtbl->GetCurrentViewMode(This,pViewMode); 6242 } 6243 static FORCEINLINE HRESULT IFolderView_SetCurrentViewMode(IFolderView* This,UINT ViewMode) { 6244 return This->lpVtbl->SetCurrentViewMode(This,ViewMode); 6245 } 6246 static FORCEINLINE HRESULT IFolderView_GetFolder(IFolderView* This,REFIID riid,void **ppv) { 6247 return This->lpVtbl->GetFolder(This,riid,ppv); 6248 } 6249 static FORCEINLINE HRESULT IFolderView_Item(IFolderView* This,int iItemIndex,PITEMID_CHILD *ppidl) { 6250 return This->lpVtbl->Item(This,iItemIndex,ppidl); 6251 } 6252 static FORCEINLINE HRESULT IFolderView_ItemCount(IFolderView* This,UINT uFlags,int *pcItems) { 6253 return This->lpVtbl->ItemCount(This,uFlags,pcItems); 6254 } 6255 static FORCEINLINE HRESULT IFolderView_Items(IFolderView* This,UINT uFlags,REFIID riid,void **ppv) { 6256 return This->lpVtbl->Items(This,uFlags,riid,ppv); 6257 } 6258 static FORCEINLINE HRESULT IFolderView_GetSelectionMarkedItem(IFolderView* This,int *piItem) { 6259 return This->lpVtbl->GetSelectionMarkedItem(This,piItem); 6260 } 6261 static FORCEINLINE HRESULT IFolderView_GetFocusedItem(IFolderView* This,int *piItem) { 6262 return This->lpVtbl->GetFocusedItem(This,piItem); 6263 } 6264 static FORCEINLINE HRESULT IFolderView_GetItemPosition(IFolderView* This,PCUITEMID_CHILD pidl,POINT *ppt) { 6265 return This->lpVtbl->GetItemPosition(This,pidl,ppt); 6266 } 6267 static FORCEINLINE HRESULT IFolderView_GetSpacing(IFolderView* This,POINT *ppt) { 6268 return This->lpVtbl->GetSpacing(This,ppt); 6269 } 6270 static FORCEINLINE HRESULT IFolderView_GetDefaultSpacing(IFolderView* This,POINT *ppt) { 6271 return This->lpVtbl->GetDefaultSpacing(This,ppt); 6272 } 6273 static FORCEINLINE HRESULT IFolderView_GetAutoArrange(IFolderView* This) { 6274 return This->lpVtbl->GetAutoArrange(This); 6275 } 6276 static FORCEINLINE HRESULT IFolderView_SelectItem(IFolderView* This,int iItem,DWORD dwFlags) { 6277 return This->lpVtbl->SelectItem(This,iItem,dwFlags); 6278 } 6279 static FORCEINLINE HRESULT IFolderView_SelectAndPositionItems(IFolderView* This,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,POINT *apt,DWORD dwFlags) { 6280 return This->lpVtbl->SelectAndPositionItems(This,cidl,apidl,apt,dwFlags); 6281 } 6282 #endif 6283 #endif 6284 6285 #endif 6286 6287 HRESULT STDMETHODCALLTYPE IFolderView_GetCurrentViewMode_Proxy( 6288 IFolderView* This, 6289 UINT *pViewMode); 6290 void __RPC_STUB IFolderView_GetCurrentViewMode_Stub( 6291 IRpcStubBuffer* This, 6292 IRpcChannelBuffer* pRpcChannelBuffer, 6293 PRPC_MESSAGE pRpcMessage, 6294 DWORD* pdwStubPhase); 6295 HRESULT STDMETHODCALLTYPE IFolderView_SetCurrentViewMode_Proxy( 6296 IFolderView* This, 6297 UINT ViewMode); 6298 void __RPC_STUB IFolderView_SetCurrentViewMode_Stub( 6299 IRpcStubBuffer* This, 6300 IRpcChannelBuffer* pRpcChannelBuffer, 6301 PRPC_MESSAGE pRpcMessage, 6302 DWORD* pdwStubPhase); 6303 HRESULT STDMETHODCALLTYPE IFolderView_GetFolder_Proxy( 6304 IFolderView* This, 6305 REFIID riid, 6306 void **ppv); 6307 void __RPC_STUB IFolderView_GetFolder_Stub( 6308 IRpcStubBuffer* This, 6309 IRpcChannelBuffer* pRpcChannelBuffer, 6310 PRPC_MESSAGE pRpcMessage, 6311 DWORD* pdwStubPhase); 6312 HRESULT STDMETHODCALLTYPE IFolderView_Item_Proxy( 6313 IFolderView* This, 6314 int iItemIndex, 6315 PITEMID_CHILD *ppidl); 6316 void __RPC_STUB IFolderView_Item_Stub( 6317 IRpcStubBuffer* This, 6318 IRpcChannelBuffer* pRpcChannelBuffer, 6319 PRPC_MESSAGE pRpcMessage, 6320 DWORD* pdwStubPhase); 6321 HRESULT STDMETHODCALLTYPE IFolderView_ItemCount_Proxy( 6322 IFolderView* This, 6323 UINT uFlags, 6324 int *pcItems); 6325 void __RPC_STUB IFolderView_ItemCount_Stub( 6326 IRpcStubBuffer* This, 6327 IRpcChannelBuffer* pRpcChannelBuffer, 6328 PRPC_MESSAGE pRpcMessage, 6329 DWORD* pdwStubPhase); 6330 HRESULT STDMETHODCALLTYPE IFolderView_Items_Proxy( 6331 IFolderView* This, 6332 UINT uFlags, 6333 REFIID riid, 6334 void **ppv); 6335 void __RPC_STUB IFolderView_Items_Stub( 6336 IRpcStubBuffer* This, 6337 IRpcChannelBuffer* pRpcChannelBuffer, 6338 PRPC_MESSAGE pRpcMessage, 6339 DWORD* pdwStubPhase); 6340 HRESULT STDMETHODCALLTYPE IFolderView_GetSelectionMarkedItem_Proxy( 6341 IFolderView* This, 6342 int *piItem); 6343 void __RPC_STUB IFolderView_GetSelectionMarkedItem_Stub( 6344 IRpcStubBuffer* This, 6345 IRpcChannelBuffer* pRpcChannelBuffer, 6346 PRPC_MESSAGE pRpcMessage, 6347 DWORD* pdwStubPhase); 6348 HRESULT STDMETHODCALLTYPE IFolderView_GetFocusedItem_Proxy( 6349 IFolderView* This, 6350 int *piItem); 6351 void __RPC_STUB IFolderView_GetFocusedItem_Stub( 6352 IRpcStubBuffer* This, 6353 IRpcChannelBuffer* pRpcChannelBuffer, 6354 PRPC_MESSAGE pRpcMessage, 6355 DWORD* pdwStubPhase); 6356 HRESULT STDMETHODCALLTYPE IFolderView_GetItemPosition_Proxy( 6357 IFolderView* This, 6358 PCUITEMID_CHILD pidl, 6359 POINT *ppt); 6360 void __RPC_STUB IFolderView_GetItemPosition_Stub( 6361 IRpcStubBuffer* This, 6362 IRpcChannelBuffer* pRpcChannelBuffer, 6363 PRPC_MESSAGE pRpcMessage, 6364 DWORD* pdwStubPhase); 6365 HRESULT STDMETHODCALLTYPE IFolderView_GetSpacing_Proxy( 6366 IFolderView* This, 6367 POINT *ppt); 6368 void __RPC_STUB IFolderView_GetSpacing_Stub( 6369 IRpcStubBuffer* This, 6370 IRpcChannelBuffer* pRpcChannelBuffer, 6371 PRPC_MESSAGE pRpcMessage, 6372 DWORD* pdwStubPhase); 6373 HRESULT STDMETHODCALLTYPE IFolderView_GetDefaultSpacing_Proxy( 6374 IFolderView* This, 6375 POINT *ppt); 6376 void __RPC_STUB IFolderView_GetDefaultSpacing_Stub( 6377 IRpcStubBuffer* This, 6378 IRpcChannelBuffer* pRpcChannelBuffer, 6379 PRPC_MESSAGE pRpcMessage, 6380 DWORD* pdwStubPhase); 6381 HRESULT STDMETHODCALLTYPE IFolderView_GetAutoArrange_Proxy( 6382 IFolderView* This); 6383 void __RPC_STUB IFolderView_GetAutoArrange_Stub( 6384 IRpcStubBuffer* This, 6385 IRpcChannelBuffer* pRpcChannelBuffer, 6386 PRPC_MESSAGE pRpcMessage, 6387 DWORD* pdwStubPhase); 6388 HRESULT STDMETHODCALLTYPE IFolderView_SelectItem_Proxy( 6389 IFolderView* This, 6390 int iItem, 6391 DWORD dwFlags); 6392 void __RPC_STUB IFolderView_SelectItem_Stub( 6393 IRpcStubBuffer* This, 6394 IRpcChannelBuffer* pRpcChannelBuffer, 6395 PRPC_MESSAGE pRpcMessage, 6396 DWORD* pdwStubPhase); 6397 HRESULT STDMETHODCALLTYPE IFolderView_SelectAndPositionItems_Proxy( 6398 IFolderView* This, 6399 UINT cidl, 6400 PCUITEMID_CHILD_ARRAY apidl, 6401 POINT *apt, 6402 DWORD dwFlags); 6403 void __RPC_STUB IFolderView_SelectAndPositionItems_Stub( 6404 IRpcStubBuffer* This, 6405 IRpcChannelBuffer* pRpcChannelBuffer, 6406 PRPC_MESSAGE pRpcMessage, 6407 DWORD* pdwStubPhase); 6408 6409 #endif /* __IFolderView_INTERFACE_DEFINED__ */ 6410 6411 6412 #define SID_SFolderView IID_IFolderView 6413 6414 #if NTDDI_VERSION >= NTDDI_WIN7 6415 /***************************************************************************** 6416 * ISearchBoxInfo interface 6417 */ 6418 #ifndef __ISearchBoxInfo_INTERFACE_DEFINED__ 6419 #define __ISearchBoxInfo_INTERFACE_DEFINED__ 6420 6421 DEFINE_GUID(IID_ISearchBoxInfo, 0x6af6e03f, 0xd664, 0x4ef4, 0x96,0x26, 0xf7,0xe0,0xed,0x36,0x75,0x5e); 6422 #if defined(__cplusplus) && !defined(CINTERFACE) 6423 MIDL_INTERFACE("6af6e03f-d664-4ef4-9626-f7e0ed36755e") 6424 ISearchBoxInfo : public IUnknown 6425 { 6426 virtual HRESULT STDMETHODCALLTYPE GetCondition( 6427 REFIID riid, 6428 void **ppv) = 0; 6429 6430 virtual HRESULT STDMETHODCALLTYPE GetText( 6431 LPWSTR *ppsz) = 0; 6432 6433 }; 6434 #ifdef __CRT_UUID_DECL 6435 __CRT_UUID_DECL(ISearchBoxInfo, 0x6af6e03f, 0xd664, 0x4ef4, 0x96,0x26, 0xf7,0xe0,0xed,0x36,0x75,0x5e) 6436 #endif 6437 #else 6438 typedef struct ISearchBoxInfoVtbl { 6439 BEGIN_INTERFACE 6440 6441 /*** IUnknown methods ***/ 6442 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6443 ISearchBoxInfo* This, 6444 REFIID riid, 6445 void **ppvObject); 6446 6447 ULONG (STDMETHODCALLTYPE *AddRef)( 6448 ISearchBoxInfo* This); 6449 6450 ULONG (STDMETHODCALLTYPE *Release)( 6451 ISearchBoxInfo* This); 6452 6453 /*** ISearchBoxInfo methods ***/ 6454 HRESULT (STDMETHODCALLTYPE *GetCondition)( 6455 ISearchBoxInfo* This, 6456 REFIID riid, 6457 void **ppv); 6458 6459 HRESULT (STDMETHODCALLTYPE *GetText)( 6460 ISearchBoxInfo* This, 6461 LPWSTR *ppsz); 6462 6463 END_INTERFACE 6464 } ISearchBoxInfoVtbl; 6465 interface ISearchBoxInfo { 6466 CONST_VTBL ISearchBoxInfoVtbl* lpVtbl; 6467 }; 6468 6469 #ifdef COBJMACROS 6470 #ifndef WIDL_C_INLINE_WRAPPERS 6471 /*** IUnknown methods ***/ 6472 #define ISearchBoxInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6473 #define ISearchBoxInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 6474 #define ISearchBoxInfo_Release(This) (This)->lpVtbl->Release(This) 6475 /*** ISearchBoxInfo methods ***/ 6476 #define ISearchBoxInfo_GetCondition(This,riid,ppv) (This)->lpVtbl->GetCondition(This,riid,ppv) 6477 #define ISearchBoxInfo_GetText(This,ppsz) (This)->lpVtbl->GetText(This,ppsz) 6478 #else 6479 /*** IUnknown methods ***/ 6480 static FORCEINLINE HRESULT ISearchBoxInfo_QueryInterface(ISearchBoxInfo* This,REFIID riid,void **ppvObject) { 6481 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6482 } 6483 static FORCEINLINE ULONG ISearchBoxInfo_AddRef(ISearchBoxInfo* This) { 6484 return This->lpVtbl->AddRef(This); 6485 } 6486 static FORCEINLINE ULONG ISearchBoxInfo_Release(ISearchBoxInfo* This) { 6487 return This->lpVtbl->Release(This); 6488 } 6489 /*** ISearchBoxInfo methods ***/ 6490 static FORCEINLINE HRESULT ISearchBoxInfo_GetCondition(ISearchBoxInfo* This,REFIID riid,void **ppv) { 6491 return This->lpVtbl->GetCondition(This,riid,ppv); 6492 } 6493 static FORCEINLINE HRESULT ISearchBoxInfo_GetText(ISearchBoxInfo* This,LPWSTR *ppsz) { 6494 return This->lpVtbl->GetText(This,ppsz); 6495 } 6496 #endif 6497 #endif 6498 6499 #endif 6500 6501 HRESULT STDMETHODCALLTYPE ISearchBoxInfo_GetCondition_Proxy( 6502 ISearchBoxInfo* This, 6503 REFIID riid, 6504 void **ppv); 6505 void __RPC_STUB ISearchBoxInfo_GetCondition_Stub( 6506 IRpcStubBuffer* This, 6507 IRpcChannelBuffer* pRpcChannelBuffer, 6508 PRPC_MESSAGE pRpcMessage, 6509 DWORD* pdwStubPhase); 6510 HRESULT STDMETHODCALLTYPE ISearchBoxInfo_GetText_Proxy( 6511 ISearchBoxInfo* This, 6512 LPWSTR *ppsz); 6513 void __RPC_STUB ISearchBoxInfo_GetText_Stub( 6514 IRpcStubBuffer* This, 6515 IRpcChannelBuffer* pRpcChannelBuffer, 6516 PRPC_MESSAGE pRpcMessage, 6517 DWORD* pdwStubPhase); 6518 6519 #endif /* __ISearchBoxInfo_INTERFACE_DEFINED__ */ 6520 6521 #endif 6522 6523 #if NTDDI_VERSION >= NTDDI_VISTA || _WIN32_IE >= _WIN32_IE_IE70 6524 #ifndef NO_SHOBJIDL_SORTDIRECTION 6525 enum tagSORTDIRECTION { 6526 SORT_DESCENDING = -1, 6527 SORT_ASCENDING = 1 6528 }; 6529 6530 #endif 6531 6532 typedef int SORTDIRECTION; 6533 6534 typedef struct SORTCOLUMN { 6535 PROPERTYKEY propkey; 6536 SORTDIRECTION direction; 6537 } SORTCOLUMN; 6538 6539 typedef enum FVTEXTTYPE { 6540 FVST_EMPTYTEXT = 0 6541 } FVTEXTTYPE; 6542 6543 #ifndef __IShellItemArray_FWD_DEFINED__ 6544 #define __IShellItemArray_FWD_DEFINED__ 6545 typedef interface IShellItemArray IShellItemArray; 6546 #endif 6547 6548 6549 typedef HRESULT DEPRECATED_HRESULT; 6550 6551 #ifdef __cplusplus 6552 #define DEPRECATED_HRESULT HRESULT 6553 #endif 6554 6555 /***************************************************************************** 6556 * IFolderView2 interface 6557 */ 6558 #ifndef __IFolderView2_INTERFACE_DEFINED__ 6559 #define __IFolderView2_INTERFACE_DEFINED__ 6560 6561 DEFINE_GUID(IID_IFolderView2, 0x1af3a467, 0x214f, 0x4298, 0x90,0x8e, 0x06,0xb0,0x3e,0x0b,0x39,0xf9); 6562 #if defined(__cplusplus) && !defined(CINTERFACE) 6563 MIDL_INTERFACE("1af3a467-214f-4298-908e-06b03e0b39f9") 6564 IFolderView2 : public IFolderView 6565 { 6566 virtual HRESULT STDMETHODCALLTYPE SetGroupBy( 6567 REFPROPERTYKEY key, 6568 WINBOOL fAscending) = 0; 6569 6570 virtual HRESULT STDMETHODCALLTYPE GetGroupBy( 6571 PROPERTYKEY *pkey, 6572 WINBOOL *pfAscending) = 0; 6573 6574 virtual HRESULT STDMETHODCALLTYPE SetViewProperty( 6575 PCUITEMID_CHILD pidl, 6576 REFPROPERTYKEY propkey, 6577 REFPROPVARIANT propvar) = 0; 6578 6579 virtual HRESULT STDMETHODCALLTYPE GetViewProperty( 6580 PCUITEMID_CHILD pidl, 6581 REFPROPERTYKEY propkey, 6582 PROPVARIANT *ppropvar) = 0; 6583 6584 virtual HRESULT STDMETHODCALLTYPE SetTileViewProperties( 6585 PCUITEMID_CHILD pidl, 6586 LPCWSTR pszPropList) = 0; 6587 6588 virtual HRESULT STDMETHODCALLTYPE SetExtendedTileViewProperties( 6589 PCUITEMID_CHILD pidl, 6590 LPCWSTR pszPropList) = 0; 6591 6592 virtual HRESULT STDMETHODCALLTYPE SetText( 6593 FVTEXTTYPE iType, 6594 LPCWSTR pwszText) = 0; 6595 6596 virtual HRESULT STDMETHODCALLTYPE SetCurrentFolderFlags( 6597 DWORD dwMask, 6598 DWORD dwFlags) = 0; 6599 6600 virtual HRESULT STDMETHODCALLTYPE GetCurrentFolderFlags( 6601 DWORD *pdwFlags) = 0; 6602 6603 virtual HRESULT STDMETHODCALLTYPE GetSortColumnCount( 6604 int *pcColumns) = 0; 6605 6606 virtual HRESULT STDMETHODCALLTYPE SetSortColumns( 6607 const SORTCOLUMN *rgSortColumns, 6608 int cColumns) = 0; 6609 6610 virtual HRESULT STDMETHODCALLTYPE GetSortColumns( 6611 SORTCOLUMN *rgSortColumns, 6612 int cColumns) = 0; 6613 6614 virtual HRESULT STDMETHODCALLTYPE GetItem( 6615 int iItem, 6616 REFIID riid, 6617 void **ppv) = 0; 6618 6619 virtual HRESULT STDMETHODCALLTYPE GetVisibleItem( 6620 int iStart, 6621 WINBOOL fPrevious, 6622 int *piItem) = 0; 6623 6624 virtual HRESULT STDMETHODCALLTYPE GetSelectedItem( 6625 int iStart, 6626 int *piItem) = 0; 6627 6628 virtual HRESULT STDMETHODCALLTYPE GetSelection( 6629 WINBOOL fNoneImpliesFolder, 6630 IShellItemArray **ppsia) = 0; 6631 6632 virtual HRESULT STDMETHODCALLTYPE GetSelectionState( 6633 PCUITEMID_CHILD pidl, 6634 DWORD *pdwFlags) = 0; 6635 6636 virtual HRESULT STDMETHODCALLTYPE InvokeVerbOnSelection( 6637 LPCSTR pszVerb) = 0; 6638 6639 virtual HRESULT STDMETHODCALLTYPE SetViewModeAndIconSize( 6640 FOLDERVIEWMODE uViewMode, 6641 int iImageSize) = 0; 6642 6643 virtual HRESULT STDMETHODCALLTYPE GetViewModeAndIconSize( 6644 FOLDERVIEWMODE *puViewMode, 6645 int *piImageSize) = 0; 6646 6647 virtual HRESULT STDMETHODCALLTYPE SetGroupSubsetCount( 6648 UINT cVisibleRows) = 0; 6649 6650 virtual HRESULT STDMETHODCALLTYPE GetGroupSubsetCount( 6651 UINT *pcVisibleRows) = 0; 6652 6653 virtual HRESULT STDMETHODCALLTYPE SetRedraw( 6654 WINBOOL fRedrawOn) = 0; 6655 6656 virtual HRESULT STDMETHODCALLTYPE IsMoveInSameFolder( 6657 ) = 0; 6658 6659 virtual HRESULT STDMETHODCALLTYPE DoRename( 6660 ) = 0; 6661 6662 }; 6663 #ifdef __CRT_UUID_DECL 6664 __CRT_UUID_DECL(IFolderView2, 0x1af3a467, 0x214f, 0x4298, 0x90,0x8e, 0x06,0xb0,0x3e,0x0b,0x39,0xf9) 6665 #endif 6666 #else 6667 typedef struct IFolderView2Vtbl { 6668 BEGIN_INTERFACE 6669 6670 /*** IUnknown methods ***/ 6671 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 6672 IFolderView2* This, 6673 REFIID riid, 6674 void **ppvObject); 6675 6676 ULONG (STDMETHODCALLTYPE *AddRef)( 6677 IFolderView2* This); 6678 6679 ULONG (STDMETHODCALLTYPE *Release)( 6680 IFolderView2* This); 6681 6682 /*** IFolderView methods ***/ 6683 HRESULT (STDMETHODCALLTYPE *GetCurrentViewMode)( 6684 IFolderView2* This, 6685 UINT *pViewMode); 6686 6687 HRESULT (STDMETHODCALLTYPE *SetCurrentViewMode)( 6688 IFolderView2* This, 6689 UINT ViewMode); 6690 6691 HRESULT (STDMETHODCALLTYPE *GetFolder)( 6692 IFolderView2* This, 6693 REFIID riid, 6694 void **ppv); 6695 6696 HRESULT (STDMETHODCALLTYPE *Item)( 6697 IFolderView2* This, 6698 int iItemIndex, 6699 PITEMID_CHILD *ppidl); 6700 6701 HRESULT (STDMETHODCALLTYPE *ItemCount)( 6702 IFolderView2* This, 6703 UINT uFlags, 6704 int *pcItems); 6705 6706 HRESULT (STDMETHODCALLTYPE *Items)( 6707 IFolderView2* This, 6708 UINT uFlags, 6709 REFIID riid, 6710 void **ppv); 6711 6712 HRESULT (STDMETHODCALLTYPE *GetSelectionMarkedItem)( 6713 IFolderView2* This, 6714 int *piItem); 6715 6716 HRESULT (STDMETHODCALLTYPE *GetFocusedItem)( 6717 IFolderView2* This, 6718 int *piItem); 6719 6720 HRESULT (STDMETHODCALLTYPE *GetItemPosition)( 6721 IFolderView2* This, 6722 PCUITEMID_CHILD pidl, 6723 POINT *ppt); 6724 6725 HRESULT (STDMETHODCALLTYPE *GetSpacing)( 6726 IFolderView2* This, 6727 POINT *ppt); 6728 6729 HRESULT (STDMETHODCALLTYPE *GetDefaultSpacing)( 6730 IFolderView2* This, 6731 POINT *ppt); 6732 6733 HRESULT (STDMETHODCALLTYPE *GetAutoArrange)( 6734 IFolderView2* This); 6735 6736 HRESULT (STDMETHODCALLTYPE *SelectItem)( 6737 IFolderView2* This, 6738 int iItem, 6739 DWORD dwFlags); 6740 6741 HRESULT (STDMETHODCALLTYPE *SelectAndPositionItems)( 6742 IFolderView2* This, 6743 UINT cidl, 6744 PCUITEMID_CHILD_ARRAY apidl, 6745 POINT *apt, 6746 DWORD dwFlags); 6747 6748 /*** IFolderView2 methods ***/ 6749 HRESULT (STDMETHODCALLTYPE *SetGroupBy)( 6750 IFolderView2* This, 6751 REFPROPERTYKEY key, 6752 WINBOOL fAscending); 6753 6754 HRESULT (STDMETHODCALLTYPE *GetGroupBy)( 6755 IFolderView2* This, 6756 PROPERTYKEY *pkey, 6757 WINBOOL *pfAscending); 6758 6759 HRESULT (STDMETHODCALLTYPE *SetViewProperty)( 6760 IFolderView2* This, 6761 PCUITEMID_CHILD pidl, 6762 REFPROPERTYKEY propkey, 6763 REFPROPVARIANT propvar); 6764 6765 HRESULT (STDMETHODCALLTYPE *GetViewProperty)( 6766 IFolderView2* This, 6767 PCUITEMID_CHILD pidl, 6768 REFPROPERTYKEY propkey, 6769 PROPVARIANT *ppropvar); 6770 6771 HRESULT (STDMETHODCALLTYPE *SetTileViewProperties)( 6772 IFolderView2* This, 6773 PCUITEMID_CHILD pidl, 6774 LPCWSTR pszPropList); 6775 6776 HRESULT (STDMETHODCALLTYPE *SetExtendedTileViewProperties)( 6777 IFolderView2* This, 6778 PCUITEMID_CHILD pidl, 6779 LPCWSTR pszPropList); 6780 6781 HRESULT (STDMETHODCALLTYPE *SetText)( 6782 IFolderView2* This, 6783 FVTEXTTYPE iType, 6784 LPCWSTR pwszText); 6785 6786 HRESULT (STDMETHODCALLTYPE *SetCurrentFolderFlags)( 6787 IFolderView2* This, 6788 DWORD dwMask, 6789 DWORD dwFlags); 6790 6791 HRESULT (STDMETHODCALLTYPE *GetCurrentFolderFlags)( 6792 IFolderView2* This, 6793 DWORD *pdwFlags); 6794 6795 HRESULT (STDMETHODCALLTYPE *GetSortColumnCount)( 6796 IFolderView2* This, 6797 int *pcColumns); 6798 6799 HRESULT (STDMETHODCALLTYPE *SetSortColumns)( 6800 IFolderView2* This, 6801 const SORTCOLUMN *rgSortColumns, 6802 int cColumns); 6803 6804 HRESULT (STDMETHODCALLTYPE *GetSortColumns)( 6805 IFolderView2* This, 6806 SORTCOLUMN *rgSortColumns, 6807 int cColumns); 6808 6809 HRESULT (STDMETHODCALLTYPE *GetItem)( 6810 IFolderView2* This, 6811 int iItem, 6812 REFIID riid, 6813 void **ppv); 6814 6815 HRESULT (STDMETHODCALLTYPE *GetVisibleItem)( 6816 IFolderView2* This, 6817 int iStart, 6818 WINBOOL fPrevious, 6819 int *piItem); 6820 6821 HRESULT (STDMETHODCALLTYPE *GetSelectedItem)( 6822 IFolderView2* This, 6823 int iStart, 6824 int *piItem); 6825 6826 HRESULT (STDMETHODCALLTYPE *GetSelection)( 6827 IFolderView2* This, 6828 WINBOOL fNoneImpliesFolder, 6829 IShellItemArray **ppsia); 6830 6831 HRESULT (STDMETHODCALLTYPE *GetSelectionState)( 6832 IFolderView2* This, 6833 PCUITEMID_CHILD pidl, 6834 DWORD *pdwFlags); 6835 6836 HRESULT (STDMETHODCALLTYPE *InvokeVerbOnSelection)( 6837 IFolderView2* This, 6838 LPCSTR pszVerb); 6839 6840 HRESULT (STDMETHODCALLTYPE *SetViewModeAndIconSize)( 6841 IFolderView2* This, 6842 FOLDERVIEWMODE uViewMode, 6843 int iImageSize); 6844 6845 HRESULT (STDMETHODCALLTYPE *GetViewModeAndIconSize)( 6846 IFolderView2* This, 6847 FOLDERVIEWMODE *puViewMode, 6848 int *piImageSize); 6849 6850 HRESULT (STDMETHODCALLTYPE *SetGroupSubsetCount)( 6851 IFolderView2* This, 6852 UINT cVisibleRows); 6853 6854 HRESULT (STDMETHODCALLTYPE *GetGroupSubsetCount)( 6855 IFolderView2* This, 6856 UINT *pcVisibleRows); 6857 6858 HRESULT (STDMETHODCALLTYPE *SetRedraw)( 6859 IFolderView2* This, 6860 WINBOOL fRedrawOn); 6861 6862 HRESULT (STDMETHODCALLTYPE *IsMoveInSameFolder)( 6863 IFolderView2* This); 6864 6865 HRESULT (STDMETHODCALLTYPE *DoRename)( 6866 IFolderView2* This); 6867 6868 END_INTERFACE 6869 } IFolderView2Vtbl; 6870 interface IFolderView2 { 6871 CONST_VTBL IFolderView2Vtbl* lpVtbl; 6872 }; 6873 6874 #ifdef COBJMACROS 6875 #ifndef WIDL_C_INLINE_WRAPPERS 6876 /*** IUnknown methods ***/ 6877 #define IFolderView2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 6878 #define IFolderView2_AddRef(This) (This)->lpVtbl->AddRef(This) 6879 #define IFolderView2_Release(This) (This)->lpVtbl->Release(This) 6880 /*** IFolderView methods ***/ 6881 #define IFolderView2_GetCurrentViewMode(This,pViewMode) (This)->lpVtbl->GetCurrentViewMode(This,pViewMode) 6882 #define IFolderView2_SetCurrentViewMode(This,ViewMode) (This)->lpVtbl->SetCurrentViewMode(This,ViewMode) 6883 #define IFolderView2_GetFolder(This,riid,ppv) (This)->lpVtbl->GetFolder(This,riid,ppv) 6884 #define IFolderView2_Item(This,iItemIndex,ppidl) (This)->lpVtbl->Item(This,iItemIndex,ppidl) 6885 #define IFolderView2_ItemCount(This,uFlags,pcItems) (This)->lpVtbl->ItemCount(This,uFlags,pcItems) 6886 #define IFolderView2_Items(This,uFlags,riid,ppv) (This)->lpVtbl->Items(This,uFlags,riid,ppv) 6887 #define IFolderView2_GetSelectionMarkedItem(This,piItem) (This)->lpVtbl->GetSelectionMarkedItem(This,piItem) 6888 #define IFolderView2_GetFocusedItem(This,piItem) (This)->lpVtbl->GetFocusedItem(This,piItem) 6889 #define IFolderView2_GetItemPosition(This,pidl,ppt) (This)->lpVtbl->GetItemPosition(This,pidl,ppt) 6890 #define IFolderView2_GetSpacing(This,ppt) (This)->lpVtbl->GetSpacing(This,ppt) 6891 #define IFolderView2_GetDefaultSpacing(This,ppt) (This)->lpVtbl->GetDefaultSpacing(This,ppt) 6892 #define IFolderView2_GetAutoArrange(This) (This)->lpVtbl->GetAutoArrange(This) 6893 #define IFolderView2_SelectItem(This,iItem,dwFlags) (This)->lpVtbl->SelectItem(This,iItem,dwFlags) 6894 #define IFolderView2_SelectAndPositionItems(This,cidl,apidl,apt,dwFlags) (This)->lpVtbl->SelectAndPositionItems(This,cidl,apidl,apt,dwFlags) 6895 /*** IFolderView2 methods ***/ 6896 #define IFolderView2_SetGroupBy(This,key,fAscending) (This)->lpVtbl->SetGroupBy(This,key,fAscending) 6897 #define IFolderView2_GetGroupBy(This,pkey,pfAscending) (This)->lpVtbl->GetGroupBy(This,pkey,pfAscending) 6898 #define IFolderView2_SetViewProperty(This,pidl,propkey,propvar) (This)->lpVtbl->SetViewProperty(This,pidl,propkey,propvar) 6899 #define IFolderView2_GetViewProperty(This,pidl,propkey,ppropvar) (This)->lpVtbl->GetViewProperty(This,pidl,propkey,ppropvar) 6900 #define IFolderView2_SetTileViewProperties(This,pidl,pszPropList) (This)->lpVtbl->SetTileViewProperties(This,pidl,pszPropList) 6901 #define IFolderView2_SetExtendedTileViewProperties(This,pidl,pszPropList) (This)->lpVtbl->SetExtendedTileViewProperties(This,pidl,pszPropList) 6902 #define IFolderView2_SetText(This,iType,pwszText) (This)->lpVtbl->SetText(This,iType,pwszText) 6903 #define IFolderView2_SetCurrentFolderFlags(This,dwMask,dwFlags) (This)->lpVtbl->SetCurrentFolderFlags(This,dwMask,dwFlags) 6904 #define IFolderView2_GetCurrentFolderFlags(This,pdwFlags) (This)->lpVtbl->GetCurrentFolderFlags(This,pdwFlags) 6905 #define IFolderView2_GetSortColumnCount(This,pcColumns) (This)->lpVtbl->GetSortColumnCount(This,pcColumns) 6906 #define IFolderView2_SetSortColumns(This,rgSortColumns,cColumns) (This)->lpVtbl->SetSortColumns(This,rgSortColumns,cColumns) 6907 #define IFolderView2_GetSortColumns(This,rgSortColumns,cColumns) (This)->lpVtbl->GetSortColumns(This,rgSortColumns,cColumns) 6908 #define IFolderView2_GetItem(This,iItem,riid,ppv) (This)->lpVtbl->GetItem(This,iItem,riid,ppv) 6909 #define IFolderView2_GetVisibleItem(This,iStart,fPrevious,piItem) (This)->lpVtbl->GetVisibleItem(This,iStart,fPrevious,piItem) 6910 #define IFolderView2_GetSelectedItem(This,iStart,piItem) (This)->lpVtbl->GetSelectedItem(This,iStart,piItem) 6911 #define IFolderView2_GetSelection(This,fNoneImpliesFolder,ppsia) (This)->lpVtbl->GetSelection(This,fNoneImpliesFolder,ppsia) 6912 #define IFolderView2_GetSelectionState(This,pidl,pdwFlags) (This)->lpVtbl->GetSelectionState(This,pidl,pdwFlags) 6913 #define IFolderView2_InvokeVerbOnSelection(This,pszVerb) (This)->lpVtbl->InvokeVerbOnSelection(This,pszVerb) 6914 #define IFolderView2_SetViewModeAndIconSize(This,uViewMode,iImageSize) (This)->lpVtbl->SetViewModeAndIconSize(This,uViewMode,iImageSize) 6915 #define IFolderView2_GetViewModeAndIconSize(This,puViewMode,piImageSize) (This)->lpVtbl->GetViewModeAndIconSize(This,puViewMode,piImageSize) 6916 #define IFolderView2_SetGroupSubsetCount(This,cVisibleRows) (This)->lpVtbl->SetGroupSubsetCount(This,cVisibleRows) 6917 #define IFolderView2_GetGroupSubsetCount(This,pcVisibleRows) (This)->lpVtbl->GetGroupSubsetCount(This,pcVisibleRows) 6918 #define IFolderView2_SetRedraw(This,fRedrawOn) (This)->lpVtbl->SetRedraw(This,fRedrawOn) 6919 #define IFolderView2_IsMoveInSameFolder(This) (This)->lpVtbl->IsMoveInSameFolder(This) 6920 #define IFolderView2_DoRename(This) (This)->lpVtbl->DoRename(This) 6921 #else 6922 /*** IUnknown methods ***/ 6923 static FORCEINLINE HRESULT IFolderView2_QueryInterface(IFolderView2* This,REFIID riid,void **ppvObject) { 6924 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 6925 } 6926 static FORCEINLINE ULONG IFolderView2_AddRef(IFolderView2* This) { 6927 return This->lpVtbl->AddRef(This); 6928 } 6929 static FORCEINLINE ULONG IFolderView2_Release(IFolderView2* This) { 6930 return This->lpVtbl->Release(This); 6931 } 6932 /*** IFolderView methods ***/ 6933 static FORCEINLINE HRESULT IFolderView2_GetCurrentViewMode(IFolderView2* This,UINT *pViewMode) { 6934 return This->lpVtbl->GetCurrentViewMode(This,pViewMode); 6935 } 6936 static FORCEINLINE HRESULT IFolderView2_SetCurrentViewMode(IFolderView2* This,UINT ViewMode) { 6937 return This->lpVtbl->SetCurrentViewMode(This,ViewMode); 6938 } 6939 static FORCEINLINE HRESULT IFolderView2_GetFolder(IFolderView2* This,REFIID riid,void **ppv) { 6940 return This->lpVtbl->GetFolder(This,riid,ppv); 6941 } 6942 static FORCEINLINE HRESULT IFolderView2_Item(IFolderView2* This,int iItemIndex,PITEMID_CHILD *ppidl) { 6943 return This->lpVtbl->Item(This,iItemIndex,ppidl); 6944 } 6945 static FORCEINLINE HRESULT IFolderView2_ItemCount(IFolderView2* This,UINT uFlags,int *pcItems) { 6946 return This->lpVtbl->ItemCount(This,uFlags,pcItems); 6947 } 6948 static FORCEINLINE HRESULT IFolderView2_Items(IFolderView2* This,UINT uFlags,REFIID riid,void **ppv) { 6949 return This->lpVtbl->Items(This,uFlags,riid,ppv); 6950 } 6951 static FORCEINLINE HRESULT IFolderView2_GetSelectionMarkedItem(IFolderView2* This,int *piItem) { 6952 return This->lpVtbl->GetSelectionMarkedItem(This,piItem); 6953 } 6954 static FORCEINLINE HRESULT IFolderView2_GetFocusedItem(IFolderView2* This,int *piItem) { 6955 return This->lpVtbl->GetFocusedItem(This,piItem); 6956 } 6957 static FORCEINLINE HRESULT IFolderView2_GetItemPosition(IFolderView2* This,PCUITEMID_CHILD pidl,POINT *ppt) { 6958 return This->lpVtbl->GetItemPosition(This,pidl,ppt); 6959 } 6960 static FORCEINLINE HRESULT IFolderView2_GetSpacing(IFolderView2* This,POINT *ppt) { 6961 return This->lpVtbl->GetSpacing(This,ppt); 6962 } 6963 static FORCEINLINE HRESULT IFolderView2_GetDefaultSpacing(IFolderView2* This,POINT *ppt) { 6964 return This->lpVtbl->GetDefaultSpacing(This,ppt); 6965 } 6966 static FORCEINLINE HRESULT IFolderView2_GetAutoArrange(IFolderView2* This) { 6967 return This->lpVtbl->GetAutoArrange(This); 6968 } 6969 static FORCEINLINE HRESULT IFolderView2_SelectItem(IFolderView2* This,int iItem,DWORD dwFlags) { 6970 return This->lpVtbl->SelectItem(This,iItem,dwFlags); 6971 } 6972 static FORCEINLINE HRESULT IFolderView2_SelectAndPositionItems(IFolderView2* This,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,POINT *apt,DWORD dwFlags) { 6973 return This->lpVtbl->SelectAndPositionItems(This,cidl,apidl,apt,dwFlags); 6974 } 6975 /*** IFolderView2 methods ***/ 6976 static FORCEINLINE HRESULT IFolderView2_SetGroupBy(IFolderView2* This,REFPROPERTYKEY key,WINBOOL fAscending) { 6977 return This->lpVtbl->SetGroupBy(This,key,fAscending); 6978 } 6979 static FORCEINLINE HRESULT IFolderView2_GetGroupBy(IFolderView2* This,PROPERTYKEY *pkey,WINBOOL *pfAscending) { 6980 return This->lpVtbl->GetGroupBy(This,pkey,pfAscending); 6981 } 6982 static FORCEINLINE HRESULT IFolderView2_SetViewProperty(IFolderView2* This,PCUITEMID_CHILD pidl,REFPROPERTYKEY propkey,REFPROPVARIANT propvar) { 6983 return This->lpVtbl->SetViewProperty(This,pidl,propkey,propvar); 6984 } 6985 static FORCEINLINE HRESULT IFolderView2_GetViewProperty(IFolderView2* This,PCUITEMID_CHILD pidl,REFPROPERTYKEY propkey,PROPVARIANT *ppropvar) { 6986 return This->lpVtbl->GetViewProperty(This,pidl,propkey,ppropvar); 6987 } 6988 static FORCEINLINE HRESULT IFolderView2_SetTileViewProperties(IFolderView2* This,PCUITEMID_CHILD pidl,LPCWSTR pszPropList) { 6989 return This->lpVtbl->SetTileViewProperties(This,pidl,pszPropList); 6990 } 6991 static FORCEINLINE HRESULT IFolderView2_SetExtendedTileViewProperties(IFolderView2* This,PCUITEMID_CHILD pidl,LPCWSTR pszPropList) { 6992 return This->lpVtbl->SetExtendedTileViewProperties(This,pidl,pszPropList); 6993 } 6994 static FORCEINLINE HRESULT IFolderView2_SetText(IFolderView2* This,FVTEXTTYPE iType,LPCWSTR pwszText) { 6995 return This->lpVtbl->SetText(This,iType,pwszText); 6996 } 6997 static FORCEINLINE HRESULT IFolderView2_SetCurrentFolderFlags(IFolderView2* This,DWORD dwMask,DWORD dwFlags) { 6998 return This->lpVtbl->SetCurrentFolderFlags(This,dwMask,dwFlags); 6999 } 7000 static FORCEINLINE HRESULT IFolderView2_GetCurrentFolderFlags(IFolderView2* This,DWORD *pdwFlags) { 7001 return This->lpVtbl->GetCurrentFolderFlags(This,pdwFlags); 7002 } 7003 static FORCEINLINE HRESULT IFolderView2_GetSortColumnCount(IFolderView2* This,int *pcColumns) { 7004 return This->lpVtbl->GetSortColumnCount(This,pcColumns); 7005 } 7006 static FORCEINLINE HRESULT IFolderView2_SetSortColumns(IFolderView2* This,const SORTCOLUMN *rgSortColumns,int cColumns) { 7007 return This->lpVtbl->SetSortColumns(This,rgSortColumns,cColumns); 7008 } 7009 static FORCEINLINE HRESULT IFolderView2_GetSortColumns(IFolderView2* This,SORTCOLUMN *rgSortColumns,int cColumns) { 7010 return This->lpVtbl->GetSortColumns(This,rgSortColumns,cColumns); 7011 } 7012 static FORCEINLINE HRESULT IFolderView2_GetItem(IFolderView2* This,int iItem,REFIID riid,void **ppv) { 7013 return This->lpVtbl->GetItem(This,iItem,riid,ppv); 7014 } 7015 static FORCEINLINE HRESULT IFolderView2_GetVisibleItem(IFolderView2* This,int iStart,WINBOOL fPrevious,int *piItem) { 7016 return This->lpVtbl->GetVisibleItem(This,iStart,fPrevious,piItem); 7017 } 7018 static FORCEINLINE HRESULT IFolderView2_GetSelectedItem(IFolderView2* This,int iStart,int *piItem) { 7019 return This->lpVtbl->GetSelectedItem(This,iStart,piItem); 7020 } 7021 static FORCEINLINE HRESULT IFolderView2_GetSelection(IFolderView2* This,WINBOOL fNoneImpliesFolder,IShellItemArray **ppsia) { 7022 return This->lpVtbl->GetSelection(This,fNoneImpliesFolder,ppsia); 7023 } 7024 static FORCEINLINE HRESULT IFolderView2_GetSelectionState(IFolderView2* This,PCUITEMID_CHILD pidl,DWORD *pdwFlags) { 7025 return This->lpVtbl->GetSelectionState(This,pidl,pdwFlags); 7026 } 7027 static FORCEINLINE HRESULT IFolderView2_InvokeVerbOnSelection(IFolderView2* This,LPCSTR pszVerb) { 7028 return This->lpVtbl->InvokeVerbOnSelection(This,pszVerb); 7029 } 7030 static FORCEINLINE HRESULT IFolderView2_SetViewModeAndIconSize(IFolderView2* This,FOLDERVIEWMODE uViewMode,int iImageSize) { 7031 return This->lpVtbl->SetViewModeAndIconSize(This,uViewMode,iImageSize); 7032 } 7033 static FORCEINLINE HRESULT IFolderView2_GetViewModeAndIconSize(IFolderView2* This,FOLDERVIEWMODE *puViewMode,int *piImageSize) { 7034 return This->lpVtbl->GetViewModeAndIconSize(This,puViewMode,piImageSize); 7035 } 7036 static FORCEINLINE HRESULT IFolderView2_SetGroupSubsetCount(IFolderView2* This,UINT cVisibleRows) { 7037 return This->lpVtbl->SetGroupSubsetCount(This,cVisibleRows); 7038 } 7039 static FORCEINLINE HRESULT IFolderView2_GetGroupSubsetCount(IFolderView2* This,UINT *pcVisibleRows) { 7040 return This->lpVtbl->GetGroupSubsetCount(This,pcVisibleRows); 7041 } 7042 static FORCEINLINE HRESULT IFolderView2_SetRedraw(IFolderView2* This,WINBOOL fRedrawOn) { 7043 return This->lpVtbl->SetRedraw(This,fRedrawOn); 7044 } 7045 static FORCEINLINE HRESULT IFolderView2_IsMoveInSameFolder(IFolderView2* This) { 7046 return This->lpVtbl->IsMoveInSameFolder(This); 7047 } 7048 static FORCEINLINE HRESULT IFolderView2_DoRename(IFolderView2* This) { 7049 return This->lpVtbl->DoRename(This); 7050 } 7051 #endif 7052 #endif 7053 7054 #endif 7055 7056 HRESULT STDMETHODCALLTYPE IFolderView2_SetGroupBy_Proxy( 7057 IFolderView2* This, 7058 REFPROPERTYKEY key, 7059 WINBOOL fAscending); 7060 void __RPC_STUB IFolderView2_SetGroupBy_Stub( 7061 IRpcStubBuffer* This, 7062 IRpcChannelBuffer* pRpcChannelBuffer, 7063 PRPC_MESSAGE pRpcMessage, 7064 DWORD* pdwStubPhase); 7065 HRESULT STDMETHODCALLTYPE IFolderView2_RemoteGetGroupBy_Proxy( 7066 IFolderView2* This, 7067 PROPERTYKEY *pkey, 7068 WINBOOL *pfAscending); 7069 void __RPC_STUB IFolderView2_RemoteGetGroupBy_Stub( 7070 IRpcStubBuffer* This, 7071 IRpcChannelBuffer* pRpcChannelBuffer, 7072 PRPC_MESSAGE pRpcMessage, 7073 DWORD* pdwStubPhase); 7074 HRESULT STDMETHODCALLTYPE IFolderView2_SetViewProperty_Proxy( 7075 IFolderView2* This, 7076 PCUITEMID_CHILD pidl, 7077 REFPROPERTYKEY propkey, 7078 REFPROPVARIANT propvar); 7079 void __RPC_STUB IFolderView2_SetViewProperty_Stub( 7080 IRpcStubBuffer* This, 7081 IRpcChannelBuffer* pRpcChannelBuffer, 7082 PRPC_MESSAGE pRpcMessage, 7083 DWORD* pdwStubPhase); 7084 HRESULT STDMETHODCALLTYPE IFolderView2_GetViewProperty_Proxy( 7085 IFolderView2* This, 7086 PCUITEMID_CHILD pidl, 7087 REFPROPERTYKEY propkey, 7088 PROPVARIANT *ppropvar); 7089 void __RPC_STUB IFolderView2_GetViewProperty_Stub( 7090 IRpcStubBuffer* This, 7091 IRpcChannelBuffer* pRpcChannelBuffer, 7092 PRPC_MESSAGE pRpcMessage, 7093 DWORD* pdwStubPhase); 7094 HRESULT STDMETHODCALLTYPE IFolderView2_SetTileViewProperties_Proxy( 7095 IFolderView2* This, 7096 PCUITEMID_CHILD pidl, 7097 LPCWSTR pszPropList); 7098 void __RPC_STUB IFolderView2_SetTileViewProperties_Stub( 7099 IRpcStubBuffer* This, 7100 IRpcChannelBuffer* pRpcChannelBuffer, 7101 PRPC_MESSAGE pRpcMessage, 7102 DWORD* pdwStubPhase); 7103 HRESULT STDMETHODCALLTYPE IFolderView2_SetExtendedTileViewProperties_Proxy( 7104 IFolderView2* This, 7105 PCUITEMID_CHILD pidl, 7106 LPCWSTR pszPropList); 7107 void __RPC_STUB IFolderView2_SetExtendedTileViewProperties_Stub( 7108 IRpcStubBuffer* This, 7109 IRpcChannelBuffer* pRpcChannelBuffer, 7110 PRPC_MESSAGE pRpcMessage, 7111 DWORD* pdwStubPhase); 7112 HRESULT STDMETHODCALLTYPE IFolderView2_SetText_Proxy( 7113 IFolderView2* This, 7114 FVTEXTTYPE iType, 7115 LPCWSTR pwszText); 7116 void __RPC_STUB IFolderView2_SetText_Stub( 7117 IRpcStubBuffer* This, 7118 IRpcChannelBuffer* pRpcChannelBuffer, 7119 PRPC_MESSAGE pRpcMessage, 7120 DWORD* pdwStubPhase); 7121 HRESULT STDMETHODCALLTYPE IFolderView2_SetCurrentFolderFlags_Proxy( 7122 IFolderView2* This, 7123 DWORD dwMask, 7124 DWORD dwFlags); 7125 void __RPC_STUB IFolderView2_SetCurrentFolderFlags_Stub( 7126 IRpcStubBuffer* This, 7127 IRpcChannelBuffer* pRpcChannelBuffer, 7128 PRPC_MESSAGE pRpcMessage, 7129 DWORD* pdwStubPhase); 7130 HRESULT STDMETHODCALLTYPE IFolderView2_GetCurrentFolderFlags_Proxy( 7131 IFolderView2* This, 7132 DWORD *pdwFlags); 7133 void __RPC_STUB IFolderView2_GetCurrentFolderFlags_Stub( 7134 IRpcStubBuffer* This, 7135 IRpcChannelBuffer* pRpcChannelBuffer, 7136 PRPC_MESSAGE pRpcMessage, 7137 DWORD* pdwStubPhase); 7138 HRESULT STDMETHODCALLTYPE IFolderView2_GetSortColumnCount_Proxy( 7139 IFolderView2* This, 7140 int *pcColumns); 7141 void __RPC_STUB IFolderView2_GetSortColumnCount_Stub( 7142 IRpcStubBuffer* This, 7143 IRpcChannelBuffer* pRpcChannelBuffer, 7144 PRPC_MESSAGE pRpcMessage, 7145 DWORD* pdwStubPhase); 7146 HRESULT STDMETHODCALLTYPE IFolderView2_SetSortColumns_Proxy( 7147 IFolderView2* This, 7148 const SORTCOLUMN *rgSortColumns, 7149 int cColumns); 7150 void __RPC_STUB IFolderView2_SetSortColumns_Stub( 7151 IRpcStubBuffer* This, 7152 IRpcChannelBuffer* pRpcChannelBuffer, 7153 PRPC_MESSAGE pRpcMessage, 7154 DWORD* pdwStubPhase); 7155 HRESULT STDMETHODCALLTYPE IFolderView2_GetSortColumns_Proxy( 7156 IFolderView2* This, 7157 SORTCOLUMN *rgSortColumns, 7158 int cColumns); 7159 void __RPC_STUB IFolderView2_GetSortColumns_Stub( 7160 IRpcStubBuffer* This, 7161 IRpcChannelBuffer* pRpcChannelBuffer, 7162 PRPC_MESSAGE pRpcMessage, 7163 DWORD* pdwStubPhase); 7164 HRESULT STDMETHODCALLTYPE IFolderView2_GetItem_Proxy( 7165 IFolderView2* This, 7166 int iItem, 7167 REFIID riid, 7168 void **ppv); 7169 void __RPC_STUB IFolderView2_GetItem_Stub( 7170 IRpcStubBuffer* This, 7171 IRpcChannelBuffer* pRpcChannelBuffer, 7172 PRPC_MESSAGE pRpcMessage, 7173 DWORD* pdwStubPhase); 7174 HRESULT STDMETHODCALLTYPE IFolderView2_GetVisibleItem_Proxy( 7175 IFolderView2* This, 7176 int iStart, 7177 WINBOOL fPrevious, 7178 int *piItem); 7179 void __RPC_STUB IFolderView2_GetVisibleItem_Stub( 7180 IRpcStubBuffer* This, 7181 IRpcChannelBuffer* pRpcChannelBuffer, 7182 PRPC_MESSAGE pRpcMessage, 7183 DWORD* pdwStubPhase); 7184 HRESULT STDMETHODCALLTYPE IFolderView2_GetSelectedItem_Proxy( 7185 IFolderView2* This, 7186 int iStart, 7187 int *piItem); 7188 void __RPC_STUB IFolderView2_GetSelectedItem_Stub( 7189 IRpcStubBuffer* This, 7190 IRpcChannelBuffer* pRpcChannelBuffer, 7191 PRPC_MESSAGE pRpcMessage, 7192 DWORD* pdwStubPhase); 7193 HRESULT STDMETHODCALLTYPE IFolderView2_GetSelection_Proxy( 7194 IFolderView2* This, 7195 WINBOOL fNoneImpliesFolder, 7196 IShellItemArray **ppsia); 7197 void __RPC_STUB IFolderView2_GetSelection_Stub( 7198 IRpcStubBuffer* This, 7199 IRpcChannelBuffer* pRpcChannelBuffer, 7200 PRPC_MESSAGE pRpcMessage, 7201 DWORD* pdwStubPhase); 7202 HRESULT STDMETHODCALLTYPE IFolderView2_GetSelectionState_Proxy( 7203 IFolderView2* This, 7204 PCUITEMID_CHILD pidl, 7205 DWORD *pdwFlags); 7206 void __RPC_STUB IFolderView2_GetSelectionState_Stub( 7207 IRpcStubBuffer* This, 7208 IRpcChannelBuffer* pRpcChannelBuffer, 7209 PRPC_MESSAGE pRpcMessage, 7210 DWORD* pdwStubPhase); 7211 HRESULT STDMETHODCALLTYPE IFolderView2_InvokeVerbOnSelection_Proxy( 7212 IFolderView2* This, 7213 LPCSTR pszVerb); 7214 void __RPC_STUB IFolderView2_InvokeVerbOnSelection_Stub( 7215 IRpcStubBuffer* This, 7216 IRpcChannelBuffer* pRpcChannelBuffer, 7217 PRPC_MESSAGE pRpcMessage, 7218 DWORD* pdwStubPhase); 7219 HRESULT STDMETHODCALLTYPE IFolderView2_SetViewModeAndIconSize_Proxy( 7220 IFolderView2* This, 7221 FOLDERVIEWMODE uViewMode, 7222 int iImageSize); 7223 void __RPC_STUB IFolderView2_SetViewModeAndIconSize_Stub( 7224 IRpcStubBuffer* This, 7225 IRpcChannelBuffer* pRpcChannelBuffer, 7226 PRPC_MESSAGE pRpcMessage, 7227 DWORD* pdwStubPhase); 7228 HRESULT STDMETHODCALLTYPE IFolderView2_GetViewModeAndIconSize_Proxy( 7229 IFolderView2* This, 7230 FOLDERVIEWMODE *puViewMode, 7231 int *piImageSize); 7232 void __RPC_STUB IFolderView2_GetViewModeAndIconSize_Stub( 7233 IRpcStubBuffer* This, 7234 IRpcChannelBuffer* pRpcChannelBuffer, 7235 PRPC_MESSAGE pRpcMessage, 7236 DWORD* pdwStubPhase); 7237 HRESULT STDMETHODCALLTYPE IFolderView2_SetGroupSubsetCount_Proxy( 7238 IFolderView2* This, 7239 UINT cVisibleRows); 7240 void __RPC_STUB IFolderView2_SetGroupSubsetCount_Stub( 7241 IRpcStubBuffer* This, 7242 IRpcChannelBuffer* pRpcChannelBuffer, 7243 PRPC_MESSAGE pRpcMessage, 7244 DWORD* pdwStubPhase); 7245 HRESULT STDMETHODCALLTYPE IFolderView2_GetGroupSubsetCount_Proxy( 7246 IFolderView2* This, 7247 UINT *pcVisibleRows); 7248 void __RPC_STUB IFolderView2_GetGroupSubsetCount_Stub( 7249 IRpcStubBuffer* This, 7250 IRpcChannelBuffer* pRpcChannelBuffer, 7251 PRPC_MESSAGE pRpcMessage, 7252 DWORD* pdwStubPhase); 7253 HRESULT STDMETHODCALLTYPE IFolderView2_SetRedraw_Proxy( 7254 IFolderView2* This, 7255 WINBOOL fRedrawOn); 7256 void __RPC_STUB IFolderView2_SetRedraw_Stub( 7257 IRpcStubBuffer* This, 7258 IRpcChannelBuffer* pRpcChannelBuffer, 7259 PRPC_MESSAGE pRpcMessage, 7260 DWORD* pdwStubPhase); 7261 HRESULT STDMETHODCALLTYPE IFolderView2_IsMoveInSameFolder_Proxy( 7262 IFolderView2* This); 7263 void __RPC_STUB IFolderView2_IsMoveInSameFolder_Stub( 7264 IRpcStubBuffer* This, 7265 IRpcChannelBuffer* pRpcChannelBuffer, 7266 PRPC_MESSAGE pRpcMessage, 7267 DWORD* pdwStubPhase); 7268 HRESULT STDMETHODCALLTYPE IFolderView2_DoRename_Proxy( 7269 IFolderView2* This); 7270 void __RPC_STUB IFolderView2_DoRename_Stub( 7271 IRpcStubBuffer* This, 7272 IRpcChannelBuffer* pRpcChannelBuffer, 7273 PRPC_MESSAGE pRpcMessage, 7274 DWORD* pdwStubPhase); 7275 HRESULT CALLBACK IFolderView2_GetGroupBy_Proxy( 7276 IFolderView2* This, 7277 PROPERTYKEY *pkey, 7278 WINBOOL *pfAscending); 7279 HRESULT __RPC_STUB IFolderView2_GetGroupBy_Stub( 7280 IFolderView2* This, 7281 PROPERTYKEY *pkey, 7282 WINBOOL *pfAscending); 7283 7284 #endif /* __IFolderView2_INTERFACE_DEFINED__ */ 7285 7286 7287 #if NTDDI_VERSION >= NTDDI_VISTA 7288 /***************************************************************************** 7289 * IFolderViewSettings interface 7290 */ 7291 #ifndef __IFolderViewSettings_INTERFACE_DEFINED__ 7292 #define __IFolderViewSettings_INTERFACE_DEFINED__ 7293 7294 DEFINE_GUID(IID_IFolderViewSettings, 0xae8c987d, 0x8797, 0x4ed3, 0xbe,0x72, 0x2a,0x47,0xdd,0x93,0x8d,0xb0); 7295 #if defined(__cplusplus) && !defined(CINTERFACE) 7296 MIDL_INTERFACE("ae8c987d-8797-4ed3-be72-2a47dd938db0") 7297 IFolderViewSettings : public IUnknown 7298 { 7299 virtual HRESULT STDMETHODCALLTYPE GetColumnPropertyList( 7300 REFIID riid, 7301 void **ppv) = 0; 7302 7303 virtual HRESULT STDMETHODCALLTYPE GetGroupByProperty( 7304 PROPERTYKEY *pkey, 7305 WINBOOL *pfGroupAscending) = 0; 7306 7307 virtual HRESULT STDMETHODCALLTYPE GetViewMode( 7308 FOLDERLOGICALVIEWMODE *plvm) = 0; 7309 7310 virtual HRESULT STDMETHODCALLTYPE GetIconSize( 7311 UINT *puIconSize) = 0; 7312 7313 virtual HRESULT STDMETHODCALLTYPE GetFolderFlags( 7314 FOLDERFLAGS *pfolderMask, 7315 FOLDERFLAGS *pfolderFlags) = 0; 7316 7317 virtual HRESULT STDMETHODCALLTYPE GetSortColumns( 7318 SORTCOLUMN *rgSortColumns, 7319 UINT cColumnsIn, 7320 UINT *pcColumnsOut) = 0; 7321 7322 virtual HRESULT STDMETHODCALLTYPE GetGroupSubsetCount( 7323 UINT *pcVisibleRows) = 0; 7324 7325 }; 7326 #ifdef __CRT_UUID_DECL 7327 __CRT_UUID_DECL(IFolderViewSettings, 0xae8c987d, 0x8797, 0x4ed3, 0xbe,0x72, 0x2a,0x47,0xdd,0x93,0x8d,0xb0) 7328 #endif 7329 #else 7330 typedef struct IFolderViewSettingsVtbl { 7331 BEGIN_INTERFACE 7332 7333 /*** IUnknown methods ***/ 7334 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7335 IFolderViewSettings* This, 7336 REFIID riid, 7337 void **ppvObject); 7338 7339 ULONG (STDMETHODCALLTYPE *AddRef)( 7340 IFolderViewSettings* This); 7341 7342 ULONG (STDMETHODCALLTYPE *Release)( 7343 IFolderViewSettings* This); 7344 7345 /*** IFolderViewSettings methods ***/ 7346 HRESULT (STDMETHODCALLTYPE *GetColumnPropertyList)( 7347 IFolderViewSettings* This, 7348 REFIID riid, 7349 void **ppv); 7350 7351 HRESULT (STDMETHODCALLTYPE *GetGroupByProperty)( 7352 IFolderViewSettings* This, 7353 PROPERTYKEY *pkey, 7354 WINBOOL *pfGroupAscending); 7355 7356 HRESULT (STDMETHODCALLTYPE *GetViewMode)( 7357 IFolderViewSettings* This, 7358 FOLDERLOGICALVIEWMODE *plvm); 7359 7360 HRESULT (STDMETHODCALLTYPE *GetIconSize)( 7361 IFolderViewSettings* This, 7362 UINT *puIconSize); 7363 7364 HRESULT (STDMETHODCALLTYPE *GetFolderFlags)( 7365 IFolderViewSettings* This, 7366 FOLDERFLAGS *pfolderMask, 7367 FOLDERFLAGS *pfolderFlags); 7368 7369 HRESULT (STDMETHODCALLTYPE *GetSortColumns)( 7370 IFolderViewSettings* This, 7371 SORTCOLUMN *rgSortColumns, 7372 UINT cColumnsIn, 7373 UINT *pcColumnsOut); 7374 7375 HRESULT (STDMETHODCALLTYPE *GetGroupSubsetCount)( 7376 IFolderViewSettings* This, 7377 UINT *pcVisibleRows); 7378 7379 END_INTERFACE 7380 } IFolderViewSettingsVtbl; 7381 interface IFolderViewSettings { 7382 CONST_VTBL IFolderViewSettingsVtbl* lpVtbl; 7383 }; 7384 7385 #ifdef COBJMACROS 7386 #ifndef WIDL_C_INLINE_WRAPPERS 7387 /*** IUnknown methods ***/ 7388 #define IFolderViewSettings_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7389 #define IFolderViewSettings_AddRef(This) (This)->lpVtbl->AddRef(This) 7390 #define IFolderViewSettings_Release(This) (This)->lpVtbl->Release(This) 7391 /*** IFolderViewSettings methods ***/ 7392 #define IFolderViewSettings_GetColumnPropertyList(This,riid,ppv) (This)->lpVtbl->GetColumnPropertyList(This,riid,ppv) 7393 #define IFolderViewSettings_GetGroupByProperty(This,pkey,pfGroupAscending) (This)->lpVtbl->GetGroupByProperty(This,pkey,pfGroupAscending) 7394 #define IFolderViewSettings_GetViewMode(This,plvm) (This)->lpVtbl->GetViewMode(This,plvm) 7395 #define IFolderViewSettings_GetIconSize(This,puIconSize) (This)->lpVtbl->GetIconSize(This,puIconSize) 7396 #define IFolderViewSettings_GetFolderFlags(This,pfolderMask,pfolderFlags) (This)->lpVtbl->GetFolderFlags(This,pfolderMask,pfolderFlags) 7397 #define IFolderViewSettings_GetSortColumns(This,rgSortColumns,cColumnsIn,pcColumnsOut) (This)->lpVtbl->GetSortColumns(This,rgSortColumns,cColumnsIn,pcColumnsOut) 7398 #define IFolderViewSettings_GetGroupSubsetCount(This,pcVisibleRows) (This)->lpVtbl->GetGroupSubsetCount(This,pcVisibleRows) 7399 #else 7400 /*** IUnknown methods ***/ 7401 static FORCEINLINE HRESULT IFolderViewSettings_QueryInterface(IFolderViewSettings* This,REFIID riid,void **ppvObject) { 7402 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7403 } 7404 static FORCEINLINE ULONG IFolderViewSettings_AddRef(IFolderViewSettings* This) { 7405 return This->lpVtbl->AddRef(This); 7406 } 7407 static FORCEINLINE ULONG IFolderViewSettings_Release(IFolderViewSettings* This) { 7408 return This->lpVtbl->Release(This); 7409 } 7410 /*** IFolderViewSettings methods ***/ 7411 static FORCEINLINE HRESULT IFolderViewSettings_GetColumnPropertyList(IFolderViewSettings* This,REFIID riid,void **ppv) { 7412 return This->lpVtbl->GetColumnPropertyList(This,riid,ppv); 7413 } 7414 static FORCEINLINE HRESULT IFolderViewSettings_GetGroupByProperty(IFolderViewSettings* This,PROPERTYKEY *pkey,WINBOOL *pfGroupAscending) { 7415 return This->lpVtbl->GetGroupByProperty(This,pkey,pfGroupAscending); 7416 } 7417 static FORCEINLINE HRESULT IFolderViewSettings_GetViewMode(IFolderViewSettings* This,FOLDERLOGICALVIEWMODE *plvm) { 7418 return This->lpVtbl->GetViewMode(This,plvm); 7419 } 7420 static FORCEINLINE HRESULT IFolderViewSettings_GetIconSize(IFolderViewSettings* This,UINT *puIconSize) { 7421 return This->lpVtbl->GetIconSize(This,puIconSize); 7422 } 7423 static FORCEINLINE HRESULT IFolderViewSettings_GetFolderFlags(IFolderViewSettings* This,FOLDERFLAGS *pfolderMask,FOLDERFLAGS *pfolderFlags) { 7424 return This->lpVtbl->GetFolderFlags(This,pfolderMask,pfolderFlags); 7425 } 7426 static FORCEINLINE HRESULT IFolderViewSettings_GetSortColumns(IFolderViewSettings* This,SORTCOLUMN *rgSortColumns,UINT cColumnsIn,UINT *pcColumnsOut) { 7427 return This->lpVtbl->GetSortColumns(This,rgSortColumns,cColumnsIn,pcColumnsOut); 7428 } 7429 static FORCEINLINE HRESULT IFolderViewSettings_GetGroupSubsetCount(IFolderViewSettings* This,UINT *pcVisibleRows) { 7430 return This->lpVtbl->GetGroupSubsetCount(This,pcVisibleRows); 7431 } 7432 #endif 7433 #endif 7434 7435 #endif 7436 7437 HRESULT STDMETHODCALLTYPE IFolderViewSettings_GetColumnPropertyList_Proxy( 7438 IFolderViewSettings* This, 7439 REFIID riid, 7440 void **ppv); 7441 void __RPC_STUB IFolderViewSettings_GetColumnPropertyList_Stub( 7442 IRpcStubBuffer* This, 7443 IRpcChannelBuffer* pRpcChannelBuffer, 7444 PRPC_MESSAGE pRpcMessage, 7445 DWORD* pdwStubPhase); 7446 HRESULT STDMETHODCALLTYPE IFolderViewSettings_GetGroupByProperty_Proxy( 7447 IFolderViewSettings* This, 7448 PROPERTYKEY *pkey, 7449 WINBOOL *pfGroupAscending); 7450 void __RPC_STUB IFolderViewSettings_GetGroupByProperty_Stub( 7451 IRpcStubBuffer* This, 7452 IRpcChannelBuffer* pRpcChannelBuffer, 7453 PRPC_MESSAGE pRpcMessage, 7454 DWORD* pdwStubPhase); 7455 HRESULT STDMETHODCALLTYPE IFolderViewSettings_GetViewMode_Proxy( 7456 IFolderViewSettings* This, 7457 FOLDERLOGICALVIEWMODE *plvm); 7458 void __RPC_STUB IFolderViewSettings_GetViewMode_Stub( 7459 IRpcStubBuffer* This, 7460 IRpcChannelBuffer* pRpcChannelBuffer, 7461 PRPC_MESSAGE pRpcMessage, 7462 DWORD* pdwStubPhase); 7463 HRESULT STDMETHODCALLTYPE IFolderViewSettings_GetIconSize_Proxy( 7464 IFolderViewSettings* This, 7465 UINT *puIconSize); 7466 void __RPC_STUB IFolderViewSettings_GetIconSize_Stub( 7467 IRpcStubBuffer* This, 7468 IRpcChannelBuffer* pRpcChannelBuffer, 7469 PRPC_MESSAGE pRpcMessage, 7470 DWORD* pdwStubPhase); 7471 HRESULT STDMETHODCALLTYPE IFolderViewSettings_GetFolderFlags_Proxy( 7472 IFolderViewSettings* This, 7473 FOLDERFLAGS *pfolderMask, 7474 FOLDERFLAGS *pfolderFlags); 7475 void __RPC_STUB IFolderViewSettings_GetFolderFlags_Stub( 7476 IRpcStubBuffer* This, 7477 IRpcChannelBuffer* pRpcChannelBuffer, 7478 PRPC_MESSAGE pRpcMessage, 7479 DWORD* pdwStubPhase); 7480 HRESULT STDMETHODCALLTYPE IFolderViewSettings_GetSortColumns_Proxy( 7481 IFolderViewSettings* This, 7482 SORTCOLUMN *rgSortColumns, 7483 UINT cColumnsIn, 7484 UINT *pcColumnsOut); 7485 void __RPC_STUB IFolderViewSettings_GetSortColumns_Stub( 7486 IRpcStubBuffer* This, 7487 IRpcChannelBuffer* pRpcChannelBuffer, 7488 PRPC_MESSAGE pRpcMessage, 7489 DWORD* pdwStubPhase); 7490 HRESULT STDMETHODCALLTYPE IFolderViewSettings_GetGroupSubsetCount_Proxy( 7491 IFolderViewSettings* This, 7492 UINT *pcVisibleRows); 7493 void __RPC_STUB IFolderViewSettings_GetGroupSubsetCount_Stub( 7494 IRpcStubBuffer* This, 7495 IRpcChannelBuffer* pRpcChannelBuffer, 7496 PRPC_MESSAGE pRpcMessage, 7497 DWORD* pdwStubPhase); 7498 7499 #endif /* __IFolderViewSettings_INTERFACE_DEFINED__ */ 7500 7501 #endif 7502 #endif 7503 7504 #if _WIN32_IE >= _WIN32_IE_IE70 7505 /***************************************************************************** 7506 * IPreviewHandlerVisuals interface 7507 */ 7508 #ifndef __IPreviewHandlerVisuals_INTERFACE_DEFINED__ 7509 #define __IPreviewHandlerVisuals_INTERFACE_DEFINED__ 7510 7511 DEFINE_GUID(IID_IPreviewHandlerVisuals, 0x196bf9a5, 0xb346, 0x4ef0, 0xaa,0x1e, 0x5d,0xcd,0xb7,0x67,0x68,0xb1); 7512 #if defined(__cplusplus) && !defined(CINTERFACE) 7513 MIDL_INTERFACE("196bf9a5-b346-4ef0-aa1e-5dcdb76768b1") 7514 IPreviewHandlerVisuals : public IUnknown 7515 { 7516 virtual HRESULT STDMETHODCALLTYPE SetBackgroundColor( 7517 COLORREF color) = 0; 7518 7519 virtual HRESULT STDMETHODCALLTYPE SetFont( 7520 const LOGFONTW *plf) = 0; 7521 7522 virtual HRESULT STDMETHODCALLTYPE SetTextColor( 7523 COLORREF color) = 0; 7524 7525 }; 7526 #ifdef __CRT_UUID_DECL 7527 __CRT_UUID_DECL(IPreviewHandlerVisuals, 0x196bf9a5, 0xb346, 0x4ef0, 0xaa,0x1e, 0x5d,0xcd,0xb7,0x67,0x68,0xb1) 7528 #endif 7529 #else 7530 typedef struct IPreviewHandlerVisualsVtbl { 7531 BEGIN_INTERFACE 7532 7533 /*** IUnknown methods ***/ 7534 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7535 IPreviewHandlerVisuals* This, 7536 REFIID riid, 7537 void **ppvObject); 7538 7539 ULONG (STDMETHODCALLTYPE *AddRef)( 7540 IPreviewHandlerVisuals* This); 7541 7542 ULONG (STDMETHODCALLTYPE *Release)( 7543 IPreviewHandlerVisuals* This); 7544 7545 /*** IPreviewHandlerVisuals methods ***/ 7546 HRESULT (STDMETHODCALLTYPE *SetBackgroundColor)( 7547 IPreviewHandlerVisuals* This, 7548 COLORREF color); 7549 7550 HRESULT (STDMETHODCALLTYPE *SetFont)( 7551 IPreviewHandlerVisuals* This, 7552 const LOGFONTW *plf); 7553 7554 HRESULT (STDMETHODCALLTYPE *SetTextColor)( 7555 IPreviewHandlerVisuals* This, 7556 COLORREF color); 7557 7558 END_INTERFACE 7559 } IPreviewHandlerVisualsVtbl; 7560 interface IPreviewHandlerVisuals { 7561 CONST_VTBL IPreviewHandlerVisualsVtbl* lpVtbl; 7562 }; 7563 7564 #ifdef COBJMACROS 7565 #ifndef WIDL_C_INLINE_WRAPPERS 7566 /*** IUnknown methods ***/ 7567 #define IPreviewHandlerVisuals_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7568 #define IPreviewHandlerVisuals_AddRef(This) (This)->lpVtbl->AddRef(This) 7569 #define IPreviewHandlerVisuals_Release(This) (This)->lpVtbl->Release(This) 7570 /*** IPreviewHandlerVisuals methods ***/ 7571 #define IPreviewHandlerVisuals_SetBackgroundColor(This,color) (This)->lpVtbl->SetBackgroundColor(This,color) 7572 #define IPreviewHandlerVisuals_SetFont(This,plf) (This)->lpVtbl->SetFont(This,plf) 7573 #define IPreviewHandlerVisuals_SetTextColor(This,color) (This)->lpVtbl->SetTextColor(This,color) 7574 #else 7575 /*** IUnknown methods ***/ 7576 static FORCEINLINE HRESULT IPreviewHandlerVisuals_QueryInterface(IPreviewHandlerVisuals* This,REFIID riid,void **ppvObject) { 7577 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7578 } 7579 static FORCEINLINE ULONG IPreviewHandlerVisuals_AddRef(IPreviewHandlerVisuals* This) { 7580 return This->lpVtbl->AddRef(This); 7581 } 7582 static FORCEINLINE ULONG IPreviewHandlerVisuals_Release(IPreviewHandlerVisuals* This) { 7583 return This->lpVtbl->Release(This); 7584 } 7585 /*** IPreviewHandlerVisuals methods ***/ 7586 static FORCEINLINE HRESULT IPreviewHandlerVisuals_SetBackgroundColor(IPreviewHandlerVisuals* This,COLORREF color) { 7587 return This->lpVtbl->SetBackgroundColor(This,color); 7588 } 7589 static FORCEINLINE HRESULT IPreviewHandlerVisuals_SetFont(IPreviewHandlerVisuals* This,const LOGFONTW *plf) { 7590 return This->lpVtbl->SetFont(This,plf); 7591 } 7592 static FORCEINLINE HRESULT IPreviewHandlerVisuals_SetTextColor(IPreviewHandlerVisuals* This,COLORREF color) { 7593 return This->lpVtbl->SetTextColor(This,color); 7594 } 7595 #endif 7596 #endif 7597 7598 #endif 7599 7600 HRESULT STDMETHODCALLTYPE IPreviewHandlerVisuals_SetBackgroundColor_Proxy( 7601 IPreviewHandlerVisuals* This, 7602 COLORREF color); 7603 void __RPC_STUB IPreviewHandlerVisuals_SetBackgroundColor_Stub( 7604 IRpcStubBuffer* This, 7605 IRpcChannelBuffer* pRpcChannelBuffer, 7606 PRPC_MESSAGE pRpcMessage, 7607 DWORD* pdwStubPhase); 7608 HRESULT STDMETHODCALLTYPE IPreviewHandlerVisuals_SetFont_Proxy( 7609 IPreviewHandlerVisuals* This, 7610 const LOGFONTW *plf); 7611 void __RPC_STUB IPreviewHandlerVisuals_SetFont_Stub( 7612 IRpcStubBuffer* This, 7613 IRpcChannelBuffer* pRpcChannelBuffer, 7614 PRPC_MESSAGE pRpcMessage, 7615 DWORD* pdwStubPhase); 7616 HRESULT STDMETHODCALLTYPE IPreviewHandlerVisuals_SetTextColor_Proxy( 7617 IPreviewHandlerVisuals* This, 7618 COLORREF color); 7619 void __RPC_STUB IPreviewHandlerVisuals_SetTextColor_Stub( 7620 IRpcStubBuffer* This, 7621 IRpcChannelBuffer* pRpcChannelBuffer, 7622 PRPC_MESSAGE pRpcMessage, 7623 DWORD* pdwStubPhase); 7624 7625 #endif /* __IPreviewHandlerVisuals_INTERFACE_DEFINED__ */ 7626 7627 7628 /***************************************************************************** 7629 * IVisualProperties interface 7630 */ 7631 #ifndef __IVisualProperties_INTERFACE_DEFINED__ 7632 #define __IVisualProperties_INTERFACE_DEFINED__ 7633 7634 typedef enum VPWATERMARKFLAGS { 7635 VPWF_DEFAULT = 0x0, 7636 VPWF_ALPHABLEND = 0x1 7637 } VPWATERMARKFLAGS; 7638 7639 typedef enum VPCOLORFLAGS { 7640 VPCF_TEXT = 1, 7641 VPCF_BACKGROUND = 2, 7642 VPCF_SORTCOLUMN = 3, 7643 VPCF_SUBTEXT = 4, 7644 VPCF_TEXTBACKGROUND = 5 7645 } VPCOLORFLAGS; 7646 7647 DEFINE_ENUM_FLAG_OPERATORS(VPWATERMARKFLAGS) 7648 7649 DEFINE_GUID(IID_IVisualProperties, 0xe693cf68, 0xd967, 0x4112, 0x87,0x63, 0x99,0x17,0x2a,0xee,0x5e,0x5a); 7650 #if defined(__cplusplus) && !defined(CINTERFACE) 7651 MIDL_INTERFACE("e693cf68-d967-4112-8763-99172aee5e5a") 7652 IVisualProperties : public IUnknown 7653 { 7654 virtual HRESULT STDMETHODCALLTYPE SetWatermark( 7655 HBITMAP hbmp, 7656 VPWATERMARKFLAGS vpwf) = 0; 7657 7658 virtual HRESULT STDMETHODCALLTYPE SetColor( 7659 VPCOLORFLAGS vpcf, 7660 COLORREF cr) = 0; 7661 7662 virtual HRESULT STDMETHODCALLTYPE GetColor( 7663 VPCOLORFLAGS vpcf, 7664 COLORREF *pcr) = 0; 7665 7666 virtual HRESULT STDMETHODCALLTYPE SetItemHeight( 7667 int cyItemInPixels) = 0; 7668 7669 virtual HRESULT STDMETHODCALLTYPE GetItemHeight( 7670 int *cyItemInPixels) = 0; 7671 7672 virtual HRESULT STDMETHODCALLTYPE SetFont( 7673 const LOGFONTW *plf, 7674 WINBOOL bRedraw) = 0; 7675 7676 virtual HRESULT STDMETHODCALLTYPE GetFont( 7677 LOGFONTW *plf) = 0; 7678 7679 virtual HRESULT STDMETHODCALLTYPE SetTheme( 7680 LPCWSTR pszSubAppName, 7681 LPCWSTR pszSubIdList) = 0; 7682 7683 }; 7684 #ifdef __CRT_UUID_DECL 7685 __CRT_UUID_DECL(IVisualProperties, 0xe693cf68, 0xd967, 0x4112, 0x87,0x63, 0x99,0x17,0x2a,0xee,0x5e,0x5a) 7686 #endif 7687 #else 7688 typedef struct IVisualPropertiesVtbl { 7689 BEGIN_INTERFACE 7690 7691 /*** IUnknown methods ***/ 7692 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7693 IVisualProperties* This, 7694 REFIID riid, 7695 void **ppvObject); 7696 7697 ULONG (STDMETHODCALLTYPE *AddRef)( 7698 IVisualProperties* This); 7699 7700 ULONG (STDMETHODCALLTYPE *Release)( 7701 IVisualProperties* This); 7702 7703 /*** IVisualProperties methods ***/ 7704 HRESULT (STDMETHODCALLTYPE *SetWatermark)( 7705 IVisualProperties* This, 7706 HBITMAP hbmp, 7707 VPWATERMARKFLAGS vpwf); 7708 7709 HRESULT (STDMETHODCALLTYPE *SetColor)( 7710 IVisualProperties* This, 7711 VPCOLORFLAGS vpcf, 7712 COLORREF cr); 7713 7714 HRESULT (STDMETHODCALLTYPE *GetColor)( 7715 IVisualProperties* This, 7716 VPCOLORFLAGS vpcf, 7717 COLORREF *pcr); 7718 7719 HRESULT (STDMETHODCALLTYPE *SetItemHeight)( 7720 IVisualProperties* This, 7721 int cyItemInPixels); 7722 7723 HRESULT (STDMETHODCALLTYPE *GetItemHeight)( 7724 IVisualProperties* This, 7725 int *cyItemInPixels); 7726 7727 HRESULT (STDMETHODCALLTYPE *SetFont)( 7728 IVisualProperties* This, 7729 const LOGFONTW *plf, 7730 WINBOOL bRedraw); 7731 7732 HRESULT (STDMETHODCALLTYPE *GetFont)( 7733 IVisualProperties* This, 7734 LOGFONTW *plf); 7735 7736 HRESULT (STDMETHODCALLTYPE *SetTheme)( 7737 IVisualProperties* This, 7738 LPCWSTR pszSubAppName, 7739 LPCWSTR pszSubIdList); 7740 7741 END_INTERFACE 7742 } IVisualPropertiesVtbl; 7743 interface IVisualProperties { 7744 CONST_VTBL IVisualPropertiesVtbl* lpVtbl; 7745 }; 7746 7747 #ifdef COBJMACROS 7748 #ifndef WIDL_C_INLINE_WRAPPERS 7749 /*** IUnknown methods ***/ 7750 #define IVisualProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7751 #define IVisualProperties_AddRef(This) (This)->lpVtbl->AddRef(This) 7752 #define IVisualProperties_Release(This) (This)->lpVtbl->Release(This) 7753 /*** IVisualProperties methods ***/ 7754 #define IVisualProperties_SetWatermark(This,hbmp,vpwf) (This)->lpVtbl->SetWatermark(This,hbmp,vpwf) 7755 #define IVisualProperties_SetColor(This,vpcf,cr) (This)->lpVtbl->SetColor(This,vpcf,cr) 7756 #define IVisualProperties_GetColor(This,vpcf,pcr) (This)->lpVtbl->GetColor(This,vpcf,pcr) 7757 #define IVisualProperties_SetItemHeight(This,cyItemInPixels) (This)->lpVtbl->SetItemHeight(This,cyItemInPixels) 7758 #define IVisualProperties_GetItemHeight(This,cyItemInPixels) (This)->lpVtbl->GetItemHeight(This,cyItemInPixels) 7759 #define IVisualProperties_SetFont(This,plf,bRedraw) (This)->lpVtbl->SetFont(This,plf,bRedraw) 7760 #define IVisualProperties_GetFont(This,plf) (This)->lpVtbl->GetFont(This,plf) 7761 #define IVisualProperties_SetTheme(This,pszSubAppName,pszSubIdList) (This)->lpVtbl->SetTheme(This,pszSubAppName,pszSubIdList) 7762 #else 7763 /*** IUnknown methods ***/ 7764 static FORCEINLINE HRESULT IVisualProperties_QueryInterface(IVisualProperties* This,REFIID riid,void **ppvObject) { 7765 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7766 } 7767 static FORCEINLINE ULONG IVisualProperties_AddRef(IVisualProperties* This) { 7768 return This->lpVtbl->AddRef(This); 7769 } 7770 static FORCEINLINE ULONG IVisualProperties_Release(IVisualProperties* This) { 7771 return This->lpVtbl->Release(This); 7772 } 7773 /*** IVisualProperties methods ***/ 7774 static FORCEINLINE HRESULT IVisualProperties_SetWatermark(IVisualProperties* This,HBITMAP hbmp,VPWATERMARKFLAGS vpwf) { 7775 return This->lpVtbl->SetWatermark(This,hbmp,vpwf); 7776 } 7777 static FORCEINLINE HRESULT IVisualProperties_SetColor(IVisualProperties* This,VPCOLORFLAGS vpcf,COLORREF cr) { 7778 return This->lpVtbl->SetColor(This,vpcf,cr); 7779 } 7780 static FORCEINLINE HRESULT IVisualProperties_GetColor(IVisualProperties* This,VPCOLORFLAGS vpcf,COLORREF *pcr) { 7781 return This->lpVtbl->GetColor(This,vpcf,pcr); 7782 } 7783 static FORCEINLINE HRESULT IVisualProperties_SetItemHeight(IVisualProperties* This,int cyItemInPixels) { 7784 return This->lpVtbl->SetItemHeight(This,cyItemInPixels); 7785 } 7786 static FORCEINLINE HRESULT IVisualProperties_GetItemHeight(IVisualProperties* This,int *cyItemInPixels) { 7787 return This->lpVtbl->GetItemHeight(This,cyItemInPixels); 7788 } 7789 static FORCEINLINE HRESULT IVisualProperties_SetFont(IVisualProperties* This,const LOGFONTW *plf,WINBOOL bRedraw) { 7790 return This->lpVtbl->SetFont(This,plf,bRedraw); 7791 } 7792 static FORCEINLINE HRESULT IVisualProperties_GetFont(IVisualProperties* This,LOGFONTW *plf) { 7793 return This->lpVtbl->GetFont(This,plf); 7794 } 7795 static FORCEINLINE HRESULT IVisualProperties_SetTheme(IVisualProperties* This,LPCWSTR pszSubAppName,LPCWSTR pszSubIdList) { 7796 return This->lpVtbl->SetTheme(This,pszSubAppName,pszSubIdList); 7797 } 7798 #endif 7799 #endif 7800 7801 #endif 7802 7803 HRESULT STDMETHODCALLTYPE IVisualProperties_SetWatermark_Proxy( 7804 IVisualProperties* This, 7805 HBITMAP hbmp, 7806 VPWATERMARKFLAGS vpwf); 7807 void __RPC_STUB IVisualProperties_SetWatermark_Stub( 7808 IRpcStubBuffer* This, 7809 IRpcChannelBuffer* pRpcChannelBuffer, 7810 PRPC_MESSAGE pRpcMessage, 7811 DWORD* pdwStubPhase); 7812 HRESULT STDMETHODCALLTYPE IVisualProperties_SetColor_Proxy( 7813 IVisualProperties* This, 7814 VPCOLORFLAGS vpcf, 7815 COLORREF cr); 7816 void __RPC_STUB IVisualProperties_SetColor_Stub( 7817 IRpcStubBuffer* This, 7818 IRpcChannelBuffer* pRpcChannelBuffer, 7819 PRPC_MESSAGE pRpcMessage, 7820 DWORD* pdwStubPhase); 7821 HRESULT STDMETHODCALLTYPE IVisualProperties_GetColor_Proxy( 7822 IVisualProperties* This, 7823 VPCOLORFLAGS vpcf, 7824 COLORREF *pcr); 7825 void __RPC_STUB IVisualProperties_GetColor_Stub( 7826 IRpcStubBuffer* This, 7827 IRpcChannelBuffer* pRpcChannelBuffer, 7828 PRPC_MESSAGE pRpcMessage, 7829 DWORD* pdwStubPhase); 7830 HRESULT STDMETHODCALLTYPE IVisualProperties_SetItemHeight_Proxy( 7831 IVisualProperties* This, 7832 int cyItemInPixels); 7833 void __RPC_STUB IVisualProperties_SetItemHeight_Stub( 7834 IRpcStubBuffer* This, 7835 IRpcChannelBuffer* pRpcChannelBuffer, 7836 PRPC_MESSAGE pRpcMessage, 7837 DWORD* pdwStubPhase); 7838 HRESULT STDMETHODCALLTYPE IVisualProperties_GetItemHeight_Proxy( 7839 IVisualProperties* This, 7840 int *cyItemInPixels); 7841 void __RPC_STUB IVisualProperties_GetItemHeight_Stub( 7842 IRpcStubBuffer* This, 7843 IRpcChannelBuffer* pRpcChannelBuffer, 7844 PRPC_MESSAGE pRpcMessage, 7845 DWORD* pdwStubPhase); 7846 HRESULT STDMETHODCALLTYPE IVisualProperties_SetFont_Proxy( 7847 IVisualProperties* This, 7848 const LOGFONTW *plf, 7849 WINBOOL bRedraw); 7850 void __RPC_STUB IVisualProperties_SetFont_Stub( 7851 IRpcStubBuffer* This, 7852 IRpcChannelBuffer* pRpcChannelBuffer, 7853 PRPC_MESSAGE pRpcMessage, 7854 DWORD* pdwStubPhase); 7855 HRESULT STDMETHODCALLTYPE IVisualProperties_GetFont_Proxy( 7856 IVisualProperties* This, 7857 LOGFONTW *plf); 7858 void __RPC_STUB IVisualProperties_GetFont_Stub( 7859 IRpcStubBuffer* This, 7860 IRpcChannelBuffer* pRpcChannelBuffer, 7861 PRPC_MESSAGE pRpcMessage, 7862 DWORD* pdwStubPhase); 7863 HRESULT STDMETHODCALLTYPE IVisualProperties_SetTheme_Proxy( 7864 IVisualProperties* This, 7865 LPCWSTR pszSubAppName, 7866 LPCWSTR pszSubIdList); 7867 void __RPC_STUB IVisualProperties_SetTheme_Stub( 7868 IRpcStubBuffer* This, 7869 IRpcChannelBuffer* pRpcChannelBuffer, 7870 PRPC_MESSAGE pRpcMessage, 7871 DWORD* pdwStubPhase); 7872 7873 #endif /* __IVisualProperties_INTERFACE_DEFINED__ */ 7874 7875 #endif 7876 7877 #define CDBOSC_SETFOCUS 0x00000000 7878 #define CDBOSC_KILLFOCUS 0x00000001 7879 #define CDBOSC_SELCHANGE 0x00000002 7880 #define CDBOSC_RENAME 0x00000003 7881 #define CDBOSC_STATECHANGE 0x00000004 7882 7883 /***************************************************************************** 7884 * ICommDlgBrowser interface 7885 */ 7886 #ifndef __ICommDlgBrowser_INTERFACE_DEFINED__ 7887 #define __ICommDlgBrowser_INTERFACE_DEFINED__ 7888 7889 DEFINE_GUID(IID_ICommDlgBrowser, 0x000214f1, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 7890 #if defined(__cplusplus) && !defined(CINTERFACE) 7891 MIDL_INTERFACE("000214f1-0000-0000-c000-000000000046") 7892 ICommDlgBrowser : public IUnknown 7893 { 7894 virtual HRESULT STDMETHODCALLTYPE OnDefaultCommand( 7895 IShellView *ppshv) = 0; 7896 7897 virtual HRESULT STDMETHODCALLTYPE OnStateChange( 7898 IShellView *ppshv, 7899 ULONG uChange) = 0; 7900 7901 virtual HRESULT STDMETHODCALLTYPE IncludeObject( 7902 IShellView *ppshv, 7903 PCUITEMID_CHILD pidl) = 0; 7904 7905 }; 7906 #ifdef __CRT_UUID_DECL 7907 __CRT_UUID_DECL(ICommDlgBrowser, 0x000214f1, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 7908 #endif 7909 #else 7910 typedef struct ICommDlgBrowserVtbl { 7911 BEGIN_INTERFACE 7912 7913 /*** IUnknown methods ***/ 7914 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 7915 ICommDlgBrowser* This, 7916 REFIID riid, 7917 void **ppvObject); 7918 7919 ULONG (STDMETHODCALLTYPE *AddRef)( 7920 ICommDlgBrowser* This); 7921 7922 ULONG (STDMETHODCALLTYPE *Release)( 7923 ICommDlgBrowser* This); 7924 7925 /*** ICommDlgBrowser methods ***/ 7926 HRESULT (STDMETHODCALLTYPE *OnDefaultCommand)( 7927 ICommDlgBrowser* This, 7928 IShellView *ppshv); 7929 7930 HRESULT (STDMETHODCALLTYPE *OnStateChange)( 7931 ICommDlgBrowser* This, 7932 IShellView *ppshv, 7933 ULONG uChange); 7934 7935 HRESULT (STDMETHODCALLTYPE *IncludeObject)( 7936 ICommDlgBrowser* This, 7937 IShellView *ppshv, 7938 PCUITEMID_CHILD pidl); 7939 7940 END_INTERFACE 7941 } ICommDlgBrowserVtbl; 7942 interface ICommDlgBrowser { 7943 CONST_VTBL ICommDlgBrowserVtbl* lpVtbl; 7944 }; 7945 7946 #ifdef COBJMACROS 7947 #ifndef WIDL_C_INLINE_WRAPPERS 7948 /*** IUnknown methods ***/ 7949 #define ICommDlgBrowser_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 7950 #define ICommDlgBrowser_AddRef(This) (This)->lpVtbl->AddRef(This) 7951 #define ICommDlgBrowser_Release(This) (This)->lpVtbl->Release(This) 7952 /*** ICommDlgBrowser methods ***/ 7953 #define ICommDlgBrowser_OnDefaultCommand(This,ppshv) (This)->lpVtbl->OnDefaultCommand(This,ppshv) 7954 #define ICommDlgBrowser_OnStateChange(This,ppshv,uChange) (This)->lpVtbl->OnStateChange(This,ppshv,uChange) 7955 #define ICommDlgBrowser_IncludeObject(This,ppshv,pidl) (This)->lpVtbl->IncludeObject(This,ppshv,pidl) 7956 #else 7957 /*** IUnknown methods ***/ 7958 static FORCEINLINE HRESULT ICommDlgBrowser_QueryInterface(ICommDlgBrowser* This,REFIID riid,void **ppvObject) { 7959 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 7960 } 7961 static FORCEINLINE ULONG ICommDlgBrowser_AddRef(ICommDlgBrowser* This) { 7962 return This->lpVtbl->AddRef(This); 7963 } 7964 static FORCEINLINE ULONG ICommDlgBrowser_Release(ICommDlgBrowser* This) { 7965 return This->lpVtbl->Release(This); 7966 } 7967 /*** ICommDlgBrowser methods ***/ 7968 static FORCEINLINE HRESULT ICommDlgBrowser_OnDefaultCommand(ICommDlgBrowser* This,IShellView *ppshv) { 7969 return This->lpVtbl->OnDefaultCommand(This,ppshv); 7970 } 7971 static FORCEINLINE HRESULT ICommDlgBrowser_OnStateChange(ICommDlgBrowser* This,IShellView *ppshv,ULONG uChange) { 7972 return This->lpVtbl->OnStateChange(This,ppshv,uChange); 7973 } 7974 static FORCEINLINE HRESULT ICommDlgBrowser_IncludeObject(ICommDlgBrowser* This,IShellView *ppshv,PCUITEMID_CHILD pidl) { 7975 return This->lpVtbl->IncludeObject(This,ppshv,pidl); 7976 } 7977 #endif 7978 #endif 7979 7980 #endif 7981 7982 HRESULT STDMETHODCALLTYPE ICommDlgBrowser_OnDefaultCommand_Proxy( 7983 ICommDlgBrowser* This, 7984 IShellView *ppshv); 7985 void __RPC_STUB ICommDlgBrowser_OnDefaultCommand_Stub( 7986 IRpcStubBuffer* This, 7987 IRpcChannelBuffer* pRpcChannelBuffer, 7988 PRPC_MESSAGE pRpcMessage, 7989 DWORD* pdwStubPhase); 7990 HRESULT STDMETHODCALLTYPE ICommDlgBrowser_OnStateChange_Proxy( 7991 ICommDlgBrowser* This, 7992 IShellView *ppshv, 7993 ULONG uChange); 7994 void __RPC_STUB ICommDlgBrowser_OnStateChange_Stub( 7995 IRpcStubBuffer* This, 7996 IRpcChannelBuffer* pRpcChannelBuffer, 7997 PRPC_MESSAGE pRpcMessage, 7998 DWORD* pdwStubPhase); 7999 HRESULT STDMETHODCALLTYPE ICommDlgBrowser_IncludeObject_Proxy( 8000 ICommDlgBrowser* This, 8001 IShellView *ppshv, 8002 PCUITEMID_CHILD pidl); 8003 void __RPC_STUB ICommDlgBrowser_IncludeObject_Stub( 8004 IRpcStubBuffer* This, 8005 IRpcChannelBuffer* pRpcChannelBuffer, 8006 PRPC_MESSAGE pRpcMessage, 8007 DWORD* pdwStubPhase); 8008 8009 #endif /* __ICommDlgBrowser_INTERFACE_DEFINED__ */ 8010 8011 typedef ICommDlgBrowser *LPCOMMDLGBROWSER; 8012 8013 #define SID_SExplorerBrowserFrame IID_ICommDlgBrowser 8014 8015 #define CDB2N_CONTEXTMENU_DONE 0x00000001 8016 #define CDB2N_CONTEXTMENU_START 0x00000002 8017 8018 #define CDB2GVF_SHOWALLFILES 0x1 8019 #if NTDDI_VERSION >= NTDDI_VISTA 8020 #define CDB2GVF_ISFILESAVE 0x2 8021 #define CDB2GVF_ALLOWPREVIEWPANE 0x4 8022 #define CDB2GVF_NOSELECTVERB 0x8 8023 #define CDB2GVF_NOINCLUDEITEM 0x10 8024 #define CDB2GVF_ISFOLDERPICKER 0x20 8025 #define CDB2GVF_ADDSHIELD 0x40 8026 #endif 8027 8028 /***************************************************************************** 8029 * ICommDlgBrowser2 interface 8030 */ 8031 #ifndef __ICommDlgBrowser2_INTERFACE_DEFINED__ 8032 #define __ICommDlgBrowser2_INTERFACE_DEFINED__ 8033 8034 DEFINE_GUID(IID_ICommDlgBrowser2, 0x10339516, 0x2894, 0x11d2, 0x90,0x39, 0x00,0xc0,0x4f,0x8e,0xeb,0x3e); 8035 #if defined(__cplusplus) && !defined(CINTERFACE) 8036 MIDL_INTERFACE("10339516-2894-11d2-9039-00c04f8eeb3e") 8037 ICommDlgBrowser2 : public ICommDlgBrowser 8038 { 8039 virtual HRESULT STDMETHODCALLTYPE Notify( 8040 IShellView *ppshv, 8041 DWORD dwNotifyType) = 0; 8042 8043 virtual HRESULT STDMETHODCALLTYPE GetDefaultMenuText( 8044 IShellView *ppshv, 8045 LPWSTR pszText, 8046 int cchMax) = 0; 8047 8048 virtual HRESULT STDMETHODCALLTYPE GetViewFlags( 8049 DWORD *pdwFlags) = 0; 8050 8051 }; 8052 #ifdef __CRT_UUID_DECL 8053 __CRT_UUID_DECL(ICommDlgBrowser2, 0x10339516, 0x2894, 0x11d2, 0x90,0x39, 0x00,0xc0,0x4f,0x8e,0xeb,0x3e) 8054 #endif 8055 #else 8056 typedef struct ICommDlgBrowser2Vtbl { 8057 BEGIN_INTERFACE 8058 8059 /*** IUnknown methods ***/ 8060 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 8061 ICommDlgBrowser2* This, 8062 REFIID riid, 8063 void **ppvObject); 8064 8065 ULONG (STDMETHODCALLTYPE *AddRef)( 8066 ICommDlgBrowser2* This); 8067 8068 ULONG (STDMETHODCALLTYPE *Release)( 8069 ICommDlgBrowser2* This); 8070 8071 /*** ICommDlgBrowser methods ***/ 8072 HRESULT (STDMETHODCALLTYPE *OnDefaultCommand)( 8073 ICommDlgBrowser2* This, 8074 IShellView *ppshv); 8075 8076 HRESULT (STDMETHODCALLTYPE *OnStateChange)( 8077 ICommDlgBrowser2* This, 8078 IShellView *ppshv, 8079 ULONG uChange); 8080 8081 HRESULT (STDMETHODCALLTYPE *IncludeObject)( 8082 ICommDlgBrowser2* This, 8083 IShellView *ppshv, 8084 PCUITEMID_CHILD pidl); 8085 8086 /*** ICommDlgBrowser2 methods ***/ 8087 HRESULT (STDMETHODCALLTYPE *Notify)( 8088 ICommDlgBrowser2* This, 8089 IShellView *ppshv, 8090 DWORD dwNotifyType); 8091 8092 HRESULT (STDMETHODCALLTYPE *GetDefaultMenuText)( 8093 ICommDlgBrowser2* This, 8094 IShellView *ppshv, 8095 LPWSTR pszText, 8096 int cchMax); 8097 8098 HRESULT (STDMETHODCALLTYPE *GetViewFlags)( 8099 ICommDlgBrowser2* This, 8100 DWORD *pdwFlags); 8101 8102 END_INTERFACE 8103 } ICommDlgBrowser2Vtbl; 8104 interface ICommDlgBrowser2 { 8105 CONST_VTBL ICommDlgBrowser2Vtbl* lpVtbl; 8106 }; 8107 8108 #ifdef COBJMACROS 8109 #ifndef WIDL_C_INLINE_WRAPPERS 8110 /*** IUnknown methods ***/ 8111 #define ICommDlgBrowser2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 8112 #define ICommDlgBrowser2_AddRef(This) (This)->lpVtbl->AddRef(This) 8113 #define ICommDlgBrowser2_Release(This) (This)->lpVtbl->Release(This) 8114 /*** ICommDlgBrowser methods ***/ 8115 #define ICommDlgBrowser2_OnDefaultCommand(This,ppshv) (This)->lpVtbl->OnDefaultCommand(This,ppshv) 8116 #define ICommDlgBrowser2_OnStateChange(This,ppshv,uChange) (This)->lpVtbl->OnStateChange(This,ppshv,uChange) 8117 #define ICommDlgBrowser2_IncludeObject(This,ppshv,pidl) (This)->lpVtbl->IncludeObject(This,ppshv,pidl) 8118 /*** ICommDlgBrowser2 methods ***/ 8119 #define ICommDlgBrowser2_Notify(This,ppshv,dwNotifyType) (This)->lpVtbl->Notify(This,ppshv,dwNotifyType) 8120 #define ICommDlgBrowser2_GetDefaultMenuText(This,ppshv,pszText,cchMax) (This)->lpVtbl->GetDefaultMenuText(This,ppshv,pszText,cchMax) 8121 #define ICommDlgBrowser2_GetViewFlags(This,pdwFlags) (This)->lpVtbl->GetViewFlags(This,pdwFlags) 8122 #else 8123 /*** IUnknown methods ***/ 8124 static FORCEINLINE HRESULT ICommDlgBrowser2_QueryInterface(ICommDlgBrowser2* This,REFIID riid,void **ppvObject) { 8125 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 8126 } 8127 static FORCEINLINE ULONG ICommDlgBrowser2_AddRef(ICommDlgBrowser2* This) { 8128 return This->lpVtbl->AddRef(This); 8129 } 8130 static FORCEINLINE ULONG ICommDlgBrowser2_Release(ICommDlgBrowser2* This) { 8131 return This->lpVtbl->Release(This); 8132 } 8133 /*** ICommDlgBrowser methods ***/ 8134 static FORCEINLINE HRESULT ICommDlgBrowser2_OnDefaultCommand(ICommDlgBrowser2* This,IShellView *ppshv) { 8135 return This->lpVtbl->OnDefaultCommand(This,ppshv); 8136 } 8137 static FORCEINLINE HRESULT ICommDlgBrowser2_OnStateChange(ICommDlgBrowser2* This,IShellView *ppshv,ULONG uChange) { 8138 return This->lpVtbl->OnStateChange(This,ppshv,uChange); 8139 } 8140 static FORCEINLINE HRESULT ICommDlgBrowser2_IncludeObject(ICommDlgBrowser2* This,IShellView *ppshv,PCUITEMID_CHILD pidl) { 8141 return This->lpVtbl->IncludeObject(This,ppshv,pidl); 8142 } 8143 /*** ICommDlgBrowser2 methods ***/ 8144 static FORCEINLINE HRESULT ICommDlgBrowser2_Notify(ICommDlgBrowser2* This,IShellView *ppshv,DWORD dwNotifyType) { 8145 return This->lpVtbl->Notify(This,ppshv,dwNotifyType); 8146 } 8147 static FORCEINLINE HRESULT ICommDlgBrowser2_GetDefaultMenuText(ICommDlgBrowser2* This,IShellView *ppshv,LPWSTR pszText,int cchMax) { 8148 return This->lpVtbl->GetDefaultMenuText(This,ppshv,pszText,cchMax); 8149 } 8150 static FORCEINLINE HRESULT ICommDlgBrowser2_GetViewFlags(ICommDlgBrowser2* This,DWORD *pdwFlags) { 8151 return This->lpVtbl->GetViewFlags(This,pdwFlags); 8152 } 8153 #endif 8154 #endif 8155 8156 #endif 8157 8158 HRESULT STDMETHODCALLTYPE ICommDlgBrowser2_Notify_Proxy( 8159 ICommDlgBrowser2* This, 8160 IShellView *ppshv, 8161 DWORD dwNotifyType); 8162 void __RPC_STUB ICommDlgBrowser2_Notify_Stub( 8163 IRpcStubBuffer* This, 8164 IRpcChannelBuffer* pRpcChannelBuffer, 8165 PRPC_MESSAGE pRpcMessage, 8166 DWORD* pdwStubPhase); 8167 HRESULT STDMETHODCALLTYPE ICommDlgBrowser2_GetDefaultMenuText_Proxy( 8168 ICommDlgBrowser2* This, 8169 IShellView *ppshv, 8170 LPWSTR pszText, 8171 int cchMax); 8172 void __RPC_STUB ICommDlgBrowser2_GetDefaultMenuText_Stub( 8173 IRpcStubBuffer* This, 8174 IRpcChannelBuffer* pRpcChannelBuffer, 8175 PRPC_MESSAGE pRpcMessage, 8176 DWORD* pdwStubPhase); 8177 HRESULT STDMETHODCALLTYPE ICommDlgBrowser2_GetViewFlags_Proxy( 8178 ICommDlgBrowser2* This, 8179 DWORD *pdwFlags); 8180 void __RPC_STUB ICommDlgBrowser2_GetViewFlags_Stub( 8181 IRpcStubBuffer* This, 8182 IRpcChannelBuffer* pRpcChannelBuffer, 8183 PRPC_MESSAGE pRpcMessage, 8184 DWORD* pdwStubPhase); 8185 8186 #endif /* __ICommDlgBrowser2_INTERFACE_DEFINED__ */ 8187 8188 typedef ICommDlgBrowser2 *LPCOMMDLGBROWSER2; 8189 8190 #if _WIN32_IE >= _WIN32_IE_IE70 8191 /***************************************************************************** 8192 * ICommDlgBrowser3 interface 8193 */ 8194 #ifndef __ICommDlgBrowser3_INTERFACE_DEFINED__ 8195 #define __ICommDlgBrowser3_INTERFACE_DEFINED__ 8196 8197 DEFINE_GUID(IID_ICommDlgBrowser3, 0xc8ad25a1, 0x3294, 0x41ee, 0x81,0x65, 0x71,0x17,0x4b,0xd0,0x1c,0x57); 8198 #if defined(__cplusplus) && !defined(CINTERFACE) 8199 MIDL_INTERFACE("c8ad25a1-3294-41ee-8165-71174bd01c57") 8200 ICommDlgBrowser3 : public ICommDlgBrowser2 8201 { 8202 virtual HRESULT STDMETHODCALLTYPE OnColumnClicked( 8203 IShellView *ppshv, 8204 int iColumn) = 0; 8205 8206 virtual HRESULT STDMETHODCALLTYPE GetCurrentFilter( 8207 LPWSTR pszFileSpec, 8208 int cchFileSpec) = 0; 8209 8210 virtual HRESULT STDMETHODCALLTYPE OnPreViewCreated( 8211 IShellView *ppshv) = 0; 8212 8213 }; 8214 #ifdef __CRT_UUID_DECL 8215 __CRT_UUID_DECL(ICommDlgBrowser3, 0xc8ad25a1, 0x3294, 0x41ee, 0x81,0x65, 0x71,0x17,0x4b,0xd0,0x1c,0x57) 8216 #endif 8217 #else 8218 typedef struct ICommDlgBrowser3Vtbl { 8219 BEGIN_INTERFACE 8220 8221 /*** IUnknown methods ***/ 8222 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 8223 ICommDlgBrowser3* This, 8224 REFIID riid, 8225 void **ppvObject); 8226 8227 ULONG (STDMETHODCALLTYPE *AddRef)( 8228 ICommDlgBrowser3* This); 8229 8230 ULONG (STDMETHODCALLTYPE *Release)( 8231 ICommDlgBrowser3* This); 8232 8233 /*** ICommDlgBrowser methods ***/ 8234 HRESULT (STDMETHODCALLTYPE *OnDefaultCommand)( 8235 ICommDlgBrowser3* This, 8236 IShellView *ppshv); 8237 8238 HRESULT (STDMETHODCALLTYPE *OnStateChange)( 8239 ICommDlgBrowser3* This, 8240 IShellView *ppshv, 8241 ULONG uChange); 8242 8243 HRESULT (STDMETHODCALLTYPE *IncludeObject)( 8244 ICommDlgBrowser3* This, 8245 IShellView *ppshv, 8246 PCUITEMID_CHILD pidl); 8247 8248 /*** ICommDlgBrowser2 methods ***/ 8249 HRESULT (STDMETHODCALLTYPE *Notify)( 8250 ICommDlgBrowser3* This, 8251 IShellView *ppshv, 8252 DWORD dwNotifyType); 8253 8254 HRESULT (STDMETHODCALLTYPE *GetDefaultMenuText)( 8255 ICommDlgBrowser3* This, 8256 IShellView *ppshv, 8257 LPWSTR pszText, 8258 int cchMax); 8259 8260 HRESULT (STDMETHODCALLTYPE *GetViewFlags)( 8261 ICommDlgBrowser3* This, 8262 DWORD *pdwFlags); 8263 8264 /*** ICommDlgBrowser3 methods ***/ 8265 HRESULT (STDMETHODCALLTYPE *OnColumnClicked)( 8266 ICommDlgBrowser3* This, 8267 IShellView *ppshv, 8268 int iColumn); 8269 8270 HRESULT (STDMETHODCALLTYPE *GetCurrentFilter)( 8271 ICommDlgBrowser3* This, 8272 LPWSTR pszFileSpec, 8273 int cchFileSpec); 8274 8275 HRESULT (STDMETHODCALLTYPE *OnPreViewCreated)( 8276 ICommDlgBrowser3* This, 8277 IShellView *ppshv); 8278 8279 END_INTERFACE 8280 } ICommDlgBrowser3Vtbl; 8281 interface ICommDlgBrowser3 { 8282 CONST_VTBL ICommDlgBrowser3Vtbl* lpVtbl; 8283 }; 8284 8285 #ifdef COBJMACROS 8286 #ifndef WIDL_C_INLINE_WRAPPERS 8287 /*** IUnknown methods ***/ 8288 #define ICommDlgBrowser3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 8289 #define ICommDlgBrowser3_AddRef(This) (This)->lpVtbl->AddRef(This) 8290 #define ICommDlgBrowser3_Release(This) (This)->lpVtbl->Release(This) 8291 /*** ICommDlgBrowser methods ***/ 8292 #define ICommDlgBrowser3_OnDefaultCommand(This,ppshv) (This)->lpVtbl->OnDefaultCommand(This,ppshv) 8293 #define ICommDlgBrowser3_OnStateChange(This,ppshv,uChange) (This)->lpVtbl->OnStateChange(This,ppshv,uChange) 8294 #define ICommDlgBrowser3_IncludeObject(This,ppshv,pidl) (This)->lpVtbl->IncludeObject(This,ppshv,pidl) 8295 /*** ICommDlgBrowser2 methods ***/ 8296 #define ICommDlgBrowser3_Notify(This,ppshv,dwNotifyType) (This)->lpVtbl->Notify(This,ppshv,dwNotifyType) 8297 #define ICommDlgBrowser3_GetDefaultMenuText(This,ppshv,pszText,cchMax) (This)->lpVtbl->GetDefaultMenuText(This,ppshv,pszText,cchMax) 8298 #define ICommDlgBrowser3_GetViewFlags(This,pdwFlags) (This)->lpVtbl->GetViewFlags(This,pdwFlags) 8299 /*** ICommDlgBrowser3 methods ***/ 8300 #define ICommDlgBrowser3_OnColumnClicked(This,ppshv,iColumn) (This)->lpVtbl->OnColumnClicked(This,ppshv,iColumn) 8301 #define ICommDlgBrowser3_GetCurrentFilter(This,pszFileSpec,cchFileSpec) (This)->lpVtbl->GetCurrentFilter(This,pszFileSpec,cchFileSpec) 8302 #define ICommDlgBrowser3_OnPreViewCreated(This,ppshv) (This)->lpVtbl->OnPreViewCreated(This,ppshv) 8303 #else 8304 /*** IUnknown methods ***/ 8305 static FORCEINLINE HRESULT ICommDlgBrowser3_QueryInterface(ICommDlgBrowser3* This,REFIID riid,void **ppvObject) { 8306 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 8307 } 8308 static FORCEINLINE ULONG ICommDlgBrowser3_AddRef(ICommDlgBrowser3* This) { 8309 return This->lpVtbl->AddRef(This); 8310 } 8311 static FORCEINLINE ULONG ICommDlgBrowser3_Release(ICommDlgBrowser3* This) { 8312 return This->lpVtbl->Release(This); 8313 } 8314 /*** ICommDlgBrowser methods ***/ 8315 static FORCEINLINE HRESULT ICommDlgBrowser3_OnDefaultCommand(ICommDlgBrowser3* This,IShellView *ppshv) { 8316 return This->lpVtbl->OnDefaultCommand(This,ppshv); 8317 } 8318 static FORCEINLINE HRESULT ICommDlgBrowser3_OnStateChange(ICommDlgBrowser3* This,IShellView *ppshv,ULONG uChange) { 8319 return This->lpVtbl->OnStateChange(This,ppshv,uChange); 8320 } 8321 static FORCEINLINE HRESULT ICommDlgBrowser3_IncludeObject(ICommDlgBrowser3* This,IShellView *ppshv,PCUITEMID_CHILD pidl) { 8322 return This->lpVtbl->IncludeObject(This,ppshv,pidl); 8323 } 8324 /*** ICommDlgBrowser2 methods ***/ 8325 static FORCEINLINE HRESULT ICommDlgBrowser3_Notify(ICommDlgBrowser3* This,IShellView *ppshv,DWORD dwNotifyType) { 8326 return This->lpVtbl->Notify(This,ppshv,dwNotifyType); 8327 } 8328 static FORCEINLINE HRESULT ICommDlgBrowser3_GetDefaultMenuText(ICommDlgBrowser3* This,IShellView *ppshv,LPWSTR pszText,int cchMax) { 8329 return This->lpVtbl->GetDefaultMenuText(This,ppshv,pszText,cchMax); 8330 } 8331 static FORCEINLINE HRESULT ICommDlgBrowser3_GetViewFlags(ICommDlgBrowser3* This,DWORD *pdwFlags) { 8332 return This->lpVtbl->GetViewFlags(This,pdwFlags); 8333 } 8334 /*** ICommDlgBrowser3 methods ***/ 8335 static FORCEINLINE HRESULT ICommDlgBrowser3_OnColumnClicked(ICommDlgBrowser3* This,IShellView *ppshv,int iColumn) { 8336 return This->lpVtbl->OnColumnClicked(This,ppshv,iColumn); 8337 } 8338 static FORCEINLINE HRESULT ICommDlgBrowser3_GetCurrentFilter(ICommDlgBrowser3* This,LPWSTR pszFileSpec,int cchFileSpec) { 8339 return This->lpVtbl->GetCurrentFilter(This,pszFileSpec,cchFileSpec); 8340 } 8341 static FORCEINLINE HRESULT ICommDlgBrowser3_OnPreViewCreated(ICommDlgBrowser3* This,IShellView *ppshv) { 8342 return This->lpVtbl->OnPreViewCreated(This,ppshv); 8343 } 8344 #endif 8345 #endif 8346 8347 #endif 8348 8349 HRESULT STDMETHODCALLTYPE ICommDlgBrowser3_OnColumnClicked_Proxy( 8350 ICommDlgBrowser3* This, 8351 IShellView *ppshv, 8352 int iColumn); 8353 void __RPC_STUB ICommDlgBrowser3_OnColumnClicked_Stub( 8354 IRpcStubBuffer* This, 8355 IRpcChannelBuffer* pRpcChannelBuffer, 8356 PRPC_MESSAGE pRpcMessage, 8357 DWORD* pdwStubPhase); 8358 HRESULT STDMETHODCALLTYPE ICommDlgBrowser3_GetCurrentFilter_Proxy( 8359 ICommDlgBrowser3* This, 8360 LPWSTR pszFileSpec, 8361 int cchFileSpec); 8362 void __RPC_STUB ICommDlgBrowser3_GetCurrentFilter_Stub( 8363 IRpcStubBuffer* This, 8364 IRpcChannelBuffer* pRpcChannelBuffer, 8365 PRPC_MESSAGE pRpcMessage, 8366 DWORD* pdwStubPhase); 8367 HRESULT STDMETHODCALLTYPE ICommDlgBrowser3_OnPreViewCreated_Proxy( 8368 ICommDlgBrowser3* This, 8369 IShellView *ppshv); 8370 void __RPC_STUB ICommDlgBrowser3_OnPreViewCreated_Stub( 8371 IRpcStubBuffer* This, 8372 IRpcChannelBuffer* pRpcChannelBuffer, 8373 PRPC_MESSAGE pRpcMessage, 8374 DWORD* pdwStubPhase); 8375 8376 #endif /* __ICommDlgBrowser3_INTERFACE_DEFINED__ */ 8377 8378 8379 typedef enum CM_MASK { 8380 CM_MASK_WIDTH = 0x1, 8381 CM_MASK_DEFAULTWIDTH = 0x2, 8382 CM_MASK_IDEALWIDTH = 0x4, 8383 CM_MASK_NAME = 0x8, 8384 CM_MASK_STATE = 0x10 8385 } CM_MASK; 8386 8387 DEFINE_ENUM_FLAG_OPERATORS(CM_MASK) 8388 8389 typedef enum CM_STATE { 8390 CM_STATE_NONE = 0x0, 8391 CM_STATE_VISIBLE = 0x1, 8392 CM_STATE_FIXEDWIDTH = 0x2, 8393 CM_STATE_NOSORTBYFOLDERNESS = 0x4, 8394 CM_STATE_ALWAYSVISIBLE = 0x8 8395 } CM_STATE; 8396 8397 DEFINE_ENUM_FLAG_OPERATORS(CM_STATE) 8398 8399 typedef enum CM_ENUM_FLAGS { 8400 CM_ENUM_ALL = 0x1, 8401 CM_ENUM_VISIBLE = 0x2 8402 } CM_ENUM_FLAGS; 8403 8404 DEFINE_ENUM_FLAG_OPERATORS(CM_ENUM_FLAGS) 8405 8406 typedef enum CM_SET_WIDTH_VALUE { 8407 CM_WIDTH_USEDEFAULT = -1, 8408 CM_WIDTH_AUTOSIZE = -2 8409 } CM_SET_WIDTH_VALUE; 8410 8411 typedef struct CM_COLUMNINFO { 8412 DWORD cbSize; 8413 DWORD dwMask; 8414 DWORD dwState; 8415 UINT uWidth; 8416 UINT uDefaultWidth; 8417 UINT uIdealWidth; 8418 WCHAR wszName[80]; 8419 } CM_COLUMNINFO; 8420 8421 /***************************************************************************** 8422 * IColumnManager interface 8423 */ 8424 #ifndef __IColumnManager_INTERFACE_DEFINED__ 8425 #define __IColumnManager_INTERFACE_DEFINED__ 8426 8427 DEFINE_GUID(IID_IColumnManager, 0xd8ec27bb, 0x3f3b, 0x4042, 0xb1,0x0a, 0x4a,0xcf,0xd9,0x24,0xd4,0x53); 8428 #if defined(__cplusplus) && !defined(CINTERFACE) 8429 MIDL_INTERFACE("d8ec27bb-3f3b-4042-b10a-4acfd924d453") 8430 IColumnManager : public IUnknown 8431 { 8432 virtual HRESULT STDMETHODCALLTYPE SetColumnInfo( 8433 REFPROPERTYKEY propkey, 8434 const CM_COLUMNINFO *pcmci) = 0; 8435 8436 virtual HRESULT STDMETHODCALLTYPE GetColumnInfo( 8437 REFPROPERTYKEY propkey, 8438 CM_COLUMNINFO *pcmci) = 0; 8439 8440 virtual HRESULT STDMETHODCALLTYPE GetColumnCount( 8441 CM_ENUM_FLAGS dwFlags, 8442 UINT *puCount) = 0; 8443 8444 virtual HRESULT STDMETHODCALLTYPE GetColumns( 8445 CM_ENUM_FLAGS dwFlags, 8446 PROPERTYKEY *rgkeyOrder, 8447 UINT cColumns) = 0; 8448 8449 virtual HRESULT STDMETHODCALLTYPE SetColumns( 8450 const PROPERTYKEY *rgkeyOrder, 8451 UINT cVisible) = 0; 8452 8453 }; 8454 #ifdef __CRT_UUID_DECL 8455 __CRT_UUID_DECL(IColumnManager, 0xd8ec27bb, 0x3f3b, 0x4042, 0xb1,0x0a, 0x4a,0xcf,0xd9,0x24,0xd4,0x53) 8456 #endif 8457 #else 8458 typedef struct IColumnManagerVtbl { 8459 BEGIN_INTERFACE 8460 8461 /*** IUnknown methods ***/ 8462 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 8463 IColumnManager* This, 8464 REFIID riid, 8465 void **ppvObject); 8466 8467 ULONG (STDMETHODCALLTYPE *AddRef)( 8468 IColumnManager* This); 8469 8470 ULONG (STDMETHODCALLTYPE *Release)( 8471 IColumnManager* This); 8472 8473 /*** IColumnManager methods ***/ 8474 HRESULT (STDMETHODCALLTYPE *SetColumnInfo)( 8475 IColumnManager* This, 8476 REFPROPERTYKEY propkey, 8477 const CM_COLUMNINFO *pcmci); 8478 8479 HRESULT (STDMETHODCALLTYPE *GetColumnInfo)( 8480 IColumnManager* This, 8481 REFPROPERTYKEY propkey, 8482 CM_COLUMNINFO *pcmci); 8483 8484 HRESULT (STDMETHODCALLTYPE *GetColumnCount)( 8485 IColumnManager* This, 8486 CM_ENUM_FLAGS dwFlags, 8487 UINT *puCount); 8488 8489 HRESULT (STDMETHODCALLTYPE *GetColumns)( 8490 IColumnManager* This, 8491 CM_ENUM_FLAGS dwFlags, 8492 PROPERTYKEY *rgkeyOrder, 8493 UINT cColumns); 8494 8495 HRESULT (STDMETHODCALLTYPE *SetColumns)( 8496 IColumnManager* This, 8497 const PROPERTYKEY *rgkeyOrder, 8498 UINT cVisible); 8499 8500 END_INTERFACE 8501 } IColumnManagerVtbl; 8502 interface IColumnManager { 8503 CONST_VTBL IColumnManagerVtbl* lpVtbl; 8504 }; 8505 8506 #ifdef COBJMACROS 8507 #ifndef WIDL_C_INLINE_WRAPPERS 8508 /*** IUnknown methods ***/ 8509 #define IColumnManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 8510 #define IColumnManager_AddRef(This) (This)->lpVtbl->AddRef(This) 8511 #define IColumnManager_Release(This) (This)->lpVtbl->Release(This) 8512 /*** IColumnManager methods ***/ 8513 #define IColumnManager_SetColumnInfo(This,propkey,pcmci) (This)->lpVtbl->SetColumnInfo(This,propkey,pcmci) 8514 #define IColumnManager_GetColumnInfo(This,propkey,pcmci) (This)->lpVtbl->GetColumnInfo(This,propkey,pcmci) 8515 #define IColumnManager_GetColumnCount(This,dwFlags,puCount) (This)->lpVtbl->GetColumnCount(This,dwFlags,puCount) 8516 #define IColumnManager_GetColumns(This,dwFlags,rgkeyOrder,cColumns) (This)->lpVtbl->GetColumns(This,dwFlags,rgkeyOrder,cColumns) 8517 #define IColumnManager_SetColumns(This,rgkeyOrder,cVisible) (This)->lpVtbl->SetColumns(This,rgkeyOrder,cVisible) 8518 #else 8519 /*** IUnknown methods ***/ 8520 static FORCEINLINE HRESULT IColumnManager_QueryInterface(IColumnManager* This,REFIID riid,void **ppvObject) { 8521 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 8522 } 8523 static FORCEINLINE ULONG IColumnManager_AddRef(IColumnManager* This) { 8524 return This->lpVtbl->AddRef(This); 8525 } 8526 static FORCEINLINE ULONG IColumnManager_Release(IColumnManager* This) { 8527 return This->lpVtbl->Release(This); 8528 } 8529 /*** IColumnManager methods ***/ 8530 static FORCEINLINE HRESULT IColumnManager_SetColumnInfo(IColumnManager* This,REFPROPERTYKEY propkey,const CM_COLUMNINFO *pcmci) { 8531 return This->lpVtbl->SetColumnInfo(This,propkey,pcmci); 8532 } 8533 static FORCEINLINE HRESULT IColumnManager_GetColumnInfo(IColumnManager* This,REFPROPERTYKEY propkey,CM_COLUMNINFO *pcmci) { 8534 return This->lpVtbl->GetColumnInfo(This,propkey,pcmci); 8535 } 8536 static FORCEINLINE HRESULT IColumnManager_GetColumnCount(IColumnManager* This,CM_ENUM_FLAGS dwFlags,UINT *puCount) { 8537 return This->lpVtbl->GetColumnCount(This,dwFlags,puCount); 8538 } 8539 static FORCEINLINE HRESULT IColumnManager_GetColumns(IColumnManager* This,CM_ENUM_FLAGS dwFlags,PROPERTYKEY *rgkeyOrder,UINT cColumns) { 8540 return This->lpVtbl->GetColumns(This,dwFlags,rgkeyOrder,cColumns); 8541 } 8542 static FORCEINLINE HRESULT IColumnManager_SetColumns(IColumnManager* This,const PROPERTYKEY *rgkeyOrder,UINT cVisible) { 8543 return This->lpVtbl->SetColumns(This,rgkeyOrder,cVisible); 8544 } 8545 #endif 8546 #endif 8547 8548 #endif 8549 8550 HRESULT STDMETHODCALLTYPE IColumnManager_SetColumnInfo_Proxy( 8551 IColumnManager* This, 8552 REFPROPERTYKEY propkey, 8553 const CM_COLUMNINFO *pcmci); 8554 void __RPC_STUB IColumnManager_SetColumnInfo_Stub( 8555 IRpcStubBuffer* This, 8556 IRpcChannelBuffer* pRpcChannelBuffer, 8557 PRPC_MESSAGE pRpcMessage, 8558 DWORD* pdwStubPhase); 8559 HRESULT STDMETHODCALLTYPE IColumnManager_GetColumnInfo_Proxy( 8560 IColumnManager* This, 8561 REFPROPERTYKEY propkey, 8562 CM_COLUMNINFO *pcmci); 8563 void __RPC_STUB IColumnManager_GetColumnInfo_Stub( 8564 IRpcStubBuffer* This, 8565 IRpcChannelBuffer* pRpcChannelBuffer, 8566 PRPC_MESSAGE pRpcMessage, 8567 DWORD* pdwStubPhase); 8568 HRESULT STDMETHODCALLTYPE IColumnManager_GetColumnCount_Proxy( 8569 IColumnManager* This, 8570 CM_ENUM_FLAGS dwFlags, 8571 UINT *puCount); 8572 void __RPC_STUB IColumnManager_GetColumnCount_Stub( 8573 IRpcStubBuffer* This, 8574 IRpcChannelBuffer* pRpcChannelBuffer, 8575 PRPC_MESSAGE pRpcMessage, 8576 DWORD* pdwStubPhase); 8577 HRESULT STDMETHODCALLTYPE IColumnManager_GetColumns_Proxy( 8578 IColumnManager* This, 8579 CM_ENUM_FLAGS dwFlags, 8580 PROPERTYKEY *rgkeyOrder, 8581 UINT cColumns); 8582 void __RPC_STUB IColumnManager_GetColumns_Stub( 8583 IRpcStubBuffer* This, 8584 IRpcChannelBuffer* pRpcChannelBuffer, 8585 PRPC_MESSAGE pRpcMessage, 8586 DWORD* pdwStubPhase); 8587 HRESULT STDMETHODCALLTYPE IColumnManager_SetColumns_Proxy( 8588 IColumnManager* This, 8589 const PROPERTYKEY *rgkeyOrder, 8590 UINT cVisible); 8591 void __RPC_STUB IColumnManager_SetColumns_Stub( 8592 IRpcStubBuffer* This, 8593 IRpcChannelBuffer* pRpcChannelBuffer, 8594 PRPC_MESSAGE pRpcMessage, 8595 DWORD* pdwStubPhase); 8596 8597 #endif /* __IColumnManager_INTERFACE_DEFINED__ */ 8598 8599 #endif 8600 8601 /***************************************************************************** 8602 * IFolderFilterSite interface 8603 */ 8604 #ifndef __IFolderFilterSite_INTERFACE_DEFINED__ 8605 #define __IFolderFilterSite_INTERFACE_DEFINED__ 8606 8607 DEFINE_GUID(IID_IFolderFilterSite, 0xc0a651f5, 0xb48b, 0x11d2, 0xb5,0xed, 0x00,0x60,0x97,0xc6,0x86,0xf6); 8608 #if defined(__cplusplus) && !defined(CINTERFACE) 8609 MIDL_INTERFACE("c0a651f5-b48b-11d2-b5ed-006097c686f6") 8610 IFolderFilterSite : public IUnknown 8611 { 8612 virtual HRESULT STDMETHODCALLTYPE SetFilter( 8613 IUnknown *punk) = 0; 8614 8615 }; 8616 #ifdef __CRT_UUID_DECL 8617 __CRT_UUID_DECL(IFolderFilterSite, 0xc0a651f5, 0xb48b, 0x11d2, 0xb5,0xed, 0x00,0x60,0x97,0xc6,0x86,0xf6) 8618 #endif 8619 #else 8620 typedef struct IFolderFilterSiteVtbl { 8621 BEGIN_INTERFACE 8622 8623 /*** IUnknown methods ***/ 8624 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 8625 IFolderFilterSite* This, 8626 REFIID riid, 8627 void **ppvObject); 8628 8629 ULONG (STDMETHODCALLTYPE *AddRef)( 8630 IFolderFilterSite* This); 8631 8632 ULONG (STDMETHODCALLTYPE *Release)( 8633 IFolderFilterSite* This); 8634 8635 /*** IFolderFilterSite methods ***/ 8636 HRESULT (STDMETHODCALLTYPE *SetFilter)( 8637 IFolderFilterSite* This, 8638 IUnknown *punk); 8639 8640 END_INTERFACE 8641 } IFolderFilterSiteVtbl; 8642 interface IFolderFilterSite { 8643 CONST_VTBL IFolderFilterSiteVtbl* lpVtbl; 8644 }; 8645 8646 #ifdef COBJMACROS 8647 #ifndef WIDL_C_INLINE_WRAPPERS 8648 /*** IUnknown methods ***/ 8649 #define IFolderFilterSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 8650 #define IFolderFilterSite_AddRef(This) (This)->lpVtbl->AddRef(This) 8651 #define IFolderFilterSite_Release(This) (This)->lpVtbl->Release(This) 8652 /*** IFolderFilterSite methods ***/ 8653 #define IFolderFilterSite_SetFilter(This,punk) (This)->lpVtbl->SetFilter(This,punk) 8654 #else 8655 /*** IUnknown methods ***/ 8656 static FORCEINLINE HRESULT IFolderFilterSite_QueryInterface(IFolderFilterSite* This,REFIID riid,void **ppvObject) { 8657 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 8658 } 8659 static FORCEINLINE ULONG IFolderFilterSite_AddRef(IFolderFilterSite* This) { 8660 return This->lpVtbl->AddRef(This); 8661 } 8662 static FORCEINLINE ULONG IFolderFilterSite_Release(IFolderFilterSite* This) { 8663 return This->lpVtbl->Release(This); 8664 } 8665 /*** IFolderFilterSite methods ***/ 8666 static FORCEINLINE HRESULT IFolderFilterSite_SetFilter(IFolderFilterSite* This,IUnknown *punk) { 8667 return This->lpVtbl->SetFilter(This,punk); 8668 } 8669 #endif 8670 #endif 8671 8672 #endif 8673 8674 HRESULT STDMETHODCALLTYPE IFolderFilterSite_SetFilter_Proxy( 8675 IFolderFilterSite* This, 8676 IUnknown *punk); 8677 void __RPC_STUB IFolderFilterSite_SetFilter_Stub( 8678 IRpcStubBuffer* This, 8679 IRpcChannelBuffer* pRpcChannelBuffer, 8680 PRPC_MESSAGE pRpcMessage, 8681 DWORD* pdwStubPhase); 8682 8683 #endif /* __IFolderFilterSite_INTERFACE_DEFINED__ */ 8684 8685 8686 /***************************************************************************** 8687 * IFolderFilter interface 8688 */ 8689 #ifndef __IFolderFilter_INTERFACE_DEFINED__ 8690 #define __IFolderFilter_INTERFACE_DEFINED__ 8691 8692 DEFINE_GUID(IID_IFolderFilter, 0x9cc22886, 0xdc8e, 0x11d2, 0xb1,0xd0, 0x00,0xc0,0x4f,0x8e,0xeb,0x3e); 8693 #if defined(__cplusplus) && !defined(CINTERFACE) 8694 MIDL_INTERFACE("9cc22886-dc8e-11d2-b1d0-00c04f8eeb3e") 8695 IFolderFilter : public IUnknown 8696 { 8697 virtual HRESULT STDMETHODCALLTYPE ShouldShow( 8698 IShellFolder *psf, 8699 PCIDLIST_ABSOLUTE pidlFolder, 8700 PCUITEMID_CHILD pidlItem) = 0; 8701 8702 virtual HRESULT STDMETHODCALLTYPE GetEnumFlags( 8703 IShellFolder *psf, 8704 PCIDLIST_ABSOLUTE pidlFolder, 8705 HWND *phwnd, 8706 DWORD *pgrfFlags) = 0; 8707 8708 }; 8709 #ifdef __CRT_UUID_DECL 8710 __CRT_UUID_DECL(IFolderFilter, 0x9cc22886, 0xdc8e, 0x11d2, 0xb1,0xd0, 0x00,0xc0,0x4f,0x8e,0xeb,0x3e) 8711 #endif 8712 #else 8713 typedef struct IFolderFilterVtbl { 8714 BEGIN_INTERFACE 8715 8716 /*** IUnknown methods ***/ 8717 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 8718 IFolderFilter* This, 8719 REFIID riid, 8720 void **ppvObject); 8721 8722 ULONG (STDMETHODCALLTYPE *AddRef)( 8723 IFolderFilter* This); 8724 8725 ULONG (STDMETHODCALLTYPE *Release)( 8726 IFolderFilter* This); 8727 8728 /*** IFolderFilter methods ***/ 8729 HRESULT (STDMETHODCALLTYPE *ShouldShow)( 8730 IFolderFilter* This, 8731 IShellFolder *psf, 8732 PCIDLIST_ABSOLUTE pidlFolder, 8733 PCUITEMID_CHILD pidlItem); 8734 8735 HRESULT (STDMETHODCALLTYPE *GetEnumFlags)( 8736 IFolderFilter* This, 8737 IShellFolder *psf, 8738 PCIDLIST_ABSOLUTE pidlFolder, 8739 HWND *phwnd, 8740 DWORD *pgrfFlags); 8741 8742 END_INTERFACE 8743 } IFolderFilterVtbl; 8744 interface IFolderFilter { 8745 CONST_VTBL IFolderFilterVtbl* lpVtbl; 8746 }; 8747 8748 #ifdef COBJMACROS 8749 #ifndef WIDL_C_INLINE_WRAPPERS 8750 /*** IUnknown methods ***/ 8751 #define IFolderFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 8752 #define IFolderFilter_AddRef(This) (This)->lpVtbl->AddRef(This) 8753 #define IFolderFilter_Release(This) (This)->lpVtbl->Release(This) 8754 /*** IFolderFilter methods ***/ 8755 #define IFolderFilter_ShouldShow(This,psf,pidlFolder,pidlItem) (This)->lpVtbl->ShouldShow(This,psf,pidlFolder,pidlItem) 8756 #define IFolderFilter_GetEnumFlags(This,psf,pidlFolder,phwnd,pgrfFlags) (This)->lpVtbl->GetEnumFlags(This,psf,pidlFolder,phwnd,pgrfFlags) 8757 #else 8758 /*** IUnknown methods ***/ 8759 static FORCEINLINE HRESULT IFolderFilter_QueryInterface(IFolderFilter* This,REFIID riid,void **ppvObject) { 8760 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 8761 } 8762 static FORCEINLINE ULONG IFolderFilter_AddRef(IFolderFilter* This) { 8763 return This->lpVtbl->AddRef(This); 8764 } 8765 static FORCEINLINE ULONG IFolderFilter_Release(IFolderFilter* This) { 8766 return This->lpVtbl->Release(This); 8767 } 8768 /*** IFolderFilter methods ***/ 8769 static FORCEINLINE HRESULT IFolderFilter_ShouldShow(IFolderFilter* This,IShellFolder *psf,PCIDLIST_ABSOLUTE pidlFolder,PCUITEMID_CHILD pidlItem) { 8770 return This->lpVtbl->ShouldShow(This,psf,pidlFolder,pidlItem); 8771 } 8772 static FORCEINLINE HRESULT IFolderFilter_GetEnumFlags(IFolderFilter* This,IShellFolder *psf,PCIDLIST_ABSOLUTE pidlFolder,HWND *phwnd,DWORD *pgrfFlags) { 8773 return This->lpVtbl->GetEnumFlags(This,psf,pidlFolder,phwnd,pgrfFlags); 8774 } 8775 #endif 8776 #endif 8777 8778 #endif 8779 8780 HRESULT STDMETHODCALLTYPE IFolderFilter_ShouldShow_Proxy( 8781 IFolderFilter* This, 8782 IShellFolder *psf, 8783 PCIDLIST_ABSOLUTE pidlFolder, 8784 PCUITEMID_CHILD pidlItem); 8785 void __RPC_STUB IFolderFilter_ShouldShow_Stub( 8786 IRpcStubBuffer* This, 8787 IRpcChannelBuffer* pRpcChannelBuffer, 8788 PRPC_MESSAGE pRpcMessage, 8789 DWORD* pdwStubPhase); 8790 HRESULT STDMETHODCALLTYPE IFolderFilter_GetEnumFlags_Proxy( 8791 IFolderFilter* This, 8792 IShellFolder *psf, 8793 PCIDLIST_ABSOLUTE pidlFolder, 8794 HWND *phwnd, 8795 DWORD *pgrfFlags); 8796 void __RPC_STUB IFolderFilter_GetEnumFlags_Stub( 8797 IRpcStubBuffer* This, 8798 IRpcChannelBuffer* pRpcChannelBuffer, 8799 PRPC_MESSAGE pRpcMessage, 8800 DWORD* pdwStubPhase); 8801 8802 #endif /* __IFolderFilter_INTERFACE_DEFINED__ */ 8803 8804 8805 /***************************************************************************** 8806 * IInputObjectSite interface 8807 */ 8808 #ifndef __IInputObjectSite_INTERFACE_DEFINED__ 8809 #define __IInputObjectSite_INTERFACE_DEFINED__ 8810 8811 DEFINE_GUID(IID_IInputObjectSite, 0xf1db8392, 0x7331, 0x11d0, 0x8c,0x99, 0x00,0xa0,0xc9,0x2d,0xbf,0xe8); 8812 #if defined(__cplusplus) && !defined(CINTERFACE) 8813 MIDL_INTERFACE("f1db8392-7331-11d0-8c99-00a0c92dbfe8") 8814 IInputObjectSite : public IUnknown 8815 { 8816 virtual HRESULT STDMETHODCALLTYPE OnFocusChangeIS( 8817 IUnknown *punkObj, 8818 WINBOOL fSetFocus) = 0; 8819 8820 }; 8821 #ifdef __CRT_UUID_DECL 8822 __CRT_UUID_DECL(IInputObjectSite, 0xf1db8392, 0x7331, 0x11d0, 0x8c,0x99, 0x00,0xa0,0xc9,0x2d,0xbf,0xe8) 8823 #endif 8824 #else 8825 typedef struct IInputObjectSiteVtbl { 8826 BEGIN_INTERFACE 8827 8828 /*** IUnknown methods ***/ 8829 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 8830 IInputObjectSite* This, 8831 REFIID riid, 8832 void **ppvObject); 8833 8834 ULONG (STDMETHODCALLTYPE *AddRef)( 8835 IInputObjectSite* This); 8836 8837 ULONG (STDMETHODCALLTYPE *Release)( 8838 IInputObjectSite* This); 8839 8840 /*** IInputObjectSite methods ***/ 8841 HRESULT (STDMETHODCALLTYPE *OnFocusChangeIS)( 8842 IInputObjectSite* This, 8843 IUnknown *punkObj, 8844 WINBOOL fSetFocus); 8845 8846 END_INTERFACE 8847 } IInputObjectSiteVtbl; 8848 interface IInputObjectSite { 8849 CONST_VTBL IInputObjectSiteVtbl* lpVtbl; 8850 }; 8851 8852 #ifdef COBJMACROS 8853 #ifndef WIDL_C_INLINE_WRAPPERS 8854 /*** IUnknown methods ***/ 8855 #define IInputObjectSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 8856 #define IInputObjectSite_AddRef(This) (This)->lpVtbl->AddRef(This) 8857 #define IInputObjectSite_Release(This) (This)->lpVtbl->Release(This) 8858 /*** IInputObjectSite methods ***/ 8859 #define IInputObjectSite_OnFocusChangeIS(This,punkObj,fSetFocus) (This)->lpVtbl->OnFocusChangeIS(This,punkObj,fSetFocus) 8860 #else 8861 /*** IUnknown methods ***/ 8862 static FORCEINLINE HRESULT IInputObjectSite_QueryInterface(IInputObjectSite* This,REFIID riid,void **ppvObject) { 8863 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 8864 } 8865 static FORCEINLINE ULONG IInputObjectSite_AddRef(IInputObjectSite* This) { 8866 return This->lpVtbl->AddRef(This); 8867 } 8868 static FORCEINLINE ULONG IInputObjectSite_Release(IInputObjectSite* This) { 8869 return This->lpVtbl->Release(This); 8870 } 8871 /*** IInputObjectSite methods ***/ 8872 static FORCEINLINE HRESULT IInputObjectSite_OnFocusChangeIS(IInputObjectSite* This,IUnknown *punkObj,WINBOOL fSetFocus) { 8873 return This->lpVtbl->OnFocusChangeIS(This,punkObj,fSetFocus); 8874 } 8875 #endif 8876 #endif 8877 8878 #endif 8879 8880 HRESULT STDMETHODCALLTYPE IInputObjectSite_OnFocusChangeIS_Proxy( 8881 IInputObjectSite* This, 8882 IUnknown *punkObj, 8883 WINBOOL fSetFocus); 8884 void __RPC_STUB IInputObjectSite_OnFocusChangeIS_Stub( 8885 IRpcStubBuffer* This, 8886 IRpcChannelBuffer* pRpcChannelBuffer, 8887 PRPC_MESSAGE pRpcMessage, 8888 DWORD* pdwStubPhase); 8889 8890 #endif /* __IInputObjectSite_INTERFACE_DEFINED__ */ 8891 8892 8893 /***************************************************************************** 8894 * IInputObject interface 8895 */ 8896 #ifndef __IInputObject_INTERFACE_DEFINED__ 8897 #define __IInputObject_INTERFACE_DEFINED__ 8898 8899 DEFINE_GUID(IID_IInputObject, 0x68284faa, 0x6a48, 0x11d0, 0x8c,0x78, 0x00,0xc0,0x4f,0xd9,0x18,0xb4); 8900 #if defined(__cplusplus) && !defined(CINTERFACE) 8901 MIDL_INTERFACE("68284faa-6a48-11d0-8c78-00c04fd918b4") 8902 IInputObject : public IUnknown 8903 { 8904 virtual HRESULT STDMETHODCALLTYPE UIActivateIO( 8905 WINBOOL fActivate, 8906 MSG *pMsg) = 0; 8907 8908 virtual HRESULT STDMETHODCALLTYPE HasFocusIO( 8909 ) = 0; 8910 8911 virtual HRESULT STDMETHODCALLTYPE TranslateAcceleratorIO( 8912 MSG *pMsg) = 0; 8913 8914 }; 8915 #ifdef __CRT_UUID_DECL 8916 __CRT_UUID_DECL(IInputObject, 0x68284faa, 0x6a48, 0x11d0, 0x8c,0x78, 0x00,0xc0,0x4f,0xd9,0x18,0xb4) 8917 #endif 8918 #else 8919 typedef struct IInputObjectVtbl { 8920 BEGIN_INTERFACE 8921 8922 /*** IUnknown methods ***/ 8923 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 8924 IInputObject* This, 8925 REFIID riid, 8926 void **ppvObject); 8927 8928 ULONG (STDMETHODCALLTYPE *AddRef)( 8929 IInputObject* This); 8930 8931 ULONG (STDMETHODCALLTYPE *Release)( 8932 IInputObject* This); 8933 8934 /*** IInputObject methods ***/ 8935 HRESULT (STDMETHODCALLTYPE *UIActivateIO)( 8936 IInputObject* This, 8937 WINBOOL fActivate, 8938 MSG *pMsg); 8939 8940 HRESULT (STDMETHODCALLTYPE *HasFocusIO)( 8941 IInputObject* This); 8942 8943 HRESULT (STDMETHODCALLTYPE *TranslateAcceleratorIO)( 8944 IInputObject* This, 8945 MSG *pMsg); 8946 8947 END_INTERFACE 8948 } IInputObjectVtbl; 8949 interface IInputObject { 8950 CONST_VTBL IInputObjectVtbl* lpVtbl; 8951 }; 8952 8953 #ifdef COBJMACROS 8954 #ifndef WIDL_C_INLINE_WRAPPERS 8955 /*** IUnknown methods ***/ 8956 #define IInputObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 8957 #define IInputObject_AddRef(This) (This)->lpVtbl->AddRef(This) 8958 #define IInputObject_Release(This) (This)->lpVtbl->Release(This) 8959 /*** IInputObject methods ***/ 8960 #define IInputObject_UIActivateIO(This,fActivate,pMsg) (This)->lpVtbl->UIActivateIO(This,fActivate,pMsg) 8961 #define IInputObject_HasFocusIO(This) (This)->lpVtbl->HasFocusIO(This) 8962 #define IInputObject_TranslateAcceleratorIO(This,pMsg) (This)->lpVtbl->TranslateAcceleratorIO(This,pMsg) 8963 #else 8964 /*** IUnknown methods ***/ 8965 static FORCEINLINE HRESULT IInputObject_QueryInterface(IInputObject* This,REFIID riid,void **ppvObject) { 8966 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 8967 } 8968 static FORCEINLINE ULONG IInputObject_AddRef(IInputObject* This) { 8969 return This->lpVtbl->AddRef(This); 8970 } 8971 static FORCEINLINE ULONG IInputObject_Release(IInputObject* This) { 8972 return This->lpVtbl->Release(This); 8973 } 8974 /*** IInputObject methods ***/ 8975 static FORCEINLINE HRESULT IInputObject_UIActivateIO(IInputObject* This,WINBOOL fActivate,MSG *pMsg) { 8976 return This->lpVtbl->UIActivateIO(This,fActivate,pMsg); 8977 } 8978 static FORCEINLINE HRESULT IInputObject_HasFocusIO(IInputObject* This) { 8979 return This->lpVtbl->HasFocusIO(This); 8980 } 8981 static FORCEINLINE HRESULT IInputObject_TranslateAcceleratorIO(IInputObject* This,MSG *pMsg) { 8982 return This->lpVtbl->TranslateAcceleratorIO(This,pMsg); 8983 } 8984 #endif 8985 #endif 8986 8987 #endif 8988 8989 HRESULT STDMETHODCALLTYPE IInputObject_UIActivateIO_Proxy( 8990 IInputObject* This, 8991 WINBOOL fActivate, 8992 MSG *pMsg); 8993 void __RPC_STUB IInputObject_UIActivateIO_Stub( 8994 IRpcStubBuffer* This, 8995 IRpcChannelBuffer* pRpcChannelBuffer, 8996 PRPC_MESSAGE pRpcMessage, 8997 DWORD* pdwStubPhase); 8998 HRESULT STDMETHODCALLTYPE IInputObject_HasFocusIO_Proxy( 8999 IInputObject* This); 9000 void __RPC_STUB IInputObject_HasFocusIO_Stub( 9001 IRpcStubBuffer* This, 9002 IRpcChannelBuffer* pRpcChannelBuffer, 9003 PRPC_MESSAGE pRpcMessage, 9004 DWORD* pdwStubPhase); 9005 HRESULT STDMETHODCALLTYPE IInputObject_TranslateAcceleratorIO_Proxy( 9006 IInputObject* This, 9007 MSG *pMsg); 9008 void __RPC_STUB IInputObject_TranslateAcceleratorIO_Stub( 9009 IRpcStubBuffer* This, 9010 IRpcChannelBuffer* pRpcChannelBuffer, 9011 PRPC_MESSAGE pRpcMessage, 9012 DWORD* pdwStubPhase); 9013 9014 #endif /* __IInputObject_INTERFACE_DEFINED__ */ 9015 9016 9017 /***************************************************************************** 9018 * IInputObject2 interface 9019 */ 9020 #ifndef __IInputObject2_INTERFACE_DEFINED__ 9021 #define __IInputObject2_INTERFACE_DEFINED__ 9022 9023 DEFINE_GUID(IID_IInputObject2, 0x6915c085, 0x510b, 0x44cd, 0x94,0xaf, 0x28,0xdf,0xa5,0x6c,0xf9,0x2b); 9024 #if defined(__cplusplus) && !defined(CINTERFACE) 9025 MIDL_INTERFACE("6915c085-510b-44cd-94af-28dfa56cf92b") 9026 IInputObject2 : public IInputObject 9027 { 9028 virtual HRESULT STDMETHODCALLTYPE TranslateAcceleratorGlobal( 9029 MSG *pMsg) = 0; 9030 9031 }; 9032 #ifdef __CRT_UUID_DECL 9033 __CRT_UUID_DECL(IInputObject2, 0x6915c085, 0x510b, 0x44cd, 0x94,0xaf, 0x28,0xdf,0xa5,0x6c,0xf9,0x2b) 9034 #endif 9035 #else 9036 typedef struct IInputObject2Vtbl { 9037 BEGIN_INTERFACE 9038 9039 /*** IUnknown methods ***/ 9040 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 9041 IInputObject2* This, 9042 REFIID riid, 9043 void **ppvObject); 9044 9045 ULONG (STDMETHODCALLTYPE *AddRef)( 9046 IInputObject2* This); 9047 9048 ULONG (STDMETHODCALLTYPE *Release)( 9049 IInputObject2* This); 9050 9051 /*** IInputObject methods ***/ 9052 HRESULT (STDMETHODCALLTYPE *UIActivateIO)( 9053 IInputObject2* This, 9054 WINBOOL fActivate, 9055 MSG *pMsg); 9056 9057 HRESULT (STDMETHODCALLTYPE *HasFocusIO)( 9058 IInputObject2* This); 9059 9060 HRESULT (STDMETHODCALLTYPE *TranslateAcceleratorIO)( 9061 IInputObject2* This, 9062 MSG *pMsg); 9063 9064 /*** IInputObject2 methods ***/ 9065 HRESULT (STDMETHODCALLTYPE *TranslateAcceleratorGlobal)( 9066 IInputObject2* This, 9067 MSG *pMsg); 9068 9069 END_INTERFACE 9070 } IInputObject2Vtbl; 9071 interface IInputObject2 { 9072 CONST_VTBL IInputObject2Vtbl* lpVtbl; 9073 }; 9074 9075 #ifdef COBJMACROS 9076 #ifndef WIDL_C_INLINE_WRAPPERS 9077 /*** IUnknown methods ***/ 9078 #define IInputObject2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 9079 #define IInputObject2_AddRef(This) (This)->lpVtbl->AddRef(This) 9080 #define IInputObject2_Release(This) (This)->lpVtbl->Release(This) 9081 /*** IInputObject methods ***/ 9082 #define IInputObject2_UIActivateIO(This,fActivate,pMsg) (This)->lpVtbl->UIActivateIO(This,fActivate,pMsg) 9083 #define IInputObject2_HasFocusIO(This) (This)->lpVtbl->HasFocusIO(This) 9084 #define IInputObject2_TranslateAcceleratorIO(This,pMsg) (This)->lpVtbl->TranslateAcceleratorIO(This,pMsg) 9085 /*** IInputObject2 methods ***/ 9086 #define IInputObject2_TranslateAcceleratorGlobal(This,pMsg) (This)->lpVtbl->TranslateAcceleratorGlobal(This,pMsg) 9087 #else 9088 /*** IUnknown methods ***/ 9089 static FORCEINLINE HRESULT IInputObject2_QueryInterface(IInputObject2* This,REFIID riid,void **ppvObject) { 9090 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 9091 } 9092 static FORCEINLINE ULONG IInputObject2_AddRef(IInputObject2* This) { 9093 return This->lpVtbl->AddRef(This); 9094 } 9095 static FORCEINLINE ULONG IInputObject2_Release(IInputObject2* This) { 9096 return This->lpVtbl->Release(This); 9097 } 9098 /*** IInputObject methods ***/ 9099 static FORCEINLINE HRESULT IInputObject2_UIActivateIO(IInputObject2* This,WINBOOL fActivate,MSG *pMsg) { 9100 return This->lpVtbl->UIActivateIO(This,fActivate,pMsg); 9101 } 9102 static FORCEINLINE HRESULT IInputObject2_HasFocusIO(IInputObject2* This) { 9103 return This->lpVtbl->HasFocusIO(This); 9104 } 9105 static FORCEINLINE HRESULT IInputObject2_TranslateAcceleratorIO(IInputObject2* This,MSG *pMsg) { 9106 return This->lpVtbl->TranslateAcceleratorIO(This,pMsg); 9107 } 9108 /*** IInputObject2 methods ***/ 9109 static FORCEINLINE HRESULT IInputObject2_TranslateAcceleratorGlobal(IInputObject2* This,MSG *pMsg) { 9110 return This->lpVtbl->TranslateAcceleratorGlobal(This,pMsg); 9111 } 9112 #endif 9113 #endif 9114 9115 #endif 9116 9117 HRESULT STDMETHODCALLTYPE IInputObject2_TranslateAcceleratorGlobal_Proxy( 9118 IInputObject2* This, 9119 MSG *pMsg); 9120 void __RPC_STUB IInputObject2_TranslateAcceleratorGlobal_Stub( 9121 IRpcStubBuffer* This, 9122 IRpcChannelBuffer* pRpcChannelBuffer, 9123 PRPC_MESSAGE pRpcMessage, 9124 DWORD* pdwStubPhase); 9125 9126 #endif /* __IInputObject2_INTERFACE_DEFINED__ */ 9127 9128 9129 /***************************************************************************** 9130 * IShellIcon interface 9131 */ 9132 #ifndef __IShellIcon_INTERFACE_DEFINED__ 9133 #define __IShellIcon_INTERFACE_DEFINED__ 9134 9135 DEFINE_GUID(IID_IShellIcon, 0x000214e5, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 9136 #if defined(__cplusplus) && !defined(CINTERFACE) 9137 MIDL_INTERFACE("000214e5-0000-0000-c000-000000000046") 9138 IShellIcon : public IUnknown 9139 { 9140 virtual HRESULT STDMETHODCALLTYPE GetIconOf( 9141 PCUITEMID_CHILD pidl, 9142 UINT flags, 9143 int *pIconIndex) = 0; 9144 9145 }; 9146 #ifdef __CRT_UUID_DECL 9147 __CRT_UUID_DECL(IShellIcon, 0x000214e5, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 9148 #endif 9149 #else 9150 typedef struct IShellIconVtbl { 9151 BEGIN_INTERFACE 9152 9153 /*** IUnknown methods ***/ 9154 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 9155 IShellIcon* This, 9156 REFIID riid, 9157 void **ppvObject); 9158 9159 ULONG (STDMETHODCALLTYPE *AddRef)( 9160 IShellIcon* This); 9161 9162 ULONG (STDMETHODCALLTYPE *Release)( 9163 IShellIcon* This); 9164 9165 /*** IShellIcon methods ***/ 9166 HRESULT (STDMETHODCALLTYPE *GetIconOf)( 9167 IShellIcon* This, 9168 PCUITEMID_CHILD pidl, 9169 UINT flags, 9170 int *pIconIndex); 9171 9172 END_INTERFACE 9173 } IShellIconVtbl; 9174 interface IShellIcon { 9175 CONST_VTBL IShellIconVtbl* lpVtbl; 9176 }; 9177 9178 #ifdef COBJMACROS 9179 #ifndef WIDL_C_INLINE_WRAPPERS 9180 /*** IUnknown methods ***/ 9181 #define IShellIcon_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 9182 #define IShellIcon_AddRef(This) (This)->lpVtbl->AddRef(This) 9183 #define IShellIcon_Release(This) (This)->lpVtbl->Release(This) 9184 /*** IShellIcon methods ***/ 9185 #define IShellIcon_GetIconOf(This,pidl,flags,pIconIndex) (This)->lpVtbl->GetIconOf(This,pidl,flags,pIconIndex) 9186 #else 9187 /*** IUnknown methods ***/ 9188 static FORCEINLINE HRESULT IShellIcon_QueryInterface(IShellIcon* This,REFIID riid,void **ppvObject) { 9189 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 9190 } 9191 static FORCEINLINE ULONG IShellIcon_AddRef(IShellIcon* This) { 9192 return This->lpVtbl->AddRef(This); 9193 } 9194 static FORCEINLINE ULONG IShellIcon_Release(IShellIcon* This) { 9195 return This->lpVtbl->Release(This); 9196 } 9197 /*** IShellIcon methods ***/ 9198 static FORCEINLINE HRESULT IShellIcon_GetIconOf(IShellIcon* This,PCUITEMID_CHILD pidl,UINT flags,int *pIconIndex) { 9199 return This->lpVtbl->GetIconOf(This,pidl,flags,pIconIndex); 9200 } 9201 #endif 9202 #endif 9203 9204 #endif 9205 9206 HRESULT STDMETHODCALLTYPE IShellIcon_GetIconOf_Proxy( 9207 IShellIcon* This, 9208 PCUITEMID_CHILD pidl, 9209 UINT flags, 9210 int *pIconIndex); 9211 void __RPC_STUB IShellIcon_GetIconOf_Stub( 9212 IRpcStubBuffer* This, 9213 IRpcChannelBuffer* pRpcChannelBuffer, 9214 PRPC_MESSAGE pRpcMessage, 9215 DWORD* pdwStubPhase); 9216 9217 #endif /* __IShellIcon_INTERFACE_DEFINED__ */ 9218 9219 9220 #define SBSP_DEFBROWSER 0x0000 9221 #define SBSP_SAMEBROWSER 0x0001 9222 #define SBSP_NEWBROWSER 0x0002 9223 9224 #define SBSP_DEFMODE 0x0000 9225 #define SBSP_OPENMODE 0x0010 9226 #define SBSP_EXPLOREMODE 0x0020 9227 #define SBSP_HELPMODE 0x0040 9228 #define SBSP_NOTRANSFERHIST 0x0080 9229 9230 #define SBSP_ABSOLUTE 0x0000 9231 #define SBSP_RELATIVE 0x1000 9232 #define SBSP_PARENT 0x2000 9233 #define SBSP_NAVIGATEBACK 0x4000 9234 #define SBSP_NAVIGATEFORWARD 0x8000 9235 #define SBSP_ALLOW_AUTONAVIGATE 0x00010000 9236 #if NTDDI_VERSION >= NTDDI_VISTA 9237 #define SBSP_KEEPSAMETEMPLATE 0x00020000 9238 #define SBSP_KEEPWORDWHEELTEXT 0x00040000 9239 #define SBSP_ACTIVATE_NOFOCUS 0x00080000 9240 #define SBSP_CREATENOHISTORY 0x00100000 9241 #define SBSP_PLAYNOSOUND 0x00200000 9242 #endif 9243 #if _WIN32_IE >= _WIN32_IE_IE60SP2 9244 #define SBSP_CALLERUNTRUSTED 0x00800000 9245 #define SBSP_TRUSTFIRSTDOWNLOAD 0x01000000 9246 #define SBSP_UNTRUSTEDFORDOWNLOAD 0x02000000 9247 #endif 9248 #define SBSP_NOAUTOSELECT 0x04000000 9249 #define SBSP_WRITENOHISTORY 0x08000000 9250 #if _WIN32_IE >= _WIN32_IE_IE60SP2 9251 #define SBSP_TRUSTEDFORACTIVEX 0x10000000 9252 #endif 9253 #if _WIN32_IE >= _WIN32_IE_IE70 9254 #define SBSP_FEEDNAVIGATION 0x20000000 9255 #endif 9256 #define SBSP_REDIRECT 0x40000000 9257 #define SBSP_INITIATEDBYHLINKFRAME 0x80000000 9258 9259 #define FCW_STATUS 0x0001 9260 #define FCW_TOOLBAR 0x0002 9261 #define FCW_TREE 0x0003 9262 #define FCW_INTERNETBAR 0x0006 9263 #define FCW_PROGRESS 0x0008 9264 9265 #define FCT_MERGE 0x0001 9266 #define FCT_CONFIGABLE 0x0002 9267 #define FCT_ADDTOEND 0x0004 9268 9269 #if 0 9270 typedef LPARAM LPTBBUTTONSB; 9271 #else 9272 #include <commctrl.h> 9273 9274 typedef LPTBBUTTON LPTBBUTTONSB; 9275 #endif 9276 9277 /***************************************************************************** 9278 * IShellBrowser interface 9279 */ 9280 #ifndef __IShellBrowser_INTERFACE_DEFINED__ 9281 #define __IShellBrowser_INTERFACE_DEFINED__ 9282 9283 DEFINE_GUID(IID_IShellBrowser, 0x000214e2, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 9284 #if defined(__cplusplus) && !defined(CINTERFACE) 9285 MIDL_INTERFACE("000214e2-0000-0000-c000-000000000046") 9286 IShellBrowser : public IOleWindow 9287 { 9288 virtual HRESULT STDMETHODCALLTYPE InsertMenusSB( 9289 HMENU hmenuShared, 9290 LPOLEMENUGROUPWIDTHS lpMenuWidths) = 0; 9291 9292 virtual HRESULT STDMETHODCALLTYPE SetMenuSB( 9293 HMENU hmenuShared, 9294 HOLEMENU holemenuRes, 9295 HWND hwndActiveObject) = 0; 9296 9297 virtual HRESULT STDMETHODCALLTYPE RemoveMenusSB( 9298 HMENU hmenuShared) = 0; 9299 9300 virtual HRESULT STDMETHODCALLTYPE SetStatusTextSB( 9301 LPCWSTR pszStatusText) = 0; 9302 9303 virtual HRESULT STDMETHODCALLTYPE EnableModelessSB( 9304 WINBOOL fEnable) = 0; 9305 9306 virtual HRESULT STDMETHODCALLTYPE TranslateAcceleratorSB( 9307 MSG *pmsg, 9308 WORD wID) = 0; 9309 9310 virtual HRESULT STDMETHODCALLTYPE BrowseObject( 9311 PCUIDLIST_RELATIVE pidl, 9312 UINT wFlags) = 0; 9313 9314 virtual HRESULT STDMETHODCALLTYPE GetViewStateStream( 9315 DWORD grfMode, 9316 IStream **ppStrm) = 0; 9317 9318 virtual HRESULT STDMETHODCALLTYPE GetControlWindow( 9319 UINT id, 9320 HWND *phwnd) = 0; 9321 9322 virtual HRESULT STDMETHODCALLTYPE SendControlMsg( 9323 UINT id, 9324 UINT uMsg, 9325 WPARAM wParam, 9326 LPARAM lParam, 9327 LRESULT *pret) = 0; 9328 9329 virtual HRESULT STDMETHODCALLTYPE QueryActiveShellView( 9330 IShellView **ppshv) = 0; 9331 9332 virtual HRESULT STDMETHODCALLTYPE OnViewWindowActive( 9333 IShellView *pshv) = 0; 9334 9335 virtual HRESULT STDMETHODCALLTYPE SetToolbarItems( 9336 LPTBBUTTONSB lpButtons, 9337 UINT nButtons, 9338 UINT uFlags) = 0; 9339 9340 }; 9341 #ifdef __CRT_UUID_DECL 9342 __CRT_UUID_DECL(IShellBrowser, 0x000214e2, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 9343 #endif 9344 #else 9345 typedef struct IShellBrowserVtbl { 9346 BEGIN_INTERFACE 9347 9348 /*** IUnknown methods ***/ 9349 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 9350 IShellBrowser* This, 9351 REFIID riid, 9352 void **ppvObject); 9353 9354 ULONG (STDMETHODCALLTYPE *AddRef)( 9355 IShellBrowser* This); 9356 9357 ULONG (STDMETHODCALLTYPE *Release)( 9358 IShellBrowser* This); 9359 9360 /*** IOleWindow methods ***/ 9361 HRESULT (STDMETHODCALLTYPE *GetWindow)( 9362 IShellBrowser* This, 9363 HWND *phwnd); 9364 9365 HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( 9366 IShellBrowser* This, 9367 WINBOOL fEnterMode); 9368 9369 /*** IShellBrowser methods ***/ 9370 HRESULT (STDMETHODCALLTYPE *InsertMenusSB)( 9371 IShellBrowser* This, 9372 HMENU hmenuShared, 9373 LPOLEMENUGROUPWIDTHS lpMenuWidths); 9374 9375 HRESULT (STDMETHODCALLTYPE *SetMenuSB)( 9376 IShellBrowser* This, 9377 HMENU hmenuShared, 9378 HOLEMENU holemenuRes, 9379 HWND hwndActiveObject); 9380 9381 HRESULT (STDMETHODCALLTYPE *RemoveMenusSB)( 9382 IShellBrowser* This, 9383 HMENU hmenuShared); 9384 9385 HRESULT (STDMETHODCALLTYPE *SetStatusTextSB)( 9386 IShellBrowser* This, 9387 LPCWSTR pszStatusText); 9388 9389 HRESULT (STDMETHODCALLTYPE *EnableModelessSB)( 9390 IShellBrowser* This, 9391 WINBOOL fEnable); 9392 9393 HRESULT (STDMETHODCALLTYPE *TranslateAcceleratorSB)( 9394 IShellBrowser* This, 9395 MSG *pmsg, 9396 WORD wID); 9397 9398 HRESULT (STDMETHODCALLTYPE *BrowseObject)( 9399 IShellBrowser* This, 9400 PCUIDLIST_RELATIVE pidl, 9401 UINT wFlags); 9402 9403 HRESULT (STDMETHODCALLTYPE *GetViewStateStream)( 9404 IShellBrowser* This, 9405 DWORD grfMode, 9406 IStream **ppStrm); 9407 9408 HRESULT (STDMETHODCALLTYPE *GetControlWindow)( 9409 IShellBrowser* This, 9410 UINT id, 9411 HWND *phwnd); 9412 9413 HRESULT (STDMETHODCALLTYPE *SendControlMsg)( 9414 IShellBrowser* This, 9415 UINT id, 9416 UINT uMsg, 9417 WPARAM wParam, 9418 LPARAM lParam, 9419 LRESULT *pret); 9420 9421 HRESULT (STDMETHODCALLTYPE *QueryActiveShellView)( 9422 IShellBrowser* This, 9423 IShellView **ppshv); 9424 9425 HRESULT (STDMETHODCALLTYPE *OnViewWindowActive)( 9426 IShellBrowser* This, 9427 IShellView *pshv); 9428 9429 HRESULT (STDMETHODCALLTYPE *SetToolbarItems)( 9430 IShellBrowser* This, 9431 LPTBBUTTONSB lpButtons, 9432 UINT nButtons, 9433 UINT uFlags); 9434 9435 END_INTERFACE 9436 } IShellBrowserVtbl; 9437 interface IShellBrowser { 9438 CONST_VTBL IShellBrowserVtbl* lpVtbl; 9439 }; 9440 9441 #ifdef COBJMACROS 9442 #ifndef WIDL_C_INLINE_WRAPPERS 9443 /*** IUnknown methods ***/ 9444 #define IShellBrowser_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 9445 #define IShellBrowser_AddRef(This) (This)->lpVtbl->AddRef(This) 9446 #define IShellBrowser_Release(This) (This)->lpVtbl->Release(This) 9447 /*** IOleWindow methods ***/ 9448 #define IShellBrowser_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) 9449 #define IShellBrowser_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) 9450 /*** IShellBrowser methods ***/ 9451 #define IShellBrowser_InsertMenusSB(This,hmenuShared,lpMenuWidths) (This)->lpVtbl->InsertMenusSB(This,hmenuShared,lpMenuWidths) 9452 #define IShellBrowser_SetMenuSB(This,hmenuShared,holemenuRes,hwndActiveObject) (This)->lpVtbl->SetMenuSB(This,hmenuShared,holemenuRes,hwndActiveObject) 9453 #define IShellBrowser_RemoveMenusSB(This,hmenuShared) (This)->lpVtbl->RemoveMenusSB(This,hmenuShared) 9454 #define IShellBrowser_SetStatusTextSB(This,pszStatusText) (This)->lpVtbl->SetStatusTextSB(This,pszStatusText) 9455 #define IShellBrowser_EnableModelessSB(This,fEnable) (This)->lpVtbl->EnableModelessSB(This,fEnable) 9456 #define IShellBrowser_TranslateAcceleratorSB(This,pmsg,wID) (This)->lpVtbl->TranslateAcceleratorSB(This,pmsg,wID) 9457 #define IShellBrowser_BrowseObject(This,pidl,wFlags) (This)->lpVtbl->BrowseObject(This,pidl,wFlags) 9458 #define IShellBrowser_GetViewStateStream(This,grfMode,ppStrm) (This)->lpVtbl->GetViewStateStream(This,grfMode,ppStrm) 9459 #define IShellBrowser_GetControlWindow(This,id,phwnd) (This)->lpVtbl->GetControlWindow(This,id,phwnd) 9460 #define IShellBrowser_SendControlMsg(This,id,uMsg,wParam,lParam,pret) (This)->lpVtbl->SendControlMsg(This,id,uMsg,wParam,lParam,pret) 9461 #define IShellBrowser_QueryActiveShellView(This,ppshv) (This)->lpVtbl->QueryActiveShellView(This,ppshv) 9462 #define IShellBrowser_OnViewWindowActive(This,pshv) (This)->lpVtbl->OnViewWindowActive(This,pshv) 9463 #define IShellBrowser_SetToolbarItems(This,lpButtons,nButtons,uFlags) (This)->lpVtbl->SetToolbarItems(This,lpButtons,nButtons,uFlags) 9464 #else 9465 /*** IUnknown methods ***/ 9466 static FORCEINLINE HRESULT IShellBrowser_QueryInterface(IShellBrowser* This,REFIID riid,void **ppvObject) { 9467 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 9468 } 9469 static FORCEINLINE ULONG IShellBrowser_AddRef(IShellBrowser* This) { 9470 return This->lpVtbl->AddRef(This); 9471 } 9472 static FORCEINLINE ULONG IShellBrowser_Release(IShellBrowser* This) { 9473 return This->lpVtbl->Release(This); 9474 } 9475 /*** IOleWindow methods ***/ 9476 static FORCEINLINE HRESULT IShellBrowser_GetWindow(IShellBrowser* This,HWND *phwnd) { 9477 return This->lpVtbl->GetWindow(This,phwnd); 9478 } 9479 static FORCEINLINE HRESULT IShellBrowser_ContextSensitiveHelp(IShellBrowser* This,WINBOOL fEnterMode) { 9480 return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); 9481 } 9482 /*** IShellBrowser methods ***/ 9483 static FORCEINLINE HRESULT IShellBrowser_InsertMenusSB(IShellBrowser* This,HMENU hmenuShared,LPOLEMENUGROUPWIDTHS lpMenuWidths) { 9484 return This->lpVtbl->InsertMenusSB(This,hmenuShared,lpMenuWidths); 9485 } 9486 static FORCEINLINE HRESULT IShellBrowser_SetMenuSB(IShellBrowser* This,HMENU hmenuShared,HOLEMENU holemenuRes,HWND hwndActiveObject) { 9487 return This->lpVtbl->SetMenuSB(This,hmenuShared,holemenuRes,hwndActiveObject); 9488 } 9489 static FORCEINLINE HRESULT IShellBrowser_RemoveMenusSB(IShellBrowser* This,HMENU hmenuShared) { 9490 return This->lpVtbl->RemoveMenusSB(This,hmenuShared); 9491 } 9492 static FORCEINLINE HRESULT IShellBrowser_SetStatusTextSB(IShellBrowser* This,LPCWSTR pszStatusText) { 9493 return This->lpVtbl->SetStatusTextSB(This,pszStatusText); 9494 } 9495 static FORCEINLINE HRESULT IShellBrowser_EnableModelessSB(IShellBrowser* This,WINBOOL fEnable) { 9496 return This->lpVtbl->EnableModelessSB(This,fEnable); 9497 } 9498 static FORCEINLINE HRESULT IShellBrowser_TranslateAcceleratorSB(IShellBrowser* This,MSG *pmsg,WORD wID) { 9499 return This->lpVtbl->TranslateAcceleratorSB(This,pmsg,wID); 9500 } 9501 static FORCEINLINE HRESULT IShellBrowser_BrowseObject(IShellBrowser* This,PCUIDLIST_RELATIVE pidl,UINT wFlags) { 9502 return This->lpVtbl->BrowseObject(This,pidl,wFlags); 9503 } 9504 static FORCEINLINE HRESULT IShellBrowser_GetViewStateStream(IShellBrowser* This,DWORD grfMode,IStream **ppStrm) { 9505 return This->lpVtbl->GetViewStateStream(This,grfMode,ppStrm); 9506 } 9507 static FORCEINLINE HRESULT IShellBrowser_GetControlWindow(IShellBrowser* This,UINT id,HWND *phwnd) { 9508 return This->lpVtbl->GetControlWindow(This,id,phwnd); 9509 } 9510 static FORCEINLINE HRESULT IShellBrowser_SendControlMsg(IShellBrowser* This,UINT id,UINT uMsg,WPARAM wParam,LPARAM lParam,LRESULT *pret) { 9511 return This->lpVtbl->SendControlMsg(This,id,uMsg,wParam,lParam,pret); 9512 } 9513 static FORCEINLINE HRESULT IShellBrowser_QueryActiveShellView(IShellBrowser* This,IShellView **ppshv) { 9514 return This->lpVtbl->QueryActiveShellView(This,ppshv); 9515 } 9516 static FORCEINLINE HRESULT IShellBrowser_OnViewWindowActive(IShellBrowser* This,IShellView *pshv) { 9517 return This->lpVtbl->OnViewWindowActive(This,pshv); 9518 } 9519 static FORCEINLINE HRESULT IShellBrowser_SetToolbarItems(IShellBrowser* This,LPTBBUTTONSB lpButtons,UINT nButtons,UINT uFlags) { 9520 return This->lpVtbl->SetToolbarItems(This,lpButtons,nButtons,uFlags); 9521 } 9522 #endif 9523 #endif 9524 9525 #endif 9526 9527 HRESULT STDMETHODCALLTYPE IShellBrowser_InsertMenusSB_Proxy( 9528 IShellBrowser* This, 9529 HMENU hmenuShared, 9530 LPOLEMENUGROUPWIDTHS lpMenuWidths); 9531 void __RPC_STUB IShellBrowser_InsertMenusSB_Stub( 9532 IRpcStubBuffer* This, 9533 IRpcChannelBuffer* pRpcChannelBuffer, 9534 PRPC_MESSAGE pRpcMessage, 9535 DWORD* pdwStubPhase); 9536 HRESULT STDMETHODCALLTYPE IShellBrowser_SetMenuSB_Proxy( 9537 IShellBrowser* This, 9538 HMENU hmenuShared, 9539 HOLEMENU holemenuRes, 9540 HWND hwndActiveObject); 9541 void __RPC_STUB IShellBrowser_SetMenuSB_Stub( 9542 IRpcStubBuffer* This, 9543 IRpcChannelBuffer* pRpcChannelBuffer, 9544 PRPC_MESSAGE pRpcMessage, 9545 DWORD* pdwStubPhase); 9546 HRESULT STDMETHODCALLTYPE IShellBrowser_RemoveMenusSB_Proxy( 9547 IShellBrowser* This, 9548 HMENU hmenuShared); 9549 void __RPC_STUB IShellBrowser_RemoveMenusSB_Stub( 9550 IRpcStubBuffer* This, 9551 IRpcChannelBuffer* pRpcChannelBuffer, 9552 PRPC_MESSAGE pRpcMessage, 9553 DWORD* pdwStubPhase); 9554 HRESULT STDMETHODCALLTYPE IShellBrowser_SetStatusTextSB_Proxy( 9555 IShellBrowser* This, 9556 LPCWSTR pszStatusText); 9557 void __RPC_STUB IShellBrowser_SetStatusTextSB_Stub( 9558 IRpcStubBuffer* This, 9559 IRpcChannelBuffer* pRpcChannelBuffer, 9560 PRPC_MESSAGE pRpcMessage, 9561 DWORD* pdwStubPhase); 9562 HRESULT STDMETHODCALLTYPE IShellBrowser_EnableModelessSB_Proxy( 9563 IShellBrowser* This, 9564 WINBOOL fEnable); 9565 void __RPC_STUB IShellBrowser_EnableModelessSB_Stub( 9566 IRpcStubBuffer* This, 9567 IRpcChannelBuffer* pRpcChannelBuffer, 9568 PRPC_MESSAGE pRpcMessage, 9569 DWORD* pdwStubPhase); 9570 HRESULT STDMETHODCALLTYPE IShellBrowser_TranslateAcceleratorSB_Proxy( 9571 IShellBrowser* This, 9572 MSG *pmsg, 9573 WORD wID); 9574 void __RPC_STUB IShellBrowser_TranslateAcceleratorSB_Stub( 9575 IRpcStubBuffer* This, 9576 IRpcChannelBuffer* pRpcChannelBuffer, 9577 PRPC_MESSAGE pRpcMessage, 9578 DWORD* pdwStubPhase); 9579 HRESULT STDMETHODCALLTYPE IShellBrowser_BrowseObject_Proxy( 9580 IShellBrowser* This, 9581 PCUIDLIST_RELATIVE pidl, 9582 UINT wFlags); 9583 void __RPC_STUB IShellBrowser_BrowseObject_Stub( 9584 IRpcStubBuffer* This, 9585 IRpcChannelBuffer* pRpcChannelBuffer, 9586 PRPC_MESSAGE pRpcMessage, 9587 DWORD* pdwStubPhase); 9588 HRESULT STDMETHODCALLTYPE IShellBrowser_GetViewStateStream_Proxy( 9589 IShellBrowser* This, 9590 DWORD grfMode, 9591 IStream **ppStrm); 9592 void __RPC_STUB IShellBrowser_GetViewStateStream_Stub( 9593 IRpcStubBuffer* This, 9594 IRpcChannelBuffer* pRpcChannelBuffer, 9595 PRPC_MESSAGE pRpcMessage, 9596 DWORD* pdwStubPhase); 9597 HRESULT STDMETHODCALLTYPE IShellBrowser_GetControlWindow_Proxy( 9598 IShellBrowser* This, 9599 UINT id, 9600 HWND *phwnd); 9601 void __RPC_STUB IShellBrowser_GetControlWindow_Stub( 9602 IRpcStubBuffer* This, 9603 IRpcChannelBuffer* pRpcChannelBuffer, 9604 PRPC_MESSAGE pRpcMessage, 9605 DWORD* pdwStubPhase); 9606 HRESULT STDMETHODCALLTYPE IShellBrowser_QueryActiveShellView_Proxy( 9607 IShellBrowser* This, 9608 IShellView **ppshv); 9609 void __RPC_STUB IShellBrowser_QueryActiveShellView_Stub( 9610 IRpcStubBuffer* This, 9611 IRpcChannelBuffer* pRpcChannelBuffer, 9612 PRPC_MESSAGE pRpcMessage, 9613 DWORD* pdwStubPhase); 9614 HRESULT STDMETHODCALLTYPE IShellBrowser_OnViewWindowActive_Proxy( 9615 IShellBrowser* This, 9616 IShellView *pshv); 9617 void __RPC_STUB IShellBrowser_OnViewWindowActive_Stub( 9618 IRpcStubBuffer* This, 9619 IRpcChannelBuffer* pRpcChannelBuffer, 9620 PRPC_MESSAGE pRpcMessage, 9621 DWORD* pdwStubPhase); 9622 9623 #endif /* __IShellBrowser_INTERFACE_DEFINED__ */ 9624 9625 9626 typedef IShellBrowser *LPSHELLBROWSER; 9627 9628 /***************************************************************************** 9629 * IProfferService interface 9630 */ 9631 #ifndef __IProfferService_INTERFACE_DEFINED__ 9632 #define __IProfferService_INTERFACE_DEFINED__ 9633 9634 DEFINE_GUID(IID_IProfferService, 0xcb728b20, 0xf786, 0x11ce, 0x92,0xad, 0x00,0xaa,0x00,0xa7,0x4c,0xd0); 9635 #if defined(__cplusplus) && !defined(CINTERFACE) 9636 MIDL_INTERFACE("cb728b20-f786-11ce-92ad-00aa00a74cd0") 9637 IProfferService : public IUnknown 9638 { 9639 virtual HRESULT STDMETHODCALLTYPE ProfferService( 9640 REFGUID guidService, 9641 IServiceProvider *psp, 9642 DWORD *pdwCookie) = 0; 9643 9644 virtual HRESULT STDMETHODCALLTYPE RevokeService( 9645 DWORD dwCookie) = 0; 9646 9647 }; 9648 #ifdef __CRT_UUID_DECL 9649 __CRT_UUID_DECL(IProfferService, 0xcb728b20, 0xf786, 0x11ce, 0x92,0xad, 0x00,0xaa,0x00,0xa7,0x4c,0xd0) 9650 #endif 9651 #else 9652 typedef struct IProfferServiceVtbl { 9653 BEGIN_INTERFACE 9654 9655 /*** IUnknown methods ***/ 9656 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 9657 IProfferService* This, 9658 REFIID riid, 9659 void **ppvObject); 9660 9661 ULONG (STDMETHODCALLTYPE *AddRef)( 9662 IProfferService* This); 9663 9664 ULONG (STDMETHODCALLTYPE *Release)( 9665 IProfferService* This); 9666 9667 /*** IProfferService methods ***/ 9668 HRESULT (STDMETHODCALLTYPE *ProfferService)( 9669 IProfferService* This, 9670 REFGUID guidService, 9671 IServiceProvider *psp, 9672 DWORD *pdwCookie); 9673 9674 HRESULT (STDMETHODCALLTYPE *RevokeService)( 9675 IProfferService* This, 9676 DWORD dwCookie); 9677 9678 END_INTERFACE 9679 } IProfferServiceVtbl; 9680 interface IProfferService { 9681 CONST_VTBL IProfferServiceVtbl* lpVtbl; 9682 }; 9683 9684 #ifdef COBJMACROS 9685 #ifndef WIDL_C_INLINE_WRAPPERS 9686 /*** IUnknown methods ***/ 9687 #define IProfferService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 9688 #define IProfferService_AddRef(This) (This)->lpVtbl->AddRef(This) 9689 #define IProfferService_Release(This) (This)->lpVtbl->Release(This) 9690 /*** IProfferService methods ***/ 9691 #define IProfferService_ProfferService(This,guidService,psp,pdwCookie) (This)->lpVtbl->ProfferService(This,guidService,psp,pdwCookie) 9692 #define IProfferService_RevokeService(This,dwCookie) (This)->lpVtbl->RevokeService(This,dwCookie) 9693 #else 9694 /*** IUnknown methods ***/ 9695 static FORCEINLINE HRESULT IProfferService_QueryInterface(IProfferService* This,REFIID riid,void **ppvObject) { 9696 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 9697 } 9698 static FORCEINLINE ULONG IProfferService_AddRef(IProfferService* This) { 9699 return This->lpVtbl->AddRef(This); 9700 } 9701 static FORCEINLINE ULONG IProfferService_Release(IProfferService* This) { 9702 return This->lpVtbl->Release(This); 9703 } 9704 /*** IProfferService methods ***/ 9705 static FORCEINLINE HRESULT IProfferService_ProfferService(IProfferService* This,REFGUID guidService,IServiceProvider *psp,DWORD *pdwCookie) { 9706 return This->lpVtbl->ProfferService(This,guidService,psp,pdwCookie); 9707 } 9708 static FORCEINLINE HRESULT IProfferService_RevokeService(IProfferService* This,DWORD dwCookie) { 9709 return This->lpVtbl->RevokeService(This,dwCookie); 9710 } 9711 #endif 9712 #endif 9713 9714 #endif 9715 9716 HRESULT STDMETHODCALLTYPE IProfferService_ProfferService_Proxy( 9717 IProfferService* This, 9718 REFGUID guidService, 9719 IServiceProvider *psp, 9720 DWORD *pdwCookie); 9721 void __RPC_STUB IProfferService_ProfferService_Stub( 9722 IRpcStubBuffer* This, 9723 IRpcChannelBuffer* pRpcChannelBuffer, 9724 PRPC_MESSAGE pRpcMessage, 9725 DWORD* pdwStubPhase); 9726 HRESULT STDMETHODCALLTYPE IProfferService_RevokeService_Proxy( 9727 IProfferService* This, 9728 DWORD dwCookie); 9729 void __RPC_STUB IProfferService_RevokeService_Stub( 9730 IRpcStubBuffer* This, 9731 IRpcChannelBuffer* pRpcChannelBuffer, 9732 PRPC_MESSAGE pRpcMessage, 9733 DWORD* pdwStubPhase); 9734 9735 #endif /* __IProfferService_INTERFACE_DEFINED__ */ 9736 9737 9738 #define SID_SProfferService IID_IProfferService 9739 #define STR_DONT_RESOLVE_LINK L"Don't Resolve Link" 9740 #define STR_GET_ASYNC_HANDLER L"GetAsyncHandler" 9741 9742 /***************************************************************************** 9743 * IShellItem interface 9744 */ 9745 #ifndef __IShellItem_INTERFACE_DEFINED__ 9746 #define __IShellItem_INTERFACE_DEFINED__ 9747 9748 typedef enum _SIGDN { 9749 SIGDN_NORMALDISPLAY = 0x0, 9750 SIGDN_PARENTRELATIVEPARSING = (int)0x80018001, 9751 SIGDN_DESKTOPABSOLUTEPARSING = (int)0x80028000, 9752 SIGDN_PARENTRELATIVEEDITING = (int)0x80031001, 9753 SIGDN_DESKTOPABSOLUTEEDITING = (int)0x8004c000, 9754 SIGDN_FILESYSPATH = (int)0x80058000, 9755 SIGDN_URL = (int)0x80068000, 9756 SIGDN_PARENTRELATIVEFORADDRESSBAR = (int)0x8007c001, 9757 SIGDN_PARENTRELATIVE = (int)0x80080001, 9758 SIGDN_PARENTRELATIVEFORUI = (int)0x80094001 9759 } SIGDN; 9760 9761 enum _SICHINTF { 9762 SICHINT_DISPLAY = 0x0, 9763 SICHINT_ALLFIELDS = (int)0x80000000, 9764 SICHINT_CANONICAL = 0x10000000, 9765 SICHINT_TEST_FILESYSPATH_IF_NOT_EQUAL = 0x20000000 9766 }; 9767 9768 9769 typedef DWORD SICHINTF; 9770 9771 DEFINE_GUID(IID_IShellItem, 0x43826d1e, 0xe718, 0x42ee, 0xbc,0x55, 0xa1,0xe2,0x61,0xc3,0x7b,0xfe); 9772 #if defined(__cplusplus) && !defined(CINTERFACE) 9773 MIDL_INTERFACE("43826d1e-e718-42ee-bc55-a1e261c37bfe") 9774 IShellItem : public IUnknown 9775 { 9776 virtual HRESULT STDMETHODCALLTYPE BindToHandler( 9777 IBindCtx *pbc, 9778 REFGUID bhid, 9779 REFIID riid, 9780 void **ppv) = 0; 9781 9782 virtual HRESULT STDMETHODCALLTYPE GetParent( 9783 IShellItem **ppsi) = 0; 9784 9785 virtual HRESULT STDMETHODCALLTYPE GetDisplayName( 9786 SIGDN sigdnName, 9787 LPWSTR *ppszName) = 0; 9788 9789 virtual HRESULT STDMETHODCALLTYPE GetAttributes( 9790 SFGAOF sfgaoMask, 9791 SFGAOF *psfgaoAttribs) = 0; 9792 9793 virtual HRESULT STDMETHODCALLTYPE Compare( 9794 IShellItem *psi, 9795 SICHINTF hint, 9796 int *piOrder) = 0; 9797 9798 }; 9799 #ifdef __CRT_UUID_DECL 9800 __CRT_UUID_DECL(IShellItem, 0x43826d1e, 0xe718, 0x42ee, 0xbc,0x55, 0xa1,0xe2,0x61,0xc3,0x7b,0xfe) 9801 #endif 9802 #else 9803 typedef struct IShellItemVtbl { 9804 BEGIN_INTERFACE 9805 9806 /*** IUnknown methods ***/ 9807 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 9808 IShellItem* This, 9809 REFIID riid, 9810 void **ppvObject); 9811 9812 ULONG (STDMETHODCALLTYPE *AddRef)( 9813 IShellItem* This); 9814 9815 ULONG (STDMETHODCALLTYPE *Release)( 9816 IShellItem* This); 9817 9818 /*** IShellItem methods ***/ 9819 HRESULT (STDMETHODCALLTYPE *BindToHandler)( 9820 IShellItem* This, 9821 IBindCtx *pbc, 9822 REFGUID bhid, 9823 REFIID riid, 9824 void **ppv); 9825 9826 HRESULT (STDMETHODCALLTYPE *GetParent)( 9827 IShellItem* This, 9828 IShellItem **ppsi); 9829 9830 HRESULT (STDMETHODCALLTYPE *GetDisplayName)( 9831 IShellItem* This, 9832 SIGDN sigdnName, 9833 LPWSTR *ppszName); 9834 9835 HRESULT (STDMETHODCALLTYPE *GetAttributes)( 9836 IShellItem* This, 9837 SFGAOF sfgaoMask, 9838 SFGAOF *psfgaoAttribs); 9839 9840 HRESULT (STDMETHODCALLTYPE *Compare)( 9841 IShellItem* This, 9842 IShellItem *psi, 9843 SICHINTF hint, 9844 int *piOrder); 9845 9846 END_INTERFACE 9847 } IShellItemVtbl; 9848 interface IShellItem { 9849 CONST_VTBL IShellItemVtbl* lpVtbl; 9850 }; 9851 9852 #ifdef COBJMACROS 9853 #ifndef WIDL_C_INLINE_WRAPPERS 9854 /*** IUnknown methods ***/ 9855 #define IShellItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 9856 #define IShellItem_AddRef(This) (This)->lpVtbl->AddRef(This) 9857 #define IShellItem_Release(This) (This)->lpVtbl->Release(This) 9858 /*** IShellItem methods ***/ 9859 #define IShellItem_BindToHandler(This,pbc,bhid,riid,ppv) (This)->lpVtbl->BindToHandler(This,pbc,bhid,riid,ppv) 9860 #define IShellItem_GetParent(This,ppsi) (This)->lpVtbl->GetParent(This,ppsi) 9861 #define IShellItem_GetDisplayName(This,sigdnName,ppszName) (This)->lpVtbl->GetDisplayName(This,sigdnName,ppszName) 9862 #define IShellItem_GetAttributes(This,sfgaoMask,psfgaoAttribs) (This)->lpVtbl->GetAttributes(This,sfgaoMask,psfgaoAttribs) 9863 #define IShellItem_Compare(This,psi,hint,piOrder) (This)->lpVtbl->Compare(This,psi,hint,piOrder) 9864 #else 9865 /*** IUnknown methods ***/ 9866 static FORCEINLINE HRESULT IShellItem_QueryInterface(IShellItem* This,REFIID riid,void **ppvObject) { 9867 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 9868 } 9869 static FORCEINLINE ULONG IShellItem_AddRef(IShellItem* This) { 9870 return This->lpVtbl->AddRef(This); 9871 } 9872 static FORCEINLINE ULONG IShellItem_Release(IShellItem* This) { 9873 return This->lpVtbl->Release(This); 9874 } 9875 /*** IShellItem methods ***/ 9876 static FORCEINLINE HRESULT IShellItem_BindToHandler(IShellItem* This,IBindCtx *pbc,REFGUID bhid,REFIID riid,void **ppv) { 9877 return This->lpVtbl->BindToHandler(This,pbc,bhid,riid,ppv); 9878 } 9879 static FORCEINLINE HRESULT IShellItem_GetParent(IShellItem* This,IShellItem **ppsi) { 9880 return This->lpVtbl->GetParent(This,ppsi); 9881 } 9882 static FORCEINLINE HRESULT IShellItem_GetDisplayName(IShellItem* This,SIGDN sigdnName,LPWSTR *ppszName) { 9883 return This->lpVtbl->GetDisplayName(This,sigdnName,ppszName); 9884 } 9885 static FORCEINLINE HRESULT IShellItem_GetAttributes(IShellItem* This,SFGAOF sfgaoMask,SFGAOF *psfgaoAttribs) { 9886 return This->lpVtbl->GetAttributes(This,sfgaoMask,psfgaoAttribs); 9887 } 9888 static FORCEINLINE HRESULT IShellItem_Compare(IShellItem* This,IShellItem *psi,SICHINTF hint,int *piOrder) { 9889 return This->lpVtbl->Compare(This,psi,hint,piOrder); 9890 } 9891 #endif 9892 #endif 9893 9894 #endif 9895 9896 HRESULT STDMETHODCALLTYPE IShellItem_BindToHandler_Proxy( 9897 IShellItem* This, 9898 IBindCtx *pbc, 9899 REFGUID bhid, 9900 REFIID riid, 9901 void **ppv); 9902 void __RPC_STUB IShellItem_BindToHandler_Stub( 9903 IRpcStubBuffer* This, 9904 IRpcChannelBuffer* pRpcChannelBuffer, 9905 PRPC_MESSAGE pRpcMessage, 9906 DWORD* pdwStubPhase); 9907 HRESULT STDMETHODCALLTYPE IShellItem_GetParent_Proxy( 9908 IShellItem* This, 9909 IShellItem **ppsi); 9910 void __RPC_STUB IShellItem_GetParent_Stub( 9911 IRpcStubBuffer* This, 9912 IRpcChannelBuffer* pRpcChannelBuffer, 9913 PRPC_MESSAGE pRpcMessage, 9914 DWORD* pdwStubPhase); 9915 HRESULT STDMETHODCALLTYPE IShellItem_GetDisplayName_Proxy( 9916 IShellItem* This, 9917 SIGDN sigdnName, 9918 LPWSTR *ppszName); 9919 void __RPC_STUB IShellItem_GetDisplayName_Stub( 9920 IRpcStubBuffer* This, 9921 IRpcChannelBuffer* pRpcChannelBuffer, 9922 PRPC_MESSAGE pRpcMessage, 9923 DWORD* pdwStubPhase); 9924 HRESULT STDMETHODCALLTYPE IShellItem_GetAttributes_Proxy( 9925 IShellItem* This, 9926 SFGAOF sfgaoMask, 9927 SFGAOF *psfgaoAttribs); 9928 void __RPC_STUB IShellItem_GetAttributes_Stub( 9929 IRpcStubBuffer* This, 9930 IRpcChannelBuffer* pRpcChannelBuffer, 9931 PRPC_MESSAGE pRpcMessage, 9932 DWORD* pdwStubPhase); 9933 HRESULT STDMETHODCALLTYPE IShellItem_Compare_Proxy( 9934 IShellItem* This, 9935 IShellItem *psi, 9936 SICHINTF hint, 9937 int *piOrder); 9938 void __RPC_STUB IShellItem_Compare_Stub( 9939 IRpcStubBuffer* This, 9940 IRpcChannelBuffer* pRpcChannelBuffer, 9941 PRPC_MESSAGE pRpcMessage, 9942 DWORD* pdwStubPhase); 9943 9944 #endif /* __IShellItem_INTERFACE_DEFINED__ */ 9945 9946 9947 SHSTDAPI_(PIDLIST_ABSOLUTE) SHSimpleIDListFromPath(PCWSTR pszPath); 9948 9949 #if _WIN32_IE >= _WIN32_IE_IE70 9950 SHSTDAPI SHCreateItemFromIDList(PCIDLIST_ABSOLUTE pidl, REFIID riid, void **ppv); 9951 SHSTDAPI SHCreateItemFromParsingName(PCWSTR pszPath, IBindCtx *pbc, REFIID riid, void **ppv); 9952 SHSTDAPI SHCreateItemWithParent(PCIDLIST_ABSOLUTE pidlParent, IShellFolder *psfParent, PCUITEMID_CHILD pidl, REFIID riid, void **ppvItem); 9953 SHSTDAPI SHCreateItemFromRelativeName(IShellItem *psiParent, PCWSTR pszName, IBindCtx *pbc, REFIID riid, void **ppv); 9954 #endif 9955 #if NTDDI_VERSION >= NTDDI_VISTA 9956 SHSTDAPI SHCreateItemInKnownFolder(REFKNOWNFOLDERID kfid, DWORD dwKFFlags, PCWSTR pszItem, REFIID riid, void **ppv); 9957 SHSTDAPI SHGetIDListFromObject(IUnknown *punk, PIDLIST_ABSOLUTE *ppidl); 9958 SHSTDAPI SHGetItemFromObject(IUnknown *punk, REFIID riid, void **ppv); 9959 SHSTDAPI SHGetPropertyStoreFromIDList(PCIDLIST_ABSOLUTE pidl, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv); 9960 SHSTDAPI SHGetPropertyStoreFromParsingName(PCWSTR pszPath, IBindCtx *pbc, GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv); 9961 SHSTDAPI SHGetNameFromIDList(PCIDLIST_ABSOLUTE pidl, SIGDN sigdnName, PWSTR *ppszName); 9962 #endif 9963 #if NTDDI_VERSION >= NTDDI_WIN7 9964 typedef enum DATAOBJ_GET_ITEM_FLAGS { 9965 DOGIF_DEFAULT = 0x0, 9966 DOGIF_TRAVERSE_LINK = 0x1, 9967 DOGIF_NO_HDROP = 0x2, 9968 DOGIF_NO_URL = 0x4, 9969 DOGIF_ONLY_IF_ONE = 0x8 9970 } DATAOBJ_GET_ITEM_FLAGS; 9971 9972 DEFINE_ENUM_FLAG_OPERATORS(DATAOBJ_GET_ITEM_FLAGS) 9973 9974 STDAPI SHGetItemFromDataObject(IDataObject *pdtobj, DATAOBJ_GET_ITEM_FLAGS dwFlags, REFIID riid, void **ppv); 9975 #endif 9976 9977 #define STR_GPS_HANDLERPROPERTIESONLY L"GPS_HANDLERPROPERTIESONLY" 9978 #define STR_GPS_FASTPROPERTIESONLY L"GPS_FASTPROPERTIESONLY" 9979 #define STR_GPS_OPENSLOWITEM L"GPS_OPENSLOWITEM" 9980 #define STR_GPS_DELAYCREATION L"GPS_DELAYCREATION" 9981 #define STR_GPS_BESTEFFORT L"GPS_BESTEFFORT" 9982 #define STR_GPS_NO_OPLOCK L"GPS_NO_OPLOCK" 9983 9984 /***************************************************************************** 9985 * IShellItem2 interface 9986 */ 9987 #ifndef __IShellItem2_INTERFACE_DEFINED__ 9988 #define __IShellItem2_INTERFACE_DEFINED__ 9989 9990 DEFINE_GUID(IID_IShellItem2, 0x7e9fb0d3, 0x919f, 0x4307, 0xab,0x2e, 0x9b,0x18,0x60,0x31,0x0c,0x93); 9991 #if defined(__cplusplus) && !defined(CINTERFACE) 9992 MIDL_INTERFACE("7e9fb0d3-919f-4307-ab2e-9b1860310c93") 9993 IShellItem2 : public IShellItem 9994 { 9995 virtual HRESULT STDMETHODCALLTYPE GetPropertyStore( 9996 GETPROPERTYSTOREFLAGS flags, 9997 REFIID riid, 9998 void **ppv) = 0; 9999 10000 virtual HRESULT STDMETHODCALLTYPE GetPropertyStoreWithCreateObject( 10001 GETPROPERTYSTOREFLAGS flags, 10002 IUnknown *punkCreateObject, 10003 REFIID riid, 10004 void **ppv) = 0; 10005 10006 virtual HRESULT STDMETHODCALLTYPE GetPropertyStoreForKeys( 10007 const PROPERTYKEY *rgKeys, 10008 UINT cKeys, 10009 GETPROPERTYSTOREFLAGS flags, 10010 REFIID riid, 10011 void **ppv) = 0; 10012 10013 virtual HRESULT STDMETHODCALLTYPE GetPropertyDescriptionList( 10014 REFPROPERTYKEY keyType, 10015 REFIID riid, 10016 void **ppv) = 0; 10017 10018 virtual HRESULT STDMETHODCALLTYPE Update( 10019 IBindCtx *pbc) = 0; 10020 10021 virtual HRESULT STDMETHODCALLTYPE GetProperty( 10022 REFPROPERTYKEY key, 10023 PROPVARIANT *ppropvar) = 0; 10024 10025 virtual HRESULT STDMETHODCALLTYPE GetCLSID( 10026 REFPROPERTYKEY key, 10027 CLSID *pclsid) = 0; 10028 10029 virtual HRESULT STDMETHODCALLTYPE GetFileTime( 10030 REFPROPERTYKEY key, 10031 FILETIME *pft) = 0; 10032 10033 virtual HRESULT STDMETHODCALLTYPE GetInt32( 10034 REFPROPERTYKEY key, 10035 int *pi) = 0; 10036 10037 virtual HRESULT STDMETHODCALLTYPE GetString( 10038 REFPROPERTYKEY key, 10039 LPWSTR *ppsz) = 0; 10040 10041 virtual HRESULT STDMETHODCALLTYPE GetUInt32( 10042 REFPROPERTYKEY key, 10043 ULONG *pui) = 0; 10044 10045 virtual HRESULT STDMETHODCALLTYPE GetUInt64( 10046 REFPROPERTYKEY key, 10047 ULONGLONG *pull) = 0; 10048 10049 virtual HRESULT STDMETHODCALLTYPE GetBool( 10050 REFPROPERTYKEY key, 10051 WINBOOL *pf) = 0; 10052 10053 }; 10054 #ifdef __CRT_UUID_DECL 10055 __CRT_UUID_DECL(IShellItem2, 0x7e9fb0d3, 0x919f, 0x4307, 0xab,0x2e, 0x9b,0x18,0x60,0x31,0x0c,0x93) 10056 #endif 10057 #else 10058 typedef struct IShellItem2Vtbl { 10059 BEGIN_INTERFACE 10060 10061 /*** IUnknown methods ***/ 10062 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 10063 IShellItem2* This, 10064 REFIID riid, 10065 void **ppvObject); 10066 10067 ULONG (STDMETHODCALLTYPE *AddRef)( 10068 IShellItem2* This); 10069 10070 ULONG (STDMETHODCALLTYPE *Release)( 10071 IShellItem2* This); 10072 10073 /*** IShellItem methods ***/ 10074 HRESULT (STDMETHODCALLTYPE *BindToHandler)( 10075 IShellItem2* This, 10076 IBindCtx *pbc, 10077 REFGUID bhid, 10078 REFIID riid, 10079 void **ppv); 10080 10081 HRESULT (STDMETHODCALLTYPE *GetParent)( 10082 IShellItem2* This, 10083 IShellItem **ppsi); 10084 10085 HRESULT (STDMETHODCALLTYPE *GetDisplayName)( 10086 IShellItem2* This, 10087 SIGDN sigdnName, 10088 LPWSTR *ppszName); 10089 10090 HRESULT (STDMETHODCALLTYPE *GetAttributes)( 10091 IShellItem2* This, 10092 SFGAOF sfgaoMask, 10093 SFGAOF *psfgaoAttribs); 10094 10095 HRESULT (STDMETHODCALLTYPE *Compare)( 10096 IShellItem2* This, 10097 IShellItem *psi, 10098 SICHINTF hint, 10099 int *piOrder); 10100 10101 /*** IShellItem2 methods ***/ 10102 HRESULT (STDMETHODCALLTYPE *GetPropertyStore)( 10103 IShellItem2* This, 10104 GETPROPERTYSTOREFLAGS flags, 10105 REFIID riid, 10106 void **ppv); 10107 10108 HRESULT (STDMETHODCALLTYPE *GetPropertyStoreWithCreateObject)( 10109 IShellItem2* This, 10110 GETPROPERTYSTOREFLAGS flags, 10111 IUnknown *punkCreateObject, 10112 REFIID riid, 10113 void **ppv); 10114 10115 HRESULT (STDMETHODCALLTYPE *GetPropertyStoreForKeys)( 10116 IShellItem2* This, 10117 const PROPERTYKEY *rgKeys, 10118 UINT cKeys, 10119 GETPROPERTYSTOREFLAGS flags, 10120 REFIID riid, 10121 void **ppv); 10122 10123 HRESULT (STDMETHODCALLTYPE *GetPropertyDescriptionList)( 10124 IShellItem2* This, 10125 REFPROPERTYKEY keyType, 10126 REFIID riid, 10127 void **ppv); 10128 10129 HRESULT (STDMETHODCALLTYPE *Update)( 10130 IShellItem2* This, 10131 IBindCtx *pbc); 10132 10133 HRESULT (STDMETHODCALLTYPE *GetProperty)( 10134 IShellItem2* This, 10135 REFPROPERTYKEY key, 10136 PROPVARIANT *ppropvar); 10137 10138 HRESULT (STDMETHODCALLTYPE *GetCLSID)( 10139 IShellItem2* This, 10140 REFPROPERTYKEY key, 10141 CLSID *pclsid); 10142 10143 HRESULT (STDMETHODCALLTYPE *GetFileTime)( 10144 IShellItem2* This, 10145 REFPROPERTYKEY key, 10146 FILETIME *pft); 10147 10148 HRESULT (STDMETHODCALLTYPE *GetInt32)( 10149 IShellItem2* This, 10150 REFPROPERTYKEY key, 10151 int *pi); 10152 10153 HRESULT (STDMETHODCALLTYPE *GetString)( 10154 IShellItem2* This, 10155 REFPROPERTYKEY key, 10156 LPWSTR *ppsz); 10157 10158 HRESULT (STDMETHODCALLTYPE *GetUInt32)( 10159 IShellItem2* This, 10160 REFPROPERTYKEY key, 10161 ULONG *pui); 10162 10163 HRESULT (STDMETHODCALLTYPE *GetUInt64)( 10164 IShellItem2* This, 10165 REFPROPERTYKEY key, 10166 ULONGLONG *pull); 10167 10168 HRESULT (STDMETHODCALLTYPE *GetBool)( 10169 IShellItem2* This, 10170 REFPROPERTYKEY key, 10171 WINBOOL *pf); 10172 10173 END_INTERFACE 10174 } IShellItem2Vtbl; 10175 interface IShellItem2 { 10176 CONST_VTBL IShellItem2Vtbl* lpVtbl; 10177 }; 10178 10179 #ifdef COBJMACROS 10180 #ifndef WIDL_C_INLINE_WRAPPERS 10181 /*** IUnknown methods ***/ 10182 #define IShellItem2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 10183 #define IShellItem2_AddRef(This) (This)->lpVtbl->AddRef(This) 10184 #define IShellItem2_Release(This) (This)->lpVtbl->Release(This) 10185 /*** IShellItem methods ***/ 10186 #define IShellItem2_BindToHandler(This,pbc,bhid,riid,ppv) (This)->lpVtbl->BindToHandler(This,pbc,bhid,riid,ppv) 10187 #define IShellItem2_GetParent(This,ppsi) (This)->lpVtbl->GetParent(This,ppsi) 10188 #define IShellItem2_GetDisplayName(This,sigdnName,ppszName) (This)->lpVtbl->GetDisplayName(This,sigdnName,ppszName) 10189 #define IShellItem2_GetAttributes(This,sfgaoMask,psfgaoAttribs) (This)->lpVtbl->GetAttributes(This,sfgaoMask,psfgaoAttribs) 10190 #define IShellItem2_Compare(This,psi,hint,piOrder) (This)->lpVtbl->Compare(This,psi,hint,piOrder) 10191 /*** IShellItem2 methods ***/ 10192 #define IShellItem2_GetPropertyStore(This,flags,riid,ppv) (This)->lpVtbl->GetPropertyStore(This,flags,riid,ppv) 10193 #define IShellItem2_GetPropertyStoreWithCreateObject(This,flags,punkCreateObject,riid,ppv) (This)->lpVtbl->GetPropertyStoreWithCreateObject(This,flags,punkCreateObject,riid,ppv) 10194 #define IShellItem2_GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) (This)->lpVtbl->GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) 10195 #define IShellItem2_GetPropertyDescriptionList(This,keyType,riid,ppv) (This)->lpVtbl->GetPropertyDescriptionList(This,keyType,riid,ppv) 10196 #define IShellItem2_Update(This,pbc) (This)->lpVtbl->Update(This,pbc) 10197 #define IShellItem2_GetProperty(This,key,ppropvar) (This)->lpVtbl->GetProperty(This,key,ppropvar) 10198 #define IShellItem2_GetCLSID(This,key,pclsid) (This)->lpVtbl->GetCLSID(This,key,pclsid) 10199 #define IShellItem2_GetFileTime(This,key,pft) (This)->lpVtbl->GetFileTime(This,key,pft) 10200 #define IShellItem2_GetInt32(This,key,pi) (This)->lpVtbl->GetInt32(This,key,pi) 10201 #define IShellItem2_GetString(This,key,ppsz) (This)->lpVtbl->GetString(This,key,ppsz) 10202 #define IShellItem2_GetUInt32(This,key,pui) (This)->lpVtbl->GetUInt32(This,key,pui) 10203 #define IShellItem2_GetUInt64(This,key,pull) (This)->lpVtbl->GetUInt64(This,key,pull) 10204 #define IShellItem2_GetBool(This,key,pf) (This)->lpVtbl->GetBool(This,key,pf) 10205 #else 10206 /*** IUnknown methods ***/ 10207 static FORCEINLINE HRESULT IShellItem2_QueryInterface(IShellItem2* This,REFIID riid,void **ppvObject) { 10208 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 10209 } 10210 static FORCEINLINE ULONG IShellItem2_AddRef(IShellItem2* This) { 10211 return This->lpVtbl->AddRef(This); 10212 } 10213 static FORCEINLINE ULONG IShellItem2_Release(IShellItem2* This) { 10214 return This->lpVtbl->Release(This); 10215 } 10216 /*** IShellItem methods ***/ 10217 static FORCEINLINE HRESULT IShellItem2_BindToHandler(IShellItem2* This,IBindCtx *pbc,REFGUID bhid,REFIID riid,void **ppv) { 10218 return This->lpVtbl->BindToHandler(This,pbc,bhid,riid,ppv); 10219 } 10220 static FORCEINLINE HRESULT IShellItem2_GetParent(IShellItem2* This,IShellItem **ppsi) { 10221 return This->lpVtbl->GetParent(This,ppsi); 10222 } 10223 static FORCEINLINE HRESULT IShellItem2_GetDisplayName(IShellItem2* This,SIGDN sigdnName,LPWSTR *ppszName) { 10224 return This->lpVtbl->GetDisplayName(This,sigdnName,ppszName); 10225 } 10226 static FORCEINLINE HRESULT IShellItem2_GetAttributes(IShellItem2* This,SFGAOF sfgaoMask,SFGAOF *psfgaoAttribs) { 10227 return This->lpVtbl->GetAttributes(This,sfgaoMask,psfgaoAttribs); 10228 } 10229 static FORCEINLINE HRESULT IShellItem2_Compare(IShellItem2* This,IShellItem *psi,SICHINTF hint,int *piOrder) { 10230 return This->lpVtbl->Compare(This,psi,hint,piOrder); 10231 } 10232 /*** IShellItem2 methods ***/ 10233 static FORCEINLINE HRESULT IShellItem2_GetPropertyStore(IShellItem2* This,GETPROPERTYSTOREFLAGS flags,REFIID riid,void **ppv) { 10234 return This->lpVtbl->GetPropertyStore(This,flags,riid,ppv); 10235 } 10236 static FORCEINLINE HRESULT IShellItem2_GetPropertyStoreWithCreateObject(IShellItem2* This,GETPROPERTYSTOREFLAGS flags,IUnknown *punkCreateObject,REFIID riid,void **ppv) { 10237 return This->lpVtbl->GetPropertyStoreWithCreateObject(This,flags,punkCreateObject,riid,ppv); 10238 } 10239 static FORCEINLINE HRESULT IShellItem2_GetPropertyStoreForKeys(IShellItem2* This,const PROPERTYKEY *rgKeys,UINT cKeys,GETPROPERTYSTOREFLAGS flags,REFIID riid,void **ppv) { 10240 return This->lpVtbl->GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv); 10241 } 10242 static FORCEINLINE HRESULT IShellItem2_GetPropertyDescriptionList(IShellItem2* This,REFPROPERTYKEY keyType,REFIID riid,void **ppv) { 10243 return This->lpVtbl->GetPropertyDescriptionList(This,keyType,riid,ppv); 10244 } 10245 static FORCEINLINE HRESULT IShellItem2_Update(IShellItem2* This,IBindCtx *pbc) { 10246 return This->lpVtbl->Update(This,pbc); 10247 } 10248 static FORCEINLINE HRESULT IShellItem2_GetProperty(IShellItem2* This,REFPROPERTYKEY key,PROPVARIANT *ppropvar) { 10249 return This->lpVtbl->GetProperty(This,key,ppropvar); 10250 } 10251 static FORCEINLINE HRESULT IShellItem2_GetCLSID(IShellItem2* This,REFPROPERTYKEY key,CLSID *pclsid) { 10252 return This->lpVtbl->GetCLSID(This,key,pclsid); 10253 } 10254 static FORCEINLINE HRESULT IShellItem2_GetFileTime(IShellItem2* This,REFPROPERTYKEY key,FILETIME *pft) { 10255 return This->lpVtbl->GetFileTime(This,key,pft); 10256 } 10257 static FORCEINLINE HRESULT IShellItem2_GetInt32(IShellItem2* This,REFPROPERTYKEY key,int *pi) { 10258 return This->lpVtbl->GetInt32(This,key,pi); 10259 } 10260 static FORCEINLINE HRESULT IShellItem2_GetString(IShellItem2* This,REFPROPERTYKEY key,LPWSTR *ppsz) { 10261 return This->lpVtbl->GetString(This,key,ppsz); 10262 } 10263 static FORCEINLINE HRESULT IShellItem2_GetUInt32(IShellItem2* This,REFPROPERTYKEY key,ULONG *pui) { 10264 return This->lpVtbl->GetUInt32(This,key,pui); 10265 } 10266 static FORCEINLINE HRESULT IShellItem2_GetUInt64(IShellItem2* This,REFPROPERTYKEY key,ULONGLONG *pull) { 10267 return This->lpVtbl->GetUInt64(This,key,pull); 10268 } 10269 static FORCEINLINE HRESULT IShellItem2_GetBool(IShellItem2* This,REFPROPERTYKEY key,WINBOOL *pf) { 10270 return This->lpVtbl->GetBool(This,key,pf); 10271 } 10272 #endif 10273 #endif 10274 10275 #endif 10276 10277 HRESULT STDMETHODCALLTYPE IShellItem2_GetPropertyStore_Proxy( 10278 IShellItem2* This, 10279 GETPROPERTYSTOREFLAGS flags, 10280 REFIID riid, 10281 void **ppv); 10282 void __RPC_STUB IShellItem2_GetPropertyStore_Stub( 10283 IRpcStubBuffer* This, 10284 IRpcChannelBuffer* pRpcChannelBuffer, 10285 PRPC_MESSAGE pRpcMessage, 10286 DWORD* pdwStubPhase); 10287 HRESULT STDMETHODCALLTYPE IShellItem2_GetPropertyStoreWithCreateObject_Proxy( 10288 IShellItem2* This, 10289 GETPROPERTYSTOREFLAGS flags, 10290 IUnknown *punkCreateObject, 10291 REFIID riid, 10292 void **ppv); 10293 void __RPC_STUB IShellItem2_GetPropertyStoreWithCreateObject_Stub( 10294 IRpcStubBuffer* This, 10295 IRpcChannelBuffer* pRpcChannelBuffer, 10296 PRPC_MESSAGE pRpcMessage, 10297 DWORD* pdwStubPhase); 10298 HRESULT STDMETHODCALLTYPE IShellItem2_GetPropertyStoreForKeys_Proxy( 10299 IShellItem2* This, 10300 const PROPERTYKEY *rgKeys, 10301 UINT cKeys, 10302 GETPROPERTYSTOREFLAGS flags, 10303 REFIID riid, 10304 void **ppv); 10305 void __RPC_STUB IShellItem2_GetPropertyStoreForKeys_Stub( 10306 IRpcStubBuffer* This, 10307 IRpcChannelBuffer* pRpcChannelBuffer, 10308 PRPC_MESSAGE pRpcMessage, 10309 DWORD* pdwStubPhase); 10310 HRESULT STDMETHODCALLTYPE IShellItem2_GetPropertyDescriptionList_Proxy( 10311 IShellItem2* This, 10312 REFPROPERTYKEY keyType, 10313 REFIID riid, 10314 void **ppv); 10315 void __RPC_STUB IShellItem2_GetPropertyDescriptionList_Stub( 10316 IRpcStubBuffer* This, 10317 IRpcChannelBuffer* pRpcChannelBuffer, 10318 PRPC_MESSAGE pRpcMessage, 10319 DWORD* pdwStubPhase); 10320 HRESULT STDMETHODCALLTYPE IShellItem2_Update_Proxy( 10321 IShellItem2* This, 10322 IBindCtx *pbc); 10323 void __RPC_STUB IShellItem2_Update_Stub( 10324 IRpcStubBuffer* This, 10325 IRpcChannelBuffer* pRpcChannelBuffer, 10326 PRPC_MESSAGE pRpcMessage, 10327 DWORD* pdwStubPhase); 10328 HRESULT STDMETHODCALLTYPE IShellItem2_GetProperty_Proxy( 10329 IShellItem2* This, 10330 REFPROPERTYKEY key, 10331 PROPVARIANT *ppropvar); 10332 void __RPC_STUB IShellItem2_GetProperty_Stub( 10333 IRpcStubBuffer* This, 10334 IRpcChannelBuffer* pRpcChannelBuffer, 10335 PRPC_MESSAGE pRpcMessage, 10336 DWORD* pdwStubPhase); 10337 HRESULT STDMETHODCALLTYPE IShellItem2_GetCLSID_Proxy( 10338 IShellItem2* This, 10339 REFPROPERTYKEY key, 10340 CLSID *pclsid); 10341 void __RPC_STUB IShellItem2_GetCLSID_Stub( 10342 IRpcStubBuffer* This, 10343 IRpcChannelBuffer* pRpcChannelBuffer, 10344 PRPC_MESSAGE pRpcMessage, 10345 DWORD* pdwStubPhase); 10346 HRESULT STDMETHODCALLTYPE IShellItem2_GetFileTime_Proxy( 10347 IShellItem2* This, 10348 REFPROPERTYKEY key, 10349 FILETIME *pft); 10350 void __RPC_STUB IShellItem2_GetFileTime_Stub( 10351 IRpcStubBuffer* This, 10352 IRpcChannelBuffer* pRpcChannelBuffer, 10353 PRPC_MESSAGE pRpcMessage, 10354 DWORD* pdwStubPhase); 10355 HRESULT STDMETHODCALLTYPE IShellItem2_GetInt32_Proxy( 10356 IShellItem2* This, 10357 REFPROPERTYKEY key, 10358 int *pi); 10359 void __RPC_STUB IShellItem2_GetInt32_Stub( 10360 IRpcStubBuffer* This, 10361 IRpcChannelBuffer* pRpcChannelBuffer, 10362 PRPC_MESSAGE pRpcMessage, 10363 DWORD* pdwStubPhase); 10364 HRESULT STDMETHODCALLTYPE IShellItem2_GetString_Proxy( 10365 IShellItem2* This, 10366 REFPROPERTYKEY key, 10367 LPWSTR *ppsz); 10368 void __RPC_STUB IShellItem2_GetString_Stub( 10369 IRpcStubBuffer* This, 10370 IRpcChannelBuffer* pRpcChannelBuffer, 10371 PRPC_MESSAGE pRpcMessage, 10372 DWORD* pdwStubPhase); 10373 HRESULT STDMETHODCALLTYPE IShellItem2_GetUInt32_Proxy( 10374 IShellItem2* This, 10375 REFPROPERTYKEY key, 10376 ULONG *pui); 10377 void __RPC_STUB IShellItem2_GetUInt32_Stub( 10378 IRpcStubBuffer* This, 10379 IRpcChannelBuffer* pRpcChannelBuffer, 10380 PRPC_MESSAGE pRpcMessage, 10381 DWORD* pdwStubPhase); 10382 HRESULT STDMETHODCALLTYPE IShellItem2_GetUInt64_Proxy( 10383 IShellItem2* This, 10384 REFPROPERTYKEY key, 10385 ULONGLONG *pull); 10386 void __RPC_STUB IShellItem2_GetUInt64_Stub( 10387 IRpcStubBuffer* This, 10388 IRpcChannelBuffer* pRpcChannelBuffer, 10389 PRPC_MESSAGE pRpcMessage, 10390 DWORD* pdwStubPhase); 10391 HRESULT STDMETHODCALLTYPE IShellItem2_GetBool_Proxy( 10392 IShellItem2* This, 10393 REFPROPERTYKEY key, 10394 WINBOOL *pf); 10395 void __RPC_STUB IShellItem2_GetBool_Stub( 10396 IRpcStubBuffer* This, 10397 IRpcChannelBuffer* pRpcChannelBuffer, 10398 PRPC_MESSAGE pRpcMessage, 10399 DWORD* pdwStubPhase); 10400 10401 #endif /* __IShellItem2_INTERFACE_DEFINED__ */ 10402 10403 10404 enum _SIIGBF { 10405 SIIGBF_RESIZETOFIT = 0x0, 10406 SIIGBF_BIGGERSIZEOK = 0x1, 10407 SIIGBF_MEMORYONLY = 0x2, 10408 SIIGBF_ICONONLY = 0x4, 10409 SIIGBF_THUMBNAILONLY = 0x8, 10410 SIIGBF_INCACHEONLY = 0x10, 10411 SIIGBF_CROPTOSQUARE = 0x20, 10412 SIIGBF_WIDETHUMBNAILS = 0x40, 10413 SIIGBF_ICONBACKGROUND = 0x80, 10414 SIIGBF_SCALEUP = 0x100 10415 }; 10416 10417 10418 typedef int SIIGBF; 10419 10420 /***************************************************************************** 10421 * IShellItemImageFactory interface 10422 */ 10423 #ifndef __IShellItemImageFactory_INTERFACE_DEFINED__ 10424 #define __IShellItemImageFactory_INTERFACE_DEFINED__ 10425 10426 DEFINE_GUID(IID_IShellItemImageFactory, 0xbcc18b79, 0xba16, 0x442f, 0x80,0xc4, 0x8a,0x59,0xc3,0x0c,0x46,0x3b); 10427 #if defined(__cplusplus) && !defined(CINTERFACE) 10428 MIDL_INTERFACE("bcc18b79-ba16-442f-80c4-8a59c30c463b") 10429 IShellItemImageFactory : public IUnknown 10430 { 10431 virtual HRESULT STDMETHODCALLTYPE GetImage( 10432 SIZE size, 10433 SIIGBF flags, 10434 HBITMAP *phbm) = 0; 10435 10436 }; 10437 #ifdef __CRT_UUID_DECL 10438 __CRT_UUID_DECL(IShellItemImageFactory, 0xbcc18b79, 0xba16, 0x442f, 0x80,0xc4, 0x8a,0x59,0xc3,0x0c,0x46,0x3b) 10439 #endif 10440 #else 10441 typedef struct IShellItemImageFactoryVtbl { 10442 BEGIN_INTERFACE 10443 10444 /*** IUnknown methods ***/ 10445 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 10446 IShellItemImageFactory* This, 10447 REFIID riid, 10448 void **ppvObject); 10449 10450 ULONG (STDMETHODCALLTYPE *AddRef)( 10451 IShellItemImageFactory* This); 10452 10453 ULONG (STDMETHODCALLTYPE *Release)( 10454 IShellItemImageFactory* This); 10455 10456 /*** IShellItemImageFactory methods ***/ 10457 HRESULT (STDMETHODCALLTYPE *GetImage)( 10458 IShellItemImageFactory* This, 10459 SIZE size, 10460 SIIGBF flags, 10461 HBITMAP *phbm); 10462 10463 END_INTERFACE 10464 } IShellItemImageFactoryVtbl; 10465 interface IShellItemImageFactory { 10466 CONST_VTBL IShellItemImageFactoryVtbl* lpVtbl; 10467 }; 10468 10469 #ifdef COBJMACROS 10470 #ifndef WIDL_C_INLINE_WRAPPERS 10471 /*** IUnknown methods ***/ 10472 #define IShellItemImageFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 10473 #define IShellItemImageFactory_AddRef(This) (This)->lpVtbl->AddRef(This) 10474 #define IShellItemImageFactory_Release(This) (This)->lpVtbl->Release(This) 10475 /*** IShellItemImageFactory methods ***/ 10476 #define IShellItemImageFactory_GetImage(This,size,flags,phbm) (This)->lpVtbl->GetImage(This,size,flags,phbm) 10477 #else 10478 /*** IUnknown methods ***/ 10479 static FORCEINLINE HRESULT IShellItemImageFactory_QueryInterface(IShellItemImageFactory* This,REFIID riid,void **ppvObject) { 10480 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 10481 } 10482 static FORCEINLINE ULONG IShellItemImageFactory_AddRef(IShellItemImageFactory* This) { 10483 return This->lpVtbl->AddRef(This); 10484 } 10485 static FORCEINLINE ULONG IShellItemImageFactory_Release(IShellItemImageFactory* This) { 10486 return This->lpVtbl->Release(This); 10487 } 10488 /*** IShellItemImageFactory methods ***/ 10489 static FORCEINLINE HRESULT IShellItemImageFactory_GetImage(IShellItemImageFactory* This,SIZE size,SIIGBF flags,HBITMAP *phbm) { 10490 return This->lpVtbl->GetImage(This,size,flags,phbm); 10491 } 10492 #endif 10493 #endif 10494 10495 #endif 10496 10497 HRESULT STDMETHODCALLTYPE IShellItemImageFactory_GetImage_Proxy( 10498 IShellItemImageFactory* This, 10499 SIZE size, 10500 SIIGBF flags, 10501 HBITMAP *phbm); 10502 void __RPC_STUB IShellItemImageFactory_GetImage_Stub( 10503 IRpcStubBuffer* This, 10504 IRpcChannelBuffer* pRpcChannelBuffer, 10505 PRPC_MESSAGE pRpcMessage, 10506 DWORD* pdwStubPhase); 10507 10508 #endif /* __IShellItemImageFactory_INTERFACE_DEFINED__ */ 10509 10510 10511 /***************************************************************************** 10512 * IUserAccountChangeCallback interface 10513 */ 10514 #ifndef __IUserAccountChangeCallback_INTERFACE_DEFINED__ 10515 #define __IUserAccountChangeCallback_INTERFACE_DEFINED__ 10516 10517 DEFINE_GUID(IID_IUserAccountChangeCallback, 0xa561e69a, 0xb4b8, 0x4113, 0x91,0xa5, 0x64,0xc6,0xbc,0xca,0x34,0x30); 10518 #if defined(__cplusplus) && !defined(CINTERFACE) 10519 MIDL_INTERFACE("a561e69a-b4b8-4113-91a5-64c6bcca3430") 10520 IUserAccountChangeCallback : public IUnknown 10521 { 10522 virtual HRESULT STDMETHODCALLTYPE OnPictureChange( 10523 LPCWSTR pszUserName) = 0; 10524 10525 }; 10526 #ifdef __CRT_UUID_DECL 10527 __CRT_UUID_DECL(IUserAccountChangeCallback, 0xa561e69a, 0xb4b8, 0x4113, 0x91,0xa5, 0x64,0xc6,0xbc,0xca,0x34,0x30) 10528 #endif 10529 #else 10530 typedef struct IUserAccountChangeCallbackVtbl { 10531 BEGIN_INTERFACE 10532 10533 /*** IUnknown methods ***/ 10534 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 10535 IUserAccountChangeCallback* This, 10536 REFIID riid, 10537 void **ppvObject); 10538 10539 ULONG (STDMETHODCALLTYPE *AddRef)( 10540 IUserAccountChangeCallback* This); 10541 10542 ULONG (STDMETHODCALLTYPE *Release)( 10543 IUserAccountChangeCallback* This); 10544 10545 /*** IUserAccountChangeCallback methods ***/ 10546 HRESULT (STDMETHODCALLTYPE *OnPictureChange)( 10547 IUserAccountChangeCallback* This, 10548 LPCWSTR pszUserName); 10549 10550 END_INTERFACE 10551 } IUserAccountChangeCallbackVtbl; 10552 interface IUserAccountChangeCallback { 10553 CONST_VTBL IUserAccountChangeCallbackVtbl* lpVtbl; 10554 }; 10555 10556 #ifdef COBJMACROS 10557 #ifndef WIDL_C_INLINE_WRAPPERS 10558 /*** IUnknown methods ***/ 10559 #define IUserAccountChangeCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 10560 #define IUserAccountChangeCallback_AddRef(This) (This)->lpVtbl->AddRef(This) 10561 #define IUserAccountChangeCallback_Release(This) (This)->lpVtbl->Release(This) 10562 /*** IUserAccountChangeCallback methods ***/ 10563 #define IUserAccountChangeCallback_OnPictureChange(This,pszUserName) (This)->lpVtbl->OnPictureChange(This,pszUserName) 10564 #else 10565 /*** IUnknown methods ***/ 10566 static FORCEINLINE HRESULT IUserAccountChangeCallback_QueryInterface(IUserAccountChangeCallback* This,REFIID riid,void **ppvObject) { 10567 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 10568 } 10569 static FORCEINLINE ULONG IUserAccountChangeCallback_AddRef(IUserAccountChangeCallback* This) { 10570 return This->lpVtbl->AddRef(This); 10571 } 10572 static FORCEINLINE ULONG IUserAccountChangeCallback_Release(IUserAccountChangeCallback* This) { 10573 return This->lpVtbl->Release(This); 10574 } 10575 /*** IUserAccountChangeCallback methods ***/ 10576 static FORCEINLINE HRESULT IUserAccountChangeCallback_OnPictureChange(IUserAccountChangeCallback* This,LPCWSTR pszUserName) { 10577 return This->lpVtbl->OnPictureChange(This,pszUserName); 10578 } 10579 #endif 10580 #endif 10581 10582 #endif 10583 10584 HRESULT STDMETHODCALLTYPE IUserAccountChangeCallback_OnPictureChange_Proxy( 10585 IUserAccountChangeCallback* This, 10586 LPCWSTR pszUserName); 10587 void __RPC_STUB IUserAccountChangeCallback_OnPictureChange_Stub( 10588 IRpcStubBuffer* This, 10589 IRpcChannelBuffer* pRpcChannelBuffer, 10590 PRPC_MESSAGE pRpcMessage, 10591 DWORD* pdwStubPhase); 10592 10593 #endif /* __IUserAccountChangeCallback_INTERFACE_DEFINED__ */ 10594 10595 10596 /***************************************************************************** 10597 * IEnumShellItems interface 10598 */ 10599 #ifndef __IEnumShellItems_INTERFACE_DEFINED__ 10600 #define __IEnumShellItems_INTERFACE_DEFINED__ 10601 10602 DEFINE_GUID(IID_IEnumShellItems, 0x70629033, 0xe363, 0x4a28, 0xa5,0x67, 0x0d,0xb7,0x80,0x06,0xe6,0xd7); 10603 #if defined(__cplusplus) && !defined(CINTERFACE) 10604 MIDL_INTERFACE("70629033-e363-4a28-a567-0db78006e6d7") 10605 IEnumShellItems : public IUnknown 10606 { 10607 virtual HRESULT STDMETHODCALLTYPE Next( 10608 ULONG celt, 10609 IShellItem **rgelt, 10610 ULONG *pceltFetched) = 0; 10611 10612 virtual HRESULT STDMETHODCALLTYPE Skip( 10613 ULONG celt) = 0; 10614 10615 virtual HRESULT STDMETHODCALLTYPE Reset( 10616 ) = 0; 10617 10618 virtual HRESULT STDMETHODCALLTYPE Clone( 10619 IEnumShellItems **ppenum) = 0; 10620 10621 }; 10622 #ifdef __CRT_UUID_DECL 10623 __CRT_UUID_DECL(IEnumShellItems, 0x70629033, 0xe363, 0x4a28, 0xa5,0x67, 0x0d,0xb7,0x80,0x06,0xe6,0xd7) 10624 #endif 10625 #else 10626 typedef struct IEnumShellItemsVtbl { 10627 BEGIN_INTERFACE 10628 10629 /*** IUnknown methods ***/ 10630 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 10631 IEnumShellItems* This, 10632 REFIID riid, 10633 void **ppvObject); 10634 10635 ULONG (STDMETHODCALLTYPE *AddRef)( 10636 IEnumShellItems* This); 10637 10638 ULONG (STDMETHODCALLTYPE *Release)( 10639 IEnumShellItems* This); 10640 10641 /*** IEnumShellItems methods ***/ 10642 HRESULT (STDMETHODCALLTYPE *Next)( 10643 IEnumShellItems* This, 10644 ULONG celt, 10645 IShellItem **rgelt, 10646 ULONG *pceltFetched); 10647 10648 HRESULT (STDMETHODCALLTYPE *Skip)( 10649 IEnumShellItems* This, 10650 ULONG celt); 10651 10652 HRESULT (STDMETHODCALLTYPE *Reset)( 10653 IEnumShellItems* This); 10654 10655 HRESULT (STDMETHODCALLTYPE *Clone)( 10656 IEnumShellItems* This, 10657 IEnumShellItems **ppenum); 10658 10659 END_INTERFACE 10660 } IEnumShellItemsVtbl; 10661 interface IEnumShellItems { 10662 CONST_VTBL IEnumShellItemsVtbl* lpVtbl; 10663 }; 10664 10665 #ifdef COBJMACROS 10666 #ifndef WIDL_C_INLINE_WRAPPERS 10667 /*** IUnknown methods ***/ 10668 #define IEnumShellItems_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 10669 #define IEnumShellItems_AddRef(This) (This)->lpVtbl->AddRef(This) 10670 #define IEnumShellItems_Release(This) (This)->lpVtbl->Release(This) 10671 /*** IEnumShellItems methods ***/ 10672 #define IEnumShellItems_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) 10673 #define IEnumShellItems_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 10674 #define IEnumShellItems_Reset(This) (This)->lpVtbl->Reset(This) 10675 #define IEnumShellItems_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) 10676 #else 10677 /*** IUnknown methods ***/ 10678 static FORCEINLINE HRESULT IEnumShellItems_QueryInterface(IEnumShellItems* This,REFIID riid,void **ppvObject) { 10679 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 10680 } 10681 static FORCEINLINE ULONG IEnumShellItems_AddRef(IEnumShellItems* This) { 10682 return This->lpVtbl->AddRef(This); 10683 } 10684 static FORCEINLINE ULONG IEnumShellItems_Release(IEnumShellItems* This) { 10685 return This->lpVtbl->Release(This); 10686 } 10687 /*** IEnumShellItems methods ***/ 10688 static FORCEINLINE HRESULT IEnumShellItems_Next(IEnumShellItems* This,ULONG celt,IShellItem **rgelt,ULONG *pceltFetched) { 10689 return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); 10690 } 10691 static FORCEINLINE HRESULT IEnumShellItems_Skip(IEnumShellItems* This,ULONG celt) { 10692 return This->lpVtbl->Skip(This,celt); 10693 } 10694 static FORCEINLINE HRESULT IEnumShellItems_Reset(IEnumShellItems* This) { 10695 return This->lpVtbl->Reset(This); 10696 } 10697 static FORCEINLINE HRESULT IEnumShellItems_Clone(IEnumShellItems* This,IEnumShellItems **ppenum) { 10698 return This->lpVtbl->Clone(This,ppenum); 10699 } 10700 #endif 10701 #endif 10702 10703 #endif 10704 10705 HRESULT STDMETHODCALLTYPE IEnumShellItems_RemoteNext_Proxy( 10706 IEnumShellItems* This, 10707 ULONG celt, 10708 IShellItem **rgelt, 10709 ULONG *pceltFetched); 10710 void __RPC_STUB IEnumShellItems_RemoteNext_Stub( 10711 IRpcStubBuffer* This, 10712 IRpcChannelBuffer* pRpcChannelBuffer, 10713 PRPC_MESSAGE pRpcMessage, 10714 DWORD* pdwStubPhase); 10715 HRESULT STDMETHODCALLTYPE IEnumShellItems_Skip_Proxy( 10716 IEnumShellItems* This, 10717 ULONG celt); 10718 void __RPC_STUB IEnumShellItems_Skip_Stub( 10719 IRpcStubBuffer* This, 10720 IRpcChannelBuffer* pRpcChannelBuffer, 10721 PRPC_MESSAGE pRpcMessage, 10722 DWORD* pdwStubPhase); 10723 HRESULT STDMETHODCALLTYPE IEnumShellItems_Reset_Proxy( 10724 IEnumShellItems* This); 10725 void __RPC_STUB IEnumShellItems_Reset_Stub( 10726 IRpcStubBuffer* This, 10727 IRpcChannelBuffer* pRpcChannelBuffer, 10728 PRPC_MESSAGE pRpcMessage, 10729 DWORD* pdwStubPhase); 10730 HRESULT STDMETHODCALLTYPE IEnumShellItems_Clone_Proxy( 10731 IEnumShellItems* This, 10732 IEnumShellItems **ppenum); 10733 void __RPC_STUB IEnumShellItems_Clone_Stub( 10734 IRpcStubBuffer* This, 10735 IRpcChannelBuffer* pRpcChannelBuffer, 10736 PRPC_MESSAGE pRpcMessage, 10737 DWORD* pdwStubPhase); 10738 HRESULT CALLBACK IEnumShellItems_Next_Proxy( 10739 IEnumShellItems* This, 10740 ULONG celt, 10741 IShellItem **rgelt, 10742 ULONG *pceltFetched); 10743 HRESULT __RPC_STUB IEnumShellItems_Next_Stub( 10744 IEnumShellItems* This, 10745 ULONG celt, 10746 IShellItem **rgelt, 10747 ULONG *pceltFetched); 10748 10749 #endif /* __IEnumShellItems_INTERFACE_DEFINED__ */ 10750 10751 10752 typedef GUID STGTRANSCONFIRMATION; 10753 typedef GUID *LPSTGTRANSCONFIRMATION; 10754 10755 typedef enum STGOP { 10756 STGOP_MOVE = 1, 10757 STGOP_COPY = 2, 10758 STGOP_SYNC = 3, 10759 STGOP_REMOVE = 5, 10760 STGOP_RENAME = 6, 10761 STGOP_APPLYPROPERTIES = 8, 10762 STGOP_NEW = 10 10763 } STGOP; 10764 10765 enum _TRANSFER_SOURCE_FLAGS { 10766 TSF_NORMAL = 0x0, 10767 TSF_FAIL_EXIST = 0x0, 10768 TSF_RENAME_EXIST = 0x1, 10769 TSF_OVERWRITE_EXIST = 0x2, 10770 TSF_ALLOW_DECRYPTION = 0x4, 10771 TSF_NO_SECURITY = 0x8, 10772 TSF_COPY_CREATION_TIME = 0x10, 10773 TSF_COPY_WRITE_TIME = 0x20, 10774 TSF_USE_FULL_ACCESS = 0x40, 10775 TSF_DELETE_RECYCLE_IF_POSSIBLE = 0x80, 10776 TSF_COPY_HARD_LINK = 0x100, 10777 TSF_COPY_LOCALIZED_NAME = 0x200, 10778 TSF_MOVE_AS_COPY_DELETE = 0x400, 10779 TSF_SUSPEND_SHELLEVENTS = 0x800 10780 }; 10781 10782 10783 typedef DWORD TRANSFER_SOURCE_FLAGS; 10784 10785 #if _WIN32_IE >= _WIN32_IE_IE70 10786 /***************************************************************************** 10787 * ITransferAdviseSink interface 10788 */ 10789 #ifndef __ITransferAdviseSink_INTERFACE_DEFINED__ 10790 #define __ITransferAdviseSink_INTERFACE_DEFINED__ 10791 10792 enum _TRANSFER_ADVISE_STATE { 10793 TS_NONE = 0x0, 10794 TS_PERFORMING = 0x1, 10795 TS_PREPARING = 0x2, 10796 TS_INDETERMINATE = 0x4 10797 }; 10798 10799 10800 typedef DWORD TRANSFER_ADVISE_STATE; 10801 10802 DEFINE_GUID(IID_ITransferAdviseSink, 0xd594d0d8, 0x8da7, 0x457b, 0xb3,0xb4, 0xce,0x5d,0xba,0xac,0x0b,0x88); 10803 #if defined(__cplusplus) && !defined(CINTERFACE) 10804 MIDL_INTERFACE("d594d0d8-8da7-457b-b3b4-ce5dbaac0b88") 10805 ITransferAdviseSink : public IUnknown 10806 { 10807 virtual HRESULT STDMETHODCALLTYPE UpdateProgress( 10808 ULONGLONG ullSizeCurrent, 10809 ULONGLONG ullSizeTotal, 10810 int nFilesCurrent, 10811 int nFilesTotal, 10812 int nFoldersCurrent, 10813 int nFoldersTotal) = 0; 10814 10815 virtual HRESULT STDMETHODCALLTYPE UpdateTransferState( 10816 TRANSFER_ADVISE_STATE ts) = 0; 10817 10818 virtual HRESULT STDMETHODCALLTYPE ConfirmOverwrite( 10819 IShellItem *psiSource, 10820 IShellItem *psiDestParent, 10821 LPCWSTR pszName) = 0; 10822 10823 virtual HRESULT STDMETHODCALLTYPE ConfirmEncryptionLoss( 10824 IShellItem *psiSource) = 0; 10825 10826 virtual HRESULT STDMETHODCALLTYPE FileFailure( 10827 IShellItem *psi, 10828 LPCWSTR pszItem, 10829 HRESULT hrError, 10830 LPWSTR pszRename, 10831 ULONG cchRename) = 0; 10832 10833 virtual HRESULT STDMETHODCALLTYPE SubStreamFailure( 10834 IShellItem *psi, 10835 LPCWSTR pszStreamName, 10836 HRESULT hrError) = 0; 10837 10838 virtual HRESULT STDMETHODCALLTYPE PropertyFailure( 10839 IShellItem *psi, 10840 const PROPERTYKEY *pkey, 10841 HRESULT hrError) = 0; 10842 10843 }; 10844 #ifdef __CRT_UUID_DECL 10845 __CRT_UUID_DECL(ITransferAdviseSink, 0xd594d0d8, 0x8da7, 0x457b, 0xb3,0xb4, 0xce,0x5d,0xba,0xac,0x0b,0x88) 10846 #endif 10847 #else 10848 typedef struct ITransferAdviseSinkVtbl { 10849 BEGIN_INTERFACE 10850 10851 /*** IUnknown methods ***/ 10852 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 10853 ITransferAdviseSink* This, 10854 REFIID riid, 10855 void **ppvObject); 10856 10857 ULONG (STDMETHODCALLTYPE *AddRef)( 10858 ITransferAdviseSink* This); 10859 10860 ULONG (STDMETHODCALLTYPE *Release)( 10861 ITransferAdviseSink* This); 10862 10863 /*** ITransferAdviseSink methods ***/ 10864 HRESULT (STDMETHODCALLTYPE *UpdateProgress)( 10865 ITransferAdviseSink* This, 10866 ULONGLONG ullSizeCurrent, 10867 ULONGLONG ullSizeTotal, 10868 int nFilesCurrent, 10869 int nFilesTotal, 10870 int nFoldersCurrent, 10871 int nFoldersTotal); 10872 10873 HRESULT (STDMETHODCALLTYPE *UpdateTransferState)( 10874 ITransferAdviseSink* This, 10875 TRANSFER_ADVISE_STATE ts); 10876 10877 HRESULT (STDMETHODCALLTYPE *ConfirmOverwrite)( 10878 ITransferAdviseSink* This, 10879 IShellItem *psiSource, 10880 IShellItem *psiDestParent, 10881 LPCWSTR pszName); 10882 10883 HRESULT (STDMETHODCALLTYPE *ConfirmEncryptionLoss)( 10884 ITransferAdviseSink* This, 10885 IShellItem *psiSource); 10886 10887 HRESULT (STDMETHODCALLTYPE *FileFailure)( 10888 ITransferAdviseSink* This, 10889 IShellItem *psi, 10890 LPCWSTR pszItem, 10891 HRESULT hrError, 10892 LPWSTR pszRename, 10893 ULONG cchRename); 10894 10895 HRESULT (STDMETHODCALLTYPE *SubStreamFailure)( 10896 ITransferAdviseSink* This, 10897 IShellItem *psi, 10898 LPCWSTR pszStreamName, 10899 HRESULT hrError); 10900 10901 HRESULT (STDMETHODCALLTYPE *PropertyFailure)( 10902 ITransferAdviseSink* This, 10903 IShellItem *psi, 10904 const PROPERTYKEY *pkey, 10905 HRESULT hrError); 10906 10907 END_INTERFACE 10908 } ITransferAdviseSinkVtbl; 10909 interface ITransferAdviseSink { 10910 CONST_VTBL ITransferAdviseSinkVtbl* lpVtbl; 10911 }; 10912 10913 #ifdef COBJMACROS 10914 #ifndef WIDL_C_INLINE_WRAPPERS 10915 /*** IUnknown methods ***/ 10916 #define ITransferAdviseSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 10917 #define ITransferAdviseSink_AddRef(This) (This)->lpVtbl->AddRef(This) 10918 #define ITransferAdviseSink_Release(This) (This)->lpVtbl->Release(This) 10919 /*** ITransferAdviseSink methods ***/ 10920 #define ITransferAdviseSink_UpdateProgress(This,ullSizeCurrent,ullSizeTotal,nFilesCurrent,nFilesTotal,nFoldersCurrent,nFoldersTotal) (This)->lpVtbl->UpdateProgress(This,ullSizeCurrent,ullSizeTotal,nFilesCurrent,nFilesTotal,nFoldersCurrent,nFoldersTotal) 10921 #define ITransferAdviseSink_UpdateTransferState(This,ts) (This)->lpVtbl->UpdateTransferState(This,ts) 10922 #define ITransferAdviseSink_ConfirmOverwrite(This,psiSource,psiDestParent,pszName) (This)->lpVtbl->ConfirmOverwrite(This,psiSource,psiDestParent,pszName) 10923 #define ITransferAdviseSink_ConfirmEncryptionLoss(This,psiSource) (This)->lpVtbl->ConfirmEncryptionLoss(This,psiSource) 10924 #define ITransferAdviseSink_FileFailure(This,psi,pszItem,hrError,pszRename,cchRename) (This)->lpVtbl->FileFailure(This,psi,pszItem,hrError,pszRename,cchRename) 10925 #define ITransferAdviseSink_SubStreamFailure(This,psi,pszStreamName,hrError) (This)->lpVtbl->SubStreamFailure(This,psi,pszStreamName,hrError) 10926 #define ITransferAdviseSink_PropertyFailure(This,psi,pkey,hrError) (This)->lpVtbl->PropertyFailure(This,psi,pkey,hrError) 10927 #else 10928 /*** IUnknown methods ***/ 10929 static FORCEINLINE HRESULT ITransferAdviseSink_QueryInterface(ITransferAdviseSink* This,REFIID riid,void **ppvObject) { 10930 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 10931 } 10932 static FORCEINLINE ULONG ITransferAdviseSink_AddRef(ITransferAdviseSink* This) { 10933 return This->lpVtbl->AddRef(This); 10934 } 10935 static FORCEINLINE ULONG ITransferAdviseSink_Release(ITransferAdviseSink* This) { 10936 return This->lpVtbl->Release(This); 10937 } 10938 /*** ITransferAdviseSink methods ***/ 10939 static FORCEINLINE HRESULT ITransferAdviseSink_UpdateProgress(ITransferAdviseSink* This,ULONGLONG ullSizeCurrent,ULONGLONG ullSizeTotal,int nFilesCurrent,int nFilesTotal,int nFoldersCurrent,int nFoldersTotal) { 10940 return This->lpVtbl->UpdateProgress(This,ullSizeCurrent,ullSizeTotal,nFilesCurrent,nFilesTotal,nFoldersCurrent,nFoldersTotal); 10941 } 10942 static FORCEINLINE HRESULT ITransferAdviseSink_UpdateTransferState(ITransferAdviseSink* This,TRANSFER_ADVISE_STATE ts) { 10943 return This->lpVtbl->UpdateTransferState(This,ts); 10944 } 10945 static FORCEINLINE HRESULT ITransferAdviseSink_ConfirmOverwrite(ITransferAdviseSink* This,IShellItem *psiSource,IShellItem *psiDestParent,LPCWSTR pszName) { 10946 return This->lpVtbl->ConfirmOverwrite(This,psiSource,psiDestParent,pszName); 10947 } 10948 static FORCEINLINE HRESULT ITransferAdviseSink_ConfirmEncryptionLoss(ITransferAdviseSink* This,IShellItem *psiSource) { 10949 return This->lpVtbl->ConfirmEncryptionLoss(This,psiSource); 10950 } 10951 static FORCEINLINE HRESULT ITransferAdviseSink_FileFailure(ITransferAdviseSink* This,IShellItem *psi,LPCWSTR pszItem,HRESULT hrError,LPWSTR pszRename,ULONG cchRename) { 10952 return This->lpVtbl->FileFailure(This,psi,pszItem,hrError,pszRename,cchRename); 10953 } 10954 static FORCEINLINE HRESULT ITransferAdviseSink_SubStreamFailure(ITransferAdviseSink* This,IShellItem *psi,LPCWSTR pszStreamName,HRESULT hrError) { 10955 return This->lpVtbl->SubStreamFailure(This,psi,pszStreamName,hrError); 10956 } 10957 static FORCEINLINE HRESULT ITransferAdviseSink_PropertyFailure(ITransferAdviseSink* This,IShellItem *psi,const PROPERTYKEY *pkey,HRESULT hrError) { 10958 return This->lpVtbl->PropertyFailure(This,psi,pkey,hrError); 10959 } 10960 #endif 10961 #endif 10962 10963 #endif 10964 10965 HRESULT STDMETHODCALLTYPE ITransferAdviseSink_UpdateProgress_Proxy( 10966 ITransferAdviseSink* This, 10967 ULONGLONG ullSizeCurrent, 10968 ULONGLONG ullSizeTotal, 10969 int nFilesCurrent, 10970 int nFilesTotal, 10971 int nFoldersCurrent, 10972 int nFoldersTotal); 10973 void __RPC_STUB ITransferAdviseSink_UpdateProgress_Stub( 10974 IRpcStubBuffer* This, 10975 IRpcChannelBuffer* pRpcChannelBuffer, 10976 PRPC_MESSAGE pRpcMessage, 10977 DWORD* pdwStubPhase); 10978 HRESULT STDMETHODCALLTYPE ITransferAdviseSink_UpdateTransferState_Proxy( 10979 ITransferAdviseSink* This, 10980 TRANSFER_ADVISE_STATE ts); 10981 void __RPC_STUB ITransferAdviseSink_UpdateTransferState_Stub( 10982 IRpcStubBuffer* This, 10983 IRpcChannelBuffer* pRpcChannelBuffer, 10984 PRPC_MESSAGE pRpcMessage, 10985 DWORD* pdwStubPhase); 10986 HRESULT STDMETHODCALLTYPE ITransferAdviseSink_ConfirmOverwrite_Proxy( 10987 ITransferAdviseSink* This, 10988 IShellItem *psiSource, 10989 IShellItem *psiDestParent, 10990 LPCWSTR pszName); 10991 void __RPC_STUB ITransferAdviseSink_ConfirmOverwrite_Stub( 10992 IRpcStubBuffer* This, 10993 IRpcChannelBuffer* pRpcChannelBuffer, 10994 PRPC_MESSAGE pRpcMessage, 10995 DWORD* pdwStubPhase); 10996 HRESULT STDMETHODCALLTYPE ITransferAdviseSink_ConfirmEncryptionLoss_Proxy( 10997 ITransferAdviseSink* This, 10998 IShellItem *psiSource); 10999 void __RPC_STUB ITransferAdviseSink_ConfirmEncryptionLoss_Stub( 11000 IRpcStubBuffer* This, 11001 IRpcChannelBuffer* pRpcChannelBuffer, 11002 PRPC_MESSAGE pRpcMessage, 11003 DWORD* pdwStubPhase); 11004 HRESULT STDMETHODCALLTYPE ITransferAdviseSink_FileFailure_Proxy( 11005 ITransferAdviseSink* This, 11006 IShellItem *psi, 11007 LPCWSTR pszItem, 11008 HRESULT hrError, 11009 LPWSTR pszRename, 11010 ULONG cchRename); 11011 void __RPC_STUB ITransferAdviseSink_FileFailure_Stub( 11012 IRpcStubBuffer* This, 11013 IRpcChannelBuffer* pRpcChannelBuffer, 11014 PRPC_MESSAGE pRpcMessage, 11015 DWORD* pdwStubPhase); 11016 HRESULT STDMETHODCALLTYPE ITransferAdviseSink_SubStreamFailure_Proxy( 11017 ITransferAdviseSink* This, 11018 IShellItem *psi, 11019 LPCWSTR pszStreamName, 11020 HRESULT hrError); 11021 void __RPC_STUB ITransferAdviseSink_SubStreamFailure_Stub( 11022 IRpcStubBuffer* This, 11023 IRpcChannelBuffer* pRpcChannelBuffer, 11024 PRPC_MESSAGE pRpcMessage, 11025 DWORD* pdwStubPhase); 11026 HRESULT STDMETHODCALLTYPE ITransferAdviseSink_PropertyFailure_Proxy( 11027 ITransferAdviseSink* This, 11028 IShellItem *psi, 11029 const PROPERTYKEY *pkey, 11030 HRESULT hrError); 11031 void __RPC_STUB ITransferAdviseSink_PropertyFailure_Stub( 11032 IRpcStubBuffer* This, 11033 IRpcChannelBuffer* pRpcChannelBuffer, 11034 PRPC_MESSAGE pRpcMessage, 11035 DWORD* pdwStubPhase); 11036 11037 #endif /* __ITransferAdviseSink_INTERFACE_DEFINED__ */ 11038 11039 #endif 11040 11041 #if NTDDI_VERSION >= NTDDI_VISTA 11042 /***************************************************************************** 11043 * ITransferSource interface 11044 */ 11045 #ifndef __ITransferSource_INTERFACE_DEFINED__ 11046 #define __ITransferSource_INTERFACE_DEFINED__ 11047 11048 DEFINE_GUID(IID_ITransferSource, 0x00adb003, 0xbde9, 0x45c6, 0x8e,0x29, 0xd0,0x9f,0x93,0x53,0xe1,0x08); 11049 #if defined(__cplusplus) && !defined(CINTERFACE) 11050 MIDL_INTERFACE("00adb003-bde9-45c6-8e29-d09f9353e108") 11051 ITransferSource : public IUnknown 11052 { 11053 virtual HRESULT STDMETHODCALLTYPE Advise( 11054 ITransferAdviseSink *psink, 11055 DWORD *pdwCookie) = 0; 11056 11057 virtual HRESULT STDMETHODCALLTYPE Unadvise( 11058 DWORD dwCookie) = 0; 11059 11060 virtual HRESULT STDMETHODCALLTYPE SetProperties( 11061 IPropertyChangeArray *pproparray) = 0; 11062 11063 virtual HRESULT STDMETHODCALLTYPE OpenItem( 11064 IShellItem *psi, 11065 TRANSFER_SOURCE_FLAGS flags, 11066 REFIID riid, 11067 void **ppv) = 0; 11068 11069 virtual HRESULT STDMETHODCALLTYPE MoveItem( 11070 IShellItem *psi, 11071 IShellItem *psiParentDst, 11072 LPCWSTR pszNameDst, 11073 TRANSFER_SOURCE_FLAGS flags, 11074 IShellItem **ppsiNew) = 0; 11075 11076 virtual HRESULT STDMETHODCALLTYPE RecycleItem( 11077 IShellItem *psiSource, 11078 IShellItem *psiParentDest, 11079 TRANSFER_SOURCE_FLAGS flags, 11080 IShellItem **ppsiNewDest) = 0; 11081 11082 virtual HRESULT STDMETHODCALLTYPE RemoveItem( 11083 IShellItem *psiSource, 11084 TRANSFER_SOURCE_FLAGS flags) = 0; 11085 11086 virtual HRESULT STDMETHODCALLTYPE RenameItem( 11087 IShellItem *psiSource, 11088 LPCWSTR pszNewName, 11089 TRANSFER_SOURCE_FLAGS flags, 11090 IShellItem **ppsiNewDest) = 0; 11091 11092 virtual HRESULT STDMETHODCALLTYPE LinkItem( 11093 IShellItem *psiSource, 11094 IShellItem *psiParentDest, 11095 LPCWSTR pszNewName, 11096 TRANSFER_SOURCE_FLAGS flags, 11097 IShellItem **ppsiNewDest) = 0; 11098 11099 virtual HRESULT STDMETHODCALLTYPE ApplyPropertiesToItem( 11100 IShellItem *psiSource, 11101 IShellItem **ppsiNew) = 0; 11102 11103 virtual HRESULT STDMETHODCALLTYPE GetDefaultDestinationName( 11104 IShellItem *psiSource, 11105 IShellItem *psiParentDest, 11106 LPWSTR *ppszDestinationName) = 0; 11107 11108 virtual HRESULT STDMETHODCALLTYPE EnterFolder( 11109 IShellItem *psiChildFolderDest) = 0; 11110 11111 virtual HRESULT STDMETHODCALLTYPE LeaveFolder( 11112 IShellItem *psiChildFolderDest) = 0; 11113 11114 }; 11115 #ifdef __CRT_UUID_DECL 11116 __CRT_UUID_DECL(ITransferSource, 0x00adb003, 0xbde9, 0x45c6, 0x8e,0x29, 0xd0,0x9f,0x93,0x53,0xe1,0x08) 11117 #endif 11118 #else 11119 typedef struct ITransferSourceVtbl { 11120 BEGIN_INTERFACE 11121 11122 /*** IUnknown methods ***/ 11123 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 11124 ITransferSource* This, 11125 REFIID riid, 11126 void **ppvObject); 11127 11128 ULONG (STDMETHODCALLTYPE *AddRef)( 11129 ITransferSource* This); 11130 11131 ULONG (STDMETHODCALLTYPE *Release)( 11132 ITransferSource* This); 11133 11134 /*** ITransferSource methods ***/ 11135 HRESULT (STDMETHODCALLTYPE *Advise)( 11136 ITransferSource* This, 11137 ITransferAdviseSink *psink, 11138 DWORD *pdwCookie); 11139 11140 HRESULT (STDMETHODCALLTYPE *Unadvise)( 11141 ITransferSource* This, 11142 DWORD dwCookie); 11143 11144 HRESULT (STDMETHODCALLTYPE *SetProperties)( 11145 ITransferSource* This, 11146 IPropertyChangeArray *pproparray); 11147 11148 HRESULT (STDMETHODCALLTYPE *OpenItem)( 11149 ITransferSource* This, 11150 IShellItem *psi, 11151 TRANSFER_SOURCE_FLAGS flags, 11152 REFIID riid, 11153 void **ppv); 11154 11155 HRESULT (STDMETHODCALLTYPE *MoveItem)( 11156 ITransferSource* This, 11157 IShellItem *psi, 11158 IShellItem *psiParentDst, 11159 LPCWSTR pszNameDst, 11160 TRANSFER_SOURCE_FLAGS flags, 11161 IShellItem **ppsiNew); 11162 11163 HRESULT (STDMETHODCALLTYPE *RecycleItem)( 11164 ITransferSource* This, 11165 IShellItem *psiSource, 11166 IShellItem *psiParentDest, 11167 TRANSFER_SOURCE_FLAGS flags, 11168 IShellItem **ppsiNewDest); 11169 11170 HRESULT (STDMETHODCALLTYPE *RemoveItem)( 11171 ITransferSource* This, 11172 IShellItem *psiSource, 11173 TRANSFER_SOURCE_FLAGS flags); 11174 11175 HRESULT (STDMETHODCALLTYPE *RenameItem)( 11176 ITransferSource* This, 11177 IShellItem *psiSource, 11178 LPCWSTR pszNewName, 11179 TRANSFER_SOURCE_FLAGS flags, 11180 IShellItem **ppsiNewDest); 11181 11182 HRESULT (STDMETHODCALLTYPE *LinkItem)( 11183 ITransferSource* This, 11184 IShellItem *psiSource, 11185 IShellItem *psiParentDest, 11186 LPCWSTR pszNewName, 11187 TRANSFER_SOURCE_FLAGS flags, 11188 IShellItem **ppsiNewDest); 11189 11190 HRESULT (STDMETHODCALLTYPE *ApplyPropertiesToItem)( 11191 ITransferSource* This, 11192 IShellItem *psiSource, 11193 IShellItem **ppsiNew); 11194 11195 HRESULT (STDMETHODCALLTYPE *GetDefaultDestinationName)( 11196 ITransferSource* This, 11197 IShellItem *psiSource, 11198 IShellItem *psiParentDest, 11199 LPWSTR *ppszDestinationName); 11200 11201 HRESULT (STDMETHODCALLTYPE *EnterFolder)( 11202 ITransferSource* This, 11203 IShellItem *psiChildFolderDest); 11204 11205 HRESULT (STDMETHODCALLTYPE *LeaveFolder)( 11206 ITransferSource* This, 11207 IShellItem *psiChildFolderDest); 11208 11209 END_INTERFACE 11210 } ITransferSourceVtbl; 11211 interface ITransferSource { 11212 CONST_VTBL ITransferSourceVtbl* lpVtbl; 11213 }; 11214 11215 #ifdef COBJMACROS 11216 #ifndef WIDL_C_INLINE_WRAPPERS 11217 /*** IUnknown methods ***/ 11218 #define ITransferSource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11219 #define ITransferSource_AddRef(This) (This)->lpVtbl->AddRef(This) 11220 #define ITransferSource_Release(This) (This)->lpVtbl->Release(This) 11221 /*** ITransferSource methods ***/ 11222 #define ITransferSource_Advise(This,psink,pdwCookie) (This)->lpVtbl->Advise(This,psink,pdwCookie) 11223 #define ITransferSource_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) 11224 #define ITransferSource_SetProperties(This,pproparray) (This)->lpVtbl->SetProperties(This,pproparray) 11225 #define ITransferSource_OpenItem(This,psi,flags,riid,ppv) (This)->lpVtbl->OpenItem(This,psi,flags,riid,ppv) 11226 #define ITransferSource_MoveItem(This,psi,psiParentDst,pszNameDst,flags,ppsiNew) (This)->lpVtbl->MoveItem(This,psi,psiParentDst,pszNameDst,flags,ppsiNew) 11227 #define ITransferSource_RecycleItem(This,psiSource,psiParentDest,flags,ppsiNewDest) (This)->lpVtbl->RecycleItem(This,psiSource,psiParentDest,flags,ppsiNewDest) 11228 #define ITransferSource_RemoveItem(This,psiSource,flags) (This)->lpVtbl->RemoveItem(This,psiSource,flags) 11229 #define ITransferSource_RenameItem(This,psiSource,pszNewName,flags,ppsiNewDest) (This)->lpVtbl->RenameItem(This,psiSource,pszNewName,flags,ppsiNewDest) 11230 #define ITransferSource_LinkItem(This,psiSource,psiParentDest,pszNewName,flags,ppsiNewDest) (This)->lpVtbl->LinkItem(This,psiSource,psiParentDest,pszNewName,flags,ppsiNewDest) 11231 #define ITransferSource_ApplyPropertiesToItem(This,psiSource,ppsiNew) (This)->lpVtbl->ApplyPropertiesToItem(This,psiSource,ppsiNew) 11232 #define ITransferSource_GetDefaultDestinationName(This,psiSource,psiParentDest,ppszDestinationName) (This)->lpVtbl->GetDefaultDestinationName(This,psiSource,psiParentDest,ppszDestinationName) 11233 #define ITransferSource_EnterFolder(This,psiChildFolderDest) (This)->lpVtbl->EnterFolder(This,psiChildFolderDest) 11234 #define ITransferSource_LeaveFolder(This,psiChildFolderDest) (This)->lpVtbl->LeaveFolder(This,psiChildFolderDest) 11235 #else 11236 /*** IUnknown methods ***/ 11237 static FORCEINLINE HRESULT ITransferSource_QueryInterface(ITransferSource* This,REFIID riid,void **ppvObject) { 11238 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 11239 } 11240 static FORCEINLINE ULONG ITransferSource_AddRef(ITransferSource* This) { 11241 return This->lpVtbl->AddRef(This); 11242 } 11243 static FORCEINLINE ULONG ITransferSource_Release(ITransferSource* This) { 11244 return This->lpVtbl->Release(This); 11245 } 11246 /*** ITransferSource methods ***/ 11247 static FORCEINLINE HRESULT ITransferSource_Advise(ITransferSource* This,ITransferAdviseSink *psink,DWORD *pdwCookie) { 11248 return This->lpVtbl->Advise(This,psink,pdwCookie); 11249 } 11250 static FORCEINLINE HRESULT ITransferSource_Unadvise(ITransferSource* This,DWORD dwCookie) { 11251 return This->lpVtbl->Unadvise(This,dwCookie); 11252 } 11253 static FORCEINLINE HRESULT ITransferSource_SetProperties(ITransferSource* This,IPropertyChangeArray *pproparray) { 11254 return This->lpVtbl->SetProperties(This,pproparray); 11255 } 11256 static FORCEINLINE HRESULT ITransferSource_OpenItem(ITransferSource* This,IShellItem *psi,TRANSFER_SOURCE_FLAGS flags,REFIID riid,void **ppv) { 11257 return This->lpVtbl->OpenItem(This,psi,flags,riid,ppv); 11258 } 11259 static FORCEINLINE HRESULT ITransferSource_MoveItem(ITransferSource* This,IShellItem *psi,IShellItem *psiParentDst,LPCWSTR pszNameDst,TRANSFER_SOURCE_FLAGS flags,IShellItem **ppsiNew) { 11260 return This->lpVtbl->MoveItem(This,psi,psiParentDst,pszNameDst,flags,ppsiNew); 11261 } 11262 static FORCEINLINE HRESULT ITransferSource_RecycleItem(ITransferSource* This,IShellItem *psiSource,IShellItem *psiParentDest,TRANSFER_SOURCE_FLAGS flags,IShellItem **ppsiNewDest) { 11263 return This->lpVtbl->RecycleItem(This,psiSource,psiParentDest,flags,ppsiNewDest); 11264 } 11265 static FORCEINLINE HRESULT ITransferSource_RemoveItem(ITransferSource* This,IShellItem *psiSource,TRANSFER_SOURCE_FLAGS flags) { 11266 return This->lpVtbl->RemoveItem(This,psiSource,flags); 11267 } 11268 static FORCEINLINE HRESULT ITransferSource_RenameItem(ITransferSource* This,IShellItem *psiSource,LPCWSTR pszNewName,TRANSFER_SOURCE_FLAGS flags,IShellItem **ppsiNewDest) { 11269 return This->lpVtbl->RenameItem(This,psiSource,pszNewName,flags,ppsiNewDest); 11270 } 11271 static FORCEINLINE HRESULT ITransferSource_LinkItem(ITransferSource* This,IShellItem *psiSource,IShellItem *psiParentDest,LPCWSTR pszNewName,TRANSFER_SOURCE_FLAGS flags,IShellItem **ppsiNewDest) { 11272 return This->lpVtbl->LinkItem(This,psiSource,psiParentDest,pszNewName,flags,ppsiNewDest); 11273 } 11274 static FORCEINLINE HRESULT ITransferSource_ApplyPropertiesToItem(ITransferSource* This,IShellItem *psiSource,IShellItem **ppsiNew) { 11275 return This->lpVtbl->ApplyPropertiesToItem(This,psiSource,ppsiNew); 11276 } 11277 static FORCEINLINE HRESULT ITransferSource_GetDefaultDestinationName(ITransferSource* This,IShellItem *psiSource,IShellItem *psiParentDest,LPWSTR *ppszDestinationName) { 11278 return This->lpVtbl->GetDefaultDestinationName(This,psiSource,psiParentDest,ppszDestinationName); 11279 } 11280 static FORCEINLINE HRESULT ITransferSource_EnterFolder(ITransferSource* This,IShellItem *psiChildFolderDest) { 11281 return This->lpVtbl->EnterFolder(This,psiChildFolderDest); 11282 } 11283 static FORCEINLINE HRESULT ITransferSource_LeaveFolder(ITransferSource* This,IShellItem *psiChildFolderDest) { 11284 return This->lpVtbl->LeaveFolder(This,psiChildFolderDest); 11285 } 11286 #endif 11287 #endif 11288 11289 #endif 11290 11291 HRESULT STDMETHODCALLTYPE ITransferSource_Advise_Proxy( 11292 ITransferSource* This, 11293 ITransferAdviseSink *psink, 11294 DWORD *pdwCookie); 11295 void __RPC_STUB ITransferSource_Advise_Stub( 11296 IRpcStubBuffer* This, 11297 IRpcChannelBuffer* pRpcChannelBuffer, 11298 PRPC_MESSAGE pRpcMessage, 11299 DWORD* pdwStubPhase); 11300 HRESULT STDMETHODCALLTYPE ITransferSource_Unadvise_Proxy( 11301 ITransferSource* This, 11302 DWORD dwCookie); 11303 void __RPC_STUB ITransferSource_Unadvise_Stub( 11304 IRpcStubBuffer* This, 11305 IRpcChannelBuffer* pRpcChannelBuffer, 11306 PRPC_MESSAGE pRpcMessage, 11307 DWORD* pdwStubPhase); 11308 HRESULT STDMETHODCALLTYPE ITransferSource_SetProperties_Proxy( 11309 ITransferSource* This, 11310 IPropertyChangeArray *pproparray); 11311 void __RPC_STUB ITransferSource_SetProperties_Stub( 11312 IRpcStubBuffer* This, 11313 IRpcChannelBuffer* pRpcChannelBuffer, 11314 PRPC_MESSAGE pRpcMessage, 11315 DWORD* pdwStubPhase); 11316 HRESULT STDMETHODCALLTYPE ITransferSource_OpenItem_Proxy( 11317 ITransferSource* This, 11318 IShellItem *psi, 11319 TRANSFER_SOURCE_FLAGS flags, 11320 REFIID riid, 11321 void **ppv); 11322 void __RPC_STUB ITransferSource_OpenItem_Stub( 11323 IRpcStubBuffer* This, 11324 IRpcChannelBuffer* pRpcChannelBuffer, 11325 PRPC_MESSAGE pRpcMessage, 11326 DWORD* pdwStubPhase); 11327 HRESULT STDMETHODCALLTYPE ITransferSource_MoveItem_Proxy( 11328 ITransferSource* This, 11329 IShellItem *psi, 11330 IShellItem *psiParentDst, 11331 LPCWSTR pszNameDst, 11332 TRANSFER_SOURCE_FLAGS flags, 11333 IShellItem **ppsiNew); 11334 void __RPC_STUB ITransferSource_MoveItem_Stub( 11335 IRpcStubBuffer* This, 11336 IRpcChannelBuffer* pRpcChannelBuffer, 11337 PRPC_MESSAGE pRpcMessage, 11338 DWORD* pdwStubPhase); 11339 HRESULT STDMETHODCALLTYPE ITransferSource_RecycleItem_Proxy( 11340 ITransferSource* This, 11341 IShellItem *psiSource, 11342 IShellItem *psiParentDest, 11343 TRANSFER_SOURCE_FLAGS flags, 11344 IShellItem **ppsiNewDest); 11345 void __RPC_STUB ITransferSource_RecycleItem_Stub( 11346 IRpcStubBuffer* This, 11347 IRpcChannelBuffer* pRpcChannelBuffer, 11348 PRPC_MESSAGE pRpcMessage, 11349 DWORD* pdwStubPhase); 11350 HRESULT STDMETHODCALLTYPE ITransferSource_RemoveItem_Proxy( 11351 ITransferSource* This, 11352 IShellItem *psiSource, 11353 TRANSFER_SOURCE_FLAGS flags); 11354 void __RPC_STUB ITransferSource_RemoveItem_Stub( 11355 IRpcStubBuffer* This, 11356 IRpcChannelBuffer* pRpcChannelBuffer, 11357 PRPC_MESSAGE pRpcMessage, 11358 DWORD* pdwStubPhase); 11359 HRESULT STDMETHODCALLTYPE ITransferSource_RenameItem_Proxy( 11360 ITransferSource* This, 11361 IShellItem *psiSource, 11362 LPCWSTR pszNewName, 11363 TRANSFER_SOURCE_FLAGS flags, 11364 IShellItem **ppsiNewDest); 11365 void __RPC_STUB ITransferSource_RenameItem_Stub( 11366 IRpcStubBuffer* This, 11367 IRpcChannelBuffer* pRpcChannelBuffer, 11368 PRPC_MESSAGE pRpcMessage, 11369 DWORD* pdwStubPhase); 11370 HRESULT STDMETHODCALLTYPE ITransferSource_LinkItem_Proxy( 11371 ITransferSource* This, 11372 IShellItem *psiSource, 11373 IShellItem *psiParentDest, 11374 LPCWSTR pszNewName, 11375 TRANSFER_SOURCE_FLAGS flags, 11376 IShellItem **ppsiNewDest); 11377 void __RPC_STUB ITransferSource_LinkItem_Stub( 11378 IRpcStubBuffer* This, 11379 IRpcChannelBuffer* pRpcChannelBuffer, 11380 PRPC_MESSAGE pRpcMessage, 11381 DWORD* pdwStubPhase); 11382 HRESULT STDMETHODCALLTYPE ITransferSource_ApplyPropertiesToItem_Proxy( 11383 ITransferSource* This, 11384 IShellItem *psiSource, 11385 IShellItem **ppsiNew); 11386 void __RPC_STUB ITransferSource_ApplyPropertiesToItem_Stub( 11387 IRpcStubBuffer* This, 11388 IRpcChannelBuffer* pRpcChannelBuffer, 11389 PRPC_MESSAGE pRpcMessage, 11390 DWORD* pdwStubPhase); 11391 HRESULT STDMETHODCALLTYPE ITransferSource_GetDefaultDestinationName_Proxy( 11392 ITransferSource* This, 11393 IShellItem *psiSource, 11394 IShellItem *psiParentDest, 11395 LPWSTR *ppszDestinationName); 11396 void __RPC_STUB ITransferSource_GetDefaultDestinationName_Stub( 11397 IRpcStubBuffer* This, 11398 IRpcChannelBuffer* pRpcChannelBuffer, 11399 PRPC_MESSAGE pRpcMessage, 11400 DWORD* pdwStubPhase); 11401 HRESULT STDMETHODCALLTYPE ITransferSource_EnterFolder_Proxy( 11402 ITransferSource* This, 11403 IShellItem *psiChildFolderDest); 11404 void __RPC_STUB ITransferSource_EnterFolder_Stub( 11405 IRpcStubBuffer* This, 11406 IRpcChannelBuffer* pRpcChannelBuffer, 11407 PRPC_MESSAGE pRpcMessage, 11408 DWORD* pdwStubPhase); 11409 HRESULT STDMETHODCALLTYPE ITransferSource_LeaveFolder_Proxy( 11410 ITransferSource* This, 11411 IShellItem *psiChildFolderDest); 11412 void __RPC_STUB ITransferSource_LeaveFolder_Stub( 11413 IRpcStubBuffer* This, 11414 IRpcChannelBuffer* pRpcChannelBuffer, 11415 PRPC_MESSAGE pRpcMessage, 11416 DWORD* pdwStubPhase); 11417 11418 #endif /* __ITransferSource_INTERFACE_DEFINED__ */ 11419 11420 #endif 11421 11422 typedef struct SHELL_ITEM_RESOURCE { 11423 GUID guidType; 11424 WCHAR szName[260]; 11425 } SHELL_ITEM_RESOURCE; 11426 11427 /***************************************************************************** 11428 * IEnumResources interface 11429 */ 11430 #ifndef __IEnumResources_INTERFACE_DEFINED__ 11431 #define __IEnumResources_INTERFACE_DEFINED__ 11432 11433 DEFINE_GUID(IID_IEnumResources, 0x2dd81fe3, 0xa83c, 0x4da9, 0xa3,0x30, 0x47,0x24,0x9d,0x34,0x5b,0xa1); 11434 #if defined(__cplusplus) && !defined(CINTERFACE) 11435 MIDL_INTERFACE("2dd81fe3-a83c-4da9-a330-47249d345ba1") 11436 IEnumResources : public IUnknown 11437 { 11438 virtual HRESULT STDMETHODCALLTYPE Next( 11439 ULONG celt, 11440 SHELL_ITEM_RESOURCE *psir, 11441 ULONG *pceltFetched) = 0; 11442 11443 virtual HRESULT STDMETHODCALLTYPE Skip( 11444 ULONG celt) = 0; 11445 11446 virtual HRESULT STDMETHODCALLTYPE Reset( 11447 ) = 0; 11448 11449 virtual HRESULT STDMETHODCALLTYPE Clone( 11450 IEnumResources **ppenumr) = 0; 11451 11452 }; 11453 #ifdef __CRT_UUID_DECL 11454 __CRT_UUID_DECL(IEnumResources, 0x2dd81fe3, 0xa83c, 0x4da9, 0xa3,0x30, 0x47,0x24,0x9d,0x34,0x5b,0xa1) 11455 #endif 11456 #else 11457 typedef struct IEnumResourcesVtbl { 11458 BEGIN_INTERFACE 11459 11460 /*** IUnknown methods ***/ 11461 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 11462 IEnumResources* This, 11463 REFIID riid, 11464 void **ppvObject); 11465 11466 ULONG (STDMETHODCALLTYPE *AddRef)( 11467 IEnumResources* This); 11468 11469 ULONG (STDMETHODCALLTYPE *Release)( 11470 IEnumResources* This); 11471 11472 /*** IEnumResources methods ***/ 11473 HRESULT (STDMETHODCALLTYPE *Next)( 11474 IEnumResources* This, 11475 ULONG celt, 11476 SHELL_ITEM_RESOURCE *psir, 11477 ULONG *pceltFetched); 11478 11479 HRESULT (STDMETHODCALLTYPE *Skip)( 11480 IEnumResources* This, 11481 ULONG celt); 11482 11483 HRESULT (STDMETHODCALLTYPE *Reset)( 11484 IEnumResources* This); 11485 11486 HRESULT (STDMETHODCALLTYPE *Clone)( 11487 IEnumResources* This, 11488 IEnumResources **ppenumr); 11489 11490 END_INTERFACE 11491 } IEnumResourcesVtbl; 11492 interface IEnumResources { 11493 CONST_VTBL IEnumResourcesVtbl* lpVtbl; 11494 }; 11495 11496 #ifdef COBJMACROS 11497 #ifndef WIDL_C_INLINE_WRAPPERS 11498 /*** IUnknown methods ***/ 11499 #define IEnumResources_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11500 #define IEnumResources_AddRef(This) (This)->lpVtbl->AddRef(This) 11501 #define IEnumResources_Release(This) (This)->lpVtbl->Release(This) 11502 /*** IEnumResources methods ***/ 11503 #define IEnumResources_Next(This,celt,psir,pceltFetched) (This)->lpVtbl->Next(This,celt,psir,pceltFetched) 11504 #define IEnumResources_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 11505 #define IEnumResources_Reset(This) (This)->lpVtbl->Reset(This) 11506 #define IEnumResources_Clone(This,ppenumr) (This)->lpVtbl->Clone(This,ppenumr) 11507 #else 11508 /*** IUnknown methods ***/ 11509 static FORCEINLINE HRESULT IEnumResources_QueryInterface(IEnumResources* This,REFIID riid,void **ppvObject) { 11510 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 11511 } 11512 static FORCEINLINE ULONG IEnumResources_AddRef(IEnumResources* This) { 11513 return This->lpVtbl->AddRef(This); 11514 } 11515 static FORCEINLINE ULONG IEnumResources_Release(IEnumResources* This) { 11516 return This->lpVtbl->Release(This); 11517 } 11518 /*** IEnumResources methods ***/ 11519 static FORCEINLINE HRESULT IEnumResources_Next(IEnumResources* This,ULONG celt,SHELL_ITEM_RESOURCE *psir,ULONG *pceltFetched) { 11520 return This->lpVtbl->Next(This,celt,psir,pceltFetched); 11521 } 11522 static FORCEINLINE HRESULT IEnumResources_Skip(IEnumResources* This,ULONG celt) { 11523 return This->lpVtbl->Skip(This,celt); 11524 } 11525 static FORCEINLINE HRESULT IEnumResources_Reset(IEnumResources* This) { 11526 return This->lpVtbl->Reset(This); 11527 } 11528 static FORCEINLINE HRESULT IEnumResources_Clone(IEnumResources* This,IEnumResources **ppenumr) { 11529 return This->lpVtbl->Clone(This,ppenumr); 11530 } 11531 #endif 11532 #endif 11533 11534 #endif 11535 11536 HRESULT STDMETHODCALLTYPE IEnumResources_Next_Proxy( 11537 IEnumResources* This, 11538 ULONG celt, 11539 SHELL_ITEM_RESOURCE *psir, 11540 ULONG *pceltFetched); 11541 void __RPC_STUB IEnumResources_Next_Stub( 11542 IRpcStubBuffer* This, 11543 IRpcChannelBuffer* pRpcChannelBuffer, 11544 PRPC_MESSAGE pRpcMessage, 11545 DWORD* pdwStubPhase); 11546 HRESULT STDMETHODCALLTYPE IEnumResources_Skip_Proxy( 11547 IEnumResources* This, 11548 ULONG celt); 11549 void __RPC_STUB IEnumResources_Skip_Stub( 11550 IRpcStubBuffer* This, 11551 IRpcChannelBuffer* pRpcChannelBuffer, 11552 PRPC_MESSAGE pRpcMessage, 11553 DWORD* pdwStubPhase); 11554 HRESULT STDMETHODCALLTYPE IEnumResources_Reset_Proxy( 11555 IEnumResources* This); 11556 void __RPC_STUB IEnumResources_Reset_Stub( 11557 IRpcStubBuffer* This, 11558 IRpcChannelBuffer* pRpcChannelBuffer, 11559 PRPC_MESSAGE pRpcMessage, 11560 DWORD* pdwStubPhase); 11561 HRESULT STDMETHODCALLTYPE IEnumResources_Clone_Proxy( 11562 IEnumResources* This, 11563 IEnumResources **ppenumr); 11564 void __RPC_STUB IEnumResources_Clone_Stub( 11565 IRpcStubBuffer* This, 11566 IRpcChannelBuffer* pRpcChannelBuffer, 11567 PRPC_MESSAGE pRpcMessage, 11568 DWORD* pdwStubPhase); 11569 11570 #endif /* __IEnumResources_INTERFACE_DEFINED__ */ 11571 11572 11573 /***************************************************************************** 11574 * IShellItemResources interface 11575 */ 11576 #ifndef __IShellItemResources_INTERFACE_DEFINED__ 11577 #define __IShellItemResources_INTERFACE_DEFINED__ 11578 11579 DEFINE_GUID(IID_IShellItemResources, 0xff5693be, 0x2ce0, 0x4d48, 0xb5,0xc5, 0x40,0x81,0x7d,0x1a,0xcd,0xb9); 11580 #if defined(__cplusplus) && !defined(CINTERFACE) 11581 MIDL_INTERFACE("ff5693be-2ce0-4d48-b5c5-40817d1acdb9") 11582 IShellItemResources : public IUnknown 11583 { 11584 virtual HRESULT STDMETHODCALLTYPE GetAttributes( 11585 DWORD *pdwAttributes) = 0; 11586 11587 virtual HRESULT STDMETHODCALLTYPE GetSize( 11588 ULONGLONG *pullSize) = 0; 11589 11590 virtual HRESULT STDMETHODCALLTYPE GetTimes( 11591 FILETIME *pftCreation, 11592 FILETIME *pftWrite, 11593 FILETIME *pftAccess) = 0; 11594 11595 virtual HRESULT STDMETHODCALLTYPE SetTimes( 11596 const FILETIME *pftCreation, 11597 const FILETIME *pftWrite, 11598 const FILETIME *pftAccess) = 0; 11599 11600 virtual HRESULT STDMETHODCALLTYPE GetResourceDescription( 11601 const SHELL_ITEM_RESOURCE *pcsir, 11602 LPWSTR *ppszDescription) = 0; 11603 11604 virtual HRESULT STDMETHODCALLTYPE EnumResources( 11605 IEnumResources **ppenumr) = 0; 11606 11607 virtual HRESULT STDMETHODCALLTYPE SupportsResource( 11608 const SHELL_ITEM_RESOURCE *pcsir) = 0; 11609 11610 virtual HRESULT STDMETHODCALLTYPE OpenResource( 11611 const SHELL_ITEM_RESOURCE *pcsir, 11612 REFIID riid, 11613 void **ppv) = 0; 11614 11615 virtual HRESULT STDMETHODCALLTYPE CreateResource( 11616 const SHELL_ITEM_RESOURCE *pcsir, 11617 REFIID riid, 11618 void **ppv) = 0; 11619 11620 virtual HRESULT STDMETHODCALLTYPE MarkForDelete( 11621 ) = 0; 11622 11623 }; 11624 #ifdef __CRT_UUID_DECL 11625 __CRT_UUID_DECL(IShellItemResources, 0xff5693be, 0x2ce0, 0x4d48, 0xb5,0xc5, 0x40,0x81,0x7d,0x1a,0xcd,0xb9) 11626 #endif 11627 #else 11628 typedef struct IShellItemResourcesVtbl { 11629 BEGIN_INTERFACE 11630 11631 /*** IUnknown methods ***/ 11632 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 11633 IShellItemResources* This, 11634 REFIID riid, 11635 void **ppvObject); 11636 11637 ULONG (STDMETHODCALLTYPE *AddRef)( 11638 IShellItemResources* This); 11639 11640 ULONG (STDMETHODCALLTYPE *Release)( 11641 IShellItemResources* This); 11642 11643 /*** IShellItemResources methods ***/ 11644 HRESULT (STDMETHODCALLTYPE *GetAttributes)( 11645 IShellItemResources* This, 11646 DWORD *pdwAttributes); 11647 11648 HRESULT (STDMETHODCALLTYPE *GetSize)( 11649 IShellItemResources* This, 11650 ULONGLONG *pullSize); 11651 11652 HRESULT (STDMETHODCALLTYPE *GetTimes)( 11653 IShellItemResources* This, 11654 FILETIME *pftCreation, 11655 FILETIME *pftWrite, 11656 FILETIME *pftAccess); 11657 11658 HRESULT (STDMETHODCALLTYPE *SetTimes)( 11659 IShellItemResources* This, 11660 const FILETIME *pftCreation, 11661 const FILETIME *pftWrite, 11662 const FILETIME *pftAccess); 11663 11664 HRESULT (STDMETHODCALLTYPE *GetResourceDescription)( 11665 IShellItemResources* This, 11666 const SHELL_ITEM_RESOURCE *pcsir, 11667 LPWSTR *ppszDescription); 11668 11669 HRESULT (STDMETHODCALLTYPE *EnumResources)( 11670 IShellItemResources* This, 11671 IEnumResources **ppenumr); 11672 11673 HRESULT (STDMETHODCALLTYPE *SupportsResource)( 11674 IShellItemResources* This, 11675 const SHELL_ITEM_RESOURCE *pcsir); 11676 11677 HRESULT (STDMETHODCALLTYPE *OpenResource)( 11678 IShellItemResources* This, 11679 const SHELL_ITEM_RESOURCE *pcsir, 11680 REFIID riid, 11681 void **ppv); 11682 11683 HRESULT (STDMETHODCALLTYPE *CreateResource)( 11684 IShellItemResources* This, 11685 const SHELL_ITEM_RESOURCE *pcsir, 11686 REFIID riid, 11687 void **ppv); 11688 11689 HRESULT (STDMETHODCALLTYPE *MarkForDelete)( 11690 IShellItemResources* This); 11691 11692 END_INTERFACE 11693 } IShellItemResourcesVtbl; 11694 interface IShellItemResources { 11695 CONST_VTBL IShellItemResourcesVtbl* lpVtbl; 11696 }; 11697 11698 #ifdef COBJMACROS 11699 #ifndef WIDL_C_INLINE_WRAPPERS 11700 /*** IUnknown methods ***/ 11701 #define IShellItemResources_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11702 #define IShellItemResources_AddRef(This) (This)->lpVtbl->AddRef(This) 11703 #define IShellItemResources_Release(This) (This)->lpVtbl->Release(This) 11704 /*** IShellItemResources methods ***/ 11705 #define IShellItemResources_GetAttributes(This,pdwAttributes) (This)->lpVtbl->GetAttributes(This,pdwAttributes) 11706 #define IShellItemResources_GetSize(This,pullSize) (This)->lpVtbl->GetSize(This,pullSize) 11707 #define IShellItemResources_GetTimes(This,pftCreation,pftWrite,pftAccess) (This)->lpVtbl->GetTimes(This,pftCreation,pftWrite,pftAccess) 11708 #define IShellItemResources_SetTimes(This,pftCreation,pftWrite,pftAccess) (This)->lpVtbl->SetTimes(This,pftCreation,pftWrite,pftAccess) 11709 #define IShellItemResources_GetResourceDescription(This,pcsir,ppszDescription) (This)->lpVtbl->GetResourceDescription(This,pcsir,ppszDescription) 11710 #define IShellItemResources_EnumResources(This,ppenumr) (This)->lpVtbl->EnumResources(This,ppenumr) 11711 #define IShellItemResources_SupportsResource(This,pcsir) (This)->lpVtbl->SupportsResource(This,pcsir) 11712 #define IShellItemResources_OpenResource(This,pcsir,riid,ppv) (This)->lpVtbl->OpenResource(This,pcsir,riid,ppv) 11713 #define IShellItemResources_CreateResource(This,pcsir,riid,ppv) (This)->lpVtbl->CreateResource(This,pcsir,riid,ppv) 11714 #define IShellItemResources_MarkForDelete(This) (This)->lpVtbl->MarkForDelete(This) 11715 #else 11716 /*** IUnknown methods ***/ 11717 static FORCEINLINE HRESULT IShellItemResources_QueryInterface(IShellItemResources* This,REFIID riid,void **ppvObject) { 11718 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 11719 } 11720 static FORCEINLINE ULONG IShellItemResources_AddRef(IShellItemResources* This) { 11721 return This->lpVtbl->AddRef(This); 11722 } 11723 static FORCEINLINE ULONG IShellItemResources_Release(IShellItemResources* This) { 11724 return This->lpVtbl->Release(This); 11725 } 11726 /*** IShellItemResources methods ***/ 11727 static FORCEINLINE HRESULT IShellItemResources_GetAttributes(IShellItemResources* This,DWORD *pdwAttributes) { 11728 return This->lpVtbl->GetAttributes(This,pdwAttributes); 11729 } 11730 static FORCEINLINE HRESULT IShellItemResources_GetSize(IShellItemResources* This,ULONGLONG *pullSize) { 11731 return This->lpVtbl->GetSize(This,pullSize); 11732 } 11733 static FORCEINLINE HRESULT IShellItemResources_GetTimes(IShellItemResources* This,FILETIME *pftCreation,FILETIME *pftWrite,FILETIME *pftAccess) { 11734 return This->lpVtbl->GetTimes(This,pftCreation,pftWrite,pftAccess); 11735 } 11736 static FORCEINLINE HRESULT IShellItemResources_SetTimes(IShellItemResources* This,const FILETIME *pftCreation,const FILETIME *pftWrite,const FILETIME *pftAccess) { 11737 return This->lpVtbl->SetTimes(This,pftCreation,pftWrite,pftAccess); 11738 } 11739 static FORCEINLINE HRESULT IShellItemResources_GetResourceDescription(IShellItemResources* This,const SHELL_ITEM_RESOURCE *pcsir,LPWSTR *ppszDescription) { 11740 return This->lpVtbl->GetResourceDescription(This,pcsir,ppszDescription); 11741 } 11742 static FORCEINLINE HRESULT IShellItemResources_EnumResources(IShellItemResources* This,IEnumResources **ppenumr) { 11743 return This->lpVtbl->EnumResources(This,ppenumr); 11744 } 11745 static FORCEINLINE HRESULT IShellItemResources_SupportsResource(IShellItemResources* This,const SHELL_ITEM_RESOURCE *pcsir) { 11746 return This->lpVtbl->SupportsResource(This,pcsir); 11747 } 11748 static FORCEINLINE HRESULT IShellItemResources_OpenResource(IShellItemResources* This,const SHELL_ITEM_RESOURCE *pcsir,REFIID riid,void **ppv) { 11749 return This->lpVtbl->OpenResource(This,pcsir,riid,ppv); 11750 } 11751 static FORCEINLINE HRESULT IShellItemResources_CreateResource(IShellItemResources* This,const SHELL_ITEM_RESOURCE *pcsir,REFIID riid,void **ppv) { 11752 return This->lpVtbl->CreateResource(This,pcsir,riid,ppv); 11753 } 11754 static FORCEINLINE HRESULT IShellItemResources_MarkForDelete(IShellItemResources* This) { 11755 return This->lpVtbl->MarkForDelete(This); 11756 } 11757 #endif 11758 #endif 11759 11760 #endif 11761 11762 HRESULT STDMETHODCALLTYPE IShellItemResources_GetAttributes_Proxy( 11763 IShellItemResources* This, 11764 DWORD *pdwAttributes); 11765 void __RPC_STUB IShellItemResources_GetAttributes_Stub( 11766 IRpcStubBuffer* This, 11767 IRpcChannelBuffer* pRpcChannelBuffer, 11768 PRPC_MESSAGE pRpcMessage, 11769 DWORD* pdwStubPhase); 11770 HRESULT STDMETHODCALLTYPE IShellItemResources_GetSize_Proxy( 11771 IShellItemResources* This, 11772 ULONGLONG *pullSize); 11773 void __RPC_STUB IShellItemResources_GetSize_Stub( 11774 IRpcStubBuffer* This, 11775 IRpcChannelBuffer* pRpcChannelBuffer, 11776 PRPC_MESSAGE pRpcMessage, 11777 DWORD* pdwStubPhase); 11778 HRESULT STDMETHODCALLTYPE IShellItemResources_GetTimes_Proxy( 11779 IShellItemResources* This, 11780 FILETIME *pftCreation, 11781 FILETIME *pftWrite, 11782 FILETIME *pftAccess); 11783 void __RPC_STUB IShellItemResources_GetTimes_Stub( 11784 IRpcStubBuffer* This, 11785 IRpcChannelBuffer* pRpcChannelBuffer, 11786 PRPC_MESSAGE pRpcMessage, 11787 DWORD* pdwStubPhase); 11788 HRESULT STDMETHODCALLTYPE IShellItemResources_SetTimes_Proxy( 11789 IShellItemResources* This, 11790 const FILETIME *pftCreation, 11791 const FILETIME *pftWrite, 11792 const FILETIME *pftAccess); 11793 void __RPC_STUB IShellItemResources_SetTimes_Stub( 11794 IRpcStubBuffer* This, 11795 IRpcChannelBuffer* pRpcChannelBuffer, 11796 PRPC_MESSAGE pRpcMessage, 11797 DWORD* pdwStubPhase); 11798 HRESULT STDMETHODCALLTYPE IShellItemResources_GetResourceDescription_Proxy( 11799 IShellItemResources* This, 11800 const SHELL_ITEM_RESOURCE *pcsir, 11801 LPWSTR *ppszDescription); 11802 void __RPC_STUB IShellItemResources_GetResourceDescription_Stub( 11803 IRpcStubBuffer* This, 11804 IRpcChannelBuffer* pRpcChannelBuffer, 11805 PRPC_MESSAGE pRpcMessage, 11806 DWORD* pdwStubPhase); 11807 HRESULT STDMETHODCALLTYPE IShellItemResources_EnumResources_Proxy( 11808 IShellItemResources* This, 11809 IEnumResources **ppenumr); 11810 void __RPC_STUB IShellItemResources_EnumResources_Stub( 11811 IRpcStubBuffer* This, 11812 IRpcChannelBuffer* pRpcChannelBuffer, 11813 PRPC_MESSAGE pRpcMessage, 11814 DWORD* pdwStubPhase); 11815 HRESULT STDMETHODCALLTYPE IShellItemResources_SupportsResource_Proxy( 11816 IShellItemResources* This, 11817 const SHELL_ITEM_RESOURCE *pcsir); 11818 void __RPC_STUB IShellItemResources_SupportsResource_Stub( 11819 IRpcStubBuffer* This, 11820 IRpcChannelBuffer* pRpcChannelBuffer, 11821 PRPC_MESSAGE pRpcMessage, 11822 DWORD* pdwStubPhase); 11823 HRESULT STDMETHODCALLTYPE IShellItemResources_OpenResource_Proxy( 11824 IShellItemResources* This, 11825 const SHELL_ITEM_RESOURCE *pcsir, 11826 REFIID riid, 11827 void **ppv); 11828 void __RPC_STUB IShellItemResources_OpenResource_Stub( 11829 IRpcStubBuffer* This, 11830 IRpcChannelBuffer* pRpcChannelBuffer, 11831 PRPC_MESSAGE pRpcMessage, 11832 DWORD* pdwStubPhase); 11833 HRESULT STDMETHODCALLTYPE IShellItemResources_CreateResource_Proxy( 11834 IShellItemResources* This, 11835 const SHELL_ITEM_RESOURCE *pcsir, 11836 REFIID riid, 11837 void **ppv); 11838 void __RPC_STUB IShellItemResources_CreateResource_Stub( 11839 IRpcStubBuffer* This, 11840 IRpcChannelBuffer* pRpcChannelBuffer, 11841 PRPC_MESSAGE pRpcMessage, 11842 DWORD* pdwStubPhase); 11843 HRESULT STDMETHODCALLTYPE IShellItemResources_MarkForDelete_Proxy( 11844 IShellItemResources* This); 11845 void __RPC_STUB IShellItemResources_MarkForDelete_Stub( 11846 IRpcStubBuffer* This, 11847 IRpcChannelBuffer* pRpcChannelBuffer, 11848 PRPC_MESSAGE pRpcMessage, 11849 DWORD* pdwStubPhase); 11850 11851 #endif /* __IShellItemResources_INTERFACE_DEFINED__ */ 11852 11853 11854 /***************************************************************************** 11855 * ITransferDestination interface 11856 */ 11857 #ifndef __ITransferDestination_INTERFACE_DEFINED__ 11858 #define __ITransferDestination_INTERFACE_DEFINED__ 11859 11860 DEFINE_GUID(IID_ITransferDestination, 0x48addd32, 0x3ca5, 0x4124, 0xab,0xe3, 0xb5,0xa7,0x25,0x31,0xb2,0x07); 11861 #if defined(__cplusplus) && !defined(CINTERFACE) 11862 MIDL_INTERFACE("48addd32-3ca5-4124-abe3-b5a72531b207") 11863 ITransferDestination : public IUnknown 11864 { 11865 virtual HRESULT STDMETHODCALLTYPE Advise( 11866 ITransferAdviseSink *psink, 11867 DWORD *pdwCookie) = 0; 11868 11869 virtual HRESULT STDMETHODCALLTYPE Unadvise( 11870 DWORD dwCookie) = 0; 11871 11872 virtual HRESULT STDMETHODCALLTYPE CreateItem( 11873 LPCWSTR pszName, 11874 DWORD dwAttributes, 11875 ULONGLONG ullSize, 11876 TRANSFER_SOURCE_FLAGS flags, 11877 REFIID riidItem, 11878 void **ppvItem, 11879 REFIID riidResources, 11880 void **ppvResources) = 0; 11881 11882 }; 11883 #ifdef __CRT_UUID_DECL 11884 __CRT_UUID_DECL(ITransferDestination, 0x48addd32, 0x3ca5, 0x4124, 0xab,0xe3, 0xb5,0xa7,0x25,0x31,0xb2,0x07) 11885 #endif 11886 #else 11887 typedef struct ITransferDestinationVtbl { 11888 BEGIN_INTERFACE 11889 11890 /*** IUnknown methods ***/ 11891 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 11892 ITransferDestination* This, 11893 REFIID riid, 11894 void **ppvObject); 11895 11896 ULONG (STDMETHODCALLTYPE *AddRef)( 11897 ITransferDestination* This); 11898 11899 ULONG (STDMETHODCALLTYPE *Release)( 11900 ITransferDestination* This); 11901 11902 /*** ITransferDestination methods ***/ 11903 HRESULT (STDMETHODCALLTYPE *Advise)( 11904 ITransferDestination* This, 11905 ITransferAdviseSink *psink, 11906 DWORD *pdwCookie); 11907 11908 HRESULT (STDMETHODCALLTYPE *Unadvise)( 11909 ITransferDestination* This, 11910 DWORD dwCookie); 11911 11912 HRESULT (STDMETHODCALLTYPE *CreateItem)( 11913 ITransferDestination* This, 11914 LPCWSTR pszName, 11915 DWORD dwAttributes, 11916 ULONGLONG ullSize, 11917 TRANSFER_SOURCE_FLAGS flags, 11918 REFIID riidItem, 11919 void **ppvItem, 11920 REFIID riidResources, 11921 void **ppvResources); 11922 11923 END_INTERFACE 11924 } ITransferDestinationVtbl; 11925 interface ITransferDestination { 11926 CONST_VTBL ITransferDestinationVtbl* lpVtbl; 11927 }; 11928 11929 #ifdef COBJMACROS 11930 #ifndef WIDL_C_INLINE_WRAPPERS 11931 /*** IUnknown methods ***/ 11932 #define ITransferDestination_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 11933 #define ITransferDestination_AddRef(This) (This)->lpVtbl->AddRef(This) 11934 #define ITransferDestination_Release(This) (This)->lpVtbl->Release(This) 11935 /*** ITransferDestination methods ***/ 11936 #define ITransferDestination_Advise(This,psink,pdwCookie) (This)->lpVtbl->Advise(This,psink,pdwCookie) 11937 #define ITransferDestination_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) 11938 #define ITransferDestination_CreateItem(This,pszName,dwAttributes,ullSize,flags,riidItem,ppvItem,riidResources,ppvResources) (This)->lpVtbl->CreateItem(This,pszName,dwAttributes,ullSize,flags,riidItem,ppvItem,riidResources,ppvResources) 11939 #else 11940 /*** IUnknown methods ***/ 11941 static FORCEINLINE HRESULT ITransferDestination_QueryInterface(ITransferDestination* This,REFIID riid,void **ppvObject) { 11942 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 11943 } 11944 static FORCEINLINE ULONG ITransferDestination_AddRef(ITransferDestination* This) { 11945 return This->lpVtbl->AddRef(This); 11946 } 11947 static FORCEINLINE ULONG ITransferDestination_Release(ITransferDestination* This) { 11948 return This->lpVtbl->Release(This); 11949 } 11950 /*** ITransferDestination methods ***/ 11951 static FORCEINLINE HRESULT ITransferDestination_Advise(ITransferDestination* This,ITransferAdviseSink *psink,DWORD *pdwCookie) { 11952 return This->lpVtbl->Advise(This,psink,pdwCookie); 11953 } 11954 static FORCEINLINE HRESULT ITransferDestination_Unadvise(ITransferDestination* This,DWORD dwCookie) { 11955 return This->lpVtbl->Unadvise(This,dwCookie); 11956 } 11957 static FORCEINLINE HRESULT ITransferDestination_CreateItem(ITransferDestination* This,LPCWSTR pszName,DWORD dwAttributes,ULONGLONG ullSize,TRANSFER_SOURCE_FLAGS flags,REFIID riidItem,void **ppvItem,REFIID riidResources,void **ppvResources) { 11958 return This->lpVtbl->CreateItem(This,pszName,dwAttributes,ullSize,flags,riidItem,ppvItem,riidResources,ppvResources); 11959 } 11960 #endif 11961 #endif 11962 11963 #endif 11964 11965 HRESULT STDMETHODCALLTYPE ITransferDestination_Advise_Proxy( 11966 ITransferDestination* This, 11967 ITransferAdviseSink *psink, 11968 DWORD *pdwCookie); 11969 void __RPC_STUB ITransferDestination_Advise_Stub( 11970 IRpcStubBuffer* This, 11971 IRpcChannelBuffer* pRpcChannelBuffer, 11972 PRPC_MESSAGE pRpcMessage, 11973 DWORD* pdwStubPhase); 11974 HRESULT STDMETHODCALLTYPE ITransferDestination_Unadvise_Proxy( 11975 ITransferDestination* This, 11976 DWORD dwCookie); 11977 void __RPC_STUB ITransferDestination_Unadvise_Stub( 11978 IRpcStubBuffer* This, 11979 IRpcChannelBuffer* pRpcChannelBuffer, 11980 PRPC_MESSAGE pRpcMessage, 11981 DWORD* pdwStubPhase); 11982 HRESULT STDMETHODCALLTYPE ITransferDestination_CreateItem_Proxy( 11983 ITransferDestination* This, 11984 LPCWSTR pszName, 11985 DWORD dwAttributes, 11986 ULONGLONG ullSize, 11987 TRANSFER_SOURCE_FLAGS flags, 11988 REFIID riidItem, 11989 void **ppvItem, 11990 REFIID riidResources, 11991 void **ppvResources); 11992 void __RPC_STUB ITransferDestination_CreateItem_Stub( 11993 IRpcStubBuffer* This, 11994 IRpcChannelBuffer* pRpcChannelBuffer, 11995 PRPC_MESSAGE pRpcMessage, 11996 DWORD* pdwStubPhase); 11997 11998 #endif /* __ITransferDestination_INTERFACE_DEFINED__ */ 11999 12000 #if 0 12001 typedef struct _OVERLAPPED { 12002 ULONG_PTR Internal; 12003 ULONG_PTR InternalHigh; 12004 __C89_NAMELESS union { 12005 __C89_NAMELESS struct { 12006 DWORD Offset; 12007 DWORD OffsetHigh; 12008 } __C89_NAMELESSSTRUCTNAME; 12009 PVOID Pointer; 12010 } __C89_NAMELESSUNIONNAME; 12011 HANDLE hEvent; 12012 } OVERLAPPED; 12013 typedef struct _OVERLAPPED *LPOVERLAPPED; 12014 #endif 12015 12016 /***************************************************************************** 12017 * IStreamAsync interface 12018 */ 12019 #ifndef __IStreamAsync_INTERFACE_DEFINED__ 12020 #define __IStreamAsync_INTERFACE_DEFINED__ 12021 12022 DEFINE_GUID(IID_IStreamAsync, 0xfe0b6665, 0xe0ca, 0x49b9, 0xa1,0x78, 0x2b,0x5c,0xb4,0x8d,0x92,0xa5); 12023 #if defined(__cplusplus) && !defined(CINTERFACE) 12024 MIDL_INTERFACE("fe0b6665-e0ca-49b9-a178-2b5cb48d92a5") 12025 IStreamAsync : public IStream 12026 { 12027 virtual HRESULT STDMETHODCALLTYPE ReadAsync( 12028 void *pv, 12029 DWORD cb, 12030 LPDWORD pcbRead, 12031 LPOVERLAPPED lpOverlapped) = 0; 12032 12033 virtual HRESULT STDMETHODCALLTYPE WriteAsync( 12034 const void *lpBuffer, 12035 DWORD cb, 12036 LPDWORD pcbWritten, 12037 LPOVERLAPPED lpOverlapped) = 0; 12038 12039 virtual HRESULT STDMETHODCALLTYPE OverlappedResult( 12040 LPOVERLAPPED lpOverlapped, 12041 LPDWORD lpNumberOfBytesTransferred, 12042 WINBOOL bWait) = 0; 12043 12044 virtual HRESULT STDMETHODCALLTYPE CancelIo( 12045 ) = 0; 12046 12047 }; 12048 #ifdef __CRT_UUID_DECL 12049 __CRT_UUID_DECL(IStreamAsync, 0xfe0b6665, 0xe0ca, 0x49b9, 0xa1,0x78, 0x2b,0x5c,0xb4,0x8d,0x92,0xa5) 12050 #endif 12051 #else 12052 typedef struct IStreamAsyncVtbl { 12053 BEGIN_INTERFACE 12054 12055 /*** IUnknown methods ***/ 12056 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 12057 IStreamAsync* This, 12058 REFIID riid, 12059 void **ppvObject); 12060 12061 ULONG (STDMETHODCALLTYPE *AddRef)( 12062 IStreamAsync* This); 12063 12064 ULONG (STDMETHODCALLTYPE *Release)( 12065 IStreamAsync* This); 12066 12067 /*** ISequentialStream methods ***/ 12068 HRESULT (STDMETHODCALLTYPE *Read)( 12069 IStreamAsync* This, 12070 void *pv, 12071 ULONG cb, 12072 ULONG *pcbRead); 12073 12074 HRESULT (STDMETHODCALLTYPE *Write)( 12075 IStreamAsync* This, 12076 const void *pv, 12077 ULONG cb, 12078 ULONG *pcbWritten); 12079 12080 /*** IStream methods ***/ 12081 HRESULT (STDMETHODCALLTYPE *Seek)( 12082 IStreamAsync* This, 12083 LARGE_INTEGER dlibMove, 12084 DWORD dwOrigin, 12085 ULARGE_INTEGER *plibNewPosition); 12086 12087 HRESULT (STDMETHODCALLTYPE *SetSize)( 12088 IStreamAsync* This, 12089 ULARGE_INTEGER libNewSize); 12090 12091 HRESULT (STDMETHODCALLTYPE *CopyTo)( 12092 IStreamAsync* This, 12093 IStream *pstm, 12094 ULARGE_INTEGER cb, 12095 ULARGE_INTEGER *pcbRead, 12096 ULARGE_INTEGER *pcbWritten); 12097 12098 HRESULT (STDMETHODCALLTYPE *Commit)( 12099 IStreamAsync* This, 12100 DWORD grfCommitFlags); 12101 12102 HRESULT (STDMETHODCALLTYPE *Revert)( 12103 IStreamAsync* This); 12104 12105 HRESULT (STDMETHODCALLTYPE *LockRegion)( 12106 IStreamAsync* This, 12107 ULARGE_INTEGER libOffset, 12108 ULARGE_INTEGER cb, 12109 DWORD dwLockType); 12110 12111 HRESULT (STDMETHODCALLTYPE *UnlockRegion)( 12112 IStreamAsync* This, 12113 ULARGE_INTEGER libOffset, 12114 ULARGE_INTEGER cb, 12115 DWORD dwLockType); 12116 12117 HRESULT (STDMETHODCALLTYPE *Stat)( 12118 IStreamAsync* This, 12119 STATSTG *pstatstg, 12120 DWORD grfStatFlag); 12121 12122 HRESULT (STDMETHODCALLTYPE *Clone)( 12123 IStreamAsync* This, 12124 IStream **ppstm); 12125 12126 /*** IStreamAsync methods ***/ 12127 HRESULT (STDMETHODCALLTYPE *ReadAsync)( 12128 IStreamAsync* This, 12129 void *pv, 12130 DWORD cb, 12131 LPDWORD pcbRead, 12132 LPOVERLAPPED lpOverlapped); 12133 12134 HRESULT (STDMETHODCALLTYPE *WriteAsync)( 12135 IStreamAsync* This, 12136 const void *lpBuffer, 12137 DWORD cb, 12138 LPDWORD pcbWritten, 12139 LPOVERLAPPED lpOverlapped); 12140 12141 HRESULT (STDMETHODCALLTYPE *OverlappedResult)( 12142 IStreamAsync* This, 12143 LPOVERLAPPED lpOverlapped, 12144 LPDWORD lpNumberOfBytesTransferred, 12145 WINBOOL bWait); 12146 12147 HRESULT (STDMETHODCALLTYPE *CancelIo)( 12148 IStreamAsync* This); 12149 12150 END_INTERFACE 12151 } IStreamAsyncVtbl; 12152 interface IStreamAsync { 12153 CONST_VTBL IStreamAsyncVtbl* lpVtbl; 12154 }; 12155 12156 #ifdef COBJMACROS 12157 #ifndef WIDL_C_INLINE_WRAPPERS 12158 /*** IUnknown methods ***/ 12159 #define IStreamAsync_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12160 #define IStreamAsync_AddRef(This) (This)->lpVtbl->AddRef(This) 12161 #define IStreamAsync_Release(This) (This)->lpVtbl->Release(This) 12162 /*** ISequentialStream methods ***/ 12163 #define IStreamAsync_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead) 12164 #define IStreamAsync_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten) 12165 /*** IStream methods ***/ 12166 #define IStreamAsync_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition) 12167 #define IStreamAsync_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize) 12168 #define IStreamAsync_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten) 12169 #define IStreamAsync_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags) 12170 #define IStreamAsync_Revert(This) (This)->lpVtbl->Revert(This) 12171 #define IStreamAsync_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType) 12172 #define IStreamAsync_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType) 12173 #define IStreamAsync_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag) 12174 #define IStreamAsync_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm) 12175 /*** IStreamAsync methods ***/ 12176 #define IStreamAsync_ReadAsync(This,pv,cb,pcbRead,lpOverlapped) (This)->lpVtbl->ReadAsync(This,pv,cb,pcbRead,lpOverlapped) 12177 #define IStreamAsync_WriteAsync(This,lpBuffer,cb,pcbWritten,lpOverlapped) (This)->lpVtbl->WriteAsync(This,lpBuffer,cb,pcbWritten,lpOverlapped) 12178 #define IStreamAsync_OverlappedResult(This,lpOverlapped,lpNumberOfBytesTransferred,bWait) (This)->lpVtbl->OverlappedResult(This,lpOverlapped,lpNumberOfBytesTransferred,bWait) 12179 #define IStreamAsync_CancelIo(This) (This)->lpVtbl->CancelIo(This) 12180 #else 12181 /*** IUnknown methods ***/ 12182 static FORCEINLINE HRESULT IStreamAsync_QueryInterface(IStreamAsync* This,REFIID riid,void **ppvObject) { 12183 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 12184 } 12185 static FORCEINLINE ULONG IStreamAsync_AddRef(IStreamAsync* This) { 12186 return This->lpVtbl->AddRef(This); 12187 } 12188 static FORCEINLINE ULONG IStreamAsync_Release(IStreamAsync* This) { 12189 return This->lpVtbl->Release(This); 12190 } 12191 /*** ISequentialStream methods ***/ 12192 static FORCEINLINE HRESULT IStreamAsync_Read(IStreamAsync* This,void *pv,ULONG cb,ULONG *pcbRead) { 12193 return This->lpVtbl->Read(This,pv,cb,pcbRead); 12194 } 12195 static FORCEINLINE HRESULT IStreamAsync_Write(IStreamAsync* This,const void *pv,ULONG cb,ULONG *pcbWritten) { 12196 return This->lpVtbl->Write(This,pv,cb,pcbWritten); 12197 } 12198 /*** IStream methods ***/ 12199 static FORCEINLINE HRESULT IStreamAsync_Seek(IStreamAsync* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) { 12200 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition); 12201 } 12202 static FORCEINLINE HRESULT IStreamAsync_SetSize(IStreamAsync* This,ULARGE_INTEGER libNewSize) { 12203 return This->lpVtbl->SetSize(This,libNewSize); 12204 } 12205 static FORCEINLINE HRESULT IStreamAsync_CopyTo(IStreamAsync* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) { 12206 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten); 12207 } 12208 static FORCEINLINE HRESULT IStreamAsync_Commit(IStreamAsync* This,DWORD grfCommitFlags) { 12209 return This->lpVtbl->Commit(This,grfCommitFlags); 12210 } 12211 static FORCEINLINE HRESULT IStreamAsync_Revert(IStreamAsync* This) { 12212 return This->lpVtbl->Revert(This); 12213 } 12214 static FORCEINLINE HRESULT IStreamAsync_LockRegion(IStreamAsync* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) { 12215 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType); 12216 } 12217 static FORCEINLINE HRESULT IStreamAsync_UnlockRegion(IStreamAsync* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) { 12218 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType); 12219 } 12220 static FORCEINLINE HRESULT IStreamAsync_Stat(IStreamAsync* This,STATSTG *pstatstg,DWORD grfStatFlag) { 12221 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag); 12222 } 12223 static FORCEINLINE HRESULT IStreamAsync_Clone(IStreamAsync* This,IStream **ppstm) { 12224 return This->lpVtbl->Clone(This,ppstm); 12225 } 12226 /*** IStreamAsync methods ***/ 12227 static FORCEINLINE HRESULT IStreamAsync_ReadAsync(IStreamAsync* This,void *pv,DWORD cb,LPDWORD pcbRead,LPOVERLAPPED lpOverlapped) { 12228 return This->lpVtbl->ReadAsync(This,pv,cb,pcbRead,lpOverlapped); 12229 } 12230 static FORCEINLINE HRESULT IStreamAsync_WriteAsync(IStreamAsync* This,const void *lpBuffer,DWORD cb,LPDWORD pcbWritten,LPOVERLAPPED lpOverlapped) { 12231 return This->lpVtbl->WriteAsync(This,lpBuffer,cb,pcbWritten,lpOverlapped); 12232 } 12233 static FORCEINLINE HRESULT IStreamAsync_OverlappedResult(IStreamAsync* This,LPOVERLAPPED lpOverlapped,LPDWORD lpNumberOfBytesTransferred,WINBOOL bWait) { 12234 return This->lpVtbl->OverlappedResult(This,lpOverlapped,lpNumberOfBytesTransferred,bWait); 12235 } 12236 static FORCEINLINE HRESULT IStreamAsync_CancelIo(IStreamAsync* This) { 12237 return This->lpVtbl->CancelIo(This); 12238 } 12239 #endif 12240 #endif 12241 12242 #endif 12243 12244 HRESULT STDMETHODCALLTYPE IStreamAsync_ReadAsync_Proxy( 12245 IStreamAsync* This, 12246 void *pv, 12247 DWORD cb, 12248 LPDWORD pcbRead, 12249 LPOVERLAPPED lpOverlapped); 12250 void __RPC_STUB IStreamAsync_ReadAsync_Stub( 12251 IRpcStubBuffer* This, 12252 IRpcChannelBuffer* pRpcChannelBuffer, 12253 PRPC_MESSAGE pRpcMessage, 12254 DWORD* pdwStubPhase); 12255 HRESULT STDMETHODCALLTYPE IStreamAsync_WriteAsync_Proxy( 12256 IStreamAsync* This, 12257 const void *lpBuffer, 12258 DWORD cb, 12259 LPDWORD pcbWritten, 12260 LPOVERLAPPED lpOverlapped); 12261 void __RPC_STUB IStreamAsync_WriteAsync_Stub( 12262 IRpcStubBuffer* This, 12263 IRpcChannelBuffer* pRpcChannelBuffer, 12264 PRPC_MESSAGE pRpcMessage, 12265 DWORD* pdwStubPhase); 12266 HRESULT STDMETHODCALLTYPE IStreamAsync_OverlappedResult_Proxy( 12267 IStreamAsync* This, 12268 LPOVERLAPPED lpOverlapped, 12269 LPDWORD lpNumberOfBytesTransferred, 12270 WINBOOL bWait); 12271 void __RPC_STUB IStreamAsync_OverlappedResult_Stub( 12272 IRpcStubBuffer* This, 12273 IRpcChannelBuffer* pRpcChannelBuffer, 12274 PRPC_MESSAGE pRpcMessage, 12275 DWORD* pdwStubPhase); 12276 HRESULT STDMETHODCALLTYPE IStreamAsync_CancelIo_Proxy( 12277 IStreamAsync* This); 12278 void __RPC_STUB IStreamAsync_CancelIo_Stub( 12279 IRpcStubBuffer* This, 12280 IRpcChannelBuffer* pRpcChannelBuffer, 12281 PRPC_MESSAGE pRpcMessage, 12282 DWORD* pdwStubPhase); 12283 12284 #endif /* __IStreamAsync_INTERFACE_DEFINED__ */ 12285 12286 12287 /***************************************************************************** 12288 * IStreamUnbufferedInfo interface 12289 */ 12290 #ifndef __IStreamUnbufferedInfo_INTERFACE_DEFINED__ 12291 #define __IStreamUnbufferedInfo_INTERFACE_DEFINED__ 12292 12293 DEFINE_GUID(IID_IStreamUnbufferedInfo, 0x8a68fdda, 0x1fdc, 0x4c20, 0x8c,0xeb, 0x41,0x66,0x43,0xb5,0xa6,0x25); 12294 #if defined(__cplusplus) && !defined(CINTERFACE) 12295 MIDL_INTERFACE("8a68fdda-1fdc-4c20-8ceb-416643b5a625") 12296 IStreamUnbufferedInfo : public IUnknown 12297 { 12298 virtual HRESULT STDMETHODCALLTYPE GetSectorSize( 12299 ULONG *pcbSectorSize) = 0; 12300 12301 }; 12302 #ifdef __CRT_UUID_DECL 12303 __CRT_UUID_DECL(IStreamUnbufferedInfo, 0x8a68fdda, 0x1fdc, 0x4c20, 0x8c,0xeb, 0x41,0x66,0x43,0xb5,0xa6,0x25) 12304 #endif 12305 #else 12306 typedef struct IStreamUnbufferedInfoVtbl { 12307 BEGIN_INTERFACE 12308 12309 /*** IUnknown methods ***/ 12310 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 12311 IStreamUnbufferedInfo* This, 12312 REFIID riid, 12313 void **ppvObject); 12314 12315 ULONG (STDMETHODCALLTYPE *AddRef)( 12316 IStreamUnbufferedInfo* This); 12317 12318 ULONG (STDMETHODCALLTYPE *Release)( 12319 IStreamUnbufferedInfo* This); 12320 12321 /*** IStreamUnbufferedInfo methods ***/ 12322 HRESULT (STDMETHODCALLTYPE *GetSectorSize)( 12323 IStreamUnbufferedInfo* This, 12324 ULONG *pcbSectorSize); 12325 12326 END_INTERFACE 12327 } IStreamUnbufferedInfoVtbl; 12328 interface IStreamUnbufferedInfo { 12329 CONST_VTBL IStreamUnbufferedInfoVtbl* lpVtbl; 12330 }; 12331 12332 #ifdef COBJMACROS 12333 #ifndef WIDL_C_INLINE_WRAPPERS 12334 /*** IUnknown methods ***/ 12335 #define IStreamUnbufferedInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12336 #define IStreamUnbufferedInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 12337 #define IStreamUnbufferedInfo_Release(This) (This)->lpVtbl->Release(This) 12338 /*** IStreamUnbufferedInfo methods ***/ 12339 #define IStreamUnbufferedInfo_GetSectorSize(This,pcbSectorSize) (This)->lpVtbl->GetSectorSize(This,pcbSectorSize) 12340 #else 12341 /*** IUnknown methods ***/ 12342 static FORCEINLINE HRESULT IStreamUnbufferedInfo_QueryInterface(IStreamUnbufferedInfo* This,REFIID riid,void **ppvObject) { 12343 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 12344 } 12345 static FORCEINLINE ULONG IStreamUnbufferedInfo_AddRef(IStreamUnbufferedInfo* This) { 12346 return This->lpVtbl->AddRef(This); 12347 } 12348 static FORCEINLINE ULONG IStreamUnbufferedInfo_Release(IStreamUnbufferedInfo* This) { 12349 return This->lpVtbl->Release(This); 12350 } 12351 /*** IStreamUnbufferedInfo methods ***/ 12352 static FORCEINLINE HRESULT IStreamUnbufferedInfo_GetSectorSize(IStreamUnbufferedInfo* This,ULONG *pcbSectorSize) { 12353 return This->lpVtbl->GetSectorSize(This,pcbSectorSize); 12354 } 12355 #endif 12356 #endif 12357 12358 #endif 12359 12360 HRESULT STDMETHODCALLTYPE IStreamUnbufferedInfo_GetSectorSize_Proxy( 12361 IStreamUnbufferedInfo* This, 12362 ULONG *pcbSectorSize); 12363 void __RPC_STUB IStreamUnbufferedInfo_GetSectorSize_Stub( 12364 IRpcStubBuffer* This, 12365 IRpcChannelBuffer* pRpcChannelBuffer, 12366 PRPC_MESSAGE pRpcMessage, 12367 DWORD* pdwStubPhase); 12368 12369 #endif /* __IStreamUnbufferedInfo_INTERFACE_DEFINED__ */ 12370 12371 12372 #if _WIN32_IE >= _WIN32_IE_IE70 12373 /***************************************************************************** 12374 * IFileOperationProgressSink interface 12375 */ 12376 #ifndef __IFileOperationProgressSink_INTERFACE_DEFINED__ 12377 #define __IFileOperationProgressSink_INTERFACE_DEFINED__ 12378 12379 DEFINE_GUID(IID_IFileOperationProgressSink, 0x04b0f1a7, 0x9490, 0x44bc, 0x96,0xe1, 0x42,0x96,0xa3,0x12,0x52,0xe2); 12380 #if defined(__cplusplus) && !defined(CINTERFACE) 12381 MIDL_INTERFACE("04b0f1a7-9490-44bc-96e1-4296a31252e2") 12382 IFileOperationProgressSink : public IUnknown 12383 { 12384 virtual HRESULT STDMETHODCALLTYPE StartOperations( 12385 ) = 0; 12386 12387 virtual HRESULT STDMETHODCALLTYPE FinishOperations( 12388 HRESULT hrResult) = 0; 12389 12390 virtual HRESULT STDMETHODCALLTYPE PreRenameItem( 12391 DWORD dwFlags, 12392 IShellItem *psiItem, 12393 LPCWSTR pszNewName) = 0; 12394 12395 virtual HRESULT STDMETHODCALLTYPE PostRenameItem( 12396 DWORD dwFlags, 12397 IShellItem *psiItem, 12398 LPCWSTR pszNewName, 12399 HRESULT hrRename, 12400 IShellItem *psiNewlyCreated) = 0; 12401 12402 virtual HRESULT STDMETHODCALLTYPE PreMoveItem( 12403 DWORD dwFlags, 12404 IShellItem *psiItem, 12405 IShellItem *psiDestinationFolder, 12406 LPCWSTR pszNewName) = 0; 12407 12408 virtual HRESULT STDMETHODCALLTYPE PostMoveItem( 12409 DWORD dwFlags, 12410 IShellItem *psiItem, 12411 IShellItem *psiDestinationFolder, 12412 LPCWSTR pszNewName, 12413 HRESULT hrMove, 12414 IShellItem *psiNewlyCreated) = 0; 12415 12416 virtual HRESULT STDMETHODCALLTYPE PreCopyItem( 12417 DWORD dwFlags, 12418 IShellItem *psiItem, 12419 IShellItem *psiDestinationFolder, 12420 LPCWSTR pszNewName) = 0; 12421 12422 virtual HRESULT STDMETHODCALLTYPE PostCopyItem( 12423 DWORD dwFlags, 12424 IShellItem *psiItem, 12425 IShellItem *psiDestinationFolder, 12426 LPCWSTR pszNewName, 12427 HRESULT hrCopy, 12428 IShellItem *psiNewlyCreated) = 0; 12429 12430 virtual HRESULT STDMETHODCALLTYPE PreDeleteItem( 12431 DWORD dwFlags, 12432 IShellItem *psiItem) = 0; 12433 12434 virtual HRESULT STDMETHODCALLTYPE PostDeleteItem( 12435 DWORD dwFlags, 12436 IShellItem *psiItem, 12437 HRESULT hrDelete, 12438 IShellItem *psiNewlyCreated) = 0; 12439 12440 virtual HRESULT STDMETHODCALLTYPE PreNewItem( 12441 DWORD dwFlags, 12442 IShellItem *psiDestinationFolder, 12443 LPCWSTR pszNewName) = 0; 12444 12445 virtual HRESULT STDMETHODCALLTYPE PostNewItem( 12446 DWORD dwFlags, 12447 IShellItem *psiDestinationFolder, 12448 LPCWSTR pszNewName, 12449 LPCWSTR pszTemplateName, 12450 DWORD dwFileAttributes, 12451 HRESULT hrNew, 12452 IShellItem *psiNewItem) = 0; 12453 12454 virtual HRESULT STDMETHODCALLTYPE UpdateProgress( 12455 UINT iWorkTotal, 12456 UINT iWorkSoFar) = 0; 12457 12458 virtual HRESULT STDMETHODCALLTYPE ResetTimer( 12459 ) = 0; 12460 12461 virtual HRESULT STDMETHODCALLTYPE PauseTimer( 12462 ) = 0; 12463 12464 virtual HRESULT STDMETHODCALLTYPE ResumeTimer( 12465 ) = 0; 12466 12467 }; 12468 #ifdef __CRT_UUID_DECL 12469 __CRT_UUID_DECL(IFileOperationProgressSink, 0x04b0f1a7, 0x9490, 0x44bc, 0x96,0xe1, 0x42,0x96,0xa3,0x12,0x52,0xe2) 12470 #endif 12471 #else 12472 typedef struct IFileOperationProgressSinkVtbl { 12473 BEGIN_INTERFACE 12474 12475 /*** IUnknown methods ***/ 12476 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 12477 IFileOperationProgressSink* This, 12478 REFIID riid, 12479 void **ppvObject); 12480 12481 ULONG (STDMETHODCALLTYPE *AddRef)( 12482 IFileOperationProgressSink* This); 12483 12484 ULONG (STDMETHODCALLTYPE *Release)( 12485 IFileOperationProgressSink* This); 12486 12487 /*** IFileOperationProgressSink methods ***/ 12488 HRESULT (STDMETHODCALLTYPE *StartOperations)( 12489 IFileOperationProgressSink* This); 12490 12491 HRESULT (STDMETHODCALLTYPE *FinishOperations)( 12492 IFileOperationProgressSink* This, 12493 HRESULT hrResult); 12494 12495 HRESULT (STDMETHODCALLTYPE *PreRenameItem)( 12496 IFileOperationProgressSink* This, 12497 DWORD dwFlags, 12498 IShellItem *psiItem, 12499 LPCWSTR pszNewName); 12500 12501 HRESULT (STDMETHODCALLTYPE *PostRenameItem)( 12502 IFileOperationProgressSink* This, 12503 DWORD dwFlags, 12504 IShellItem *psiItem, 12505 LPCWSTR pszNewName, 12506 HRESULT hrRename, 12507 IShellItem *psiNewlyCreated); 12508 12509 HRESULT (STDMETHODCALLTYPE *PreMoveItem)( 12510 IFileOperationProgressSink* This, 12511 DWORD dwFlags, 12512 IShellItem *psiItem, 12513 IShellItem *psiDestinationFolder, 12514 LPCWSTR pszNewName); 12515 12516 HRESULT (STDMETHODCALLTYPE *PostMoveItem)( 12517 IFileOperationProgressSink* This, 12518 DWORD dwFlags, 12519 IShellItem *psiItem, 12520 IShellItem *psiDestinationFolder, 12521 LPCWSTR pszNewName, 12522 HRESULT hrMove, 12523 IShellItem *psiNewlyCreated); 12524 12525 HRESULT (STDMETHODCALLTYPE *PreCopyItem)( 12526 IFileOperationProgressSink* This, 12527 DWORD dwFlags, 12528 IShellItem *psiItem, 12529 IShellItem *psiDestinationFolder, 12530 LPCWSTR pszNewName); 12531 12532 HRESULT (STDMETHODCALLTYPE *PostCopyItem)( 12533 IFileOperationProgressSink* This, 12534 DWORD dwFlags, 12535 IShellItem *psiItem, 12536 IShellItem *psiDestinationFolder, 12537 LPCWSTR pszNewName, 12538 HRESULT hrCopy, 12539 IShellItem *psiNewlyCreated); 12540 12541 HRESULT (STDMETHODCALLTYPE *PreDeleteItem)( 12542 IFileOperationProgressSink* This, 12543 DWORD dwFlags, 12544 IShellItem *psiItem); 12545 12546 HRESULT (STDMETHODCALLTYPE *PostDeleteItem)( 12547 IFileOperationProgressSink* This, 12548 DWORD dwFlags, 12549 IShellItem *psiItem, 12550 HRESULT hrDelete, 12551 IShellItem *psiNewlyCreated); 12552 12553 HRESULT (STDMETHODCALLTYPE *PreNewItem)( 12554 IFileOperationProgressSink* This, 12555 DWORD dwFlags, 12556 IShellItem *psiDestinationFolder, 12557 LPCWSTR pszNewName); 12558 12559 HRESULT (STDMETHODCALLTYPE *PostNewItem)( 12560 IFileOperationProgressSink* This, 12561 DWORD dwFlags, 12562 IShellItem *psiDestinationFolder, 12563 LPCWSTR pszNewName, 12564 LPCWSTR pszTemplateName, 12565 DWORD dwFileAttributes, 12566 HRESULT hrNew, 12567 IShellItem *psiNewItem); 12568 12569 HRESULT (STDMETHODCALLTYPE *UpdateProgress)( 12570 IFileOperationProgressSink* This, 12571 UINT iWorkTotal, 12572 UINT iWorkSoFar); 12573 12574 HRESULT (STDMETHODCALLTYPE *ResetTimer)( 12575 IFileOperationProgressSink* This); 12576 12577 HRESULT (STDMETHODCALLTYPE *PauseTimer)( 12578 IFileOperationProgressSink* This); 12579 12580 HRESULT (STDMETHODCALLTYPE *ResumeTimer)( 12581 IFileOperationProgressSink* This); 12582 12583 END_INTERFACE 12584 } IFileOperationProgressSinkVtbl; 12585 interface IFileOperationProgressSink { 12586 CONST_VTBL IFileOperationProgressSinkVtbl* lpVtbl; 12587 }; 12588 12589 #ifdef COBJMACROS 12590 #ifndef WIDL_C_INLINE_WRAPPERS 12591 /*** IUnknown methods ***/ 12592 #define IFileOperationProgressSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12593 #define IFileOperationProgressSink_AddRef(This) (This)->lpVtbl->AddRef(This) 12594 #define IFileOperationProgressSink_Release(This) (This)->lpVtbl->Release(This) 12595 /*** IFileOperationProgressSink methods ***/ 12596 #define IFileOperationProgressSink_StartOperations(This) (This)->lpVtbl->StartOperations(This) 12597 #define IFileOperationProgressSink_FinishOperations(This,hrResult) (This)->lpVtbl->FinishOperations(This,hrResult) 12598 #define IFileOperationProgressSink_PreRenameItem(This,dwFlags,psiItem,pszNewName) (This)->lpVtbl->PreRenameItem(This,dwFlags,psiItem,pszNewName) 12599 #define IFileOperationProgressSink_PostRenameItem(This,dwFlags,psiItem,pszNewName,hrRename,psiNewlyCreated) (This)->lpVtbl->PostRenameItem(This,dwFlags,psiItem,pszNewName,hrRename,psiNewlyCreated) 12600 #define IFileOperationProgressSink_PreMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName) (This)->lpVtbl->PreMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName) 12601 #define IFileOperationProgressSink_PostMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrMove,psiNewlyCreated) (This)->lpVtbl->PostMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrMove,psiNewlyCreated) 12602 #define IFileOperationProgressSink_PreCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName) (This)->lpVtbl->PreCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName) 12603 #define IFileOperationProgressSink_PostCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrCopy,psiNewlyCreated) (This)->lpVtbl->PostCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrCopy,psiNewlyCreated) 12604 #define IFileOperationProgressSink_PreDeleteItem(This,dwFlags,psiItem) (This)->lpVtbl->PreDeleteItem(This,dwFlags,psiItem) 12605 #define IFileOperationProgressSink_PostDeleteItem(This,dwFlags,psiItem,hrDelete,psiNewlyCreated) (This)->lpVtbl->PostDeleteItem(This,dwFlags,psiItem,hrDelete,psiNewlyCreated) 12606 #define IFileOperationProgressSink_PreNewItem(This,dwFlags,psiDestinationFolder,pszNewName) (This)->lpVtbl->PreNewItem(This,dwFlags,psiDestinationFolder,pszNewName) 12607 #define IFileOperationProgressSink_PostNewItem(This,dwFlags,psiDestinationFolder,pszNewName,pszTemplateName,dwFileAttributes,hrNew,psiNewItem) (This)->lpVtbl->PostNewItem(This,dwFlags,psiDestinationFolder,pszNewName,pszTemplateName,dwFileAttributes,hrNew,psiNewItem) 12608 #define IFileOperationProgressSink_UpdateProgress(This,iWorkTotal,iWorkSoFar) (This)->lpVtbl->UpdateProgress(This,iWorkTotal,iWorkSoFar) 12609 #define IFileOperationProgressSink_ResetTimer(This) (This)->lpVtbl->ResetTimer(This) 12610 #define IFileOperationProgressSink_PauseTimer(This) (This)->lpVtbl->PauseTimer(This) 12611 #define IFileOperationProgressSink_ResumeTimer(This) (This)->lpVtbl->ResumeTimer(This) 12612 #else 12613 /*** IUnknown methods ***/ 12614 static FORCEINLINE HRESULT IFileOperationProgressSink_QueryInterface(IFileOperationProgressSink* This,REFIID riid,void **ppvObject) { 12615 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 12616 } 12617 static FORCEINLINE ULONG IFileOperationProgressSink_AddRef(IFileOperationProgressSink* This) { 12618 return This->lpVtbl->AddRef(This); 12619 } 12620 static FORCEINLINE ULONG IFileOperationProgressSink_Release(IFileOperationProgressSink* This) { 12621 return This->lpVtbl->Release(This); 12622 } 12623 /*** IFileOperationProgressSink methods ***/ 12624 static FORCEINLINE HRESULT IFileOperationProgressSink_StartOperations(IFileOperationProgressSink* This) { 12625 return This->lpVtbl->StartOperations(This); 12626 } 12627 static FORCEINLINE HRESULT IFileOperationProgressSink_FinishOperations(IFileOperationProgressSink* This,HRESULT hrResult) { 12628 return This->lpVtbl->FinishOperations(This,hrResult); 12629 } 12630 static FORCEINLINE HRESULT IFileOperationProgressSink_PreRenameItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,LPCWSTR pszNewName) { 12631 return This->lpVtbl->PreRenameItem(This,dwFlags,psiItem,pszNewName); 12632 } 12633 static FORCEINLINE HRESULT IFileOperationProgressSink_PostRenameItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,LPCWSTR pszNewName,HRESULT hrRename,IShellItem *psiNewlyCreated) { 12634 return This->lpVtbl->PostRenameItem(This,dwFlags,psiItem,pszNewName,hrRename,psiNewlyCreated); 12635 } 12636 static FORCEINLINE HRESULT IFileOperationProgressSink_PreMoveItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszNewName) { 12637 return This->lpVtbl->PreMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName); 12638 } 12639 static FORCEINLINE HRESULT IFileOperationProgressSink_PostMoveItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszNewName,HRESULT hrMove,IShellItem *psiNewlyCreated) { 12640 return This->lpVtbl->PostMoveItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrMove,psiNewlyCreated); 12641 } 12642 static FORCEINLINE HRESULT IFileOperationProgressSink_PreCopyItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszNewName) { 12643 return This->lpVtbl->PreCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName); 12644 } 12645 static FORCEINLINE HRESULT IFileOperationProgressSink_PostCopyItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszNewName,HRESULT hrCopy,IShellItem *psiNewlyCreated) { 12646 return This->lpVtbl->PostCopyItem(This,dwFlags,psiItem,psiDestinationFolder,pszNewName,hrCopy,psiNewlyCreated); 12647 } 12648 static FORCEINLINE HRESULT IFileOperationProgressSink_PreDeleteItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem) { 12649 return This->lpVtbl->PreDeleteItem(This,dwFlags,psiItem); 12650 } 12651 static FORCEINLINE HRESULT IFileOperationProgressSink_PostDeleteItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiItem,HRESULT hrDelete,IShellItem *psiNewlyCreated) { 12652 return This->lpVtbl->PostDeleteItem(This,dwFlags,psiItem,hrDelete,psiNewlyCreated); 12653 } 12654 static FORCEINLINE HRESULT IFileOperationProgressSink_PreNewItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiDestinationFolder,LPCWSTR pszNewName) { 12655 return This->lpVtbl->PreNewItem(This,dwFlags,psiDestinationFolder,pszNewName); 12656 } 12657 static FORCEINLINE HRESULT IFileOperationProgressSink_PostNewItem(IFileOperationProgressSink* This,DWORD dwFlags,IShellItem *psiDestinationFolder,LPCWSTR pszNewName,LPCWSTR pszTemplateName,DWORD dwFileAttributes,HRESULT hrNew,IShellItem *psiNewItem) { 12658 return This->lpVtbl->PostNewItem(This,dwFlags,psiDestinationFolder,pszNewName,pszTemplateName,dwFileAttributes,hrNew,psiNewItem); 12659 } 12660 static FORCEINLINE HRESULT IFileOperationProgressSink_UpdateProgress(IFileOperationProgressSink* This,UINT iWorkTotal,UINT iWorkSoFar) { 12661 return This->lpVtbl->UpdateProgress(This,iWorkTotal,iWorkSoFar); 12662 } 12663 static FORCEINLINE HRESULT IFileOperationProgressSink_ResetTimer(IFileOperationProgressSink* This) { 12664 return This->lpVtbl->ResetTimer(This); 12665 } 12666 static FORCEINLINE HRESULT IFileOperationProgressSink_PauseTimer(IFileOperationProgressSink* This) { 12667 return This->lpVtbl->PauseTimer(This); 12668 } 12669 static FORCEINLINE HRESULT IFileOperationProgressSink_ResumeTimer(IFileOperationProgressSink* This) { 12670 return This->lpVtbl->ResumeTimer(This); 12671 } 12672 #endif 12673 #endif 12674 12675 #endif 12676 12677 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_StartOperations_Proxy( 12678 IFileOperationProgressSink* This); 12679 void __RPC_STUB IFileOperationProgressSink_StartOperations_Stub( 12680 IRpcStubBuffer* This, 12681 IRpcChannelBuffer* pRpcChannelBuffer, 12682 PRPC_MESSAGE pRpcMessage, 12683 DWORD* pdwStubPhase); 12684 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_FinishOperations_Proxy( 12685 IFileOperationProgressSink* This, 12686 HRESULT hrResult); 12687 void __RPC_STUB IFileOperationProgressSink_FinishOperations_Stub( 12688 IRpcStubBuffer* This, 12689 IRpcChannelBuffer* pRpcChannelBuffer, 12690 PRPC_MESSAGE pRpcMessage, 12691 DWORD* pdwStubPhase); 12692 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_PreRenameItem_Proxy( 12693 IFileOperationProgressSink* This, 12694 DWORD dwFlags, 12695 IShellItem *psiItem, 12696 LPCWSTR pszNewName); 12697 void __RPC_STUB IFileOperationProgressSink_PreRenameItem_Stub( 12698 IRpcStubBuffer* This, 12699 IRpcChannelBuffer* pRpcChannelBuffer, 12700 PRPC_MESSAGE pRpcMessage, 12701 DWORD* pdwStubPhase); 12702 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_PostRenameItem_Proxy( 12703 IFileOperationProgressSink* This, 12704 DWORD dwFlags, 12705 IShellItem *psiItem, 12706 LPCWSTR pszNewName, 12707 HRESULT hrRename, 12708 IShellItem *psiNewlyCreated); 12709 void __RPC_STUB IFileOperationProgressSink_PostRenameItem_Stub( 12710 IRpcStubBuffer* This, 12711 IRpcChannelBuffer* pRpcChannelBuffer, 12712 PRPC_MESSAGE pRpcMessage, 12713 DWORD* pdwStubPhase); 12714 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_PreMoveItem_Proxy( 12715 IFileOperationProgressSink* This, 12716 DWORD dwFlags, 12717 IShellItem *psiItem, 12718 IShellItem *psiDestinationFolder, 12719 LPCWSTR pszNewName); 12720 void __RPC_STUB IFileOperationProgressSink_PreMoveItem_Stub( 12721 IRpcStubBuffer* This, 12722 IRpcChannelBuffer* pRpcChannelBuffer, 12723 PRPC_MESSAGE pRpcMessage, 12724 DWORD* pdwStubPhase); 12725 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_PostMoveItem_Proxy( 12726 IFileOperationProgressSink* This, 12727 DWORD dwFlags, 12728 IShellItem *psiItem, 12729 IShellItem *psiDestinationFolder, 12730 LPCWSTR pszNewName, 12731 HRESULT hrMove, 12732 IShellItem *psiNewlyCreated); 12733 void __RPC_STUB IFileOperationProgressSink_PostMoveItem_Stub( 12734 IRpcStubBuffer* This, 12735 IRpcChannelBuffer* pRpcChannelBuffer, 12736 PRPC_MESSAGE pRpcMessage, 12737 DWORD* pdwStubPhase); 12738 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_PreCopyItem_Proxy( 12739 IFileOperationProgressSink* This, 12740 DWORD dwFlags, 12741 IShellItem *psiItem, 12742 IShellItem *psiDestinationFolder, 12743 LPCWSTR pszNewName); 12744 void __RPC_STUB IFileOperationProgressSink_PreCopyItem_Stub( 12745 IRpcStubBuffer* This, 12746 IRpcChannelBuffer* pRpcChannelBuffer, 12747 PRPC_MESSAGE pRpcMessage, 12748 DWORD* pdwStubPhase); 12749 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_PostCopyItem_Proxy( 12750 IFileOperationProgressSink* This, 12751 DWORD dwFlags, 12752 IShellItem *psiItem, 12753 IShellItem *psiDestinationFolder, 12754 LPCWSTR pszNewName, 12755 HRESULT hrCopy, 12756 IShellItem *psiNewlyCreated); 12757 void __RPC_STUB IFileOperationProgressSink_PostCopyItem_Stub( 12758 IRpcStubBuffer* This, 12759 IRpcChannelBuffer* pRpcChannelBuffer, 12760 PRPC_MESSAGE pRpcMessage, 12761 DWORD* pdwStubPhase); 12762 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_PreDeleteItem_Proxy( 12763 IFileOperationProgressSink* This, 12764 DWORD dwFlags, 12765 IShellItem *psiItem); 12766 void __RPC_STUB IFileOperationProgressSink_PreDeleteItem_Stub( 12767 IRpcStubBuffer* This, 12768 IRpcChannelBuffer* pRpcChannelBuffer, 12769 PRPC_MESSAGE pRpcMessage, 12770 DWORD* pdwStubPhase); 12771 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_PostDeleteItem_Proxy( 12772 IFileOperationProgressSink* This, 12773 DWORD dwFlags, 12774 IShellItem *psiItem, 12775 HRESULT hrDelete, 12776 IShellItem *psiNewlyCreated); 12777 void __RPC_STUB IFileOperationProgressSink_PostDeleteItem_Stub( 12778 IRpcStubBuffer* This, 12779 IRpcChannelBuffer* pRpcChannelBuffer, 12780 PRPC_MESSAGE pRpcMessage, 12781 DWORD* pdwStubPhase); 12782 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_PreNewItem_Proxy( 12783 IFileOperationProgressSink* This, 12784 DWORD dwFlags, 12785 IShellItem *psiDestinationFolder, 12786 LPCWSTR pszNewName); 12787 void __RPC_STUB IFileOperationProgressSink_PreNewItem_Stub( 12788 IRpcStubBuffer* This, 12789 IRpcChannelBuffer* pRpcChannelBuffer, 12790 PRPC_MESSAGE pRpcMessage, 12791 DWORD* pdwStubPhase); 12792 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_PostNewItem_Proxy( 12793 IFileOperationProgressSink* This, 12794 DWORD dwFlags, 12795 IShellItem *psiDestinationFolder, 12796 LPCWSTR pszNewName, 12797 LPCWSTR pszTemplateName, 12798 DWORD dwFileAttributes, 12799 HRESULT hrNew, 12800 IShellItem *psiNewItem); 12801 void __RPC_STUB IFileOperationProgressSink_PostNewItem_Stub( 12802 IRpcStubBuffer* This, 12803 IRpcChannelBuffer* pRpcChannelBuffer, 12804 PRPC_MESSAGE pRpcMessage, 12805 DWORD* pdwStubPhase); 12806 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_UpdateProgress_Proxy( 12807 IFileOperationProgressSink* This, 12808 UINT iWorkTotal, 12809 UINT iWorkSoFar); 12810 void __RPC_STUB IFileOperationProgressSink_UpdateProgress_Stub( 12811 IRpcStubBuffer* This, 12812 IRpcChannelBuffer* pRpcChannelBuffer, 12813 PRPC_MESSAGE pRpcMessage, 12814 DWORD* pdwStubPhase); 12815 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_ResetTimer_Proxy( 12816 IFileOperationProgressSink* This); 12817 void __RPC_STUB IFileOperationProgressSink_ResetTimer_Stub( 12818 IRpcStubBuffer* This, 12819 IRpcChannelBuffer* pRpcChannelBuffer, 12820 PRPC_MESSAGE pRpcMessage, 12821 DWORD* pdwStubPhase); 12822 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_PauseTimer_Proxy( 12823 IFileOperationProgressSink* This); 12824 void __RPC_STUB IFileOperationProgressSink_PauseTimer_Stub( 12825 IRpcStubBuffer* This, 12826 IRpcChannelBuffer* pRpcChannelBuffer, 12827 PRPC_MESSAGE pRpcMessage, 12828 DWORD* pdwStubPhase); 12829 HRESULT STDMETHODCALLTYPE IFileOperationProgressSink_ResumeTimer_Proxy( 12830 IFileOperationProgressSink* This); 12831 void __RPC_STUB IFileOperationProgressSink_ResumeTimer_Stub( 12832 IRpcStubBuffer* This, 12833 IRpcChannelBuffer* pRpcChannelBuffer, 12834 PRPC_MESSAGE pRpcMessage, 12835 DWORD* pdwStubPhase); 12836 12837 #endif /* __IFileOperationProgressSink_INTERFACE_DEFINED__ */ 12838 12839 #endif 12840 12841 /***************************************************************************** 12842 * IShellItemArray interface 12843 */ 12844 #ifndef __IShellItemArray_INTERFACE_DEFINED__ 12845 #define __IShellItemArray_INTERFACE_DEFINED__ 12846 12847 typedef enum SIATTRIBFLAGS { 12848 SIATTRIBFLAGS_AND = 0x1, 12849 SIATTRIBFLAGS_OR = 0x2, 12850 SIATTRIBFLAGS_APPCOMPAT = 0x3, 12851 SIATTRIBFLAGS_MASK = 0x3, 12852 SIATTRIBFLAGS_ALLITEMS = 0x4000 12853 } SIATTRIBFLAGS; 12854 12855 DEFINE_ENUM_FLAG_OPERATORS(SIATTRIBFLAGS) 12856 12857 DEFINE_GUID(IID_IShellItemArray, 0xb63ea76d, 0x1f85, 0x456f, 0xa1,0x9c, 0x48,0x15,0x9e,0xfa,0x85,0x8b); 12858 #if defined(__cplusplus) && !defined(CINTERFACE) 12859 MIDL_INTERFACE("b63ea76d-1f85-456f-a19c-48159efa858b") 12860 IShellItemArray : public IUnknown 12861 { 12862 virtual HRESULT STDMETHODCALLTYPE BindToHandler( 12863 IBindCtx *pbc, 12864 REFGUID bhid, 12865 REFIID riid, 12866 void **ppvOut) = 0; 12867 12868 virtual HRESULT STDMETHODCALLTYPE GetPropertyStore( 12869 GETPROPERTYSTOREFLAGS flags, 12870 REFIID riid, 12871 void **ppv) = 0; 12872 12873 virtual HRESULT STDMETHODCALLTYPE GetPropertyDescriptionList( 12874 REFPROPERTYKEY keyType, 12875 REFIID riid, 12876 void **ppv) = 0; 12877 12878 virtual HRESULT STDMETHODCALLTYPE GetAttributes( 12879 SIATTRIBFLAGS AttribFlags, 12880 SFGAOF sfgaoMask, 12881 SFGAOF *psfgaoAttribs) = 0; 12882 12883 virtual HRESULT STDMETHODCALLTYPE GetCount( 12884 DWORD *pdwNumItems) = 0; 12885 12886 virtual HRESULT STDMETHODCALLTYPE GetItemAt( 12887 DWORD dwIndex, 12888 IShellItem **ppsi) = 0; 12889 12890 virtual HRESULT STDMETHODCALLTYPE EnumItems( 12891 IEnumShellItems **ppenumShellItems) = 0; 12892 12893 }; 12894 #ifdef __CRT_UUID_DECL 12895 __CRT_UUID_DECL(IShellItemArray, 0xb63ea76d, 0x1f85, 0x456f, 0xa1,0x9c, 0x48,0x15,0x9e,0xfa,0x85,0x8b) 12896 #endif 12897 #else 12898 typedef struct IShellItemArrayVtbl { 12899 BEGIN_INTERFACE 12900 12901 /*** IUnknown methods ***/ 12902 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 12903 IShellItemArray* This, 12904 REFIID riid, 12905 void **ppvObject); 12906 12907 ULONG (STDMETHODCALLTYPE *AddRef)( 12908 IShellItemArray* This); 12909 12910 ULONG (STDMETHODCALLTYPE *Release)( 12911 IShellItemArray* This); 12912 12913 /*** IShellItemArray methods ***/ 12914 HRESULT (STDMETHODCALLTYPE *BindToHandler)( 12915 IShellItemArray* This, 12916 IBindCtx *pbc, 12917 REFGUID bhid, 12918 REFIID riid, 12919 void **ppvOut); 12920 12921 HRESULT (STDMETHODCALLTYPE *GetPropertyStore)( 12922 IShellItemArray* This, 12923 GETPROPERTYSTOREFLAGS flags, 12924 REFIID riid, 12925 void **ppv); 12926 12927 HRESULT (STDMETHODCALLTYPE *GetPropertyDescriptionList)( 12928 IShellItemArray* This, 12929 REFPROPERTYKEY keyType, 12930 REFIID riid, 12931 void **ppv); 12932 12933 HRESULT (STDMETHODCALLTYPE *GetAttributes)( 12934 IShellItemArray* This, 12935 SIATTRIBFLAGS AttribFlags, 12936 SFGAOF sfgaoMask, 12937 SFGAOF *psfgaoAttribs); 12938 12939 HRESULT (STDMETHODCALLTYPE *GetCount)( 12940 IShellItemArray* This, 12941 DWORD *pdwNumItems); 12942 12943 HRESULT (STDMETHODCALLTYPE *GetItemAt)( 12944 IShellItemArray* This, 12945 DWORD dwIndex, 12946 IShellItem **ppsi); 12947 12948 HRESULT (STDMETHODCALLTYPE *EnumItems)( 12949 IShellItemArray* This, 12950 IEnumShellItems **ppenumShellItems); 12951 12952 END_INTERFACE 12953 } IShellItemArrayVtbl; 12954 interface IShellItemArray { 12955 CONST_VTBL IShellItemArrayVtbl* lpVtbl; 12956 }; 12957 12958 #ifdef COBJMACROS 12959 #ifndef WIDL_C_INLINE_WRAPPERS 12960 /*** IUnknown methods ***/ 12961 #define IShellItemArray_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 12962 #define IShellItemArray_AddRef(This) (This)->lpVtbl->AddRef(This) 12963 #define IShellItemArray_Release(This) (This)->lpVtbl->Release(This) 12964 /*** IShellItemArray methods ***/ 12965 #define IShellItemArray_BindToHandler(This,pbc,bhid,riid,ppvOut) (This)->lpVtbl->BindToHandler(This,pbc,bhid,riid,ppvOut) 12966 #define IShellItemArray_GetPropertyStore(This,flags,riid,ppv) (This)->lpVtbl->GetPropertyStore(This,flags,riid,ppv) 12967 #define IShellItemArray_GetPropertyDescriptionList(This,keyType,riid,ppv) (This)->lpVtbl->GetPropertyDescriptionList(This,keyType,riid,ppv) 12968 #define IShellItemArray_GetAttributes(This,AttribFlags,sfgaoMask,psfgaoAttribs) (This)->lpVtbl->GetAttributes(This,AttribFlags,sfgaoMask,psfgaoAttribs) 12969 #define IShellItemArray_GetCount(This,pdwNumItems) (This)->lpVtbl->GetCount(This,pdwNumItems) 12970 #define IShellItemArray_GetItemAt(This,dwIndex,ppsi) (This)->lpVtbl->GetItemAt(This,dwIndex,ppsi) 12971 #define IShellItemArray_EnumItems(This,ppenumShellItems) (This)->lpVtbl->EnumItems(This,ppenumShellItems) 12972 #else 12973 /*** IUnknown methods ***/ 12974 static FORCEINLINE HRESULT IShellItemArray_QueryInterface(IShellItemArray* This,REFIID riid,void **ppvObject) { 12975 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 12976 } 12977 static FORCEINLINE ULONG IShellItemArray_AddRef(IShellItemArray* This) { 12978 return This->lpVtbl->AddRef(This); 12979 } 12980 static FORCEINLINE ULONG IShellItemArray_Release(IShellItemArray* This) { 12981 return This->lpVtbl->Release(This); 12982 } 12983 /*** IShellItemArray methods ***/ 12984 static FORCEINLINE HRESULT IShellItemArray_BindToHandler(IShellItemArray* This,IBindCtx *pbc,REFGUID bhid,REFIID riid,void **ppvOut) { 12985 return This->lpVtbl->BindToHandler(This,pbc,bhid,riid,ppvOut); 12986 } 12987 static FORCEINLINE HRESULT IShellItemArray_GetPropertyStore(IShellItemArray* This,GETPROPERTYSTOREFLAGS flags,REFIID riid,void **ppv) { 12988 return This->lpVtbl->GetPropertyStore(This,flags,riid,ppv); 12989 } 12990 static FORCEINLINE HRESULT IShellItemArray_GetPropertyDescriptionList(IShellItemArray* This,REFPROPERTYKEY keyType,REFIID riid,void **ppv) { 12991 return This->lpVtbl->GetPropertyDescriptionList(This,keyType,riid,ppv); 12992 } 12993 static FORCEINLINE HRESULT IShellItemArray_GetAttributes(IShellItemArray* This,SIATTRIBFLAGS AttribFlags,SFGAOF sfgaoMask,SFGAOF *psfgaoAttribs) { 12994 return This->lpVtbl->GetAttributes(This,AttribFlags,sfgaoMask,psfgaoAttribs); 12995 } 12996 static FORCEINLINE HRESULT IShellItemArray_GetCount(IShellItemArray* This,DWORD *pdwNumItems) { 12997 return This->lpVtbl->GetCount(This,pdwNumItems); 12998 } 12999 static FORCEINLINE HRESULT IShellItemArray_GetItemAt(IShellItemArray* This,DWORD dwIndex,IShellItem **ppsi) { 13000 return This->lpVtbl->GetItemAt(This,dwIndex,ppsi); 13001 } 13002 static FORCEINLINE HRESULT IShellItemArray_EnumItems(IShellItemArray* This,IEnumShellItems **ppenumShellItems) { 13003 return This->lpVtbl->EnumItems(This,ppenumShellItems); 13004 } 13005 #endif 13006 #endif 13007 13008 #endif 13009 13010 HRESULT STDMETHODCALLTYPE IShellItemArray_BindToHandler_Proxy( 13011 IShellItemArray* This, 13012 IBindCtx *pbc, 13013 REFGUID bhid, 13014 REFIID riid, 13015 void **ppvOut); 13016 void __RPC_STUB IShellItemArray_BindToHandler_Stub( 13017 IRpcStubBuffer* This, 13018 IRpcChannelBuffer* pRpcChannelBuffer, 13019 PRPC_MESSAGE pRpcMessage, 13020 DWORD* pdwStubPhase); 13021 HRESULT STDMETHODCALLTYPE IShellItemArray_GetPropertyStore_Proxy( 13022 IShellItemArray* This, 13023 GETPROPERTYSTOREFLAGS flags, 13024 REFIID riid, 13025 void **ppv); 13026 void __RPC_STUB IShellItemArray_GetPropertyStore_Stub( 13027 IRpcStubBuffer* This, 13028 IRpcChannelBuffer* pRpcChannelBuffer, 13029 PRPC_MESSAGE pRpcMessage, 13030 DWORD* pdwStubPhase); 13031 HRESULT STDMETHODCALLTYPE IShellItemArray_GetPropertyDescriptionList_Proxy( 13032 IShellItemArray* This, 13033 REFPROPERTYKEY keyType, 13034 REFIID riid, 13035 void **ppv); 13036 void __RPC_STUB IShellItemArray_GetPropertyDescriptionList_Stub( 13037 IRpcStubBuffer* This, 13038 IRpcChannelBuffer* pRpcChannelBuffer, 13039 PRPC_MESSAGE pRpcMessage, 13040 DWORD* pdwStubPhase); 13041 HRESULT STDMETHODCALLTYPE IShellItemArray_GetAttributes_Proxy( 13042 IShellItemArray* This, 13043 SIATTRIBFLAGS AttribFlags, 13044 SFGAOF sfgaoMask, 13045 SFGAOF *psfgaoAttribs); 13046 void __RPC_STUB IShellItemArray_GetAttributes_Stub( 13047 IRpcStubBuffer* This, 13048 IRpcChannelBuffer* pRpcChannelBuffer, 13049 PRPC_MESSAGE pRpcMessage, 13050 DWORD* pdwStubPhase); 13051 HRESULT STDMETHODCALLTYPE IShellItemArray_GetCount_Proxy( 13052 IShellItemArray* This, 13053 DWORD *pdwNumItems); 13054 void __RPC_STUB IShellItemArray_GetCount_Stub( 13055 IRpcStubBuffer* This, 13056 IRpcChannelBuffer* pRpcChannelBuffer, 13057 PRPC_MESSAGE pRpcMessage, 13058 DWORD* pdwStubPhase); 13059 HRESULT STDMETHODCALLTYPE IShellItemArray_GetItemAt_Proxy( 13060 IShellItemArray* This, 13061 DWORD dwIndex, 13062 IShellItem **ppsi); 13063 void __RPC_STUB IShellItemArray_GetItemAt_Stub( 13064 IRpcStubBuffer* This, 13065 IRpcChannelBuffer* pRpcChannelBuffer, 13066 PRPC_MESSAGE pRpcMessage, 13067 DWORD* pdwStubPhase); 13068 HRESULT STDMETHODCALLTYPE IShellItemArray_EnumItems_Proxy( 13069 IShellItemArray* This, 13070 IEnumShellItems **ppenumShellItems); 13071 void __RPC_STUB IShellItemArray_EnumItems_Stub( 13072 IRpcStubBuffer* This, 13073 IRpcChannelBuffer* pRpcChannelBuffer, 13074 PRPC_MESSAGE pRpcMessage, 13075 DWORD* pdwStubPhase); 13076 13077 #endif /* __IShellItemArray_INTERFACE_DEFINED__ */ 13078 13079 13080 #if _WIN32_IE >= _WIN32_IE_IE70 13081 SHSTDAPI SHCreateShellItemArray(PCIDLIST_ABSOLUTE pidlParent, IShellFolder *psf, UINT cidl, PCUITEMID_CHILD_ARRAY ppidl, IShellItemArray **ppsiItemArray); 13082 SHSTDAPI SHCreateShellItemArrayFromDataObject(IDataObject *pdo, REFIID riid, void **ppv); 13083 SHSTDAPI SHCreateShellItemArrayFromIDLists(UINT cidl, PCIDLIST_ABSOLUTE_ARRAY rgpidl, IShellItemArray **ppsiItemArray); 13084 SHSTDAPI SHCreateShellItemArrayFromShellItem(IShellItem *psi, REFIID riid, void **ppv); 13085 #endif 13086 13087 /***************************************************************************** 13088 * IInitializeWithItem interface 13089 */ 13090 #ifndef __IInitializeWithItem_INTERFACE_DEFINED__ 13091 #define __IInitializeWithItem_INTERFACE_DEFINED__ 13092 13093 DEFINE_GUID(IID_IInitializeWithItem, 0x7f73be3f, 0xfb79, 0x493c, 0xa6,0xc7, 0x7e,0xe1,0x4e,0x24,0x58,0x41); 13094 #if defined(__cplusplus) && !defined(CINTERFACE) 13095 MIDL_INTERFACE("7f73be3f-fb79-493c-a6c7-7ee14e245841") 13096 IInitializeWithItem : public IUnknown 13097 { 13098 virtual HRESULT STDMETHODCALLTYPE Initialize( 13099 IShellItem *psi, 13100 DWORD grfMode) = 0; 13101 13102 }; 13103 #ifdef __CRT_UUID_DECL 13104 __CRT_UUID_DECL(IInitializeWithItem, 0x7f73be3f, 0xfb79, 0x493c, 0xa6,0xc7, 0x7e,0xe1,0x4e,0x24,0x58,0x41) 13105 #endif 13106 #else 13107 typedef struct IInitializeWithItemVtbl { 13108 BEGIN_INTERFACE 13109 13110 /*** IUnknown methods ***/ 13111 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 13112 IInitializeWithItem* This, 13113 REFIID riid, 13114 void **ppvObject); 13115 13116 ULONG (STDMETHODCALLTYPE *AddRef)( 13117 IInitializeWithItem* This); 13118 13119 ULONG (STDMETHODCALLTYPE *Release)( 13120 IInitializeWithItem* This); 13121 13122 /*** IInitializeWithItem methods ***/ 13123 HRESULT (STDMETHODCALLTYPE *Initialize)( 13124 IInitializeWithItem* This, 13125 IShellItem *psi, 13126 DWORD grfMode); 13127 13128 END_INTERFACE 13129 } IInitializeWithItemVtbl; 13130 interface IInitializeWithItem { 13131 CONST_VTBL IInitializeWithItemVtbl* lpVtbl; 13132 }; 13133 13134 #ifdef COBJMACROS 13135 #ifndef WIDL_C_INLINE_WRAPPERS 13136 /*** IUnknown methods ***/ 13137 #define IInitializeWithItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13138 #define IInitializeWithItem_AddRef(This) (This)->lpVtbl->AddRef(This) 13139 #define IInitializeWithItem_Release(This) (This)->lpVtbl->Release(This) 13140 /*** IInitializeWithItem methods ***/ 13141 #define IInitializeWithItem_Initialize(This,psi,grfMode) (This)->lpVtbl->Initialize(This,psi,grfMode) 13142 #else 13143 /*** IUnknown methods ***/ 13144 static FORCEINLINE HRESULT IInitializeWithItem_QueryInterface(IInitializeWithItem* This,REFIID riid,void **ppvObject) { 13145 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 13146 } 13147 static FORCEINLINE ULONG IInitializeWithItem_AddRef(IInitializeWithItem* This) { 13148 return This->lpVtbl->AddRef(This); 13149 } 13150 static FORCEINLINE ULONG IInitializeWithItem_Release(IInitializeWithItem* This) { 13151 return This->lpVtbl->Release(This); 13152 } 13153 /*** IInitializeWithItem methods ***/ 13154 static FORCEINLINE HRESULT IInitializeWithItem_Initialize(IInitializeWithItem* This,IShellItem *psi,DWORD grfMode) { 13155 return This->lpVtbl->Initialize(This,psi,grfMode); 13156 } 13157 #endif 13158 #endif 13159 13160 #endif 13161 13162 HRESULT STDMETHODCALLTYPE IInitializeWithItem_Initialize_Proxy( 13163 IInitializeWithItem* This, 13164 IShellItem *psi, 13165 DWORD grfMode); 13166 void __RPC_STUB IInitializeWithItem_Initialize_Stub( 13167 IRpcStubBuffer* This, 13168 IRpcChannelBuffer* pRpcChannelBuffer, 13169 PRPC_MESSAGE pRpcMessage, 13170 DWORD* pdwStubPhase); 13171 13172 #endif /* __IInitializeWithItem_INTERFACE_DEFINED__ */ 13173 13174 13175 /***************************************************************************** 13176 * IObjectWithSelection interface 13177 */ 13178 #ifndef __IObjectWithSelection_INTERFACE_DEFINED__ 13179 #define __IObjectWithSelection_INTERFACE_DEFINED__ 13180 13181 DEFINE_GUID(IID_IObjectWithSelection, 0x1c9cd5bb, 0x98e9, 0x4491, 0xa6,0x0f, 0x31,0xaa,0xcc,0x72,0xb8,0x3c); 13182 #if defined(__cplusplus) && !defined(CINTERFACE) 13183 MIDL_INTERFACE("1c9cd5bb-98e9-4491-a60f-31aacc72b83c") 13184 IObjectWithSelection : public IUnknown 13185 { 13186 virtual HRESULT STDMETHODCALLTYPE SetSelection( 13187 IShellItemArray *psia) = 0; 13188 13189 virtual HRESULT STDMETHODCALLTYPE GetSelection( 13190 REFIID riid, 13191 void **ppv) = 0; 13192 13193 }; 13194 #ifdef __CRT_UUID_DECL 13195 __CRT_UUID_DECL(IObjectWithSelection, 0x1c9cd5bb, 0x98e9, 0x4491, 0xa6,0x0f, 0x31,0xaa,0xcc,0x72,0xb8,0x3c) 13196 #endif 13197 #else 13198 typedef struct IObjectWithSelectionVtbl { 13199 BEGIN_INTERFACE 13200 13201 /*** IUnknown methods ***/ 13202 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 13203 IObjectWithSelection* This, 13204 REFIID riid, 13205 void **ppvObject); 13206 13207 ULONG (STDMETHODCALLTYPE *AddRef)( 13208 IObjectWithSelection* This); 13209 13210 ULONG (STDMETHODCALLTYPE *Release)( 13211 IObjectWithSelection* This); 13212 13213 /*** IObjectWithSelection methods ***/ 13214 HRESULT (STDMETHODCALLTYPE *SetSelection)( 13215 IObjectWithSelection* This, 13216 IShellItemArray *psia); 13217 13218 HRESULT (STDMETHODCALLTYPE *GetSelection)( 13219 IObjectWithSelection* This, 13220 REFIID riid, 13221 void **ppv); 13222 13223 END_INTERFACE 13224 } IObjectWithSelectionVtbl; 13225 interface IObjectWithSelection { 13226 CONST_VTBL IObjectWithSelectionVtbl* lpVtbl; 13227 }; 13228 13229 #ifdef COBJMACROS 13230 #ifndef WIDL_C_INLINE_WRAPPERS 13231 /*** IUnknown methods ***/ 13232 #define IObjectWithSelection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13233 #define IObjectWithSelection_AddRef(This) (This)->lpVtbl->AddRef(This) 13234 #define IObjectWithSelection_Release(This) (This)->lpVtbl->Release(This) 13235 /*** IObjectWithSelection methods ***/ 13236 #define IObjectWithSelection_SetSelection(This,psia) (This)->lpVtbl->SetSelection(This,psia) 13237 #define IObjectWithSelection_GetSelection(This,riid,ppv) (This)->lpVtbl->GetSelection(This,riid,ppv) 13238 #else 13239 /*** IUnknown methods ***/ 13240 static FORCEINLINE HRESULT IObjectWithSelection_QueryInterface(IObjectWithSelection* This,REFIID riid,void **ppvObject) { 13241 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 13242 } 13243 static FORCEINLINE ULONG IObjectWithSelection_AddRef(IObjectWithSelection* This) { 13244 return This->lpVtbl->AddRef(This); 13245 } 13246 static FORCEINLINE ULONG IObjectWithSelection_Release(IObjectWithSelection* This) { 13247 return This->lpVtbl->Release(This); 13248 } 13249 /*** IObjectWithSelection methods ***/ 13250 static FORCEINLINE HRESULT IObjectWithSelection_SetSelection(IObjectWithSelection* This,IShellItemArray *psia) { 13251 return This->lpVtbl->SetSelection(This,psia); 13252 } 13253 static FORCEINLINE HRESULT IObjectWithSelection_GetSelection(IObjectWithSelection* This,REFIID riid,void **ppv) { 13254 return This->lpVtbl->GetSelection(This,riid,ppv); 13255 } 13256 #endif 13257 #endif 13258 13259 #endif 13260 13261 HRESULT STDMETHODCALLTYPE IObjectWithSelection_SetSelection_Proxy( 13262 IObjectWithSelection* This, 13263 IShellItemArray *psia); 13264 void __RPC_STUB IObjectWithSelection_SetSelection_Stub( 13265 IRpcStubBuffer* This, 13266 IRpcChannelBuffer* pRpcChannelBuffer, 13267 PRPC_MESSAGE pRpcMessage, 13268 DWORD* pdwStubPhase); 13269 HRESULT STDMETHODCALLTYPE IObjectWithSelection_GetSelection_Proxy( 13270 IObjectWithSelection* This, 13271 REFIID riid, 13272 void **ppv); 13273 void __RPC_STUB IObjectWithSelection_GetSelection_Stub( 13274 IRpcStubBuffer* This, 13275 IRpcChannelBuffer* pRpcChannelBuffer, 13276 PRPC_MESSAGE pRpcMessage, 13277 DWORD* pdwStubPhase); 13278 13279 #endif /* __IObjectWithSelection_INTERFACE_DEFINED__ */ 13280 13281 13282 /***************************************************************************** 13283 * IObjectWithBackReferences interface 13284 */ 13285 #ifndef __IObjectWithBackReferences_INTERFACE_DEFINED__ 13286 #define __IObjectWithBackReferences_INTERFACE_DEFINED__ 13287 13288 DEFINE_GUID(IID_IObjectWithBackReferences, 0x321a6a6a, 0xd61f, 0x4bf3, 0x97,0xae, 0x14,0xbe,0x29,0x86,0xbb,0x36); 13289 #if defined(__cplusplus) && !defined(CINTERFACE) 13290 MIDL_INTERFACE("321a6a6a-d61f-4bf3-97ae-14be2986bb36") 13291 IObjectWithBackReferences : public IUnknown 13292 { 13293 virtual HRESULT STDMETHODCALLTYPE RemoveBackReferences( 13294 ) = 0; 13295 13296 }; 13297 #ifdef __CRT_UUID_DECL 13298 __CRT_UUID_DECL(IObjectWithBackReferences, 0x321a6a6a, 0xd61f, 0x4bf3, 0x97,0xae, 0x14,0xbe,0x29,0x86,0xbb,0x36) 13299 #endif 13300 #else 13301 typedef struct IObjectWithBackReferencesVtbl { 13302 BEGIN_INTERFACE 13303 13304 /*** IUnknown methods ***/ 13305 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 13306 IObjectWithBackReferences* This, 13307 REFIID riid, 13308 void **ppvObject); 13309 13310 ULONG (STDMETHODCALLTYPE *AddRef)( 13311 IObjectWithBackReferences* This); 13312 13313 ULONG (STDMETHODCALLTYPE *Release)( 13314 IObjectWithBackReferences* This); 13315 13316 /*** IObjectWithBackReferences methods ***/ 13317 HRESULT (STDMETHODCALLTYPE *RemoveBackReferences)( 13318 IObjectWithBackReferences* This); 13319 13320 END_INTERFACE 13321 } IObjectWithBackReferencesVtbl; 13322 interface IObjectWithBackReferences { 13323 CONST_VTBL IObjectWithBackReferencesVtbl* lpVtbl; 13324 }; 13325 13326 #ifdef COBJMACROS 13327 #ifndef WIDL_C_INLINE_WRAPPERS 13328 /*** IUnknown methods ***/ 13329 #define IObjectWithBackReferences_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13330 #define IObjectWithBackReferences_AddRef(This) (This)->lpVtbl->AddRef(This) 13331 #define IObjectWithBackReferences_Release(This) (This)->lpVtbl->Release(This) 13332 /*** IObjectWithBackReferences methods ***/ 13333 #define IObjectWithBackReferences_RemoveBackReferences(This) (This)->lpVtbl->RemoveBackReferences(This) 13334 #else 13335 /*** IUnknown methods ***/ 13336 static FORCEINLINE HRESULT IObjectWithBackReferences_QueryInterface(IObjectWithBackReferences* This,REFIID riid,void **ppvObject) { 13337 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 13338 } 13339 static FORCEINLINE ULONG IObjectWithBackReferences_AddRef(IObjectWithBackReferences* This) { 13340 return This->lpVtbl->AddRef(This); 13341 } 13342 static FORCEINLINE ULONG IObjectWithBackReferences_Release(IObjectWithBackReferences* This) { 13343 return This->lpVtbl->Release(This); 13344 } 13345 /*** IObjectWithBackReferences methods ***/ 13346 static FORCEINLINE HRESULT IObjectWithBackReferences_RemoveBackReferences(IObjectWithBackReferences* This) { 13347 return This->lpVtbl->RemoveBackReferences(This); 13348 } 13349 #endif 13350 #endif 13351 13352 #endif 13353 13354 HRESULT STDMETHODCALLTYPE IObjectWithBackReferences_RemoveBackReferences_Proxy( 13355 IObjectWithBackReferences* This); 13356 void __RPC_STUB IObjectWithBackReferences_RemoveBackReferences_Stub( 13357 IRpcStubBuffer* This, 13358 IRpcChannelBuffer* pRpcChannelBuffer, 13359 PRPC_MESSAGE pRpcMessage, 13360 DWORD* pdwStubPhase); 13361 13362 #endif /* __IObjectWithBackReferences_INTERFACE_DEFINED__ */ 13363 13364 13365 enum _PROPERTYUI_NAME_FLAGS { 13366 PUIFNF_DEFAULT = 0x0, 13367 PUIFNF_MNEMONIC = 0x1 13368 }; 13369 13370 13371 typedef DWORD PROPERTYUI_NAME_FLAGS; 13372 13373 enum _PROPERTYUI_FLAGS { 13374 PUIF_DEFAULT = 0x0, 13375 PUIF_RIGHTALIGN = 0x1, 13376 PUIF_NOLABELININFOTIP = 0x2 13377 }; 13378 13379 13380 typedef DWORD PROPERTYUI_FLAGS; 13381 13382 enum _PROPERTYUI_FORMAT_FLAGS { 13383 PUIFFDF_DEFAULT = 0x0, 13384 PUIFFDF_RIGHTTOLEFT = 0x1, 13385 PUIFFDF_SHORTFORMAT = 0x2, 13386 PUIFFDF_NOTIME = 0x4, 13387 PUIFFDF_FRIENDLYDATE = 0x8 13388 }; 13389 13390 13391 typedef DWORD PROPERTYUI_FORMAT_FLAGS; 13392 13393 /***************************************************************************** 13394 * IPropertyUI interface 13395 */ 13396 #ifndef __IPropertyUI_INTERFACE_DEFINED__ 13397 #define __IPropertyUI_INTERFACE_DEFINED__ 13398 13399 DEFINE_GUID(IID_IPropertyUI, 0x757a7d9f, 0x919a, 0x4118, 0x99,0xd7, 0xdb,0xb2,0x08,0xc8,0xcc,0x66); 13400 #if defined(__cplusplus) && !defined(CINTERFACE) 13401 MIDL_INTERFACE("757a7d9f-919a-4118-99d7-dbb208c8cc66") 13402 IPropertyUI : public IUnknown 13403 { 13404 virtual HRESULT STDMETHODCALLTYPE ParsePropertyName( 13405 LPCWSTR pszName, 13406 FMTID *pfmtid, 13407 PROPID *ppid, 13408 ULONG *pchEaten) = 0; 13409 13410 virtual HRESULT STDMETHODCALLTYPE GetCannonicalName( 13411 REFFMTID fmtid, 13412 PROPID pid, 13413 LPWSTR pwszText, 13414 DWORD cchText) = 0; 13415 13416 virtual HRESULT STDMETHODCALLTYPE GetDisplayName( 13417 REFFMTID fmtid, 13418 PROPID pid, 13419 PROPERTYUI_NAME_FLAGS flags, 13420 LPWSTR pwszText, 13421 DWORD cchText) = 0; 13422 13423 virtual HRESULT STDMETHODCALLTYPE GetPropertyDescription( 13424 REFFMTID fmtid, 13425 PROPID pid, 13426 LPWSTR pwszText, 13427 DWORD cchText) = 0; 13428 13429 virtual HRESULT STDMETHODCALLTYPE GetDefaultWidth( 13430 REFFMTID fmtid, 13431 PROPID pid, 13432 ULONG *pcxChars) = 0; 13433 13434 virtual HRESULT STDMETHODCALLTYPE GetFlags( 13435 REFFMTID fmtid, 13436 PROPID pid, 13437 PROPERTYUI_FLAGS *pflags) = 0; 13438 13439 virtual HRESULT STDMETHODCALLTYPE FormatForDisplay( 13440 REFFMTID fmtid, 13441 PROPID pid, 13442 const PROPVARIANT *ppropvar, 13443 PROPERTYUI_FORMAT_FLAGS puiff, 13444 LPWSTR pwszText, 13445 DWORD cchText) = 0; 13446 13447 virtual HRESULT STDMETHODCALLTYPE GetHelpInfo( 13448 REFFMTID fmtid, 13449 PROPID pid, 13450 LPWSTR pwszHelpFile, 13451 DWORD cch, 13452 UINT *puHelpID) = 0; 13453 13454 }; 13455 #ifdef __CRT_UUID_DECL 13456 __CRT_UUID_DECL(IPropertyUI, 0x757a7d9f, 0x919a, 0x4118, 0x99,0xd7, 0xdb,0xb2,0x08,0xc8,0xcc,0x66) 13457 #endif 13458 #else 13459 typedef struct IPropertyUIVtbl { 13460 BEGIN_INTERFACE 13461 13462 /*** IUnknown methods ***/ 13463 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 13464 IPropertyUI* This, 13465 REFIID riid, 13466 void **ppvObject); 13467 13468 ULONG (STDMETHODCALLTYPE *AddRef)( 13469 IPropertyUI* This); 13470 13471 ULONG (STDMETHODCALLTYPE *Release)( 13472 IPropertyUI* This); 13473 13474 /*** IPropertyUI methods ***/ 13475 HRESULT (STDMETHODCALLTYPE *ParsePropertyName)( 13476 IPropertyUI* This, 13477 LPCWSTR pszName, 13478 FMTID *pfmtid, 13479 PROPID *ppid, 13480 ULONG *pchEaten); 13481 13482 HRESULT (STDMETHODCALLTYPE *GetCannonicalName)( 13483 IPropertyUI* This, 13484 REFFMTID fmtid, 13485 PROPID pid, 13486 LPWSTR pwszText, 13487 DWORD cchText); 13488 13489 HRESULT (STDMETHODCALLTYPE *GetDisplayName)( 13490 IPropertyUI* This, 13491 REFFMTID fmtid, 13492 PROPID pid, 13493 PROPERTYUI_NAME_FLAGS flags, 13494 LPWSTR pwszText, 13495 DWORD cchText); 13496 13497 HRESULT (STDMETHODCALLTYPE *GetPropertyDescription)( 13498 IPropertyUI* This, 13499 REFFMTID fmtid, 13500 PROPID pid, 13501 LPWSTR pwszText, 13502 DWORD cchText); 13503 13504 HRESULT (STDMETHODCALLTYPE *GetDefaultWidth)( 13505 IPropertyUI* This, 13506 REFFMTID fmtid, 13507 PROPID pid, 13508 ULONG *pcxChars); 13509 13510 HRESULT (STDMETHODCALLTYPE *GetFlags)( 13511 IPropertyUI* This, 13512 REFFMTID fmtid, 13513 PROPID pid, 13514 PROPERTYUI_FLAGS *pflags); 13515 13516 HRESULT (STDMETHODCALLTYPE *FormatForDisplay)( 13517 IPropertyUI* This, 13518 REFFMTID fmtid, 13519 PROPID pid, 13520 const PROPVARIANT *ppropvar, 13521 PROPERTYUI_FORMAT_FLAGS puiff, 13522 LPWSTR pwszText, 13523 DWORD cchText); 13524 13525 HRESULT (STDMETHODCALLTYPE *GetHelpInfo)( 13526 IPropertyUI* This, 13527 REFFMTID fmtid, 13528 PROPID pid, 13529 LPWSTR pwszHelpFile, 13530 DWORD cch, 13531 UINT *puHelpID); 13532 13533 END_INTERFACE 13534 } IPropertyUIVtbl; 13535 interface IPropertyUI { 13536 CONST_VTBL IPropertyUIVtbl* lpVtbl; 13537 }; 13538 13539 #ifdef COBJMACROS 13540 #ifndef WIDL_C_INLINE_WRAPPERS 13541 /*** IUnknown methods ***/ 13542 #define IPropertyUI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13543 #define IPropertyUI_AddRef(This) (This)->lpVtbl->AddRef(This) 13544 #define IPropertyUI_Release(This) (This)->lpVtbl->Release(This) 13545 /*** IPropertyUI methods ***/ 13546 #define IPropertyUI_ParsePropertyName(This,pszName,pfmtid,ppid,pchEaten) (This)->lpVtbl->ParsePropertyName(This,pszName,pfmtid,ppid,pchEaten) 13547 #define IPropertyUI_GetCannonicalName(This,fmtid,pid,pwszText,cchText) (This)->lpVtbl->GetCannonicalName(This,fmtid,pid,pwszText,cchText) 13548 #define IPropertyUI_GetDisplayName(This,fmtid,pid,flags,pwszText,cchText) (This)->lpVtbl->GetDisplayName(This,fmtid,pid,flags,pwszText,cchText) 13549 #define IPropertyUI_GetPropertyDescription(This,fmtid,pid,pwszText,cchText) (This)->lpVtbl->GetPropertyDescription(This,fmtid,pid,pwszText,cchText) 13550 #define IPropertyUI_GetDefaultWidth(This,fmtid,pid,pcxChars) (This)->lpVtbl->GetDefaultWidth(This,fmtid,pid,pcxChars) 13551 #define IPropertyUI_GetFlags(This,fmtid,pid,pflags) (This)->lpVtbl->GetFlags(This,fmtid,pid,pflags) 13552 #define IPropertyUI_FormatForDisplay(This,fmtid,pid,ppropvar,puiff,pwszText,cchText) (This)->lpVtbl->FormatForDisplay(This,fmtid,pid,ppropvar,puiff,pwszText,cchText) 13553 #define IPropertyUI_GetHelpInfo(This,fmtid,pid,pwszHelpFile,cch,puHelpID) (This)->lpVtbl->GetHelpInfo(This,fmtid,pid,pwszHelpFile,cch,puHelpID) 13554 #else 13555 /*** IUnknown methods ***/ 13556 static FORCEINLINE HRESULT IPropertyUI_QueryInterface(IPropertyUI* This,REFIID riid,void **ppvObject) { 13557 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 13558 } 13559 static FORCEINLINE ULONG IPropertyUI_AddRef(IPropertyUI* This) { 13560 return This->lpVtbl->AddRef(This); 13561 } 13562 static FORCEINLINE ULONG IPropertyUI_Release(IPropertyUI* This) { 13563 return This->lpVtbl->Release(This); 13564 } 13565 /*** IPropertyUI methods ***/ 13566 static FORCEINLINE HRESULT IPropertyUI_ParsePropertyName(IPropertyUI* This,LPCWSTR pszName,FMTID *pfmtid,PROPID *ppid,ULONG *pchEaten) { 13567 return This->lpVtbl->ParsePropertyName(This,pszName,pfmtid,ppid,pchEaten); 13568 } 13569 static FORCEINLINE HRESULT IPropertyUI_GetCannonicalName(IPropertyUI* This,REFFMTID fmtid,PROPID pid,LPWSTR pwszText,DWORD cchText) { 13570 return This->lpVtbl->GetCannonicalName(This,fmtid,pid,pwszText,cchText); 13571 } 13572 static FORCEINLINE HRESULT IPropertyUI_GetDisplayName(IPropertyUI* This,REFFMTID fmtid,PROPID pid,PROPERTYUI_NAME_FLAGS flags,LPWSTR pwszText,DWORD cchText) { 13573 return This->lpVtbl->GetDisplayName(This,fmtid,pid,flags,pwszText,cchText); 13574 } 13575 static FORCEINLINE HRESULT IPropertyUI_GetPropertyDescription(IPropertyUI* This,REFFMTID fmtid,PROPID pid,LPWSTR pwszText,DWORD cchText) { 13576 return This->lpVtbl->GetPropertyDescription(This,fmtid,pid,pwszText,cchText); 13577 } 13578 static FORCEINLINE HRESULT IPropertyUI_GetDefaultWidth(IPropertyUI* This,REFFMTID fmtid,PROPID pid,ULONG *pcxChars) { 13579 return This->lpVtbl->GetDefaultWidth(This,fmtid,pid,pcxChars); 13580 } 13581 static FORCEINLINE HRESULT IPropertyUI_GetFlags(IPropertyUI* This,REFFMTID fmtid,PROPID pid,PROPERTYUI_FLAGS *pflags) { 13582 return This->lpVtbl->GetFlags(This,fmtid,pid,pflags); 13583 } 13584 static FORCEINLINE HRESULT IPropertyUI_FormatForDisplay(IPropertyUI* This,REFFMTID fmtid,PROPID pid,const PROPVARIANT *ppropvar,PROPERTYUI_FORMAT_FLAGS puiff,LPWSTR pwszText,DWORD cchText) { 13585 return This->lpVtbl->FormatForDisplay(This,fmtid,pid,ppropvar,puiff,pwszText,cchText); 13586 } 13587 static FORCEINLINE HRESULT IPropertyUI_GetHelpInfo(IPropertyUI* This,REFFMTID fmtid,PROPID pid,LPWSTR pwszHelpFile,DWORD cch,UINT *puHelpID) { 13588 return This->lpVtbl->GetHelpInfo(This,fmtid,pid,pwszHelpFile,cch,puHelpID); 13589 } 13590 #endif 13591 #endif 13592 13593 #endif 13594 13595 HRESULT STDMETHODCALLTYPE IPropertyUI_ParsePropertyName_Proxy( 13596 IPropertyUI* This, 13597 LPCWSTR pszName, 13598 FMTID *pfmtid, 13599 PROPID *ppid, 13600 ULONG *pchEaten); 13601 void __RPC_STUB IPropertyUI_ParsePropertyName_Stub( 13602 IRpcStubBuffer* This, 13603 IRpcChannelBuffer* pRpcChannelBuffer, 13604 PRPC_MESSAGE pRpcMessage, 13605 DWORD* pdwStubPhase); 13606 HRESULT STDMETHODCALLTYPE IPropertyUI_GetCannonicalName_Proxy( 13607 IPropertyUI* This, 13608 REFFMTID fmtid, 13609 PROPID pid, 13610 LPWSTR pwszText, 13611 DWORD cchText); 13612 void __RPC_STUB IPropertyUI_GetCannonicalName_Stub( 13613 IRpcStubBuffer* This, 13614 IRpcChannelBuffer* pRpcChannelBuffer, 13615 PRPC_MESSAGE pRpcMessage, 13616 DWORD* pdwStubPhase); 13617 HRESULT STDMETHODCALLTYPE IPropertyUI_GetDisplayName_Proxy( 13618 IPropertyUI* This, 13619 REFFMTID fmtid, 13620 PROPID pid, 13621 PROPERTYUI_NAME_FLAGS flags, 13622 LPWSTR pwszText, 13623 DWORD cchText); 13624 void __RPC_STUB IPropertyUI_GetDisplayName_Stub( 13625 IRpcStubBuffer* This, 13626 IRpcChannelBuffer* pRpcChannelBuffer, 13627 PRPC_MESSAGE pRpcMessage, 13628 DWORD* pdwStubPhase); 13629 HRESULT STDMETHODCALLTYPE IPropertyUI_GetPropertyDescription_Proxy( 13630 IPropertyUI* This, 13631 REFFMTID fmtid, 13632 PROPID pid, 13633 LPWSTR pwszText, 13634 DWORD cchText); 13635 void __RPC_STUB IPropertyUI_GetPropertyDescription_Stub( 13636 IRpcStubBuffer* This, 13637 IRpcChannelBuffer* pRpcChannelBuffer, 13638 PRPC_MESSAGE pRpcMessage, 13639 DWORD* pdwStubPhase); 13640 HRESULT STDMETHODCALLTYPE IPropertyUI_GetDefaultWidth_Proxy( 13641 IPropertyUI* This, 13642 REFFMTID fmtid, 13643 PROPID pid, 13644 ULONG *pcxChars); 13645 void __RPC_STUB IPropertyUI_GetDefaultWidth_Stub( 13646 IRpcStubBuffer* This, 13647 IRpcChannelBuffer* pRpcChannelBuffer, 13648 PRPC_MESSAGE pRpcMessage, 13649 DWORD* pdwStubPhase); 13650 HRESULT STDMETHODCALLTYPE IPropertyUI_GetFlags_Proxy( 13651 IPropertyUI* This, 13652 REFFMTID fmtid, 13653 PROPID pid, 13654 PROPERTYUI_FLAGS *pflags); 13655 void __RPC_STUB IPropertyUI_GetFlags_Stub( 13656 IRpcStubBuffer* This, 13657 IRpcChannelBuffer* pRpcChannelBuffer, 13658 PRPC_MESSAGE pRpcMessage, 13659 DWORD* pdwStubPhase); 13660 HRESULT STDMETHODCALLTYPE IPropertyUI_FormatForDisplay_Proxy( 13661 IPropertyUI* This, 13662 REFFMTID fmtid, 13663 PROPID pid, 13664 const PROPVARIANT *ppropvar, 13665 PROPERTYUI_FORMAT_FLAGS puiff, 13666 LPWSTR pwszText, 13667 DWORD cchText); 13668 void __RPC_STUB IPropertyUI_FormatForDisplay_Stub( 13669 IRpcStubBuffer* This, 13670 IRpcChannelBuffer* pRpcChannelBuffer, 13671 PRPC_MESSAGE pRpcMessage, 13672 DWORD* pdwStubPhase); 13673 HRESULT STDMETHODCALLTYPE IPropertyUI_GetHelpInfo_Proxy( 13674 IPropertyUI* This, 13675 REFFMTID fmtid, 13676 PROPID pid, 13677 LPWSTR pwszHelpFile, 13678 DWORD cch, 13679 UINT *puHelpID); 13680 void __RPC_STUB IPropertyUI_GetHelpInfo_Stub( 13681 IRpcStubBuffer* This, 13682 IRpcChannelBuffer* pRpcChannelBuffer, 13683 PRPC_MESSAGE pRpcMessage, 13684 DWORD* pdwStubPhase); 13685 13686 #endif /* __IPropertyUI_INTERFACE_DEFINED__ */ 13687 13688 13689 #if _WIN32_IE >= _WIN32_IE_IE70 13690 SHSTDAPI SHRemovePersonalPropertyValues(IShellItemArray *psia); 13691 SHSTDAPI SHAddDefaultPropertiesByExt(PCWSTR pszExt, IPropertyStore *pPropStore); 13692 SHSTDAPI SHCreateDefaultPropertiesOp(IShellItem *psi, IFileOperation **ppFileOp); 13693 SHSTDAPI SHSetDefaultProperties(HWND hwnd, IShellItem *psi, DWORD dwFileOpFlags, IFileOperationProgressSink *pfops); 13694 #endif 13695 13696 /***************************************************************************** 13697 * ICategoryProvider interface 13698 */ 13699 #ifndef __ICategoryProvider_INTERFACE_DEFINED__ 13700 #define __ICategoryProvider_INTERFACE_DEFINED__ 13701 13702 DEFINE_GUID(IID_ICategoryProvider, 0x9af64809, 0x5864, 0x4c26, 0xa7,0x20, 0xc1,0xf7,0x8c,0x08,0x6e,0xe3); 13703 #if defined(__cplusplus) && !defined(CINTERFACE) 13704 MIDL_INTERFACE("9af64809-5864-4c26-a720-c1f78c086ee3") 13705 ICategoryProvider : public IUnknown 13706 { 13707 virtual HRESULT STDMETHODCALLTYPE CanCategorizeOnSCID( 13708 const SHCOLUMNID *pscid) = 0; 13709 13710 virtual HRESULT STDMETHODCALLTYPE GetDefaultCategory( 13711 GUID *pguid, 13712 SHCOLUMNID *pscid) = 0; 13713 13714 virtual HRESULT STDMETHODCALLTYPE GetCategoryForSCID( 13715 const SHCOLUMNID *pscid, 13716 GUID *pguid) = 0; 13717 13718 virtual HRESULT STDMETHODCALLTYPE EnumCategories( 13719 IEnumGUID **penum) = 0; 13720 13721 virtual HRESULT STDMETHODCALLTYPE GetCategoryName( 13722 const GUID *pguid, 13723 LPWSTR pszName, 13724 UINT cch) = 0; 13725 13726 virtual HRESULT STDMETHODCALLTYPE CreateCategory( 13727 const GUID *pguid, 13728 REFIID riid, 13729 void **ppv) = 0; 13730 13731 }; 13732 #ifdef __CRT_UUID_DECL 13733 __CRT_UUID_DECL(ICategoryProvider, 0x9af64809, 0x5864, 0x4c26, 0xa7,0x20, 0xc1,0xf7,0x8c,0x08,0x6e,0xe3) 13734 #endif 13735 #else 13736 typedef struct ICategoryProviderVtbl { 13737 BEGIN_INTERFACE 13738 13739 /*** IUnknown methods ***/ 13740 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 13741 ICategoryProvider* This, 13742 REFIID riid, 13743 void **ppvObject); 13744 13745 ULONG (STDMETHODCALLTYPE *AddRef)( 13746 ICategoryProvider* This); 13747 13748 ULONG (STDMETHODCALLTYPE *Release)( 13749 ICategoryProvider* This); 13750 13751 /*** ICategoryProvider methods ***/ 13752 HRESULT (STDMETHODCALLTYPE *CanCategorizeOnSCID)( 13753 ICategoryProvider* This, 13754 const SHCOLUMNID *pscid); 13755 13756 HRESULT (STDMETHODCALLTYPE *GetDefaultCategory)( 13757 ICategoryProvider* This, 13758 GUID *pguid, 13759 SHCOLUMNID *pscid); 13760 13761 HRESULT (STDMETHODCALLTYPE *GetCategoryForSCID)( 13762 ICategoryProvider* This, 13763 const SHCOLUMNID *pscid, 13764 GUID *pguid); 13765 13766 HRESULT (STDMETHODCALLTYPE *EnumCategories)( 13767 ICategoryProvider* This, 13768 IEnumGUID **penum); 13769 13770 HRESULT (STDMETHODCALLTYPE *GetCategoryName)( 13771 ICategoryProvider* This, 13772 const GUID *pguid, 13773 LPWSTR pszName, 13774 UINT cch); 13775 13776 HRESULT (STDMETHODCALLTYPE *CreateCategory)( 13777 ICategoryProvider* This, 13778 const GUID *pguid, 13779 REFIID riid, 13780 void **ppv); 13781 13782 END_INTERFACE 13783 } ICategoryProviderVtbl; 13784 interface ICategoryProvider { 13785 CONST_VTBL ICategoryProviderVtbl* lpVtbl; 13786 }; 13787 13788 #ifdef COBJMACROS 13789 #ifndef WIDL_C_INLINE_WRAPPERS 13790 /*** IUnknown methods ***/ 13791 #define ICategoryProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 13792 #define ICategoryProvider_AddRef(This) (This)->lpVtbl->AddRef(This) 13793 #define ICategoryProvider_Release(This) (This)->lpVtbl->Release(This) 13794 /*** ICategoryProvider methods ***/ 13795 #define ICategoryProvider_CanCategorizeOnSCID(This,pscid) (This)->lpVtbl->CanCategorizeOnSCID(This,pscid) 13796 #define ICategoryProvider_GetDefaultCategory(This,pguid,pscid) (This)->lpVtbl->GetDefaultCategory(This,pguid,pscid) 13797 #define ICategoryProvider_GetCategoryForSCID(This,pscid,pguid) (This)->lpVtbl->GetCategoryForSCID(This,pscid,pguid) 13798 #define ICategoryProvider_EnumCategories(This,penum) (This)->lpVtbl->EnumCategories(This,penum) 13799 #define ICategoryProvider_GetCategoryName(This,pguid,pszName,cch) (This)->lpVtbl->GetCategoryName(This,pguid,pszName,cch) 13800 #define ICategoryProvider_CreateCategory(This,pguid,riid,ppv) (This)->lpVtbl->CreateCategory(This,pguid,riid,ppv) 13801 #else 13802 /*** IUnknown methods ***/ 13803 static FORCEINLINE HRESULT ICategoryProvider_QueryInterface(ICategoryProvider* This,REFIID riid,void **ppvObject) { 13804 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 13805 } 13806 static FORCEINLINE ULONG ICategoryProvider_AddRef(ICategoryProvider* This) { 13807 return This->lpVtbl->AddRef(This); 13808 } 13809 static FORCEINLINE ULONG ICategoryProvider_Release(ICategoryProvider* This) { 13810 return This->lpVtbl->Release(This); 13811 } 13812 /*** ICategoryProvider methods ***/ 13813 static FORCEINLINE HRESULT ICategoryProvider_CanCategorizeOnSCID(ICategoryProvider* This,const SHCOLUMNID *pscid) { 13814 return This->lpVtbl->CanCategorizeOnSCID(This,pscid); 13815 } 13816 static FORCEINLINE HRESULT ICategoryProvider_GetDefaultCategory(ICategoryProvider* This,GUID *pguid,SHCOLUMNID *pscid) { 13817 return This->lpVtbl->GetDefaultCategory(This,pguid,pscid); 13818 } 13819 static FORCEINLINE HRESULT ICategoryProvider_GetCategoryForSCID(ICategoryProvider* This,const SHCOLUMNID *pscid,GUID *pguid) { 13820 return This->lpVtbl->GetCategoryForSCID(This,pscid,pguid); 13821 } 13822 static FORCEINLINE HRESULT ICategoryProvider_EnumCategories(ICategoryProvider* This,IEnumGUID **penum) { 13823 return This->lpVtbl->EnumCategories(This,penum); 13824 } 13825 static FORCEINLINE HRESULT ICategoryProvider_GetCategoryName(ICategoryProvider* This,const GUID *pguid,LPWSTR pszName,UINT cch) { 13826 return This->lpVtbl->GetCategoryName(This,pguid,pszName,cch); 13827 } 13828 static FORCEINLINE HRESULT ICategoryProvider_CreateCategory(ICategoryProvider* This,const GUID *pguid,REFIID riid,void **ppv) { 13829 return This->lpVtbl->CreateCategory(This,pguid,riid,ppv); 13830 } 13831 #endif 13832 #endif 13833 13834 #endif 13835 13836 HRESULT STDMETHODCALLTYPE ICategoryProvider_CanCategorizeOnSCID_Proxy( 13837 ICategoryProvider* This, 13838 const SHCOLUMNID *pscid); 13839 void __RPC_STUB ICategoryProvider_CanCategorizeOnSCID_Stub( 13840 IRpcStubBuffer* This, 13841 IRpcChannelBuffer* pRpcChannelBuffer, 13842 PRPC_MESSAGE pRpcMessage, 13843 DWORD* pdwStubPhase); 13844 HRESULT STDMETHODCALLTYPE ICategoryProvider_GetDefaultCategory_Proxy( 13845 ICategoryProvider* This, 13846 GUID *pguid, 13847 SHCOLUMNID *pscid); 13848 void __RPC_STUB ICategoryProvider_GetDefaultCategory_Stub( 13849 IRpcStubBuffer* This, 13850 IRpcChannelBuffer* pRpcChannelBuffer, 13851 PRPC_MESSAGE pRpcMessage, 13852 DWORD* pdwStubPhase); 13853 HRESULT STDMETHODCALLTYPE ICategoryProvider_GetCategoryForSCID_Proxy( 13854 ICategoryProvider* This, 13855 const SHCOLUMNID *pscid, 13856 GUID *pguid); 13857 void __RPC_STUB ICategoryProvider_GetCategoryForSCID_Stub( 13858 IRpcStubBuffer* This, 13859 IRpcChannelBuffer* pRpcChannelBuffer, 13860 PRPC_MESSAGE pRpcMessage, 13861 DWORD* pdwStubPhase); 13862 HRESULT STDMETHODCALLTYPE ICategoryProvider_EnumCategories_Proxy( 13863 ICategoryProvider* This, 13864 IEnumGUID **penum); 13865 void __RPC_STUB ICategoryProvider_EnumCategories_Stub( 13866 IRpcStubBuffer* This, 13867 IRpcChannelBuffer* pRpcChannelBuffer, 13868 PRPC_MESSAGE pRpcMessage, 13869 DWORD* pdwStubPhase); 13870 HRESULT STDMETHODCALLTYPE ICategoryProvider_GetCategoryName_Proxy( 13871 ICategoryProvider* This, 13872 const GUID *pguid, 13873 LPWSTR pszName, 13874 UINT cch); 13875 void __RPC_STUB ICategoryProvider_GetCategoryName_Stub( 13876 IRpcStubBuffer* This, 13877 IRpcChannelBuffer* pRpcChannelBuffer, 13878 PRPC_MESSAGE pRpcMessage, 13879 DWORD* pdwStubPhase); 13880 HRESULT STDMETHODCALLTYPE ICategoryProvider_CreateCategory_Proxy( 13881 ICategoryProvider* This, 13882 const GUID *pguid, 13883 REFIID riid, 13884 void **ppv); 13885 void __RPC_STUB ICategoryProvider_CreateCategory_Stub( 13886 IRpcStubBuffer* This, 13887 IRpcChannelBuffer* pRpcChannelBuffer, 13888 PRPC_MESSAGE pRpcMessage, 13889 DWORD* pdwStubPhase); 13890 13891 #endif /* __ICategoryProvider_INTERFACE_DEFINED__ */ 13892 13893 13894 typedef enum CATEGORYINFO_FLAGS { 13895 CATINFO_NORMAL = 0x0, 13896 CATINFO_COLLAPSED = 0x1, 13897 CATINFO_HIDDEN = 0x2, 13898 CATINFO_EXPANDED = 0x4, 13899 CATINFO_NOHEADER = 0x8, 13900 CATINFO_NOTCOLLAPSIBLE = 0x10, 13901 CATINFO_NOHEADERCOUNT = 0x20, 13902 CATINFO_SUBSETTED = 0x40 13903 } CATEGORYINFO_FLAGS; 13904 13905 DEFINE_ENUM_FLAG_OPERATORS(CATEGORYINFO_FLAGS) 13906 13907 typedef enum CATSORT_FLAGS { 13908 CATSORT_DEFAULT = 0x0, 13909 CATSORT_NAME = 0x1 13910 } CATSORT_FLAGS; 13911 13912 DEFINE_ENUM_FLAG_OPERATORS(CATSORT_FLAGS) 13913 13914 typedef struct CATEGORY_INFO { 13915 CATEGORYINFO_FLAGS cif; 13916 WCHAR wszName[260]; 13917 } CATEGORY_INFO; 13918 13919 /***************************************************************************** 13920 * ICategorizer interface 13921 */ 13922 #ifndef __ICategorizer_INTERFACE_DEFINED__ 13923 #define __ICategorizer_INTERFACE_DEFINED__ 13924 13925 DEFINE_GUID(IID_ICategorizer, 0xa3b14589, 0x9174, 0x49a8, 0x89,0xa3, 0x06,0xa1,0xae,0x2b,0x9b,0xa7); 13926 #if defined(__cplusplus) && !defined(CINTERFACE) 13927 MIDL_INTERFACE("a3b14589-9174-49a8-89a3-06a1ae2b9ba7") 13928 ICategorizer : public IUnknown 13929 { 13930 virtual HRESULT STDMETHODCALLTYPE GetDescription( 13931 LPWSTR pszDesc, 13932 UINT cch) = 0; 13933 13934 virtual HRESULT STDMETHODCALLTYPE GetCategory( 13935 UINT cidl, 13936 PCUITEMID_CHILD_ARRAY apidl, 13937 DWORD *rgCategoryIds) = 0; 13938 13939 virtual HRESULT STDMETHODCALLTYPE GetCategoryInfo( 13940 DWORD dwCategoryId, 13941 CATEGORY_INFO *pci) = 0; 13942 13943 virtual HRESULT STDMETHODCALLTYPE CompareCategory( 13944 CATSORT_FLAGS csfFlags, 13945 DWORD dwCategoryId1, 13946 DWORD dwCategoryId2) = 0; 13947 13948 }; 13949 #ifdef __CRT_UUID_DECL 13950 __CRT_UUID_DECL(ICategorizer, 0xa3b14589, 0x9174, 0x49a8, 0x89,0xa3, 0x06,0xa1,0xae,0x2b,0x9b,0xa7) 13951 #endif 13952 #else 13953 typedef struct ICategorizerVtbl { 13954 BEGIN_INTERFACE 13955 13956 /*** IUnknown methods ***/ 13957 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 13958 ICategorizer* This, 13959 REFIID riid, 13960 void **ppvObject); 13961 13962 ULONG (STDMETHODCALLTYPE *AddRef)( 13963 ICategorizer* This); 13964 13965 ULONG (STDMETHODCALLTYPE *Release)( 13966 ICategorizer* This); 13967 13968 /*** ICategorizer methods ***/ 13969 HRESULT (STDMETHODCALLTYPE *GetDescription)( 13970 ICategorizer* This, 13971 LPWSTR pszDesc, 13972 UINT cch); 13973 13974 HRESULT (STDMETHODCALLTYPE *GetCategory)( 13975 ICategorizer* This, 13976 UINT cidl, 13977 PCUITEMID_CHILD_ARRAY apidl, 13978 DWORD *rgCategoryIds); 13979 13980 HRESULT (STDMETHODCALLTYPE *GetCategoryInfo)( 13981 ICategorizer* This, 13982 DWORD dwCategoryId, 13983 CATEGORY_INFO *pci); 13984 13985 HRESULT (STDMETHODCALLTYPE *CompareCategory)( 13986 ICategorizer* This, 13987 CATSORT_FLAGS csfFlags, 13988 DWORD dwCategoryId1, 13989 DWORD dwCategoryId2); 13990 13991 END_INTERFACE 13992 } ICategorizerVtbl; 13993 interface ICategorizer { 13994 CONST_VTBL ICategorizerVtbl* lpVtbl; 13995 }; 13996 13997 #ifdef COBJMACROS 13998 #ifndef WIDL_C_INLINE_WRAPPERS 13999 /*** IUnknown methods ***/ 14000 #define ICategorizer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 14001 #define ICategorizer_AddRef(This) (This)->lpVtbl->AddRef(This) 14002 #define ICategorizer_Release(This) (This)->lpVtbl->Release(This) 14003 /*** ICategorizer methods ***/ 14004 #define ICategorizer_GetDescription(This,pszDesc,cch) (This)->lpVtbl->GetDescription(This,pszDesc,cch) 14005 #define ICategorizer_GetCategory(This,cidl,apidl,rgCategoryIds) (This)->lpVtbl->GetCategory(This,cidl,apidl,rgCategoryIds) 14006 #define ICategorizer_GetCategoryInfo(This,dwCategoryId,pci) (This)->lpVtbl->GetCategoryInfo(This,dwCategoryId,pci) 14007 #define ICategorizer_CompareCategory(This,csfFlags,dwCategoryId1,dwCategoryId2) (This)->lpVtbl->CompareCategory(This,csfFlags,dwCategoryId1,dwCategoryId2) 14008 #else 14009 /*** IUnknown methods ***/ 14010 static FORCEINLINE HRESULT ICategorizer_QueryInterface(ICategorizer* This,REFIID riid,void **ppvObject) { 14011 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 14012 } 14013 static FORCEINLINE ULONG ICategorizer_AddRef(ICategorizer* This) { 14014 return This->lpVtbl->AddRef(This); 14015 } 14016 static FORCEINLINE ULONG ICategorizer_Release(ICategorizer* This) { 14017 return This->lpVtbl->Release(This); 14018 } 14019 /*** ICategorizer methods ***/ 14020 static FORCEINLINE HRESULT ICategorizer_GetDescription(ICategorizer* This,LPWSTR pszDesc,UINT cch) { 14021 return This->lpVtbl->GetDescription(This,pszDesc,cch); 14022 } 14023 static FORCEINLINE HRESULT ICategorizer_GetCategory(ICategorizer* This,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,DWORD *rgCategoryIds) { 14024 return This->lpVtbl->GetCategory(This,cidl,apidl,rgCategoryIds); 14025 } 14026 static FORCEINLINE HRESULT ICategorizer_GetCategoryInfo(ICategorizer* This,DWORD dwCategoryId,CATEGORY_INFO *pci) { 14027 return This->lpVtbl->GetCategoryInfo(This,dwCategoryId,pci); 14028 } 14029 static FORCEINLINE HRESULT ICategorizer_CompareCategory(ICategorizer* This,CATSORT_FLAGS csfFlags,DWORD dwCategoryId1,DWORD dwCategoryId2) { 14030 return This->lpVtbl->CompareCategory(This,csfFlags,dwCategoryId1,dwCategoryId2); 14031 } 14032 #endif 14033 #endif 14034 14035 #endif 14036 14037 HRESULT STDMETHODCALLTYPE ICategorizer_GetDescription_Proxy( 14038 ICategorizer* This, 14039 LPWSTR pszDesc, 14040 UINT cch); 14041 void __RPC_STUB ICategorizer_GetDescription_Stub( 14042 IRpcStubBuffer* This, 14043 IRpcChannelBuffer* pRpcChannelBuffer, 14044 PRPC_MESSAGE pRpcMessage, 14045 DWORD* pdwStubPhase); 14046 HRESULT STDMETHODCALLTYPE ICategorizer_GetCategory_Proxy( 14047 ICategorizer* This, 14048 UINT cidl, 14049 PCUITEMID_CHILD_ARRAY apidl, 14050 DWORD *rgCategoryIds); 14051 void __RPC_STUB ICategorizer_GetCategory_Stub( 14052 IRpcStubBuffer* This, 14053 IRpcChannelBuffer* pRpcChannelBuffer, 14054 PRPC_MESSAGE pRpcMessage, 14055 DWORD* pdwStubPhase); 14056 HRESULT STDMETHODCALLTYPE ICategorizer_GetCategoryInfo_Proxy( 14057 ICategorizer* This, 14058 DWORD dwCategoryId, 14059 CATEGORY_INFO *pci); 14060 void __RPC_STUB ICategorizer_GetCategoryInfo_Stub( 14061 IRpcStubBuffer* This, 14062 IRpcChannelBuffer* pRpcChannelBuffer, 14063 PRPC_MESSAGE pRpcMessage, 14064 DWORD* pdwStubPhase); 14065 HRESULT STDMETHODCALLTYPE ICategorizer_CompareCategory_Proxy( 14066 ICategorizer* This, 14067 CATSORT_FLAGS csfFlags, 14068 DWORD dwCategoryId1, 14069 DWORD dwCategoryId2); 14070 void __RPC_STUB ICategorizer_CompareCategory_Stub( 14071 IRpcStubBuffer* This, 14072 IRpcChannelBuffer* pRpcChannelBuffer, 14073 PRPC_MESSAGE pRpcMessage, 14074 DWORD* pdwStubPhase); 14075 14076 #endif /* __ICategorizer_INTERFACE_DEFINED__ */ 14077 14078 14079 #include <pshpack8.h> 14080 typedef struct SHDRAGIMAGE { 14081 SIZE sizeDragImage; 14082 POINT ptOffset; 14083 HBITMAP hbmpDragImage; 14084 COLORREF crColorKey; 14085 } SHDRAGIMAGE; 14086 typedef struct SHDRAGIMAGE *LPSHDRAGIMAGE; 14087 #include <poppack.h> 14088 14089 #define DI_GETDRAGIMAGE TEXT("ShellGetDragImage") 14090 14091 /***************************************************************************** 14092 * IDropTargetHelper interface 14093 */ 14094 #ifndef __IDropTargetHelper_INTERFACE_DEFINED__ 14095 #define __IDropTargetHelper_INTERFACE_DEFINED__ 14096 14097 DEFINE_GUID(IID_IDropTargetHelper, 0x4657278b, 0x411b, 0x11d2, 0x83,0x9a, 0x00,0xc0,0x4f,0xd9,0x18,0xd0); 14098 #if defined(__cplusplus) && !defined(CINTERFACE) 14099 MIDL_INTERFACE("4657278b-411b-11d2-839a-00c04fd918d0") 14100 IDropTargetHelper : public IUnknown 14101 { 14102 virtual HRESULT STDMETHODCALLTYPE DragEnter( 14103 HWND hwndTarget, 14104 IDataObject *pDataObject, 14105 POINT *ppt, 14106 DWORD dwEffect) = 0; 14107 14108 virtual HRESULT STDMETHODCALLTYPE DragLeave( 14109 ) = 0; 14110 14111 virtual HRESULT STDMETHODCALLTYPE DragOver( 14112 POINT *ppt, 14113 DWORD dwEffect) = 0; 14114 14115 virtual HRESULT STDMETHODCALLTYPE Drop( 14116 IDataObject *pDataObject, 14117 POINT *ppt, 14118 DWORD dwEffect) = 0; 14119 14120 virtual HRESULT STDMETHODCALLTYPE Show( 14121 WINBOOL fShow) = 0; 14122 14123 }; 14124 #ifdef __CRT_UUID_DECL 14125 __CRT_UUID_DECL(IDropTargetHelper, 0x4657278b, 0x411b, 0x11d2, 0x83,0x9a, 0x00,0xc0,0x4f,0xd9,0x18,0xd0) 14126 #endif 14127 #else 14128 typedef struct IDropTargetHelperVtbl { 14129 BEGIN_INTERFACE 14130 14131 /*** IUnknown methods ***/ 14132 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 14133 IDropTargetHelper* This, 14134 REFIID riid, 14135 void **ppvObject); 14136 14137 ULONG (STDMETHODCALLTYPE *AddRef)( 14138 IDropTargetHelper* This); 14139 14140 ULONG (STDMETHODCALLTYPE *Release)( 14141 IDropTargetHelper* This); 14142 14143 /*** IDropTargetHelper methods ***/ 14144 HRESULT (STDMETHODCALLTYPE *DragEnter)( 14145 IDropTargetHelper* This, 14146 HWND hwndTarget, 14147 IDataObject *pDataObject, 14148 POINT *ppt, 14149 DWORD dwEffect); 14150 14151 HRESULT (STDMETHODCALLTYPE *DragLeave)( 14152 IDropTargetHelper* This); 14153 14154 HRESULT (STDMETHODCALLTYPE *DragOver)( 14155 IDropTargetHelper* This, 14156 POINT *ppt, 14157 DWORD dwEffect); 14158 14159 HRESULT (STDMETHODCALLTYPE *Drop)( 14160 IDropTargetHelper* This, 14161 IDataObject *pDataObject, 14162 POINT *ppt, 14163 DWORD dwEffect); 14164 14165 HRESULT (STDMETHODCALLTYPE *Show)( 14166 IDropTargetHelper* This, 14167 WINBOOL fShow); 14168 14169 END_INTERFACE 14170 } IDropTargetHelperVtbl; 14171 interface IDropTargetHelper { 14172 CONST_VTBL IDropTargetHelperVtbl* lpVtbl; 14173 }; 14174 14175 #ifdef COBJMACROS 14176 #ifndef WIDL_C_INLINE_WRAPPERS 14177 /*** IUnknown methods ***/ 14178 #define IDropTargetHelper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 14179 #define IDropTargetHelper_AddRef(This) (This)->lpVtbl->AddRef(This) 14180 #define IDropTargetHelper_Release(This) (This)->lpVtbl->Release(This) 14181 /*** IDropTargetHelper methods ***/ 14182 #define IDropTargetHelper_DragEnter(This,hwndTarget,pDataObject,ppt,dwEffect) (This)->lpVtbl->DragEnter(This,hwndTarget,pDataObject,ppt,dwEffect) 14183 #define IDropTargetHelper_DragLeave(This) (This)->lpVtbl->DragLeave(This) 14184 #define IDropTargetHelper_DragOver(This,ppt,dwEffect) (This)->lpVtbl->DragOver(This,ppt,dwEffect) 14185 #define IDropTargetHelper_Drop(This,pDataObject,ppt,dwEffect) (This)->lpVtbl->Drop(This,pDataObject,ppt,dwEffect) 14186 #define IDropTargetHelper_Show(This,fShow) (This)->lpVtbl->Show(This,fShow) 14187 #else 14188 /*** IUnknown methods ***/ 14189 static FORCEINLINE HRESULT IDropTargetHelper_QueryInterface(IDropTargetHelper* This,REFIID riid,void **ppvObject) { 14190 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 14191 } 14192 static FORCEINLINE ULONG IDropTargetHelper_AddRef(IDropTargetHelper* This) { 14193 return This->lpVtbl->AddRef(This); 14194 } 14195 static FORCEINLINE ULONG IDropTargetHelper_Release(IDropTargetHelper* This) { 14196 return This->lpVtbl->Release(This); 14197 } 14198 /*** IDropTargetHelper methods ***/ 14199 static FORCEINLINE HRESULT IDropTargetHelper_DragEnter(IDropTargetHelper* This,HWND hwndTarget,IDataObject *pDataObject,POINT *ppt,DWORD dwEffect) { 14200 return This->lpVtbl->DragEnter(This,hwndTarget,pDataObject,ppt,dwEffect); 14201 } 14202 static FORCEINLINE HRESULT IDropTargetHelper_DragLeave(IDropTargetHelper* This) { 14203 return This->lpVtbl->DragLeave(This); 14204 } 14205 static FORCEINLINE HRESULT IDropTargetHelper_DragOver(IDropTargetHelper* This,POINT *ppt,DWORD dwEffect) { 14206 return This->lpVtbl->DragOver(This,ppt,dwEffect); 14207 } 14208 static FORCEINLINE HRESULT IDropTargetHelper_Drop(IDropTargetHelper* This,IDataObject *pDataObject,POINT *ppt,DWORD dwEffect) { 14209 return This->lpVtbl->Drop(This,pDataObject,ppt,dwEffect); 14210 } 14211 static FORCEINLINE HRESULT IDropTargetHelper_Show(IDropTargetHelper* This,WINBOOL fShow) { 14212 return This->lpVtbl->Show(This,fShow); 14213 } 14214 #endif 14215 #endif 14216 14217 #endif 14218 14219 HRESULT STDMETHODCALLTYPE IDropTargetHelper_DragEnter_Proxy( 14220 IDropTargetHelper* This, 14221 HWND hwndTarget, 14222 IDataObject *pDataObject, 14223 POINT *ppt, 14224 DWORD dwEffect); 14225 void __RPC_STUB IDropTargetHelper_DragEnter_Stub( 14226 IRpcStubBuffer* This, 14227 IRpcChannelBuffer* pRpcChannelBuffer, 14228 PRPC_MESSAGE pRpcMessage, 14229 DWORD* pdwStubPhase); 14230 HRESULT STDMETHODCALLTYPE IDropTargetHelper_DragLeave_Proxy( 14231 IDropTargetHelper* This); 14232 void __RPC_STUB IDropTargetHelper_DragLeave_Stub( 14233 IRpcStubBuffer* This, 14234 IRpcChannelBuffer* pRpcChannelBuffer, 14235 PRPC_MESSAGE pRpcMessage, 14236 DWORD* pdwStubPhase); 14237 HRESULT STDMETHODCALLTYPE IDropTargetHelper_DragOver_Proxy( 14238 IDropTargetHelper* This, 14239 POINT *ppt, 14240 DWORD dwEffect); 14241 void __RPC_STUB IDropTargetHelper_DragOver_Stub( 14242 IRpcStubBuffer* This, 14243 IRpcChannelBuffer* pRpcChannelBuffer, 14244 PRPC_MESSAGE pRpcMessage, 14245 DWORD* pdwStubPhase); 14246 HRESULT STDMETHODCALLTYPE IDropTargetHelper_Drop_Proxy( 14247 IDropTargetHelper* This, 14248 IDataObject *pDataObject, 14249 POINT *ppt, 14250 DWORD dwEffect); 14251 void __RPC_STUB IDropTargetHelper_Drop_Stub( 14252 IRpcStubBuffer* This, 14253 IRpcChannelBuffer* pRpcChannelBuffer, 14254 PRPC_MESSAGE pRpcMessage, 14255 DWORD* pdwStubPhase); 14256 HRESULT STDMETHODCALLTYPE IDropTargetHelper_Show_Proxy( 14257 IDropTargetHelper* This, 14258 WINBOOL fShow); 14259 void __RPC_STUB IDropTargetHelper_Show_Stub( 14260 IRpcStubBuffer* This, 14261 IRpcChannelBuffer* pRpcChannelBuffer, 14262 PRPC_MESSAGE pRpcMessage, 14263 DWORD* pdwStubPhase); 14264 14265 #endif /* __IDropTargetHelper_INTERFACE_DEFINED__ */ 14266 14267 14268 /***************************************************************************** 14269 * IDragSourceHelper interface 14270 */ 14271 #ifndef __IDragSourceHelper_INTERFACE_DEFINED__ 14272 #define __IDragSourceHelper_INTERFACE_DEFINED__ 14273 14274 DEFINE_GUID(IID_IDragSourceHelper, 0xde5bf786, 0x477a, 0x11d2, 0x83,0x9d, 0x00,0xc0,0x4f,0xd9,0x18,0xd0); 14275 #if defined(__cplusplus) && !defined(CINTERFACE) 14276 MIDL_INTERFACE("de5bf786-477a-11d2-839d-00c04fd918d0") 14277 IDragSourceHelper : public IUnknown 14278 { 14279 virtual HRESULT STDMETHODCALLTYPE InitializeFromBitmap( 14280 LPSHDRAGIMAGE pshdi, 14281 IDataObject *pDataObject) = 0; 14282 14283 virtual HRESULT STDMETHODCALLTYPE InitializeFromWindow( 14284 HWND hwnd, 14285 POINT *ppt, 14286 IDataObject *pDataObject) = 0; 14287 14288 }; 14289 #ifdef __CRT_UUID_DECL 14290 __CRT_UUID_DECL(IDragSourceHelper, 0xde5bf786, 0x477a, 0x11d2, 0x83,0x9d, 0x00,0xc0,0x4f,0xd9,0x18,0xd0) 14291 #endif 14292 #else 14293 typedef struct IDragSourceHelperVtbl { 14294 BEGIN_INTERFACE 14295 14296 /*** IUnknown methods ***/ 14297 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 14298 IDragSourceHelper* This, 14299 REFIID riid, 14300 void **ppvObject); 14301 14302 ULONG (STDMETHODCALLTYPE *AddRef)( 14303 IDragSourceHelper* This); 14304 14305 ULONG (STDMETHODCALLTYPE *Release)( 14306 IDragSourceHelper* This); 14307 14308 /*** IDragSourceHelper methods ***/ 14309 HRESULT (STDMETHODCALLTYPE *InitializeFromBitmap)( 14310 IDragSourceHelper* This, 14311 LPSHDRAGIMAGE pshdi, 14312 IDataObject *pDataObject); 14313 14314 HRESULT (STDMETHODCALLTYPE *InitializeFromWindow)( 14315 IDragSourceHelper* This, 14316 HWND hwnd, 14317 POINT *ppt, 14318 IDataObject *pDataObject); 14319 14320 END_INTERFACE 14321 } IDragSourceHelperVtbl; 14322 interface IDragSourceHelper { 14323 CONST_VTBL IDragSourceHelperVtbl* lpVtbl; 14324 }; 14325 14326 #ifdef COBJMACROS 14327 #ifndef WIDL_C_INLINE_WRAPPERS 14328 /*** IUnknown methods ***/ 14329 #define IDragSourceHelper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 14330 #define IDragSourceHelper_AddRef(This) (This)->lpVtbl->AddRef(This) 14331 #define IDragSourceHelper_Release(This) (This)->lpVtbl->Release(This) 14332 /*** IDragSourceHelper methods ***/ 14333 #define IDragSourceHelper_InitializeFromBitmap(This,pshdi,pDataObject) (This)->lpVtbl->InitializeFromBitmap(This,pshdi,pDataObject) 14334 #define IDragSourceHelper_InitializeFromWindow(This,hwnd,ppt,pDataObject) (This)->lpVtbl->InitializeFromWindow(This,hwnd,ppt,pDataObject) 14335 #else 14336 /*** IUnknown methods ***/ 14337 static FORCEINLINE HRESULT IDragSourceHelper_QueryInterface(IDragSourceHelper* This,REFIID riid,void **ppvObject) { 14338 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 14339 } 14340 static FORCEINLINE ULONG IDragSourceHelper_AddRef(IDragSourceHelper* This) { 14341 return This->lpVtbl->AddRef(This); 14342 } 14343 static FORCEINLINE ULONG IDragSourceHelper_Release(IDragSourceHelper* This) { 14344 return This->lpVtbl->Release(This); 14345 } 14346 /*** IDragSourceHelper methods ***/ 14347 static FORCEINLINE HRESULT IDragSourceHelper_InitializeFromBitmap(IDragSourceHelper* This,LPSHDRAGIMAGE pshdi,IDataObject *pDataObject) { 14348 return This->lpVtbl->InitializeFromBitmap(This,pshdi,pDataObject); 14349 } 14350 static FORCEINLINE HRESULT IDragSourceHelper_InitializeFromWindow(IDragSourceHelper* This,HWND hwnd,POINT *ppt,IDataObject *pDataObject) { 14351 return This->lpVtbl->InitializeFromWindow(This,hwnd,ppt,pDataObject); 14352 } 14353 #endif 14354 #endif 14355 14356 #endif 14357 14358 HRESULT STDMETHODCALLTYPE IDragSourceHelper_InitializeFromBitmap_Proxy( 14359 IDragSourceHelper* This, 14360 LPSHDRAGIMAGE pshdi, 14361 IDataObject *pDataObject); 14362 void __RPC_STUB IDragSourceHelper_InitializeFromBitmap_Stub( 14363 IRpcStubBuffer* This, 14364 IRpcChannelBuffer* pRpcChannelBuffer, 14365 PRPC_MESSAGE pRpcMessage, 14366 DWORD* pdwStubPhase); 14367 HRESULT STDMETHODCALLTYPE IDragSourceHelper_InitializeFromWindow_Proxy( 14368 IDragSourceHelper* This, 14369 HWND hwnd, 14370 POINT *ppt, 14371 IDataObject *pDataObject); 14372 void __RPC_STUB IDragSourceHelper_InitializeFromWindow_Stub( 14373 IRpcStubBuffer* This, 14374 IRpcChannelBuffer* pRpcChannelBuffer, 14375 PRPC_MESSAGE pRpcMessage, 14376 DWORD* pdwStubPhase); 14377 14378 #endif /* __IDragSourceHelper_INTERFACE_DEFINED__ */ 14379 14380 14381 #if NTDDI_VERSION >= NTDDI_VISTA 14382 typedef enum DSH_FLAGS { 14383 DSH_ALLOWDROPDESCRIPTIONTEXT = 0x1 14384 } DSH_FLAGS; 14385 14386 DEFINE_ENUM_FLAG_OPERATORS(DSH_FLAGS) 14387 14388 /***************************************************************************** 14389 * IDragSourceHelper2 interface 14390 */ 14391 #ifndef __IDragSourceHelper2_INTERFACE_DEFINED__ 14392 #define __IDragSourceHelper2_INTERFACE_DEFINED__ 14393 14394 DEFINE_GUID(IID_IDragSourceHelper2, 0x83e07d0d, 0x0c5f, 0x4163, 0xbf,0x1a, 0x60,0xb2,0x74,0x05,0x1e,0x40); 14395 #if defined(__cplusplus) && !defined(CINTERFACE) 14396 MIDL_INTERFACE("83e07d0d-0c5f-4163-bf1a-60b274051e40") 14397 IDragSourceHelper2 : public IDragSourceHelper 14398 { 14399 virtual HRESULT STDMETHODCALLTYPE SetFlags( 14400 DWORD dwFlags) = 0; 14401 14402 }; 14403 #ifdef __CRT_UUID_DECL 14404 __CRT_UUID_DECL(IDragSourceHelper2, 0x83e07d0d, 0x0c5f, 0x4163, 0xbf,0x1a, 0x60,0xb2,0x74,0x05,0x1e,0x40) 14405 #endif 14406 #else 14407 typedef struct IDragSourceHelper2Vtbl { 14408 BEGIN_INTERFACE 14409 14410 /*** IUnknown methods ***/ 14411 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 14412 IDragSourceHelper2* This, 14413 REFIID riid, 14414 void **ppvObject); 14415 14416 ULONG (STDMETHODCALLTYPE *AddRef)( 14417 IDragSourceHelper2* This); 14418 14419 ULONG (STDMETHODCALLTYPE *Release)( 14420 IDragSourceHelper2* This); 14421 14422 /*** IDragSourceHelper methods ***/ 14423 HRESULT (STDMETHODCALLTYPE *InitializeFromBitmap)( 14424 IDragSourceHelper2* This, 14425 LPSHDRAGIMAGE pshdi, 14426 IDataObject *pDataObject); 14427 14428 HRESULT (STDMETHODCALLTYPE *InitializeFromWindow)( 14429 IDragSourceHelper2* This, 14430 HWND hwnd, 14431 POINT *ppt, 14432 IDataObject *pDataObject); 14433 14434 /*** IDragSourceHelper2 methods ***/ 14435 HRESULT (STDMETHODCALLTYPE *SetFlags)( 14436 IDragSourceHelper2* This, 14437 DWORD dwFlags); 14438 14439 END_INTERFACE 14440 } IDragSourceHelper2Vtbl; 14441 interface IDragSourceHelper2 { 14442 CONST_VTBL IDragSourceHelper2Vtbl* lpVtbl; 14443 }; 14444 14445 #ifdef COBJMACROS 14446 #ifndef WIDL_C_INLINE_WRAPPERS 14447 /*** IUnknown methods ***/ 14448 #define IDragSourceHelper2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 14449 #define IDragSourceHelper2_AddRef(This) (This)->lpVtbl->AddRef(This) 14450 #define IDragSourceHelper2_Release(This) (This)->lpVtbl->Release(This) 14451 /*** IDragSourceHelper methods ***/ 14452 #define IDragSourceHelper2_InitializeFromBitmap(This,pshdi,pDataObject) (This)->lpVtbl->InitializeFromBitmap(This,pshdi,pDataObject) 14453 #define IDragSourceHelper2_InitializeFromWindow(This,hwnd,ppt,pDataObject) (This)->lpVtbl->InitializeFromWindow(This,hwnd,ppt,pDataObject) 14454 /*** IDragSourceHelper2 methods ***/ 14455 #define IDragSourceHelper2_SetFlags(This,dwFlags) (This)->lpVtbl->SetFlags(This,dwFlags) 14456 #else 14457 /*** IUnknown methods ***/ 14458 static FORCEINLINE HRESULT IDragSourceHelper2_QueryInterface(IDragSourceHelper2* This,REFIID riid,void **ppvObject) { 14459 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 14460 } 14461 static FORCEINLINE ULONG IDragSourceHelper2_AddRef(IDragSourceHelper2* This) { 14462 return This->lpVtbl->AddRef(This); 14463 } 14464 static FORCEINLINE ULONG IDragSourceHelper2_Release(IDragSourceHelper2* This) { 14465 return This->lpVtbl->Release(This); 14466 } 14467 /*** IDragSourceHelper methods ***/ 14468 static FORCEINLINE HRESULT IDragSourceHelper2_InitializeFromBitmap(IDragSourceHelper2* This,LPSHDRAGIMAGE pshdi,IDataObject *pDataObject) { 14469 return This->lpVtbl->InitializeFromBitmap(This,pshdi,pDataObject); 14470 } 14471 static FORCEINLINE HRESULT IDragSourceHelper2_InitializeFromWindow(IDragSourceHelper2* This,HWND hwnd,POINT *ppt,IDataObject *pDataObject) { 14472 return This->lpVtbl->InitializeFromWindow(This,hwnd,ppt,pDataObject); 14473 } 14474 /*** IDragSourceHelper2 methods ***/ 14475 static FORCEINLINE HRESULT IDragSourceHelper2_SetFlags(IDragSourceHelper2* This,DWORD dwFlags) { 14476 return This->lpVtbl->SetFlags(This,dwFlags); 14477 } 14478 #endif 14479 #endif 14480 14481 #endif 14482 14483 HRESULT STDMETHODCALLTYPE IDragSourceHelper2_SetFlags_Proxy( 14484 IDragSourceHelper2* This, 14485 DWORD dwFlags); 14486 void __RPC_STUB IDragSourceHelper2_SetFlags_Stub( 14487 IRpcStubBuffer* This, 14488 IRpcChannelBuffer* pRpcChannelBuffer, 14489 PRPC_MESSAGE pRpcMessage, 14490 DWORD* pdwStubPhase); 14491 14492 #endif /* __IDragSourceHelper2_INTERFACE_DEFINED__ */ 14493 14494 #endif 14495 14496 #define IShellLink __MINGW_NAME_AW(IShellLink) 14497 14498 typedef enum SLR_FLAGS { 14499 SLR_NO_UI = 0x1, 14500 SLR_ANY_MATCH = 0x2, 14501 SLR_UPDATE = 0x4, 14502 SLR_NOUPDATE = 0x8, 14503 SLR_NOSEARCH = 0x10, 14504 SLR_NOTRACK = 0x20, 14505 SLR_NOLINKINFO = 0x40, 14506 SLR_INVOKE_MSI = 0x80, 14507 SLR_NO_UI_WITH_MSG_PUMP = 0x101, 14508 SLR_OFFER_DELETE_WITHOUT_FILE = 0x200, 14509 SLR_KNOWNFOLDER = 0x400, 14510 SLR_MACHINE_IN_LOCAL_TARGET = 0x800, 14511 SLR_UPDATE_MACHINE_AND_SID = 0x1000 14512 } SLR_FLAGS; 14513 14514 DEFINE_ENUM_FLAG_OPERATORS(SLR_FLAGS) 14515 14516 typedef enum SLGP_FLAGS { 14517 SLGP_SHORTPATH = 0x1, 14518 SLGP_UNCPRIORITY = 0x2, 14519 SLGP_RAWPATH = 0x4, 14520 SLGP_RELATIVEPRIORITY = 0x8 14521 } SLGP_FLAGS; 14522 14523 DEFINE_ENUM_FLAG_OPERATORS(SLGP_FLAGS) 14524 14525 /***************************************************************************** 14526 * IShellLinkA interface 14527 */ 14528 #ifndef __IShellLinkA_INTERFACE_DEFINED__ 14529 #define __IShellLinkA_INTERFACE_DEFINED__ 14530 14531 DEFINE_GUID(IID_IShellLinkA, 0x000214ee, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 14532 #if defined(__cplusplus) && !defined(CINTERFACE) 14533 MIDL_INTERFACE("000214ee-0000-0000-c000-000000000046") 14534 IShellLinkA : public IUnknown 14535 { 14536 virtual HRESULT STDMETHODCALLTYPE GetPath( 14537 LPSTR pszFile, 14538 int cch, 14539 WIN32_FIND_DATAA *pfd, 14540 DWORD fFlags) = 0; 14541 14542 virtual HRESULT STDMETHODCALLTYPE GetIDList( 14543 PIDLIST_ABSOLUTE *ppidl) = 0; 14544 14545 virtual HRESULT STDMETHODCALLTYPE SetIDList( 14546 PCIDLIST_ABSOLUTE pidl) = 0; 14547 14548 virtual HRESULT STDMETHODCALLTYPE GetDescription( 14549 LPSTR pszName, 14550 int cch) = 0; 14551 14552 virtual HRESULT STDMETHODCALLTYPE SetDescription( 14553 LPCSTR pszName) = 0; 14554 14555 virtual HRESULT STDMETHODCALLTYPE GetWorkingDirectory( 14556 LPSTR pszDir, 14557 int cch) = 0; 14558 14559 virtual HRESULT STDMETHODCALLTYPE SetWorkingDirectory( 14560 LPCSTR pszDir) = 0; 14561 14562 virtual HRESULT STDMETHODCALLTYPE GetArguments( 14563 LPSTR pszArgs, 14564 int cch) = 0; 14565 14566 virtual HRESULT STDMETHODCALLTYPE SetArguments( 14567 LPCSTR pszArgs) = 0; 14568 14569 virtual HRESULT STDMETHODCALLTYPE GetHotkey( 14570 WORD *pwHotkey) = 0; 14571 14572 virtual HRESULT STDMETHODCALLTYPE SetHotkey( 14573 WORD wHotkey) = 0; 14574 14575 virtual HRESULT STDMETHODCALLTYPE GetShowCmd( 14576 int *piShowCmd) = 0; 14577 14578 virtual HRESULT STDMETHODCALLTYPE SetShowCmd( 14579 int iShowCmd) = 0; 14580 14581 virtual HRESULT STDMETHODCALLTYPE GetIconLocation( 14582 LPSTR pszIconPath, 14583 int cch, 14584 int *piIcon) = 0; 14585 14586 virtual HRESULT STDMETHODCALLTYPE SetIconLocation( 14587 LPCSTR pszIconPath, 14588 int iIcon) = 0; 14589 14590 virtual HRESULT STDMETHODCALLTYPE SetRelativePath( 14591 LPCSTR pszPathRel, 14592 DWORD dwReserved) = 0; 14593 14594 virtual HRESULT STDMETHODCALLTYPE Resolve( 14595 HWND hwnd, 14596 DWORD fFlags) = 0; 14597 14598 virtual HRESULT STDMETHODCALLTYPE SetPath( 14599 LPCSTR pszFile) = 0; 14600 14601 }; 14602 #ifdef __CRT_UUID_DECL 14603 __CRT_UUID_DECL(IShellLinkA, 0x000214ee, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 14604 #endif 14605 #else 14606 typedef struct IShellLinkAVtbl { 14607 BEGIN_INTERFACE 14608 14609 /*** IUnknown methods ***/ 14610 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 14611 IShellLinkA* This, 14612 REFIID riid, 14613 void **ppvObject); 14614 14615 ULONG (STDMETHODCALLTYPE *AddRef)( 14616 IShellLinkA* This); 14617 14618 ULONG (STDMETHODCALLTYPE *Release)( 14619 IShellLinkA* This); 14620 14621 /*** IShellLinkA methods ***/ 14622 HRESULT (STDMETHODCALLTYPE *GetPath)( 14623 IShellLinkA* This, 14624 LPSTR pszFile, 14625 int cch, 14626 WIN32_FIND_DATAA *pfd, 14627 DWORD fFlags); 14628 14629 HRESULT (STDMETHODCALLTYPE *GetIDList)( 14630 IShellLinkA* This, 14631 PIDLIST_ABSOLUTE *ppidl); 14632 14633 HRESULT (STDMETHODCALLTYPE *SetIDList)( 14634 IShellLinkA* This, 14635 PCIDLIST_ABSOLUTE pidl); 14636 14637 HRESULT (STDMETHODCALLTYPE *GetDescription)( 14638 IShellLinkA* This, 14639 LPSTR pszName, 14640 int cch); 14641 14642 HRESULT (STDMETHODCALLTYPE *SetDescription)( 14643 IShellLinkA* This, 14644 LPCSTR pszName); 14645 14646 HRESULT (STDMETHODCALLTYPE *GetWorkingDirectory)( 14647 IShellLinkA* This, 14648 LPSTR pszDir, 14649 int cch); 14650 14651 HRESULT (STDMETHODCALLTYPE *SetWorkingDirectory)( 14652 IShellLinkA* This, 14653 LPCSTR pszDir); 14654 14655 HRESULT (STDMETHODCALLTYPE *GetArguments)( 14656 IShellLinkA* This, 14657 LPSTR pszArgs, 14658 int cch); 14659 14660 HRESULT (STDMETHODCALLTYPE *SetArguments)( 14661 IShellLinkA* This, 14662 LPCSTR pszArgs); 14663 14664 HRESULT (STDMETHODCALLTYPE *GetHotkey)( 14665 IShellLinkA* This, 14666 WORD *pwHotkey); 14667 14668 HRESULT (STDMETHODCALLTYPE *SetHotkey)( 14669 IShellLinkA* This, 14670 WORD wHotkey); 14671 14672 HRESULT (STDMETHODCALLTYPE *GetShowCmd)( 14673 IShellLinkA* This, 14674 int *piShowCmd); 14675 14676 HRESULT (STDMETHODCALLTYPE *SetShowCmd)( 14677 IShellLinkA* This, 14678 int iShowCmd); 14679 14680 HRESULT (STDMETHODCALLTYPE *GetIconLocation)( 14681 IShellLinkA* This, 14682 LPSTR pszIconPath, 14683 int cch, 14684 int *piIcon); 14685 14686 HRESULT (STDMETHODCALLTYPE *SetIconLocation)( 14687 IShellLinkA* This, 14688 LPCSTR pszIconPath, 14689 int iIcon); 14690 14691 HRESULT (STDMETHODCALLTYPE *SetRelativePath)( 14692 IShellLinkA* This, 14693 LPCSTR pszPathRel, 14694 DWORD dwReserved); 14695 14696 HRESULT (STDMETHODCALLTYPE *Resolve)( 14697 IShellLinkA* This, 14698 HWND hwnd, 14699 DWORD fFlags); 14700 14701 HRESULT (STDMETHODCALLTYPE *SetPath)( 14702 IShellLinkA* This, 14703 LPCSTR pszFile); 14704 14705 END_INTERFACE 14706 } IShellLinkAVtbl; 14707 interface IShellLinkA { 14708 CONST_VTBL IShellLinkAVtbl* lpVtbl; 14709 }; 14710 14711 #ifdef COBJMACROS 14712 #ifndef WIDL_C_INLINE_WRAPPERS 14713 /*** IUnknown methods ***/ 14714 #define IShellLinkA_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 14715 #define IShellLinkA_AddRef(This) (This)->lpVtbl->AddRef(This) 14716 #define IShellLinkA_Release(This) (This)->lpVtbl->Release(This) 14717 /*** IShellLinkA methods ***/ 14718 #define IShellLinkA_GetPath(This,pszFile,cch,pfd,fFlags) (This)->lpVtbl->GetPath(This,pszFile,cch,pfd,fFlags) 14719 #define IShellLinkA_GetIDList(This,ppidl) (This)->lpVtbl->GetIDList(This,ppidl) 14720 #define IShellLinkA_SetIDList(This,pidl) (This)->lpVtbl->SetIDList(This,pidl) 14721 #define IShellLinkA_GetDescription(This,pszName,cch) (This)->lpVtbl->GetDescription(This,pszName,cch) 14722 #define IShellLinkA_SetDescription(This,pszName) (This)->lpVtbl->SetDescription(This,pszName) 14723 #define IShellLinkA_GetWorkingDirectory(This,pszDir,cch) (This)->lpVtbl->GetWorkingDirectory(This,pszDir,cch) 14724 #define IShellLinkA_SetWorkingDirectory(This,pszDir) (This)->lpVtbl->SetWorkingDirectory(This,pszDir) 14725 #define IShellLinkA_GetArguments(This,pszArgs,cch) (This)->lpVtbl->GetArguments(This,pszArgs,cch) 14726 #define IShellLinkA_SetArguments(This,pszArgs) (This)->lpVtbl->SetArguments(This,pszArgs) 14727 #define IShellLinkA_GetHotkey(This,pwHotkey) (This)->lpVtbl->GetHotkey(This,pwHotkey) 14728 #define IShellLinkA_SetHotkey(This,wHotkey) (This)->lpVtbl->SetHotkey(This,wHotkey) 14729 #define IShellLinkA_GetShowCmd(This,piShowCmd) (This)->lpVtbl->GetShowCmd(This,piShowCmd) 14730 #define IShellLinkA_SetShowCmd(This,iShowCmd) (This)->lpVtbl->SetShowCmd(This,iShowCmd) 14731 #define IShellLinkA_GetIconLocation(This,pszIconPath,cch,piIcon) (This)->lpVtbl->GetIconLocation(This,pszIconPath,cch,piIcon) 14732 #define IShellLinkA_SetIconLocation(This,pszIconPath,iIcon) (This)->lpVtbl->SetIconLocation(This,pszIconPath,iIcon) 14733 #define IShellLinkA_SetRelativePath(This,pszPathRel,dwReserved) (This)->lpVtbl->SetRelativePath(This,pszPathRel,dwReserved) 14734 #define IShellLinkA_Resolve(This,hwnd,fFlags) (This)->lpVtbl->Resolve(This,hwnd,fFlags) 14735 #define IShellLinkA_SetPath(This,pszFile) (This)->lpVtbl->SetPath(This,pszFile) 14736 #else 14737 /*** IUnknown methods ***/ 14738 static FORCEINLINE HRESULT IShellLinkA_QueryInterface(IShellLinkA* This,REFIID riid,void **ppvObject) { 14739 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 14740 } 14741 static FORCEINLINE ULONG IShellLinkA_AddRef(IShellLinkA* This) { 14742 return This->lpVtbl->AddRef(This); 14743 } 14744 static FORCEINLINE ULONG IShellLinkA_Release(IShellLinkA* This) { 14745 return This->lpVtbl->Release(This); 14746 } 14747 /*** IShellLinkA methods ***/ 14748 static FORCEINLINE HRESULT IShellLinkA_GetPath(IShellLinkA* This,LPSTR pszFile,int cch,WIN32_FIND_DATAA *pfd,DWORD fFlags) { 14749 return This->lpVtbl->GetPath(This,pszFile,cch,pfd,fFlags); 14750 } 14751 static FORCEINLINE HRESULT IShellLinkA_GetIDList(IShellLinkA* This,PIDLIST_ABSOLUTE *ppidl) { 14752 return This->lpVtbl->GetIDList(This,ppidl); 14753 } 14754 static FORCEINLINE HRESULT IShellLinkA_SetIDList(IShellLinkA* This,PCIDLIST_ABSOLUTE pidl) { 14755 return This->lpVtbl->SetIDList(This,pidl); 14756 } 14757 static FORCEINLINE HRESULT IShellLinkA_GetDescription(IShellLinkA* This,LPSTR pszName,int cch) { 14758 return This->lpVtbl->GetDescription(This,pszName,cch); 14759 } 14760 static FORCEINLINE HRESULT IShellLinkA_SetDescription(IShellLinkA* This,LPCSTR pszName) { 14761 return This->lpVtbl->SetDescription(This,pszName); 14762 } 14763 static FORCEINLINE HRESULT IShellLinkA_GetWorkingDirectory(IShellLinkA* This,LPSTR pszDir,int cch) { 14764 return This->lpVtbl->GetWorkingDirectory(This,pszDir,cch); 14765 } 14766 static FORCEINLINE HRESULT IShellLinkA_SetWorkingDirectory(IShellLinkA* This,LPCSTR pszDir) { 14767 return This->lpVtbl->SetWorkingDirectory(This,pszDir); 14768 } 14769 static FORCEINLINE HRESULT IShellLinkA_GetArguments(IShellLinkA* This,LPSTR pszArgs,int cch) { 14770 return This->lpVtbl->GetArguments(This,pszArgs,cch); 14771 } 14772 static FORCEINLINE HRESULT IShellLinkA_SetArguments(IShellLinkA* This,LPCSTR pszArgs) { 14773 return This->lpVtbl->SetArguments(This,pszArgs); 14774 } 14775 static FORCEINLINE HRESULT IShellLinkA_GetHotkey(IShellLinkA* This,WORD *pwHotkey) { 14776 return This->lpVtbl->GetHotkey(This,pwHotkey); 14777 } 14778 static FORCEINLINE HRESULT IShellLinkA_SetHotkey(IShellLinkA* This,WORD wHotkey) { 14779 return This->lpVtbl->SetHotkey(This,wHotkey); 14780 } 14781 static FORCEINLINE HRESULT IShellLinkA_GetShowCmd(IShellLinkA* This,int *piShowCmd) { 14782 return This->lpVtbl->GetShowCmd(This,piShowCmd); 14783 } 14784 static FORCEINLINE HRESULT IShellLinkA_SetShowCmd(IShellLinkA* This,int iShowCmd) { 14785 return This->lpVtbl->SetShowCmd(This,iShowCmd); 14786 } 14787 static FORCEINLINE HRESULT IShellLinkA_GetIconLocation(IShellLinkA* This,LPSTR pszIconPath,int cch,int *piIcon) { 14788 return This->lpVtbl->GetIconLocation(This,pszIconPath,cch,piIcon); 14789 } 14790 static FORCEINLINE HRESULT IShellLinkA_SetIconLocation(IShellLinkA* This,LPCSTR pszIconPath,int iIcon) { 14791 return This->lpVtbl->SetIconLocation(This,pszIconPath,iIcon); 14792 } 14793 static FORCEINLINE HRESULT IShellLinkA_SetRelativePath(IShellLinkA* This,LPCSTR pszPathRel,DWORD dwReserved) { 14794 return This->lpVtbl->SetRelativePath(This,pszPathRel,dwReserved); 14795 } 14796 static FORCEINLINE HRESULT IShellLinkA_Resolve(IShellLinkA* This,HWND hwnd,DWORD fFlags) { 14797 return This->lpVtbl->Resolve(This,hwnd,fFlags); 14798 } 14799 static FORCEINLINE HRESULT IShellLinkA_SetPath(IShellLinkA* This,LPCSTR pszFile) { 14800 return This->lpVtbl->SetPath(This,pszFile); 14801 } 14802 #endif 14803 #endif 14804 14805 #endif 14806 14807 HRESULT STDMETHODCALLTYPE IShellLinkA_GetPath_Proxy( 14808 IShellLinkA* This, 14809 LPSTR pszFile, 14810 int cch, 14811 WIN32_FIND_DATAA *pfd, 14812 DWORD fFlags); 14813 void __RPC_STUB IShellLinkA_GetPath_Stub( 14814 IRpcStubBuffer* This, 14815 IRpcChannelBuffer* pRpcChannelBuffer, 14816 PRPC_MESSAGE pRpcMessage, 14817 DWORD* pdwStubPhase); 14818 HRESULT STDMETHODCALLTYPE IShellLinkA_GetIDList_Proxy( 14819 IShellLinkA* This, 14820 PIDLIST_ABSOLUTE *ppidl); 14821 void __RPC_STUB IShellLinkA_GetIDList_Stub( 14822 IRpcStubBuffer* This, 14823 IRpcChannelBuffer* pRpcChannelBuffer, 14824 PRPC_MESSAGE pRpcMessage, 14825 DWORD* pdwStubPhase); 14826 HRESULT STDMETHODCALLTYPE IShellLinkA_SetIDList_Proxy( 14827 IShellLinkA* This, 14828 PCIDLIST_ABSOLUTE pidl); 14829 void __RPC_STUB IShellLinkA_SetIDList_Stub( 14830 IRpcStubBuffer* This, 14831 IRpcChannelBuffer* pRpcChannelBuffer, 14832 PRPC_MESSAGE pRpcMessage, 14833 DWORD* pdwStubPhase); 14834 HRESULT STDMETHODCALLTYPE IShellLinkA_GetDescription_Proxy( 14835 IShellLinkA* This, 14836 LPSTR pszName, 14837 int cch); 14838 void __RPC_STUB IShellLinkA_GetDescription_Stub( 14839 IRpcStubBuffer* This, 14840 IRpcChannelBuffer* pRpcChannelBuffer, 14841 PRPC_MESSAGE pRpcMessage, 14842 DWORD* pdwStubPhase); 14843 HRESULT STDMETHODCALLTYPE IShellLinkA_SetDescription_Proxy( 14844 IShellLinkA* This, 14845 LPCSTR pszName); 14846 void __RPC_STUB IShellLinkA_SetDescription_Stub( 14847 IRpcStubBuffer* This, 14848 IRpcChannelBuffer* pRpcChannelBuffer, 14849 PRPC_MESSAGE pRpcMessage, 14850 DWORD* pdwStubPhase); 14851 HRESULT STDMETHODCALLTYPE IShellLinkA_GetWorkingDirectory_Proxy( 14852 IShellLinkA* This, 14853 LPSTR pszDir, 14854 int cch); 14855 void __RPC_STUB IShellLinkA_GetWorkingDirectory_Stub( 14856 IRpcStubBuffer* This, 14857 IRpcChannelBuffer* pRpcChannelBuffer, 14858 PRPC_MESSAGE pRpcMessage, 14859 DWORD* pdwStubPhase); 14860 HRESULT STDMETHODCALLTYPE IShellLinkA_SetWorkingDirectory_Proxy( 14861 IShellLinkA* This, 14862 LPCSTR pszDir); 14863 void __RPC_STUB IShellLinkA_SetWorkingDirectory_Stub( 14864 IRpcStubBuffer* This, 14865 IRpcChannelBuffer* pRpcChannelBuffer, 14866 PRPC_MESSAGE pRpcMessage, 14867 DWORD* pdwStubPhase); 14868 HRESULT STDMETHODCALLTYPE IShellLinkA_GetArguments_Proxy( 14869 IShellLinkA* This, 14870 LPSTR pszArgs, 14871 int cch); 14872 void __RPC_STUB IShellLinkA_GetArguments_Stub( 14873 IRpcStubBuffer* This, 14874 IRpcChannelBuffer* pRpcChannelBuffer, 14875 PRPC_MESSAGE pRpcMessage, 14876 DWORD* pdwStubPhase); 14877 HRESULT STDMETHODCALLTYPE IShellLinkA_SetArguments_Proxy( 14878 IShellLinkA* This, 14879 LPCSTR pszArgs); 14880 void __RPC_STUB IShellLinkA_SetArguments_Stub( 14881 IRpcStubBuffer* This, 14882 IRpcChannelBuffer* pRpcChannelBuffer, 14883 PRPC_MESSAGE pRpcMessage, 14884 DWORD* pdwStubPhase); 14885 HRESULT STDMETHODCALLTYPE IShellLinkA_GetHotkey_Proxy( 14886 IShellLinkA* This, 14887 WORD *pwHotkey); 14888 void __RPC_STUB IShellLinkA_GetHotkey_Stub( 14889 IRpcStubBuffer* This, 14890 IRpcChannelBuffer* pRpcChannelBuffer, 14891 PRPC_MESSAGE pRpcMessage, 14892 DWORD* pdwStubPhase); 14893 HRESULT STDMETHODCALLTYPE IShellLinkA_SetHotkey_Proxy( 14894 IShellLinkA* This, 14895 WORD wHotkey); 14896 void __RPC_STUB IShellLinkA_SetHotkey_Stub( 14897 IRpcStubBuffer* This, 14898 IRpcChannelBuffer* pRpcChannelBuffer, 14899 PRPC_MESSAGE pRpcMessage, 14900 DWORD* pdwStubPhase); 14901 HRESULT STDMETHODCALLTYPE IShellLinkA_GetShowCmd_Proxy( 14902 IShellLinkA* This, 14903 int *piShowCmd); 14904 void __RPC_STUB IShellLinkA_GetShowCmd_Stub( 14905 IRpcStubBuffer* This, 14906 IRpcChannelBuffer* pRpcChannelBuffer, 14907 PRPC_MESSAGE pRpcMessage, 14908 DWORD* pdwStubPhase); 14909 HRESULT STDMETHODCALLTYPE IShellLinkA_SetShowCmd_Proxy( 14910 IShellLinkA* This, 14911 int iShowCmd); 14912 void __RPC_STUB IShellLinkA_SetShowCmd_Stub( 14913 IRpcStubBuffer* This, 14914 IRpcChannelBuffer* pRpcChannelBuffer, 14915 PRPC_MESSAGE pRpcMessage, 14916 DWORD* pdwStubPhase); 14917 HRESULT STDMETHODCALLTYPE IShellLinkA_GetIconLocation_Proxy( 14918 IShellLinkA* This, 14919 LPSTR pszIconPath, 14920 int cch, 14921 int *piIcon); 14922 void __RPC_STUB IShellLinkA_GetIconLocation_Stub( 14923 IRpcStubBuffer* This, 14924 IRpcChannelBuffer* pRpcChannelBuffer, 14925 PRPC_MESSAGE pRpcMessage, 14926 DWORD* pdwStubPhase); 14927 HRESULT STDMETHODCALLTYPE IShellLinkA_SetIconLocation_Proxy( 14928 IShellLinkA* This, 14929 LPCSTR pszIconPath, 14930 int iIcon); 14931 void __RPC_STUB IShellLinkA_SetIconLocation_Stub( 14932 IRpcStubBuffer* This, 14933 IRpcChannelBuffer* pRpcChannelBuffer, 14934 PRPC_MESSAGE pRpcMessage, 14935 DWORD* pdwStubPhase); 14936 HRESULT STDMETHODCALLTYPE IShellLinkA_SetRelativePath_Proxy( 14937 IShellLinkA* This, 14938 LPCSTR pszPathRel, 14939 DWORD dwReserved); 14940 void __RPC_STUB IShellLinkA_SetRelativePath_Stub( 14941 IRpcStubBuffer* This, 14942 IRpcChannelBuffer* pRpcChannelBuffer, 14943 PRPC_MESSAGE pRpcMessage, 14944 DWORD* pdwStubPhase); 14945 HRESULT STDMETHODCALLTYPE IShellLinkA_Resolve_Proxy( 14946 IShellLinkA* This, 14947 HWND hwnd, 14948 DWORD fFlags); 14949 void __RPC_STUB IShellLinkA_Resolve_Stub( 14950 IRpcStubBuffer* This, 14951 IRpcChannelBuffer* pRpcChannelBuffer, 14952 PRPC_MESSAGE pRpcMessage, 14953 DWORD* pdwStubPhase); 14954 HRESULT STDMETHODCALLTYPE IShellLinkA_SetPath_Proxy( 14955 IShellLinkA* This, 14956 LPCSTR pszFile); 14957 void __RPC_STUB IShellLinkA_SetPath_Stub( 14958 IRpcStubBuffer* This, 14959 IRpcChannelBuffer* pRpcChannelBuffer, 14960 PRPC_MESSAGE pRpcMessage, 14961 DWORD* pdwStubPhase); 14962 14963 #endif /* __IShellLinkA_INTERFACE_DEFINED__ */ 14964 14965 14966 /***************************************************************************** 14967 * IShellLinkW interface 14968 */ 14969 #ifndef __IShellLinkW_INTERFACE_DEFINED__ 14970 #define __IShellLinkW_INTERFACE_DEFINED__ 14971 14972 DEFINE_GUID(IID_IShellLinkW, 0x000214f9, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 14973 #if defined(__cplusplus) && !defined(CINTERFACE) 14974 MIDL_INTERFACE("000214f9-0000-0000-c000-000000000046") 14975 IShellLinkW : public IUnknown 14976 { 14977 virtual HRESULT STDMETHODCALLTYPE GetPath( 14978 LPWSTR pszFile, 14979 int cch, 14980 WIN32_FIND_DATAW *pfd, 14981 DWORD fFlags) = 0; 14982 14983 virtual HRESULT STDMETHODCALLTYPE GetIDList( 14984 PIDLIST_ABSOLUTE *ppidl) = 0; 14985 14986 virtual HRESULT STDMETHODCALLTYPE SetIDList( 14987 PCIDLIST_ABSOLUTE pidl) = 0; 14988 14989 virtual HRESULT STDMETHODCALLTYPE GetDescription( 14990 LPWSTR pszName, 14991 int cch) = 0; 14992 14993 virtual HRESULT STDMETHODCALLTYPE SetDescription( 14994 LPCWSTR pszName) = 0; 14995 14996 virtual HRESULT STDMETHODCALLTYPE GetWorkingDirectory( 14997 LPWSTR pszDir, 14998 int cch) = 0; 14999 15000 virtual HRESULT STDMETHODCALLTYPE SetWorkingDirectory( 15001 LPCWSTR pszDir) = 0; 15002 15003 virtual HRESULT STDMETHODCALLTYPE GetArguments( 15004 LPWSTR pszArgs, 15005 int cch) = 0; 15006 15007 virtual HRESULT STDMETHODCALLTYPE SetArguments( 15008 LPCWSTR pszArgs) = 0; 15009 15010 virtual HRESULT STDMETHODCALLTYPE GetHotkey( 15011 WORD *pwHotkey) = 0; 15012 15013 virtual HRESULT STDMETHODCALLTYPE SetHotkey( 15014 WORD wHotkey) = 0; 15015 15016 virtual HRESULT STDMETHODCALLTYPE GetShowCmd( 15017 int *piShowCmd) = 0; 15018 15019 virtual HRESULT STDMETHODCALLTYPE SetShowCmd( 15020 int iShowCmd) = 0; 15021 15022 virtual HRESULT STDMETHODCALLTYPE GetIconLocation( 15023 LPWSTR pszIconPath, 15024 int cch, 15025 int *piIcon) = 0; 15026 15027 virtual HRESULT STDMETHODCALLTYPE SetIconLocation( 15028 LPCWSTR pszIconPath, 15029 int iIcon) = 0; 15030 15031 virtual HRESULT STDMETHODCALLTYPE SetRelativePath( 15032 LPCWSTR pszPathRel, 15033 DWORD dwReserved) = 0; 15034 15035 virtual HRESULT STDMETHODCALLTYPE Resolve( 15036 HWND hwnd, 15037 DWORD fFlags) = 0; 15038 15039 virtual HRESULT STDMETHODCALLTYPE SetPath( 15040 LPCWSTR pszFile) = 0; 15041 15042 }; 15043 #ifdef __CRT_UUID_DECL 15044 __CRT_UUID_DECL(IShellLinkW, 0x000214f9, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 15045 #endif 15046 #else 15047 typedef struct IShellLinkWVtbl { 15048 BEGIN_INTERFACE 15049 15050 /*** IUnknown methods ***/ 15051 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 15052 IShellLinkW* This, 15053 REFIID riid, 15054 void **ppvObject); 15055 15056 ULONG (STDMETHODCALLTYPE *AddRef)( 15057 IShellLinkW* This); 15058 15059 ULONG (STDMETHODCALLTYPE *Release)( 15060 IShellLinkW* This); 15061 15062 /*** IShellLinkW methods ***/ 15063 HRESULT (STDMETHODCALLTYPE *GetPath)( 15064 IShellLinkW* This, 15065 LPWSTR pszFile, 15066 int cch, 15067 WIN32_FIND_DATAW *pfd, 15068 DWORD fFlags); 15069 15070 HRESULT (STDMETHODCALLTYPE *GetIDList)( 15071 IShellLinkW* This, 15072 PIDLIST_ABSOLUTE *ppidl); 15073 15074 HRESULT (STDMETHODCALLTYPE *SetIDList)( 15075 IShellLinkW* This, 15076 PCIDLIST_ABSOLUTE pidl); 15077 15078 HRESULT (STDMETHODCALLTYPE *GetDescription)( 15079 IShellLinkW* This, 15080 LPWSTR pszName, 15081 int cch); 15082 15083 HRESULT (STDMETHODCALLTYPE *SetDescription)( 15084 IShellLinkW* This, 15085 LPCWSTR pszName); 15086 15087 HRESULT (STDMETHODCALLTYPE *GetWorkingDirectory)( 15088 IShellLinkW* This, 15089 LPWSTR pszDir, 15090 int cch); 15091 15092 HRESULT (STDMETHODCALLTYPE *SetWorkingDirectory)( 15093 IShellLinkW* This, 15094 LPCWSTR pszDir); 15095 15096 HRESULT (STDMETHODCALLTYPE *GetArguments)( 15097 IShellLinkW* This, 15098 LPWSTR pszArgs, 15099 int cch); 15100 15101 HRESULT (STDMETHODCALLTYPE *SetArguments)( 15102 IShellLinkW* This, 15103 LPCWSTR pszArgs); 15104 15105 HRESULT (STDMETHODCALLTYPE *GetHotkey)( 15106 IShellLinkW* This, 15107 WORD *pwHotkey); 15108 15109 HRESULT (STDMETHODCALLTYPE *SetHotkey)( 15110 IShellLinkW* This, 15111 WORD wHotkey); 15112 15113 HRESULT (STDMETHODCALLTYPE *GetShowCmd)( 15114 IShellLinkW* This, 15115 int *piShowCmd); 15116 15117 HRESULT (STDMETHODCALLTYPE *SetShowCmd)( 15118 IShellLinkW* This, 15119 int iShowCmd); 15120 15121 HRESULT (STDMETHODCALLTYPE *GetIconLocation)( 15122 IShellLinkW* This, 15123 LPWSTR pszIconPath, 15124 int cch, 15125 int *piIcon); 15126 15127 HRESULT (STDMETHODCALLTYPE *SetIconLocation)( 15128 IShellLinkW* This, 15129 LPCWSTR pszIconPath, 15130 int iIcon); 15131 15132 HRESULT (STDMETHODCALLTYPE *SetRelativePath)( 15133 IShellLinkW* This, 15134 LPCWSTR pszPathRel, 15135 DWORD dwReserved); 15136 15137 HRESULT (STDMETHODCALLTYPE *Resolve)( 15138 IShellLinkW* This, 15139 HWND hwnd, 15140 DWORD fFlags); 15141 15142 HRESULT (STDMETHODCALLTYPE *SetPath)( 15143 IShellLinkW* This, 15144 LPCWSTR pszFile); 15145 15146 END_INTERFACE 15147 } IShellLinkWVtbl; 15148 interface IShellLinkW { 15149 CONST_VTBL IShellLinkWVtbl* lpVtbl; 15150 }; 15151 15152 #ifdef COBJMACROS 15153 #ifndef WIDL_C_INLINE_WRAPPERS 15154 /*** IUnknown methods ***/ 15155 #define IShellLinkW_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15156 #define IShellLinkW_AddRef(This) (This)->lpVtbl->AddRef(This) 15157 #define IShellLinkW_Release(This) (This)->lpVtbl->Release(This) 15158 /*** IShellLinkW methods ***/ 15159 #define IShellLinkW_GetPath(This,pszFile,cch,pfd,fFlags) (This)->lpVtbl->GetPath(This,pszFile,cch,pfd,fFlags) 15160 #define IShellLinkW_GetIDList(This,ppidl) (This)->lpVtbl->GetIDList(This,ppidl) 15161 #define IShellLinkW_SetIDList(This,pidl) (This)->lpVtbl->SetIDList(This,pidl) 15162 #define IShellLinkW_GetDescription(This,pszName,cch) (This)->lpVtbl->GetDescription(This,pszName,cch) 15163 #define IShellLinkW_SetDescription(This,pszName) (This)->lpVtbl->SetDescription(This,pszName) 15164 #define IShellLinkW_GetWorkingDirectory(This,pszDir,cch) (This)->lpVtbl->GetWorkingDirectory(This,pszDir,cch) 15165 #define IShellLinkW_SetWorkingDirectory(This,pszDir) (This)->lpVtbl->SetWorkingDirectory(This,pszDir) 15166 #define IShellLinkW_GetArguments(This,pszArgs,cch) (This)->lpVtbl->GetArguments(This,pszArgs,cch) 15167 #define IShellLinkW_SetArguments(This,pszArgs) (This)->lpVtbl->SetArguments(This,pszArgs) 15168 #define IShellLinkW_GetHotkey(This,pwHotkey) (This)->lpVtbl->GetHotkey(This,pwHotkey) 15169 #define IShellLinkW_SetHotkey(This,wHotkey) (This)->lpVtbl->SetHotkey(This,wHotkey) 15170 #define IShellLinkW_GetShowCmd(This,piShowCmd) (This)->lpVtbl->GetShowCmd(This,piShowCmd) 15171 #define IShellLinkW_SetShowCmd(This,iShowCmd) (This)->lpVtbl->SetShowCmd(This,iShowCmd) 15172 #define IShellLinkW_GetIconLocation(This,pszIconPath,cch,piIcon) (This)->lpVtbl->GetIconLocation(This,pszIconPath,cch,piIcon) 15173 #define IShellLinkW_SetIconLocation(This,pszIconPath,iIcon) (This)->lpVtbl->SetIconLocation(This,pszIconPath,iIcon) 15174 #define IShellLinkW_SetRelativePath(This,pszPathRel,dwReserved) (This)->lpVtbl->SetRelativePath(This,pszPathRel,dwReserved) 15175 #define IShellLinkW_Resolve(This,hwnd,fFlags) (This)->lpVtbl->Resolve(This,hwnd,fFlags) 15176 #define IShellLinkW_SetPath(This,pszFile) (This)->lpVtbl->SetPath(This,pszFile) 15177 #else 15178 /*** IUnknown methods ***/ 15179 static FORCEINLINE HRESULT IShellLinkW_QueryInterface(IShellLinkW* This,REFIID riid,void **ppvObject) { 15180 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 15181 } 15182 static FORCEINLINE ULONG IShellLinkW_AddRef(IShellLinkW* This) { 15183 return This->lpVtbl->AddRef(This); 15184 } 15185 static FORCEINLINE ULONG IShellLinkW_Release(IShellLinkW* This) { 15186 return This->lpVtbl->Release(This); 15187 } 15188 /*** IShellLinkW methods ***/ 15189 static FORCEINLINE HRESULT IShellLinkW_GetPath(IShellLinkW* This,LPWSTR pszFile,int cch,WIN32_FIND_DATAW *pfd,DWORD fFlags) { 15190 return This->lpVtbl->GetPath(This,pszFile,cch,pfd,fFlags); 15191 } 15192 static FORCEINLINE HRESULT IShellLinkW_GetIDList(IShellLinkW* This,PIDLIST_ABSOLUTE *ppidl) { 15193 return This->lpVtbl->GetIDList(This,ppidl); 15194 } 15195 static FORCEINLINE HRESULT IShellLinkW_SetIDList(IShellLinkW* This,PCIDLIST_ABSOLUTE pidl) { 15196 return This->lpVtbl->SetIDList(This,pidl); 15197 } 15198 static FORCEINLINE HRESULT IShellLinkW_GetDescription(IShellLinkW* This,LPWSTR pszName,int cch) { 15199 return This->lpVtbl->GetDescription(This,pszName,cch); 15200 } 15201 static FORCEINLINE HRESULT IShellLinkW_SetDescription(IShellLinkW* This,LPCWSTR pszName) { 15202 return This->lpVtbl->SetDescription(This,pszName); 15203 } 15204 static FORCEINLINE HRESULT IShellLinkW_GetWorkingDirectory(IShellLinkW* This,LPWSTR pszDir,int cch) { 15205 return This->lpVtbl->GetWorkingDirectory(This,pszDir,cch); 15206 } 15207 static FORCEINLINE HRESULT IShellLinkW_SetWorkingDirectory(IShellLinkW* This,LPCWSTR pszDir) { 15208 return This->lpVtbl->SetWorkingDirectory(This,pszDir); 15209 } 15210 static FORCEINLINE HRESULT IShellLinkW_GetArguments(IShellLinkW* This,LPWSTR pszArgs,int cch) { 15211 return This->lpVtbl->GetArguments(This,pszArgs,cch); 15212 } 15213 static FORCEINLINE HRESULT IShellLinkW_SetArguments(IShellLinkW* This,LPCWSTR pszArgs) { 15214 return This->lpVtbl->SetArguments(This,pszArgs); 15215 } 15216 static FORCEINLINE HRESULT IShellLinkW_GetHotkey(IShellLinkW* This,WORD *pwHotkey) { 15217 return This->lpVtbl->GetHotkey(This,pwHotkey); 15218 } 15219 static FORCEINLINE HRESULT IShellLinkW_SetHotkey(IShellLinkW* This,WORD wHotkey) { 15220 return This->lpVtbl->SetHotkey(This,wHotkey); 15221 } 15222 static FORCEINLINE HRESULT IShellLinkW_GetShowCmd(IShellLinkW* This,int *piShowCmd) { 15223 return This->lpVtbl->GetShowCmd(This,piShowCmd); 15224 } 15225 static FORCEINLINE HRESULT IShellLinkW_SetShowCmd(IShellLinkW* This,int iShowCmd) { 15226 return This->lpVtbl->SetShowCmd(This,iShowCmd); 15227 } 15228 static FORCEINLINE HRESULT IShellLinkW_GetIconLocation(IShellLinkW* This,LPWSTR pszIconPath,int cch,int *piIcon) { 15229 return This->lpVtbl->GetIconLocation(This,pszIconPath,cch,piIcon); 15230 } 15231 static FORCEINLINE HRESULT IShellLinkW_SetIconLocation(IShellLinkW* This,LPCWSTR pszIconPath,int iIcon) { 15232 return This->lpVtbl->SetIconLocation(This,pszIconPath,iIcon); 15233 } 15234 static FORCEINLINE HRESULT IShellLinkW_SetRelativePath(IShellLinkW* This,LPCWSTR pszPathRel,DWORD dwReserved) { 15235 return This->lpVtbl->SetRelativePath(This,pszPathRel,dwReserved); 15236 } 15237 static FORCEINLINE HRESULT IShellLinkW_Resolve(IShellLinkW* This,HWND hwnd,DWORD fFlags) { 15238 return This->lpVtbl->Resolve(This,hwnd,fFlags); 15239 } 15240 static FORCEINLINE HRESULT IShellLinkW_SetPath(IShellLinkW* This,LPCWSTR pszFile) { 15241 return This->lpVtbl->SetPath(This,pszFile); 15242 } 15243 #endif 15244 #endif 15245 15246 #endif 15247 15248 HRESULT STDMETHODCALLTYPE IShellLinkW_GetPath_Proxy( 15249 IShellLinkW* This, 15250 LPWSTR pszFile, 15251 int cch, 15252 WIN32_FIND_DATAW *pfd, 15253 DWORD fFlags); 15254 void __RPC_STUB IShellLinkW_GetPath_Stub( 15255 IRpcStubBuffer* This, 15256 IRpcChannelBuffer* pRpcChannelBuffer, 15257 PRPC_MESSAGE pRpcMessage, 15258 DWORD* pdwStubPhase); 15259 HRESULT STDMETHODCALLTYPE IShellLinkW_GetIDList_Proxy( 15260 IShellLinkW* This, 15261 PIDLIST_ABSOLUTE *ppidl); 15262 void __RPC_STUB IShellLinkW_GetIDList_Stub( 15263 IRpcStubBuffer* This, 15264 IRpcChannelBuffer* pRpcChannelBuffer, 15265 PRPC_MESSAGE pRpcMessage, 15266 DWORD* pdwStubPhase); 15267 HRESULT STDMETHODCALLTYPE IShellLinkW_SetIDList_Proxy( 15268 IShellLinkW* This, 15269 PCIDLIST_ABSOLUTE pidl); 15270 void __RPC_STUB IShellLinkW_SetIDList_Stub( 15271 IRpcStubBuffer* This, 15272 IRpcChannelBuffer* pRpcChannelBuffer, 15273 PRPC_MESSAGE pRpcMessage, 15274 DWORD* pdwStubPhase); 15275 HRESULT STDMETHODCALLTYPE IShellLinkW_GetDescription_Proxy( 15276 IShellLinkW* This, 15277 LPWSTR pszName, 15278 int cch); 15279 void __RPC_STUB IShellLinkW_GetDescription_Stub( 15280 IRpcStubBuffer* This, 15281 IRpcChannelBuffer* pRpcChannelBuffer, 15282 PRPC_MESSAGE pRpcMessage, 15283 DWORD* pdwStubPhase); 15284 HRESULT STDMETHODCALLTYPE IShellLinkW_SetDescription_Proxy( 15285 IShellLinkW* This, 15286 LPCWSTR pszName); 15287 void __RPC_STUB IShellLinkW_SetDescription_Stub( 15288 IRpcStubBuffer* This, 15289 IRpcChannelBuffer* pRpcChannelBuffer, 15290 PRPC_MESSAGE pRpcMessage, 15291 DWORD* pdwStubPhase); 15292 HRESULT STDMETHODCALLTYPE IShellLinkW_GetWorkingDirectory_Proxy( 15293 IShellLinkW* This, 15294 LPWSTR pszDir, 15295 int cch); 15296 void __RPC_STUB IShellLinkW_GetWorkingDirectory_Stub( 15297 IRpcStubBuffer* This, 15298 IRpcChannelBuffer* pRpcChannelBuffer, 15299 PRPC_MESSAGE pRpcMessage, 15300 DWORD* pdwStubPhase); 15301 HRESULT STDMETHODCALLTYPE IShellLinkW_SetWorkingDirectory_Proxy( 15302 IShellLinkW* This, 15303 LPCWSTR pszDir); 15304 void __RPC_STUB IShellLinkW_SetWorkingDirectory_Stub( 15305 IRpcStubBuffer* This, 15306 IRpcChannelBuffer* pRpcChannelBuffer, 15307 PRPC_MESSAGE pRpcMessage, 15308 DWORD* pdwStubPhase); 15309 HRESULT STDMETHODCALLTYPE IShellLinkW_GetArguments_Proxy( 15310 IShellLinkW* This, 15311 LPWSTR pszArgs, 15312 int cch); 15313 void __RPC_STUB IShellLinkW_GetArguments_Stub( 15314 IRpcStubBuffer* This, 15315 IRpcChannelBuffer* pRpcChannelBuffer, 15316 PRPC_MESSAGE pRpcMessage, 15317 DWORD* pdwStubPhase); 15318 HRESULT STDMETHODCALLTYPE IShellLinkW_SetArguments_Proxy( 15319 IShellLinkW* This, 15320 LPCWSTR pszArgs); 15321 void __RPC_STUB IShellLinkW_SetArguments_Stub( 15322 IRpcStubBuffer* This, 15323 IRpcChannelBuffer* pRpcChannelBuffer, 15324 PRPC_MESSAGE pRpcMessage, 15325 DWORD* pdwStubPhase); 15326 HRESULT STDMETHODCALLTYPE IShellLinkW_GetHotkey_Proxy( 15327 IShellLinkW* This, 15328 WORD *pwHotkey); 15329 void __RPC_STUB IShellLinkW_GetHotkey_Stub( 15330 IRpcStubBuffer* This, 15331 IRpcChannelBuffer* pRpcChannelBuffer, 15332 PRPC_MESSAGE pRpcMessage, 15333 DWORD* pdwStubPhase); 15334 HRESULT STDMETHODCALLTYPE IShellLinkW_SetHotkey_Proxy( 15335 IShellLinkW* This, 15336 WORD wHotkey); 15337 void __RPC_STUB IShellLinkW_SetHotkey_Stub( 15338 IRpcStubBuffer* This, 15339 IRpcChannelBuffer* pRpcChannelBuffer, 15340 PRPC_MESSAGE pRpcMessage, 15341 DWORD* pdwStubPhase); 15342 HRESULT STDMETHODCALLTYPE IShellLinkW_GetShowCmd_Proxy( 15343 IShellLinkW* This, 15344 int *piShowCmd); 15345 void __RPC_STUB IShellLinkW_GetShowCmd_Stub( 15346 IRpcStubBuffer* This, 15347 IRpcChannelBuffer* pRpcChannelBuffer, 15348 PRPC_MESSAGE pRpcMessage, 15349 DWORD* pdwStubPhase); 15350 HRESULT STDMETHODCALLTYPE IShellLinkW_SetShowCmd_Proxy( 15351 IShellLinkW* This, 15352 int iShowCmd); 15353 void __RPC_STUB IShellLinkW_SetShowCmd_Stub( 15354 IRpcStubBuffer* This, 15355 IRpcChannelBuffer* pRpcChannelBuffer, 15356 PRPC_MESSAGE pRpcMessage, 15357 DWORD* pdwStubPhase); 15358 HRESULT STDMETHODCALLTYPE IShellLinkW_GetIconLocation_Proxy( 15359 IShellLinkW* This, 15360 LPWSTR pszIconPath, 15361 int cch, 15362 int *piIcon); 15363 void __RPC_STUB IShellLinkW_GetIconLocation_Stub( 15364 IRpcStubBuffer* This, 15365 IRpcChannelBuffer* pRpcChannelBuffer, 15366 PRPC_MESSAGE pRpcMessage, 15367 DWORD* pdwStubPhase); 15368 HRESULT STDMETHODCALLTYPE IShellLinkW_SetIconLocation_Proxy( 15369 IShellLinkW* This, 15370 LPCWSTR pszIconPath, 15371 int iIcon); 15372 void __RPC_STUB IShellLinkW_SetIconLocation_Stub( 15373 IRpcStubBuffer* This, 15374 IRpcChannelBuffer* pRpcChannelBuffer, 15375 PRPC_MESSAGE pRpcMessage, 15376 DWORD* pdwStubPhase); 15377 HRESULT STDMETHODCALLTYPE IShellLinkW_SetRelativePath_Proxy( 15378 IShellLinkW* This, 15379 LPCWSTR pszPathRel, 15380 DWORD dwReserved); 15381 void __RPC_STUB IShellLinkW_SetRelativePath_Stub( 15382 IRpcStubBuffer* This, 15383 IRpcChannelBuffer* pRpcChannelBuffer, 15384 PRPC_MESSAGE pRpcMessage, 15385 DWORD* pdwStubPhase); 15386 HRESULT STDMETHODCALLTYPE IShellLinkW_Resolve_Proxy( 15387 IShellLinkW* This, 15388 HWND hwnd, 15389 DWORD fFlags); 15390 void __RPC_STUB IShellLinkW_Resolve_Stub( 15391 IRpcStubBuffer* This, 15392 IRpcChannelBuffer* pRpcChannelBuffer, 15393 PRPC_MESSAGE pRpcMessage, 15394 DWORD* pdwStubPhase); 15395 HRESULT STDMETHODCALLTYPE IShellLinkW_SetPath_Proxy( 15396 IShellLinkW* This, 15397 LPCWSTR pszFile); 15398 void __RPC_STUB IShellLinkW_SetPath_Stub( 15399 IRpcStubBuffer* This, 15400 IRpcChannelBuffer* pRpcChannelBuffer, 15401 PRPC_MESSAGE pRpcMessage, 15402 DWORD* pdwStubPhase); 15403 15404 #endif /* __IShellLinkW_INTERFACE_DEFINED__ */ 15405 15406 15407 /***************************************************************************** 15408 * IShellLinkDataList interface 15409 */ 15410 #ifndef __IShellLinkDataList_INTERFACE_DEFINED__ 15411 #define __IShellLinkDataList_INTERFACE_DEFINED__ 15412 15413 DEFINE_GUID(IID_IShellLinkDataList, 0x45e2b4ae, 0xb1c3, 0x11d0, 0xb9,0x2f, 0x00,0xa0,0xc9,0x03,0x12,0xe1); 15414 #if defined(__cplusplus) && !defined(CINTERFACE) 15415 MIDL_INTERFACE("45e2b4ae-b1c3-11d0-b92f-00a0c90312e1") 15416 IShellLinkDataList : public IUnknown 15417 { 15418 virtual HRESULT STDMETHODCALLTYPE AddDataBlock( 15419 void *pDataBlock) = 0; 15420 15421 virtual HRESULT STDMETHODCALLTYPE CopyDataBlock( 15422 DWORD dwSig, 15423 void **ppDataBlock) = 0; 15424 15425 virtual HRESULT STDMETHODCALLTYPE RemoveDataBlock( 15426 DWORD dwSig) = 0; 15427 15428 virtual HRESULT STDMETHODCALLTYPE GetFlags( 15429 DWORD *pdwFlags) = 0; 15430 15431 virtual HRESULT STDMETHODCALLTYPE SetFlags( 15432 DWORD dwFlags) = 0; 15433 15434 }; 15435 #ifdef __CRT_UUID_DECL 15436 __CRT_UUID_DECL(IShellLinkDataList, 0x45e2b4ae, 0xb1c3, 0x11d0, 0xb9,0x2f, 0x00,0xa0,0xc9,0x03,0x12,0xe1) 15437 #endif 15438 #else 15439 typedef struct IShellLinkDataListVtbl { 15440 BEGIN_INTERFACE 15441 15442 /*** IUnknown methods ***/ 15443 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 15444 IShellLinkDataList* This, 15445 REFIID riid, 15446 void **ppvObject); 15447 15448 ULONG (STDMETHODCALLTYPE *AddRef)( 15449 IShellLinkDataList* This); 15450 15451 ULONG (STDMETHODCALLTYPE *Release)( 15452 IShellLinkDataList* This); 15453 15454 /*** IShellLinkDataList methods ***/ 15455 HRESULT (STDMETHODCALLTYPE *AddDataBlock)( 15456 IShellLinkDataList* This, 15457 void *pDataBlock); 15458 15459 HRESULT (STDMETHODCALLTYPE *CopyDataBlock)( 15460 IShellLinkDataList* This, 15461 DWORD dwSig, 15462 void **ppDataBlock); 15463 15464 HRESULT (STDMETHODCALLTYPE *RemoveDataBlock)( 15465 IShellLinkDataList* This, 15466 DWORD dwSig); 15467 15468 HRESULT (STDMETHODCALLTYPE *GetFlags)( 15469 IShellLinkDataList* This, 15470 DWORD *pdwFlags); 15471 15472 HRESULT (STDMETHODCALLTYPE *SetFlags)( 15473 IShellLinkDataList* This, 15474 DWORD dwFlags); 15475 15476 END_INTERFACE 15477 } IShellLinkDataListVtbl; 15478 interface IShellLinkDataList { 15479 CONST_VTBL IShellLinkDataListVtbl* lpVtbl; 15480 }; 15481 15482 #ifdef COBJMACROS 15483 #ifndef WIDL_C_INLINE_WRAPPERS 15484 /*** IUnknown methods ***/ 15485 #define IShellLinkDataList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15486 #define IShellLinkDataList_AddRef(This) (This)->lpVtbl->AddRef(This) 15487 #define IShellLinkDataList_Release(This) (This)->lpVtbl->Release(This) 15488 /*** IShellLinkDataList methods ***/ 15489 #define IShellLinkDataList_AddDataBlock(This,pDataBlock) (This)->lpVtbl->AddDataBlock(This,pDataBlock) 15490 #define IShellLinkDataList_CopyDataBlock(This,dwSig,ppDataBlock) (This)->lpVtbl->CopyDataBlock(This,dwSig,ppDataBlock) 15491 #define IShellLinkDataList_RemoveDataBlock(This,dwSig) (This)->lpVtbl->RemoveDataBlock(This,dwSig) 15492 #define IShellLinkDataList_GetFlags(This,pdwFlags) (This)->lpVtbl->GetFlags(This,pdwFlags) 15493 #define IShellLinkDataList_SetFlags(This,dwFlags) (This)->lpVtbl->SetFlags(This,dwFlags) 15494 #else 15495 /*** IUnknown methods ***/ 15496 static FORCEINLINE HRESULT IShellLinkDataList_QueryInterface(IShellLinkDataList* This,REFIID riid,void **ppvObject) { 15497 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 15498 } 15499 static FORCEINLINE ULONG IShellLinkDataList_AddRef(IShellLinkDataList* This) { 15500 return This->lpVtbl->AddRef(This); 15501 } 15502 static FORCEINLINE ULONG IShellLinkDataList_Release(IShellLinkDataList* This) { 15503 return This->lpVtbl->Release(This); 15504 } 15505 /*** IShellLinkDataList methods ***/ 15506 static FORCEINLINE HRESULT IShellLinkDataList_AddDataBlock(IShellLinkDataList* This,void *pDataBlock) { 15507 return This->lpVtbl->AddDataBlock(This,pDataBlock); 15508 } 15509 static FORCEINLINE HRESULT IShellLinkDataList_CopyDataBlock(IShellLinkDataList* This,DWORD dwSig,void **ppDataBlock) { 15510 return This->lpVtbl->CopyDataBlock(This,dwSig,ppDataBlock); 15511 } 15512 static FORCEINLINE HRESULT IShellLinkDataList_RemoveDataBlock(IShellLinkDataList* This,DWORD dwSig) { 15513 return This->lpVtbl->RemoveDataBlock(This,dwSig); 15514 } 15515 static FORCEINLINE HRESULT IShellLinkDataList_GetFlags(IShellLinkDataList* This,DWORD *pdwFlags) { 15516 return This->lpVtbl->GetFlags(This,pdwFlags); 15517 } 15518 static FORCEINLINE HRESULT IShellLinkDataList_SetFlags(IShellLinkDataList* This,DWORD dwFlags) { 15519 return This->lpVtbl->SetFlags(This,dwFlags); 15520 } 15521 #endif 15522 #endif 15523 15524 #endif 15525 15526 HRESULT STDMETHODCALLTYPE IShellLinkDataList_RemoveDataBlock_Proxy( 15527 IShellLinkDataList* This, 15528 DWORD dwSig); 15529 void __RPC_STUB IShellLinkDataList_RemoveDataBlock_Stub( 15530 IRpcStubBuffer* This, 15531 IRpcChannelBuffer* pRpcChannelBuffer, 15532 PRPC_MESSAGE pRpcMessage, 15533 DWORD* pdwStubPhase); 15534 HRESULT STDMETHODCALLTYPE IShellLinkDataList_GetFlags_Proxy( 15535 IShellLinkDataList* This, 15536 DWORD *pdwFlags); 15537 void __RPC_STUB IShellLinkDataList_GetFlags_Stub( 15538 IRpcStubBuffer* This, 15539 IRpcChannelBuffer* pRpcChannelBuffer, 15540 PRPC_MESSAGE pRpcMessage, 15541 DWORD* pdwStubPhase); 15542 HRESULT STDMETHODCALLTYPE IShellLinkDataList_SetFlags_Proxy( 15543 IShellLinkDataList* This, 15544 DWORD dwFlags); 15545 void __RPC_STUB IShellLinkDataList_SetFlags_Stub( 15546 IRpcStubBuffer* This, 15547 IRpcChannelBuffer* pRpcChannelBuffer, 15548 PRPC_MESSAGE pRpcMessage, 15549 DWORD* pdwStubPhase); 15550 15551 #endif /* __IShellLinkDataList_INTERFACE_DEFINED__ */ 15552 15553 15554 /***************************************************************************** 15555 * IResolveShellLink interface 15556 */ 15557 #ifndef __IResolveShellLink_INTERFACE_DEFINED__ 15558 #define __IResolveShellLink_INTERFACE_DEFINED__ 15559 15560 DEFINE_GUID(IID_IResolveShellLink, 0x5cd52983, 0x9449, 0x11d2, 0x96,0x3a, 0x00,0xc0,0x4f,0x79,0xad,0xf0); 15561 #if defined(__cplusplus) && !defined(CINTERFACE) 15562 MIDL_INTERFACE("5cd52983-9449-11d2-963a-00c04f79adf0") 15563 IResolveShellLink : public IUnknown 15564 { 15565 virtual HRESULT STDMETHODCALLTYPE ResolveShellLink( 15566 IUnknown *punkLink, 15567 HWND hwnd, 15568 DWORD fFlags) = 0; 15569 15570 }; 15571 #ifdef __CRT_UUID_DECL 15572 __CRT_UUID_DECL(IResolveShellLink, 0x5cd52983, 0x9449, 0x11d2, 0x96,0x3a, 0x00,0xc0,0x4f,0x79,0xad,0xf0) 15573 #endif 15574 #else 15575 typedef struct IResolveShellLinkVtbl { 15576 BEGIN_INTERFACE 15577 15578 /*** IUnknown methods ***/ 15579 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 15580 IResolveShellLink* This, 15581 REFIID riid, 15582 void **ppvObject); 15583 15584 ULONG (STDMETHODCALLTYPE *AddRef)( 15585 IResolveShellLink* This); 15586 15587 ULONG (STDMETHODCALLTYPE *Release)( 15588 IResolveShellLink* This); 15589 15590 /*** IResolveShellLink methods ***/ 15591 HRESULT (STDMETHODCALLTYPE *ResolveShellLink)( 15592 IResolveShellLink* This, 15593 IUnknown *punkLink, 15594 HWND hwnd, 15595 DWORD fFlags); 15596 15597 END_INTERFACE 15598 } IResolveShellLinkVtbl; 15599 interface IResolveShellLink { 15600 CONST_VTBL IResolveShellLinkVtbl* lpVtbl; 15601 }; 15602 15603 #ifdef COBJMACROS 15604 #ifndef WIDL_C_INLINE_WRAPPERS 15605 /*** IUnknown methods ***/ 15606 #define IResolveShellLink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15607 #define IResolveShellLink_AddRef(This) (This)->lpVtbl->AddRef(This) 15608 #define IResolveShellLink_Release(This) (This)->lpVtbl->Release(This) 15609 /*** IResolveShellLink methods ***/ 15610 #define IResolveShellLink_ResolveShellLink(This,punkLink,hwnd,fFlags) (This)->lpVtbl->ResolveShellLink(This,punkLink,hwnd,fFlags) 15611 #else 15612 /*** IUnknown methods ***/ 15613 static FORCEINLINE HRESULT IResolveShellLink_QueryInterface(IResolveShellLink* This,REFIID riid,void **ppvObject) { 15614 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 15615 } 15616 static FORCEINLINE ULONG IResolveShellLink_AddRef(IResolveShellLink* This) { 15617 return This->lpVtbl->AddRef(This); 15618 } 15619 static FORCEINLINE ULONG IResolveShellLink_Release(IResolveShellLink* This) { 15620 return This->lpVtbl->Release(This); 15621 } 15622 /*** IResolveShellLink methods ***/ 15623 static FORCEINLINE HRESULT IResolveShellLink_ResolveShellLink(IResolveShellLink* This,IUnknown *punkLink,HWND hwnd,DWORD fFlags) { 15624 return This->lpVtbl->ResolveShellLink(This,punkLink,hwnd,fFlags); 15625 } 15626 #endif 15627 #endif 15628 15629 #endif 15630 15631 HRESULT STDMETHODCALLTYPE IResolveShellLink_ResolveShellLink_Proxy( 15632 IResolveShellLink* This, 15633 IUnknown *punkLink, 15634 HWND hwnd, 15635 DWORD fFlags); 15636 void __RPC_STUB IResolveShellLink_ResolveShellLink_Stub( 15637 IRpcStubBuffer* This, 15638 IRpcChannelBuffer* pRpcChannelBuffer, 15639 PRPC_MESSAGE pRpcMessage, 15640 DWORD* pdwStubPhase); 15641 15642 #endif /* __IResolveShellLink_INTERFACE_DEFINED__ */ 15643 15644 15645 /***************************************************************************** 15646 * IActionProgressDialog interface 15647 */ 15648 #ifndef __IActionProgressDialog_INTERFACE_DEFINED__ 15649 #define __IActionProgressDialog_INTERFACE_DEFINED__ 15650 15651 enum _SPINITF { 15652 SPINITF_NORMAL = 0x0, 15653 SPINITF_MODAL = 0x1, 15654 SPINITF_NOMINIMIZE = 0x8 15655 }; 15656 15657 15658 typedef DWORD SPINITF; 15659 15660 DEFINE_GUID(IID_IActionProgressDialog, 0x49ff1172, 0xeadc, 0x446d, 0x92,0x85, 0x15,0x64,0x53,0xa6,0x43,0x1c); 15661 #if defined(__cplusplus) && !defined(CINTERFACE) 15662 MIDL_INTERFACE("49ff1172-eadc-446d-9285-156453a6431c") 15663 IActionProgressDialog : public IUnknown 15664 { 15665 virtual HRESULT STDMETHODCALLTYPE Initialize( 15666 SPINITF flags, 15667 LPCWSTR pszTitle, 15668 LPCWSTR pszCancel) = 0; 15669 15670 virtual HRESULT STDMETHODCALLTYPE Stop( 15671 ) = 0; 15672 15673 }; 15674 #ifdef __CRT_UUID_DECL 15675 __CRT_UUID_DECL(IActionProgressDialog, 0x49ff1172, 0xeadc, 0x446d, 0x92,0x85, 0x15,0x64,0x53,0xa6,0x43,0x1c) 15676 #endif 15677 #else 15678 typedef struct IActionProgressDialogVtbl { 15679 BEGIN_INTERFACE 15680 15681 /*** IUnknown methods ***/ 15682 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 15683 IActionProgressDialog* This, 15684 REFIID riid, 15685 void **ppvObject); 15686 15687 ULONG (STDMETHODCALLTYPE *AddRef)( 15688 IActionProgressDialog* This); 15689 15690 ULONG (STDMETHODCALLTYPE *Release)( 15691 IActionProgressDialog* This); 15692 15693 /*** IActionProgressDialog methods ***/ 15694 HRESULT (STDMETHODCALLTYPE *Initialize)( 15695 IActionProgressDialog* This, 15696 SPINITF flags, 15697 LPCWSTR pszTitle, 15698 LPCWSTR pszCancel); 15699 15700 HRESULT (STDMETHODCALLTYPE *Stop)( 15701 IActionProgressDialog* This); 15702 15703 END_INTERFACE 15704 } IActionProgressDialogVtbl; 15705 interface IActionProgressDialog { 15706 CONST_VTBL IActionProgressDialogVtbl* lpVtbl; 15707 }; 15708 15709 #ifdef COBJMACROS 15710 #ifndef WIDL_C_INLINE_WRAPPERS 15711 /*** IUnknown methods ***/ 15712 #define IActionProgressDialog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15713 #define IActionProgressDialog_AddRef(This) (This)->lpVtbl->AddRef(This) 15714 #define IActionProgressDialog_Release(This) (This)->lpVtbl->Release(This) 15715 /*** IActionProgressDialog methods ***/ 15716 #define IActionProgressDialog_Initialize(This,flags,pszTitle,pszCancel) (This)->lpVtbl->Initialize(This,flags,pszTitle,pszCancel) 15717 #define IActionProgressDialog_Stop(This) (This)->lpVtbl->Stop(This) 15718 #else 15719 /*** IUnknown methods ***/ 15720 static FORCEINLINE HRESULT IActionProgressDialog_QueryInterface(IActionProgressDialog* This,REFIID riid,void **ppvObject) { 15721 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 15722 } 15723 static FORCEINLINE ULONG IActionProgressDialog_AddRef(IActionProgressDialog* This) { 15724 return This->lpVtbl->AddRef(This); 15725 } 15726 static FORCEINLINE ULONG IActionProgressDialog_Release(IActionProgressDialog* This) { 15727 return This->lpVtbl->Release(This); 15728 } 15729 /*** IActionProgressDialog methods ***/ 15730 static FORCEINLINE HRESULT IActionProgressDialog_Initialize(IActionProgressDialog* This,SPINITF flags,LPCWSTR pszTitle,LPCWSTR pszCancel) { 15731 return This->lpVtbl->Initialize(This,flags,pszTitle,pszCancel); 15732 } 15733 static FORCEINLINE HRESULT IActionProgressDialog_Stop(IActionProgressDialog* This) { 15734 return This->lpVtbl->Stop(This); 15735 } 15736 #endif 15737 #endif 15738 15739 #endif 15740 15741 HRESULT STDMETHODCALLTYPE IActionProgressDialog_Initialize_Proxy( 15742 IActionProgressDialog* This, 15743 SPINITF flags, 15744 LPCWSTR pszTitle, 15745 LPCWSTR pszCancel); 15746 void __RPC_STUB IActionProgressDialog_Initialize_Stub( 15747 IRpcStubBuffer* This, 15748 IRpcChannelBuffer* pRpcChannelBuffer, 15749 PRPC_MESSAGE pRpcMessage, 15750 DWORD* pdwStubPhase); 15751 HRESULT STDMETHODCALLTYPE IActionProgressDialog_Stop_Proxy( 15752 IActionProgressDialog* This); 15753 void __RPC_STUB IActionProgressDialog_Stop_Stub( 15754 IRpcStubBuffer* This, 15755 IRpcChannelBuffer* pRpcChannelBuffer, 15756 PRPC_MESSAGE pRpcMessage, 15757 DWORD* pdwStubPhase); 15758 15759 #endif /* __IActionProgressDialog_INTERFACE_DEFINED__ */ 15760 15761 15762 /***************************************************************************** 15763 * IHWEventHandler interface 15764 */ 15765 #ifndef __IHWEventHandler_INTERFACE_DEFINED__ 15766 #define __IHWEventHandler_INTERFACE_DEFINED__ 15767 15768 DEFINE_GUID(IID_IHWEventHandler, 0xc1fb73d0, 0xec3a, 0x4ba2, 0xb5,0x12, 0x8c,0xdb,0x91,0x87,0xb6,0xd1); 15769 #if defined(__cplusplus) && !defined(CINTERFACE) 15770 MIDL_INTERFACE("c1fb73d0-ec3a-4ba2-b512-8cdb9187b6d1") 15771 IHWEventHandler : public IUnknown 15772 { 15773 virtual HRESULT STDMETHODCALLTYPE Initialize( 15774 LPCWSTR pszParams) = 0; 15775 15776 virtual HRESULT STDMETHODCALLTYPE HandleEvent( 15777 LPCWSTR pszDeviceID, 15778 LPCWSTR pszAltDeviceID, 15779 LPCWSTR pszEventType) = 0; 15780 15781 virtual HRESULT STDMETHODCALLTYPE HandleEventWithContent( 15782 LPCWSTR pszDeviceID, 15783 LPCWSTR pszAltDeviceID, 15784 LPCWSTR pszEventType, 15785 LPCWSTR pszContentTypeHandler, 15786 IDataObject *pdataobject) = 0; 15787 15788 }; 15789 #ifdef __CRT_UUID_DECL 15790 __CRT_UUID_DECL(IHWEventHandler, 0xc1fb73d0, 0xec3a, 0x4ba2, 0xb5,0x12, 0x8c,0xdb,0x91,0x87,0xb6,0xd1) 15791 #endif 15792 #else 15793 typedef struct IHWEventHandlerVtbl { 15794 BEGIN_INTERFACE 15795 15796 /*** IUnknown methods ***/ 15797 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 15798 IHWEventHandler* This, 15799 REFIID riid, 15800 void **ppvObject); 15801 15802 ULONG (STDMETHODCALLTYPE *AddRef)( 15803 IHWEventHandler* This); 15804 15805 ULONG (STDMETHODCALLTYPE *Release)( 15806 IHWEventHandler* This); 15807 15808 /*** IHWEventHandler methods ***/ 15809 HRESULT (STDMETHODCALLTYPE *Initialize)( 15810 IHWEventHandler* This, 15811 LPCWSTR pszParams); 15812 15813 HRESULT (STDMETHODCALLTYPE *HandleEvent)( 15814 IHWEventHandler* This, 15815 LPCWSTR pszDeviceID, 15816 LPCWSTR pszAltDeviceID, 15817 LPCWSTR pszEventType); 15818 15819 HRESULT (STDMETHODCALLTYPE *HandleEventWithContent)( 15820 IHWEventHandler* This, 15821 LPCWSTR pszDeviceID, 15822 LPCWSTR pszAltDeviceID, 15823 LPCWSTR pszEventType, 15824 LPCWSTR pszContentTypeHandler, 15825 IDataObject *pdataobject); 15826 15827 END_INTERFACE 15828 } IHWEventHandlerVtbl; 15829 interface IHWEventHandler { 15830 CONST_VTBL IHWEventHandlerVtbl* lpVtbl; 15831 }; 15832 15833 #ifdef COBJMACROS 15834 #ifndef WIDL_C_INLINE_WRAPPERS 15835 /*** IUnknown methods ***/ 15836 #define IHWEventHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15837 #define IHWEventHandler_AddRef(This) (This)->lpVtbl->AddRef(This) 15838 #define IHWEventHandler_Release(This) (This)->lpVtbl->Release(This) 15839 /*** IHWEventHandler methods ***/ 15840 #define IHWEventHandler_Initialize(This,pszParams) (This)->lpVtbl->Initialize(This,pszParams) 15841 #define IHWEventHandler_HandleEvent(This,pszDeviceID,pszAltDeviceID,pszEventType) (This)->lpVtbl->HandleEvent(This,pszDeviceID,pszAltDeviceID,pszEventType) 15842 #define IHWEventHandler_HandleEventWithContent(This,pszDeviceID,pszAltDeviceID,pszEventType,pszContentTypeHandler,pdataobject) (This)->lpVtbl->HandleEventWithContent(This,pszDeviceID,pszAltDeviceID,pszEventType,pszContentTypeHandler,pdataobject) 15843 #else 15844 /*** IUnknown methods ***/ 15845 static FORCEINLINE HRESULT IHWEventHandler_QueryInterface(IHWEventHandler* This,REFIID riid,void **ppvObject) { 15846 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 15847 } 15848 static FORCEINLINE ULONG IHWEventHandler_AddRef(IHWEventHandler* This) { 15849 return This->lpVtbl->AddRef(This); 15850 } 15851 static FORCEINLINE ULONG IHWEventHandler_Release(IHWEventHandler* This) { 15852 return This->lpVtbl->Release(This); 15853 } 15854 /*** IHWEventHandler methods ***/ 15855 static FORCEINLINE HRESULT IHWEventHandler_Initialize(IHWEventHandler* This,LPCWSTR pszParams) { 15856 return This->lpVtbl->Initialize(This,pszParams); 15857 } 15858 static FORCEINLINE HRESULT IHWEventHandler_HandleEvent(IHWEventHandler* This,LPCWSTR pszDeviceID,LPCWSTR pszAltDeviceID,LPCWSTR pszEventType) { 15859 return This->lpVtbl->HandleEvent(This,pszDeviceID,pszAltDeviceID,pszEventType); 15860 } 15861 static FORCEINLINE HRESULT IHWEventHandler_HandleEventWithContent(IHWEventHandler* This,LPCWSTR pszDeviceID,LPCWSTR pszAltDeviceID,LPCWSTR pszEventType,LPCWSTR pszContentTypeHandler,IDataObject *pdataobject) { 15862 return This->lpVtbl->HandleEventWithContent(This,pszDeviceID,pszAltDeviceID,pszEventType,pszContentTypeHandler,pdataobject); 15863 } 15864 #endif 15865 #endif 15866 15867 #endif 15868 15869 HRESULT STDMETHODCALLTYPE IHWEventHandler_Initialize_Proxy( 15870 IHWEventHandler* This, 15871 LPCWSTR pszParams); 15872 void __RPC_STUB IHWEventHandler_Initialize_Stub( 15873 IRpcStubBuffer* This, 15874 IRpcChannelBuffer* pRpcChannelBuffer, 15875 PRPC_MESSAGE pRpcMessage, 15876 DWORD* pdwStubPhase); 15877 HRESULT STDMETHODCALLTYPE IHWEventHandler_HandleEvent_Proxy( 15878 IHWEventHandler* This, 15879 LPCWSTR pszDeviceID, 15880 LPCWSTR pszAltDeviceID, 15881 LPCWSTR pszEventType); 15882 void __RPC_STUB IHWEventHandler_HandleEvent_Stub( 15883 IRpcStubBuffer* This, 15884 IRpcChannelBuffer* pRpcChannelBuffer, 15885 PRPC_MESSAGE pRpcMessage, 15886 DWORD* pdwStubPhase); 15887 HRESULT STDMETHODCALLTYPE IHWEventHandler_HandleEventWithContent_Proxy( 15888 IHWEventHandler* This, 15889 LPCWSTR pszDeviceID, 15890 LPCWSTR pszAltDeviceID, 15891 LPCWSTR pszEventType, 15892 LPCWSTR pszContentTypeHandler, 15893 IDataObject *pdataobject); 15894 void __RPC_STUB IHWEventHandler_HandleEventWithContent_Stub( 15895 IRpcStubBuffer* This, 15896 IRpcChannelBuffer* pRpcChannelBuffer, 15897 PRPC_MESSAGE pRpcMessage, 15898 DWORD* pdwStubPhase); 15899 15900 #endif /* __IHWEventHandler_INTERFACE_DEFINED__ */ 15901 15902 15903 /***************************************************************************** 15904 * IHWEventHandler2 interface 15905 */ 15906 #ifndef __IHWEventHandler2_INTERFACE_DEFINED__ 15907 #define __IHWEventHandler2_INTERFACE_DEFINED__ 15908 15909 DEFINE_GUID(IID_IHWEventHandler2, 0xcfcc809f, 0x295d, 0x42e8, 0x9f,0xfc, 0x42,0x4b,0x33,0xc4,0x87,0xe6); 15910 #if defined(__cplusplus) && !defined(CINTERFACE) 15911 MIDL_INTERFACE("cfcc809f-295d-42e8-9ffc-424b33c487e6") 15912 IHWEventHandler2 : public IHWEventHandler 15913 { 15914 virtual HRESULT STDMETHODCALLTYPE HandleEventWithHWND( 15915 LPCWSTR pszDeviceID, 15916 LPCWSTR pszAltDeviceID, 15917 LPCWSTR pszEventType, 15918 HWND hwndOwner) = 0; 15919 15920 }; 15921 #ifdef __CRT_UUID_DECL 15922 __CRT_UUID_DECL(IHWEventHandler2, 0xcfcc809f, 0x295d, 0x42e8, 0x9f,0xfc, 0x42,0x4b,0x33,0xc4,0x87,0xe6) 15923 #endif 15924 #else 15925 typedef struct IHWEventHandler2Vtbl { 15926 BEGIN_INTERFACE 15927 15928 /*** IUnknown methods ***/ 15929 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 15930 IHWEventHandler2* This, 15931 REFIID riid, 15932 void **ppvObject); 15933 15934 ULONG (STDMETHODCALLTYPE *AddRef)( 15935 IHWEventHandler2* This); 15936 15937 ULONG (STDMETHODCALLTYPE *Release)( 15938 IHWEventHandler2* This); 15939 15940 /*** IHWEventHandler methods ***/ 15941 HRESULT (STDMETHODCALLTYPE *Initialize)( 15942 IHWEventHandler2* This, 15943 LPCWSTR pszParams); 15944 15945 HRESULT (STDMETHODCALLTYPE *HandleEvent)( 15946 IHWEventHandler2* This, 15947 LPCWSTR pszDeviceID, 15948 LPCWSTR pszAltDeviceID, 15949 LPCWSTR pszEventType); 15950 15951 HRESULT (STDMETHODCALLTYPE *HandleEventWithContent)( 15952 IHWEventHandler2* This, 15953 LPCWSTR pszDeviceID, 15954 LPCWSTR pszAltDeviceID, 15955 LPCWSTR pszEventType, 15956 LPCWSTR pszContentTypeHandler, 15957 IDataObject *pdataobject); 15958 15959 /*** IHWEventHandler2 methods ***/ 15960 HRESULT (STDMETHODCALLTYPE *HandleEventWithHWND)( 15961 IHWEventHandler2* This, 15962 LPCWSTR pszDeviceID, 15963 LPCWSTR pszAltDeviceID, 15964 LPCWSTR pszEventType, 15965 HWND hwndOwner); 15966 15967 END_INTERFACE 15968 } IHWEventHandler2Vtbl; 15969 interface IHWEventHandler2 { 15970 CONST_VTBL IHWEventHandler2Vtbl* lpVtbl; 15971 }; 15972 15973 #ifdef COBJMACROS 15974 #ifndef WIDL_C_INLINE_WRAPPERS 15975 /*** IUnknown methods ***/ 15976 #define IHWEventHandler2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 15977 #define IHWEventHandler2_AddRef(This) (This)->lpVtbl->AddRef(This) 15978 #define IHWEventHandler2_Release(This) (This)->lpVtbl->Release(This) 15979 /*** IHWEventHandler methods ***/ 15980 #define IHWEventHandler2_Initialize(This,pszParams) (This)->lpVtbl->Initialize(This,pszParams) 15981 #define IHWEventHandler2_HandleEvent(This,pszDeviceID,pszAltDeviceID,pszEventType) (This)->lpVtbl->HandleEvent(This,pszDeviceID,pszAltDeviceID,pszEventType) 15982 #define IHWEventHandler2_HandleEventWithContent(This,pszDeviceID,pszAltDeviceID,pszEventType,pszContentTypeHandler,pdataobject) (This)->lpVtbl->HandleEventWithContent(This,pszDeviceID,pszAltDeviceID,pszEventType,pszContentTypeHandler,pdataobject) 15983 /*** IHWEventHandler2 methods ***/ 15984 #define IHWEventHandler2_HandleEventWithHWND(This,pszDeviceID,pszAltDeviceID,pszEventType,hwndOwner) (This)->lpVtbl->HandleEventWithHWND(This,pszDeviceID,pszAltDeviceID,pszEventType,hwndOwner) 15985 #else 15986 /*** IUnknown methods ***/ 15987 static FORCEINLINE HRESULT IHWEventHandler2_QueryInterface(IHWEventHandler2* This,REFIID riid,void **ppvObject) { 15988 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 15989 } 15990 static FORCEINLINE ULONG IHWEventHandler2_AddRef(IHWEventHandler2* This) { 15991 return This->lpVtbl->AddRef(This); 15992 } 15993 static FORCEINLINE ULONG IHWEventHandler2_Release(IHWEventHandler2* This) { 15994 return This->lpVtbl->Release(This); 15995 } 15996 /*** IHWEventHandler methods ***/ 15997 static FORCEINLINE HRESULT IHWEventHandler2_Initialize(IHWEventHandler2* This,LPCWSTR pszParams) { 15998 return This->lpVtbl->Initialize(This,pszParams); 15999 } 16000 static FORCEINLINE HRESULT IHWEventHandler2_HandleEvent(IHWEventHandler2* This,LPCWSTR pszDeviceID,LPCWSTR pszAltDeviceID,LPCWSTR pszEventType) { 16001 return This->lpVtbl->HandleEvent(This,pszDeviceID,pszAltDeviceID,pszEventType); 16002 } 16003 static FORCEINLINE HRESULT IHWEventHandler2_HandleEventWithContent(IHWEventHandler2* This,LPCWSTR pszDeviceID,LPCWSTR pszAltDeviceID,LPCWSTR pszEventType,LPCWSTR pszContentTypeHandler,IDataObject *pdataobject) { 16004 return This->lpVtbl->HandleEventWithContent(This,pszDeviceID,pszAltDeviceID,pszEventType,pszContentTypeHandler,pdataobject); 16005 } 16006 /*** IHWEventHandler2 methods ***/ 16007 static FORCEINLINE HRESULT IHWEventHandler2_HandleEventWithHWND(IHWEventHandler2* This,LPCWSTR pszDeviceID,LPCWSTR pszAltDeviceID,LPCWSTR pszEventType,HWND hwndOwner) { 16008 return This->lpVtbl->HandleEventWithHWND(This,pszDeviceID,pszAltDeviceID,pszEventType,hwndOwner); 16009 } 16010 #endif 16011 #endif 16012 16013 #endif 16014 16015 HRESULT STDMETHODCALLTYPE IHWEventHandler2_HandleEventWithHWND_Proxy( 16016 IHWEventHandler2* This, 16017 LPCWSTR pszDeviceID, 16018 LPCWSTR pszAltDeviceID, 16019 LPCWSTR pszEventType, 16020 HWND hwndOwner); 16021 void __RPC_STUB IHWEventHandler2_HandleEventWithHWND_Stub( 16022 IRpcStubBuffer* This, 16023 IRpcChannelBuffer* pRpcChannelBuffer, 16024 PRPC_MESSAGE pRpcMessage, 16025 DWORD* pdwStubPhase); 16026 16027 #endif /* __IHWEventHandler2_INTERFACE_DEFINED__ */ 16028 16029 16030 #define ARCONTENT_AUTORUNINF 0x00000002 16031 #define ARCONTENT_AUDIOCD 0x00000004 16032 #define ARCONTENT_DVDMOVIE 0x00000008 16033 #define ARCONTENT_BLANKCD 0x00000010 16034 #define ARCONTENT_BLANKDVD 0x00000020 16035 #define ARCONTENT_UNKNOWNCONTENT 0x00000040 16036 #define ARCONTENT_AUTOPLAYPIX 0x00000080 16037 #define ARCONTENT_AUTOPLAYMUSIC 0x00000100 16038 #define ARCONTENT_AUTOPLAYVIDEO 0x00000200 16039 16040 #if NTDDI_VERSION >= NTDDI_VISTA 16041 #define ARCONTENT_VCD 0x00000400 16042 #define ARCONTENT_SVCD 0x00000800 16043 #define ARCONTENT_DVDAUDIO 0x00001000 16044 #define ARCONTENT_BLANKBD 0x00002000 16045 #define ARCONTENT_BLURAY 0x00004000 16046 #define ARCONTENT_CAMERASTORAGE 0x00008000 16047 #define ARCONTENT_CUSTOMEVENT 0x00010000 16048 #define ARCONTENT_NONE 0x00000000 16049 #define ARCONTENT_MASK 0x0001FFFE 16050 16051 #define ARCONTENT_PHASE_UNKNOWN 0x00000000 16052 #define ARCONTENT_PHASE_PRESNIFF 0x10000000 16053 #define ARCONTENT_PHASE_SNIFFING 0x20000000 16054 #define ARCONTENT_PHASE_FINAL 0x40000000 16055 #define ARCONTENT_PHASE_MASK 0x70000000 16056 #endif 16057 16058 /***************************************************************************** 16059 * IQueryCancelAutoPlay interface 16060 */ 16061 #ifndef __IQueryCancelAutoPlay_INTERFACE_DEFINED__ 16062 #define __IQueryCancelAutoPlay_INTERFACE_DEFINED__ 16063 16064 DEFINE_GUID(IID_IQueryCancelAutoPlay, 0xddefe873, 0x6997, 0x4e68, 0xbe,0x26, 0x39,0xb6,0x33,0xad,0xbe,0x12); 16065 #if defined(__cplusplus) && !defined(CINTERFACE) 16066 MIDL_INTERFACE("ddefe873-6997-4e68-be26-39b633adbe12") 16067 IQueryCancelAutoPlay : public IUnknown 16068 { 16069 virtual HRESULT STDMETHODCALLTYPE AllowAutoPlay( 16070 LPCWSTR pszPath, 16071 DWORD dwContentType, 16072 LPCWSTR pszLabel, 16073 DWORD dwSerialNumber) = 0; 16074 16075 }; 16076 #ifdef __CRT_UUID_DECL 16077 __CRT_UUID_DECL(IQueryCancelAutoPlay, 0xddefe873, 0x6997, 0x4e68, 0xbe,0x26, 0x39,0xb6,0x33,0xad,0xbe,0x12) 16078 #endif 16079 #else 16080 typedef struct IQueryCancelAutoPlayVtbl { 16081 BEGIN_INTERFACE 16082 16083 /*** IUnknown methods ***/ 16084 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 16085 IQueryCancelAutoPlay* This, 16086 REFIID riid, 16087 void **ppvObject); 16088 16089 ULONG (STDMETHODCALLTYPE *AddRef)( 16090 IQueryCancelAutoPlay* This); 16091 16092 ULONG (STDMETHODCALLTYPE *Release)( 16093 IQueryCancelAutoPlay* This); 16094 16095 /*** IQueryCancelAutoPlay methods ***/ 16096 HRESULT (STDMETHODCALLTYPE *AllowAutoPlay)( 16097 IQueryCancelAutoPlay* This, 16098 LPCWSTR pszPath, 16099 DWORD dwContentType, 16100 LPCWSTR pszLabel, 16101 DWORD dwSerialNumber); 16102 16103 END_INTERFACE 16104 } IQueryCancelAutoPlayVtbl; 16105 interface IQueryCancelAutoPlay { 16106 CONST_VTBL IQueryCancelAutoPlayVtbl* lpVtbl; 16107 }; 16108 16109 #ifdef COBJMACROS 16110 #ifndef WIDL_C_INLINE_WRAPPERS 16111 /*** IUnknown methods ***/ 16112 #define IQueryCancelAutoPlay_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16113 #define IQueryCancelAutoPlay_AddRef(This) (This)->lpVtbl->AddRef(This) 16114 #define IQueryCancelAutoPlay_Release(This) (This)->lpVtbl->Release(This) 16115 /*** IQueryCancelAutoPlay methods ***/ 16116 #define IQueryCancelAutoPlay_AllowAutoPlay(This,pszPath,dwContentType,pszLabel,dwSerialNumber) (This)->lpVtbl->AllowAutoPlay(This,pszPath,dwContentType,pszLabel,dwSerialNumber) 16117 #else 16118 /*** IUnknown methods ***/ 16119 static FORCEINLINE HRESULT IQueryCancelAutoPlay_QueryInterface(IQueryCancelAutoPlay* This,REFIID riid,void **ppvObject) { 16120 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 16121 } 16122 static FORCEINLINE ULONG IQueryCancelAutoPlay_AddRef(IQueryCancelAutoPlay* This) { 16123 return This->lpVtbl->AddRef(This); 16124 } 16125 static FORCEINLINE ULONG IQueryCancelAutoPlay_Release(IQueryCancelAutoPlay* This) { 16126 return This->lpVtbl->Release(This); 16127 } 16128 /*** IQueryCancelAutoPlay methods ***/ 16129 static FORCEINLINE HRESULT IQueryCancelAutoPlay_AllowAutoPlay(IQueryCancelAutoPlay* This,LPCWSTR pszPath,DWORD dwContentType,LPCWSTR pszLabel,DWORD dwSerialNumber) { 16130 return This->lpVtbl->AllowAutoPlay(This,pszPath,dwContentType,pszLabel,dwSerialNumber); 16131 } 16132 #endif 16133 #endif 16134 16135 #endif 16136 16137 HRESULT STDMETHODCALLTYPE IQueryCancelAutoPlay_AllowAutoPlay_Proxy( 16138 IQueryCancelAutoPlay* This, 16139 LPCWSTR pszPath, 16140 DWORD dwContentType, 16141 LPCWSTR pszLabel, 16142 DWORD dwSerialNumber); 16143 void __RPC_STUB IQueryCancelAutoPlay_AllowAutoPlay_Stub( 16144 IRpcStubBuffer* This, 16145 IRpcChannelBuffer* pRpcChannelBuffer, 16146 PRPC_MESSAGE pRpcMessage, 16147 DWORD* pdwStubPhase); 16148 16149 #endif /* __IQueryCancelAutoPlay_INTERFACE_DEFINED__ */ 16150 16151 16152 #if NTDDI_VERSION >= NTDDI_VISTA 16153 /***************************************************************************** 16154 * IDynamicHWHandler interface 16155 */ 16156 #ifndef __IDynamicHWHandler_INTERFACE_DEFINED__ 16157 #define __IDynamicHWHandler_INTERFACE_DEFINED__ 16158 16159 DEFINE_GUID(IID_IDynamicHWHandler, 0xdc2601d7, 0x059e, 0x42fc, 0xa0,0x9d, 0x2a,0xfd,0x21,0xb6,0xd5,0xf7); 16160 #if defined(__cplusplus) && !defined(CINTERFACE) 16161 MIDL_INTERFACE("dc2601d7-059e-42fc-a09d-2afd21b6d5f7") 16162 IDynamicHWHandler : public IUnknown 16163 { 16164 virtual HRESULT STDMETHODCALLTYPE GetDynamicInfo( 16165 LPCWSTR pszDeviceID, 16166 DWORD dwContentType, 16167 LPWSTR *ppszAction) = 0; 16168 16169 }; 16170 #ifdef __CRT_UUID_DECL 16171 __CRT_UUID_DECL(IDynamicHWHandler, 0xdc2601d7, 0x059e, 0x42fc, 0xa0,0x9d, 0x2a,0xfd,0x21,0xb6,0xd5,0xf7) 16172 #endif 16173 #else 16174 typedef struct IDynamicHWHandlerVtbl { 16175 BEGIN_INTERFACE 16176 16177 /*** IUnknown methods ***/ 16178 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 16179 IDynamicHWHandler* This, 16180 REFIID riid, 16181 void **ppvObject); 16182 16183 ULONG (STDMETHODCALLTYPE *AddRef)( 16184 IDynamicHWHandler* This); 16185 16186 ULONG (STDMETHODCALLTYPE *Release)( 16187 IDynamicHWHandler* This); 16188 16189 /*** IDynamicHWHandler methods ***/ 16190 HRESULT (STDMETHODCALLTYPE *GetDynamicInfo)( 16191 IDynamicHWHandler* This, 16192 LPCWSTR pszDeviceID, 16193 DWORD dwContentType, 16194 LPWSTR *ppszAction); 16195 16196 END_INTERFACE 16197 } IDynamicHWHandlerVtbl; 16198 interface IDynamicHWHandler { 16199 CONST_VTBL IDynamicHWHandlerVtbl* lpVtbl; 16200 }; 16201 16202 #ifdef COBJMACROS 16203 #ifndef WIDL_C_INLINE_WRAPPERS 16204 /*** IUnknown methods ***/ 16205 #define IDynamicHWHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16206 #define IDynamicHWHandler_AddRef(This) (This)->lpVtbl->AddRef(This) 16207 #define IDynamicHWHandler_Release(This) (This)->lpVtbl->Release(This) 16208 /*** IDynamicHWHandler methods ***/ 16209 #define IDynamicHWHandler_GetDynamicInfo(This,pszDeviceID,dwContentType,ppszAction) (This)->lpVtbl->GetDynamicInfo(This,pszDeviceID,dwContentType,ppszAction) 16210 #else 16211 /*** IUnknown methods ***/ 16212 static FORCEINLINE HRESULT IDynamicHWHandler_QueryInterface(IDynamicHWHandler* This,REFIID riid,void **ppvObject) { 16213 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 16214 } 16215 static FORCEINLINE ULONG IDynamicHWHandler_AddRef(IDynamicHWHandler* This) { 16216 return This->lpVtbl->AddRef(This); 16217 } 16218 static FORCEINLINE ULONG IDynamicHWHandler_Release(IDynamicHWHandler* This) { 16219 return This->lpVtbl->Release(This); 16220 } 16221 /*** IDynamicHWHandler methods ***/ 16222 static FORCEINLINE HRESULT IDynamicHWHandler_GetDynamicInfo(IDynamicHWHandler* This,LPCWSTR pszDeviceID,DWORD dwContentType,LPWSTR *ppszAction) { 16223 return This->lpVtbl->GetDynamicInfo(This,pszDeviceID,dwContentType,ppszAction); 16224 } 16225 #endif 16226 #endif 16227 16228 #endif 16229 16230 HRESULT STDMETHODCALLTYPE IDynamicHWHandler_GetDynamicInfo_Proxy( 16231 IDynamicHWHandler* This, 16232 LPCWSTR pszDeviceID, 16233 DWORD dwContentType, 16234 LPWSTR *ppszAction); 16235 void __RPC_STUB IDynamicHWHandler_GetDynamicInfo_Stub( 16236 IRpcStubBuffer* This, 16237 IRpcChannelBuffer* pRpcChannelBuffer, 16238 PRPC_MESSAGE pRpcMessage, 16239 DWORD* pdwStubPhase); 16240 16241 #endif /* __IDynamicHWHandler_INTERFACE_DEFINED__ */ 16242 16243 #endif 16244 16245 /***************************************************************************** 16246 * IActionProgress interface 16247 */ 16248 #ifndef __IActionProgress_INTERFACE_DEFINED__ 16249 #define __IActionProgress_INTERFACE_DEFINED__ 16250 16251 enum _SPBEGINF { 16252 SPBEGINF_NORMAL = 0x0, 16253 SPBEGINF_AUTOTIME = 0x2, 16254 SPBEGINF_NOPROGRESSBAR = 0x10, 16255 SPBEGINF_MARQUEEPROGRESS = 0x20, 16256 SPBEGINF_NOCANCELBUTTON = 0x40 16257 }; 16258 16259 16260 typedef DWORD SPBEGINF; 16261 16262 typedef enum _SPACTION { 16263 SPACTION_NONE = 0, 16264 SPACTION_MOVING = 1, 16265 SPACTION_COPYING = 2, 16266 SPACTION_RECYCLING = 3, 16267 SPACTION_APPLYINGATTRIBS = 4, 16268 SPACTION_DOWNLOADING = 5, 16269 SPACTION_SEARCHING_INTERNET = 6, 16270 SPACTION_CALCULATING = 7, 16271 SPACTION_UPLOADING = 8, 16272 SPACTION_SEARCHING_FILES = 9, 16273 SPACTION_DELETING = 10, 16274 SPACTION_RENAMING = 11, 16275 SPACTION_FORMATTING = 12, 16276 SPACTION_COPY_MOVING = 13 16277 } SPACTION; 16278 16279 typedef enum _SPTEXT { 16280 SPTEXT_ACTIONDESCRIPTION = 1, 16281 SPTEXT_ACTIONDETAIL = 2 16282 } SPTEXT; 16283 16284 DEFINE_GUID(IID_IActionProgress, 0x49ff1173, 0xeadc, 0x446d, 0x92,0x85, 0x15,0x64,0x53,0xa6,0x43,0x1c); 16285 #if defined(__cplusplus) && !defined(CINTERFACE) 16286 MIDL_INTERFACE("49ff1173-eadc-446d-9285-156453a6431c") 16287 IActionProgress : public IUnknown 16288 { 16289 virtual HRESULT STDMETHODCALLTYPE Begin( 16290 SPACTION action, 16291 SPBEGINF flags) = 0; 16292 16293 virtual HRESULT STDMETHODCALLTYPE UpdateProgress( 16294 ULONGLONG ulCompleted, 16295 ULONGLONG ulTotal) = 0; 16296 16297 virtual HRESULT STDMETHODCALLTYPE UpdateText( 16298 SPTEXT sptext, 16299 LPCWSTR pszText, 16300 WINBOOL fMayCompact) = 0; 16301 16302 virtual HRESULT STDMETHODCALLTYPE QueryCancel( 16303 WINBOOL *pfCancelled) = 0; 16304 16305 virtual HRESULT STDMETHODCALLTYPE ResetCancel( 16306 ) = 0; 16307 16308 virtual HRESULT STDMETHODCALLTYPE End( 16309 ) = 0; 16310 16311 }; 16312 #ifdef __CRT_UUID_DECL 16313 __CRT_UUID_DECL(IActionProgress, 0x49ff1173, 0xeadc, 0x446d, 0x92,0x85, 0x15,0x64,0x53,0xa6,0x43,0x1c) 16314 #endif 16315 #else 16316 typedef struct IActionProgressVtbl { 16317 BEGIN_INTERFACE 16318 16319 /*** IUnknown methods ***/ 16320 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 16321 IActionProgress* This, 16322 REFIID riid, 16323 void **ppvObject); 16324 16325 ULONG (STDMETHODCALLTYPE *AddRef)( 16326 IActionProgress* This); 16327 16328 ULONG (STDMETHODCALLTYPE *Release)( 16329 IActionProgress* This); 16330 16331 /*** IActionProgress methods ***/ 16332 HRESULT (STDMETHODCALLTYPE *Begin)( 16333 IActionProgress* This, 16334 SPACTION action, 16335 SPBEGINF flags); 16336 16337 HRESULT (STDMETHODCALLTYPE *UpdateProgress)( 16338 IActionProgress* This, 16339 ULONGLONG ulCompleted, 16340 ULONGLONG ulTotal); 16341 16342 HRESULT (STDMETHODCALLTYPE *UpdateText)( 16343 IActionProgress* This, 16344 SPTEXT sptext, 16345 LPCWSTR pszText, 16346 WINBOOL fMayCompact); 16347 16348 HRESULT (STDMETHODCALLTYPE *QueryCancel)( 16349 IActionProgress* This, 16350 WINBOOL *pfCancelled); 16351 16352 HRESULT (STDMETHODCALLTYPE *ResetCancel)( 16353 IActionProgress* This); 16354 16355 HRESULT (STDMETHODCALLTYPE *End)( 16356 IActionProgress* This); 16357 16358 END_INTERFACE 16359 } IActionProgressVtbl; 16360 interface IActionProgress { 16361 CONST_VTBL IActionProgressVtbl* lpVtbl; 16362 }; 16363 16364 #ifdef COBJMACROS 16365 #ifndef WIDL_C_INLINE_WRAPPERS 16366 /*** IUnknown methods ***/ 16367 #define IActionProgress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16368 #define IActionProgress_AddRef(This) (This)->lpVtbl->AddRef(This) 16369 #define IActionProgress_Release(This) (This)->lpVtbl->Release(This) 16370 /*** IActionProgress methods ***/ 16371 #define IActionProgress_Begin(This,action,flags) (This)->lpVtbl->Begin(This,action,flags) 16372 #define IActionProgress_UpdateProgress(This,ulCompleted,ulTotal) (This)->lpVtbl->UpdateProgress(This,ulCompleted,ulTotal) 16373 #define IActionProgress_UpdateText(This,sptext,pszText,fMayCompact) (This)->lpVtbl->UpdateText(This,sptext,pszText,fMayCompact) 16374 #define IActionProgress_QueryCancel(This,pfCancelled) (This)->lpVtbl->QueryCancel(This,pfCancelled) 16375 #define IActionProgress_ResetCancel(This) (This)->lpVtbl->ResetCancel(This) 16376 #define IActionProgress_End(This) (This)->lpVtbl->End(This) 16377 #else 16378 /*** IUnknown methods ***/ 16379 static FORCEINLINE HRESULT IActionProgress_QueryInterface(IActionProgress* This,REFIID riid,void **ppvObject) { 16380 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 16381 } 16382 static FORCEINLINE ULONG IActionProgress_AddRef(IActionProgress* This) { 16383 return This->lpVtbl->AddRef(This); 16384 } 16385 static FORCEINLINE ULONG IActionProgress_Release(IActionProgress* This) { 16386 return This->lpVtbl->Release(This); 16387 } 16388 /*** IActionProgress methods ***/ 16389 static FORCEINLINE HRESULT IActionProgress_Begin(IActionProgress* This,SPACTION action,SPBEGINF flags) { 16390 return This->lpVtbl->Begin(This,action,flags); 16391 } 16392 static FORCEINLINE HRESULT IActionProgress_UpdateProgress(IActionProgress* This,ULONGLONG ulCompleted,ULONGLONG ulTotal) { 16393 return This->lpVtbl->UpdateProgress(This,ulCompleted,ulTotal); 16394 } 16395 static FORCEINLINE HRESULT IActionProgress_UpdateText(IActionProgress* This,SPTEXT sptext,LPCWSTR pszText,WINBOOL fMayCompact) { 16396 return This->lpVtbl->UpdateText(This,sptext,pszText,fMayCompact); 16397 } 16398 static FORCEINLINE HRESULT IActionProgress_QueryCancel(IActionProgress* This,WINBOOL *pfCancelled) { 16399 return This->lpVtbl->QueryCancel(This,pfCancelled); 16400 } 16401 static FORCEINLINE HRESULT IActionProgress_ResetCancel(IActionProgress* This) { 16402 return This->lpVtbl->ResetCancel(This); 16403 } 16404 static FORCEINLINE HRESULT IActionProgress_End(IActionProgress* This) { 16405 return This->lpVtbl->End(This); 16406 } 16407 #endif 16408 #endif 16409 16410 #endif 16411 16412 HRESULT STDMETHODCALLTYPE IActionProgress_Begin_Proxy( 16413 IActionProgress* This, 16414 SPACTION action, 16415 SPBEGINF flags); 16416 void __RPC_STUB IActionProgress_Begin_Stub( 16417 IRpcStubBuffer* This, 16418 IRpcChannelBuffer* pRpcChannelBuffer, 16419 PRPC_MESSAGE pRpcMessage, 16420 DWORD* pdwStubPhase); 16421 HRESULT STDMETHODCALLTYPE IActionProgress_UpdateProgress_Proxy( 16422 IActionProgress* This, 16423 ULONGLONG ulCompleted, 16424 ULONGLONG ulTotal); 16425 void __RPC_STUB IActionProgress_UpdateProgress_Stub( 16426 IRpcStubBuffer* This, 16427 IRpcChannelBuffer* pRpcChannelBuffer, 16428 PRPC_MESSAGE pRpcMessage, 16429 DWORD* pdwStubPhase); 16430 HRESULT STDMETHODCALLTYPE IActionProgress_UpdateText_Proxy( 16431 IActionProgress* This, 16432 SPTEXT sptext, 16433 LPCWSTR pszText, 16434 WINBOOL fMayCompact); 16435 void __RPC_STUB IActionProgress_UpdateText_Stub( 16436 IRpcStubBuffer* This, 16437 IRpcChannelBuffer* pRpcChannelBuffer, 16438 PRPC_MESSAGE pRpcMessage, 16439 DWORD* pdwStubPhase); 16440 HRESULT STDMETHODCALLTYPE IActionProgress_QueryCancel_Proxy( 16441 IActionProgress* This, 16442 WINBOOL *pfCancelled); 16443 void __RPC_STUB IActionProgress_QueryCancel_Stub( 16444 IRpcStubBuffer* This, 16445 IRpcChannelBuffer* pRpcChannelBuffer, 16446 PRPC_MESSAGE pRpcMessage, 16447 DWORD* pdwStubPhase); 16448 HRESULT STDMETHODCALLTYPE IActionProgress_ResetCancel_Proxy( 16449 IActionProgress* This); 16450 void __RPC_STUB IActionProgress_ResetCancel_Stub( 16451 IRpcStubBuffer* This, 16452 IRpcChannelBuffer* pRpcChannelBuffer, 16453 PRPC_MESSAGE pRpcMessage, 16454 DWORD* pdwStubPhase); 16455 HRESULT STDMETHODCALLTYPE IActionProgress_End_Proxy( 16456 IActionProgress* This); 16457 void __RPC_STUB IActionProgress_End_Stub( 16458 IRpcStubBuffer* This, 16459 IRpcChannelBuffer* pRpcChannelBuffer, 16460 PRPC_MESSAGE pRpcMessage, 16461 DWORD* pdwStubPhase); 16462 16463 #endif /* __IActionProgress_INTERFACE_DEFINED__ */ 16464 16465 16466 /***************************************************************************** 16467 * IShellExtInit interface 16468 */ 16469 #ifndef __IShellExtInit_INTERFACE_DEFINED__ 16470 #define __IShellExtInit_INTERFACE_DEFINED__ 16471 16472 DEFINE_GUID(IID_IShellExtInit, 0x000214e8, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 16473 #if defined(__cplusplus) && !defined(CINTERFACE) 16474 MIDL_INTERFACE("000214e8-0000-0000-c000-000000000046") 16475 IShellExtInit : public IUnknown 16476 { 16477 virtual HRESULT STDMETHODCALLTYPE Initialize( 16478 PCIDLIST_ABSOLUTE pidlFolder, 16479 IDataObject *pdtobj, 16480 HKEY hkeyProgID) = 0; 16481 16482 }; 16483 #ifdef __CRT_UUID_DECL 16484 __CRT_UUID_DECL(IShellExtInit, 0x000214e8, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 16485 #endif 16486 #else 16487 typedef struct IShellExtInitVtbl { 16488 BEGIN_INTERFACE 16489 16490 /*** IUnknown methods ***/ 16491 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 16492 IShellExtInit* This, 16493 REFIID riid, 16494 void **ppvObject); 16495 16496 ULONG (STDMETHODCALLTYPE *AddRef)( 16497 IShellExtInit* This); 16498 16499 ULONG (STDMETHODCALLTYPE *Release)( 16500 IShellExtInit* This); 16501 16502 /*** IShellExtInit methods ***/ 16503 HRESULT (STDMETHODCALLTYPE *Initialize)( 16504 IShellExtInit* This, 16505 PCIDLIST_ABSOLUTE pidlFolder, 16506 IDataObject *pdtobj, 16507 HKEY hkeyProgID); 16508 16509 END_INTERFACE 16510 } IShellExtInitVtbl; 16511 interface IShellExtInit { 16512 CONST_VTBL IShellExtInitVtbl* lpVtbl; 16513 }; 16514 16515 #ifdef COBJMACROS 16516 #ifndef WIDL_C_INLINE_WRAPPERS 16517 /*** IUnknown methods ***/ 16518 #define IShellExtInit_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16519 #define IShellExtInit_AddRef(This) (This)->lpVtbl->AddRef(This) 16520 #define IShellExtInit_Release(This) (This)->lpVtbl->Release(This) 16521 /*** IShellExtInit methods ***/ 16522 #define IShellExtInit_Initialize(This,pidlFolder,pdtobj,hkeyProgID) (This)->lpVtbl->Initialize(This,pidlFolder,pdtobj,hkeyProgID) 16523 #else 16524 /*** IUnknown methods ***/ 16525 static FORCEINLINE HRESULT IShellExtInit_QueryInterface(IShellExtInit* This,REFIID riid,void **ppvObject) { 16526 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 16527 } 16528 static FORCEINLINE ULONG IShellExtInit_AddRef(IShellExtInit* This) { 16529 return This->lpVtbl->AddRef(This); 16530 } 16531 static FORCEINLINE ULONG IShellExtInit_Release(IShellExtInit* This) { 16532 return This->lpVtbl->Release(This); 16533 } 16534 /*** IShellExtInit methods ***/ 16535 static FORCEINLINE HRESULT IShellExtInit_Initialize(IShellExtInit* This,PCIDLIST_ABSOLUTE pidlFolder,IDataObject *pdtobj,HKEY hkeyProgID) { 16536 return This->lpVtbl->Initialize(This,pidlFolder,pdtobj,hkeyProgID); 16537 } 16538 #endif 16539 #endif 16540 16541 #endif 16542 16543 HRESULT STDMETHODCALLTYPE IShellExtInit_Initialize_Proxy( 16544 IShellExtInit* This, 16545 PCIDLIST_ABSOLUTE pidlFolder, 16546 IDataObject *pdtobj, 16547 HKEY hkeyProgID); 16548 void __RPC_STUB IShellExtInit_Initialize_Stub( 16549 IRpcStubBuffer* This, 16550 IRpcChannelBuffer* pRpcChannelBuffer, 16551 PRPC_MESSAGE pRpcMessage, 16552 DWORD* pdwStubPhase); 16553 16554 #endif /* __IShellExtInit_INTERFACE_DEFINED__ */ 16555 16556 typedef IShellExtInit *LPSHELLEXTINIT; 16557 16558 /***************************************************************************** 16559 * IShellPropSheetExt interface 16560 */ 16561 #ifndef __IShellPropSheetExt_INTERFACE_DEFINED__ 16562 #define __IShellPropSheetExt_INTERFACE_DEFINED__ 16563 16564 enum _EXPPS { 16565 EXPPS_FILETYPES = 0x1 16566 }; 16567 16568 16569 typedef UINT EXPPS; 16570 16571 DEFINE_GUID(IID_IShellPropSheetExt, 0x000214e9, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 16572 #if defined(__cplusplus) && !defined(CINTERFACE) 16573 MIDL_INTERFACE("000214e9-0000-0000-c000-000000000046") 16574 IShellPropSheetExt : public IUnknown 16575 { 16576 virtual HRESULT STDMETHODCALLTYPE AddPages( 16577 LPFNSVADDPROPSHEETPAGE pfnAddPage, 16578 LPARAM lParam) = 0; 16579 16580 virtual HRESULT STDMETHODCALLTYPE ReplacePage( 16581 EXPPS uPageID, 16582 LPFNSVADDPROPSHEETPAGE pfnReplaceWith, 16583 LPARAM lParam) = 0; 16584 16585 }; 16586 #ifdef __CRT_UUID_DECL 16587 __CRT_UUID_DECL(IShellPropSheetExt, 0x000214e9, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 16588 #endif 16589 #else 16590 typedef struct IShellPropSheetExtVtbl { 16591 BEGIN_INTERFACE 16592 16593 /*** IUnknown methods ***/ 16594 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 16595 IShellPropSheetExt* This, 16596 REFIID riid, 16597 void **ppvObject); 16598 16599 ULONG (STDMETHODCALLTYPE *AddRef)( 16600 IShellPropSheetExt* This); 16601 16602 ULONG (STDMETHODCALLTYPE *Release)( 16603 IShellPropSheetExt* This); 16604 16605 /*** IShellPropSheetExt methods ***/ 16606 HRESULT (STDMETHODCALLTYPE *AddPages)( 16607 IShellPropSheetExt* This, 16608 LPFNSVADDPROPSHEETPAGE pfnAddPage, 16609 LPARAM lParam); 16610 16611 HRESULT (STDMETHODCALLTYPE *ReplacePage)( 16612 IShellPropSheetExt* This, 16613 EXPPS uPageID, 16614 LPFNSVADDPROPSHEETPAGE pfnReplaceWith, 16615 LPARAM lParam); 16616 16617 END_INTERFACE 16618 } IShellPropSheetExtVtbl; 16619 interface IShellPropSheetExt { 16620 CONST_VTBL IShellPropSheetExtVtbl* lpVtbl; 16621 }; 16622 16623 #ifdef COBJMACROS 16624 #ifndef WIDL_C_INLINE_WRAPPERS 16625 /*** IUnknown methods ***/ 16626 #define IShellPropSheetExt_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16627 #define IShellPropSheetExt_AddRef(This) (This)->lpVtbl->AddRef(This) 16628 #define IShellPropSheetExt_Release(This) (This)->lpVtbl->Release(This) 16629 /*** IShellPropSheetExt methods ***/ 16630 #define IShellPropSheetExt_AddPages(This,pfnAddPage,lParam) (This)->lpVtbl->AddPages(This,pfnAddPage,lParam) 16631 #define IShellPropSheetExt_ReplacePage(This,uPageID,pfnReplaceWith,lParam) (This)->lpVtbl->ReplacePage(This,uPageID,pfnReplaceWith,lParam) 16632 #else 16633 /*** IUnknown methods ***/ 16634 static FORCEINLINE HRESULT IShellPropSheetExt_QueryInterface(IShellPropSheetExt* This,REFIID riid,void **ppvObject) { 16635 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 16636 } 16637 static FORCEINLINE ULONG IShellPropSheetExt_AddRef(IShellPropSheetExt* This) { 16638 return This->lpVtbl->AddRef(This); 16639 } 16640 static FORCEINLINE ULONG IShellPropSheetExt_Release(IShellPropSheetExt* This) { 16641 return This->lpVtbl->Release(This); 16642 } 16643 /*** IShellPropSheetExt methods ***/ 16644 static FORCEINLINE HRESULT IShellPropSheetExt_AddPages(IShellPropSheetExt* This,LPFNSVADDPROPSHEETPAGE pfnAddPage,LPARAM lParam) { 16645 return This->lpVtbl->AddPages(This,pfnAddPage,lParam); 16646 } 16647 static FORCEINLINE HRESULT IShellPropSheetExt_ReplacePage(IShellPropSheetExt* This,EXPPS uPageID,LPFNSVADDPROPSHEETPAGE pfnReplaceWith,LPARAM lParam) { 16648 return This->lpVtbl->ReplacePage(This,uPageID,pfnReplaceWith,lParam); 16649 } 16650 #endif 16651 #endif 16652 16653 #endif 16654 16655 HRESULT STDMETHODCALLTYPE IShellPropSheetExt_AddPages_Proxy( 16656 IShellPropSheetExt* This, 16657 LPFNSVADDPROPSHEETPAGE pfnAddPage, 16658 LPARAM lParam); 16659 void __RPC_STUB IShellPropSheetExt_AddPages_Stub( 16660 IRpcStubBuffer* This, 16661 IRpcChannelBuffer* pRpcChannelBuffer, 16662 PRPC_MESSAGE pRpcMessage, 16663 DWORD* pdwStubPhase); 16664 HRESULT STDMETHODCALLTYPE IShellPropSheetExt_ReplacePage_Proxy( 16665 IShellPropSheetExt* This, 16666 EXPPS uPageID, 16667 LPFNSVADDPROPSHEETPAGE pfnReplaceWith, 16668 LPARAM lParam); 16669 void __RPC_STUB IShellPropSheetExt_ReplacePage_Stub( 16670 IRpcStubBuffer* This, 16671 IRpcChannelBuffer* pRpcChannelBuffer, 16672 PRPC_MESSAGE pRpcMessage, 16673 DWORD* pdwStubPhase); 16674 16675 #endif /* __IShellPropSheetExt_INTERFACE_DEFINED__ */ 16676 16677 typedef IShellPropSheetExt *LPSHELLPROPSHEETEXT; 16678 16679 /***************************************************************************** 16680 * IRemoteComputer interface 16681 */ 16682 #ifndef __IRemoteComputer_INTERFACE_DEFINED__ 16683 #define __IRemoteComputer_INTERFACE_DEFINED__ 16684 16685 DEFINE_GUID(IID_IRemoteComputer, 0x000214fe, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 16686 #if defined(__cplusplus) && !defined(CINTERFACE) 16687 MIDL_INTERFACE("000214fe-0000-0000-c000-000000000046") 16688 IRemoteComputer : public IUnknown 16689 { 16690 virtual HRESULT STDMETHODCALLTYPE Initialize( 16691 LPCWSTR pszMachine, 16692 WINBOOL bEnumerating) = 0; 16693 16694 }; 16695 #ifdef __CRT_UUID_DECL 16696 __CRT_UUID_DECL(IRemoteComputer, 0x000214fe, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 16697 #endif 16698 #else 16699 typedef struct IRemoteComputerVtbl { 16700 BEGIN_INTERFACE 16701 16702 /*** IUnknown methods ***/ 16703 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 16704 IRemoteComputer* This, 16705 REFIID riid, 16706 void **ppvObject); 16707 16708 ULONG (STDMETHODCALLTYPE *AddRef)( 16709 IRemoteComputer* This); 16710 16711 ULONG (STDMETHODCALLTYPE *Release)( 16712 IRemoteComputer* This); 16713 16714 /*** IRemoteComputer methods ***/ 16715 HRESULT (STDMETHODCALLTYPE *Initialize)( 16716 IRemoteComputer* This, 16717 LPCWSTR pszMachine, 16718 WINBOOL bEnumerating); 16719 16720 END_INTERFACE 16721 } IRemoteComputerVtbl; 16722 interface IRemoteComputer { 16723 CONST_VTBL IRemoteComputerVtbl* lpVtbl; 16724 }; 16725 16726 #ifdef COBJMACROS 16727 #ifndef WIDL_C_INLINE_WRAPPERS 16728 /*** IUnknown methods ***/ 16729 #define IRemoteComputer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16730 #define IRemoteComputer_AddRef(This) (This)->lpVtbl->AddRef(This) 16731 #define IRemoteComputer_Release(This) (This)->lpVtbl->Release(This) 16732 /*** IRemoteComputer methods ***/ 16733 #define IRemoteComputer_Initialize(This,pszMachine,bEnumerating) (This)->lpVtbl->Initialize(This,pszMachine,bEnumerating) 16734 #else 16735 /*** IUnknown methods ***/ 16736 static FORCEINLINE HRESULT IRemoteComputer_QueryInterface(IRemoteComputer* This,REFIID riid,void **ppvObject) { 16737 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 16738 } 16739 static FORCEINLINE ULONG IRemoteComputer_AddRef(IRemoteComputer* This) { 16740 return This->lpVtbl->AddRef(This); 16741 } 16742 static FORCEINLINE ULONG IRemoteComputer_Release(IRemoteComputer* This) { 16743 return This->lpVtbl->Release(This); 16744 } 16745 /*** IRemoteComputer methods ***/ 16746 static FORCEINLINE HRESULT IRemoteComputer_Initialize(IRemoteComputer* This,LPCWSTR pszMachine,WINBOOL bEnumerating) { 16747 return This->lpVtbl->Initialize(This,pszMachine,bEnumerating); 16748 } 16749 #endif 16750 #endif 16751 16752 #endif 16753 16754 HRESULT STDMETHODCALLTYPE IRemoteComputer_Initialize_Proxy( 16755 IRemoteComputer* This, 16756 LPCWSTR pszMachine, 16757 WINBOOL bEnumerating); 16758 void __RPC_STUB IRemoteComputer_Initialize_Stub( 16759 IRpcStubBuffer* This, 16760 IRpcChannelBuffer* pRpcChannelBuffer, 16761 PRPC_MESSAGE pRpcMessage, 16762 DWORD* pdwStubPhase); 16763 16764 #endif /* __IRemoteComputer_INTERFACE_DEFINED__ */ 16765 16766 16767 /***************************************************************************** 16768 * IQueryContinue interface 16769 */ 16770 #ifndef __IQueryContinue_INTERFACE_DEFINED__ 16771 #define __IQueryContinue_INTERFACE_DEFINED__ 16772 16773 DEFINE_GUID(IID_IQueryContinue, 0x7307055c, 0xb24a, 0x486b, 0x9f,0x25, 0x16,0x3e,0x59,0x7a,0x28,0xa9); 16774 #if defined(__cplusplus) && !defined(CINTERFACE) 16775 MIDL_INTERFACE("7307055c-b24a-486b-9f25-163e597a28a9") 16776 IQueryContinue : public IUnknown 16777 { 16778 virtual HRESULT STDMETHODCALLTYPE QueryContinue( 16779 ) = 0; 16780 16781 }; 16782 #ifdef __CRT_UUID_DECL 16783 __CRT_UUID_DECL(IQueryContinue, 0x7307055c, 0xb24a, 0x486b, 0x9f,0x25, 0x16,0x3e,0x59,0x7a,0x28,0xa9) 16784 #endif 16785 #else 16786 typedef struct IQueryContinueVtbl { 16787 BEGIN_INTERFACE 16788 16789 /*** IUnknown methods ***/ 16790 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 16791 IQueryContinue* This, 16792 REFIID riid, 16793 void **ppvObject); 16794 16795 ULONG (STDMETHODCALLTYPE *AddRef)( 16796 IQueryContinue* This); 16797 16798 ULONG (STDMETHODCALLTYPE *Release)( 16799 IQueryContinue* This); 16800 16801 /*** IQueryContinue methods ***/ 16802 HRESULT (STDMETHODCALLTYPE *QueryContinue)( 16803 IQueryContinue* This); 16804 16805 END_INTERFACE 16806 } IQueryContinueVtbl; 16807 interface IQueryContinue { 16808 CONST_VTBL IQueryContinueVtbl* lpVtbl; 16809 }; 16810 16811 #ifdef COBJMACROS 16812 #ifndef WIDL_C_INLINE_WRAPPERS 16813 /*** IUnknown methods ***/ 16814 #define IQueryContinue_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16815 #define IQueryContinue_AddRef(This) (This)->lpVtbl->AddRef(This) 16816 #define IQueryContinue_Release(This) (This)->lpVtbl->Release(This) 16817 /*** IQueryContinue methods ***/ 16818 #define IQueryContinue_QueryContinue(This) (This)->lpVtbl->QueryContinue(This) 16819 #else 16820 /*** IUnknown methods ***/ 16821 static FORCEINLINE HRESULT IQueryContinue_QueryInterface(IQueryContinue* This,REFIID riid,void **ppvObject) { 16822 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 16823 } 16824 static FORCEINLINE ULONG IQueryContinue_AddRef(IQueryContinue* This) { 16825 return This->lpVtbl->AddRef(This); 16826 } 16827 static FORCEINLINE ULONG IQueryContinue_Release(IQueryContinue* This) { 16828 return This->lpVtbl->Release(This); 16829 } 16830 /*** IQueryContinue methods ***/ 16831 static FORCEINLINE HRESULT IQueryContinue_QueryContinue(IQueryContinue* This) { 16832 return This->lpVtbl->QueryContinue(This); 16833 } 16834 #endif 16835 #endif 16836 16837 #endif 16838 16839 HRESULT STDMETHODCALLTYPE IQueryContinue_QueryContinue_Proxy( 16840 IQueryContinue* This); 16841 void __RPC_STUB IQueryContinue_QueryContinue_Stub( 16842 IRpcStubBuffer* This, 16843 IRpcChannelBuffer* pRpcChannelBuffer, 16844 PRPC_MESSAGE pRpcMessage, 16845 DWORD* pdwStubPhase); 16846 16847 #endif /* __IQueryContinue_INTERFACE_DEFINED__ */ 16848 16849 16850 /***************************************************************************** 16851 * IObjectWithCancelEvent interface 16852 */ 16853 #ifndef __IObjectWithCancelEvent_INTERFACE_DEFINED__ 16854 #define __IObjectWithCancelEvent_INTERFACE_DEFINED__ 16855 16856 DEFINE_GUID(IID_IObjectWithCancelEvent, 0xf279b885, 0x0ae9, 0x4b85, 0xac,0x06, 0xdd,0xec,0xf9,0x40,0x89,0x41); 16857 #if defined(__cplusplus) && !defined(CINTERFACE) 16858 MIDL_INTERFACE("f279b885-0ae9-4b85-ac06-ddecf9408941") 16859 IObjectWithCancelEvent : public IUnknown 16860 { 16861 virtual HRESULT STDMETHODCALLTYPE GetCancelEvent( 16862 HANDLE *phEvent) = 0; 16863 16864 }; 16865 #ifdef __CRT_UUID_DECL 16866 __CRT_UUID_DECL(IObjectWithCancelEvent, 0xf279b885, 0x0ae9, 0x4b85, 0xac,0x06, 0xdd,0xec,0xf9,0x40,0x89,0x41) 16867 #endif 16868 #else 16869 typedef struct IObjectWithCancelEventVtbl { 16870 BEGIN_INTERFACE 16871 16872 /*** IUnknown methods ***/ 16873 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 16874 IObjectWithCancelEvent* This, 16875 REFIID riid, 16876 void **ppvObject); 16877 16878 ULONG (STDMETHODCALLTYPE *AddRef)( 16879 IObjectWithCancelEvent* This); 16880 16881 ULONG (STDMETHODCALLTYPE *Release)( 16882 IObjectWithCancelEvent* This); 16883 16884 /*** IObjectWithCancelEvent methods ***/ 16885 HRESULT (STDMETHODCALLTYPE *GetCancelEvent)( 16886 IObjectWithCancelEvent* This, 16887 HANDLE *phEvent); 16888 16889 END_INTERFACE 16890 } IObjectWithCancelEventVtbl; 16891 interface IObjectWithCancelEvent { 16892 CONST_VTBL IObjectWithCancelEventVtbl* lpVtbl; 16893 }; 16894 16895 #ifdef COBJMACROS 16896 #ifndef WIDL_C_INLINE_WRAPPERS 16897 /*** IUnknown methods ***/ 16898 #define IObjectWithCancelEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 16899 #define IObjectWithCancelEvent_AddRef(This) (This)->lpVtbl->AddRef(This) 16900 #define IObjectWithCancelEvent_Release(This) (This)->lpVtbl->Release(This) 16901 /*** IObjectWithCancelEvent methods ***/ 16902 #define IObjectWithCancelEvent_GetCancelEvent(This,phEvent) (This)->lpVtbl->GetCancelEvent(This,phEvent) 16903 #else 16904 /*** IUnknown methods ***/ 16905 static FORCEINLINE HRESULT IObjectWithCancelEvent_QueryInterface(IObjectWithCancelEvent* This,REFIID riid,void **ppvObject) { 16906 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 16907 } 16908 static FORCEINLINE ULONG IObjectWithCancelEvent_AddRef(IObjectWithCancelEvent* This) { 16909 return This->lpVtbl->AddRef(This); 16910 } 16911 static FORCEINLINE ULONG IObjectWithCancelEvent_Release(IObjectWithCancelEvent* This) { 16912 return This->lpVtbl->Release(This); 16913 } 16914 /*** IObjectWithCancelEvent methods ***/ 16915 static FORCEINLINE HRESULT IObjectWithCancelEvent_GetCancelEvent(IObjectWithCancelEvent* This,HANDLE *phEvent) { 16916 return This->lpVtbl->GetCancelEvent(This,phEvent); 16917 } 16918 #endif 16919 #endif 16920 16921 #endif 16922 16923 HRESULT STDMETHODCALLTYPE IObjectWithCancelEvent_GetCancelEvent_Proxy( 16924 IObjectWithCancelEvent* This, 16925 HANDLE *phEvent); 16926 void __RPC_STUB IObjectWithCancelEvent_GetCancelEvent_Stub( 16927 IRpcStubBuffer* This, 16928 IRpcChannelBuffer* pRpcChannelBuffer, 16929 PRPC_MESSAGE pRpcMessage, 16930 DWORD* pdwStubPhase); 16931 16932 #endif /* __IObjectWithCancelEvent_INTERFACE_DEFINED__ */ 16933 16934 16935 /***************************************************************************** 16936 * IUserNotification interface 16937 */ 16938 #ifndef __IUserNotification_INTERFACE_DEFINED__ 16939 #define __IUserNotification_INTERFACE_DEFINED__ 16940 16941 DEFINE_GUID(IID_IUserNotification, 0xba9711ba, 0x5893, 0x4787, 0xa7,0xe1, 0x41,0x27,0x71,0x51,0x55,0x0b); 16942 #if defined(__cplusplus) && !defined(CINTERFACE) 16943 MIDL_INTERFACE("ba9711ba-5893-4787-a7e1-41277151550b") 16944 IUserNotification : public IUnknown 16945 { 16946 virtual HRESULT STDMETHODCALLTYPE SetBalloonInfo( 16947 LPCWSTR pszTitle, 16948 LPCWSTR pszText, 16949 DWORD dwInfoFlags) = 0; 16950 16951 virtual HRESULT STDMETHODCALLTYPE SetBalloonRetry( 16952 DWORD dwShowTime, 16953 DWORD dwInterval, 16954 UINT cRetryCount) = 0; 16955 16956 virtual HRESULT STDMETHODCALLTYPE SetIconInfo( 16957 HICON hIcon, 16958 LPCWSTR pszToolTip) = 0; 16959 16960 virtual HRESULT STDMETHODCALLTYPE Show( 16961 IQueryContinue *pqc, 16962 DWORD dwContinuePollInterval) = 0; 16963 16964 virtual HRESULT STDMETHODCALLTYPE PlaySound( 16965 LPCWSTR pszSoundName) = 0; 16966 16967 }; 16968 #ifdef __CRT_UUID_DECL 16969 __CRT_UUID_DECL(IUserNotification, 0xba9711ba, 0x5893, 0x4787, 0xa7,0xe1, 0x41,0x27,0x71,0x51,0x55,0x0b) 16970 #endif 16971 #else 16972 typedef struct IUserNotificationVtbl { 16973 BEGIN_INTERFACE 16974 16975 /*** IUnknown methods ***/ 16976 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 16977 IUserNotification* This, 16978 REFIID riid, 16979 void **ppvObject); 16980 16981 ULONG (STDMETHODCALLTYPE *AddRef)( 16982 IUserNotification* This); 16983 16984 ULONG (STDMETHODCALLTYPE *Release)( 16985 IUserNotification* This); 16986 16987 /*** IUserNotification methods ***/ 16988 HRESULT (STDMETHODCALLTYPE *SetBalloonInfo)( 16989 IUserNotification* This, 16990 LPCWSTR pszTitle, 16991 LPCWSTR pszText, 16992 DWORD dwInfoFlags); 16993 16994 HRESULT (STDMETHODCALLTYPE *SetBalloonRetry)( 16995 IUserNotification* This, 16996 DWORD dwShowTime, 16997 DWORD dwInterval, 16998 UINT cRetryCount); 16999 17000 HRESULT (STDMETHODCALLTYPE *SetIconInfo)( 17001 IUserNotification* This, 17002 HICON hIcon, 17003 LPCWSTR pszToolTip); 17004 17005 HRESULT (STDMETHODCALLTYPE *Show)( 17006 IUserNotification* This, 17007 IQueryContinue *pqc, 17008 DWORD dwContinuePollInterval); 17009 17010 HRESULT (STDMETHODCALLTYPE *PlaySound)( 17011 IUserNotification* This, 17012 LPCWSTR pszSoundName); 17013 17014 END_INTERFACE 17015 } IUserNotificationVtbl; 17016 interface IUserNotification { 17017 CONST_VTBL IUserNotificationVtbl* lpVtbl; 17018 }; 17019 17020 #ifdef COBJMACROS 17021 #ifndef WIDL_C_INLINE_WRAPPERS 17022 /*** IUnknown methods ***/ 17023 #define IUserNotification_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 17024 #define IUserNotification_AddRef(This) (This)->lpVtbl->AddRef(This) 17025 #define IUserNotification_Release(This) (This)->lpVtbl->Release(This) 17026 /*** IUserNotification methods ***/ 17027 #define IUserNotification_SetBalloonInfo(This,pszTitle,pszText,dwInfoFlags) (This)->lpVtbl->SetBalloonInfo(This,pszTitle,pszText,dwInfoFlags) 17028 #define IUserNotification_SetBalloonRetry(This,dwShowTime,dwInterval,cRetryCount) (This)->lpVtbl->SetBalloonRetry(This,dwShowTime,dwInterval,cRetryCount) 17029 #define IUserNotification_SetIconInfo(This,hIcon,pszToolTip) (This)->lpVtbl->SetIconInfo(This,hIcon,pszToolTip) 17030 #define IUserNotification_Show(This,pqc,dwContinuePollInterval) (This)->lpVtbl->Show(This,pqc,dwContinuePollInterval) 17031 #define IUserNotification_PlaySound(This,pszSoundName) (This)->lpVtbl->PlaySound(This,pszSoundName) 17032 #else 17033 /*** IUnknown methods ***/ 17034 static FORCEINLINE HRESULT IUserNotification_QueryInterface(IUserNotification* This,REFIID riid,void **ppvObject) { 17035 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 17036 } 17037 static FORCEINLINE ULONG IUserNotification_AddRef(IUserNotification* This) { 17038 return This->lpVtbl->AddRef(This); 17039 } 17040 static FORCEINLINE ULONG IUserNotification_Release(IUserNotification* This) { 17041 return This->lpVtbl->Release(This); 17042 } 17043 /*** IUserNotification methods ***/ 17044 static FORCEINLINE HRESULT IUserNotification_SetBalloonInfo(IUserNotification* This,LPCWSTR pszTitle,LPCWSTR pszText,DWORD dwInfoFlags) { 17045 return This->lpVtbl->SetBalloonInfo(This,pszTitle,pszText,dwInfoFlags); 17046 } 17047 static FORCEINLINE HRESULT IUserNotification_SetBalloonRetry(IUserNotification* This,DWORD dwShowTime,DWORD dwInterval,UINT cRetryCount) { 17048 return This->lpVtbl->SetBalloonRetry(This,dwShowTime,dwInterval,cRetryCount); 17049 } 17050 static FORCEINLINE HRESULT IUserNotification_SetIconInfo(IUserNotification* This,HICON hIcon,LPCWSTR pszToolTip) { 17051 return This->lpVtbl->SetIconInfo(This,hIcon,pszToolTip); 17052 } 17053 static FORCEINLINE HRESULT IUserNotification_Show(IUserNotification* This,IQueryContinue *pqc,DWORD dwContinuePollInterval) { 17054 return This->lpVtbl->Show(This,pqc,dwContinuePollInterval); 17055 } 17056 static FORCEINLINE HRESULT IUserNotification_PlaySound(IUserNotification* This,LPCWSTR pszSoundName) { 17057 return This->lpVtbl->PlaySound(This,pszSoundName); 17058 } 17059 #endif 17060 #endif 17061 17062 #endif 17063 17064 HRESULT STDMETHODCALLTYPE IUserNotification_SetBalloonInfo_Proxy( 17065 IUserNotification* This, 17066 LPCWSTR pszTitle, 17067 LPCWSTR pszText, 17068 DWORD dwInfoFlags); 17069 void __RPC_STUB IUserNotification_SetBalloonInfo_Stub( 17070 IRpcStubBuffer* This, 17071 IRpcChannelBuffer* pRpcChannelBuffer, 17072 PRPC_MESSAGE pRpcMessage, 17073 DWORD* pdwStubPhase); 17074 HRESULT STDMETHODCALLTYPE IUserNotification_SetBalloonRetry_Proxy( 17075 IUserNotification* This, 17076 DWORD dwShowTime, 17077 DWORD dwInterval, 17078 UINT cRetryCount); 17079 void __RPC_STUB IUserNotification_SetBalloonRetry_Stub( 17080 IRpcStubBuffer* This, 17081 IRpcChannelBuffer* pRpcChannelBuffer, 17082 PRPC_MESSAGE pRpcMessage, 17083 DWORD* pdwStubPhase); 17084 HRESULT STDMETHODCALLTYPE IUserNotification_SetIconInfo_Proxy( 17085 IUserNotification* This, 17086 HICON hIcon, 17087 LPCWSTR pszToolTip); 17088 void __RPC_STUB IUserNotification_SetIconInfo_Stub( 17089 IRpcStubBuffer* This, 17090 IRpcChannelBuffer* pRpcChannelBuffer, 17091 PRPC_MESSAGE pRpcMessage, 17092 DWORD* pdwStubPhase); 17093 HRESULT STDMETHODCALLTYPE IUserNotification_Show_Proxy( 17094 IUserNotification* This, 17095 IQueryContinue *pqc, 17096 DWORD dwContinuePollInterval); 17097 void __RPC_STUB IUserNotification_Show_Stub( 17098 IRpcStubBuffer* This, 17099 IRpcChannelBuffer* pRpcChannelBuffer, 17100 PRPC_MESSAGE pRpcMessage, 17101 DWORD* pdwStubPhase); 17102 HRESULT STDMETHODCALLTYPE IUserNotification_PlaySound_Proxy( 17103 IUserNotification* This, 17104 LPCWSTR pszSoundName); 17105 void __RPC_STUB IUserNotification_PlaySound_Stub( 17106 IRpcStubBuffer* This, 17107 IRpcChannelBuffer* pRpcChannelBuffer, 17108 PRPC_MESSAGE pRpcMessage, 17109 DWORD* pdwStubPhase); 17110 17111 #endif /* __IUserNotification_INTERFACE_DEFINED__ */ 17112 17113 17114 /***************************************************************************** 17115 * IUserNotificationCallback interface 17116 */ 17117 #ifndef __IUserNotificationCallback_INTERFACE_DEFINED__ 17118 #define __IUserNotificationCallback_INTERFACE_DEFINED__ 17119 17120 DEFINE_GUID(IID_IUserNotificationCallback, 0x19108294, 0x0441, 0x4aff, 0x80,0x13, 0xfa,0x0a,0x73,0x0b,0x0b,0xea); 17121 #if defined(__cplusplus) && !defined(CINTERFACE) 17122 MIDL_INTERFACE("19108294-0441-4aff-8013-fa0a730b0bea") 17123 IUserNotificationCallback : public IUnknown 17124 { 17125 virtual HRESULT STDMETHODCALLTYPE OnBalloonUserClick( 17126 POINT *pt) = 0; 17127 17128 virtual HRESULT STDMETHODCALLTYPE OnLeftClick( 17129 POINT *pt) = 0; 17130 17131 virtual HRESULT STDMETHODCALLTYPE OnContextMenu( 17132 POINT *pt) = 0; 17133 17134 }; 17135 #ifdef __CRT_UUID_DECL 17136 __CRT_UUID_DECL(IUserNotificationCallback, 0x19108294, 0x0441, 0x4aff, 0x80,0x13, 0xfa,0x0a,0x73,0x0b,0x0b,0xea) 17137 #endif 17138 #else 17139 typedef struct IUserNotificationCallbackVtbl { 17140 BEGIN_INTERFACE 17141 17142 /*** IUnknown methods ***/ 17143 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 17144 IUserNotificationCallback* This, 17145 REFIID riid, 17146 void **ppvObject); 17147 17148 ULONG (STDMETHODCALLTYPE *AddRef)( 17149 IUserNotificationCallback* This); 17150 17151 ULONG (STDMETHODCALLTYPE *Release)( 17152 IUserNotificationCallback* This); 17153 17154 /*** IUserNotificationCallback methods ***/ 17155 HRESULT (STDMETHODCALLTYPE *OnBalloonUserClick)( 17156 IUserNotificationCallback* This, 17157 POINT *pt); 17158 17159 HRESULT (STDMETHODCALLTYPE *OnLeftClick)( 17160 IUserNotificationCallback* This, 17161 POINT *pt); 17162 17163 HRESULT (STDMETHODCALLTYPE *OnContextMenu)( 17164 IUserNotificationCallback* This, 17165 POINT *pt); 17166 17167 END_INTERFACE 17168 } IUserNotificationCallbackVtbl; 17169 interface IUserNotificationCallback { 17170 CONST_VTBL IUserNotificationCallbackVtbl* lpVtbl; 17171 }; 17172 17173 #ifdef COBJMACROS 17174 #ifndef WIDL_C_INLINE_WRAPPERS 17175 /*** IUnknown methods ***/ 17176 #define IUserNotificationCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 17177 #define IUserNotificationCallback_AddRef(This) (This)->lpVtbl->AddRef(This) 17178 #define IUserNotificationCallback_Release(This) (This)->lpVtbl->Release(This) 17179 /*** IUserNotificationCallback methods ***/ 17180 #define IUserNotificationCallback_OnBalloonUserClick(This,pt) (This)->lpVtbl->OnBalloonUserClick(This,pt) 17181 #define IUserNotificationCallback_OnLeftClick(This,pt) (This)->lpVtbl->OnLeftClick(This,pt) 17182 #define IUserNotificationCallback_OnContextMenu(This,pt) (This)->lpVtbl->OnContextMenu(This,pt) 17183 #else 17184 /*** IUnknown methods ***/ 17185 static FORCEINLINE HRESULT IUserNotificationCallback_QueryInterface(IUserNotificationCallback* This,REFIID riid,void **ppvObject) { 17186 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 17187 } 17188 static FORCEINLINE ULONG IUserNotificationCallback_AddRef(IUserNotificationCallback* This) { 17189 return This->lpVtbl->AddRef(This); 17190 } 17191 static FORCEINLINE ULONG IUserNotificationCallback_Release(IUserNotificationCallback* This) { 17192 return This->lpVtbl->Release(This); 17193 } 17194 /*** IUserNotificationCallback methods ***/ 17195 static FORCEINLINE HRESULT IUserNotificationCallback_OnBalloonUserClick(IUserNotificationCallback* This,POINT *pt) { 17196 return This->lpVtbl->OnBalloonUserClick(This,pt); 17197 } 17198 static FORCEINLINE HRESULT IUserNotificationCallback_OnLeftClick(IUserNotificationCallback* This,POINT *pt) { 17199 return This->lpVtbl->OnLeftClick(This,pt); 17200 } 17201 static FORCEINLINE HRESULT IUserNotificationCallback_OnContextMenu(IUserNotificationCallback* This,POINT *pt) { 17202 return This->lpVtbl->OnContextMenu(This,pt); 17203 } 17204 #endif 17205 #endif 17206 17207 #endif 17208 17209 HRESULT STDMETHODCALLTYPE IUserNotificationCallback_OnBalloonUserClick_Proxy( 17210 IUserNotificationCallback* This, 17211 POINT *pt); 17212 void __RPC_STUB IUserNotificationCallback_OnBalloonUserClick_Stub( 17213 IRpcStubBuffer* This, 17214 IRpcChannelBuffer* pRpcChannelBuffer, 17215 PRPC_MESSAGE pRpcMessage, 17216 DWORD* pdwStubPhase); 17217 HRESULT STDMETHODCALLTYPE IUserNotificationCallback_OnLeftClick_Proxy( 17218 IUserNotificationCallback* This, 17219 POINT *pt); 17220 void __RPC_STUB IUserNotificationCallback_OnLeftClick_Stub( 17221 IRpcStubBuffer* This, 17222 IRpcChannelBuffer* pRpcChannelBuffer, 17223 PRPC_MESSAGE pRpcMessage, 17224 DWORD* pdwStubPhase); 17225 HRESULT STDMETHODCALLTYPE IUserNotificationCallback_OnContextMenu_Proxy( 17226 IUserNotificationCallback* This, 17227 POINT *pt); 17228 void __RPC_STUB IUserNotificationCallback_OnContextMenu_Stub( 17229 IRpcStubBuffer* This, 17230 IRpcChannelBuffer* pRpcChannelBuffer, 17231 PRPC_MESSAGE pRpcMessage, 17232 DWORD* pdwStubPhase); 17233 17234 #endif /* __IUserNotificationCallback_INTERFACE_DEFINED__ */ 17235 17236 17237 /***************************************************************************** 17238 * IUserNotification2 interface 17239 */ 17240 #ifndef __IUserNotification2_INTERFACE_DEFINED__ 17241 #define __IUserNotification2_INTERFACE_DEFINED__ 17242 17243 DEFINE_GUID(IID_IUserNotification2, 0x215913cc, 0x57eb, 0x4fab, 0xab,0x5a, 0xe5,0xfa,0x7b,0xea,0x2a,0x6c); 17244 #if defined(__cplusplus) && !defined(CINTERFACE) 17245 MIDL_INTERFACE("215913cc-57eb-4fab-ab5a-e5fa7bea2a6c") 17246 IUserNotification2 : public IUnknown 17247 { 17248 virtual HRESULT STDMETHODCALLTYPE SetBalloonInfo( 17249 LPCWSTR pszTitle, 17250 LPCWSTR pszText, 17251 DWORD dwInfoFlags) = 0; 17252 17253 virtual HRESULT STDMETHODCALLTYPE SetBalloonRetry( 17254 DWORD dwShowTime, 17255 DWORD dwInterval, 17256 UINT cRetryCount) = 0; 17257 17258 virtual HRESULT STDMETHODCALLTYPE SetIconInfo( 17259 HICON hIcon, 17260 LPCWSTR pszToolTip) = 0; 17261 17262 virtual HRESULT STDMETHODCALLTYPE Show( 17263 IQueryContinue *pqc, 17264 DWORD dwContinuePollInterval, 17265 IUserNotificationCallback *pSink) = 0; 17266 17267 virtual HRESULT STDMETHODCALLTYPE PlaySound( 17268 LPCWSTR pszSoundName) = 0; 17269 17270 }; 17271 #ifdef __CRT_UUID_DECL 17272 __CRT_UUID_DECL(IUserNotification2, 0x215913cc, 0x57eb, 0x4fab, 0xab,0x5a, 0xe5,0xfa,0x7b,0xea,0x2a,0x6c) 17273 #endif 17274 #else 17275 typedef struct IUserNotification2Vtbl { 17276 BEGIN_INTERFACE 17277 17278 /*** IUnknown methods ***/ 17279 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 17280 IUserNotification2* This, 17281 REFIID riid, 17282 void **ppvObject); 17283 17284 ULONG (STDMETHODCALLTYPE *AddRef)( 17285 IUserNotification2* This); 17286 17287 ULONG (STDMETHODCALLTYPE *Release)( 17288 IUserNotification2* This); 17289 17290 /*** IUserNotification2 methods ***/ 17291 HRESULT (STDMETHODCALLTYPE *SetBalloonInfo)( 17292 IUserNotification2* This, 17293 LPCWSTR pszTitle, 17294 LPCWSTR pszText, 17295 DWORD dwInfoFlags); 17296 17297 HRESULT (STDMETHODCALLTYPE *SetBalloonRetry)( 17298 IUserNotification2* This, 17299 DWORD dwShowTime, 17300 DWORD dwInterval, 17301 UINT cRetryCount); 17302 17303 HRESULT (STDMETHODCALLTYPE *SetIconInfo)( 17304 IUserNotification2* This, 17305 HICON hIcon, 17306 LPCWSTR pszToolTip); 17307 17308 HRESULT (STDMETHODCALLTYPE *Show)( 17309 IUserNotification2* This, 17310 IQueryContinue *pqc, 17311 DWORD dwContinuePollInterval, 17312 IUserNotificationCallback *pSink); 17313 17314 HRESULT (STDMETHODCALLTYPE *PlaySound)( 17315 IUserNotification2* This, 17316 LPCWSTR pszSoundName); 17317 17318 END_INTERFACE 17319 } IUserNotification2Vtbl; 17320 interface IUserNotification2 { 17321 CONST_VTBL IUserNotification2Vtbl* lpVtbl; 17322 }; 17323 17324 #ifdef COBJMACROS 17325 #ifndef WIDL_C_INLINE_WRAPPERS 17326 /*** IUnknown methods ***/ 17327 #define IUserNotification2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 17328 #define IUserNotification2_AddRef(This) (This)->lpVtbl->AddRef(This) 17329 #define IUserNotification2_Release(This) (This)->lpVtbl->Release(This) 17330 /*** IUserNotification2 methods ***/ 17331 #define IUserNotification2_SetBalloonInfo(This,pszTitle,pszText,dwInfoFlags) (This)->lpVtbl->SetBalloonInfo(This,pszTitle,pszText,dwInfoFlags) 17332 #define IUserNotification2_SetBalloonRetry(This,dwShowTime,dwInterval,cRetryCount) (This)->lpVtbl->SetBalloonRetry(This,dwShowTime,dwInterval,cRetryCount) 17333 #define IUserNotification2_SetIconInfo(This,hIcon,pszToolTip) (This)->lpVtbl->SetIconInfo(This,hIcon,pszToolTip) 17334 #define IUserNotification2_Show(This,pqc,dwContinuePollInterval,pSink) (This)->lpVtbl->Show(This,pqc,dwContinuePollInterval,pSink) 17335 #define IUserNotification2_PlaySound(This,pszSoundName) (This)->lpVtbl->PlaySound(This,pszSoundName) 17336 #else 17337 /*** IUnknown methods ***/ 17338 static FORCEINLINE HRESULT IUserNotification2_QueryInterface(IUserNotification2* This,REFIID riid,void **ppvObject) { 17339 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 17340 } 17341 static FORCEINLINE ULONG IUserNotification2_AddRef(IUserNotification2* This) { 17342 return This->lpVtbl->AddRef(This); 17343 } 17344 static FORCEINLINE ULONG IUserNotification2_Release(IUserNotification2* This) { 17345 return This->lpVtbl->Release(This); 17346 } 17347 /*** IUserNotification2 methods ***/ 17348 static FORCEINLINE HRESULT IUserNotification2_SetBalloonInfo(IUserNotification2* This,LPCWSTR pszTitle,LPCWSTR pszText,DWORD dwInfoFlags) { 17349 return This->lpVtbl->SetBalloonInfo(This,pszTitle,pszText,dwInfoFlags); 17350 } 17351 static FORCEINLINE HRESULT IUserNotification2_SetBalloonRetry(IUserNotification2* This,DWORD dwShowTime,DWORD dwInterval,UINT cRetryCount) { 17352 return This->lpVtbl->SetBalloonRetry(This,dwShowTime,dwInterval,cRetryCount); 17353 } 17354 static FORCEINLINE HRESULT IUserNotification2_SetIconInfo(IUserNotification2* This,HICON hIcon,LPCWSTR pszToolTip) { 17355 return This->lpVtbl->SetIconInfo(This,hIcon,pszToolTip); 17356 } 17357 static FORCEINLINE HRESULT IUserNotification2_Show(IUserNotification2* This,IQueryContinue *pqc,DWORD dwContinuePollInterval,IUserNotificationCallback *pSink) { 17358 return This->lpVtbl->Show(This,pqc,dwContinuePollInterval,pSink); 17359 } 17360 static FORCEINLINE HRESULT IUserNotification2_PlaySound(IUserNotification2* This,LPCWSTR pszSoundName) { 17361 return This->lpVtbl->PlaySound(This,pszSoundName); 17362 } 17363 #endif 17364 #endif 17365 17366 #endif 17367 17368 HRESULT STDMETHODCALLTYPE IUserNotification2_SetBalloonInfo_Proxy( 17369 IUserNotification2* This, 17370 LPCWSTR pszTitle, 17371 LPCWSTR pszText, 17372 DWORD dwInfoFlags); 17373 void __RPC_STUB IUserNotification2_SetBalloonInfo_Stub( 17374 IRpcStubBuffer* This, 17375 IRpcChannelBuffer* pRpcChannelBuffer, 17376 PRPC_MESSAGE pRpcMessage, 17377 DWORD* pdwStubPhase); 17378 HRESULT STDMETHODCALLTYPE IUserNotification2_SetBalloonRetry_Proxy( 17379 IUserNotification2* This, 17380 DWORD dwShowTime, 17381 DWORD dwInterval, 17382 UINT cRetryCount); 17383 void __RPC_STUB IUserNotification2_SetBalloonRetry_Stub( 17384 IRpcStubBuffer* This, 17385 IRpcChannelBuffer* pRpcChannelBuffer, 17386 PRPC_MESSAGE pRpcMessage, 17387 DWORD* pdwStubPhase); 17388 HRESULT STDMETHODCALLTYPE IUserNotification2_SetIconInfo_Proxy( 17389 IUserNotification2* This, 17390 HICON hIcon, 17391 LPCWSTR pszToolTip); 17392 void __RPC_STUB IUserNotification2_SetIconInfo_Stub( 17393 IRpcStubBuffer* This, 17394 IRpcChannelBuffer* pRpcChannelBuffer, 17395 PRPC_MESSAGE pRpcMessage, 17396 DWORD* pdwStubPhase); 17397 HRESULT STDMETHODCALLTYPE IUserNotification2_Show_Proxy( 17398 IUserNotification2* This, 17399 IQueryContinue *pqc, 17400 DWORD dwContinuePollInterval, 17401 IUserNotificationCallback *pSink); 17402 void __RPC_STUB IUserNotification2_Show_Stub( 17403 IRpcStubBuffer* This, 17404 IRpcChannelBuffer* pRpcChannelBuffer, 17405 PRPC_MESSAGE pRpcMessage, 17406 DWORD* pdwStubPhase); 17407 HRESULT STDMETHODCALLTYPE IUserNotification2_PlaySound_Proxy( 17408 IUserNotification2* This, 17409 LPCWSTR pszSoundName); 17410 void __RPC_STUB IUserNotification2_PlaySound_Stub( 17411 IRpcStubBuffer* This, 17412 IRpcChannelBuffer* pRpcChannelBuffer, 17413 PRPC_MESSAGE pRpcMessage, 17414 DWORD* pdwStubPhase); 17415 17416 #endif /* __IUserNotification2_INTERFACE_DEFINED__ */ 17417 17418 17419 /***************************************************************************** 17420 * IItemNameLimits interface 17421 */ 17422 #ifndef __IItemNameLimits_INTERFACE_DEFINED__ 17423 #define __IItemNameLimits_INTERFACE_DEFINED__ 17424 17425 DEFINE_GUID(IID_IItemNameLimits, 0x1df0d7f1, 0xb267, 0x4d28, 0x8b,0x10, 0x12,0xe2,0x32,0x02,0xa5,0xc4); 17426 #if defined(__cplusplus) && !defined(CINTERFACE) 17427 MIDL_INTERFACE("1df0d7f1-b267-4d28-8b10-12e23202a5c4") 17428 IItemNameLimits : public IUnknown 17429 { 17430 virtual HRESULT STDMETHODCALLTYPE GetValidCharacters( 17431 LPWSTR *ppwszValidChars, 17432 LPWSTR *ppwszInvalidChars) = 0; 17433 17434 virtual HRESULT STDMETHODCALLTYPE GetMaxLength( 17435 LPCWSTR pszName, 17436 int *piMaxNameLen) = 0; 17437 17438 }; 17439 #ifdef __CRT_UUID_DECL 17440 __CRT_UUID_DECL(IItemNameLimits, 0x1df0d7f1, 0xb267, 0x4d28, 0x8b,0x10, 0x12,0xe2,0x32,0x02,0xa5,0xc4) 17441 #endif 17442 #else 17443 typedef struct IItemNameLimitsVtbl { 17444 BEGIN_INTERFACE 17445 17446 /*** IUnknown methods ***/ 17447 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 17448 IItemNameLimits* This, 17449 REFIID riid, 17450 void **ppvObject); 17451 17452 ULONG (STDMETHODCALLTYPE *AddRef)( 17453 IItemNameLimits* This); 17454 17455 ULONG (STDMETHODCALLTYPE *Release)( 17456 IItemNameLimits* This); 17457 17458 /*** IItemNameLimits methods ***/ 17459 HRESULT (STDMETHODCALLTYPE *GetValidCharacters)( 17460 IItemNameLimits* This, 17461 LPWSTR *ppwszValidChars, 17462 LPWSTR *ppwszInvalidChars); 17463 17464 HRESULT (STDMETHODCALLTYPE *GetMaxLength)( 17465 IItemNameLimits* This, 17466 LPCWSTR pszName, 17467 int *piMaxNameLen); 17468 17469 END_INTERFACE 17470 } IItemNameLimitsVtbl; 17471 interface IItemNameLimits { 17472 CONST_VTBL IItemNameLimitsVtbl* lpVtbl; 17473 }; 17474 17475 #ifdef COBJMACROS 17476 #ifndef WIDL_C_INLINE_WRAPPERS 17477 /*** IUnknown methods ***/ 17478 #define IItemNameLimits_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 17479 #define IItemNameLimits_AddRef(This) (This)->lpVtbl->AddRef(This) 17480 #define IItemNameLimits_Release(This) (This)->lpVtbl->Release(This) 17481 /*** IItemNameLimits methods ***/ 17482 #define IItemNameLimits_GetValidCharacters(This,ppwszValidChars,ppwszInvalidChars) (This)->lpVtbl->GetValidCharacters(This,ppwszValidChars,ppwszInvalidChars) 17483 #define IItemNameLimits_GetMaxLength(This,pszName,piMaxNameLen) (This)->lpVtbl->GetMaxLength(This,pszName,piMaxNameLen) 17484 #else 17485 /*** IUnknown methods ***/ 17486 static FORCEINLINE HRESULT IItemNameLimits_QueryInterface(IItemNameLimits* This,REFIID riid,void **ppvObject) { 17487 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 17488 } 17489 static FORCEINLINE ULONG IItemNameLimits_AddRef(IItemNameLimits* This) { 17490 return This->lpVtbl->AddRef(This); 17491 } 17492 static FORCEINLINE ULONG IItemNameLimits_Release(IItemNameLimits* This) { 17493 return This->lpVtbl->Release(This); 17494 } 17495 /*** IItemNameLimits methods ***/ 17496 static FORCEINLINE HRESULT IItemNameLimits_GetValidCharacters(IItemNameLimits* This,LPWSTR *ppwszValidChars,LPWSTR *ppwszInvalidChars) { 17497 return This->lpVtbl->GetValidCharacters(This,ppwszValidChars,ppwszInvalidChars); 17498 } 17499 static FORCEINLINE HRESULT IItemNameLimits_GetMaxLength(IItemNameLimits* This,LPCWSTR pszName,int *piMaxNameLen) { 17500 return This->lpVtbl->GetMaxLength(This,pszName,piMaxNameLen); 17501 } 17502 #endif 17503 #endif 17504 17505 #endif 17506 17507 HRESULT STDMETHODCALLTYPE IItemNameLimits_GetValidCharacters_Proxy( 17508 IItemNameLimits* This, 17509 LPWSTR *ppwszValidChars, 17510 LPWSTR *ppwszInvalidChars); 17511 void __RPC_STUB IItemNameLimits_GetValidCharacters_Stub( 17512 IRpcStubBuffer* This, 17513 IRpcChannelBuffer* pRpcChannelBuffer, 17514 PRPC_MESSAGE pRpcMessage, 17515 DWORD* pdwStubPhase); 17516 HRESULT STDMETHODCALLTYPE IItemNameLimits_GetMaxLength_Proxy( 17517 IItemNameLimits* This, 17518 LPCWSTR pszName, 17519 int *piMaxNameLen); 17520 void __RPC_STUB IItemNameLimits_GetMaxLength_Stub( 17521 IRpcStubBuffer* This, 17522 IRpcChannelBuffer* pRpcChannelBuffer, 17523 PRPC_MESSAGE pRpcMessage, 17524 DWORD* pdwStubPhase); 17525 17526 #endif /* __IItemNameLimits_INTERFACE_DEFINED__ */ 17527 17528 17529 #if NTDDI_VERSION >= NTDDI_VISTA 17530 #ifndef __ICondition_FWD_DEFINED__ 17531 #define __ICondition_FWD_DEFINED__ 17532 typedef interface ICondition ICondition; 17533 #endif 17534 17535 17536 /***************************************************************************** 17537 * ISearchFolderItemFactory interface 17538 */ 17539 #ifndef __ISearchFolderItemFactory_INTERFACE_DEFINED__ 17540 #define __ISearchFolderItemFactory_INTERFACE_DEFINED__ 17541 17542 DEFINE_GUID(IID_ISearchFolderItemFactory, 0xa0ffbc28, 0x5482, 0x4366, 0xbe,0x27, 0x3e,0x81,0xe7,0x8e,0x06,0xc2); 17543 #if defined(__cplusplus) && !defined(CINTERFACE) 17544 MIDL_INTERFACE("a0ffbc28-5482-4366-be27-3e81e78e06c2") 17545 ISearchFolderItemFactory : public IUnknown 17546 { 17547 virtual HRESULT STDMETHODCALLTYPE SetDisplayName( 17548 LPCWSTR pszDisplayName) = 0; 17549 17550 virtual HRESULT STDMETHODCALLTYPE SetFolderTypeID( 17551 FOLDERTYPEID ftid) = 0; 17552 17553 virtual HRESULT STDMETHODCALLTYPE SetFolderLogicalViewMode( 17554 FOLDERLOGICALVIEWMODE flvm) = 0; 17555 17556 virtual HRESULT STDMETHODCALLTYPE SetIconSize( 17557 int iIconSize) = 0; 17558 17559 virtual HRESULT STDMETHODCALLTYPE SetVisibleColumns( 17560 UINT cVisibleColumns, 17561 PROPERTYKEY *rgKey) = 0; 17562 17563 virtual HRESULT STDMETHODCALLTYPE SetSortColumns( 17564 UINT cSortColumns, 17565 SORTCOLUMN *rgSortColumns) = 0; 17566 17567 virtual HRESULT STDMETHODCALLTYPE SetGroupColumn( 17568 REFPROPERTYKEY keyGroup) = 0; 17569 17570 virtual HRESULT STDMETHODCALLTYPE SetStacks( 17571 UINT cStackKeys, 17572 PROPERTYKEY *rgStackKeys) = 0; 17573 17574 virtual HRESULT STDMETHODCALLTYPE SetScope( 17575 IShellItemArray *psiaScope) = 0; 17576 17577 virtual HRESULT STDMETHODCALLTYPE SetCondition( 17578 ICondition *pCondition) = 0; 17579 17580 virtual HRESULT STDMETHODCALLTYPE GetShellItem( 17581 REFIID riid, 17582 void **ppv) = 0; 17583 17584 virtual HRESULT STDMETHODCALLTYPE GetIDList( 17585 PIDLIST_ABSOLUTE *ppidl) = 0; 17586 17587 }; 17588 #ifdef __CRT_UUID_DECL 17589 __CRT_UUID_DECL(ISearchFolderItemFactory, 0xa0ffbc28, 0x5482, 0x4366, 0xbe,0x27, 0x3e,0x81,0xe7,0x8e,0x06,0xc2) 17590 #endif 17591 #else 17592 typedef struct ISearchFolderItemFactoryVtbl { 17593 BEGIN_INTERFACE 17594 17595 /*** IUnknown methods ***/ 17596 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 17597 ISearchFolderItemFactory* This, 17598 REFIID riid, 17599 void **ppvObject); 17600 17601 ULONG (STDMETHODCALLTYPE *AddRef)( 17602 ISearchFolderItemFactory* This); 17603 17604 ULONG (STDMETHODCALLTYPE *Release)( 17605 ISearchFolderItemFactory* This); 17606 17607 /*** ISearchFolderItemFactory methods ***/ 17608 HRESULT (STDMETHODCALLTYPE *SetDisplayName)( 17609 ISearchFolderItemFactory* This, 17610 LPCWSTR pszDisplayName); 17611 17612 HRESULT (STDMETHODCALLTYPE *SetFolderTypeID)( 17613 ISearchFolderItemFactory* This, 17614 FOLDERTYPEID ftid); 17615 17616 HRESULT (STDMETHODCALLTYPE *SetFolderLogicalViewMode)( 17617 ISearchFolderItemFactory* This, 17618 FOLDERLOGICALVIEWMODE flvm); 17619 17620 HRESULT (STDMETHODCALLTYPE *SetIconSize)( 17621 ISearchFolderItemFactory* This, 17622 int iIconSize); 17623 17624 HRESULT (STDMETHODCALLTYPE *SetVisibleColumns)( 17625 ISearchFolderItemFactory* This, 17626 UINT cVisibleColumns, 17627 PROPERTYKEY *rgKey); 17628 17629 HRESULT (STDMETHODCALLTYPE *SetSortColumns)( 17630 ISearchFolderItemFactory* This, 17631 UINT cSortColumns, 17632 SORTCOLUMN *rgSortColumns); 17633 17634 HRESULT (STDMETHODCALLTYPE *SetGroupColumn)( 17635 ISearchFolderItemFactory* This, 17636 REFPROPERTYKEY keyGroup); 17637 17638 HRESULT (STDMETHODCALLTYPE *SetStacks)( 17639 ISearchFolderItemFactory* This, 17640 UINT cStackKeys, 17641 PROPERTYKEY *rgStackKeys); 17642 17643 HRESULT (STDMETHODCALLTYPE *SetScope)( 17644 ISearchFolderItemFactory* This, 17645 IShellItemArray *psiaScope); 17646 17647 HRESULT (STDMETHODCALLTYPE *SetCondition)( 17648 ISearchFolderItemFactory* This, 17649 ICondition *pCondition); 17650 17651 HRESULT (STDMETHODCALLTYPE *GetShellItem)( 17652 ISearchFolderItemFactory* This, 17653 REFIID riid, 17654 void **ppv); 17655 17656 HRESULT (STDMETHODCALLTYPE *GetIDList)( 17657 ISearchFolderItemFactory* This, 17658 PIDLIST_ABSOLUTE *ppidl); 17659 17660 END_INTERFACE 17661 } ISearchFolderItemFactoryVtbl; 17662 interface ISearchFolderItemFactory { 17663 CONST_VTBL ISearchFolderItemFactoryVtbl* lpVtbl; 17664 }; 17665 17666 #ifdef COBJMACROS 17667 #ifndef WIDL_C_INLINE_WRAPPERS 17668 /*** IUnknown methods ***/ 17669 #define ISearchFolderItemFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 17670 #define ISearchFolderItemFactory_AddRef(This) (This)->lpVtbl->AddRef(This) 17671 #define ISearchFolderItemFactory_Release(This) (This)->lpVtbl->Release(This) 17672 /*** ISearchFolderItemFactory methods ***/ 17673 #define ISearchFolderItemFactory_SetDisplayName(This,pszDisplayName) (This)->lpVtbl->SetDisplayName(This,pszDisplayName) 17674 #define ISearchFolderItemFactory_SetFolderTypeID(This,ftid) (This)->lpVtbl->SetFolderTypeID(This,ftid) 17675 #define ISearchFolderItemFactory_SetFolderLogicalViewMode(This,flvm) (This)->lpVtbl->SetFolderLogicalViewMode(This,flvm) 17676 #define ISearchFolderItemFactory_SetIconSize(This,iIconSize) (This)->lpVtbl->SetIconSize(This,iIconSize) 17677 #define ISearchFolderItemFactory_SetVisibleColumns(This,cVisibleColumns,rgKey) (This)->lpVtbl->SetVisibleColumns(This,cVisibleColumns,rgKey) 17678 #define ISearchFolderItemFactory_SetSortColumns(This,cSortColumns,rgSortColumns) (This)->lpVtbl->SetSortColumns(This,cSortColumns,rgSortColumns) 17679 #define ISearchFolderItemFactory_SetGroupColumn(This,keyGroup) (This)->lpVtbl->SetGroupColumn(This,keyGroup) 17680 #define ISearchFolderItemFactory_SetStacks(This,cStackKeys,rgStackKeys) (This)->lpVtbl->SetStacks(This,cStackKeys,rgStackKeys) 17681 #define ISearchFolderItemFactory_SetScope(This,psiaScope) (This)->lpVtbl->SetScope(This,psiaScope) 17682 #define ISearchFolderItemFactory_SetCondition(This,pCondition) (This)->lpVtbl->SetCondition(This,pCondition) 17683 #define ISearchFolderItemFactory_GetShellItem(This,riid,ppv) (This)->lpVtbl->GetShellItem(This,riid,ppv) 17684 #define ISearchFolderItemFactory_GetIDList(This,ppidl) (This)->lpVtbl->GetIDList(This,ppidl) 17685 #else 17686 /*** IUnknown methods ***/ 17687 static FORCEINLINE HRESULT ISearchFolderItemFactory_QueryInterface(ISearchFolderItemFactory* This,REFIID riid,void **ppvObject) { 17688 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 17689 } 17690 static FORCEINLINE ULONG ISearchFolderItemFactory_AddRef(ISearchFolderItemFactory* This) { 17691 return This->lpVtbl->AddRef(This); 17692 } 17693 static FORCEINLINE ULONG ISearchFolderItemFactory_Release(ISearchFolderItemFactory* This) { 17694 return This->lpVtbl->Release(This); 17695 } 17696 /*** ISearchFolderItemFactory methods ***/ 17697 static FORCEINLINE HRESULT ISearchFolderItemFactory_SetDisplayName(ISearchFolderItemFactory* This,LPCWSTR pszDisplayName) { 17698 return This->lpVtbl->SetDisplayName(This,pszDisplayName); 17699 } 17700 static FORCEINLINE HRESULT ISearchFolderItemFactory_SetFolderTypeID(ISearchFolderItemFactory* This,FOLDERTYPEID ftid) { 17701 return This->lpVtbl->SetFolderTypeID(This,ftid); 17702 } 17703 static FORCEINLINE HRESULT ISearchFolderItemFactory_SetFolderLogicalViewMode(ISearchFolderItemFactory* This,FOLDERLOGICALVIEWMODE flvm) { 17704 return This->lpVtbl->SetFolderLogicalViewMode(This,flvm); 17705 } 17706 static FORCEINLINE HRESULT ISearchFolderItemFactory_SetIconSize(ISearchFolderItemFactory* This,int iIconSize) { 17707 return This->lpVtbl->SetIconSize(This,iIconSize); 17708 } 17709 static FORCEINLINE HRESULT ISearchFolderItemFactory_SetVisibleColumns(ISearchFolderItemFactory* This,UINT cVisibleColumns,PROPERTYKEY *rgKey) { 17710 return This->lpVtbl->SetVisibleColumns(This,cVisibleColumns,rgKey); 17711 } 17712 static FORCEINLINE HRESULT ISearchFolderItemFactory_SetSortColumns(ISearchFolderItemFactory* This,UINT cSortColumns,SORTCOLUMN *rgSortColumns) { 17713 return This->lpVtbl->SetSortColumns(This,cSortColumns,rgSortColumns); 17714 } 17715 static FORCEINLINE HRESULT ISearchFolderItemFactory_SetGroupColumn(ISearchFolderItemFactory* This,REFPROPERTYKEY keyGroup) { 17716 return This->lpVtbl->SetGroupColumn(This,keyGroup); 17717 } 17718 static FORCEINLINE HRESULT ISearchFolderItemFactory_SetStacks(ISearchFolderItemFactory* This,UINT cStackKeys,PROPERTYKEY *rgStackKeys) { 17719 return This->lpVtbl->SetStacks(This,cStackKeys,rgStackKeys); 17720 } 17721 static FORCEINLINE HRESULT ISearchFolderItemFactory_SetScope(ISearchFolderItemFactory* This,IShellItemArray *psiaScope) { 17722 return This->lpVtbl->SetScope(This,psiaScope); 17723 } 17724 static FORCEINLINE HRESULT ISearchFolderItemFactory_SetCondition(ISearchFolderItemFactory* This,ICondition *pCondition) { 17725 return This->lpVtbl->SetCondition(This,pCondition); 17726 } 17727 static FORCEINLINE HRESULT ISearchFolderItemFactory_GetShellItem(ISearchFolderItemFactory* This,REFIID riid,void **ppv) { 17728 return This->lpVtbl->GetShellItem(This,riid,ppv); 17729 } 17730 static FORCEINLINE HRESULT ISearchFolderItemFactory_GetIDList(ISearchFolderItemFactory* This,PIDLIST_ABSOLUTE *ppidl) { 17731 return This->lpVtbl->GetIDList(This,ppidl); 17732 } 17733 #endif 17734 #endif 17735 17736 #endif 17737 17738 HRESULT STDMETHODCALLTYPE ISearchFolderItemFactory_SetDisplayName_Proxy( 17739 ISearchFolderItemFactory* This, 17740 LPCWSTR pszDisplayName); 17741 void __RPC_STUB ISearchFolderItemFactory_SetDisplayName_Stub( 17742 IRpcStubBuffer* This, 17743 IRpcChannelBuffer* pRpcChannelBuffer, 17744 PRPC_MESSAGE pRpcMessage, 17745 DWORD* pdwStubPhase); 17746 HRESULT STDMETHODCALLTYPE ISearchFolderItemFactory_SetFolderTypeID_Proxy( 17747 ISearchFolderItemFactory* This, 17748 FOLDERTYPEID ftid); 17749 void __RPC_STUB ISearchFolderItemFactory_SetFolderTypeID_Stub( 17750 IRpcStubBuffer* This, 17751 IRpcChannelBuffer* pRpcChannelBuffer, 17752 PRPC_MESSAGE pRpcMessage, 17753 DWORD* pdwStubPhase); 17754 HRESULT STDMETHODCALLTYPE ISearchFolderItemFactory_SetFolderLogicalViewMode_Proxy( 17755 ISearchFolderItemFactory* This, 17756 FOLDERLOGICALVIEWMODE flvm); 17757 void __RPC_STUB ISearchFolderItemFactory_SetFolderLogicalViewMode_Stub( 17758 IRpcStubBuffer* This, 17759 IRpcChannelBuffer* pRpcChannelBuffer, 17760 PRPC_MESSAGE pRpcMessage, 17761 DWORD* pdwStubPhase); 17762 HRESULT STDMETHODCALLTYPE ISearchFolderItemFactory_SetIconSize_Proxy( 17763 ISearchFolderItemFactory* This, 17764 int iIconSize); 17765 void __RPC_STUB ISearchFolderItemFactory_SetIconSize_Stub( 17766 IRpcStubBuffer* This, 17767 IRpcChannelBuffer* pRpcChannelBuffer, 17768 PRPC_MESSAGE pRpcMessage, 17769 DWORD* pdwStubPhase); 17770 HRESULT STDMETHODCALLTYPE ISearchFolderItemFactory_SetVisibleColumns_Proxy( 17771 ISearchFolderItemFactory* This, 17772 UINT cVisibleColumns, 17773 PROPERTYKEY *rgKey); 17774 void __RPC_STUB ISearchFolderItemFactory_SetVisibleColumns_Stub( 17775 IRpcStubBuffer* This, 17776 IRpcChannelBuffer* pRpcChannelBuffer, 17777 PRPC_MESSAGE pRpcMessage, 17778 DWORD* pdwStubPhase); 17779 HRESULT STDMETHODCALLTYPE ISearchFolderItemFactory_SetSortColumns_Proxy( 17780 ISearchFolderItemFactory* This, 17781 UINT cSortColumns, 17782 SORTCOLUMN *rgSortColumns); 17783 void __RPC_STUB ISearchFolderItemFactory_SetSortColumns_Stub( 17784 IRpcStubBuffer* This, 17785 IRpcChannelBuffer* pRpcChannelBuffer, 17786 PRPC_MESSAGE pRpcMessage, 17787 DWORD* pdwStubPhase); 17788 HRESULT STDMETHODCALLTYPE ISearchFolderItemFactory_SetGroupColumn_Proxy( 17789 ISearchFolderItemFactory* This, 17790 REFPROPERTYKEY keyGroup); 17791 void __RPC_STUB ISearchFolderItemFactory_SetGroupColumn_Stub( 17792 IRpcStubBuffer* This, 17793 IRpcChannelBuffer* pRpcChannelBuffer, 17794 PRPC_MESSAGE pRpcMessage, 17795 DWORD* pdwStubPhase); 17796 HRESULT STDMETHODCALLTYPE ISearchFolderItemFactory_SetStacks_Proxy( 17797 ISearchFolderItemFactory* This, 17798 UINT cStackKeys, 17799 PROPERTYKEY *rgStackKeys); 17800 void __RPC_STUB ISearchFolderItemFactory_SetStacks_Stub( 17801 IRpcStubBuffer* This, 17802 IRpcChannelBuffer* pRpcChannelBuffer, 17803 PRPC_MESSAGE pRpcMessage, 17804 DWORD* pdwStubPhase); 17805 HRESULT STDMETHODCALLTYPE ISearchFolderItemFactory_SetScope_Proxy( 17806 ISearchFolderItemFactory* This, 17807 IShellItemArray *psiaScope); 17808 void __RPC_STUB ISearchFolderItemFactory_SetScope_Stub( 17809 IRpcStubBuffer* This, 17810 IRpcChannelBuffer* pRpcChannelBuffer, 17811 PRPC_MESSAGE pRpcMessage, 17812 DWORD* pdwStubPhase); 17813 HRESULT STDMETHODCALLTYPE ISearchFolderItemFactory_SetCondition_Proxy( 17814 ISearchFolderItemFactory* This, 17815 ICondition *pCondition); 17816 void __RPC_STUB ISearchFolderItemFactory_SetCondition_Stub( 17817 IRpcStubBuffer* This, 17818 IRpcChannelBuffer* pRpcChannelBuffer, 17819 PRPC_MESSAGE pRpcMessage, 17820 DWORD* pdwStubPhase); 17821 HRESULT STDMETHODCALLTYPE ISearchFolderItemFactory_GetShellItem_Proxy( 17822 ISearchFolderItemFactory* This, 17823 REFIID riid, 17824 void **ppv); 17825 void __RPC_STUB ISearchFolderItemFactory_GetShellItem_Stub( 17826 IRpcStubBuffer* This, 17827 IRpcChannelBuffer* pRpcChannelBuffer, 17828 PRPC_MESSAGE pRpcMessage, 17829 DWORD* pdwStubPhase); 17830 HRESULT STDMETHODCALLTYPE ISearchFolderItemFactory_GetIDList_Proxy( 17831 ISearchFolderItemFactory* This, 17832 PIDLIST_ABSOLUTE *ppidl); 17833 void __RPC_STUB ISearchFolderItemFactory_GetIDList_Stub( 17834 IRpcStubBuffer* This, 17835 IRpcChannelBuffer* pRpcChannelBuffer, 17836 PRPC_MESSAGE pRpcMessage, 17837 DWORD* pdwStubPhase); 17838 17839 #endif /* __ISearchFolderItemFactory_INTERFACE_DEFINED__ */ 17840 17841 #endif 17842 17843 #define IEI_PRIORITY_MAX ITSAT_MAX_PRIORITY 17844 #define IEI_PRIORITY_MIN ITSAT_MIN_PRIORITY 17845 #define IEIT_PRIORITY_NORMAL ITSAT_DEFAULT_PRIORITY 17846 17847 #define IEIFLAG_ASYNC 0x0001 17848 #define IEIFLAG_CACHE 0x0002 17849 #define IEIFLAG_ASPECT 0x0004 17850 #define IEIFLAG_OFFLINE 0x0008 17851 #define IEIFLAG_GLEAM 0x0010 17852 #define IEIFLAG_SCREEN 0x0020 17853 #define IEIFLAG_ORIGSIZE 0x0040 17854 #define IEIFLAG_NOSTAMP 0x0080 17855 #define IEIFLAG_NOBORDER 0x0100 17856 #define IEIFLAG_QUALITY 0x0200 17857 #define IEIFLAG_REFRESH 0x0400 17858 17859 /***************************************************************************** 17860 * IExtractImage interface 17861 */ 17862 #ifndef __IExtractImage_INTERFACE_DEFINED__ 17863 #define __IExtractImage_INTERFACE_DEFINED__ 17864 17865 DEFINE_GUID(IID_IExtractImage, 0xbb2e617c, 0x0920, 0x11d1, 0x9a,0x0b, 0x00,0xc0,0x4f,0xc2,0xd6,0xc1); 17866 #if defined(__cplusplus) && !defined(CINTERFACE) 17867 MIDL_INTERFACE("bb2e617c-0920-11d1-9a0b-00c04fc2d6c1") 17868 IExtractImage : public IUnknown 17869 { 17870 virtual HRESULT STDMETHODCALLTYPE GetLocation( 17871 LPWSTR pszPathBuffer, 17872 DWORD cch, 17873 DWORD *pdwPriority, 17874 const SIZE *prgSize, 17875 DWORD dwRecClrDepth, 17876 DWORD *pdwFlags) = 0; 17877 17878 virtual HRESULT STDMETHODCALLTYPE Extract( 17879 HBITMAP *phBmpThumbnail) = 0; 17880 17881 }; 17882 #ifdef __CRT_UUID_DECL 17883 __CRT_UUID_DECL(IExtractImage, 0xbb2e617c, 0x0920, 0x11d1, 0x9a,0x0b, 0x00,0xc0,0x4f,0xc2,0xd6,0xc1) 17884 #endif 17885 #else 17886 typedef struct IExtractImageVtbl { 17887 BEGIN_INTERFACE 17888 17889 /*** IUnknown methods ***/ 17890 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 17891 IExtractImage* This, 17892 REFIID riid, 17893 void **ppvObject); 17894 17895 ULONG (STDMETHODCALLTYPE *AddRef)( 17896 IExtractImage* This); 17897 17898 ULONG (STDMETHODCALLTYPE *Release)( 17899 IExtractImage* This); 17900 17901 /*** IExtractImage methods ***/ 17902 HRESULT (STDMETHODCALLTYPE *GetLocation)( 17903 IExtractImage* This, 17904 LPWSTR pszPathBuffer, 17905 DWORD cch, 17906 DWORD *pdwPriority, 17907 const SIZE *prgSize, 17908 DWORD dwRecClrDepth, 17909 DWORD *pdwFlags); 17910 17911 HRESULT (STDMETHODCALLTYPE *Extract)( 17912 IExtractImage* This, 17913 HBITMAP *phBmpThumbnail); 17914 17915 END_INTERFACE 17916 } IExtractImageVtbl; 17917 interface IExtractImage { 17918 CONST_VTBL IExtractImageVtbl* lpVtbl; 17919 }; 17920 17921 #ifdef COBJMACROS 17922 #ifndef WIDL_C_INLINE_WRAPPERS 17923 /*** IUnknown methods ***/ 17924 #define IExtractImage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 17925 #define IExtractImage_AddRef(This) (This)->lpVtbl->AddRef(This) 17926 #define IExtractImage_Release(This) (This)->lpVtbl->Release(This) 17927 /*** IExtractImage methods ***/ 17928 #define IExtractImage_GetLocation(This,pszPathBuffer,cch,pdwPriority,prgSize,dwRecClrDepth,pdwFlags) (This)->lpVtbl->GetLocation(This,pszPathBuffer,cch,pdwPriority,prgSize,dwRecClrDepth,pdwFlags) 17929 #define IExtractImage_Extract(This,phBmpThumbnail) (This)->lpVtbl->Extract(This,phBmpThumbnail) 17930 #else 17931 /*** IUnknown methods ***/ 17932 static FORCEINLINE HRESULT IExtractImage_QueryInterface(IExtractImage* This,REFIID riid,void **ppvObject) { 17933 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 17934 } 17935 static FORCEINLINE ULONG IExtractImage_AddRef(IExtractImage* This) { 17936 return This->lpVtbl->AddRef(This); 17937 } 17938 static FORCEINLINE ULONG IExtractImage_Release(IExtractImage* This) { 17939 return This->lpVtbl->Release(This); 17940 } 17941 /*** IExtractImage methods ***/ 17942 static FORCEINLINE HRESULT IExtractImage_GetLocation(IExtractImage* This,LPWSTR pszPathBuffer,DWORD cch,DWORD *pdwPriority,const SIZE *prgSize,DWORD dwRecClrDepth,DWORD *pdwFlags) { 17943 return This->lpVtbl->GetLocation(This,pszPathBuffer,cch,pdwPriority,prgSize,dwRecClrDepth,pdwFlags); 17944 } 17945 static FORCEINLINE HRESULT IExtractImage_Extract(IExtractImage* This,HBITMAP *phBmpThumbnail) { 17946 return This->lpVtbl->Extract(This,phBmpThumbnail); 17947 } 17948 #endif 17949 #endif 17950 17951 #endif 17952 17953 HRESULT STDMETHODCALLTYPE IExtractImage_GetLocation_Proxy( 17954 IExtractImage* This, 17955 LPWSTR pszPathBuffer, 17956 DWORD cch, 17957 DWORD *pdwPriority, 17958 const SIZE *prgSize, 17959 DWORD dwRecClrDepth, 17960 DWORD *pdwFlags); 17961 void __RPC_STUB IExtractImage_GetLocation_Stub( 17962 IRpcStubBuffer* This, 17963 IRpcChannelBuffer* pRpcChannelBuffer, 17964 PRPC_MESSAGE pRpcMessage, 17965 DWORD* pdwStubPhase); 17966 HRESULT STDMETHODCALLTYPE IExtractImage_Extract_Proxy( 17967 IExtractImage* This, 17968 HBITMAP *phBmpThumbnail); 17969 void __RPC_STUB IExtractImage_Extract_Stub( 17970 IRpcStubBuffer* This, 17971 IRpcChannelBuffer* pRpcChannelBuffer, 17972 PRPC_MESSAGE pRpcMessage, 17973 DWORD* pdwStubPhase); 17974 17975 #endif /* __IExtractImage_INTERFACE_DEFINED__ */ 17976 17977 typedef IExtractImage *LPEXTRACTIMAGE; 17978 17979 /***************************************************************************** 17980 * IExtractImage2 interface 17981 */ 17982 #ifndef __IExtractImage2_INTERFACE_DEFINED__ 17983 #define __IExtractImage2_INTERFACE_DEFINED__ 17984 17985 DEFINE_GUID(IID_IExtractImage2, 0x953bb1ee, 0x93b4, 0x11d1, 0x98,0xa3, 0x00,0xc0,0x4f,0xb6,0x87,0xda); 17986 #if defined(__cplusplus) && !defined(CINTERFACE) 17987 MIDL_INTERFACE("953bb1ee-93b4-11d1-98a3-00c04fb687da") 17988 IExtractImage2 : public IExtractImage 17989 { 17990 virtual HRESULT STDMETHODCALLTYPE GetDateStamp( 17991 FILETIME *pDateStamp) = 0; 17992 17993 }; 17994 #ifdef __CRT_UUID_DECL 17995 __CRT_UUID_DECL(IExtractImage2, 0x953bb1ee, 0x93b4, 0x11d1, 0x98,0xa3, 0x00,0xc0,0x4f,0xb6,0x87,0xda) 17996 #endif 17997 #else 17998 typedef struct IExtractImage2Vtbl { 17999 BEGIN_INTERFACE 18000 18001 /*** IUnknown methods ***/ 18002 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 18003 IExtractImage2* This, 18004 REFIID riid, 18005 void **ppvObject); 18006 18007 ULONG (STDMETHODCALLTYPE *AddRef)( 18008 IExtractImage2* This); 18009 18010 ULONG (STDMETHODCALLTYPE *Release)( 18011 IExtractImage2* This); 18012 18013 /*** IExtractImage methods ***/ 18014 HRESULT (STDMETHODCALLTYPE *GetLocation)( 18015 IExtractImage2* This, 18016 LPWSTR pszPathBuffer, 18017 DWORD cch, 18018 DWORD *pdwPriority, 18019 const SIZE *prgSize, 18020 DWORD dwRecClrDepth, 18021 DWORD *pdwFlags); 18022 18023 HRESULT (STDMETHODCALLTYPE *Extract)( 18024 IExtractImage2* This, 18025 HBITMAP *phBmpThumbnail); 18026 18027 /*** IExtractImage2 methods ***/ 18028 HRESULT (STDMETHODCALLTYPE *GetDateStamp)( 18029 IExtractImage2* This, 18030 FILETIME *pDateStamp); 18031 18032 END_INTERFACE 18033 } IExtractImage2Vtbl; 18034 interface IExtractImage2 { 18035 CONST_VTBL IExtractImage2Vtbl* lpVtbl; 18036 }; 18037 18038 #ifdef COBJMACROS 18039 #ifndef WIDL_C_INLINE_WRAPPERS 18040 /*** IUnknown methods ***/ 18041 #define IExtractImage2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 18042 #define IExtractImage2_AddRef(This) (This)->lpVtbl->AddRef(This) 18043 #define IExtractImage2_Release(This) (This)->lpVtbl->Release(This) 18044 /*** IExtractImage methods ***/ 18045 #define IExtractImage2_GetLocation(This,pszPathBuffer,cch,pdwPriority,prgSize,dwRecClrDepth,pdwFlags) (This)->lpVtbl->GetLocation(This,pszPathBuffer,cch,pdwPriority,prgSize,dwRecClrDepth,pdwFlags) 18046 #define IExtractImage2_Extract(This,phBmpThumbnail) (This)->lpVtbl->Extract(This,phBmpThumbnail) 18047 /*** IExtractImage2 methods ***/ 18048 #define IExtractImage2_GetDateStamp(This,pDateStamp) (This)->lpVtbl->GetDateStamp(This,pDateStamp) 18049 #else 18050 /*** IUnknown methods ***/ 18051 static FORCEINLINE HRESULT IExtractImage2_QueryInterface(IExtractImage2* This,REFIID riid,void **ppvObject) { 18052 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 18053 } 18054 static FORCEINLINE ULONG IExtractImage2_AddRef(IExtractImage2* This) { 18055 return This->lpVtbl->AddRef(This); 18056 } 18057 static FORCEINLINE ULONG IExtractImage2_Release(IExtractImage2* This) { 18058 return This->lpVtbl->Release(This); 18059 } 18060 /*** IExtractImage methods ***/ 18061 static FORCEINLINE HRESULT IExtractImage2_GetLocation(IExtractImage2* This,LPWSTR pszPathBuffer,DWORD cch,DWORD *pdwPriority,const SIZE *prgSize,DWORD dwRecClrDepth,DWORD *pdwFlags) { 18062 return This->lpVtbl->GetLocation(This,pszPathBuffer,cch,pdwPriority,prgSize,dwRecClrDepth,pdwFlags); 18063 } 18064 static FORCEINLINE HRESULT IExtractImage2_Extract(IExtractImage2* This,HBITMAP *phBmpThumbnail) { 18065 return This->lpVtbl->Extract(This,phBmpThumbnail); 18066 } 18067 /*** IExtractImage2 methods ***/ 18068 static FORCEINLINE HRESULT IExtractImage2_GetDateStamp(IExtractImage2* This,FILETIME *pDateStamp) { 18069 return This->lpVtbl->GetDateStamp(This,pDateStamp); 18070 } 18071 #endif 18072 #endif 18073 18074 #endif 18075 18076 HRESULT STDMETHODCALLTYPE IExtractImage2_GetDateStamp_Proxy( 18077 IExtractImage2* This, 18078 FILETIME *pDateStamp); 18079 void __RPC_STUB IExtractImage2_GetDateStamp_Stub( 18080 IRpcStubBuffer* This, 18081 IRpcChannelBuffer* pRpcChannelBuffer, 18082 PRPC_MESSAGE pRpcMessage, 18083 DWORD* pdwStubPhase); 18084 18085 #endif /* __IExtractImage2_INTERFACE_DEFINED__ */ 18086 18087 typedef IExtractImage2 *LPEXTRACTIMAGE2; 18088 18089 /***************************************************************************** 18090 * IThumbnailHandlerFactory interface 18091 */ 18092 #ifndef __IThumbnailHandlerFactory_INTERFACE_DEFINED__ 18093 #define __IThumbnailHandlerFactory_INTERFACE_DEFINED__ 18094 18095 DEFINE_GUID(IID_IThumbnailHandlerFactory, 0xe35b4b2e, 0x00da, 0x4bc1, 0x9f,0x13, 0x38,0xbc,0x11,0xf5,0xd4,0x17); 18096 #if defined(__cplusplus) && !defined(CINTERFACE) 18097 MIDL_INTERFACE("e35b4b2e-00da-4bc1-9f13-38bc11f5d417") 18098 IThumbnailHandlerFactory : public IUnknown 18099 { 18100 virtual HRESULT STDMETHODCALLTYPE GetThumbnailHandler( 18101 PCUITEMID_CHILD pidlChild, 18102 IBindCtx *pbc, 18103 REFIID riid, 18104 void **ppv) = 0; 18105 18106 }; 18107 #ifdef __CRT_UUID_DECL 18108 __CRT_UUID_DECL(IThumbnailHandlerFactory, 0xe35b4b2e, 0x00da, 0x4bc1, 0x9f,0x13, 0x38,0xbc,0x11,0xf5,0xd4,0x17) 18109 #endif 18110 #else 18111 typedef struct IThumbnailHandlerFactoryVtbl { 18112 BEGIN_INTERFACE 18113 18114 /*** IUnknown methods ***/ 18115 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 18116 IThumbnailHandlerFactory* This, 18117 REFIID riid, 18118 void **ppvObject); 18119 18120 ULONG (STDMETHODCALLTYPE *AddRef)( 18121 IThumbnailHandlerFactory* This); 18122 18123 ULONG (STDMETHODCALLTYPE *Release)( 18124 IThumbnailHandlerFactory* This); 18125 18126 /*** IThumbnailHandlerFactory methods ***/ 18127 HRESULT (STDMETHODCALLTYPE *GetThumbnailHandler)( 18128 IThumbnailHandlerFactory* This, 18129 PCUITEMID_CHILD pidlChild, 18130 IBindCtx *pbc, 18131 REFIID riid, 18132 void **ppv); 18133 18134 END_INTERFACE 18135 } IThumbnailHandlerFactoryVtbl; 18136 interface IThumbnailHandlerFactory { 18137 CONST_VTBL IThumbnailHandlerFactoryVtbl* lpVtbl; 18138 }; 18139 18140 #ifdef COBJMACROS 18141 #ifndef WIDL_C_INLINE_WRAPPERS 18142 /*** IUnknown methods ***/ 18143 #define IThumbnailHandlerFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 18144 #define IThumbnailHandlerFactory_AddRef(This) (This)->lpVtbl->AddRef(This) 18145 #define IThumbnailHandlerFactory_Release(This) (This)->lpVtbl->Release(This) 18146 /*** IThumbnailHandlerFactory methods ***/ 18147 #define IThumbnailHandlerFactory_GetThumbnailHandler(This,pidlChild,pbc,riid,ppv) (This)->lpVtbl->GetThumbnailHandler(This,pidlChild,pbc,riid,ppv) 18148 #else 18149 /*** IUnknown methods ***/ 18150 static FORCEINLINE HRESULT IThumbnailHandlerFactory_QueryInterface(IThumbnailHandlerFactory* This,REFIID riid,void **ppvObject) { 18151 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 18152 } 18153 static FORCEINLINE ULONG IThumbnailHandlerFactory_AddRef(IThumbnailHandlerFactory* This) { 18154 return This->lpVtbl->AddRef(This); 18155 } 18156 static FORCEINLINE ULONG IThumbnailHandlerFactory_Release(IThumbnailHandlerFactory* This) { 18157 return This->lpVtbl->Release(This); 18158 } 18159 /*** IThumbnailHandlerFactory methods ***/ 18160 static FORCEINLINE HRESULT IThumbnailHandlerFactory_GetThumbnailHandler(IThumbnailHandlerFactory* This,PCUITEMID_CHILD pidlChild,IBindCtx *pbc,REFIID riid,void **ppv) { 18161 return This->lpVtbl->GetThumbnailHandler(This,pidlChild,pbc,riid,ppv); 18162 } 18163 #endif 18164 #endif 18165 18166 #endif 18167 18168 HRESULT STDMETHODCALLTYPE IThumbnailHandlerFactory_GetThumbnailHandler_Proxy( 18169 IThumbnailHandlerFactory* This, 18170 PCUITEMID_CHILD pidlChild, 18171 IBindCtx *pbc, 18172 REFIID riid, 18173 void **ppv); 18174 void __RPC_STUB IThumbnailHandlerFactory_GetThumbnailHandler_Stub( 18175 IRpcStubBuffer* This, 18176 IRpcChannelBuffer* pRpcChannelBuffer, 18177 PRPC_MESSAGE pRpcMessage, 18178 DWORD* pdwStubPhase); 18179 18180 #endif /* __IThumbnailHandlerFactory_INTERFACE_DEFINED__ */ 18181 18182 18183 /***************************************************************************** 18184 * IParentAndItem interface 18185 */ 18186 #ifndef __IParentAndItem_INTERFACE_DEFINED__ 18187 #define __IParentAndItem_INTERFACE_DEFINED__ 18188 18189 DEFINE_GUID(IID_IParentAndItem, 0xb3a4b685, 0xb685, 0x4805, 0x99,0xd9, 0x5d,0xea,0xd2,0x87,0x32,0x36); 18190 #if defined(__cplusplus) && !defined(CINTERFACE) 18191 MIDL_INTERFACE("b3a4b685-b685-4805-99d9-5dead2873236") 18192 IParentAndItem : public IUnknown 18193 { 18194 virtual HRESULT STDMETHODCALLTYPE SetParentAndItem( 18195 PCIDLIST_ABSOLUTE pidlParent, 18196 IShellFolder *psf, 18197 PCUITEMID_CHILD pidlChild) = 0; 18198 18199 virtual HRESULT STDMETHODCALLTYPE GetParentAndItem( 18200 PIDLIST_ABSOLUTE *ppidlParent, 18201 IShellFolder **ppsf, 18202 PITEMID_CHILD *ppidlChild) = 0; 18203 18204 }; 18205 #ifdef __CRT_UUID_DECL 18206 __CRT_UUID_DECL(IParentAndItem, 0xb3a4b685, 0xb685, 0x4805, 0x99,0xd9, 0x5d,0xea,0xd2,0x87,0x32,0x36) 18207 #endif 18208 #else 18209 typedef struct IParentAndItemVtbl { 18210 BEGIN_INTERFACE 18211 18212 /*** IUnknown methods ***/ 18213 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 18214 IParentAndItem* This, 18215 REFIID riid, 18216 void **ppvObject); 18217 18218 ULONG (STDMETHODCALLTYPE *AddRef)( 18219 IParentAndItem* This); 18220 18221 ULONG (STDMETHODCALLTYPE *Release)( 18222 IParentAndItem* This); 18223 18224 /*** IParentAndItem methods ***/ 18225 HRESULT (STDMETHODCALLTYPE *SetParentAndItem)( 18226 IParentAndItem* This, 18227 PCIDLIST_ABSOLUTE pidlParent, 18228 IShellFolder *psf, 18229 PCUITEMID_CHILD pidlChild); 18230 18231 HRESULT (STDMETHODCALLTYPE *GetParentAndItem)( 18232 IParentAndItem* This, 18233 PIDLIST_ABSOLUTE *ppidlParent, 18234 IShellFolder **ppsf, 18235 PITEMID_CHILD *ppidlChild); 18236 18237 END_INTERFACE 18238 } IParentAndItemVtbl; 18239 interface IParentAndItem { 18240 CONST_VTBL IParentAndItemVtbl* lpVtbl; 18241 }; 18242 18243 #ifdef COBJMACROS 18244 #ifndef WIDL_C_INLINE_WRAPPERS 18245 /*** IUnknown methods ***/ 18246 #define IParentAndItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 18247 #define IParentAndItem_AddRef(This) (This)->lpVtbl->AddRef(This) 18248 #define IParentAndItem_Release(This) (This)->lpVtbl->Release(This) 18249 /*** IParentAndItem methods ***/ 18250 #define IParentAndItem_SetParentAndItem(This,pidlParent,psf,pidlChild) (This)->lpVtbl->SetParentAndItem(This,pidlParent,psf,pidlChild) 18251 #define IParentAndItem_GetParentAndItem(This,ppidlParent,ppsf,ppidlChild) (This)->lpVtbl->GetParentAndItem(This,ppidlParent,ppsf,ppidlChild) 18252 #else 18253 /*** IUnknown methods ***/ 18254 static FORCEINLINE HRESULT IParentAndItem_QueryInterface(IParentAndItem* This,REFIID riid,void **ppvObject) { 18255 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 18256 } 18257 static FORCEINLINE ULONG IParentAndItem_AddRef(IParentAndItem* This) { 18258 return This->lpVtbl->AddRef(This); 18259 } 18260 static FORCEINLINE ULONG IParentAndItem_Release(IParentAndItem* This) { 18261 return This->lpVtbl->Release(This); 18262 } 18263 /*** IParentAndItem methods ***/ 18264 static FORCEINLINE HRESULT IParentAndItem_SetParentAndItem(IParentAndItem* This,PCIDLIST_ABSOLUTE pidlParent,IShellFolder *psf,PCUITEMID_CHILD pidlChild) { 18265 return This->lpVtbl->SetParentAndItem(This,pidlParent,psf,pidlChild); 18266 } 18267 static FORCEINLINE HRESULT IParentAndItem_GetParentAndItem(IParentAndItem* This,PIDLIST_ABSOLUTE *ppidlParent,IShellFolder **ppsf,PITEMID_CHILD *ppidlChild) { 18268 return This->lpVtbl->GetParentAndItem(This,ppidlParent,ppsf,ppidlChild); 18269 } 18270 #endif 18271 #endif 18272 18273 #endif 18274 18275 HRESULT STDMETHODCALLTYPE IParentAndItem_SetParentAndItem_Proxy( 18276 IParentAndItem* This, 18277 PCIDLIST_ABSOLUTE pidlParent, 18278 IShellFolder *psf, 18279 PCUITEMID_CHILD pidlChild); 18280 void __RPC_STUB IParentAndItem_SetParentAndItem_Stub( 18281 IRpcStubBuffer* This, 18282 IRpcChannelBuffer* pRpcChannelBuffer, 18283 PRPC_MESSAGE pRpcMessage, 18284 DWORD* pdwStubPhase); 18285 HRESULT STDMETHODCALLTYPE IParentAndItem_RemoteGetParentAndItem_Proxy( 18286 IParentAndItem* This, 18287 PIDLIST_ABSOLUTE *ppidlParent, 18288 IShellFolder **ppsf, 18289 PITEMID_CHILD *ppidlChild); 18290 void __RPC_STUB IParentAndItem_RemoteGetParentAndItem_Stub( 18291 IRpcStubBuffer* This, 18292 IRpcChannelBuffer* pRpcChannelBuffer, 18293 PRPC_MESSAGE pRpcMessage, 18294 DWORD* pdwStubPhase); 18295 HRESULT CALLBACK IParentAndItem_GetParentAndItem_Proxy( 18296 IParentAndItem* This, 18297 PIDLIST_ABSOLUTE *ppidlParent, 18298 IShellFolder **ppsf, 18299 PITEMID_CHILD *ppidlChild); 18300 HRESULT __RPC_STUB IParentAndItem_GetParentAndItem_Stub( 18301 IParentAndItem* This, 18302 PIDLIST_ABSOLUTE *ppidlParent, 18303 IShellFolder **ppsf, 18304 PITEMID_CHILD *ppidlChild); 18305 18306 #endif /* __IParentAndItem_INTERFACE_DEFINED__ */ 18307 18308 18309 /***************************************************************************** 18310 * IDockingWindow interface 18311 */ 18312 #ifndef __IDockingWindow_INTERFACE_DEFINED__ 18313 #define __IDockingWindow_INTERFACE_DEFINED__ 18314 18315 DEFINE_GUID(IID_IDockingWindow, 0x012dd920, 0x7b26, 0x11d0, 0x8c,0xa9, 0x00,0xa0,0xc9,0x2d,0xbf,0xe8); 18316 #if defined(__cplusplus) && !defined(CINTERFACE) 18317 MIDL_INTERFACE("012dd920-7b26-11d0-8ca9-00a0c92dbfe8") 18318 IDockingWindow : public IOleWindow 18319 { 18320 virtual HRESULT STDMETHODCALLTYPE ShowDW( 18321 WINBOOL fShow) = 0; 18322 18323 virtual HRESULT STDMETHODCALLTYPE CloseDW( 18324 DWORD dwReserved) = 0; 18325 18326 virtual HRESULT STDMETHODCALLTYPE ResizeBorderDW( 18327 LPCRECT prcBorder, 18328 IUnknown *punkToolbarSite, 18329 WINBOOL fReserved) = 0; 18330 18331 }; 18332 #ifdef __CRT_UUID_DECL 18333 __CRT_UUID_DECL(IDockingWindow, 0x012dd920, 0x7b26, 0x11d0, 0x8c,0xa9, 0x00,0xa0,0xc9,0x2d,0xbf,0xe8) 18334 #endif 18335 #else 18336 typedef struct IDockingWindowVtbl { 18337 BEGIN_INTERFACE 18338 18339 /*** IUnknown methods ***/ 18340 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 18341 IDockingWindow* This, 18342 REFIID riid, 18343 void **ppvObject); 18344 18345 ULONG (STDMETHODCALLTYPE *AddRef)( 18346 IDockingWindow* This); 18347 18348 ULONG (STDMETHODCALLTYPE *Release)( 18349 IDockingWindow* This); 18350 18351 /*** IOleWindow methods ***/ 18352 HRESULT (STDMETHODCALLTYPE *GetWindow)( 18353 IDockingWindow* This, 18354 HWND *phwnd); 18355 18356 HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( 18357 IDockingWindow* This, 18358 WINBOOL fEnterMode); 18359 18360 /*** IDockingWindow methods ***/ 18361 HRESULT (STDMETHODCALLTYPE *ShowDW)( 18362 IDockingWindow* This, 18363 WINBOOL fShow); 18364 18365 HRESULT (STDMETHODCALLTYPE *CloseDW)( 18366 IDockingWindow* This, 18367 DWORD dwReserved); 18368 18369 HRESULT (STDMETHODCALLTYPE *ResizeBorderDW)( 18370 IDockingWindow* This, 18371 LPCRECT prcBorder, 18372 IUnknown *punkToolbarSite, 18373 WINBOOL fReserved); 18374 18375 END_INTERFACE 18376 } IDockingWindowVtbl; 18377 interface IDockingWindow { 18378 CONST_VTBL IDockingWindowVtbl* lpVtbl; 18379 }; 18380 18381 #ifdef COBJMACROS 18382 #ifndef WIDL_C_INLINE_WRAPPERS 18383 /*** IUnknown methods ***/ 18384 #define IDockingWindow_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 18385 #define IDockingWindow_AddRef(This) (This)->lpVtbl->AddRef(This) 18386 #define IDockingWindow_Release(This) (This)->lpVtbl->Release(This) 18387 /*** IOleWindow methods ***/ 18388 #define IDockingWindow_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) 18389 #define IDockingWindow_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) 18390 /*** IDockingWindow methods ***/ 18391 #define IDockingWindow_ShowDW(This,fShow) (This)->lpVtbl->ShowDW(This,fShow) 18392 #define IDockingWindow_CloseDW(This,dwReserved) (This)->lpVtbl->CloseDW(This,dwReserved) 18393 #define IDockingWindow_ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved) (This)->lpVtbl->ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved) 18394 #else 18395 /*** IUnknown methods ***/ 18396 static FORCEINLINE HRESULT IDockingWindow_QueryInterface(IDockingWindow* This,REFIID riid,void **ppvObject) { 18397 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 18398 } 18399 static FORCEINLINE ULONG IDockingWindow_AddRef(IDockingWindow* This) { 18400 return This->lpVtbl->AddRef(This); 18401 } 18402 static FORCEINLINE ULONG IDockingWindow_Release(IDockingWindow* This) { 18403 return This->lpVtbl->Release(This); 18404 } 18405 /*** IOleWindow methods ***/ 18406 static FORCEINLINE HRESULT IDockingWindow_GetWindow(IDockingWindow* This,HWND *phwnd) { 18407 return This->lpVtbl->GetWindow(This,phwnd); 18408 } 18409 static FORCEINLINE HRESULT IDockingWindow_ContextSensitiveHelp(IDockingWindow* This,WINBOOL fEnterMode) { 18410 return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); 18411 } 18412 /*** IDockingWindow methods ***/ 18413 static FORCEINLINE HRESULT IDockingWindow_ShowDW(IDockingWindow* This,WINBOOL fShow) { 18414 return This->lpVtbl->ShowDW(This,fShow); 18415 } 18416 static FORCEINLINE HRESULT IDockingWindow_CloseDW(IDockingWindow* This,DWORD dwReserved) { 18417 return This->lpVtbl->CloseDW(This,dwReserved); 18418 } 18419 static FORCEINLINE HRESULT IDockingWindow_ResizeBorderDW(IDockingWindow* This,LPCRECT prcBorder,IUnknown *punkToolbarSite,WINBOOL fReserved) { 18420 return This->lpVtbl->ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved); 18421 } 18422 #endif 18423 #endif 18424 18425 #endif 18426 18427 HRESULT STDMETHODCALLTYPE IDockingWindow_ShowDW_Proxy( 18428 IDockingWindow* This, 18429 WINBOOL fShow); 18430 void __RPC_STUB IDockingWindow_ShowDW_Stub( 18431 IRpcStubBuffer* This, 18432 IRpcChannelBuffer* pRpcChannelBuffer, 18433 PRPC_MESSAGE pRpcMessage, 18434 DWORD* pdwStubPhase); 18435 HRESULT STDMETHODCALLTYPE IDockingWindow_CloseDW_Proxy( 18436 IDockingWindow* This, 18437 DWORD dwReserved); 18438 void __RPC_STUB IDockingWindow_CloseDW_Stub( 18439 IRpcStubBuffer* This, 18440 IRpcChannelBuffer* pRpcChannelBuffer, 18441 PRPC_MESSAGE pRpcMessage, 18442 DWORD* pdwStubPhase); 18443 HRESULT STDMETHODCALLTYPE IDockingWindow_ResizeBorderDW_Proxy( 18444 IDockingWindow* This, 18445 LPCRECT prcBorder, 18446 IUnknown *punkToolbarSite, 18447 WINBOOL fReserved); 18448 void __RPC_STUB IDockingWindow_ResizeBorderDW_Stub( 18449 IRpcStubBuffer* This, 18450 IRpcChannelBuffer* pRpcChannelBuffer, 18451 PRPC_MESSAGE pRpcMessage, 18452 DWORD* pdwStubPhase); 18453 18454 #endif /* __IDockingWindow_INTERFACE_DEFINED__ */ 18455 18456 18457 #define DBIM_MINSIZE 0x0001 18458 #define DBIM_MAXSIZE 0x0002 18459 #define DBIM_INTEGRAL 0x0004 18460 #define DBIM_ACTUAL 0x0008 18461 #define DBIM_TITLE 0x0010 18462 #define DBIM_MODEFLAGS 0x0020 18463 #define DBIM_BKCOLOR 0x0040 18464 18465 #include <pshpack8.h> 18466 typedef struct DESKBANDINFO { 18467 DWORD dwMask; 18468 POINTL ptMinSize; 18469 POINTL ptMaxSize; 18470 POINTL ptIntegral; 18471 POINTL ptActual; 18472 WCHAR wszTitle[256]; 18473 DWORD dwModeFlags; 18474 COLORREF crBkgnd; 18475 } DESKBANDINFO; 18476 #include <poppack.h> 18477 18478 #define DBIMF_NORMAL 0x0000 18479 #define DBIMF_FIXED 0x0001 18480 #define DBIMF_FIXEDBMP 0x0004 18481 #define DBIMF_VARIABLEHEIGHT 0x0008 18482 #define DBIMF_UNDELETEABLE 0x0010 18483 #define DBIMF_DEBOSSED 0x0020 18484 #define DBIMF_BKCOLOR 0x0040 18485 #define DBIMF_USECHEVRON 0x0080 18486 #define DBIMF_BREAK 0x0100 18487 #define DBIMF_ADDTOFRONT 0x0200 18488 #define DBIMF_TOPALIGN 0x0400 18489 #if NTDDI_VERSION >= NTDDI_VISTA 18490 #define DBIMF_NOGRIPPER 0x0800 18491 #define DBIMF_ALWAYSGRIPPER 0x1000 18492 #define DBIMF_NOMARGINS 0x2000 18493 #endif 18494 18495 #define DBIF_VIEWMODE_NORMAL 0x0000 18496 #define DBIF_VIEWMODE_VERTICAL 0x0001 18497 #define DBIF_VIEWMODE_FLOATING 0x0002 18498 #define DBIF_VIEWMODE_TRANSPARENT 0x0004 18499 18500 enum tagDESKBANDCID { 18501 DBID_BANDINFOCHANGED = 0, 18502 DBID_SHOWONLY = 1, 18503 DBID_MAXIMIZEBAND = 2, 18504 DBID_PUSHCHEVRON = 3, 18505 DBID_DELAYINIT = 4, 18506 DBID_FINISHINIT = 5, 18507 DBID_SETWINDOWTHEME = 6, 18508 DBID_PERMITAUTOHIDE = 7 18509 }; 18510 18511 18512 #define DBPC_SELECTFIRST (DWORD)-1 18513 #define DBPC_SELECTLAST (DWORD)-2 18514 18515 #define CGID_DeskBand IID_IDeskBand 18516 18517 /***************************************************************************** 18518 * IDeskBand interface 18519 */ 18520 #ifndef __IDeskBand_INTERFACE_DEFINED__ 18521 #define __IDeskBand_INTERFACE_DEFINED__ 18522 18523 DEFINE_GUID(IID_IDeskBand, 0xeb0fe172, 0x1a3a, 0x11d0, 0x89,0xb3, 0x00,0xa0,0xc9,0x0a,0x90,0xac); 18524 #if defined(__cplusplus) && !defined(CINTERFACE) 18525 MIDL_INTERFACE("eb0fe172-1a3a-11d0-89b3-00a0c90a90ac") 18526 IDeskBand : public IDockingWindow 18527 { 18528 virtual HRESULT STDMETHODCALLTYPE GetBandInfo( 18529 DWORD dwBandID, 18530 DWORD dwViewMode, 18531 DESKBANDINFO *pdbi) = 0; 18532 18533 }; 18534 #ifdef __CRT_UUID_DECL 18535 __CRT_UUID_DECL(IDeskBand, 0xeb0fe172, 0x1a3a, 0x11d0, 0x89,0xb3, 0x00,0xa0,0xc9,0x0a,0x90,0xac) 18536 #endif 18537 #else 18538 typedef struct IDeskBandVtbl { 18539 BEGIN_INTERFACE 18540 18541 /*** IUnknown methods ***/ 18542 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 18543 IDeskBand* This, 18544 REFIID riid, 18545 void **ppvObject); 18546 18547 ULONG (STDMETHODCALLTYPE *AddRef)( 18548 IDeskBand* This); 18549 18550 ULONG (STDMETHODCALLTYPE *Release)( 18551 IDeskBand* This); 18552 18553 /*** IOleWindow methods ***/ 18554 HRESULT (STDMETHODCALLTYPE *GetWindow)( 18555 IDeskBand* This, 18556 HWND *phwnd); 18557 18558 HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( 18559 IDeskBand* This, 18560 WINBOOL fEnterMode); 18561 18562 /*** IDockingWindow methods ***/ 18563 HRESULT (STDMETHODCALLTYPE *ShowDW)( 18564 IDeskBand* This, 18565 WINBOOL fShow); 18566 18567 HRESULT (STDMETHODCALLTYPE *CloseDW)( 18568 IDeskBand* This, 18569 DWORD dwReserved); 18570 18571 HRESULT (STDMETHODCALLTYPE *ResizeBorderDW)( 18572 IDeskBand* This, 18573 LPCRECT prcBorder, 18574 IUnknown *punkToolbarSite, 18575 WINBOOL fReserved); 18576 18577 /*** IDeskBand methods ***/ 18578 HRESULT (STDMETHODCALLTYPE *GetBandInfo)( 18579 IDeskBand* This, 18580 DWORD dwBandID, 18581 DWORD dwViewMode, 18582 DESKBANDINFO *pdbi); 18583 18584 END_INTERFACE 18585 } IDeskBandVtbl; 18586 interface IDeskBand { 18587 CONST_VTBL IDeskBandVtbl* lpVtbl; 18588 }; 18589 18590 #ifdef COBJMACROS 18591 #ifndef WIDL_C_INLINE_WRAPPERS 18592 /*** IUnknown methods ***/ 18593 #define IDeskBand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 18594 #define IDeskBand_AddRef(This) (This)->lpVtbl->AddRef(This) 18595 #define IDeskBand_Release(This) (This)->lpVtbl->Release(This) 18596 /*** IOleWindow methods ***/ 18597 #define IDeskBand_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) 18598 #define IDeskBand_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) 18599 /*** IDockingWindow methods ***/ 18600 #define IDeskBand_ShowDW(This,fShow) (This)->lpVtbl->ShowDW(This,fShow) 18601 #define IDeskBand_CloseDW(This,dwReserved) (This)->lpVtbl->CloseDW(This,dwReserved) 18602 #define IDeskBand_ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved) (This)->lpVtbl->ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved) 18603 /*** IDeskBand methods ***/ 18604 #define IDeskBand_GetBandInfo(This,dwBandID,dwViewMode,pdbi) (This)->lpVtbl->GetBandInfo(This,dwBandID,dwViewMode,pdbi) 18605 #else 18606 /*** IUnknown methods ***/ 18607 static FORCEINLINE HRESULT IDeskBand_QueryInterface(IDeskBand* This,REFIID riid,void **ppvObject) { 18608 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 18609 } 18610 static FORCEINLINE ULONG IDeskBand_AddRef(IDeskBand* This) { 18611 return This->lpVtbl->AddRef(This); 18612 } 18613 static FORCEINLINE ULONG IDeskBand_Release(IDeskBand* This) { 18614 return This->lpVtbl->Release(This); 18615 } 18616 /*** IOleWindow methods ***/ 18617 static FORCEINLINE HRESULT IDeskBand_GetWindow(IDeskBand* This,HWND *phwnd) { 18618 return This->lpVtbl->GetWindow(This,phwnd); 18619 } 18620 static FORCEINLINE HRESULT IDeskBand_ContextSensitiveHelp(IDeskBand* This,WINBOOL fEnterMode) { 18621 return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); 18622 } 18623 /*** IDockingWindow methods ***/ 18624 static FORCEINLINE HRESULT IDeskBand_ShowDW(IDeskBand* This,WINBOOL fShow) { 18625 return This->lpVtbl->ShowDW(This,fShow); 18626 } 18627 static FORCEINLINE HRESULT IDeskBand_CloseDW(IDeskBand* This,DWORD dwReserved) { 18628 return This->lpVtbl->CloseDW(This,dwReserved); 18629 } 18630 static FORCEINLINE HRESULT IDeskBand_ResizeBorderDW(IDeskBand* This,LPCRECT prcBorder,IUnknown *punkToolbarSite,WINBOOL fReserved) { 18631 return This->lpVtbl->ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved); 18632 } 18633 /*** IDeskBand methods ***/ 18634 static FORCEINLINE HRESULT IDeskBand_GetBandInfo(IDeskBand* This,DWORD dwBandID,DWORD dwViewMode,DESKBANDINFO *pdbi) { 18635 return This->lpVtbl->GetBandInfo(This,dwBandID,dwViewMode,pdbi); 18636 } 18637 #endif 18638 #endif 18639 18640 #endif 18641 18642 HRESULT STDMETHODCALLTYPE IDeskBand_GetBandInfo_Proxy( 18643 IDeskBand* This, 18644 DWORD dwBandID, 18645 DWORD dwViewMode, 18646 DESKBANDINFO *pdbi); 18647 void __RPC_STUB IDeskBand_GetBandInfo_Stub( 18648 IRpcStubBuffer* This, 18649 IRpcChannelBuffer* pRpcChannelBuffer, 18650 PRPC_MESSAGE pRpcMessage, 18651 DWORD* pdwStubPhase); 18652 18653 #endif /* __IDeskBand_INTERFACE_DEFINED__ */ 18654 18655 18656 #if NTDDI_VERSION >= NTDDI_VISTA 18657 /***************************************************************************** 18658 * IDeskBandInfo interface 18659 */ 18660 #ifndef __IDeskBandInfo_INTERFACE_DEFINED__ 18661 #define __IDeskBandInfo_INTERFACE_DEFINED__ 18662 18663 DEFINE_GUID(IID_IDeskBandInfo, 0x77e425fc, 0xcbf9, 0x4307, 0xba,0x6a, 0xbb,0x57,0x27,0x74,0x56,0x61); 18664 #if defined(__cplusplus) && !defined(CINTERFACE) 18665 MIDL_INTERFACE("77e425fc-cbf9-4307-ba6a-bb5727745661") 18666 IDeskBandInfo : public IUnknown 18667 { 18668 virtual HRESULT STDMETHODCALLTYPE GetDefaultBandWidth( 18669 DWORD dwBandID, 18670 DWORD dwViewMode, 18671 int *pnWidth) = 0; 18672 18673 }; 18674 #ifdef __CRT_UUID_DECL 18675 __CRT_UUID_DECL(IDeskBandInfo, 0x77e425fc, 0xcbf9, 0x4307, 0xba,0x6a, 0xbb,0x57,0x27,0x74,0x56,0x61) 18676 #endif 18677 #else 18678 typedef struct IDeskBandInfoVtbl { 18679 BEGIN_INTERFACE 18680 18681 /*** IUnknown methods ***/ 18682 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 18683 IDeskBandInfo* This, 18684 REFIID riid, 18685 void **ppvObject); 18686 18687 ULONG (STDMETHODCALLTYPE *AddRef)( 18688 IDeskBandInfo* This); 18689 18690 ULONG (STDMETHODCALLTYPE *Release)( 18691 IDeskBandInfo* This); 18692 18693 /*** IDeskBandInfo methods ***/ 18694 HRESULT (STDMETHODCALLTYPE *GetDefaultBandWidth)( 18695 IDeskBandInfo* This, 18696 DWORD dwBandID, 18697 DWORD dwViewMode, 18698 int *pnWidth); 18699 18700 END_INTERFACE 18701 } IDeskBandInfoVtbl; 18702 interface IDeskBandInfo { 18703 CONST_VTBL IDeskBandInfoVtbl* lpVtbl; 18704 }; 18705 18706 #ifdef COBJMACROS 18707 #ifndef WIDL_C_INLINE_WRAPPERS 18708 /*** IUnknown methods ***/ 18709 #define IDeskBandInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 18710 #define IDeskBandInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 18711 #define IDeskBandInfo_Release(This) (This)->lpVtbl->Release(This) 18712 /*** IDeskBandInfo methods ***/ 18713 #define IDeskBandInfo_GetDefaultBandWidth(This,dwBandID,dwViewMode,pnWidth) (This)->lpVtbl->GetDefaultBandWidth(This,dwBandID,dwViewMode,pnWidth) 18714 #else 18715 /*** IUnknown methods ***/ 18716 static FORCEINLINE HRESULT IDeskBandInfo_QueryInterface(IDeskBandInfo* This,REFIID riid,void **ppvObject) { 18717 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 18718 } 18719 static FORCEINLINE ULONG IDeskBandInfo_AddRef(IDeskBandInfo* This) { 18720 return This->lpVtbl->AddRef(This); 18721 } 18722 static FORCEINLINE ULONG IDeskBandInfo_Release(IDeskBandInfo* This) { 18723 return This->lpVtbl->Release(This); 18724 } 18725 /*** IDeskBandInfo methods ***/ 18726 static FORCEINLINE HRESULT IDeskBandInfo_GetDefaultBandWidth(IDeskBandInfo* This,DWORD dwBandID,DWORD dwViewMode,int *pnWidth) { 18727 return This->lpVtbl->GetDefaultBandWidth(This,dwBandID,dwViewMode,pnWidth); 18728 } 18729 #endif 18730 #endif 18731 18732 #endif 18733 18734 HRESULT STDMETHODCALLTYPE IDeskBandInfo_GetDefaultBandWidth_Proxy( 18735 IDeskBandInfo* This, 18736 DWORD dwBandID, 18737 DWORD dwViewMode, 18738 int *pnWidth); 18739 void __RPC_STUB IDeskBandInfo_GetDefaultBandWidth_Stub( 18740 IRpcStubBuffer* This, 18741 IRpcChannelBuffer* pRpcChannelBuffer, 18742 PRPC_MESSAGE pRpcMessage, 18743 DWORD* pdwStubPhase); 18744 18745 #endif /* __IDeskBandInfo_INTERFACE_DEFINED__ */ 18746 18747 18748 /***************************************************************************** 18749 * IDeskBand2 interface 18750 */ 18751 #ifndef __IDeskBand2_INTERFACE_DEFINED__ 18752 #define __IDeskBand2_INTERFACE_DEFINED__ 18753 18754 DEFINE_GUID(IID_IDeskBand2, 0x79d16de4, 0xabee, 0x4021, 0x8d,0x9d, 0x91,0x69,0xb2,0x61,0xd6,0x57); 18755 #if defined(__cplusplus) && !defined(CINTERFACE) 18756 MIDL_INTERFACE("79d16de4-abee-4021-8d9d-9169b261d657") 18757 IDeskBand2 : public IDeskBand 18758 { 18759 virtual HRESULT STDMETHODCALLTYPE CanRenderComposited( 18760 WINBOOL *pfCanRenderComposited) = 0; 18761 18762 virtual HRESULT STDMETHODCALLTYPE SetCompositionState( 18763 WINBOOL fCompositionEnabled) = 0; 18764 18765 virtual HRESULT STDMETHODCALLTYPE GetCompositionState( 18766 WINBOOL *pfCompositionEnabled) = 0; 18767 18768 }; 18769 #ifdef __CRT_UUID_DECL 18770 __CRT_UUID_DECL(IDeskBand2, 0x79d16de4, 0xabee, 0x4021, 0x8d,0x9d, 0x91,0x69,0xb2,0x61,0xd6,0x57) 18771 #endif 18772 #else 18773 typedef struct IDeskBand2Vtbl { 18774 BEGIN_INTERFACE 18775 18776 /*** IUnknown methods ***/ 18777 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 18778 IDeskBand2* This, 18779 REFIID riid, 18780 void **ppvObject); 18781 18782 ULONG (STDMETHODCALLTYPE *AddRef)( 18783 IDeskBand2* This); 18784 18785 ULONG (STDMETHODCALLTYPE *Release)( 18786 IDeskBand2* This); 18787 18788 /*** IOleWindow methods ***/ 18789 HRESULT (STDMETHODCALLTYPE *GetWindow)( 18790 IDeskBand2* This, 18791 HWND *phwnd); 18792 18793 HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( 18794 IDeskBand2* This, 18795 WINBOOL fEnterMode); 18796 18797 /*** IDockingWindow methods ***/ 18798 HRESULT (STDMETHODCALLTYPE *ShowDW)( 18799 IDeskBand2* This, 18800 WINBOOL fShow); 18801 18802 HRESULT (STDMETHODCALLTYPE *CloseDW)( 18803 IDeskBand2* This, 18804 DWORD dwReserved); 18805 18806 HRESULT (STDMETHODCALLTYPE *ResizeBorderDW)( 18807 IDeskBand2* This, 18808 LPCRECT prcBorder, 18809 IUnknown *punkToolbarSite, 18810 WINBOOL fReserved); 18811 18812 /*** IDeskBand methods ***/ 18813 HRESULT (STDMETHODCALLTYPE *GetBandInfo)( 18814 IDeskBand2* This, 18815 DWORD dwBandID, 18816 DWORD dwViewMode, 18817 DESKBANDINFO *pdbi); 18818 18819 /*** IDeskBand2 methods ***/ 18820 HRESULT (STDMETHODCALLTYPE *CanRenderComposited)( 18821 IDeskBand2* This, 18822 WINBOOL *pfCanRenderComposited); 18823 18824 HRESULT (STDMETHODCALLTYPE *SetCompositionState)( 18825 IDeskBand2* This, 18826 WINBOOL fCompositionEnabled); 18827 18828 HRESULT (STDMETHODCALLTYPE *GetCompositionState)( 18829 IDeskBand2* This, 18830 WINBOOL *pfCompositionEnabled); 18831 18832 END_INTERFACE 18833 } IDeskBand2Vtbl; 18834 interface IDeskBand2 { 18835 CONST_VTBL IDeskBand2Vtbl* lpVtbl; 18836 }; 18837 18838 #ifdef COBJMACROS 18839 #ifndef WIDL_C_INLINE_WRAPPERS 18840 /*** IUnknown methods ***/ 18841 #define IDeskBand2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 18842 #define IDeskBand2_AddRef(This) (This)->lpVtbl->AddRef(This) 18843 #define IDeskBand2_Release(This) (This)->lpVtbl->Release(This) 18844 /*** IOleWindow methods ***/ 18845 #define IDeskBand2_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) 18846 #define IDeskBand2_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) 18847 /*** IDockingWindow methods ***/ 18848 #define IDeskBand2_ShowDW(This,fShow) (This)->lpVtbl->ShowDW(This,fShow) 18849 #define IDeskBand2_CloseDW(This,dwReserved) (This)->lpVtbl->CloseDW(This,dwReserved) 18850 #define IDeskBand2_ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved) (This)->lpVtbl->ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved) 18851 /*** IDeskBand methods ***/ 18852 #define IDeskBand2_GetBandInfo(This,dwBandID,dwViewMode,pdbi) (This)->lpVtbl->GetBandInfo(This,dwBandID,dwViewMode,pdbi) 18853 /*** IDeskBand2 methods ***/ 18854 #define IDeskBand2_CanRenderComposited(This,pfCanRenderComposited) (This)->lpVtbl->CanRenderComposited(This,pfCanRenderComposited) 18855 #define IDeskBand2_SetCompositionState(This,fCompositionEnabled) (This)->lpVtbl->SetCompositionState(This,fCompositionEnabled) 18856 #define IDeskBand2_GetCompositionState(This,pfCompositionEnabled) (This)->lpVtbl->GetCompositionState(This,pfCompositionEnabled) 18857 #else 18858 /*** IUnknown methods ***/ 18859 static FORCEINLINE HRESULT IDeskBand2_QueryInterface(IDeskBand2* This,REFIID riid,void **ppvObject) { 18860 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 18861 } 18862 static FORCEINLINE ULONG IDeskBand2_AddRef(IDeskBand2* This) { 18863 return This->lpVtbl->AddRef(This); 18864 } 18865 static FORCEINLINE ULONG IDeskBand2_Release(IDeskBand2* This) { 18866 return This->lpVtbl->Release(This); 18867 } 18868 /*** IOleWindow methods ***/ 18869 static FORCEINLINE HRESULT IDeskBand2_GetWindow(IDeskBand2* This,HWND *phwnd) { 18870 return This->lpVtbl->GetWindow(This,phwnd); 18871 } 18872 static FORCEINLINE HRESULT IDeskBand2_ContextSensitiveHelp(IDeskBand2* This,WINBOOL fEnterMode) { 18873 return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); 18874 } 18875 /*** IDockingWindow methods ***/ 18876 static FORCEINLINE HRESULT IDeskBand2_ShowDW(IDeskBand2* This,WINBOOL fShow) { 18877 return This->lpVtbl->ShowDW(This,fShow); 18878 } 18879 static FORCEINLINE HRESULT IDeskBand2_CloseDW(IDeskBand2* This,DWORD dwReserved) { 18880 return This->lpVtbl->CloseDW(This,dwReserved); 18881 } 18882 static FORCEINLINE HRESULT IDeskBand2_ResizeBorderDW(IDeskBand2* This,LPCRECT prcBorder,IUnknown *punkToolbarSite,WINBOOL fReserved) { 18883 return This->lpVtbl->ResizeBorderDW(This,prcBorder,punkToolbarSite,fReserved); 18884 } 18885 /*** IDeskBand methods ***/ 18886 static FORCEINLINE HRESULT IDeskBand2_GetBandInfo(IDeskBand2* This,DWORD dwBandID,DWORD dwViewMode,DESKBANDINFO *pdbi) { 18887 return This->lpVtbl->GetBandInfo(This,dwBandID,dwViewMode,pdbi); 18888 } 18889 /*** IDeskBand2 methods ***/ 18890 static FORCEINLINE HRESULT IDeskBand2_CanRenderComposited(IDeskBand2* This,WINBOOL *pfCanRenderComposited) { 18891 return This->lpVtbl->CanRenderComposited(This,pfCanRenderComposited); 18892 } 18893 static FORCEINLINE HRESULT IDeskBand2_SetCompositionState(IDeskBand2* This,WINBOOL fCompositionEnabled) { 18894 return This->lpVtbl->SetCompositionState(This,fCompositionEnabled); 18895 } 18896 static FORCEINLINE HRESULT IDeskBand2_GetCompositionState(IDeskBand2* This,WINBOOL *pfCompositionEnabled) { 18897 return This->lpVtbl->GetCompositionState(This,pfCompositionEnabled); 18898 } 18899 #endif 18900 #endif 18901 18902 #endif 18903 18904 HRESULT STDMETHODCALLTYPE IDeskBand2_CanRenderComposited_Proxy( 18905 IDeskBand2* This, 18906 WINBOOL *pfCanRenderComposited); 18907 void __RPC_STUB IDeskBand2_CanRenderComposited_Stub( 18908 IRpcStubBuffer* This, 18909 IRpcChannelBuffer* pRpcChannelBuffer, 18910 PRPC_MESSAGE pRpcMessage, 18911 DWORD* pdwStubPhase); 18912 HRESULT STDMETHODCALLTYPE IDeskBand2_SetCompositionState_Proxy( 18913 IDeskBand2* This, 18914 WINBOOL fCompositionEnabled); 18915 void __RPC_STUB IDeskBand2_SetCompositionState_Stub( 18916 IRpcStubBuffer* This, 18917 IRpcChannelBuffer* pRpcChannelBuffer, 18918 PRPC_MESSAGE pRpcMessage, 18919 DWORD* pdwStubPhase); 18920 HRESULT STDMETHODCALLTYPE IDeskBand2_GetCompositionState_Proxy( 18921 IDeskBand2* This, 18922 WINBOOL *pfCompositionEnabled); 18923 void __RPC_STUB IDeskBand2_GetCompositionState_Stub( 18924 IRpcStubBuffer* This, 18925 IRpcChannelBuffer* pRpcChannelBuffer, 18926 PRPC_MESSAGE pRpcMessage, 18927 DWORD* pdwStubPhase); 18928 18929 #endif /* __IDeskBand2_INTERFACE_DEFINED__ */ 18930 18931 #endif 18932 18933 /***************************************************************************** 18934 * ITaskbarList interface 18935 */ 18936 #ifndef __ITaskbarList_INTERFACE_DEFINED__ 18937 #define __ITaskbarList_INTERFACE_DEFINED__ 18938 18939 DEFINE_GUID(IID_ITaskbarList, 0x56fdf342, 0xfd6d, 0x11d0, 0x95,0x8a, 0x00,0x60,0x97,0xc9,0xa0,0x90); 18940 #if defined(__cplusplus) && !defined(CINTERFACE) 18941 MIDL_INTERFACE("56fdf342-fd6d-11d0-958a-006097c9a090") 18942 ITaskbarList : public IUnknown 18943 { 18944 virtual HRESULT STDMETHODCALLTYPE HrInit( 18945 ) = 0; 18946 18947 virtual HRESULT STDMETHODCALLTYPE AddTab( 18948 HWND hwnd) = 0; 18949 18950 virtual HRESULT STDMETHODCALLTYPE DeleteTab( 18951 HWND hwnd) = 0; 18952 18953 virtual HRESULT STDMETHODCALLTYPE ActivateTab( 18954 HWND hwnd) = 0; 18955 18956 virtual HRESULT STDMETHODCALLTYPE SetActiveAlt( 18957 HWND hwnd) = 0; 18958 18959 }; 18960 #ifdef __CRT_UUID_DECL 18961 __CRT_UUID_DECL(ITaskbarList, 0x56fdf342, 0xfd6d, 0x11d0, 0x95,0x8a, 0x00,0x60,0x97,0xc9,0xa0,0x90) 18962 #endif 18963 #else 18964 typedef struct ITaskbarListVtbl { 18965 BEGIN_INTERFACE 18966 18967 /*** IUnknown methods ***/ 18968 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 18969 ITaskbarList* This, 18970 REFIID riid, 18971 void **ppvObject); 18972 18973 ULONG (STDMETHODCALLTYPE *AddRef)( 18974 ITaskbarList* This); 18975 18976 ULONG (STDMETHODCALLTYPE *Release)( 18977 ITaskbarList* This); 18978 18979 /*** ITaskbarList methods ***/ 18980 HRESULT (STDMETHODCALLTYPE *HrInit)( 18981 ITaskbarList* This); 18982 18983 HRESULT (STDMETHODCALLTYPE *AddTab)( 18984 ITaskbarList* This, 18985 HWND hwnd); 18986 18987 HRESULT (STDMETHODCALLTYPE *DeleteTab)( 18988 ITaskbarList* This, 18989 HWND hwnd); 18990 18991 HRESULT (STDMETHODCALLTYPE *ActivateTab)( 18992 ITaskbarList* This, 18993 HWND hwnd); 18994 18995 HRESULT (STDMETHODCALLTYPE *SetActiveAlt)( 18996 ITaskbarList* This, 18997 HWND hwnd); 18998 18999 END_INTERFACE 19000 } ITaskbarListVtbl; 19001 interface ITaskbarList { 19002 CONST_VTBL ITaskbarListVtbl* lpVtbl; 19003 }; 19004 19005 #ifdef COBJMACROS 19006 #ifndef WIDL_C_INLINE_WRAPPERS 19007 /*** IUnknown methods ***/ 19008 #define ITaskbarList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 19009 #define ITaskbarList_AddRef(This) (This)->lpVtbl->AddRef(This) 19010 #define ITaskbarList_Release(This) (This)->lpVtbl->Release(This) 19011 /*** ITaskbarList methods ***/ 19012 #define ITaskbarList_HrInit(This) (This)->lpVtbl->HrInit(This) 19013 #define ITaskbarList_AddTab(This,hwnd) (This)->lpVtbl->AddTab(This,hwnd) 19014 #define ITaskbarList_DeleteTab(This,hwnd) (This)->lpVtbl->DeleteTab(This,hwnd) 19015 #define ITaskbarList_ActivateTab(This,hwnd) (This)->lpVtbl->ActivateTab(This,hwnd) 19016 #define ITaskbarList_SetActiveAlt(This,hwnd) (This)->lpVtbl->SetActiveAlt(This,hwnd) 19017 #else 19018 /*** IUnknown methods ***/ 19019 static FORCEINLINE HRESULT ITaskbarList_QueryInterface(ITaskbarList* This,REFIID riid,void **ppvObject) { 19020 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 19021 } 19022 static FORCEINLINE ULONG ITaskbarList_AddRef(ITaskbarList* This) { 19023 return This->lpVtbl->AddRef(This); 19024 } 19025 static FORCEINLINE ULONG ITaskbarList_Release(ITaskbarList* This) { 19026 return This->lpVtbl->Release(This); 19027 } 19028 /*** ITaskbarList methods ***/ 19029 static FORCEINLINE HRESULT ITaskbarList_HrInit(ITaskbarList* This) { 19030 return This->lpVtbl->HrInit(This); 19031 } 19032 static FORCEINLINE HRESULT ITaskbarList_AddTab(ITaskbarList* This,HWND hwnd) { 19033 return This->lpVtbl->AddTab(This,hwnd); 19034 } 19035 static FORCEINLINE HRESULT ITaskbarList_DeleteTab(ITaskbarList* This,HWND hwnd) { 19036 return This->lpVtbl->DeleteTab(This,hwnd); 19037 } 19038 static FORCEINLINE HRESULT ITaskbarList_ActivateTab(ITaskbarList* This,HWND hwnd) { 19039 return This->lpVtbl->ActivateTab(This,hwnd); 19040 } 19041 static FORCEINLINE HRESULT ITaskbarList_SetActiveAlt(ITaskbarList* This,HWND hwnd) { 19042 return This->lpVtbl->SetActiveAlt(This,hwnd); 19043 } 19044 #endif 19045 #endif 19046 19047 #endif 19048 19049 HRESULT STDMETHODCALLTYPE ITaskbarList_HrInit_Proxy( 19050 ITaskbarList* This); 19051 void __RPC_STUB ITaskbarList_HrInit_Stub( 19052 IRpcStubBuffer* This, 19053 IRpcChannelBuffer* pRpcChannelBuffer, 19054 PRPC_MESSAGE pRpcMessage, 19055 DWORD* pdwStubPhase); 19056 HRESULT STDMETHODCALLTYPE ITaskbarList_AddTab_Proxy( 19057 ITaskbarList* This, 19058 HWND hwnd); 19059 void __RPC_STUB ITaskbarList_AddTab_Stub( 19060 IRpcStubBuffer* This, 19061 IRpcChannelBuffer* pRpcChannelBuffer, 19062 PRPC_MESSAGE pRpcMessage, 19063 DWORD* pdwStubPhase); 19064 HRESULT STDMETHODCALLTYPE ITaskbarList_DeleteTab_Proxy( 19065 ITaskbarList* This, 19066 HWND hwnd); 19067 void __RPC_STUB ITaskbarList_DeleteTab_Stub( 19068 IRpcStubBuffer* This, 19069 IRpcChannelBuffer* pRpcChannelBuffer, 19070 PRPC_MESSAGE pRpcMessage, 19071 DWORD* pdwStubPhase); 19072 HRESULT STDMETHODCALLTYPE ITaskbarList_ActivateTab_Proxy( 19073 ITaskbarList* This, 19074 HWND hwnd); 19075 void __RPC_STUB ITaskbarList_ActivateTab_Stub( 19076 IRpcStubBuffer* This, 19077 IRpcChannelBuffer* pRpcChannelBuffer, 19078 PRPC_MESSAGE pRpcMessage, 19079 DWORD* pdwStubPhase); 19080 HRESULT STDMETHODCALLTYPE ITaskbarList_SetActiveAlt_Proxy( 19081 ITaskbarList* This, 19082 HWND hwnd); 19083 void __RPC_STUB ITaskbarList_SetActiveAlt_Stub( 19084 IRpcStubBuffer* This, 19085 IRpcChannelBuffer* pRpcChannelBuffer, 19086 PRPC_MESSAGE pRpcMessage, 19087 DWORD* pdwStubPhase); 19088 19089 #endif /* __ITaskbarList_INTERFACE_DEFINED__ */ 19090 19091 19092 /***************************************************************************** 19093 * ITaskbarList2 interface 19094 */ 19095 #ifndef __ITaskbarList2_INTERFACE_DEFINED__ 19096 #define __ITaskbarList2_INTERFACE_DEFINED__ 19097 19098 DEFINE_GUID(IID_ITaskbarList2, 0x602d4995, 0xb13a, 0x429b, 0xa6,0x6e, 0x19,0x35,0xe4,0x4f,0x43,0x17); 19099 #if defined(__cplusplus) && !defined(CINTERFACE) 19100 MIDL_INTERFACE("602d4995-b13a-429b-a66e-1935e44f4317") 19101 ITaskbarList2 : public ITaskbarList 19102 { 19103 virtual HRESULT STDMETHODCALLTYPE MarkFullscreenWindow( 19104 HWND hwnd, 19105 WINBOOL fFullscreen) = 0; 19106 19107 }; 19108 #ifdef __CRT_UUID_DECL 19109 __CRT_UUID_DECL(ITaskbarList2, 0x602d4995, 0xb13a, 0x429b, 0xa6,0x6e, 0x19,0x35,0xe4,0x4f,0x43,0x17) 19110 #endif 19111 #else 19112 typedef struct ITaskbarList2Vtbl { 19113 BEGIN_INTERFACE 19114 19115 /*** IUnknown methods ***/ 19116 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 19117 ITaskbarList2* This, 19118 REFIID riid, 19119 void **ppvObject); 19120 19121 ULONG (STDMETHODCALLTYPE *AddRef)( 19122 ITaskbarList2* This); 19123 19124 ULONG (STDMETHODCALLTYPE *Release)( 19125 ITaskbarList2* This); 19126 19127 /*** ITaskbarList methods ***/ 19128 HRESULT (STDMETHODCALLTYPE *HrInit)( 19129 ITaskbarList2* This); 19130 19131 HRESULT (STDMETHODCALLTYPE *AddTab)( 19132 ITaskbarList2* This, 19133 HWND hwnd); 19134 19135 HRESULT (STDMETHODCALLTYPE *DeleteTab)( 19136 ITaskbarList2* This, 19137 HWND hwnd); 19138 19139 HRESULT (STDMETHODCALLTYPE *ActivateTab)( 19140 ITaskbarList2* This, 19141 HWND hwnd); 19142 19143 HRESULT (STDMETHODCALLTYPE *SetActiveAlt)( 19144 ITaskbarList2* This, 19145 HWND hwnd); 19146 19147 /*** ITaskbarList2 methods ***/ 19148 HRESULT (STDMETHODCALLTYPE *MarkFullscreenWindow)( 19149 ITaskbarList2* This, 19150 HWND hwnd, 19151 WINBOOL fFullscreen); 19152 19153 END_INTERFACE 19154 } ITaskbarList2Vtbl; 19155 interface ITaskbarList2 { 19156 CONST_VTBL ITaskbarList2Vtbl* lpVtbl; 19157 }; 19158 19159 #ifdef COBJMACROS 19160 #ifndef WIDL_C_INLINE_WRAPPERS 19161 /*** IUnknown methods ***/ 19162 #define ITaskbarList2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 19163 #define ITaskbarList2_AddRef(This) (This)->lpVtbl->AddRef(This) 19164 #define ITaskbarList2_Release(This) (This)->lpVtbl->Release(This) 19165 /*** ITaskbarList methods ***/ 19166 #define ITaskbarList2_HrInit(This) (This)->lpVtbl->HrInit(This) 19167 #define ITaskbarList2_AddTab(This,hwnd) (This)->lpVtbl->AddTab(This,hwnd) 19168 #define ITaskbarList2_DeleteTab(This,hwnd) (This)->lpVtbl->DeleteTab(This,hwnd) 19169 #define ITaskbarList2_ActivateTab(This,hwnd) (This)->lpVtbl->ActivateTab(This,hwnd) 19170 #define ITaskbarList2_SetActiveAlt(This,hwnd) (This)->lpVtbl->SetActiveAlt(This,hwnd) 19171 /*** ITaskbarList2 methods ***/ 19172 #define ITaskbarList2_MarkFullscreenWindow(This,hwnd,fFullscreen) (This)->lpVtbl->MarkFullscreenWindow(This,hwnd,fFullscreen) 19173 #else 19174 /*** IUnknown methods ***/ 19175 static FORCEINLINE HRESULT ITaskbarList2_QueryInterface(ITaskbarList2* This,REFIID riid,void **ppvObject) { 19176 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 19177 } 19178 static FORCEINLINE ULONG ITaskbarList2_AddRef(ITaskbarList2* This) { 19179 return This->lpVtbl->AddRef(This); 19180 } 19181 static FORCEINLINE ULONG ITaskbarList2_Release(ITaskbarList2* This) { 19182 return This->lpVtbl->Release(This); 19183 } 19184 /*** ITaskbarList methods ***/ 19185 static FORCEINLINE HRESULT ITaskbarList2_HrInit(ITaskbarList2* This) { 19186 return This->lpVtbl->HrInit(This); 19187 } 19188 static FORCEINLINE HRESULT ITaskbarList2_AddTab(ITaskbarList2* This,HWND hwnd) { 19189 return This->lpVtbl->AddTab(This,hwnd); 19190 } 19191 static FORCEINLINE HRESULT ITaskbarList2_DeleteTab(ITaskbarList2* This,HWND hwnd) { 19192 return This->lpVtbl->DeleteTab(This,hwnd); 19193 } 19194 static FORCEINLINE HRESULT ITaskbarList2_ActivateTab(ITaskbarList2* This,HWND hwnd) { 19195 return This->lpVtbl->ActivateTab(This,hwnd); 19196 } 19197 static FORCEINLINE HRESULT ITaskbarList2_SetActiveAlt(ITaskbarList2* This,HWND hwnd) { 19198 return This->lpVtbl->SetActiveAlt(This,hwnd); 19199 } 19200 /*** ITaskbarList2 methods ***/ 19201 static FORCEINLINE HRESULT ITaskbarList2_MarkFullscreenWindow(ITaskbarList2* This,HWND hwnd,WINBOOL fFullscreen) { 19202 return This->lpVtbl->MarkFullscreenWindow(This,hwnd,fFullscreen); 19203 } 19204 #endif 19205 #endif 19206 19207 #endif 19208 19209 HRESULT STDMETHODCALLTYPE ITaskbarList2_MarkFullscreenWindow_Proxy( 19210 ITaskbarList2* This, 19211 HWND hwnd, 19212 WINBOOL fFullscreen); 19213 void __RPC_STUB ITaskbarList2_MarkFullscreenWindow_Stub( 19214 IRpcStubBuffer* This, 19215 IRpcChannelBuffer* pRpcChannelBuffer, 19216 PRPC_MESSAGE pRpcMessage, 19217 DWORD* pdwStubPhase); 19218 19219 #endif /* __ITaskbarList2_INTERFACE_DEFINED__ */ 19220 19221 19222 #if 0 19223 typedef IUnknown *HIMAGELIST; 19224 #endif 19225 19226 typedef enum THUMBBUTTONFLAGS { 19227 THBF_ENABLED = 0x0, 19228 THBF_DISABLED = 0x1, 19229 THBF_DISMISSONCLICK = 0x2, 19230 THBF_NOBACKGROUND = 0x4, 19231 THBF_HIDDEN = 0x8, 19232 THBF_NONINTERACTIVE = 0x10 19233 } THUMBBUTTONFLAGS; 19234 19235 DEFINE_ENUM_FLAG_OPERATORS(THUMBBUTTONFLAGS) 19236 19237 19238 typedef enum THUMBBUTTONMASK { 19239 THB_BITMAP = 0x1, 19240 THB_ICON = 0x2, 19241 THB_TOOLTIP = 0x4, 19242 THB_FLAGS = 0x8 19243 } THUMBBUTTONMASK; 19244 19245 DEFINE_ENUM_FLAG_OPERATORS(THUMBBUTTONMASK) 19246 19247 #include <pshpack8.h> 19248 typedef struct THUMBBUTTON { 19249 THUMBBUTTONMASK dwMask; 19250 UINT iId; 19251 UINT iBitmap; 19252 HICON hIcon; 19253 WCHAR szTip[260]; 19254 THUMBBUTTONFLAGS dwFlags; 19255 } THUMBBUTTON; 19256 typedef struct THUMBBUTTON *LPTHUMBBUTTON; 19257 #include <poppack.h> 19258 19259 #define THBN_CLICKED 0x1800 19260 19261 /***************************************************************************** 19262 * ITaskbarList3 interface 19263 */ 19264 #ifndef __ITaskbarList3_INTERFACE_DEFINED__ 19265 #define __ITaskbarList3_INTERFACE_DEFINED__ 19266 19267 typedef enum TBPFLAG { 19268 TBPF_NOPROGRESS = 0x0, 19269 TBPF_INDETERMINATE = 0x1, 19270 TBPF_NORMAL = 0x2, 19271 TBPF_ERROR = 0x4, 19272 TBPF_PAUSED = 0x8 19273 } TBPFLAG; 19274 19275 DEFINE_ENUM_FLAG_OPERATORS(TBPFLAG) 19276 19277 DEFINE_GUID(IID_ITaskbarList3, 0xea1afb91, 0x9e28, 0x4b86, 0x90,0xe9, 0x9e,0x9f,0x8a,0x5e,0xef,0xaf); 19278 #if defined(__cplusplus) && !defined(CINTERFACE) 19279 MIDL_INTERFACE("ea1afb91-9e28-4b86-90e9-9e9f8a5eefaf") 19280 ITaskbarList3 : public ITaskbarList2 19281 { 19282 virtual HRESULT STDMETHODCALLTYPE SetProgressValue( 19283 HWND hwnd, 19284 ULONGLONG ullCompleted, 19285 ULONGLONG ullTotal) = 0; 19286 19287 virtual HRESULT STDMETHODCALLTYPE SetProgressState( 19288 HWND hwnd, 19289 TBPFLAG tbpFlags) = 0; 19290 19291 virtual HRESULT STDMETHODCALLTYPE RegisterTab( 19292 HWND hwndTab, 19293 HWND hwndMDI) = 0; 19294 19295 virtual HRESULT STDMETHODCALLTYPE UnregisterTab( 19296 HWND hwndTab) = 0; 19297 19298 virtual HRESULT STDMETHODCALLTYPE SetTabOrder( 19299 HWND hwndTab, 19300 HWND hwndInsertBefore) = 0; 19301 19302 virtual HRESULT STDMETHODCALLTYPE SetTabActive( 19303 HWND hwndTab, 19304 HWND hwndMDI, 19305 DWORD dwReserved) = 0; 19306 19307 virtual HRESULT STDMETHODCALLTYPE ThumbBarAddButtons( 19308 HWND hwnd, 19309 UINT cButtons, 19310 LPTHUMBBUTTON pButton) = 0; 19311 19312 virtual HRESULT STDMETHODCALLTYPE ThumbBarUpdateButtons( 19313 HWND hwnd, 19314 UINT cButtons, 19315 LPTHUMBBUTTON pButton) = 0; 19316 19317 virtual HRESULT STDMETHODCALLTYPE ThumbBarSetImageList( 19318 HWND hwnd, 19319 HIMAGELIST himl) = 0; 19320 19321 virtual HRESULT STDMETHODCALLTYPE SetOverlayIcon( 19322 HWND hwnd, 19323 HICON hIcon, 19324 LPCWSTR pszDescription) = 0; 19325 19326 virtual HRESULT STDMETHODCALLTYPE SetThumbnailTooltip( 19327 HWND hwnd, 19328 LPCWSTR pszTip) = 0; 19329 19330 virtual HRESULT STDMETHODCALLTYPE SetThumbnailClip( 19331 HWND hwnd, 19332 RECT *prcClip) = 0; 19333 19334 }; 19335 #ifdef __CRT_UUID_DECL 19336 __CRT_UUID_DECL(ITaskbarList3, 0xea1afb91, 0x9e28, 0x4b86, 0x90,0xe9, 0x9e,0x9f,0x8a,0x5e,0xef,0xaf) 19337 #endif 19338 #else 19339 typedef struct ITaskbarList3Vtbl { 19340 BEGIN_INTERFACE 19341 19342 /*** IUnknown methods ***/ 19343 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 19344 ITaskbarList3* This, 19345 REFIID riid, 19346 void **ppvObject); 19347 19348 ULONG (STDMETHODCALLTYPE *AddRef)( 19349 ITaskbarList3* This); 19350 19351 ULONG (STDMETHODCALLTYPE *Release)( 19352 ITaskbarList3* This); 19353 19354 /*** ITaskbarList methods ***/ 19355 HRESULT (STDMETHODCALLTYPE *HrInit)( 19356 ITaskbarList3* This); 19357 19358 HRESULT (STDMETHODCALLTYPE *AddTab)( 19359 ITaskbarList3* This, 19360 HWND hwnd); 19361 19362 HRESULT (STDMETHODCALLTYPE *DeleteTab)( 19363 ITaskbarList3* This, 19364 HWND hwnd); 19365 19366 HRESULT (STDMETHODCALLTYPE *ActivateTab)( 19367 ITaskbarList3* This, 19368 HWND hwnd); 19369 19370 HRESULT (STDMETHODCALLTYPE *SetActiveAlt)( 19371 ITaskbarList3* This, 19372 HWND hwnd); 19373 19374 /*** ITaskbarList2 methods ***/ 19375 HRESULT (STDMETHODCALLTYPE *MarkFullscreenWindow)( 19376 ITaskbarList3* This, 19377 HWND hwnd, 19378 WINBOOL fFullscreen); 19379 19380 /*** ITaskbarList3 methods ***/ 19381 HRESULT (STDMETHODCALLTYPE *SetProgressValue)( 19382 ITaskbarList3* This, 19383 HWND hwnd, 19384 ULONGLONG ullCompleted, 19385 ULONGLONG ullTotal); 19386 19387 HRESULT (STDMETHODCALLTYPE *SetProgressState)( 19388 ITaskbarList3* This, 19389 HWND hwnd, 19390 TBPFLAG tbpFlags); 19391 19392 HRESULT (STDMETHODCALLTYPE *RegisterTab)( 19393 ITaskbarList3* This, 19394 HWND hwndTab, 19395 HWND hwndMDI); 19396 19397 HRESULT (STDMETHODCALLTYPE *UnregisterTab)( 19398 ITaskbarList3* This, 19399 HWND hwndTab); 19400 19401 HRESULT (STDMETHODCALLTYPE *SetTabOrder)( 19402 ITaskbarList3* This, 19403 HWND hwndTab, 19404 HWND hwndInsertBefore); 19405 19406 HRESULT (STDMETHODCALLTYPE *SetTabActive)( 19407 ITaskbarList3* This, 19408 HWND hwndTab, 19409 HWND hwndMDI, 19410 DWORD dwReserved); 19411 19412 HRESULT (STDMETHODCALLTYPE *ThumbBarAddButtons)( 19413 ITaskbarList3* This, 19414 HWND hwnd, 19415 UINT cButtons, 19416 LPTHUMBBUTTON pButton); 19417 19418 HRESULT (STDMETHODCALLTYPE *ThumbBarUpdateButtons)( 19419 ITaskbarList3* This, 19420 HWND hwnd, 19421 UINT cButtons, 19422 LPTHUMBBUTTON pButton); 19423 19424 HRESULT (STDMETHODCALLTYPE *ThumbBarSetImageList)( 19425 ITaskbarList3* This, 19426 HWND hwnd, 19427 HIMAGELIST himl); 19428 19429 HRESULT (STDMETHODCALLTYPE *SetOverlayIcon)( 19430 ITaskbarList3* This, 19431 HWND hwnd, 19432 HICON hIcon, 19433 LPCWSTR pszDescription); 19434 19435 HRESULT (STDMETHODCALLTYPE *SetThumbnailTooltip)( 19436 ITaskbarList3* This, 19437 HWND hwnd, 19438 LPCWSTR pszTip); 19439 19440 HRESULT (STDMETHODCALLTYPE *SetThumbnailClip)( 19441 ITaskbarList3* This, 19442 HWND hwnd, 19443 RECT *prcClip); 19444 19445 END_INTERFACE 19446 } ITaskbarList3Vtbl; 19447 interface ITaskbarList3 { 19448 CONST_VTBL ITaskbarList3Vtbl* lpVtbl; 19449 }; 19450 19451 #ifdef COBJMACROS 19452 #ifndef WIDL_C_INLINE_WRAPPERS 19453 /*** IUnknown methods ***/ 19454 #define ITaskbarList3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 19455 #define ITaskbarList3_AddRef(This) (This)->lpVtbl->AddRef(This) 19456 #define ITaskbarList3_Release(This) (This)->lpVtbl->Release(This) 19457 /*** ITaskbarList methods ***/ 19458 #define ITaskbarList3_HrInit(This) (This)->lpVtbl->HrInit(This) 19459 #define ITaskbarList3_AddTab(This,hwnd) (This)->lpVtbl->AddTab(This,hwnd) 19460 #define ITaskbarList3_DeleteTab(This,hwnd) (This)->lpVtbl->DeleteTab(This,hwnd) 19461 #define ITaskbarList3_ActivateTab(This,hwnd) (This)->lpVtbl->ActivateTab(This,hwnd) 19462 #define ITaskbarList3_SetActiveAlt(This,hwnd) (This)->lpVtbl->SetActiveAlt(This,hwnd) 19463 /*** ITaskbarList2 methods ***/ 19464 #define ITaskbarList3_MarkFullscreenWindow(This,hwnd,fFullscreen) (This)->lpVtbl->MarkFullscreenWindow(This,hwnd,fFullscreen) 19465 /*** ITaskbarList3 methods ***/ 19466 #define ITaskbarList3_SetProgressValue(This,hwnd,ullCompleted,ullTotal) (This)->lpVtbl->SetProgressValue(This,hwnd,ullCompleted,ullTotal) 19467 #define ITaskbarList3_SetProgressState(This,hwnd,tbpFlags) (This)->lpVtbl->SetProgressState(This,hwnd,tbpFlags) 19468 #define ITaskbarList3_RegisterTab(This,hwndTab,hwndMDI) (This)->lpVtbl->RegisterTab(This,hwndTab,hwndMDI) 19469 #define ITaskbarList3_UnregisterTab(This,hwndTab) (This)->lpVtbl->UnregisterTab(This,hwndTab) 19470 #define ITaskbarList3_SetTabOrder(This,hwndTab,hwndInsertBefore) (This)->lpVtbl->SetTabOrder(This,hwndTab,hwndInsertBefore) 19471 #define ITaskbarList3_SetTabActive(This,hwndTab,hwndMDI,dwReserved) (This)->lpVtbl->SetTabActive(This,hwndTab,hwndMDI,dwReserved) 19472 #define ITaskbarList3_ThumbBarAddButtons(This,hwnd,cButtons,pButton) (This)->lpVtbl->ThumbBarAddButtons(This,hwnd,cButtons,pButton) 19473 #define ITaskbarList3_ThumbBarUpdateButtons(This,hwnd,cButtons,pButton) (This)->lpVtbl->ThumbBarUpdateButtons(This,hwnd,cButtons,pButton) 19474 #define ITaskbarList3_ThumbBarSetImageList(This,hwnd,himl) (This)->lpVtbl->ThumbBarSetImageList(This,hwnd,himl) 19475 #define ITaskbarList3_SetOverlayIcon(This,hwnd,hIcon,pszDescription) (This)->lpVtbl->SetOverlayIcon(This,hwnd,hIcon,pszDescription) 19476 #define ITaskbarList3_SetThumbnailTooltip(This,hwnd,pszTip) (This)->lpVtbl->SetThumbnailTooltip(This,hwnd,pszTip) 19477 #define ITaskbarList3_SetThumbnailClip(This,hwnd,prcClip) (This)->lpVtbl->SetThumbnailClip(This,hwnd,prcClip) 19478 #else 19479 /*** IUnknown methods ***/ 19480 static FORCEINLINE HRESULT ITaskbarList3_QueryInterface(ITaskbarList3* This,REFIID riid,void **ppvObject) { 19481 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 19482 } 19483 static FORCEINLINE ULONG ITaskbarList3_AddRef(ITaskbarList3* This) { 19484 return This->lpVtbl->AddRef(This); 19485 } 19486 static FORCEINLINE ULONG ITaskbarList3_Release(ITaskbarList3* This) { 19487 return This->lpVtbl->Release(This); 19488 } 19489 /*** ITaskbarList methods ***/ 19490 static FORCEINLINE HRESULT ITaskbarList3_HrInit(ITaskbarList3* This) { 19491 return This->lpVtbl->HrInit(This); 19492 } 19493 static FORCEINLINE HRESULT ITaskbarList3_AddTab(ITaskbarList3* This,HWND hwnd) { 19494 return This->lpVtbl->AddTab(This,hwnd); 19495 } 19496 static FORCEINLINE HRESULT ITaskbarList3_DeleteTab(ITaskbarList3* This,HWND hwnd) { 19497 return This->lpVtbl->DeleteTab(This,hwnd); 19498 } 19499 static FORCEINLINE HRESULT ITaskbarList3_ActivateTab(ITaskbarList3* This,HWND hwnd) { 19500 return This->lpVtbl->ActivateTab(This,hwnd); 19501 } 19502 static FORCEINLINE HRESULT ITaskbarList3_SetActiveAlt(ITaskbarList3* This,HWND hwnd) { 19503 return This->lpVtbl->SetActiveAlt(This,hwnd); 19504 } 19505 /*** ITaskbarList2 methods ***/ 19506 static FORCEINLINE HRESULT ITaskbarList3_MarkFullscreenWindow(ITaskbarList3* This,HWND hwnd,WINBOOL fFullscreen) { 19507 return This->lpVtbl->MarkFullscreenWindow(This,hwnd,fFullscreen); 19508 } 19509 /*** ITaskbarList3 methods ***/ 19510 static FORCEINLINE HRESULT ITaskbarList3_SetProgressValue(ITaskbarList3* This,HWND hwnd,ULONGLONG ullCompleted,ULONGLONG ullTotal) { 19511 return This->lpVtbl->SetProgressValue(This,hwnd,ullCompleted,ullTotal); 19512 } 19513 static FORCEINLINE HRESULT ITaskbarList3_SetProgressState(ITaskbarList3* This,HWND hwnd,TBPFLAG tbpFlags) { 19514 return This->lpVtbl->SetProgressState(This,hwnd,tbpFlags); 19515 } 19516 static FORCEINLINE HRESULT ITaskbarList3_RegisterTab(ITaskbarList3* This,HWND hwndTab,HWND hwndMDI) { 19517 return This->lpVtbl->RegisterTab(This,hwndTab,hwndMDI); 19518 } 19519 static FORCEINLINE HRESULT ITaskbarList3_UnregisterTab(ITaskbarList3* This,HWND hwndTab) { 19520 return This->lpVtbl->UnregisterTab(This,hwndTab); 19521 } 19522 static FORCEINLINE HRESULT ITaskbarList3_SetTabOrder(ITaskbarList3* This,HWND hwndTab,HWND hwndInsertBefore) { 19523 return This->lpVtbl->SetTabOrder(This,hwndTab,hwndInsertBefore); 19524 } 19525 static FORCEINLINE HRESULT ITaskbarList3_SetTabActive(ITaskbarList3* This,HWND hwndTab,HWND hwndMDI,DWORD dwReserved) { 19526 return This->lpVtbl->SetTabActive(This,hwndTab,hwndMDI,dwReserved); 19527 } 19528 static FORCEINLINE HRESULT ITaskbarList3_ThumbBarAddButtons(ITaskbarList3* This,HWND hwnd,UINT cButtons,LPTHUMBBUTTON pButton) { 19529 return This->lpVtbl->ThumbBarAddButtons(This,hwnd,cButtons,pButton); 19530 } 19531 static FORCEINLINE HRESULT ITaskbarList3_ThumbBarUpdateButtons(ITaskbarList3* This,HWND hwnd,UINT cButtons,LPTHUMBBUTTON pButton) { 19532 return This->lpVtbl->ThumbBarUpdateButtons(This,hwnd,cButtons,pButton); 19533 } 19534 static FORCEINLINE HRESULT ITaskbarList3_ThumbBarSetImageList(ITaskbarList3* This,HWND hwnd,HIMAGELIST himl) { 19535 return This->lpVtbl->ThumbBarSetImageList(This,hwnd,himl); 19536 } 19537 static FORCEINLINE HRESULT ITaskbarList3_SetOverlayIcon(ITaskbarList3* This,HWND hwnd,HICON hIcon,LPCWSTR pszDescription) { 19538 return This->lpVtbl->SetOverlayIcon(This,hwnd,hIcon,pszDescription); 19539 } 19540 static FORCEINLINE HRESULT ITaskbarList3_SetThumbnailTooltip(ITaskbarList3* This,HWND hwnd,LPCWSTR pszTip) { 19541 return This->lpVtbl->SetThumbnailTooltip(This,hwnd,pszTip); 19542 } 19543 static FORCEINLINE HRESULT ITaskbarList3_SetThumbnailClip(ITaskbarList3* This,HWND hwnd,RECT *prcClip) { 19544 return This->lpVtbl->SetThumbnailClip(This,hwnd,prcClip); 19545 } 19546 #endif 19547 #endif 19548 19549 #endif 19550 19551 HRESULT STDMETHODCALLTYPE ITaskbarList3_SetProgressValue_Proxy( 19552 ITaskbarList3* This, 19553 HWND hwnd, 19554 ULONGLONG ullCompleted, 19555 ULONGLONG ullTotal); 19556 void __RPC_STUB ITaskbarList3_SetProgressValue_Stub( 19557 IRpcStubBuffer* This, 19558 IRpcChannelBuffer* pRpcChannelBuffer, 19559 PRPC_MESSAGE pRpcMessage, 19560 DWORD* pdwStubPhase); 19561 HRESULT STDMETHODCALLTYPE ITaskbarList3_SetProgressState_Proxy( 19562 ITaskbarList3* This, 19563 HWND hwnd, 19564 TBPFLAG tbpFlags); 19565 void __RPC_STUB ITaskbarList3_SetProgressState_Stub( 19566 IRpcStubBuffer* This, 19567 IRpcChannelBuffer* pRpcChannelBuffer, 19568 PRPC_MESSAGE pRpcMessage, 19569 DWORD* pdwStubPhase); 19570 HRESULT STDMETHODCALLTYPE ITaskbarList3_RegisterTab_Proxy( 19571 ITaskbarList3* This, 19572 HWND hwndTab, 19573 HWND hwndMDI); 19574 void __RPC_STUB ITaskbarList3_RegisterTab_Stub( 19575 IRpcStubBuffer* This, 19576 IRpcChannelBuffer* pRpcChannelBuffer, 19577 PRPC_MESSAGE pRpcMessage, 19578 DWORD* pdwStubPhase); 19579 HRESULT STDMETHODCALLTYPE ITaskbarList3_UnregisterTab_Proxy( 19580 ITaskbarList3* This, 19581 HWND hwndTab); 19582 void __RPC_STUB ITaskbarList3_UnregisterTab_Stub( 19583 IRpcStubBuffer* This, 19584 IRpcChannelBuffer* pRpcChannelBuffer, 19585 PRPC_MESSAGE pRpcMessage, 19586 DWORD* pdwStubPhase); 19587 HRESULT STDMETHODCALLTYPE ITaskbarList3_SetTabOrder_Proxy( 19588 ITaskbarList3* This, 19589 HWND hwndTab, 19590 HWND hwndInsertBefore); 19591 void __RPC_STUB ITaskbarList3_SetTabOrder_Stub( 19592 IRpcStubBuffer* This, 19593 IRpcChannelBuffer* pRpcChannelBuffer, 19594 PRPC_MESSAGE pRpcMessage, 19595 DWORD* pdwStubPhase); 19596 HRESULT STDMETHODCALLTYPE ITaskbarList3_SetTabActive_Proxy( 19597 ITaskbarList3* This, 19598 HWND hwndTab, 19599 HWND hwndMDI, 19600 DWORD dwReserved); 19601 void __RPC_STUB ITaskbarList3_SetTabActive_Stub( 19602 IRpcStubBuffer* This, 19603 IRpcChannelBuffer* pRpcChannelBuffer, 19604 PRPC_MESSAGE pRpcMessage, 19605 DWORD* pdwStubPhase); 19606 HRESULT STDMETHODCALLTYPE ITaskbarList3_ThumbBarAddButtons_Proxy( 19607 ITaskbarList3* This, 19608 HWND hwnd, 19609 UINT cButtons, 19610 LPTHUMBBUTTON pButton); 19611 void __RPC_STUB ITaskbarList3_ThumbBarAddButtons_Stub( 19612 IRpcStubBuffer* This, 19613 IRpcChannelBuffer* pRpcChannelBuffer, 19614 PRPC_MESSAGE pRpcMessage, 19615 DWORD* pdwStubPhase); 19616 HRESULT STDMETHODCALLTYPE ITaskbarList3_ThumbBarUpdateButtons_Proxy( 19617 ITaskbarList3* This, 19618 HWND hwnd, 19619 UINT cButtons, 19620 LPTHUMBBUTTON pButton); 19621 void __RPC_STUB ITaskbarList3_ThumbBarUpdateButtons_Stub( 19622 IRpcStubBuffer* This, 19623 IRpcChannelBuffer* pRpcChannelBuffer, 19624 PRPC_MESSAGE pRpcMessage, 19625 DWORD* pdwStubPhase); 19626 HRESULT STDMETHODCALLTYPE ITaskbarList3_ThumbBarSetImageList_Proxy( 19627 ITaskbarList3* This, 19628 HWND hwnd, 19629 HIMAGELIST himl); 19630 void __RPC_STUB ITaskbarList3_ThumbBarSetImageList_Stub( 19631 IRpcStubBuffer* This, 19632 IRpcChannelBuffer* pRpcChannelBuffer, 19633 PRPC_MESSAGE pRpcMessage, 19634 DWORD* pdwStubPhase); 19635 HRESULT STDMETHODCALLTYPE ITaskbarList3_SetOverlayIcon_Proxy( 19636 ITaskbarList3* This, 19637 HWND hwnd, 19638 HICON hIcon, 19639 LPCWSTR pszDescription); 19640 void __RPC_STUB ITaskbarList3_SetOverlayIcon_Stub( 19641 IRpcStubBuffer* This, 19642 IRpcChannelBuffer* pRpcChannelBuffer, 19643 PRPC_MESSAGE pRpcMessage, 19644 DWORD* pdwStubPhase); 19645 HRESULT STDMETHODCALLTYPE ITaskbarList3_SetThumbnailTooltip_Proxy( 19646 ITaskbarList3* This, 19647 HWND hwnd, 19648 LPCWSTR pszTip); 19649 void __RPC_STUB ITaskbarList3_SetThumbnailTooltip_Stub( 19650 IRpcStubBuffer* This, 19651 IRpcChannelBuffer* pRpcChannelBuffer, 19652 PRPC_MESSAGE pRpcMessage, 19653 DWORD* pdwStubPhase); 19654 HRESULT STDMETHODCALLTYPE ITaskbarList3_SetThumbnailClip_Proxy( 19655 ITaskbarList3* This, 19656 HWND hwnd, 19657 RECT *prcClip); 19658 void __RPC_STUB ITaskbarList3_SetThumbnailClip_Stub( 19659 IRpcStubBuffer* This, 19660 IRpcChannelBuffer* pRpcChannelBuffer, 19661 PRPC_MESSAGE pRpcMessage, 19662 DWORD* pdwStubPhase); 19663 19664 #endif /* __ITaskbarList3_INTERFACE_DEFINED__ */ 19665 19666 19667 /***************************************************************************** 19668 * ITaskbarList4 interface 19669 */ 19670 #ifndef __ITaskbarList4_INTERFACE_DEFINED__ 19671 #define __ITaskbarList4_INTERFACE_DEFINED__ 19672 19673 typedef enum STPFLAG { 19674 STPF_NONE = 0x0, 19675 STPF_USEAPPTHUMBNAILALWAYS = 0x1, 19676 STPF_USEAPPTHUMBNAILWHENACTIVE = 0x2, 19677 STPF_USEAPPPEEKALWAYS = 0x4, 19678 STPF_USEAPPPEEKWHENACTIVE = 0x8 19679 } STPFLAG; 19680 19681 DEFINE_ENUM_FLAG_OPERATORS(STPFLAG) 19682 19683 DEFINE_GUID(IID_ITaskbarList4, 0xc43dc798, 0x95d1, 0x4bea, 0x90,0x30, 0xbb,0x99,0xe2,0x98,0x3a,0x1a); 19684 #if defined(__cplusplus) && !defined(CINTERFACE) 19685 MIDL_INTERFACE("c43dc798-95d1-4bea-9030-bb99e2983a1a") 19686 ITaskbarList4 : public ITaskbarList3 19687 { 19688 virtual HRESULT STDMETHODCALLTYPE SetTabProperties( 19689 HWND hwndTab, 19690 STPFLAG stpFlags) = 0; 19691 19692 }; 19693 #ifdef __CRT_UUID_DECL 19694 __CRT_UUID_DECL(ITaskbarList4, 0xc43dc798, 0x95d1, 0x4bea, 0x90,0x30, 0xbb,0x99,0xe2,0x98,0x3a,0x1a) 19695 #endif 19696 #else 19697 typedef struct ITaskbarList4Vtbl { 19698 BEGIN_INTERFACE 19699 19700 /*** IUnknown methods ***/ 19701 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 19702 ITaskbarList4* This, 19703 REFIID riid, 19704 void **ppvObject); 19705 19706 ULONG (STDMETHODCALLTYPE *AddRef)( 19707 ITaskbarList4* This); 19708 19709 ULONG (STDMETHODCALLTYPE *Release)( 19710 ITaskbarList4* This); 19711 19712 /*** ITaskbarList methods ***/ 19713 HRESULT (STDMETHODCALLTYPE *HrInit)( 19714 ITaskbarList4* This); 19715 19716 HRESULT (STDMETHODCALLTYPE *AddTab)( 19717 ITaskbarList4* This, 19718 HWND hwnd); 19719 19720 HRESULT (STDMETHODCALLTYPE *DeleteTab)( 19721 ITaskbarList4* This, 19722 HWND hwnd); 19723 19724 HRESULT (STDMETHODCALLTYPE *ActivateTab)( 19725 ITaskbarList4* This, 19726 HWND hwnd); 19727 19728 HRESULT (STDMETHODCALLTYPE *SetActiveAlt)( 19729 ITaskbarList4* This, 19730 HWND hwnd); 19731 19732 /*** ITaskbarList2 methods ***/ 19733 HRESULT (STDMETHODCALLTYPE *MarkFullscreenWindow)( 19734 ITaskbarList4* This, 19735 HWND hwnd, 19736 WINBOOL fFullscreen); 19737 19738 /*** ITaskbarList3 methods ***/ 19739 HRESULT (STDMETHODCALLTYPE *SetProgressValue)( 19740 ITaskbarList4* This, 19741 HWND hwnd, 19742 ULONGLONG ullCompleted, 19743 ULONGLONG ullTotal); 19744 19745 HRESULT (STDMETHODCALLTYPE *SetProgressState)( 19746 ITaskbarList4* This, 19747 HWND hwnd, 19748 TBPFLAG tbpFlags); 19749 19750 HRESULT (STDMETHODCALLTYPE *RegisterTab)( 19751 ITaskbarList4* This, 19752 HWND hwndTab, 19753 HWND hwndMDI); 19754 19755 HRESULT (STDMETHODCALLTYPE *UnregisterTab)( 19756 ITaskbarList4* This, 19757 HWND hwndTab); 19758 19759 HRESULT (STDMETHODCALLTYPE *SetTabOrder)( 19760 ITaskbarList4* This, 19761 HWND hwndTab, 19762 HWND hwndInsertBefore); 19763 19764 HRESULT (STDMETHODCALLTYPE *SetTabActive)( 19765 ITaskbarList4* This, 19766 HWND hwndTab, 19767 HWND hwndMDI, 19768 DWORD dwReserved); 19769 19770 HRESULT (STDMETHODCALLTYPE *ThumbBarAddButtons)( 19771 ITaskbarList4* This, 19772 HWND hwnd, 19773 UINT cButtons, 19774 LPTHUMBBUTTON pButton); 19775 19776 HRESULT (STDMETHODCALLTYPE *ThumbBarUpdateButtons)( 19777 ITaskbarList4* This, 19778 HWND hwnd, 19779 UINT cButtons, 19780 LPTHUMBBUTTON pButton); 19781 19782 HRESULT (STDMETHODCALLTYPE *ThumbBarSetImageList)( 19783 ITaskbarList4* This, 19784 HWND hwnd, 19785 HIMAGELIST himl); 19786 19787 HRESULT (STDMETHODCALLTYPE *SetOverlayIcon)( 19788 ITaskbarList4* This, 19789 HWND hwnd, 19790 HICON hIcon, 19791 LPCWSTR pszDescription); 19792 19793 HRESULT (STDMETHODCALLTYPE *SetThumbnailTooltip)( 19794 ITaskbarList4* This, 19795 HWND hwnd, 19796 LPCWSTR pszTip); 19797 19798 HRESULT (STDMETHODCALLTYPE *SetThumbnailClip)( 19799 ITaskbarList4* This, 19800 HWND hwnd, 19801 RECT *prcClip); 19802 19803 /*** ITaskbarList4 methods ***/ 19804 HRESULT (STDMETHODCALLTYPE *SetTabProperties)( 19805 ITaskbarList4* This, 19806 HWND hwndTab, 19807 STPFLAG stpFlags); 19808 19809 END_INTERFACE 19810 } ITaskbarList4Vtbl; 19811 interface ITaskbarList4 { 19812 CONST_VTBL ITaskbarList4Vtbl* lpVtbl; 19813 }; 19814 19815 #ifdef COBJMACROS 19816 #ifndef WIDL_C_INLINE_WRAPPERS 19817 /*** IUnknown methods ***/ 19818 #define ITaskbarList4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 19819 #define ITaskbarList4_AddRef(This) (This)->lpVtbl->AddRef(This) 19820 #define ITaskbarList4_Release(This) (This)->lpVtbl->Release(This) 19821 /*** ITaskbarList methods ***/ 19822 #define ITaskbarList4_HrInit(This) (This)->lpVtbl->HrInit(This) 19823 #define ITaskbarList4_AddTab(This,hwnd) (This)->lpVtbl->AddTab(This,hwnd) 19824 #define ITaskbarList4_DeleteTab(This,hwnd) (This)->lpVtbl->DeleteTab(This,hwnd) 19825 #define ITaskbarList4_ActivateTab(This,hwnd) (This)->lpVtbl->ActivateTab(This,hwnd) 19826 #define ITaskbarList4_SetActiveAlt(This,hwnd) (This)->lpVtbl->SetActiveAlt(This,hwnd) 19827 /*** ITaskbarList2 methods ***/ 19828 #define ITaskbarList4_MarkFullscreenWindow(This,hwnd,fFullscreen) (This)->lpVtbl->MarkFullscreenWindow(This,hwnd,fFullscreen) 19829 /*** ITaskbarList3 methods ***/ 19830 #define ITaskbarList4_SetProgressValue(This,hwnd,ullCompleted,ullTotal) (This)->lpVtbl->SetProgressValue(This,hwnd,ullCompleted,ullTotal) 19831 #define ITaskbarList4_SetProgressState(This,hwnd,tbpFlags) (This)->lpVtbl->SetProgressState(This,hwnd,tbpFlags) 19832 #define ITaskbarList4_RegisterTab(This,hwndTab,hwndMDI) (This)->lpVtbl->RegisterTab(This,hwndTab,hwndMDI) 19833 #define ITaskbarList4_UnregisterTab(This,hwndTab) (This)->lpVtbl->UnregisterTab(This,hwndTab) 19834 #define ITaskbarList4_SetTabOrder(This,hwndTab,hwndInsertBefore) (This)->lpVtbl->SetTabOrder(This,hwndTab,hwndInsertBefore) 19835 #define ITaskbarList4_SetTabActive(This,hwndTab,hwndMDI,dwReserved) (This)->lpVtbl->SetTabActive(This,hwndTab,hwndMDI,dwReserved) 19836 #define ITaskbarList4_ThumbBarAddButtons(This,hwnd,cButtons,pButton) (This)->lpVtbl->ThumbBarAddButtons(This,hwnd,cButtons,pButton) 19837 #define ITaskbarList4_ThumbBarUpdateButtons(This,hwnd,cButtons,pButton) (This)->lpVtbl->ThumbBarUpdateButtons(This,hwnd,cButtons,pButton) 19838 #define ITaskbarList4_ThumbBarSetImageList(This,hwnd,himl) (This)->lpVtbl->ThumbBarSetImageList(This,hwnd,himl) 19839 #define ITaskbarList4_SetOverlayIcon(This,hwnd,hIcon,pszDescription) (This)->lpVtbl->SetOverlayIcon(This,hwnd,hIcon,pszDescription) 19840 #define ITaskbarList4_SetThumbnailTooltip(This,hwnd,pszTip) (This)->lpVtbl->SetThumbnailTooltip(This,hwnd,pszTip) 19841 #define ITaskbarList4_SetThumbnailClip(This,hwnd,prcClip) (This)->lpVtbl->SetThumbnailClip(This,hwnd,prcClip) 19842 /*** ITaskbarList4 methods ***/ 19843 #define ITaskbarList4_SetTabProperties(This,hwndTab,stpFlags) (This)->lpVtbl->SetTabProperties(This,hwndTab,stpFlags) 19844 #else 19845 /*** IUnknown methods ***/ 19846 static FORCEINLINE HRESULT ITaskbarList4_QueryInterface(ITaskbarList4* This,REFIID riid,void **ppvObject) { 19847 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 19848 } 19849 static FORCEINLINE ULONG ITaskbarList4_AddRef(ITaskbarList4* This) { 19850 return This->lpVtbl->AddRef(This); 19851 } 19852 static FORCEINLINE ULONG ITaskbarList4_Release(ITaskbarList4* This) { 19853 return This->lpVtbl->Release(This); 19854 } 19855 /*** ITaskbarList methods ***/ 19856 static FORCEINLINE HRESULT ITaskbarList4_HrInit(ITaskbarList4* This) { 19857 return This->lpVtbl->HrInit(This); 19858 } 19859 static FORCEINLINE HRESULT ITaskbarList4_AddTab(ITaskbarList4* This,HWND hwnd) { 19860 return This->lpVtbl->AddTab(This,hwnd); 19861 } 19862 static FORCEINLINE HRESULT ITaskbarList4_DeleteTab(ITaskbarList4* This,HWND hwnd) { 19863 return This->lpVtbl->DeleteTab(This,hwnd); 19864 } 19865 static FORCEINLINE HRESULT ITaskbarList4_ActivateTab(ITaskbarList4* This,HWND hwnd) { 19866 return This->lpVtbl->ActivateTab(This,hwnd); 19867 } 19868 static FORCEINLINE HRESULT ITaskbarList4_SetActiveAlt(ITaskbarList4* This,HWND hwnd) { 19869 return This->lpVtbl->SetActiveAlt(This,hwnd); 19870 } 19871 /*** ITaskbarList2 methods ***/ 19872 static FORCEINLINE HRESULT ITaskbarList4_MarkFullscreenWindow(ITaskbarList4* This,HWND hwnd,WINBOOL fFullscreen) { 19873 return This->lpVtbl->MarkFullscreenWindow(This,hwnd,fFullscreen); 19874 } 19875 /*** ITaskbarList3 methods ***/ 19876 static FORCEINLINE HRESULT ITaskbarList4_SetProgressValue(ITaskbarList4* This,HWND hwnd,ULONGLONG ullCompleted,ULONGLONG ullTotal) { 19877 return This->lpVtbl->SetProgressValue(This,hwnd,ullCompleted,ullTotal); 19878 } 19879 static FORCEINLINE HRESULT ITaskbarList4_SetProgressState(ITaskbarList4* This,HWND hwnd,TBPFLAG tbpFlags) { 19880 return This->lpVtbl->SetProgressState(This,hwnd,tbpFlags); 19881 } 19882 static FORCEINLINE HRESULT ITaskbarList4_RegisterTab(ITaskbarList4* This,HWND hwndTab,HWND hwndMDI) { 19883 return This->lpVtbl->RegisterTab(This,hwndTab,hwndMDI); 19884 } 19885 static FORCEINLINE HRESULT ITaskbarList4_UnregisterTab(ITaskbarList4* This,HWND hwndTab) { 19886 return This->lpVtbl->UnregisterTab(This,hwndTab); 19887 } 19888 static FORCEINLINE HRESULT ITaskbarList4_SetTabOrder(ITaskbarList4* This,HWND hwndTab,HWND hwndInsertBefore) { 19889 return This->lpVtbl->SetTabOrder(This,hwndTab,hwndInsertBefore); 19890 } 19891 static FORCEINLINE HRESULT ITaskbarList4_SetTabActive(ITaskbarList4* This,HWND hwndTab,HWND hwndMDI,DWORD dwReserved) { 19892 return This->lpVtbl->SetTabActive(This,hwndTab,hwndMDI,dwReserved); 19893 } 19894 static FORCEINLINE HRESULT ITaskbarList4_ThumbBarAddButtons(ITaskbarList4* This,HWND hwnd,UINT cButtons,LPTHUMBBUTTON pButton) { 19895 return This->lpVtbl->ThumbBarAddButtons(This,hwnd,cButtons,pButton); 19896 } 19897 static FORCEINLINE HRESULT ITaskbarList4_ThumbBarUpdateButtons(ITaskbarList4* This,HWND hwnd,UINT cButtons,LPTHUMBBUTTON pButton) { 19898 return This->lpVtbl->ThumbBarUpdateButtons(This,hwnd,cButtons,pButton); 19899 } 19900 static FORCEINLINE HRESULT ITaskbarList4_ThumbBarSetImageList(ITaskbarList4* This,HWND hwnd,HIMAGELIST himl) { 19901 return This->lpVtbl->ThumbBarSetImageList(This,hwnd,himl); 19902 } 19903 static FORCEINLINE HRESULT ITaskbarList4_SetOverlayIcon(ITaskbarList4* This,HWND hwnd,HICON hIcon,LPCWSTR pszDescription) { 19904 return This->lpVtbl->SetOverlayIcon(This,hwnd,hIcon,pszDescription); 19905 } 19906 static FORCEINLINE HRESULT ITaskbarList4_SetThumbnailTooltip(ITaskbarList4* This,HWND hwnd,LPCWSTR pszTip) { 19907 return This->lpVtbl->SetThumbnailTooltip(This,hwnd,pszTip); 19908 } 19909 static FORCEINLINE HRESULT ITaskbarList4_SetThumbnailClip(ITaskbarList4* This,HWND hwnd,RECT *prcClip) { 19910 return This->lpVtbl->SetThumbnailClip(This,hwnd,prcClip); 19911 } 19912 /*** ITaskbarList4 methods ***/ 19913 static FORCEINLINE HRESULT ITaskbarList4_SetTabProperties(ITaskbarList4* This,HWND hwndTab,STPFLAG stpFlags) { 19914 return This->lpVtbl->SetTabProperties(This,hwndTab,stpFlags); 19915 } 19916 #endif 19917 #endif 19918 19919 #endif 19920 19921 HRESULT STDMETHODCALLTYPE ITaskbarList4_SetTabProperties_Proxy( 19922 ITaskbarList4* This, 19923 HWND hwndTab, 19924 STPFLAG stpFlags); 19925 void __RPC_STUB ITaskbarList4_SetTabProperties_Stub( 19926 IRpcStubBuffer* This, 19927 IRpcChannelBuffer* pRpcChannelBuffer, 19928 PRPC_MESSAGE pRpcMessage, 19929 DWORD* pdwStubPhase); 19930 19931 #endif /* __ITaskbarList4_INTERFACE_DEFINED__ */ 19932 19933 19934 /***************************************************************************** 19935 * IStartMenuPinnedList interface 19936 */ 19937 #ifndef __IStartMenuPinnedList_INTERFACE_DEFINED__ 19938 #define __IStartMenuPinnedList_INTERFACE_DEFINED__ 19939 19940 DEFINE_GUID(IID_IStartMenuPinnedList, 0x4cd19ada, 0x25a5, 0x4a32, 0xb3,0xb7, 0x34,0x7b,0xee,0x5b,0xe3,0x6b); 19941 #if defined(__cplusplus) && !defined(CINTERFACE) 19942 MIDL_INTERFACE("4cd19ada-25a5-4a32-b3b7-347bee5be36b") 19943 IStartMenuPinnedList : public IUnknown 19944 { 19945 virtual HRESULT STDMETHODCALLTYPE RemoveFromList( 19946 IShellItem *pitem) = 0; 19947 19948 }; 19949 #ifdef __CRT_UUID_DECL 19950 __CRT_UUID_DECL(IStartMenuPinnedList, 0x4cd19ada, 0x25a5, 0x4a32, 0xb3,0xb7, 0x34,0x7b,0xee,0x5b,0xe3,0x6b) 19951 #endif 19952 #else 19953 typedef struct IStartMenuPinnedListVtbl { 19954 BEGIN_INTERFACE 19955 19956 /*** IUnknown methods ***/ 19957 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 19958 IStartMenuPinnedList* This, 19959 REFIID riid, 19960 void **ppvObject); 19961 19962 ULONG (STDMETHODCALLTYPE *AddRef)( 19963 IStartMenuPinnedList* This); 19964 19965 ULONG (STDMETHODCALLTYPE *Release)( 19966 IStartMenuPinnedList* This); 19967 19968 /*** IStartMenuPinnedList methods ***/ 19969 HRESULT (STDMETHODCALLTYPE *RemoveFromList)( 19970 IStartMenuPinnedList* This, 19971 IShellItem *pitem); 19972 19973 END_INTERFACE 19974 } IStartMenuPinnedListVtbl; 19975 interface IStartMenuPinnedList { 19976 CONST_VTBL IStartMenuPinnedListVtbl* lpVtbl; 19977 }; 19978 19979 #ifdef COBJMACROS 19980 #ifndef WIDL_C_INLINE_WRAPPERS 19981 /*** IUnknown methods ***/ 19982 #define IStartMenuPinnedList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 19983 #define IStartMenuPinnedList_AddRef(This) (This)->lpVtbl->AddRef(This) 19984 #define IStartMenuPinnedList_Release(This) (This)->lpVtbl->Release(This) 19985 /*** IStartMenuPinnedList methods ***/ 19986 #define IStartMenuPinnedList_RemoveFromList(This,pitem) (This)->lpVtbl->RemoveFromList(This,pitem) 19987 #else 19988 /*** IUnknown methods ***/ 19989 static FORCEINLINE HRESULT IStartMenuPinnedList_QueryInterface(IStartMenuPinnedList* This,REFIID riid,void **ppvObject) { 19990 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 19991 } 19992 static FORCEINLINE ULONG IStartMenuPinnedList_AddRef(IStartMenuPinnedList* This) { 19993 return This->lpVtbl->AddRef(This); 19994 } 19995 static FORCEINLINE ULONG IStartMenuPinnedList_Release(IStartMenuPinnedList* This) { 19996 return This->lpVtbl->Release(This); 19997 } 19998 /*** IStartMenuPinnedList methods ***/ 19999 static FORCEINLINE HRESULT IStartMenuPinnedList_RemoveFromList(IStartMenuPinnedList* This,IShellItem *pitem) { 20000 return This->lpVtbl->RemoveFromList(This,pitem); 20001 } 20002 #endif 20003 #endif 20004 20005 #endif 20006 20007 HRESULT STDMETHODCALLTYPE IStartMenuPinnedList_RemoveFromList_Proxy( 20008 IStartMenuPinnedList* This, 20009 IShellItem *pitem); 20010 void __RPC_STUB IStartMenuPinnedList_RemoveFromList_Stub( 20011 IRpcStubBuffer* This, 20012 IRpcChannelBuffer* pRpcChannelBuffer, 20013 PRPC_MESSAGE pRpcMessage, 20014 DWORD* pdwStubPhase); 20015 20016 #endif /* __IStartMenuPinnedList_INTERFACE_DEFINED__ */ 20017 20018 20019 /***************************************************************************** 20020 * ICDBurn interface 20021 */ 20022 #ifndef __ICDBurn_INTERFACE_DEFINED__ 20023 #define __ICDBurn_INTERFACE_DEFINED__ 20024 20025 DEFINE_GUID(IID_ICDBurn, 0x3d73a659, 0xe5d0, 0x4d42, 0xaf,0xc0, 0x51,0x21,0xba,0x42,0x5c,0x8d); 20026 #if defined(__cplusplus) && !defined(CINTERFACE) 20027 MIDL_INTERFACE("3d73a659-e5d0-4d42-afc0-5121ba425c8d") 20028 ICDBurn : public IUnknown 20029 { 20030 virtual HRESULT STDMETHODCALLTYPE GetRecorderDriveLetter( 20031 LPWSTR pszDrive, 20032 UINT cch) = 0; 20033 20034 virtual HRESULT STDMETHODCALLTYPE Burn( 20035 HWND hwnd) = 0; 20036 20037 virtual HRESULT STDMETHODCALLTYPE HasRecordableDrive( 20038 WINBOOL *pfHasRecorder) = 0; 20039 20040 }; 20041 #ifdef __CRT_UUID_DECL 20042 __CRT_UUID_DECL(ICDBurn, 0x3d73a659, 0xe5d0, 0x4d42, 0xaf,0xc0, 0x51,0x21,0xba,0x42,0x5c,0x8d) 20043 #endif 20044 #else 20045 typedef struct ICDBurnVtbl { 20046 BEGIN_INTERFACE 20047 20048 /*** IUnknown methods ***/ 20049 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 20050 ICDBurn* This, 20051 REFIID riid, 20052 void **ppvObject); 20053 20054 ULONG (STDMETHODCALLTYPE *AddRef)( 20055 ICDBurn* This); 20056 20057 ULONG (STDMETHODCALLTYPE *Release)( 20058 ICDBurn* This); 20059 20060 /*** ICDBurn methods ***/ 20061 HRESULT (STDMETHODCALLTYPE *GetRecorderDriveLetter)( 20062 ICDBurn* This, 20063 LPWSTR pszDrive, 20064 UINT cch); 20065 20066 HRESULT (STDMETHODCALLTYPE *Burn)( 20067 ICDBurn* This, 20068 HWND hwnd); 20069 20070 HRESULT (STDMETHODCALLTYPE *HasRecordableDrive)( 20071 ICDBurn* This, 20072 WINBOOL *pfHasRecorder); 20073 20074 END_INTERFACE 20075 } ICDBurnVtbl; 20076 interface ICDBurn { 20077 CONST_VTBL ICDBurnVtbl* lpVtbl; 20078 }; 20079 20080 #ifdef COBJMACROS 20081 #ifndef WIDL_C_INLINE_WRAPPERS 20082 /*** IUnknown methods ***/ 20083 #define ICDBurn_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 20084 #define ICDBurn_AddRef(This) (This)->lpVtbl->AddRef(This) 20085 #define ICDBurn_Release(This) (This)->lpVtbl->Release(This) 20086 /*** ICDBurn methods ***/ 20087 #define ICDBurn_GetRecorderDriveLetter(This,pszDrive,cch) (This)->lpVtbl->GetRecorderDriveLetter(This,pszDrive,cch) 20088 #define ICDBurn_Burn(This,hwnd) (This)->lpVtbl->Burn(This,hwnd) 20089 #define ICDBurn_HasRecordableDrive(This,pfHasRecorder) (This)->lpVtbl->HasRecordableDrive(This,pfHasRecorder) 20090 #else 20091 /*** IUnknown methods ***/ 20092 static FORCEINLINE HRESULT ICDBurn_QueryInterface(ICDBurn* This,REFIID riid,void **ppvObject) { 20093 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 20094 } 20095 static FORCEINLINE ULONG ICDBurn_AddRef(ICDBurn* This) { 20096 return This->lpVtbl->AddRef(This); 20097 } 20098 static FORCEINLINE ULONG ICDBurn_Release(ICDBurn* This) { 20099 return This->lpVtbl->Release(This); 20100 } 20101 /*** ICDBurn methods ***/ 20102 static FORCEINLINE HRESULT ICDBurn_GetRecorderDriveLetter(ICDBurn* This,LPWSTR pszDrive,UINT cch) { 20103 return This->lpVtbl->GetRecorderDriveLetter(This,pszDrive,cch); 20104 } 20105 static FORCEINLINE HRESULT ICDBurn_Burn(ICDBurn* This,HWND hwnd) { 20106 return This->lpVtbl->Burn(This,hwnd); 20107 } 20108 static FORCEINLINE HRESULT ICDBurn_HasRecordableDrive(ICDBurn* This,WINBOOL *pfHasRecorder) { 20109 return This->lpVtbl->HasRecordableDrive(This,pfHasRecorder); 20110 } 20111 #endif 20112 #endif 20113 20114 #endif 20115 20116 HRESULT STDMETHODCALLTYPE ICDBurn_GetRecorderDriveLetter_Proxy( 20117 ICDBurn* This, 20118 LPWSTR pszDrive, 20119 UINT cch); 20120 void __RPC_STUB ICDBurn_GetRecorderDriveLetter_Stub( 20121 IRpcStubBuffer* This, 20122 IRpcChannelBuffer* pRpcChannelBuffer, 20123 PRPC_MESSAGE pRpcMessage, 20124 DWORD* pdwStubPhase); 20125 HRESULT STDMETHODCALLTYPE ICDBurn_Burn_Proxy( 20126 ICDBurn* This, 20127 HWND hwnd); 20128 void __RPC_STUB ICDBurn_Burn_Stub( 20129 IRpcStubBuffer* This, 20130 IRpcChannelBuffer* pRpcChannelBuffer, 20131 PRPC_MESSAGE pRpcMessage, 20132 DWORD* pdwStubPhase); 20133 HRESULT STDMETHODCALLTYPE ICDBurn_HasRecordableDrive_Proxy( 20134 ICDBurn* This, 20135 WINBOOL *pfHasRecorder); 20136 void __RPC_STUB ICDBurn_HasRecordableDrive_Stub( 20137 IRpcStubBuffer* This, 20138 IRpcChannelBuffer* pRpcChannelBuffer, 20139 PRPC_MESSAGE pRpcMessage, 20140 DWORD* pdwStubPhase); 20141 20142 #endif /* __ICDBurn_INTERFACE_DEFINED__ */ 20143 20144 20145 #define IDD_WIZEXTN_FIRST 0x5000 20146 #define IDD_WIZEXTN_LAST 0x5100 20147 20148 /***************************************************************************** 20149 * IWizardSite interface 20150 */ 20151 #ifndef __IWizardSite_INTERFACE_DEFINED__ 20152 #define __IWizardSite_INTERFACE_DEFINED__ 20153 20154 DEFINE_GUID(IID_IWizardSite, 0x88960f5b, 0x422f, 0x4e7b, 0x80,0x13, 0x73,0x41,0x53,0x81,0xc3,0xc3); 20155 #if defined(__cplusplus) && !defined(CINTERFACE) 20156 MIDL_INTERFACE("88960f5b-422f-4e7b-8013-73415381c3c3") 20157 IWizardSite : public IUnknown 20158 { 20159 virtual HRESULT STDMETHODCALLTYPE GetPreviousPage( 20160 HPROPSHEETPAGE *phpage) = 0; 20161 20162 virtual HRESULT STDMETHODCALLTYPE GetNextPage( 20163 HPROPSHEETPAGE *phpage) = 0; 20164 20165 virtual HRESULT STDMETHODCALLTYPE GetCancelledPage( 20166 HPROPSHEETPAGE *phpage) = 0; 20167 20168 }; 20169 #ifdef __CRT_UUID_DECL 20170 __CRT_UUID_DECL(IWizardSite, 0x88960f5b, 0x422f, 0x4e7b, 0x80,0x13, 0x73,0x41,0x53,0x81,0xc3,0xc3) 20171 #endif 20172 #else 20173 typedef struct IWizardSiteVtbl { 20174 BEGIN_INTERFACE 20175 20176 /*** IUnknown methods ***/ 20177 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 20178 IWizardSite* This, 20179 REFIID riid, 20180 void **ppvObject); 20181 20182 ULONG (STDMETHODCALLTYPE *AddRef)( 20183 IWizardSite* This); 20184 20185 ULONG (STDMETHODCALLTYPE *Release)( 20186 IWizardSite* This); 20187 20188 /*** IWizardSite methods ***/ 20189 HRESULT (STDMETHODCALLTYPE *GetPreviousPage)( 20190 IWizardSite* This, 20191 HPROPSHEETPAGE *phpage); 20192 20193 HRESULT (STDMETHODCALLTYPE *GetNextPage)( 20194 IWizardSite* This, 20195 HPROPSHEETPAGE *phpage); 20196 20197 HRESULT (STDMETHODCALLTYPE *GetCancelledPage)( 20198 IWizardSite* This, 20199 HPROPSHEETPAGE *phpage); 20200 20201 END_INTERFACE 20202 } IWizardSiteVtbl; 20203 interface IWizardSite { 20204 CONST_VTBL IWizardSiteVtbl* lpVtbl; 20205 }; 20206 20207 #ifdef COBJMACROS 20208 #ifndef WIDL_C_INLINE_WRAPPERS 20209 /*** IUnknown methods ***/ 20210 #define IWizardSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 20211 #define IWizardSite_AddRef(This) (This)->lpVtbl->AddRef(This) 20212 #define IWizardSite_Release(This) (This)->lpVtbl->Release(This) 20213 /*** IWizardSite methods ***/ 20214 #define IWizardSite_GetPreviousPage(This,phpage) (This)->lpVtbl->GetPreviousPage(This,phpage) 20215 #define IWizardSite_GetNextPage(This,phpage) (This)->lpVtbl->GetNextPage(This,phpage) 20216 #define IWizardSite_GetCancelledPage(This,phpage) (This)->lpVtbl->GetCancelledPage(This,phpage) 20217 #else 20218 /*** IUnknown methods ***/ 20219 static FORCEINLINE HRESULT IWizardSite_QueryInterface(IWizardSite* This,REFIID riid,void **ppvObject) { 20220 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 20221 } 20222 static FORCEINLINE ULONG IWizardSite_AddRef(IWizardSite* This) { 20223 return This->lpVtbl->AddRef(This); 20224 } 20225 static FORCEINLINE ULONG IWizardSite_Release(IWizardSite* This) { 20226 return This->lpVtbl->Release(This); 20227 } 20228 /*** IWizardSite methods ***/ 20229 static FORCEINLINE HRESULT IWizardSite_GetPreviousPage(IWizardSite* This,HPROPSHEETPAGE *phpage) { 20230 return This->lpVtbl->GetPreviousPage(This,phpage); 20231 } 20232 static FORCEINLINE HRESULT IWizardSite_GetNextPage(IWizardSite* This,HPROPSHEETPAGE *phpage) { 20233 return This->lpVtbl->GetNextPage(This,phpage); 20234 } 20235 static FORCEINLINE HRESULT IWizardSite_GetCancelledPage(IWizardSite* This,HPROPSHEETPAGE *phpage) { 20236 return This->lpVtbl->GetCancelledPage(This,phpage); 20237 } 20238 #endif 20239 #endif 20240 20241 #endif 20242 20243 HRESULT STDMETHODCALLTYPE IWizardSite_GetPreviousPage_Proxy( 20244 IWizardSite* This, 20245 HPROPSHEETPAGE *phpage); 20246 void __RPC_STUB IWizardSite_GetPreviousPage_Stub( 20247 IRpcStubBuffer* This, 20248 IRpcChannelBuffer* pRpcChannelBuffer, 20249 PRPC_MESSAGE pRpcMessage, 20250 DWORD* pdwStubPhase); 20251 HRESULT STDMETHODCALLTYPE IWizardSite_GetNextPage_Proxy( 20252 IWizardSite* This, 20253 HPROPSHEETPAGE *phpage); 20254 void __RPC_STUB IWizardSite_GetNextPage_Stub( 20255 IRpcStubBuffer* This, 20256 IRpcChannelBuffer* pRpcChannelBuffer, 20257 PRPC_MESSAGE pRpcMessage, 20258 DWORD* pdwStubPhase); 20259 HRESULT STDMETHODCALLTYPE IWizardSite_GetCancelledPage_Proxy( 20260 IWizardSite* This, 20261 HPROPSHEETPAGE *phpage); 20262 void __RPC_STUB IWizardSite_GetCancelledPage_Stub( 20263 IRpcStubBuffer* This, 20264 IRpcChannelBuffer* pRpcChannelBuffer, 20265 PRPC_MESSAGE pRpcMessage, 20266 DWORD* pdwStubPhase); 20267 20268 #endif /* __IWizardSite_INTERFACE_DEFINED__ */ 20269 20270 20271 #define SID_WizardSite IID_IWizardSite 20272 20273 /***************************************************************************** 20274 * IWizardExtension interface 20275 */ 20276 #ifndef __IWizardExtension_INTERFACE_DEFINED__ 20277 #define __IWizardExtension_INTERFACE_DEFINED__ 20278 20279 DEFINE_GUID(IID_IWizardExtension, 0xc02ea696, 0x86cc, 0x491e, 0x9b,0x23, 0x74,0x39,0x4a,0x04,0x44,0xa8); 20280 #if defined(__cplusplus) && !defined(CINTERFACE) 20281 MIDL_INTERFACE("c02ea696-86cc-491e-9b23-74394a0444a8") 20282 IWizardExtension : public IUnknown 20283 { 20284 virtual HRESULT STDMETHODCALLTYPE AddPages( 20285 HPROPSHEETPAGE *aPages, 20286 UINT cPages, 20287 UINT *pnPagesAdded) = 0; 20288 20289 virtual HRESULT STDMETHODCALLTYPE GetFirstPage( 20290 HPROPSHEETPAGE *phpage) = 0; 20291 20292 virtual HRESULT STDMETHODCALLTYPE GetLastPage( 20293 HPROPSHEETPAGE *phpage) = 0; 20294 20295 }; 20296 #ifdef __CRT_UUID_DECL 20297 __CRT_UUID_DECL(IWizardExtension, 0xc02ea696, 0x86cc, 0x491e, 0x9b,0x23, 0x74,0x39,0x4a,0x04,0x44,0xa8) 20298 #endif 20299 #else 20300 typedef struct IWizardExtensionVtbl { 20301 BEGIN_INTERFACE 20302 20303 /*** IUnknown methods ***/ 20304 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 20305 IWizardExtension* This, 20306 REFIID riid, 20307 void **ppvObject); 20308 20309 ULONG (STDMETHODCALLTYPE *AddRef)( 20310 IWizardExtension* This); 20311 20312 ULONG (STDMETHODCALLTYPE *Release)( 20313 IWizardExtension* This); 20314 20315 /*** IWizardExtension methods ***/ 20316 HRESULT (STDMETHODCALLTYPE *AddPages)( 20317 IWizardExtension* This, 20318 HPROPSHEETPAGE *aPages, 20319 UINT cPages, 20320 UINT *pnPagesAdded); 20321 20322 HRESULT (STDMETHODCALLTYPE *GetFirstPage)( 20323 IWizardExtension* This, 20324 HPROPSHEETPAGE *phpage); 20325 20326 HRESULT (STDMETHODCALLTYPE *GetLastPage)( 20327 IWizardExtension* This, 20328 HPROPSHEETPAGE *phpage); 20329 20330 END_INTERFACE 20331 } IWizardExtensionVtbl; 20332 interface IWizardExtension { 20333 CONST_VTBL IWizardExtensionVtbl* lpVtbl; 20334 }; 20335 20336 #ifdef COBJMACROS 20337 #ifndef WIDL_C_INLINE_WRAPPERS 20338 /*** IUnknown methods ***/ 20339 #define IWizardExtension_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 20340 #define IWizardExtension_AddRef(This) (This)->lpVtbl->AddRef(This) 20341 #define IWizardExtension_Release(This) (This)->lpVtbl->Release(This) 20342 /*** IWizardExtension methods ***/ 20343 #define IWizardExtension_AddPages(This,aPages,cPages,pnPagesAdded) (This)->lpVtbl->AddPages(This,aPages,cPages,pnPagesAdded) 20344 #define IWizardExtension_GetFirstPage(This,phpage) (This)->lpVtbl->GetFirstPage(This,phpage) 20345 #define IWizardExtension_GetLastPage(This,phpage) (This)->lpVtbl->GetLastPage(This,phpage) 20346 #else 20347 /*** IUnknown methods ***/ 20348 static FORCEINLINE HRESULT IWizardExtension_QueryInterface(IWizardExtension* This,REFIID riid,void **ppvObject) { 20349 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 20350 } 20351 static FORCEINLINE ULONG IWizardExtension_AddRef(IWizardExtension* This) { 20352 return This->lpVtbl->AddRef(This); 20353 } 20354 static FORCEINLINE ULONG IWizardExtension_Release(IWizardExtension* This) { 20355 return This->lpVtbl->Release(This); 20356 } 20357 /*** IWizardExtension methods ***/ 20358 static FORCEINLINE HRESULT IWizardExtension_AddPages(IWizardExtension* This,HPROPSHEETPAGE *aPages,UINT cPages,UINT *pnPagesAdded) { 20359 return This->lpVtbl->AddPages(This,aPages,cPages,pnPagesAdded); 20360 } 20361 static FORCEINLINE HRESULT IWizardExtension_GetFirstPage(IWizardExtension* This,HPROPSHEETPAGE *phpage) { 20362 return This->lpVtbl->GetFirstPage(This,phpage); 20363 } 20364 static FORCEINLINE HRESULT IWizardExtension_GetLastPage(IWizardExtension* This,HPROPSHEETPAGE *phpage) { 20365 return This->lpVtbl->GetLastPage(This,phpage); 20366 } 20367 #endif 20368 #endif 20369 20370 #endif 20371 20372 HRESULT STDMETHODCALLTYPE IWizardExtension_AddPages_Proxy( 20373 IWizardExtension* This, 20374 HPROPSHEETPAGE *aPages, 20375 UINT cPages, 20376 UINT *pnPagesAdded); 20377 void __RPC_STUB IWizardExtension_AddPages_Stub( 20378 IRpcStubBuffer* This, 20379 IRpcChannelBuffer* pRpcChannelBuffer, 20380 PRPC_MESSAGE pRpcMessage, 20381 DWORD* pdwStubPhase); 20382 HRESULT STDMETHODCALLTYPE IWizardExtension_GetFirstPage_Proxy( 20383 IWizardExtension* This, 20384 HPROPSHEETPAGE *phpage); 20385 void __RPC_STUB IWizardExtension_GetFirstPage_Stub( 20386 IRpcStubBuffer* This, 20387 IRpcChannelBuffer* pRpcChannelBuffer, 20388 PRPC_MESSAGE pRpcMessage, 20389 DWORD* pdwStubPhase); 20390 HRESULT STDMETHODCALLTYPE IWizardExtension_GetLastPage_Proxy( 20391 IWizardExtension* This, 20392 HPROPSHEETPAGE *phpage); 20393 void __RPC_STUB IWizardExtension_GetLastPage_Stub( 20394 IRpcStubBuffer* This, 20395 IRpcChannelBuffer* pRpcChannelBuffer, 20396 PRPC_MESSAGE pRpcMessage, 20397 DWORD* pdwStubPhase); 20398 20399 #endif /* __IWizardExtension_INTERFACE_DEFINED__ */ 20400 20401 20402 /***************************************************************************** 20403 * IWebWizardExtension interface 20404 */ 20405 #ifndef __IWebWizardExtension_INTERFACE_DEFINED__ 20406 #define __IWebWizardExtension_INTERFACE_DEFINED__ 20407 20408 DEFINE_GUID(IID_IWebWizardExtension, 0x0e6b3f66, 0x98d1, 0x48c0, 0xa2,0x22, 0xfb,0xde,0x74,0xe2,0xfb,0xc5); 20409 #if defined(__cplusplus) && !defined(CINTERFACE) 20410 MIDL_INTERFACE("0e6b3f66-98d1-48c0-a222-fbde74e2fbc5") 20411 IWebWizardExtension : public IWizardExtension 20412 { 20413 virtual HRESULT STDMETHODCALLTYPE SetInitialURL( 20414 LPCWSTR pszURL) = 0; 20415 20416 virtual HRESULT STDMETHODCALLTYPE SetErrorURL( 20417 LPCWSTR pszErrorURL) = 0; 20418 20419 }; 20420 #ifdef __CRT_UUID_DECL 20421 __CRT_UUID_DECL(IWebWizardExtension, 0x0e6b3f66, 0x98d1, 0x48c0, 0xa2,0x22, 0xfb,0xde,0x74,0xe2,0xfb,0xc5) 20422 #endif 20423 #else 20424 typedef struct IWebWizardExtensionVtbl { 20425 BEGIN_INTERFACE 20426 20427 /*** IUnknown methods ***/ 20428 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 20429 IWebWizardExtension* This, 20430 REFIID riid, 20431 void **ppvObject); 20432 20433 ULONG (STDMETHODCALLTYPE *AddRef)( 20434 IWebWizardExtension* This); 20435 20436 ULONG (STDMETHODCALLTYPE *Release)( 20437 IWebWizardExtension* This); 20438 20439 /*** IWizardExtension methods ***/ 20440 HRESULT (STDMETHODCALLTYPE *AddPages)( 20441 IWebWizardExtension* This, 20442 HPROPSHEETPAGE *aPages, 20443 UINT cPages, 20444 UINT *pnPagesAdded); 20445 20446 HRESULT (STDMETHODCALLTYPE *GetFirstPage)( 20447 IWebWizardExtension* This, 20448 HPROPSHEETPAGE *phpage); 20449 20450 HRESULT (STDMETHODCALLTYPE *GetLastPage)( 20451 IWebWizardExtension* This, 20452 HPROPSHEETPAGE *phpage); 20453 20454 /*** IWebWizardExtension methods ***/ 20455 HRESULT (STDMETHODCALLTYPE *SetInitialURL)( 20456 IWebWizardExtension* This, 20457 LPCWSTR pszURL); 20458 20459 HRESULT (STDMETHODCALLTYPE *SetErrorURL)( 20460 IWebWizardExtension* This, 20461 LPCWSTR pszErrorURL); 20462 20463 END_INTERFACE 20464 } IWebWizardExtensionVtbl; 20465 interface IWebWizardExtension { 20466 CONST_VTBL IWebWizardExtensionVtbl* lpVtbl; 20467 }; 20468 20469 #ifdef COBJMACROS 20470 #ifndef WIDL_C_INLINE_WRAPPERS 20471 /*** IUnknown methods ***/ 20472 #define IWebWizardExtension_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 20473 #define IWebWizardExtension_AddRef(This) (This)->lpVtbl->AddRef(This) 20474 #define IWebWizardExtension_Release(This) (This)->lpVtbl->Release(This) 20475 /*** IWizardExtension methods ***/ 20476 #define IWebWizardExtension_AddPages(This,aPages,cPages,pnPagesAdded) (This)->lpVtbl->AddPages(This,aPages,cPages,pnPagesAdded) 20477 #define IWebWizardExtension_GetFirstPage(This,phpage) (This)->lpVtbl->GetFirstPage(This,phpage) 20478 #define IWebWizardExtension_GetLastPage(This,phpage) (This)->lpVtbl->GetLastPage(This,phpage) 20479 /*** IWebWizardExtension methods ***/ 20480 #define IWebWizardExtension_SetInitialURL(This,pszURL) (This)->lpVtbl->SetInitialURL(This,pszURL) 20481 #define IWebWizardExtension_SetErrorURL(This,pszErrorURL) (This)->lpVtbl->SetErrorURL(This,pszErrorURL) 20482 #else 20483 /*** IUnknown methods ***/ 20484 static FORCEINLINE HRESULT IWebWizardExtension_QueryInterface(IWebWizardExtension* This,REFIID riid,void **ppvObject) { 20485 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 20486 } 20487 static FORCEINLINE ULONG IWebWizardExtension_AddRef(IWebWizardExtension* This) { 20488 return This->lpVtbl->AddRef(This); 20489 } 20490 static FORCEINLINE ULONG IWebWizardExtension_Release(IWebWizardExtension* This) { 20491 return This->lpVtbl->Release(This); 20492 } 20493 /*** IWizardExtension methods ***/ 20494 static FORCEINLINE HRESULT IWebWizardExtension_AddPages(IWebWizardExtension* This,HPROPSHEETPAGE *aPages,UINT cPages,UINT *pnPagesAdded) { 20495 return This->lpVtbl->AddPages(This,aPages,cPages,pnPagesAdded); 20496 } 20497 static FORCEINLINE HRESULT IWebWizardExtension_GetFirstPage(IWebWizardExtension* This,HPROPSHEETPAGE *phpage) { 20498 return This->lpVtbl->GetFirstPage(This,phpage); 20499 } 20500 static FORCEINLINE HRESULT IWebWizardExtension_GetLastPage(IWebWizardExtension* This,HPROPSHEETPAGE *phpage) { 20501 return This->lpVtbl->GetLastPage(This,phpage); 20502 } 20503 /*** IWebWizardExtension methods ***/ 20504 static FORCEINLINE HRESULT IWebWizardExtension_SetInitialURL(IWebWizardExtension* This,LPCWSTR pszURL) { 20505 return This->lpVtbl->SetInitialURL(This,pszURL); 20506 } 20507 static FORCEINLINE HRESULT IWebWizardExtension_SetErrorURL(IWebWizardExtension* This,LPCWSTR pszErrorURL) { 20508 return This->lpVtbl->SetErrorURL(This,pszErrorURL); 20509 } 20510 #endif 20511 #endif 20512 20513 #endif 20514 20515 HRESULT STDMETHODCALLTYPE IWebWizardExtension_SetInitialURL_Proxy( 20516 IWebWizardExtension* This, 20517 LPCWSTR pszURL); 20518 void __RPC_STUB IWebWizardExtension_SetInitialURL_Stub( 20519 IRpcStubBuffer* This, 20520 IRpcChannelBuffer* pRpcChannelBuffer, 20521 PRPC_MESSAGE pRpcMessage, 20522 DWORD* pdwStubPhase); 20523 HRESULT STDMETHODCALLTYPE IWebWizardExtension_SetErrorURL_Proxy( 20524 IWebWizardExtension* This, 20525 LPCWSTR pszErrorURL); 20526 void __RPC_STUB IWebWizardExtension_SetErrorURL_Stub( 20527 IRpcStubBuffer* This, 20528 IRpcChannelBuffer* pRpcChannelBuffer, 20529 PRPC_MESSAGE pRpcMessage, 20530 DWORD* pdwStubPhase); 20531 20532 #endif /* __IWebWizardExtension_INTERFACE_DEFINED__ */ 20533 20534 20535 #define SID_WebWizardHost IID_IWebWizardExtension 20536 20537 #define SHPWHF_NORECOMPRESS 0x00000001 20538 #define SHPWHF_NONETPLACECREATE 0x00000002 20539 #define SHPWHF_NOFILESELECTOR 0x00000004 20540 #define SHPWHF_USEMRU 0x00000008 20541 #if NTDDI_VERSION >= NTDDI_VISTA 20542 #define SHPWHF_ANYLOCATION 0x00000100 20543 #endif 20544 #define SHPWHF_VALIDATEVIAWEBFOLDERS 0x00010000 20545 20546 #ifndef __IXMLDOMDocument_FWD_DEFINED__ 20547 #define __IXMLDOMDocument_FWD_DEFINED__ 20548 typedef interface IXMLDOMDocument IXMLDOMDocument; 20549 #endif 20550 20551 20552 /***************************************************************************** 20553 * IPublishingWizard interface 20554 */ 20555 #ifndef __IPublishingWizard_INTERFACE_DEFINED__ 20556 #define __IPublishingWizard_INTERFACE_DEFINED__ 20557 20558 DEFINE_GUID(IID_IPublishingWizard, 0xaa9198bb, 0xccec, 0x472d, 0xbe,0xed, 0x19,0xa4,0xf6,0x73,0x3f,0x7a); 20559 #if defined(__cplusplus) && !defined(CINTERFACE) 20560 MIDL_INTERFACE("aa9198bb-ccec-472d-beed-19a4f6733f7a") 20561 IPublishingWizard : public IWizardExtension 20562 { 20563 virtual HRESULT STDMETHODCALLTYPE Initialize( 20564 IDataObject *pdo, 20565 DWORD dwOptions, 20566 LPCWSTR pszServiceScope) = 0; 20567 20568 virtual HRESULT STDMETHODCALLTYPE GetTransferManifest( 20569 HRESULT *phrFromTransfer, 20570 IXMLDOMDocument **pdocManifest) = 0; 20571 20572 }; 20573 #ifdef __CRT_UUID_DECL 20574 __CRT_UUID_DECL(IPublishingWizard, 0xaa9198bb, 0xccec, 0x472d, 0xbe,0xed, 0x19,0xa4,0xf6,0x73,0x3f,0x7a) 20575 #endif 20576 #else 20577 typedef struct IPublishingWizardVtbl { 20578 BEGIN_INTERFACE 20579 20580 /*** IUnknown methods ***/ 20581 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 20582 IPublishingWizard* This, 20583 REFIID riid, 20584 void **ppvObject); 20585 20586 ULONG (STDMETHODCALLTYPE *AddRef)( 20587 IPublishingWizard* This); 20588 20589 ULONG (STDMETHODCALLTYPE *Release)( 20590 IPublishingWizard* This); 20591 20592 /*** IWizardExtension methods ***/ 20593 HRESULT (STDMETHODCALLTYPE *AddPages)( 20594 IPublishingWizard* This, 20595 HPROPSHEETPAGE *aPages, 20596 UINT cPages, 20597 UINT *pnPagesAdded); 20598 20599 HRESULT (STDMETHODCALLTYPE *GetFirstPage)( 20600 IPublishingWizard* This, 20601 HPROPSHEETPAGE *phpage); 20602 20603 HRESULT (STDMETHODCALLTYPE *GetLastPage)( 20604 IPublishingWizard* This, 20605 HPROPSHEETPAGE *phpage); 20606 20607 /*** IPublishingWizard methods ***/ 20608 HRESULT (STDMETHODCALLTYPE *Initialize)( 20609 IPublishingWizard* This, 20610 IDataObject *pdo, 20611 DWORD dwOptions, 20612 LPCWSTR pszServiceScope); 20613 20614 HRESULT (STDMETHODCALLTYPE *GetTransferManifest)( 20615 IPublishingWizard* This, 20616 HRESULT *phrFromTransfer, 20617 IXMLDOMDocument **pdocManifest); 20618 20619 END_INTERFACE 20620 } IPublishingWizardVtbl; 20621 interface IPublishingWizard { 20622 CONST_VTBL IPublishingWizardVtbl* lpVtbl; 20623 }; 20624 20625 #ifdef COBJMACROS 20626 #ifndef WIDL_C_INLINE_WRAPPERS 20627 /*** IUnknown methods ***/ 20628 #define IPublishingWizard_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 20629 #define IPublishingWizard_AddRef(This) (This)->lpVtbl->AddRef(This) 20630 #define IPublishingWizard_Release(This) (This)->lpVtbl->Release(This) 20631 /*** IWizardExtension methods ***/ 20632 #define IPublishingWizard_AddPages(This,aPages,cPages,pnPagesAdded) (This)->lpVtbl->AddPages(This,aPages,cPages,pnPagesAdded) 20633 #define IPublishingWizard_GetFirstPage(This,phpage) (This)->lpVtbl->GetFirstPage(This,phpage) 20634 #define IPublishingWizard_GetLastPage(This,phpage) (This)->lpVtbl->GetLastPage(This,phpage) 20635 /*** IPublishingWizard methods ***/ 20636 #define IPublishingWizard_Initialize(This,pdo,dwOptions,pszServiceScope) (This)->lpVtbl->Initialize(This,pdo,dwOptions,pszServiceScope) 20637 #define IPublishingWizard_GetTransferManifest(This,phrFromTransfer,pdocManifest) (This)->lpVtbl->GetTransferManifest(This,phrFromTransfer,pdocManifest) 20638 #else 20639 /*** IUnknown methods ***/ 20640 static FORCEINLINE HRESULT IPublishingWizard_QueryInterface(IPublishingWizard* This,REFIID riid,void **ppvObject) { 20641 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 20642 } 20643 static FORCEINLINE ULONG IPublishingWizard_AddRef(IPublishingWizard* This) { 20644 return This->lpVtbl->AddRef(This); 20645 } 20646 static FORCEINLINE ULONG IPublishingWizard_Release(IPublishingWizard* This) { 20647 return This->lpVtbl->Release(This); 20648 } 20649 /*** IWizardExtension methods ***/ 20650 static FORCEINLINE HRESULT IPublishingWizard_AddPages(IPublishingWizard* This,HPROPSHEETPAGE *aPages,UINT cPages,UINT *pnPagesAdded) { 20651 return This->lpVtbl->AddPages(This,aPages,cPages,pnPagesAdded); 20652 } 20653 static FORCEINLINE HRESULT IPublishingWizard_GetFirstPage(IPublishingWizard* This,HPROPSHEETPAGE *phpage) { 20654 return This->lpVtbl->GetFirstPage(This,phpage); 20655 } 20656 static FORCEINLINE HRESULT IPublishingWizard_GetLastPage(IPublishingWizard* This,HPROPSHEETPAGE *phpage) { 20657 return This->lpVtbl->GetLastPage(This,phpage); 20658 } 20659 /*** IPublishingWizard methods ***/ 20660 static FORCEINLINE HRESULT IPublishingWizard_Initialize(IPublishingWizard* This,IDataObject *pdo,DWORD dwOptions,LPCWSTR pszServiceScope) { 20661 return This->lpVtbl->Initialize(This,pdo,dwOptions,pszServiceScope); 20662 } 20663 static FORCEINLINE HRESULT IPublishingWizard_GetTransferManifest(IPublishingWizard* This,HRESULT *phrFromTransfer,IXMLDOMDocument **pdocManifest) { 20664 return This->lpVtbl->GetTransferManifest(This,phrFromTransfer,pdocManifest); 20665 } 20666 #endif 20667 #endif 20668 20669 #endif 20670 20671 HRESULT STDMETHODCALLTYPE IPublishingWizard_Initialize_Proxy( 20672 IPublishingWizard* This, 20673 IDataObject *pdo, 20674 DWORD dwOptions, 20675 LPCWSTR pszServiceScope); 20676 void __RPC_STUB IPublishingWizard_Initialize_Stub( 20677 IRpcStubBuffer* This, 20678 IRpcChannelBuffer* pRpcChannelBuffer, 20679 PRPC_MESSAGE pRpcMessage, 20680 DWORD* pdwStubPhase); 20681 HRESULT STDMETHODCALLTYPE IPublishingWizard_GetTransferManifest_Proxy( 20682 IPublishingWizard* This, 20683 HRESULT *phrFromTransfer, 20684 IXMLDOMDocument **pdocManifest); 20685 void __RPC_STUB IPublishingWizard_GetTransferManifest_Stub( 20686 IRpcStubBuffer* This, 20687 IRpcChannelBuffer* pRpcChannelBuffer, 20688 PRPC_MESSAGE pRpcMessage, 20689 DWORD* pdwStubPhase); 20690 20691 #endif /* __IPublishingWizard_INTERFACE_DEFINED__ */ 20692 20693 20694 /***************************************************************************** 20695 * IFolderViewHost interface 20696 */ 20697 #ifndef __IFolderViewHost_INTERFACE_DEFINED__ 20698 #define __IFolderViewHost_INTERFACE_DEFINED__ 20699 20700 DEFINE_GUID(IID_IFolderViewHost, 0x1ea58f02, 0xd55a, 0x411d, 0xb0,0x9e, 0x9e,0x65,0xac,0x21,0x60,0x5b); 20701 #if defined(__cplusplus) && !defined(CINTERFACE) 20702 MIDL_INTERFACE("1ea58f02-d55a-411d-b09e-9e65ac21605b") 20703 IFolderViewHost : public IUnknown 20704 { 20705 virtual HRESULT STDMETHODCALLTYPE Initialize( 20706 HWND hwndParent, 20707 IDataObject *pdo, 20708 RECT *prc) = 0; 20709 20710 }; 20711 #ifdef __CRT_UUID_DECL 20712 __CRT_UUID_DECL(IFolderViewHost, 0x1ea58f02, 0xd55a, 0x411d, 0xb0,0x9e, 0x9e,0x65,0xac,0x21,0x60,0x5b) 20713 #endif 20714 #else 20715 typedef struct IFolderViewHostVtbl { 20716 BEGIN_INTERFACE 20717 20718 /*** IUnknown methods ***/ 20719 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 20720 IFolderViewHost* This, 20721 REFIID riid, 20722 void **ppvObject); 20723 20724 ULONG (STDMETHODCALLTYPE *AddRef)( 20725 IFolderViewHost* This); 20726 20727 ULONG (STDMETHODCALLTYPE *Release)( 20728 IFolderViewHost* This); 20729 20730 /*** IFolderViewHost methods ***/ 20731 HRESULT (STDMETHODCALLTYPE *Initialize)( 20732 IFolderViewHost* This, 20733 HWND hwndParent, 20734 IDataObject *pdo, 20735 RECT *prc); 20736 20737 END_INTERFACE 20738 } IFolderViewHostVtbl; 20739 interface IFolderViewHost { 20740 CONST_VTBL IFolderViewHostVtbl* lpVtbl; 20741 }; 20742 20743 #ifdef COBJMACROS 20744 #ifndef WIDL_C_INLINE_WRAPPERS 20745 /*** IUnknown methods ***/ 20746 #define IFolderViewHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 20747 #define IFolderViewHost_AddRef(This) (This)->lpVtbl->AddRef(This) 20748 #define IFolderViewHost_Release(This) (This)->lpVtbl->Release(This) 20749 /*** IFolderViewHost methods ***/ 20750 #define IFolderViewHost_Initialize(This,hwndParent,pdo,prc) (This)->lpVtbl->Initialize(This,hwndParent,pdo,prc) 20751 #else 20752 /*** IUnknown methods ***/ 20753 static FORCEINLINE HRESULT IFolderViewHost_QueryInterface(IFolderViewHost* This,REFIID riid,void **ppvObject) { 20754 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 20755 } 20756 static FORCEINLINE ULONG IFolderViewHost_AddRef(IFolderViewHost* This) { 20757 return This->lpVtbl->AddRef(This); 20758 } 20759 static FORCEINLINE ULONG IFolderViewHost_Release(IFolderViewHost* This) { 20760 return This->lpVtbl->Release(This); 20761 } 20762 /*** IFolderViewHost methods ***/ 20763 static FORCEINLINE HRESULT IFolderViewHost_Initialize(IFolderViewHost* This,HWND hwndParent,IDataObject *pdo,RECT *prc) { 20764 return This->lpVtbl->Initialize(This,hwndParent,pdo,prc); 20765 } 20766 #endif 20767 #endif 20768 20769 #endif 20770 20771 HRESULT STDMETHODCALLTYPE IFolderViewHost_Initialize_Proxy( 20772 IFolderViewHost* This, 20773 HWND hwndParent, 20774 IDataObject *pdo, 20775 RECT *prc); 20776 void __RPC_STUB IFolderViewHost_Initialize_Stub( 20777 IRpcStubBuffer* This, 20778 IRpcChannelBuffer* pRpcChannelBuffer, 20779 PRPC_MESSAGE pRpcMessage, 20780 DWORD* pdwStubPhase); 20781 20782 #endif /* __IFolderViewHost_INTERFACE_DEFINED__ */ 20783 20784 20785 #if _WIN32_IE >= _WIN32_IE_IE70 20786 /***************************************************************************** 20787 * IExplorerBrowserEvents interface 20788 */ 20789 #ifndef __IExplorerBrowserEvents_INTERFACE_DEFINED__ 20790 #define __IExplorerBrowserEvents_INTERFACE_DEFINED__ 20791 20792 DEFINE_GUID(IID_IExplorerBrowserEvents, 0x361bbdc7, 0xe6ee, 0x4e13, 0xbe,0x58, 0x58,0xe2,0x24,0x0c,0x81,0x0f); 20793 #if defined(__cplusplus) && !defined(CINTERFACE) 20794 MIDL_INTERFACE("361bbdc7-e6ee-4e13-be58-58e2240c810f") 20795 IExplorerBrowserEvents : public IUnknown 20796 { 20797 virtual HRESULT STDMETHODCALLTYPE OnNavigationPending( 20798 PCIDLIST_ABSOLUTE pidlFolder) = 0; 20799 20800 virtual HRESULT STDMETHODCALLTYPE OnViewCreated( 20801 IShellView *psv) = 0; 20802 20803 virtual HRESULT STDMETHODCALLTYPE OnNavigationComplete( 20804 PCIDLIST_ABSOLUTE pidlFolder) = 0; 20805 20806 virtual HRESULT STDMETHODCALLTYPE OnNavigationFailed( 20807 PCIDLIST_ABSOLUTE pidlFolder) = 0; 20808 20809 }; 20810 #ifdef __CRT_UUID_DECL 20811 __CRT_UUID_DECL(IExplorerBrowserEvents, 0x361bbdc7, 0xe6ee, 0x4e13, 0xbe,0x58, 0x58,0xe2,0x24,0x0c,0x81,0x0f) 20812 #endif 20813 #else 20814 typedef struct IExplorerBrowserEventsVtbl { 20815 BEGIN_INTERFACE 20816 20817 /*** IUnknown methods ***/ 20818 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 20819 IExplorerBrowserEvents* This, 20820 REFIID riid, 20821 void **ppvObject); 20822 20823 ULONG (STDMETHODCALLTYPE *AddRef)( 20824 IExplorerBrowserEvents* This); 20825 20826 ULONG (STDMETHODCALLTYPE *Release)( 20827 IExplorerBrowserEvents* This); 20828 20829 /*** IExplorerBrowserEvents methods ***/ 20830 HRESULT (STDMETHODCALLTYPE *OnNavigationPending)( 20831 IExplorerBrowserEvents* This, 20832 PCIDLIST_ABSOLUTE pidlFolder); 20833 20834 HRESULT (STDMETHODCALLTYPE *OnViewCreated)( 20835 IExplorerBrowserEvents* This, 20836 IShellView *psv); 20837 20838 HRESULT (STDMETHODCALLTYPE *OnNavigationComplete)( 20839 IExplorerBrowserEvents* This, 20840 PCIDLIST_ABSOLUTE pidlFolder); 20841 20842 HRESULT (STDMETHODCALLTYPE *OnNavigationFailed)( 20843 IExplorerBrowserEvents* This, 20844 PCIDLIST_ABSOLUTE pidlFolder); 20845 20846 END_INTERFACE 20847 } IExplorerBrowserEventsVtbl; 20848 interface IExplorerBrowserEvents { 20849 CONST_VTBL IExplorerBrowserEventsVtbl* lpVtbl; 20850 }; 20851 20852 #ifdef COBJMACROS 20853 #ifndef WIDL_C_INLINE_WRAPPERS 20854 /*** IUnknown methods ***/ 20855 #define IExplorerBrowserEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 20856 #define IExplorerBrowserEvents_AddRef(This) (This)->lpVtbl->AddRef(This) 20857 #define IExplorerBrowserEvents_Release(This) (This)->lpVtbl->Release(This) 20858 /*** IExplorerBrowserEvents methods ***/ 20859 #define IExplorerBrowserEvents_OnNavigationPending(This,pidlFolder) (This)->lpVtbl->OnNavigationPending(This,pidlFolder) 20860 #define IExplorerBrowserEvents_OnViewCreated(This,psv) (This)->lpVtbl->OnViewCreated(This,psv) 20861 #define IExplorerBrowserEvents_OnNavigationComplete(This,pidlFolder) (This)->lpVtbl->OnNavigationComplete(This,pidlFolder) 20862 #define IExplorerBrowserEvents_OnNavigationFailed(This,pidlFolder) (This)->lpVtbl->OnNavigationFailed(This,pidlFolder) 20863 #else 20864 /*** IUnknown methods ***/ 20865 static FORCEINLINE HRESULT IExplorerBrowserEvents_QueryInterface(IExplorerBrowserEvents* This,REFIID riid,void **ppvObject) { 20866 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 20867 } 20868 static FORCEINLINE ULONG IExplorerBrowserEvents_AddRef(IExplorerBrowserEvents* This) { 20869 return This->lpVtbl->AddRef(This); 20870 } 20871 static FORCEINLINE ULONG IExplorerBrowserEvents_Release(IExplorerBrowserEvents* This) { 20872 return This->lpVtbl->Release(This); 20873 } 20874 /*** IExplorerBrowserEvents methods ***/ 20875 static FORCEINLINE HRESULT IExplorerBrowserEvents_OnNavigationPending(IExplorerBrowserEvents* This,PCIDLIST_ABSOLUTE pidlFolder) { 20876 return This->lpVtbl->OnNavigationPending(This,pidlFolder); 20877 } 20878 static FORCEINLINE HRESULT IExplorerBrowserEvents_OnViewCreated(IExplorerBrowserEvents* This,IShellView *psv) { 20879 return This->lpVtbl->OnViewCreated(This,psv); 20880 } 20881 static FORCEINLINE HRESULT IExplorerBrowserEvents_OnNavigationComplete(IExplorerBrowserEvents* This,PCIDLIST_ABSOLUTE pidlFolder) { 20882 return This->lpVtbl->OnNavigationComplete(This,pidlFolder); 20883 } 20884 static FORCEINLINE HRESULT IExplorerBrowserEvents_OnNavigationFailed(IExplorerBrowserEvents* This,PCIDLIST_ABSOLUTE pidlFolder) { 20885 return This->lpVtbl->OnNavigationFailed(This,pidlFolder); 20886 } 20887 #endif 20888 #endif 20889 20890 #endif 20891 20892 HRESULT STDMETHODCALLTYPE IExplorerBrowserEvents_OnNavigationPending_Proxy( 20893 IExplorerBrowserEvents* This, 20894 PCIDLIST_ABSOLUTE pidlFolder); 20895 void __RPC_STUB IExplorerBrowserEvents_OnNavigationPending_Stub( 20896 IRpcStubBuffer* This, 20897 IRpcChannelBuffer* pRpcChannelBuffer, 20898 PRPC_MESSAGE pRpcMessage, 20899 DWORD* pdwStubPhase); 20900 HRESULT STDMETHODCALLTYPE IExplorerBrowserEvents_OnViewCreated_Proxy( 20901 IExplorerBrowserEvents* This, 20902 IShellView *psv); 20903 void __RPC_STUB IExplorerBrowserEvents_OnViewCreated_Stub( 20904 IRpcStubBuffer* This, 20905 IRpcChannelBuffer* pRpcChannelBuffer, 20906 PRPC_MESSAGE pRpcMessage, 20907 DWORD* pdwStubPhase); 20908 HRESULT STDMETHODCALLTYPE IExplorerBrowserEvents_OnNavigationComplete_Proxy( 20909 IExplorerBrowserEvents* This, 20910 PCIDLIST_ABSOLUTE pidlFolder); 20911 void __RPC_STUB IExplorerBrowserEvents_OnNavigationComplete_Stub( 20912 IRpcStubBuffer* This, 20913 IRpcChannelBuffer* pRpcChannelBuffer, 20914 PRPC_MESSAGE pRpcMessage, 20915 DWORD* pdwStubPhase); 20916 HRESULT STDMETHODCALLTYPE IExplorerBrowserEvents_OnNavigationFailed_Proxy( 20917 IExplorerBrowserEvents* This, 20918 PCIDLIST_ABSOLUTE pidlFolder); 20919 void __RPC_STUB IExplorerBrowserEvents_OnNavigationFailed_Stub( 20920 IRpcStubBuffer* This, 20921 IRpcChannelBuffer* pRpcChannelBuffer, 20922 PRPC_MESSAGE pRpcMessage, 20923 DWORD* pdwStubPhase); 20924 20925 #endif /* __IExplorerBrowserEvents_INTERFACE_DEFINED__ */ 20926 20927 20928 typedef enum EXPLORER_BROWSER_OPTIONS { 20929 EBO_NONE = 0x0, 20930 EBO_NAVIGATEONCE = 0x1, 20931 EBO_SHOWFRAMES = 0x2, 20932 EBO_ALWAYSNAVIGATE = 0x4, 20933 EBO_NOTRAVELLOG = 0x8, 20934 EBO_NOWRAPPERWINDOW = 0x10, 20935 EBO_HTMLSHAREPOINTVIEW = 0x20, 20936 EBO_NOBORDER = 0x40, 20937 EBO_NOPERSISTVIEWSTATE = 0x80 20938 } EXPLORER_BROWSER_OPTIONS; 20939 20940 DEFINE_ENUM_FLAG_OPERATORS(EXPLORER_BROWSER_OPTIONS) 20941 20942 typedef enum EXPLORER_BROWSER_FILL_FLAGS { 20943 EBF_NONE = 0x0, 20944 EBF_SELECTFROMDATAOBJECT = 0x100, 20945 EBF_NODROPTARGET = 0x200 20946 } EXPLORER_BROWSER_FILL_FLAGS; 20947 20948 DEFINE_ENUM_FLAG_OPERATORS(EXPLORER_BROWSER_FILL_FLAGS) 20949 20950 /***************************************************************************** 20951 * IExplorerBrowser interface 20952 */ 20953 #ifndef __IExplorerBrowser_INTERFACE_DEFINED__ 20954 #define __IExplorerBrowser_INTERFACE_DEFINED__ 20955 20956 DEFINE_GUID(IID_IExplorerBrowser, 0xdfd3b6b5, 0xc10c, 0x4be9, 0x85,0xf6, 0xa6,0x69,0x69,0xf4,0x02,0xf6); 20957 #if defined(__cplusplus) && !defined(CINTERFACE) 20958 MIDL_INTERFACE("dfd3b6b5-c10c-4be9-85f6-a66969f402f6") 20959 IExplorerBrowser : public IUnknown 20960 { 20961 virtual HRESULT STDMETHODCALLTYPE Initialize( 20962 HWND hwndParent, 20963 const RECT *prc, 20964 const FOLDERSETTINGS *pfs) = 0; 20965 20966 virtual HRESULT STDMETHODCALLTYPE Destroy( 20967 ) = 0; 20968 20969 virtual HRESULT STDMETHODCALLTYPE SetRect( 20970 HDWP *phdwp, 20971 RECT rcBrowser) = 0; 20972 20973 virtual HRESULT STDMETHODCALLTYPE SetPropertyBag( 20974 LPCWSTR pszPropertyBag) = 0; 20975 20976 virtual HRESULT STDMETHODCALLTYPE SetEmptyText( 20977 LPCWSTR pszEmptyText) = 0; 20978 20979 virtual HRESULT STDMETHODCALLTYPE SetFolderSettings( 20980 const FOLDERSETTINGS *pfs) = 0; 20981 20982 virtual HRESULT STDMETHODCALLTYPE Advise( 20983 IExplorerBrowserEvents *psbe, 20984 DWORD *pdwCookie) = 0; 20985 20986 virtual HRESULT STDMETHODCALLTYPE Unadvise( 20987 DWORD dwCookie) = 0; 20988 20989 virtual HRESULT STDMETHODCALLTYPE SetOptions( 20990 EXPLORER_BROWSER_OPTIONS dwFlag) = 0; 20991 20992 virtual HRESULT STDMETHODCALLTYPE GetOptions( 20993 EXPLORER_BROWSER_OPTIONS *pdwFlag) = 0; 20994 20995 virtual HRESULT STDMETHODCALLTYPE BrowseToIDList( 20996 PCUIDLIST_RELATIVE pidl, 20997 UINT uFlags) = 0; 20998 20999 virtual HRESULT STDMETHODCALLTYPE BrowseToObject( 21000 IUnknown *punk, 21001 UINT uFlags) = 0; 21002 21003 virtual HRESULT STDMETHODCALLTYPE FillFromObject( 21004 IUnknown *punk, 21005 EXPLORER_BROWSER_FILL_FLAGS dwFlags) = 0; 21006 21007 virtual HRESULT STDMETHODCALLTYPE RemoveAll( 21008 ) = 0; 21009 21010 virtual HRESULT STDMETHODCALLTYPE GetCurrentView( 21011 REFIID riid, 21012 void **ppv) = 0; 21013 21014 }; 21015 #ifdef __CRT_UUID_DECL 21016 __CRT_UUID_DECL(IExplorerBrowser, 0xdfd3b6b5, 0xc10c, 0x4be9, 0x85,0xf6, 0xa6,0x69,0x69,0xf4,0x02,0xf6) 21017 #endif 21018 #else 21019 typedef struct IExplorerBrowserVtbl { 21020 BEGIN_INTERFACE 21021 21022 /*** IUnknown methods ***/ 21023 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 21024 IExplorerBrowser* This, 21025 REFIID riid, 21026 void **ppvObject); 21027 21028 ULONG (STDMETHODCALLTYPE *AddRef)( 21029 IExplorerBrowser* This); 21030 21031 ULONG (STDMETHODCALLTYPE *Release)( 21032 IExplorerBrowser* This); 21033 21034 /*** IExplorerBrowser methods ***/ 21035 HRESULT (STDMETHODCALLTYPE *Initialize)( 21036 IExplorerBrowser* This, 21037 HWND hwndParent, 21038 const RECT *prc, 21039 const FOLDERSETTINGS *pfs); 21040 21041 HRESULT (STDMETHODCALLTYPE *Destroy)( 21042 IExplorerBrowser* This); 21043 21044 HRESULT (STDMETHODCALLTYPE *SetRect)( 21045 IExplorerBrowser* This, 21046 HDWP *phdwp, 21047 RECT rcBrowser); 21048 21049 HRESULT (STDMETHODCALLTYPE *SetPropertyBag)( 21050 IExplorerBrowser* This, 21051 LPCWSTR pszPropertyBag); 21052 21053 HRESULT (STDMETHODCALLTYPE *SetEmptyText)( 21054 IExplorerBrowser* This, 21055 LPCWSTR pszEmptyText); 21056 21057 HRESULT (STDMETHODCALLTYPE *SetFolderSettings)( 21058 IExplorerBrowser* This, 21059 const FOLDERSETTINGS *pfs); 21060 21061 HRESULT (STDMETHODCALLTYPE *Advise)( 21062 IExplorerBrowser* This, 21063 IExplorerBrowserEvents *psbe, 21064 DWORD *pdwCookie); 21065 21066 HRESULT (STDMETHODCALLTYPE *Unadvise)( 21067 IExplorerBrowser* This, 21068 DWORD dwCookie); 21069 21070 HRESULT (STDMETHODCALLTYPE *SetOptions)( 21071 IExplorerBrowser* This, 21072 EXPLORER_BROWSER_OPTIONS dwFlag); 21073 21074 HRESULT (STDMETHODCALLTYPE *GetOptions)( 21075 IExplorerBrowser* This, 21076 EXPLORER_BROWSER_OPTIONS *pdwFlag); 21077 21078 HRESULT (STDMETHODCALLTYPE *BrowseToIDList)( 21079 IExplorerBrowser* This, 21080 PCUIDLIST_RELATIVE pidl, 21081 UINT uFlags); 21082 21083 HRESULT (STDMETHODCALLTYPE *BrowseToObject)( 21084 IExplorerBrowser* This, 21085 IUnknown *punk, 21086 UINT uFlags); 21087 21088 HRESULT (STDMETHODCALLTYPE *FillFromObject)( 21089 IExplorerBrowser* This, 21090 IUnknown *punk, 21091 EXPLORER_BROWSER_FILL_FLAGS dwFlags); 21092 21093 HRESULT (STDMETHODCALLTYPE *RemoveAll)( 21094 IExplorerBrowser* This); 21095 21096 HRESULT (STDMETHODCALLTYPE *GetCurrentView)( 21097 IExplorerBrowser* This, 21098 REFIID riid, 21099 void **ppv); 21100 21101 END_INTERFACE 21102 } IExplorerBrowserVtbl; 21103 interface IExplorerBrowser { 21104 CONST_VTBL IExplorerBrowserVtbl* lpVtbl; 21105 }; 21106 21107 #ifdef COBJMACROS 21108 #ifndef WIDL_C_INLINE_WRAPPERS 21109 /*** IUnknown methods ***/ 21110 #define IExplorerBrowser_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 21111 #define IExplorerBrowser_AddRef(This) (This)->lpVtbl->AddRef(This) 21112 #define IExplorerBrowser_Release(This) (This)->lpVtbl->Release(This) 21113 /*** IExplorerBrowser methods ***/ 21114 #define IExplorerBrowser_Initialize(This,hwndParent,prc,pfs) (This)->lpVtbl->Initialize(This,hwndParent,prc,pfs) 21115 #define IExplorerBrowser_Destroy(This) (This)->lpVtbl->Destroy(This) 21116 #define IExplorerBrowser_SetRect(This,phdwp,rcBrowser) (This)->lpVtbl->SetRect(This,phdwp,rcBrowser) 21117 #define IExplorerBrowser_SetPropertyBag(This,pszPropertyBag) (This)->lpVtbl->SetPropertyBag(This,pszPropertyBag) 21118 #define IExplorerBrowser_SetEmptyText(This,pszEmptyText) (This)->lpVtbl->SetEmptyText(This,pszEmptyText) 21119 #define IExplorerBrowser_SetFolderSettings(This,pfs) (This)->lpVtbl->SetFolderSettings(This,pfs) 21120 #define IExplorerBrowser_Advise(This,psbe,pdwCookie) (This)->lpVtbl->Advise(This,psbe,pdwCookie) 21121 #define IExplorerBrowser_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) 21122 #define IExplorerBrowser_SetOptions(This,dwFlag) (This)->lpVtbl->SetOptions(This,dwFlag) 21123 #define IExplorerBrowser_GetOptions(This,pdwFlag) (This)->lpVtbl->GetOptions(This,pdwFlag) 21124 #define IExplorerBrowser_BrowseToIDList(This,pidl,uFlags) (This)->lpVtbl->BrowseToIDList(This,pidl,uFlags) 21125 #define IExplorerBrowser_BrowseToObject(This,punk,uFlags) (This)->lpVtbl->BrowseToObject(This,punk,uFlags) 21126 #define IExplorerBrowser_FillFromObject(This,punk,dwFlags) (This)->lpVtbl->FillFromObject(This,punk,dwFlags) 21127 #define IExplorerBrowser_RemoveAll(This) (This)->lpVtbl->RemoveAll(This) 21128 #define IExplorerBrowser_GetCurrentView(This,riid,ppv) (This)->lpVtbl->GetCurrentView(This,riid,ppv) 21129 #else 21130 /*** IUnknown methods ***/ 21131 static FORCEINLINE HRESULT IExplorerBrowser_QueryInterface(IExplorerBrowser* This,REFIID riid,void **ppvObject) { 21132 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 21133 } 21134 static FORCEINLINE ULONG IExplorerBrowser_AddRef(IExplorerBrowser* This) { 21135 return This->lpVtbl->AddRef(This); 21136 } 21137 static FORCEINLINE ULONG IExplorerBrowser_Release(IExplorerBrowser* This) { 21138 return This->lpVtbl->Release(This); 21139 } 21140 /*** IExplorerBrowser methods ***/ 21141 static FORCEINLINE HRESULT IExplorerBrowser_Initialize(IExplorerBrowser* This,HWND hwndParent,const RECT *prc,const FOLDERSETTINGS *pfs) { 21142 return This->lpVtbl->Initialize(This,hwndParent,prc,pfs); 21143 } 21144 static FORCEINLINE HRESULT IExplorerBrowser_Destroy(IExplorerBrowser* This) { 21145 return This->lpVtbl->Destroy(This); 21146 } 21147 static FORCEINLINE HRESULT IExplorerBrowser_SetRect(IExplorerBrowser* This,HDWP *phdwp,RECT rcBrowser) { 21148 return This->lpVtbl->SetRect(This,phdwp,rcBrowser); 21149 } 21150 static FORCEINLINE HRESULT IExplorerBrowser_SetPropertyBag(IExplorerBrowser* This,LPCWSTR pszPropertyBag) { 21151 return This->lpVtbl->SetPropertyBag(This,pszPropertyBag); 21152 } 21153 static FORCEINLINE HRESULT IExplorerBrowser_SetEmptyText(IExplorerBrowser* This,LPCWSTR pszEmptyText) { 21154 return This->lpVtbl->SetEmptyText(This,pszEmptyText); 21155 } 21156 static FORCEINLINE HRESULT IExplorerBrowser_SetFolderSettings(IExplorerBrowser* This,const FOLDERSETTINGS *pfs) { 21157 return This->lpVtbl->SetFolderSettings(This,pfs); 21158 } 21159 static FORCEINLINE HRESULT IExplorerBrowser_Advise(IExplorerBrowser* This,IExplorerBrowserEvents *psbe,DWORD *pdwCookie) { 21160 return This->lpVtbl->Advise(This,psbe,pdwCookie); 21161 } 21162 static FORCEINLINE HRESULT IExplorerBrowser_Unadvise(IExplorerBrowser* This,DWORD dwCookie) { 21163 return This->lpVtbl->Unadvise(This,dwCookie); 21164 } 21165 static FORCEINLINE HRESULT IExplorerBrowser_SetOptions(IExplorerBrowser* This,EXPLORER_BROWSER_OPTIONS dwFlag) { 21166 return This->lpVtbl->SetOptions(This,dwFlag); 21167 } 21168 static FORCEINLINE HRESULT IExplorerBrowser_GetOptions(IExplorerBrowser* This,EXPLORER_BROWSER_OPTIONS *pdwFlag) { 21169 return This->lpVtbl->GetOptions(This,pdwFlag); 21170 } 21171 static FORCEINLINE HRESULT IExplorerBrowser_BrowseToIDList(IExplorerBrowser* This,PCUIDLIST_RELATIVE pidl,UINT uFlags) { 21172 return This->lpVtbl->BrowseToIDList(This,pidl,uFlags); 21173 } 21174 static FORCEINLINE HRESULT IExplorerBrowser_BrowseToObject(IExplorerBrowser* This,IUnknown *punk,UINT uFlags) { 21175 return This->lpVtbl->BrowseToObject(This,punk,uFlags); 21176 } 21177 static FORCEINLINE HRESULT IExplorerBrowser_FillFromObject(IExplorerBrowser* This,IUnknown *punk,EXPLORER_BROWSER_FILL_FLAGS dwFlags) { 21178 return This->lpVtbl->FillFromObject(This,punk,dwFlags); 21179 } 21180 static FORCEINLINE HRESULT IExplorerBrowser_RemoveAll(IExplorerBrowser* This) { 21181 return This->lpVtbl->RemoveAll(This); 21182 } 21183 static FORCEINLINE HRESULT IExplorerBrowser_GetCurrentView(IExplorerBrowser* This,REFIID riid,void **ppv) { 21184 return This->lpVtbl->GetCurrentView(This,riid,ppv); 21185 } 21186 #endif 21187 #endif 21188 21189 #endif 21190 21191 HRESULT STDMETHODCALLTYPE IExplorerBrowser_Destroy_Proxy( 21192 IExplorerBrowser* This); 21193 void __RPC_STUB IExplorerBrowser_Destroy_Stub( 21194 IRpcStubBuffer* This, 21195 IRpcChannelBuffer* pRpcChannelBuffer, 21196 PRPC_MESSAGE pRpcMessage, 21197 DWORD* pdwStubPhase); 21198 HRESULT STDMETHODCALLTYPE IExplorerBrowser_SetPropertyBag_Proxy( 21199 IExplorerBrowser* This, 21200 LPCWSTR pszPropertyBag); 21201 void __RPC_STUB IExplorerBrowser_SetPropertyBag_Stub( 21202 IRpcStubBuffer* This, 21203 IRpcChannelBuffer* pRpcChannelBuffer, 21204 PRPC_MESSAGE pRpcMessage, 21205 DWORD* pdwStubPhase); 21206 HRESULT STDMETHODCALLTYPE IExplorerBrowser_SetEmptyText_Proxy( 21207 IExplorerBrowser* This, 21208 LPCWSTR pszEmptyText); 21209 void __RPC_STUB IExplorerBrowser_SetEmptyText_Stub( 21210 IRpcStubBuffer* This, 21211 IRpcChannelBuffer* pRpcChannelBuffer, 21212 PRPC_MESSAGE pRpcMessage, 21213 DWORD* pdwStubPhase); 21214 HRESULT STDMETHODCALLTYPE IExplorerBrowser_SetFolderSettings_Proxy( 21215 IExplorerBrowser* This, 21216 const FOLDERSETTINGS *pfs); 21217 void __RPC_STUB IExplorerBrowser_SetFolderSettings_Stub( 21218 IRpcStubBuffer* This, 21219 IRpcChannelBuffer* pRpcChannelBuffer, 21220 PRPC_MESSAGE pRpcMessage, 21221 DWORD* pdwStubPhase); 21222 HRESULT STDMETHODCALLTYPE IExplorerBrowser_Advise_Proxy( 21223 IExplorerBrowser* This, 21224 IExplorerBrowserEvents *psbe, 21225 DWORD *pdwCookie); 21226 void __RPC_STUB IExplorerBrowser_Advise_Stub( 21227 IRpcStubBuffer* This, 21228 IRpcChannelBuffer* pRpcChannelBuffer, 21229 PRPC_MESSAGE pRpcMessage, 21230 DWORD* pdwStubPhase); 21231 HRESULT STDMETHODCALLTYPE IExplorerBrowser_Unadvise_Proxy( 21232 IExplorerBrowser* This, 21233 DWORD dwCookie); 21234 void __RPC_STUB IExplorerBrowser_Unadvise_Stub( 21235 IRpcStubBuffer* This, 21236 IRpcChannelBuffer* pRpcChannelBuffer, 21237 PRPC_MESSAGE pRpcMessage, 21238 DWORD* pdwStubPhase); 21239 HRESULT STDMETHODCALLTYPE IExplorerBrowser_SetOptions_Proxy( 21240 IExplorerBrowser* This, 21241 EXPLORER_BROWSER_OPTIONS dwFlag); 21242 void __RPC_STUB IExplorerBrowser_SetOptions_Stub( 21243 IRpcStubBuffer* This, 21244 IRpcChannelBuffer* pRpcChannelBuffer, 21245 PRPC_MESSAGE pRpcMessage, 21246 DWORD* pdwStubPhase); 21247 HRESULT STDMETHODCALLTYPE IExplorerBrowser_GetOptions_Proxy( 21248 IExplorerBrowser* This, 21249 EXPLORER_BROWSER_OPTIONS *pdwFlag); 21250 void __RPC_STUB IExplorerBrowser_GetOptions_Stub( 21251 IRpcStubBuffer* This, 21252 IRpcChannelBuffer* pRpcChannelBuffer, 21253 PRPC_MESSAGE pRpcMessage, 21254 DWORD* pdwStubPhase); 21255 HRESULT STDMETHODCALLTYPE IExplorerBrowser_BrowseToIDList_Proxy( 21256 IExplorerBrowser* This, 21257 PCUIDLIST_RELATIVE pidl, 21258 UINT uFlags); 21259 void __RPC_STUB IExplorerBrowser_BrowseToIDList_Stub( 21260 IRpcStubBuffer* This, 21261 IRpcChannelBuffer* pRpcChannelBuffer, 21262 PRPC_MESSAGE pRpcMessage, 21263 DWORD* pdwStubPhase); 21264 HRESULT STDMETHODCALLTYPE IExplorerBrowser_BrowseToObject_Proxy( 21265 IExplorerBrowser* This, 21266 IUnknown *punk, 21267 UINT uFlags); 21268 void __RPC_STUB IExplorerBrowser_BrowseToObject_Stub( 21269 IRpcStubBuffer* This, 21270 IRpcChannelBuffer* pRpcChannelBuffer, 21271 PRPC_MESSAGE pRpcMessage, 21272 DWORD* pdwStubPhase); 21273 HRESULT STDMETHODCALLTYPE IExplorerBrowser_FillFromObject_Proxy( 21274 IExplorerBrowser* This, 21275 IUnknown *punk, 21276 EXPLORER_BROWSER_FILL_FLAGS dwFlags); 21277 void __RPC_STUB IExplorerBrowser_FillFromObject_Stub( 21278 IRpcStubBuffer* This, 21279 IRpcChannelBuffer* pRpcChannelBuffer, 21280 PRPC_MESSAGE pRpcMessage, 21281 DWORD* pdwStubPhase); 21282 HRESULT STDMETHODCALLTYPE IExplorerBrowser_RemoveAll_Proxy( 21283 IExplorerBrowser* This); 21284 void __RPC_STUB IExplorerBrowser_RemoveAll_Stub( 21285 IRpcStubBuffer* This, 21286 IRpcChannelBuffer* pRpcChannelBuffer, 21287 PRPC_MESSAGE pRpcMessage, 21288 DWORD* pdwStubPhase); 21289 HRESULT STDMETHODCALLTYPE IExplorerBrowser_GetCurrentView_Proxy( 21290 IExplorerBrowser* This, 21291 REFIID riid, 21292 void **ppv); 21293 void __RPC_STUB IExplorerBrowser_GetCurrentView_Stub( 21294 IRpcStubBuffer* This, 21295 IRpcChannelBuffer* pRpcChannelBuffer, 21296 PRPC_MESSAGE pRpcMessage, 21297 DWORD* pdwStubPhase); 21298 21299 #endif /* __IExplorerBrowser_INTERFACE_DEFINED__ */ 21300 21301 21302 /***************************************************************************** 21303 * IAccessibleObject interface 21304 */ 21305 #ifndef __IAccessibleObject_INTERFACE_DEFINED__ 21306 #define __IAccessibleObject_INTERFACE_DEFINED__ 21307 21308 DEFINE_GUID(IID_IAccessibleObject, 0x95a391c5, 0x9ed4, 0x4c28, 0x84,0x01, 0xab,0x9e,0x06,0x71,0x9e,0x11); 21309 #if defined(__cplusplus) && !defined(CINTERFACE) 21310 MIDL_INTERFACE("95a391c5-9ed4-4c28-8401-ab9e06719e11") 21311 IAccessibleObject : public IUnknown 21312 { 21313 virtual HRESULT STDMETHODCALLTYPE SetAccessibleName( 21314 LPCWSTR pszName) = 0; 21315 21316 }; 21317 #ifdef __CRT_UUID_DECL 21318 __CRT_UUID_DECL(IAccessibleObject, 0x95a391c5, 0x9ed4, 0x4c28, 0x84,0x01, 0xab,0x9e,0x06,0x71,0x9e,0x11) 21319 #endif 21320 #else 21321 typedef struct IAccessibleObjectVtbl { 21322 BEGIN_INTERFACE 21323 21324 /*** IUnknown methods ***/ 21325 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 21326 IAccessibleObject* This, 21327 REFIID riid, 21328 void **ppvObject); 21329 21330 ULONG (STDMETHODCALLTYPE *AddRef)( 21331 IAccessibleObject* This); 21332 21333 ULONG (STDMETHODCALLTYPE *Release)( 21334 IAccessibleObject* This); 21335 21336 /*** IAccessibleObject methods ***/ 21337 HRESULT (STDMETHODCALLTYPE *SetAccessibleName)( 21338 IAccessibleObject* This, 21339 LPCWSTR pszName); 21340 21341 END_INTERFACE 21342 } IAccessibleObjectVtbl; 21343 interface IAccessibleObject { 21344 CONST_VTBL IAccessibleObjectVtbl* lpVtbl; 21345 }; 21346 21347 #ifdef COBJMACROS 21348 #ifndef WIDL_C_INLINE_WRAPPERS 21349 /*** IUnknown methods ***/ 21350 #define IAccessibleObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 21351 #define IAccessibleObject_AddRef(This) (This)->lpVtbl->AddRef(This) 21352 #define IAccessibleObject_Release(This) (This)->lpVtbl->Release(This) 21353 /*** IAccessibleObject methods ***/ 21354 #define IAccessibleObject_SetAccessibleName(This,pszName) (This)->lpVtbl->SetAccessibleName(This,pszName) 21355 #else 21356 /*** IUnknown methods ***/ 21357 static FORCEINLINE HRESULT IAccessibleObject_QueryInterface(IAccessibleObject* This,REFIID riid,void **ppvObject) { 21358 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 21359 } 21360 static FORCEINLINE ULONG IAccessibleObject_AddRef(IAccessibleObject* This) { 21361 return This->lpVtbl->AddRef(This); 21362 } 21363 static FORCEINLINE ULONG IAccessibleObject_Release(IAccessibleObject* This) { 21364 return This->lpVtbl->Release(This); 21365 } 21366 /*** IAccessibleObject methods ***/ 21367 static FORCEINLINE HRESULT IAccessibleObject_SetAccessibleName(IAccessibleObject* This,LPCWSTR pszName) { 21368 return This->lpVtbl->SetAccessibleName(This,pszName); 21369 } 21370 #endif 21371 #endif 21372 21373 #endif 21374 21375 HRESULT STDMETHODCALLTYPE IAccessibleObject_SetAccessibleName_Proxy( 21376 IAccessibleObject* This, 21377 LPCWSTR pszName); 21378 void __RPC_STUB IAccessibleObject_SetAccessibleName_Stub( 21379 IRpcStubBuffer* This, 21380 IRpcChannelBuffer* pRpcChannelBuffer, 21381 PRPC_MESSAGE pRpcMessage, 21382 DWORD* pdwStubPhase); 21383 21384 #endif /* __IAccessibleObject_INTERFACE_DEFINED__ */ 21385 21386 #endif 21387 21388 /***************************************************************************** 21389 * IResultsFolder interface 21390 */ 21391 #ifndef __IResultsFolder_INTERFACE_DEFINED__ 21392 #define __IResultsFolder_INTERFACE_DEFINED__ 21393 21394 DEFINE_GUID(IID_IResultsFolder, 0x96e5ae6d, 0x6ae1, 0x4b1c, 0x90,0x0c, 0xc6,0x48,0x0e,0xaa,0x88,0x28); 21395 #if defined(__cplusplus) && !defined(CINTERFACE) 21396 MIDL_INTERFACE("96e5ae6d-6ae1-4b1c-900c-c6480eaa8828") 21397 IResultsFolder : public IUnknown 21398 { 21399 virtual HRESULT STDMETHODCALLTYPE AddItem( 21400 IShellItem *psi) = 0; 21401 21402 virtual HRESULT STDMETHODCALLTYPE AddIDList( 21403 PCIDLIST_ABSOLUTE pidl, 21404 PITEMID_CHILD *ppidlAdded) = 0; 21405 21406 virtual HRESULT STDMETHODCALLTYPE RemoveItem( 21407 IShellItem *psi) = 0; 21408 21409 virtual HRESULT STDMETHODCALLTYPE RemoveIDList( 21410 PCIDLIST_ABSOLUTE pidl) = 0; 21411 21412 virtual HRESULT STDMETHODCALLTYPE RemoveAll( 21413 ) = 0; 21414 21415 }; 21416 #ifdef __CRT_UUID_DECL 21417 __CRT_UUID_DECL(IResultsFolder, 0x96e5ae6d, 0x6ae1, 0x4b1c, 0x90,0x0c, 0xc6,0x48,0x0e,0xaa,0x88,0x28) 21418 #endif 21419 #else 21420 typedef struct IResultsFolderVtbl { 21421 BEGIN_INTERFACE 21422 21423 /*** IUnknown methods ***/ 21424 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 21425 IResultsFolder* This, 21426 REFIID riid, 21427 void **ppvObject); 21428 21429 ULONG (STDMETHODCALLTYPE *AddRef)( 21430 IResultsFolder* This); 21431 21432 ULONG (STDMETHODCALLTYPE *Release)( 21433 IResultsFolder* This); 21434 21435 /*** IResultsFolder methods ***/ 21436 HRESULT (STDMETHODCALLTYPE *AddItem)( 21437 IResultsFolder* This, 21438 IShellItem *psi); 21439 21440 HRESULT (STDMETHODCALLTYPE *AddIDList)( 21441 IResultsFolder* This, 21442 PCIDLIST_ABSOLUTE pidl, 21443 PITEMID_CHILD *ppidlAdded); 21444 21445 HRESULT (STDMETHODCALLTYPE *RemoveItem)( 21446 IResultsFolder* This, 21447 IShellItem *psi); 21448 21449 HRESULT (STDMETHODCALLTYPE *RemoveIDList)( 21450 IResultsFolder* This, 21451 PCIDLIST_ABSOLUTE pidl); 21452 21453 HRESULT (STDMETHODCALLTYPE *RemoveAll)( 21454 IResultsFolder* This); 21455 21456 END_INTERFACE 21457 } IResultsFolderVtbl; 21458 interface IResultsFolder { 21459 CONST_VTBL IResultsFolderVtbl* lpVtbl; 21460 }; 21461 21462 #ifdef COBJMACROS 21463 #ifndef WIDL_C_INLINE_WRAPPERS 21464 /*** IUnknown methods ***/ 21465 #define IResultsFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 21466 #define IResultsFolder_AddRef(This) (This)->lpVtbl->AddRef(This) 21467 #define IResultsFolder_Release(This) (This)->lpVtbl->Release(This) 21468 /*** IResultsFolder methods ***/ 21469 #define IResultsFolder_AddItem(This,psi) (This)->lpVtbl->AddItem(This,psi) 21470 #define IResultsFolder_AddIDList(This,pidl,ppidlAdded) (This)->lpVtbl->AddIDList(This,pidl,ppidlAdded) 21471 #define IResultsFolder_RemoveItem(This,psi) (This)->lpVtbl->RemoveItem(This,psi) 21472 #define IResultsFolder_RemoveIDList(This,pidl) (This)->lpVtbl->RemoveIDList(This,pidl) 21473 #define IResultsFolder_RemoveAll(This) (This)->lpVtbl->RemoveAll(This) 21474 #else 21475 /*** IUnknown methods ***/ 21476 static FORCEINLINE HRESULT IResultsFolder_QueryInterface(IResultsFolder* This,REFIID riid,void **ppvObject) { 21477 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 21478 } 21479 static FORCEINLINE ULONG IResultsFolder_AddRef(IResultsFolder* This) { 21480 return This->lpVtbl->AddRef(This); 21481 } 21482 static FORCEINLINE ULONG IResultsFolder_Release(IResultsFolder* This) { 21483 return This->lpVtbl->Release(This); 21484 } 21485 /*** IResultsFolder methods ***/ 21486 static FORCEINLINE HRESULT IResultsFolder_AddItem(IResultsFolder* This,IShellItem *psi) { 21487 return This->lpVtbl->AddItem(This,psi); 21488 } 21489 static FORCEINLINE HRESULT IResultsFolder_AddIDList(IResultsFolder* This,PCIDLIST_ABSOLUTE pidl,PITEMID_CHILD *ppidlAdded) { 21490 return This->lpVtbl->AddIDList(This,pidl,ppidlAdded); 21491 } 21492 static FORCEINLINE HRESULT IResultsFolder_RemoveItem(IResultsFolder* This,IShellItem *psi) { 21493 return This->lpVtbl->RemoveItem(This,psi); 21494 } 21495 static FORCEINLINE HRESULT IResultsFolder_RemoveIDList(IResultsFolder* This,PCIDLIST_ABSOLUTE pidl) { 21496 return This->lpVtbl->RemoveIDList(This,pidl); 21497 } 21498 static FORCEINLINE HRESULT IResultsFolder_RemoveAll(IResultsFolder* This) { 21499 return This->lpVtbl->RemoveAll(This); 21500 } 21501 #endif 21502 #endif 21503 21504 #endif 21505 21506 HRESULT STDMETHODCALLTYPE IResultsFolder_AddItem_Proxy( 21507 IResultsFolder* This, 21508 IShellItem *psi); 21509 void __RPC_STUB IResultsFolder_AddItem_Stub( 21510 IRpcStubBuffer* This, 21511 IRpcChannelBuffer* pRpcChannelBuffer, 21512 PRPC_MESSAGE pRpcMessage, 21513 DWORD* pdwStubPhase); 21514 HRESULT STDMETHODCALLTYPE IResultsFolder_RemoteAddIDList_Proxy( 21515 IResultsFolder* This, 21516 PCIDLIST_ABSOLUTE pidl, 21517 PITEMID_CHILD *ppidlAdded); 21518 void __RPC_STUB IResultsFolder_RemoteAddIDList_Stub( 21519 IRpcStubBuffer* This, 21520 IRpcChannelBuffer* pRpcChannelBuffer, 21521 PRPC_MESSAGE pRpcMessage, 21522 DWORD* pdwStubPhase); 21523 HRESULT STDMETHODCALLTYPE IResultsFolder_RemoveItem_Proxy( 21524 IResultsFolder* This, 21525 IShellItem *psi); 21526 void __RPC_STUB IResultsFolder_RemoveItem_Stub( 21527 IRpcStubBuffer* This, 21528 IRpcChannelBuffer* pRpcChannelBuffer, 21529 PRPC_MESSAGE pRpcMessage, 21530 DWORD* pdwStubPhase); 21531 HRESULT STDMETHODCALLTYPE IResultsFolder_RemoveIDList_Proxy( 21532 IResultsFolder* This, 21533 PCIDLIST_ABSOLUTE pidl); 21534 void __RPC_STUB IResultsFolder_RemoveIDList_Stub( 21535 IRpcStubBuffer* This, 21536 IRpcChannelBuffer* pRpcChannelBuffer, 21537 PRPC_MESSAGE pRpcMessage, 21538 DWORD* pdwStubPhase); 21539 HRESULT STDMETHODCALLTYPE IResultsFolder_RemoveAll_Proxy( 21540 IResultsFolder* This); 21541 void __RPC_STUB IResultsFolder_RemoveAll_Stub( 21542 IRpcStubBuffer* This, 21543 IRpcChannelBuffer* pRpcChannelBuffer, 21544 PRPC_MESSAGE pRpcMessage, 21545 DWORD* pdwStubPhase); 21546 HRESULT CALLBACK IResultsFolder_AddIDList_Proxy( 21547 IResultsFolder* This, 21548 PCIDLIST_ABSOLUTE pidl, 21549 PITEMID_CHILD *ppidlAdded); 21550 HRESULT __RPC_STUB IResultsFolder_AddIDList_Stub( 21551 IResultsFolder* This, 21552 PCIDLIST_ABSOLUTE pidl, 21553 PITEMID_CHILD *ppidlAdded); 21554 21555 #endif /* __IResultsFolder_INTERFACE_DEFINED__ */ 21556 21557 #if _WIN32_IE >= _WIN32_IE_IE70 21558 /***************************************************************************** 21559 * IEnumObjects interface 21560 */ 21561 #ifndef __IEnumObjects_INTERFACE_DEFINED__ 21562 #define __IEnumObjects_INTERFACE_DEFINED__ 21563 21564 DEFINE_GUID(IID_IEnumObjects, 0x2c1c7e2e, 0x2d0e, 0x4059, 0x83,0x1e, 0x1e,0x6f,0x82,0x33,0x5c,0x2e); 21565 #if defined(__cplusplus) && !defined(CINTERFACE) 21566 MIDL_INTERFACE("2c1c7e2e-2d0e-4059-831e-1e6f82335c2e") 21567 IEnumObjects : public IUnknown 21568 { 21569 virtual HRESULT STDMETHODCALLTYPE Next( 21570 ULONG celt, 21571 REFIID riid, 21572 void **rgelt, 21573 ULONG *pceltFetched) = 0; 21574 21575 virtual HRESULT STDMETHODCALLTYPE Skip( 21576 ULONG celt) = 0; 21577 21578 virtual HRESULT STDMETHODCALLTYPE Reset( 21579 ) = 0; 21580 21581 virtual HRESULT STDMETHODCALLTYPE Clone( 21582 IEnumObjects **ppenum) = 0; 21583 21584 }; 21585 #ifdef __CRT_UUID_DECL 21586 __CRT_UUID_DECL(IEnumObjects, 0x2c1c7e2e, 0x2d0e, 0x4059, 0x83,0x1e, 0x1e,0x6f,0x82,0x33,0x5c,0x2e) 21587 #endif 21588 #else 21589 typedef struct IEnumObjectsVtbl { 21590 BEGIN_INTERFACE 21591 21592 /*** IUnknown methods ***/ 21593 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 21594 IEnumObjects* This, 21595 REFIID riid, 21596 void **ppvObject); 21597 21598 ULONG (STDMETHODCALLTYPE *AddRef)( 21599 IEnumObjects* This); 21600 21601 ULONG (STDMETHODCALLTYPE *Release)( 21602 IEnumObjects* This); 21603 21604 /*** IEnumObjects methods ***/ 21605 HRESULT (STDMETHODCALLTYPE *Next)( 21606 IEnumObjects* This, 21607 ULONG celt, 21608 REFIID riid, 21609 void **rgelt, 21610 ULONG *pceltFetched); 21611 21612 HRESULT (STDMETHODCALLTYPE *Skip)( 21613 IEnumObjects* This, 21614 ULONG celt); 21615 21616 HRESULT (STDMETHODCALLTYPE *Reset)( 21617 IEnumObjects* This); 21618 21619 HRESULT (STDMETHODCALLTYPE *Clone)( 21620 IEnumObjects* This, 21621 IEnumObjects **ppenum); 21622 21623 END_INTERFACE 21624 } IEnumObjectsVtbl; 21625 interface IEnumObjects { 21626 CONST_VTBL IEnumObjectsVtbl* lpVtbl; 21627 }; 21628 21629 #ifdef COBJMACROS 21630 #ifndef WIDL_C_INLINE_WRAPPERS 21631 /*** IUnknown methods ***/ 21632 #define IEnumObjects_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 21633 #define IEnumObjects_AddRef(This) (This)->lpVtbl->AddRef(This) 21634 #define IEnumObjects_Release(This) (This)->lpVtbl->Release(This) 21635 /*** IEnumObjects methods ***/ 21636 #define IEnumObjects_Next(This,celt,riid,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,riid,rgelt,pceltFetched) 21637 #define IEnumObjects_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 21638 #define IEnumObjects_Reset(This) (This)->lpVtbl->Reset(This) 21639 #define IEnumObjects_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) 21640 #else 21641 /*** IUnknown methods ***/ 21642 static FORCEINLINE HRESULT IEnumObjects_QueryInterface(IEnumObjects* This,REFIID riid,void **ppvObject) { 21643 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 21644 } 21645 static FORCEINLINE ULONG IEnumObjects_AddRef(IEnumObjects* This) { 21646 return This->lpVtbl->AddRef(This); 21647 } 21648 static FORCEINLINE ULONG IEnumObjects_Release(IEnumObjects* This) { 21649 return This->lpVtbl->Release(This); 21650 } 21651 /*** IEnumObjects methods ***/ 21652 static FORCEINLINE HRESULT IEnumObjects_Next(IEnumObjects* This,ULONG celt,REFIID riid,void **rgelt,ULONG *pceltFetched) { 21653 return This->lpVtbl->Next(This,celt,riid,rgelt,pceltFetched); 21654 } 21655 static FORCEINLINE HRESULT IEnumObjects_Skip(IEnumObjects* This,ULONG celt) { 21656 return This->lpVtbl->Skip(This,celt); 21657 } 21658 static FORCEINLINE HRESULT IEnumObjects_Reset(IEnumObjects* This) { 21659 return This->lpVtbl->Reset(This); 21660 } 21661 static FORCEINLINE HRESULT IEnumObjects_Clone(IEnumObjects* This,IEnumObjects **ppenum) { 21662 return This->lpVtbl->Clone(This,ppenum); 21663 } 21664 #endif 21665 #endif 21666 21667 #endif 21668 21669 HRESULT STDMETHODCALLTYPE IEnumObjects_RemoteNext_Proxy( 21670 IEnumObjects* This, 21671 ULONG celt, 21672 REFIID riid, 21673 void **rgelt, 21674 ULONG *pceltFetched); 21675 void __RPC_STUB IEnumObjects_RemoteNext_Stub( 21676 IRpcStubBuffer* This, 21677 IRpcChannelBuffer* pRpcChannelBuffer, 21678 PRPC_MESSAGE pRpcMessage, 21679 DWORD* pdwStubPhase); 21680 HRESULT STDMETHODCALLTYPE IEnumObjects_Skip_Proxy( 21681 IEnumObjects* This, 21682 ULONG celt); 21683 void __RPC_STUB IEnumObjects_Skip_Stub( 21684 IRpcStubBuffer* This, 21685 IRpcChannelBuffer* pRpcChannelBuffer, 21686 PRPC_MESSAGE pRpcMessage, 21687 DWORD* pdwStubPhase); 21688 HRESULT STDMETHODCALLTYPE IEnumObjects_Reset_Proxy( 21689 IEnumObjects* This); 21690 void __RPC_STUB IEnumObjects_Reset_Stub( 21691 IRpcStubBuffer* This, 21692 IRpcChannelBuffer* pRpcChannelBuffer, 21693 PRPC_MESSAGE pRpcMessage, 21694 DWORD* pdwStubPhase); 21695 HRESULT STDMETHODCALLTYPE IEnumObjects_Clone_Proxy( 21696 IEnumObjects* This, 21697 IEnumObjects **ppenum); 21698 void __RPC_STUB IEnumObjects_Clone_Stub( 21699 IRpcStubBuffer* This, 21700 IRpcChannelBuffer* pRpcChannelBuffer, 21701 PRPC_MESSAGE pRpcMessage, 21702 DWORD* pdwStubPhase); 21703 HRESULT CALLBACK IEnumObjects_Next_Proxy( 21704 IEnumObjects* This, 21705 ULONG celt, 21706 REFIID riid, 21707 void **rgelt, 21708 ULONG *pceltFetched); 21709 HRESULT __RPC_STUB IEnumObjects_Next_Stub( 21710 IEnumObjects* This, 21711 ULONG celt, 21712 REFIID riid, 21713 void **rgelt, 21714 ULONG *pceltFetched); 21715 21716 #endif /* __IEnumObjects_INTERFACE_DEFINED__ */ 21717 21718 21719 enum _OPPROGDLGF { 21720 OPPROGDLG_DEFAULT = 0x0, 21721 OPPROGDLG_ENABLEPAUSE = 0x80, 21722 OPPROGDLG_ALLOWUNDO = 0x100, 21723 OPPROGDLG_DONTDISPLAYSOURCEPATH = 0x200, 21724 OPPROGDLG_DONTDISPLAYDESTPATH = 0x400, 21725 OPPROGDLG_NOMULTIDAYESTIMATES = 0x800, 21726 OPPROGDLG_DONTDISPLAYLOCATIONS = 0x1000 21727 }; 21728 21729 21730 typedef DWORD OPPROGDLGF; 21731 21732 /***************************************************************************** 21733 * IOperationsProgressDialog interface 21734 */ 21735 #ifndef __IOperationsProgressDialog_INTERFACE_DEFINED__ 21736 #define __IOperationsProgressDialog_INTERFACE_DEFINED__ 21737 21738 enum _PDMODE { 21739 PDM_DEFAULT = 0x0, 21740 PDM_RUN = 0x1, 21741 PDM_PREFLIGHT = 0x2, 21742 PDM_UNDOING = 0x4, 21743 PDM_ERRORSBLOCKING = 0x8, 21744 PDM_INDETERMINATE = 0x10 21745 }; 21746 21747 21748 typedef DWORD PDMODE; 21749 21750 typedef enum PDOPSTATUS { 21751 PDOPS_RUNNING = 1, 21752 PDOPS_PAUSED = 2, 21753 PDOPS_CANCELLED = 3, 21754 PDOPS_STOPPED = 4, 21755 PDOPS_ERRORS = 5 21756 } PDOPSTATUS; 21757 21758 DEFINE_GUID(IID_IOperationsProgressDialog, 0x0c9fb851, 0xe5c9, 0x43eb, 0xa3,0x70, 0xf0,0x67,0x7b,0x13,0x87,0x4c); 21759 #if defined(__cplusplus) && !defined(CINTERFACE) 21760 MIDL_INTERFACE("0c9fb851-e5c9-43eb-a370-f0677b13874c") 21761 IOperationsProgressDialog : public IUnknown 21762 { 21763 virtual HRESULT STDMETHODCALLTYPE StartProgressDialog( 21764 HWND hwndOwner, 21765 OPPROGDLGF flags) = 0; 21766 21767 virtual HRESULT STDMETHODCALLTYPE StopProgressDialog( 21768 ) = 0; 21769 21770 virtual HRESULT STDMETHODCALLTYPE SetOperation( 21771 SPACTION action) = 0; 21772 21773 virtual HRESULT STDMETHODCALLTYPE SetMode( 21774 PDMODE mode) = 0; 21775 21776 virtual HRESULT STDMETHODCALLTYPE UpdateProgress( 21777 ULONGLONG ullPointsCurrent, 21778 ULONGLONG ullPointsTotal, 21779 ULONGLONG ullSizeCurrent, 21780 ULONGLONG ullSizeTotal, 21781 ULONGLONG ullItemsCurrent, 21782 ULONGLONG ullItemsTotal) = 0; 21783 21784 virtual HRESULT STDMETHODCALLTYPE UpdateLocations( 21785 IShellItem *psiSource, 21786 IShellItem *psiTarget, 21787 IShellItem *psiItem) = 0; 21788 21789 virtual HRESULT STDMETHODCALLTYPE ResetTimer( 21790 ) = 0; 21791 21792 virtual HRESULT STDMETHODCALLTYPE PauseTimer( 21793 ) = 0; 21794 21795 virtual HRESULT STDMETHODCALLTYPE ResumeTimer( 21796 ) = 0; 21797 21798 virtual HRESULT STDMETHODCALLTYPE GetMilliseconds( 21799 ULONGLONG *pullElapsed, 21800 ULONGLONG *pullRemaining) = 0; 21801 21802 virtual HRESULT STDMETHODCALLTYPE GetOperationStatus( 21803 PDOPSTATUS *popstatus) = 0; 21804 21805 }; 21806 #ifdef __CRT_UUID_DECL 21807 __CRT_UUID_DECL(IOperationsProgressDialog, 0x0c9fb851, 0xe5c9, 0x43eb, 0xa3,0x70, 0xf0,0x67,0x7b,0x13,0x87,0x4c) 21808 #endif 21809 #else 21810 typedef struct IOperationsProgressDialogVtbl { 21811 BEGIN_INTERFACE 21812 21813 /*** IUnknown methods ***/ 21814 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 21815 IOperationsProgressDialog* This, 21816 REFIID riid, 21817 void **ppvObject); 21818 21819 ULONG (STDMETHODCALLTYPE *AddRef)( 21820 IOperationsProgressDialog* This); 21821 21822 ULONG (STDMETHODCALLTYPE *Release)( 21823 IOperationsProgressDialog* This); 21824 21825 /*** IOperationsProgressDialog methods ***/ 21826 HRESULT (STDMETHODCALLTYPE *StartProgressDialog)( 21827 IOperationsProgressDialog* This, 21828 HWND hwndOwner, 21829 OPPROGDLGF flags); 21830 21831 HRESULT (STDMETHODCALLTYPE *StopProgressDialog)( 21832 IOperationsProgressDialog* This); 21833 21834 HRESULT (STDMETHODCALLTYPE *SetOperation)( 21835 IOperationsProgressDialog* This, 21836 SPACTION action); 21837 21838 HRESULT (STDMETHODCALLTYPE *SetMode)( 21839 IOperationsProgressDialog* This, 21840 PDMODE mode); 21841 21842 HRESULT (STDMETHODCALLTYPE *UpdateProgress)( 21843 IOperationsProgressDialog* This, 21844 ULONGLONG ullPointsCurrent, 21845 ULONGLONG ullPointsTotal, 21846 ULONGLONG ullSizeCurrent, 21847 ULONGLONG ullSizeTotal, 21848 ULONGLONG ullItemsCurrent, 21849 ULONGLONG ullItemsTotal); 21850 21851 HRESULT (STDMETHODCALLTYPE *UpdateLocations)( 21852 IOperationsProgressDialog* This, 21853 IShellItem *psiSource, 21854 IShellItem *psiTarget, 21855 IShellItem *psiItem); 21856 21857 HRESULT (STDMETHODCALLTYPE *ResetTimer)( 21858 IOperationsProgressDialog* This); 21859 21860 HRESULT (STDMETHODCALLTYPE *PauseTimer)( 21861 IOperationsProgressDialog* This); 21862 21863 HRESULT (STDMETHODCALLTYPE *ResumeTimer)( 21864 IOperationsProgressDialog* This); 21865 21866 HRESULT (STDMETHODCALLTYPE *GetMilliseconds)( 21867 IOperationsProgressDialog* This, 21868 ULONGLONG *pullElapsed, 21869 ULONGLONG *pullRemaining); 21870 21871 HRESULT (STDMETHODCALLTYPE *GetOperationStatus)( 21872 IOperationsProgressDialog* This, 21873 PDOPSTATUS *popstatus); 21874 21875 END_INTERFACE 21876 } IOperationsProgressDialogVtbl; 21877 interface IOperationsProgressDialog { 21878 CONST_VTBL IOperationsProgressDialogVtbl* lpVtbl; 21879 }; 21880 21881 #ifdef COBJMACROS 21882 #ifndef WIDL_C_INLINE_WRAPPERS 21883 /*** IUnknown methods ***/ 21884 #define IOperationsProgressDialog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 21885 #define IOperationsProgressDialog_AddRef(This) (This)->lpVtbl->AddRef(This) 21886 #define IOperationsProgressDialog_Release(This) (This)->lpVtbl->Release(This) 21887 /*** IOperationsProgressDialog methods ***/ 21888 #define IOperationsProgressDialog_StartProgressDialog(This,hwndOwner,flags) (This)->lpVtbl->StartProgressDialog(This,hwndOwner,flags) 21889 #define IOperationsProgressDialog_StopProgressDialog(This) (This)->lpVtbl->StopProgressDialog(This) 21890 #define IOperationsProgressDialog_SetOperation(This,action) (This)->lpVtbl->SetOperation(This,action) 21891 #define IOperationsProgressDialog_SetMode(This,mode) (This)->lpVtbl->SetMode(This,mode) 21892 #define IOperationsProgressDialog_UpdateProgress(This,ullPointsCurrent,ullPointsTotal,ullSizeCurrent,ullSizeTotal,ullItemsCurrent,ullItemsTotal) (This)->lpVtbl->UpdateProgress(This,ullPointsCurrent,ullPointsTotal,ullSizeCurrent,ullSizeTotal,ullItemsCurrent,ullItemsTotal) 21893 #define IOperationsProgressDialog_UpdateLocations(This,psiSource,psiTarget,psiItem) (This)->lpVtbl->UpdateLocations(This,psiSource,psiTarget,psiItem) 21894 #define IOperationsProgressDialog_ResetTimer(This) (This)->lpVtbl->ResetTimer(This) 21895 #define IOperationsProgressDialog_PauseTimer(This) (This)->lpVtbl->PauseTimer(This) 21896 #define IOperationsProgressDialog_ResumeTimer(This) (This)->lpVtbl->ResumeTimer(This) 21897 #define IOperationsProgressDialog_GetMilliseconds(This,pullElapsed,pullRemaining) (This)->lpVtbl->GetMilliseconds(This,pullElapsed,pullRemaining) 21898 #define IOperationsProgressDialog_GetOperationStatus(This,popstatus) (This)->lpVtbl->GetOperationStatus(This,popstatus) 21899 #else 21900 /*** IUnknown methods ***/ 21901 static FORCEINLINE HRESULT IOperationsProgressDialog_QueryInterface(IOperationsProgressDialog* This,REFIID riid,void **ppvObject) { 21902 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 21903 } 21904 static FORCEINLINE ULONG IOperationsProgressDialog_AddRef(IOperationsProgressDialog* This) { 21905 return This->lpVtbl->AddRef(This); 21906 } 21907 static FORCEINLINE ULONG IOperationsProgressDialog_Release(IOperationsProgressDialog* This) { 21908 return This->lpVtbl->Release(This); 21909 } 21910 /*** IOperationsProgressDialog methods ***/ 21911 static FORCEINLINE HRESULT IOperationsProgressDialog_StartProgressDialog(IOperationsProgressDialog* This,HWND hwndOwner,OPPROGDLGF flags) { 21912 return This->lpVtbl->StartProgressDialog(This,hwndOwner,flags); 21913 } 21914 static FORCEINLINE HRESULT IOperationsProgressDialog_StopProgressDialog(IOperationsProgressDialog* This) { 21915 return This->lpVtbl->StopProgressDialog(This); 21916 } 21917 static FORCEINLINE HRESULT IOperationsProgressDialog_SetOperation(IOperationsProgressDialog* This,SPACTION action) { 21918 return This->lpVtbl->SetOperation(This,action); 21919 } 21920 static FORCEINLINE HRESULT IOperationsProgressDialog_SetMode(IOperationsProgressDialog* This,PDMODE mode) { 21921 return This->lpVtbl->SetMode(This,mode); 21922 } 21923 static FORCEINLINE HRESULT IOperationsProgressDialog_UpdateProgress(IOperationsProgressDialog* This,ULONGLONG ullPointsCurrent,ULONGLONG ullPointsTotal,ULONGLONG ullSizeCurrent,ULONGLONG ullSizeTotal,ULONGLONG ullItemsCurrent,ULONGLONG ullItemsTotal) { 21924 return This->lpVtbl->UpdateProgress(This,ullPointsCurrent,ullPointsTotal,ullSizeCurrent,ullSizeTotal,ullItemsCurrent,ullItemsTotal); 21925 } 21926 static FORCEINLINE HRESULT IOperationsProgressDialog_UpdateLocations(IOperationsProgressDialog* This,IShellItem *psiSource,IShellItem *psiTarget,IShellItem *psiItem) { 21927 return This->lpVtbl->UpdateLocations(This,psiSource,psiTarget,psiItem); 21928 } 21929 static FORCEINLINE HRESULT IOperationsProgressDialog_ResetTimer(IOperationsProgressDialog* This) { 21930 return This->lpVtbl->ResetTimer(This); 21931 } 21932 static FORCEINLINE HRESULT IOperationsProgressDialog_PauseTimer(IOperationsProgressDialog* This) { 21933 return This->lpVtbl->PauseTimer(This); 21934 } 21935 static FORCEINLINE HRESULT IOperationsProgressDialog_ResumeTimer(IOperationsProgressDialog* This) { 21936 return This->lpVtbl->ResumeTimer(This); 21937 } 21938 static FORCEINLINE HRESULT IOperationsProgressDialog_GetMilliseconds(IOperationsProgressDialog* This,ULONGLONG *pullElapsed,ULONGLONG *pullRemaining) { 21939 return This->lpVtbl->GetMilliseconds(This,pullElapsed,pullRemaining); 21940 } 21941 static FORCEINLINE HRESULT IOperationsProgressDialog_GetOperationStatus(IOperationsProgressDialog* This,PDOPSTATUS *popstatus) { 21942 return This->lpVtbl->GetOperationStatus(This,popstatus); 21943 } 21944 #endif 21945 #endif 21946 21947 #endif 21948 21949 HRESULT STDMETHODCALLTYPE IOperationsProgressDialog_StartProgressDialog_Proxy( 21950 IOperationsProgressDialog* This, 21951 HWND hwndOwner, 21952 OPPROGDLGF flags); 21953 void __RPC_STUB IOperationsProgressDialog_StartProgressDialog_Stub( 21954 IRpcStubBuffer* This, 21955 IRpcChannelBuffer* pRpcChannelBuffer, 21956 PRPC_MESSAGE pRpcMessage, 21957 DWORD* pdwStubPhase); 21958 HRESULT STDMETHODCALLTYPE IOperationsProgressDialog_StopProgressDialog_Proxy( 21959 IOperationsProgressDialog* This); 21960 void __RPC_STUB IOperationsProgressDialog_StopProgressDialog_Stub( 21961 IRpcStubBuffer* This, 21962 IRpcChannelBuffer* pRpcChannelBuffer, 21963 PRPC_MESSAGE pRpcMessage, 21964 DWORD* pdwStubPhase); 21965 HRESULT STDMETHODCALLTYPE IOperationsProgressDialog_SetOperation_Proxy( 21966 IOperationsProgressDialog* This, 21967 SPACTION action); 21968 void __RPC_STUB IOperationsProgressDialog_SetOperation_Stub( 21969 IRpcStubBuffer* This, 21970 IRpcChannelBuffer* pRpcChannelBuffer, 21971 PRPC_MESSAGE pRpcMessage, 21972 DWORD* pdwStubPhase); 21973 HRESULT STDMETHODCALLTYPE IOperationsProgressDialog_SetMode_Proxy( 21974 IOperationsProgressDialog* This, 21975 PDMODE mode); 21976 void __RPC_STUB IOperationsProgressDialog_SetMode_Stub( 21977 IRpcStubBuffer* This, 21978 IRpcChannelBuffer* pRpcChannelBuffer, 21979 PRPC_MESSAGE pRpcMessage, 21980 DWORD* pdwStubPhase); 21981 HRESULT STDMETHODCALLTYPE IOperationsProgressDialog_UpdateProgress_Proxy( 21982 IOperationsProgressDialog* This, 21983 ULONGLONG ullPointsCurrent, 21984 ULONGLONG ullPointsTotal, 21985 ULONGLONG ullSizeCurrent, 21986 ULONGLONG ullSizeTotal, 21987 ULONGLONG ullItemsCurrent, 21988 ULONGLONG ullItemsTotal); 21989 void __RPC_STUB IOperationsProgressDialog_UpdateProgress_Stub( 21990 IRpcStubBuffer* This, 21991 IRpcChannelBuffer* pRpcChannelBuffer, 21992 PRPC_MESSAGE pRpcMessage, 21993 DWORD* pdwStubPhase); 21994 HRESULT STDMETHODCALLTYPE IOperationsProgressDialog_UpdateLocations_Proxy( 21995 IOperationsProgressDialog* This, 21996 IShellItem *psiSource, 21997 IShellItem *psiTarget, 21998 IShellItem *psiItem); 21999 void __RPC_STUB IOperationsProgressDialog_UpdateLocations_Stub( 22000 IRpcStubBuffer* This, 22001 IRpcChannelBuffer* pRpcChannelBuffer, 22002 PRPC_MESSAGE pRpcMessage, 22003 DWORD* pdwStubPhase); 22004 HRESULT STDMETHODCALLTYPE IOperationsProgressDialog_ResetTimer_Proxy( 22005 IOperationsProgressDialog* This); 22006 void __RPC_STUB IOperationsProgressDialog_ResetTimer_Stub( 22007 IRpcStubBuffer* This, 22008 IRpcChannelBuffer* pRpcChannelBuffer, 22009 PRPC_MESSAGE pRpcMessage, 22010 DWORD* pdwStubPhase); 22011 HRESULT STDMETHODCALLTYPE IOperationsProgressDialog_PauseTimer_Proxy( 22012 IOperationsProgressDialog* This); 22013 void __RPC_STUB IOperationsProgressDialog_PauseTimer_Stub( 22014 IRpcStubBuffer* This, 22015 IRpcChannelBuffer* pRpcChannelBuffer, 22016 PRPC_MESSAGE pRpcMessage, 22017 DWORD* pdwStubPhase); 22018 HRESULT STDMETHODCALLTYPE IOperationsProgressDialog_ResumeTimer_Proxy( 22019 IOperationsProgressDialog* This); 22020 void __RPC_STUB IOperationsProgressDialog_ResumeTimer_Stub( 22021 IRpcStubBuffer* This, 22022 IRpcChannelBuffer* pRpcChannelBuffer, 22023 PRPC_MESSAGE pRpcMessage, 22024 DWORD* pdwStubPhase); 22025 HRESULT STDMETHODCALLTYPE IOperationsProgressDialog_GetMilliseconds_Proxy( 22026 IOperationsProgressDialog* This, 22027 ULONGLONG *pullElapsed, 22028 ULONGLONG *pullRemaining); 22029 void __RPC_STUB IOperationsProgressDialog_GetMilliseconds_Stub( 22030 IRpcStubBuffer* This, 22031 IRpcChannelBuffer* pRpcChannelBuffer, 22032 PRPC_MESSAGE pRpcMessage, 22033 DWORD* pdwStubPhase); 22034 HRESULT STDMETHODCALLTYPE IOperationsProgressDialog_GetOperationStatus_Proxy( 22035 IOperationsProgressDialog* This, 22036 PDOPSTATUS *popstatus); 22037 void __RPC_STUB IOperationsProgressDialog_GetOperationStatus_Stub( 22038 IRpcStubBuffer* This, 22039 IRpcChannelBuffer* pRpcChannelBuffer, 22040 PRPC_MESSAGE pRpcMessage, 22041 DWORD* pdwStubPhase); 22042 22043 #endif /* __IOperationsProgressDialog_INTERFACE_DEFINED__ */ 22044 22045 22046 /***************************************************************************** 22047 * IIOCancelInformation interface 22048 */ 22049 #ifndef __IIOCancelInformation_INTERFACE_DEFINED__ 22050 #define __IIOCancelInformation_INTERFACE_DEFINED__ 22051 22052 DEFINE_GUID(IID_IIOCancelInformation, 0xf5b0bf81, 0x8cb5, 0x4b1b, 0x94,0x49, 0x1a,0x15,0x9e,0x0c,0x73,0x3c); 22053 #if defined(__cplusplus) && !defined(CINTERFACE) 22054 MIDL_INTERFACE("f5b0bf81-8cb5-4b1b-9449-1a159e0c733c") 22055 IIOCancelInformation : public IUnknown 22056 { 22057 virtual HRESULT STDMETHODCALLTYPE SetCancelInformation( 22058 DWORD dwThreadID, 22059 UINT uMsgCancel) = 0; 22060 22061 virtual HRESULT STDMETHODCALLTYPE GetCancelInformation( 22062 DWORD *pdwThreadID, 22063 UINT *puMsgCancel) = 0; 22064 22065 }; 22066 #ifdef __CRT_UUID_DECL 22067 __CRT_UUID_DECL(IIOCancelInformation, 0xf5b0bf81, 0x8cb5, 0x4b1b, 0x94,0x49, 0x1a,0x15,0x9e,0x0c,0x73,0x3c) 22068 #endif 22069 #else 22070 typedef struct IIOCancelInformationVtbl { 22071 BEGIN_INTERFACE 22072 22073 /*** IUnknown methods ***/ 22074 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 22075 IIOCancelInformation* This, 22076 REFIID riid, 22077 void **ppvObject); 22078 22079 ULONG (STDMETHODCALLTYPE *AddRef)( 22080 IIOCancelInformation* This); 22081 22082 ULONG (STDMETHODCALLTYPE *Release)( 22083 IIOCancelInformation* This); 22084 22085 /*** IIOCancelInformation methods ***/ 22086 HRESULT (STDMETHODCALLTYPE *SetCancelInformation)( 22087 IIOCancelInformation* This, 22088 DWORD dwThreadID, 22089 UINT uMsgCancel); 22090 22091 HRESULT (STDMETHODCALLTYPE *GetCancelInformation)( 22092 IIOCancelInformation* This, 22093 DWORD *pdwThreadID, 22094 UINT *puMsgCancel); 22095 22096 END_INTERFACE 22097 } IIOCancelInformationVtbl; 22098 interface IIOCancelInformation { 22099 CONST_VTBL IIOCancelInformationVtbl* lpVtbl; 22100 }; 22101 22102 #ifdef COBJMACROS 22103 #ifndef WIDL_C_INLINE_WRAPPERS 22104 /*** IUnknown methods ***/ 22105 #define IIOCancelInformation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 22106 #define IIOCancelInformation_AddRef(This) (This)->lpVtbl->AddRef(This) 22107 #define IIOCancelInformation_Release(This) (This)->lpVtbl->Release(This) 22108 /*** IIOCancelInformation methods ***/ 22109 #define IIOCancelInformation_SetCancelInformation(This,dwThreadID,uMsgCancel) (This)->lpVtbl->SetCancelInformation(This,dwThreadID,uMsgCancel) 22110 #define IIOCancelInformation_GetCancelInformation(This,pdwThreadID,puMsgCancel) (This)->lpVtbl->GetCancelInformation(This,pdwThreadID,puMsgCancel) 22111 #else 22112 /*** IUnknown methods ***/ 22113 static FORCEINLINE HRESULT IIOCancelInformation_QueryInterface(IIOCancelInformation* This,REFIID riid,void **ppvObject) { 22114 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 22115 } 22116 static FORCEINLINE ULONG IIOCancelInformation_AddRef(IIOCancelInformation* This) { 22117 return This->lpVtbl->AddRef(This); 22118 } 22119 static FORCEINLINE ULONG IIOCancelInformation_Release(IIOCancelInformation* This) { 22120 return This->lpVtbl->Release(This); 22121 } 22122 /*** IIOCancelInformation methods ***/ 22123 static FORCEINLINE HRESULT IIOCancelInformation_SetCancelInformation(IIOCancelInformation* This,DWORD dwThreadID,UINT uMsgCancel) { 22124 return This->lpVtbl->SetCancelInformation(This,dwThreadID,uMsgCancel); 22125 } 22126 static FORCEINLINE HRESULT IIOCancelInformation_GetCancelInformation(IIOCancelInformation* This,DWORD *pdwThreadID,UINT *puMsgCancel) { 22127 return This->lpVtbl->GetCancelInformation(This,pdwThreadID,puMsgCancel); 22128 } 22129 #endif 22130 #endif 22131 22132 #endif 22133 22134 HRESULT STDMETHODCALLTYPE IIOCancelInformation_SetCancelInformation_Proxy( 22135 IIOCancelInformation* This, 22136 DWORD dwThreadID, 22137 UINT uMsgCancel); 22138 void __RPC_STUB IIOCancelInformation_SetCancelInformation_Stub( 22139 IRpcStubBuffer* This, 22140 IRpcChannelBuffer* pRpcChannelBuffer, 22141 PRPC_MESSAGE pRpcMessage, 22142 DWORD* pdwStubPhase); 22143 HRESULT STDMETHODCALLTYPE IIOCancelInformation_GetCancelInformation_Proxy( 22144 IIOCancelInformation* This, 22145 DWORD *pdwThreadID, 22146 UINT *puMsgCancel); 22147 void __RPC_STUB IIOCancelInformation_GetCancelInformation_Stub( 22148 IRpcStubBuffer* This, 22149 IRpcChannelBuffer* pRpcChannelBuffer, 22150 PRPC_MESSAGE pRpcMessage, 22151 DWORD* pdwStubPhase); 22152 22153 #endif /* __IIOCancelInformation_INTERFACE_DEFINED__ */ 22154 22155 22156 #define FOFX_NOSKIPJUNCTIONS 0x00010000 22157 #define FOFX_PREFERHARDLINK 0x00020000 22158 #define FOFX_SHOWELEVATIONPROMPT 0x00040000 22159 #define FOFX_RECYCLEONDELETE 0x00080000 22160 #define FOFX_EARLYFAILURE 0x00100000 22161 #define FOFX_PRESERVEFILEEXTENSIONS 0x00200000 22162 #define FOFX_KEEPNEWERFILE 0x00400000 22163 #define FOFX_NOCOPYHOOKS 0x00800000 22164 #define FOFX_NOMINIMIZEBOX 0x01000000 22165 #define FOFX_MOVEACLSACROSSVOLUMES 0x02000000 22166 #define FOFX_DONTDISPLAYSOURCEPATH 0x04000000 22167 #define FOFX_DONTDISPLAYDESTPATH 0x08000000 22168 #define FOFX_REQUIREELEVATION 0x10000000 22169 #define FOFX_ADDUNDORECORD 0x20000000 22170 #define FOFX_COPYASDOWNLOAD 0x40000000 22171 #define FOFX_DONTDISPLAYLOCATIONS 0x80000000 22172 22173 /***************************************************************************** 22174 * IFileOperation interface 22175 */ 22176 #ifndef __IFileOperation_INTERFACE_DEFINED__ 22177 #define __IFileOperation_INTERFACE_DEFINED__ 22178 22179 DEFINE_GUID(IID_IFileOperation, 0x947aab5f, 0x0a5c, 0x4c13, 0xb4,0xd6, 0x4b,0xf7,0x83,0x6f,0xc9,0xf8); 22180 #if defined(__cplusplus) && !defined(CINTERFACE) 22181 MIDL_INTERFACE("947aab5f-0a5c-4c13-b4d6-4bf7836fc9f8") 22182 IFileOperation : public IUnknown 22183 { 22184 virtual HRESULT STDMETHODCALLTYPE Advise( 22185 IFileOperationProgressSink *pfops, 22186 DWORD *pdwCookie) = 0; 22187 22188 virtual HRESULT STDMETHODCALLTYPE Unadvise( 22189 DWORD dwCookie) = 0; 22190 22191 virtual HRESULT STDMETHODCALLTYPE SetOperationFlags( 22192 DWORD dwOperationFlags) = 0; 22193 22194 virtual HRESULT STDMETHODCALLTYPE SetProgressMessage( 22195 LPCWSTR pszMessage) = 0; 22196 22197 virtual HRESULT STDMETHODCALLTYPE SetProgressDialog( 22198 IOperationsProgressDialog *popd) = 0; 22199 22200 virtual HRESULT STDMETHODCALLTYPE SetProperties( 22201 IPropertyChangeArray *pproparray) = 0; 22202 22203 virtual HRESULT STDMETHODCALLTYPE SetOwnerWindow( 22204 HWND hwndOwner) = 0; 22205 22206 virtual HRESULT STDMETHODCALLTYPE ApplyPropertiesToItem( 22207 IShellItem *psiItem) = 0; 22208 22209 virtual HRESULT STDMETHODCALLTYPE ApplyPropertiesToItems( 22210 IUnknown *punkItems) = 0; 22211 22212 virtual HRESULT STDMETHODCALLTYPE RenameItem( 22213 IShellItem *psiItem, 22214 LPCWSTR pszNewName, 22215 IFileOperationProgressSink *pfopsItem) = 0; 22216 22217 virtual HRESULT STDMETHODCALLTYPE RenameItems( 22218 IUnknown *pUnkItems, 22219 LPCWSTR pszNewName) = 0; 22220 22221 virtual HRESULT STDMETHODCALLTYPE MoveItem( 22222 IShellItem *psiItem, 22223 IShellItem *psiDestinationFolder, 22224 LPCWSTR pszNewName, 22225 IFileOperationProgressSink *pfopsItem) = 0; 22226 22227 virtual HRESULT STDMETHODCALLTYPE MoveItems( 22228 IUnknown *punkItems, 22229 IShellItem *psiDestinationFolder) = 0; 22230 22231 virtual HRESULT STDMETHODCALLTYPE CopyItem( 22232 IShellItem *psiItem, 22233 IShellItem *psiDestinationFolder, 22234 LPCWSTR pszCopyName, 22235 IFileOperationProgressSink *pfopsItem) = 0; 22236 22237 virtual HRESULT STDMETHODCALLTYPE CopyItems( 22238 IUnknown *punkItems, 22239 IShellItem *psiDestinationFolder) = 0; 22240 22241 virtual HRESULT STDMETHODCALLTYPE DeleteItem( 22242 IShellItem *psiItem, 22243 IFileOperationProgressSink *pfopsItem) = 0; 22244 22245 virtual HRESULT STDMETHODCALLTYPE DeleteItems( 22246 IUnknown *punkItems) = 0; 22247 22248 virtual HRESULT STDMETHODCALLTYPE NewItem( 22249 IShellItem *psiDestinationFolder, 22250 DWORD dwFileAttributes, 22251 LPCWSTR pszName, 22252 LPCWSTR pszTemplateName, 22253 IFileOperationProgressSink *pfopsItem) = 0; 22254 22255 virtual HRESULT STDMETHODCALLTYPE PerformOperations( 22256 ) = 0; 22257 22258 virtual HRESULT STDMETHODCALLTYPE GetAnyOperationsAborted( 22259 WINBOOL *pfAnyOperationsAborted) = 0; 22260 22261 }; 22262 #ifdef __CRT_UUID_DECL 22263 __CRT_UUID_DECL(IFileOperation, 0x947aab5f, 0x0a5c, 0x4c13, 0xb4,0xd6, 0x4b,0xf7,0x83,0x6f,0xc9,0xf8) 22264 #endif 22265 #else 22266 typedef struct IFileOperationVtbl { 22267 BEGIN_INTERFACE 22268 22269 /*** IUnknown methods ***/ 22270 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 22271 IFileOperation* This, 22272 REFIID riid, 22273 void **ppvObject); 22274 22275 ULONG (STDMETHODCALLTYPE *AddRef)( 22276 IFileOperation* This); 22277 22278 ULONG (STDMETHODCALLTYPE *Release)( 22279 IFileOperation* This); 22280 22281 /*** IFileOperation methods ***/ 22282 HRESULT (STDMETHODCALLTYPE *Advise)( 22283 IFileOperation* This, 22284 IFileOperationProgressSink *pfops, 22285 DWORD *pdwCookie); 22286 22287 HRESULT (STDMETHODCALLTYPE *Unadvise)( 22288 IFileOperation* This, 22289 DWORD dwCookie); 22290 22291 HRESULT (STDMETHODCALLTYPE *SetOperationFlags)( 22292 IFileOperation* This, 22293 DWORD dwOperationFlags); 22294 22295 HRESULT (STDMETHODCALLTYPE *SetProgressMessage)( 22296 IFileOperation* This, 22297 LPCWSTR pszMessage); 22298 22299 HRESULT (STDMETHODCALLTYPE *SetProgressDialog)( 22300 IFileOperation* This, 22301 IOperationsProgressDialog *popd); 22302 22303 HRESULT (STDMETHODCALLTYPE *SetProperties)( 22304 IFileOperation* This, 22305 IPropertyChangeArray *pproparray); 22306 22307 HRESULT (STDMETHODCALLTYPE *SetOwnerWindow)( 22308 IFileOperation* This, 22309 HWND hwndOwner); 22310 22311 HRESULT (STDMETHODCALLTYPE *ApplyPropertiesToItem)( 22312 IFileOperation* This, 22313 IShellItem *psiItem); 22314 22315 HRESULT (STDMETHODCALLTYPE *ApplyPropertiesToItems)( 22316 IFileOperation* This, 22317 IUnknown *punkItems); 22318 22319 HRESULT (STDMETHODCALLTYPE *RenameItem)( 22320 IFileOperation* This, 22321 IShellItem *psiItem, 22322 LPCWSTR pszNewName, 22323 IFileOperationProgressSink *pfopsItem); 22324 22325 HRESULT (STDMETHODCALLTYPE *RenameItems)( 22326 IFileOperation* This, 22327 IUnknown *pUnkItems, 22328 LPCWSTR pszNewName); 22329 22330 HRESULT (STDMETHODCALLTYPE *MoveItem)( 22331 IFileOperation* This, 22332 IShellItem *psiItem, 22333 IShellItem *psiDestinationFolder, 22334 LPCWSTR pszNewName, 22335 IFileOperationProgressSink *pfopsItem); 22336 22337 HRESULT (STDMETHODCALLTYPE *MoveItems)( 22338 IFileOperation* This, 22339 IUnknown *punkItems, 22340 IShellItem *psiDestinationFolder); 22341 22342 HRESULT (STDMETHODCALLTYPE *CopyItem)( 22343 IFileOperation* This, 22344 IShellItem *psiItem, 22345 IShellItem *psiDestinationFolder, 22346 LPCWSTR pszCopyName, 22347 IFileOperationProgressSink *pfopsItem); 22348 22349 HRESULT (STDMETHODCALLTYPE *CopyItems)( 22350 IFileOperation* This, 22351 IUnknown *punkItems, 22352 IShellItem *psiDestinationFolder); 22353 22354 HRESULT (STDMETHODCALLTYPE *DeleteItem)( 22355 IFileOperation* This, 22356 IShellItem *psiItem, 22357 IFileOperationProgressSink *pfopsItem); 22358 22359 HRESULT (STDMETHODCALLTYPE *DeleteItems)( 22360 IFileOperation* This, 22361 IUnknown *punkItems); 22362 22363 HRESULT (STDMETHODCALLTYPE *NewItem)( 22364 IFileOperation* This, 22365 IShellItem *psiDestinationFolder, 22366 DWORD dwFileAttributes, 22367 LPCWSTR pszName, 22368 LPCWSTR pszTemplateName, 22369 IFileOperationProgressSink *pfopsItem); 22370 22371 HRESULT (STDMETHODCALLTYPE *PerformOperations)( 22372 IFileOperation* This); 22373 22374 HRESULT (STDMETHODCALLTYPE *GetAnyOperationsAborted)( 22375 IFileOperation* This, 22376 WINBOOL *pfAnyOperationsAborted); 22377 22378 END_INTERFACE 22379 } IFileOperationVtbl; 22380 interface IFileOperation { 22381 CONST_VTBL IFileOperationVtbl* lpVtbl; 22382 }; 22383 22384 #ifdef COBJMACROS 22385 #ifndef WIDL_C_INLINE_WRAPPERS 22386 /*** IUnknown methods ***/ 22387 #define IFileOperation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 22388 #define IFileOperation_AddRef(This) (This)->lpVtbl->AddRef(This) 22389 #define IFileOperation_Release(This) (This)->lpVtbl->Release(This) 22390 /*** IFileOperation methods ***/ 22391 #define IFileOperation_Advise(This,pfops,pdwCookie) (This)->lpVtbl->Advise(This,pfops,pdwCookie) 22392 #define IFileOperation_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) 22393 #define IFileOperation_SetOperationFlags(This,dwOperationFlags) (This)->lpVtbl->SetOperationFlags(This,dwOperationFlags) 22394 #define IFileOperation_SetProgressMessage(This,pszMessage) (This)->lpVtbl->SetProgressMessage(This,pszMessage) 22395 #define IFileOperation_SetProgressDialog(This,popd) (This)->lpVtbl->SetProgressDialog(This,popd) 22396 #define IFileOperation_SetProperties(This,pproparray) (This)->lpVtbl->SetProperties(This,pproparray) 22397 #define IFileOperation_SetOwnerWindow(This,hwndOwner) (This)->lpVtbl->SetOwnerWindow(This,hwndOwner) 22398 #define IFileOperation_ApplyPropertiesToItem(This,psiItem) (This)->lpVtbl->ApplyPropertiesToItem(This,psiItem) 22399 #define IFileOperation_ApplyPropertiesToItems(This,punkItems) (This)->lpVtbl->ApplyPropertiesToItems(This,punkItems) 22400 #define IFileOperation_RenameItem(This,psiItem,pszNewName,pfopsItem) (This)->lpVtbl->RenameItem(This,psiItem,pszNewName,pfopsItem) 22401 #define IFileOperation_RenameItems(This,pUnkItems,pszNewName) (This)->lpVtbl->RenameItems(This,pUnkItems,pszNewName) 22402 #define IFileOperation_MoveItem(This,psiItem,psiDestinationFolder,pszNewName,pfopsItem) (This)->lpVtbl->MoveItem(This,psiItem,psiDestinationFolder,pszNewName,pfopsItem) 22403 #define IFileOperation_MoveItems(This,punkItems,psiDestinationFolder) (This)->lpVtbl->MoveItems(This,punkItems,psiDestinationFolder) 22404 #define IFileOperation_CopyItem(This,psiItem,psiDestinationFolder,pszCopyName,pfopsItem) (This)->lpVtbl->CopyItem(This,psiItem,psiDestinationFolder,pszCopyName,pfopsItem) 22405 #define IFileOperation_CopyItems(This,punkItems,psiDestinationFolder) (This)->lpVtbl->CopyItems(This,punkItems,psiDestinationFolder) 22406 #define IFileOperation_DeleteItem(This,psiItem,pfopsItem) (This)->lpVtbl->DeleteItem(This,psiItem,pfopsItem) 22407 #define IFileOperation_DeleteItems(This,punkItems) (This)->lpVtbl->DeleteItems(This,punkItems) 22408 #define IFileOperation_NewItem(This,psiDestinationFolder,dwFileAttributes,pszName,pszTemplateName,pfopsItem) (This)->lpVtbl->NewItem(This,psiDestinationFolder,dwFileAttributes,pszName,pszTemplateName,pfopsItem) 22409 #define IFileOperation_PerformOperations(This) (This)->lpVtbl->PerformOperations(This) 22410 #define IFileOperation_GetAnyOperationsAborted(This,pfAnyOperationsAborted) (This)->lpVtbl->GetAnyOperationsAborted(This,pfAnyOperationsAborted) 22411 #else 22412 /*** IUnknown methods ***/ 22413 static FORCEINLINE HRESULT IFileOperation_QueryInterface(IFileOperation* This,REFIID riid,void **ppvObject) { 22414 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 22415 } 22416 static FORCEINLINE ULONG IFileOperation_AddRef(IFileOperation* This) { 22417 return This->lpVtbl->AddRef(This); 22418 } 22419 static FORCEINLINE ULONG IFileOperation_Release(IFileOperation* This) { 22420 return This->lpVtbl->Release(This); 22421 } 22422 /*** IFileOperation methods ***/ 22423 static FORCEINLINE HRESULT IFileOperation_Advise(IFileOperation* This,IFileOperationProgressSink *pfops,DWORD *pdwCookie) { 22424 return This->lpVtbl->Advise(This,pfops,pdwCookie); 22425 } 22426 static FORCEINLINE HRESULT IFileOperation_Unadvise(IFileOperation* This,DWORD dwCookie) { 22427 return This->lpVtbl->Unadvise(This,dwCookie); 22428 } 22429 static FORCEINLINE HRESULT IFileOperation_SetOperationFlags(IFileOperation* This,DWORD dwOperationFlags) { 22430 return This->lpVtbl->SetOperationFlags(This,dwOperationFlags); 22431 } 22432 static FORCEINLINE HRESULT IFileOperation_SetProgressMessage(IFileOperation* This,LPCWSTR pszMessage) { 22433 return This->lpVtbl->SetProgressMessage(This,pszMessage); 22434 } 22435 static FORCEINLINE HRESULT IFileOperation_SetProgressDialog(IFileOperation* This,IOperationsProgressDialog *popd) { 22436 return This->lpVtbl->SetProgressDialog(This,popd); 22437 } 22438 static FORCEINLINE HRESULT IFileOperation_SetProperties(IFileOperation* This,IPropertyChangeArray *pproparray) { 22439 return This->lpVtbl->SetProperties(This,pproparray); 22440 } 22441 static FORCEINLINE HRESULT IFileOperation_SetOwnerWindow(IFileOperation* This,HWND hwndOwner) { 22442 return This->lpVtbl->SetOwnerWindow(This,hwndOwner); 22443 } 22444 static FORCEINLINE HRESULT IFileOperation_ApplyPropertiesToItem(IFileOperation* This,IShellItem *psiItem) { 22445 return This->lpVtbl->ApplyPropertiesToItem(This,psiItem); 22446 } 22447 static FORCEINLINE HRESULT IFileOperation_ApplyPropertiesToItems(IFileOperation* This,IUnknown *punkItems) { 22448 return This->lpVtbl->ApplyPropertiesToItems(This,punkItems); 22449 } 22450 static FORCEINLINE HRESULT IFileOperation_RenameItem(IFileOperation* This,IShellItem *psiItem,LPCWSTR pszNewName,IFileOperationProgressSink *pfopsItem) { 22451 return This->lpVtbl->RenameItem(This,psiItem,pszNewName,pfopsItem); 22452 } 22453 static FORCEINLINE HRESULT IFileOperation_RenameItems(IFileOperation* This,IUnknown *pUnkItems,LPCWSTR pszNewName) { 22454 return This->lpVtbl->RenameItems(This,pUnkItems,pszNewName); 22455 } 22456 static FORCEINLINE HRESULT IFileOperation_MoveItem(IFileOperation* This,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszNewName,IFileOperationProgressSink *pfopsItem) { 22457 return This->lpVtbl->MoveItem(This,psiItem,psiDestinationFolder,pszNewName,pfopsItem); 22458 } 22459 static FORCEINLINE HRESULT IFileOperation_MoveItems(IFileOperation* This,IUnknown *punkItems,IShellItem *psiDestinationFolder) { 22460 return This->lpVtbl->MoveItems(This,punkItems,psiDestinationFolder); 22461 } 22462 static FORCEINLINE HRESULT IFileOperation_CopyItem(IFileOperation* This,IShellItem *psiItem,IShellItem *psiDestinationFolder,LPCWSTR pszCopyName,IFileOperationProgressSink *pfopsItem) { 22463 return This->lpVtbl->CopyItem(This,psiItem,psiDestinationFolder,pszCopyName,pfopsItem); 22464 } 22465 static FORCEINLINE HRESULT IFileOperation_CopyItems(IFileOperation* This,IUnknown *punkItems,IShellItem *psiDestinationFolder) { 22466 return This->lpVtbl->CopyItems(This,punkItems,psiDestinationFolder); 22467 } 22468 static FORCEINLINE HRESULT IFileOperation_DeleteItem(IFileOperation* This,IShellItem *psiItem,IFileOperationProgressSink *pfopsItem) { 22469 return This->lpVtbl->DeleteItem(This,psiItem,pfopsItem); 22470 } 22471 static FORCEINLINE HRESULT IFileOperation_DeleteItems(IFileOperation* This,IUnknown *punkItems) { 22472 return This->lpVtbl->DeleteItems(This,punkItems); 22473 } 22474 static FORCEINLINE HRESULT IFileOperation_NewItem(IFileOperation* This,IShellItem *psiDestinationFolder,DWORD dwFileAttributes,LPCWSTR pszName,LPCWSTR pszTemplateName,IFileOperationProgressSink *pfopsItem) { 22475 return This->lpVtbl->NewItem(This,psiDestinationFolder,dwFileAttributes,pszName,pszTemplateName,pfopsItem); 22476 } 22477 static FORCEINLINE HRESULT IFileOperation_PerformOperations(IFileOperation* This) { 22478 return This->lpVtbl->PerformOperations(This); 22479 } 22480 static FORCEINLINE HRESULT IFileOperation_GetAnyOperationsAborted(IFileOperation* This,WINBOOL *pfAnyOperationsAborted) { 22481 return This->lpVtbl->GetAnyOperationsAborted(This,pfAnyOperationsAborted); 22482 } 22483 #endif 22484 #endif 22485 22486 #endif 22487 22488 HRESULT STDMETHODCALLTYPE IFileOperation_Advise_Proxy( 22489 IFileOperation* This, 22490 IFileOperationProgressSink *pfops, 22491 DWORD *pdwCookie); 22492 void __RPC_STUB IFileOperation_Advise_Stub( 22493 IRpcStubBuffer* This, 22494 IRpcChannelBuffer* pRpcChannelBuffer, 22495 PRPC_MESSAGE pRpcMessage, 22496 DWORD* pdwStubPhase); 22497 HRESULT STDMETHODCALLTYPE IFileOperation_Unadvise_Proxy( 22498 IFileOperation* This, 22499 DWORD dwCookie); 22500 void __RPC_STUB IFileOperation_Unadvise_Stub( 22501 IRpcStubBuffer* This, 22502 IRpcChannelBuffer* pRpcChannelBuffer, 22503 PRPC_MESSAGE pRpcMessage, 22504 DWORD* pdwStubPhase); 22505 HRESULT STDMETHODCALLTYPE IFileOperation_SetOperationFlags_Proxy( 22506 IFileOperation* This, 22507 DWORD dwOperationFlags); 22508 void __RPC_STUB IFileOperation_SetOperationFlags_Stub( 22509 IRpcStubBuffer* This, 22510 IRpcChannelBuffer* pRpcChannelBuffer, 22511 PRPC_MESSAGE pRpcMessage, 22512 DWORD* pdwStubPhase); 22513 HRESULT STDMETHODCALLTYPE IFileOperation_SetProgressMessage_Proxy( 22514 IFileOperation* This, 22515 LPCWSTR pszMessage); 22516 void __RPC_STUB IFileOperation_SetProgressMessage_Stub( 22517 IRpcStubBuffer* This, 22518 IRpcChannelBuffer* pRpcChannelBuffer, 22519 PRPC_MESSAGE pRpcMessage, 22520 DWORD* pdwStubPhase); 22521 HRESULT STDMETHODCALLTYPE IFileOperation_SetProgressDialog_Proxy( 22522 IFileOperation* This, 22523 IOperationsProgressDialog *popd); 22524 void __RPC_STUB IFileOperation_SetProgressDialog_Stub( 22525 IRpcStubBuffer* This, 22526 IRpcChannelBuffer* pRpcChannelBuffer, 22527 PRPC_MESSAGE pRpcMessage, 22528 DWORD* pdwStubPhase); 22529 HRESULT STDMETHODCALLTYPE IFileOperation_SetProperties_Proxy( 22530 IFileOperation* This, 22531 IPropertyChangeArray *pproparray); 22532 void __RPC_STUB IFileOperation_SetProperties_Stub( 22533 IRpcStubBuffer* This, 22534 IRpcChannelBuffer* pRpcChannelBuffer, 22535 PRPC_MESSAGE pRpcMessage, 22536 DWORD* pdwStubPhase); 22537 HRESULT STDMETHODCALLTYPE IFileOperation_SetOwnerWindow_Proxy( 22538 IFileOperation* This, 22539 HWND hwndOwner); 22540 void __RPC_STUB IFileOperation_SetOwnerWindow_Stub( 22541 IRpcStubBuffer* This, 22542 IRpcChannelBuffer* pRpcChannelBuffer, 22543 PRPC_MESSAGE pRpcMessage, 22544 DWORD* pdwStubPhase); 22545 HRESULT STDMETHODCALLTYPE IFileOperation_ApplyPropertiesToItem_Proxy( 22546 IFileOperation* This, 22547 IShellItem *psiItem); 22548 void __RPC_STUB IFileOperation_ApplyPropertiesToItem_Stub( 22549 IRpcStubBuffer* This, 22550 IRpcChannelBuffer* pRpcChannelBuffer, 22551 PRPC_MESSAGE pRpcMessage, 22552 DWORD* pdwStubPhase); 22553 HRESULT STDMETHODCALLTYPE IFileOperation_ApplyPropertiesToItems_Proxy( 22554 IFileOperation* This, 22555 IUnknown *punkItems); 22556 void __RPC_STUB IFileOperation_ApplyPropertiesToItems_Stub( 22557 IRpcStubBuffer* This, 22558 IRpcChannelBuffer* pRpcChannelBuffer, 22559 PRPC_MESSAGE pRpcMessage, 22560 DWORD* pdwStubPhase); 22561 HRESULT STDMETHODCALLTYPE IFileOperation_RenameItem_Proxy( 22562 IFileOperation* This, 22563 IShellItem *psiItem, 22564 LPCWSTR pszNewName, 22565 IFileOperationProgressSink *pfopsItem); 22566 void __RPC_STUB IFileOperation_RenameItem_Stub( 22567 IRpcStubBuffer* This, 22568 IRpcChannelBuffer* pRpcChannelBuffer, 22569 PRPC_MESSAGE pRpcMessage, 22570 DWORD* pdwStubPhase); 22571 HRESULT STDMETHODCALLTYPE IFileOperation_RenameItems_Proxy( 22572 IFileOperation* This, 22573 IUnknown *pUnkItems, 22574 LPCWSTR pszNewName); 22575 void __RPC_STUB IFileOperation_RenameItems_Stub( 22576 IRpcStubBuffer* This, 22577 IRpcChannelBuffer* pRpcChannelBuffer, 22578 PRPC_MESSAGE pRpcMessage, 22579 DWORD* pdwStubPhase); 22580 HRESULT STDMETHODCALLTYPE IFileOperation_MoveItem_Proxy( 22581 IFileOperation* This, 22582 IShellItem *psiItem, 22583 IShellItem *psiDestinationFolder, 22584 LPCWSTR pszNewName, 22585 IFileOperationProgressSink *pfopsItem); 22586 void __RPC_STUB IFileOperation_MoveItem_Stub( 22587 IRpcStubBuffer* This, 22588 IRpcChannelBuffer* pRpcChannelBuffer, 22589 PRPC_MESSAGE pRpcMessage, 22590 DWORD* pdwStubPhase); 22591 HRESULT STDMETHODCALLTYPE IFileOperation_MoveItems_Proxy( 22592 IFileOperation* This, 22593 IUnknown *punkItems, 22594 IShellItem *psiDestinationFolder); 22595 void __RPC_STUB IFileOperation_MoveItems_Stub( 22596 IRpcStubBuffer* This, 22597 IRpcChannelBuffer* pRpcChannelBuffer, 22598 PRPC_MESSAGE pRpcMessage, 22599 DWORD* pdwStubPhase); 22600 HRESULT STDMETHODCALLTYPE IFileOperation_CopyItem_Proxy( 22601 IFileOperation* This, 22602 IShellItem *psiItem, 22603 IShellItem *psiDestinationFolder, 22604 LPCWSTR pszCopyName, 22605 IFileOperationProgressSink *pfopsItem); 22606 void __RPC_STUB IFileOperation_CopyItem_Stub( 22607 IRpcStubBuffer* This, 22608 IRpcChannelBuffer* pRpcChannelBuffer, 22609 PRPC_MESSAGE pRpcMessage, 22610 DWORD* pdwStubPhase); 22611 HRESULT STDMETHODCALLTYPE IFileOperation_CopyItems_Proxy( 22612 IFileOperation* This, 22613 IUnknown *punkItems, 22614 IShellItem *psiDestinationFolder); 22615 void __RPC_STUB IFileOperation_CopyItems_Stub( 22616 IRpcStubBuffer* This, 22617 IRpcChannelBuffer* pRpcChannelBuffer, 22618 PRPC_MESSAGE pRpcMessage, 22619 DWORD* pdwStubPhase); 22620 HRESULT STDMETHODCALLTYPE IFileOperation_DeleteItem_Proxy( 22621 IFileOperation* This, 22622 IShellItem *psiItem, 22623 IFileOperationProgressSink *pfopsItem); 22624 void __RPC_STUB IFileOperation_DeleteItem_Stub( 22625 IRpcStubBuffer* This, 22626 IRpcChannelBuffer* pRpcChannelBuffer, 22627 PRPC_MESSAGE pRpcMessage, 22628 DWORD* pdwStubPhase); 22629 HRESULT STDMETHODCALLTYPE IFileOperation_DeleteItems_Proxy( 22630 IFileOperation* This, 22631 IUnknown *punkItems); 22632 void __RPC_STUB IFileOperation_DeleteItems_Stub( 22633 IRpcStubBuffer* This, 22634 IRpcChannelBuffer* pRpcChannelBuffer, 22635 PRPC_MESSAGE pRpcMessage, 22636 DWORD* pdwStubPhase); 22637 HRESULT STDMETHODCALLTYPE IFileOperation_NewItem_Proxy( 22638 IFileOperation* This, 22639 IShellItem *psiDestinationFolder, 22640 DWORD dwFileAttributes, 22641 LPCWSTR pszName, 22642 LPCWSTR pszTemplateName, 22643 IFileOperationProgressSink *pfopsItem); 22644 void __RPC_STUB IFileOperation_NewItem_Stub( 22645 IRpcStubBuffer* This, 22646 IRpcChannelBuffer* pRpcChannelBuffer, 22647 PRPC_MESSAGE pRpcMessage, 22648 DWORD* pdwStubPhase); 22649 HRESULT STDMETHODCALLTYPE IFileOperation_PerformOperations_Proxy( 22650 IFileOperation* This); 22651 void __RPC_STUB IFileOperation_PerformOperations_Stub( 22652 IRpcStubBuffer* This, 22653 IRpcChannelBuffer* pRpcChannelBuffer, 22654 PRPC_MESSAGE pRpcMessage, 22655 DWORD* pdwStubPhase); 22656 HRESULT STDMETHODCALLTYPE IFileOperation_GetAnyOperationsAborted_Proxy( 22657 IFileOperation* This, 22658 WINBOOL *pfAnyOperationsAborted); 22659 void __RPC_STUB IFileOperation_GetAnyOperationsAborted_Stub( 22660 IRpcStubBuffer* This, 22661 IRpcChannelBuffer* pRpcChannelBuffer, 22662 PRPC_MESSAGE pRpcMessage, 22663 DWORD* pdwStubPhase); 22664 22665 #endif /* __IFileOperation_INTERFACE_DEFINED__ */ 22666 22667 22668 /***************************************************************************** 22669 * IObjectProvider interface 22670 */ 22671 #ifndef __IObjectProvider_INTERFACE_DEFINED__ 22672 #define __IObjectProvider_INTERFACE_DEFINED__ 22673 22674 DEFINE_GUID(IID_IObjectProvider, 0xa6087428, 0x3be3, 0x4d73, 0xb3,0x08, 0x7c,0x04,0xa5,0x40,0xbf,0x1a); 22675 #if defined(__cplusplus) && !defined(CINTERFACE) 22676 MIDL_INTERFACE("a6087428-3be3-4d73-b308-7c04a540bf1a") 22677 IObjectProvider : public IUnknown 22678 { 22679 virtual HRESULT STDMETHODCALLTYPE QueryObject( 22680 REFGUID guidObject, 22681 REFIID riid, 22682 void **ppvOut) = 0; 22683 22684 }; 22685 #ifdef __CRT_UUID_DECL 22686 __CRT_UUID_DECL(IObjectProvider, 0xa6087428, 0x3be3, 0x4d73, 0xb3,0x08, 0x7c,0x04,0xa5,0x40,0xbf,0x1a) 22687 #endif 22688 #else 22689 typedef struct IObjectProviderVtbl { 22690 BEGIN_INTERFACE 22691 22692 /*** IUnknown methods ***/ 22693 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 22694 IObjectProvider* This, 22695 REFIID riid, 22696 void **ppvObject); 22697 22698 ULONG (STDMETHODCALLTYPE *AddRef)( 22699 IObjectProvider* This); 22700 22701 ULONG (STDMETHODCALLTYPE *Release)( 22702 IObjectProvider* This); 22703 22704 /*** IObjectProvider methods ***/ 22705 HRESULT (STDMETHODCALLTYPE *QueryObject)( 22706 IObjectProvider* This, 22707 REFGUID guidObject, 22708 REFIID riid, 22709 void **ppvOut); 22710 22711 END_INTERFACE 22712 } IObjectProviderVtbl; 22713 interface IObjectProvider { 22714 CONST_VTBL IObjectProviderVtbl* lpVtbl; 22715 }; 22716 22717 #ifdef COBJMACROS 22718 #ifndef WIDL_C_INLINE_WRAPPERS 22719 /*** IUnknown methods ***/ 22720 #define IObjectProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 22721 #define IObjectProvider_AddRef(This) (This)->lpVtbl->AddRef(This) 22722 #define IObjectProvider_Release(This) (This)->lpVtbl->Release(This) 22723 /*** IObjectProvider methods ***/ 22724 #define IObjectProvider_QueryObject(This,guidObject,riid,ppvOut) (This)->lpVtbl->QueryObject(This,guidObject,riid,ppvOut) 22725 #else 22726 /*** IUnknown methods ***/ 22727 static FORCEINLINE HRESULT IObjectProvider_QueryInterface(IObjectProvider* This,REFIID riid,void **ppvObject) { 22728 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 22729 } 22730 static FORCEINLINE ULONG IObjectProvider_AddRef(IObjectProvider* This) { 22731 return This->lpVtbl->AddRef(This); 22732 } 22733 static FORCEINLINE ULONG IObjectProvider_Release(IObjectProvider* This) { 22734 return This->lpVtbl->Release(This); 22735 } 22736 /*** IObjectProvider methods ***/ 22737 static FORCEINLINE HRESULT IObjectProvider_QueryObject(IObjectProvider* This,REFGUID guidObject,REFIID riid,void **ppvOut) { 22738 return This->lpVtbl->QueryObject(This,guidObject,riid,ppvOut); 22739 } 22740 #endif 22741 #endif 22742 22743 #endif 22744 22745 HRESULT STDMETHODCALLTYPE IObjectProvider_QueryObject_Proxy( 22746 IObjectProvider* This, 22747 REFGUID guidObject, 22748 REFIID riid, 22749 void **ppvOut); 22750 void __RPC_STUB IObjectProvider_QueryObject_Stub( 22751 IRpcStubBuffer* This, 22752 IRpcChannelBuffer* pRpcChannelBuffer, 22753 PRPC_MESSAGE pRpcMessage, 22754 DWORD* pdwStubPhase); 22755 22756 #endif /* __IObjectProvider_INTERFACE_DEFINED__ */ 22757 22758 #endif 22759 22760 /***************************************************************************** 22761 * INamespaceWalkCB interface 22762 */ 22763 #ifndef __INamespaceWalkCB_INTERFACE_DEFINED__ 22764 #define __INamespaceWalkCB_INTERFACE_DEFINED__ 22765 22766 DEFINE_GUID(IID_INamespaceWalkCB, 0xd92995f8, 0xcf5e, 0x4a76, 0xbf,0x59, 0xea,0xd3,0x9e,0xa2,0xb9,0x7e); 22767 #if defined(__cplusplus) && !defined(CINTERFACE) 22768 MIDL_INTERFACE("d92995f8-cf5e-4a76-bf59-ead39ea2b97e") 22769 INamespaceWalkCB : public IUnknown 22770 { 22771 virtual HRESULT STDMETHODCALLTYPE FoundItem( 22772 IShellFolder *psf, 22773 PCUITEMID_CHILD pidl) = 0; 22774 22775 virtual HRESULT STDMETHODCALLTYPE EnterFolder( 22776 IShellFolder *psf, 22777 PCUITEMID_CHILD pidl) = 0; 22778 22779 virtual HRESULT STDMETHODCALLTYPE LeaveFolder( 22780 IShellFolder *psf, 22781 PCUITEMID_CHILD pidl) = 0; 22782 22783 virtual HRESULT STDMETHODCALLTYPE InitializeProgressDialog( 22784 LPWSTR *ppszTitle, 22785 LPWSTR *ppszCancel) = 0; 22786 22787 }; 22788 #ifdef __CRT_UUID_DECL 22789 __CRT_UUID_DECL(INamespaceWalkCB, 0xd92995f8, 0xcf5e, 0x4a76, 0xbf,0x59, 0xea,0xd3,0x9e,0xa2,0xb9,0x7e) 22790 #endif 22791 #else 22792 typedef struct INamespaceWalkCBVtbl { 22793 BEGIN_INTERFACE 22794 22795 /*** IUnknown methods ***/ 22796 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 22797 INamespaceWalkCB* This, 22798 REFIID riid, 22799 void **ppvObject); 22800 22801 ULONG (STDMETHODCALLTYPE *AddRef)( 22802 INamespaceWalkCB* This); 22803 22804 ULONG (STDMETHODCALLTYPE *Release)( 22805 INamespaceWalkCB* This); 22806 22807 /*** INamespaceWalkCB methods ***/ 22808 HRESULT (STDMETHODCALLTYPE *FoundItem)( 22809 INamespaceWalkCB* This, 22810 IShellFolder *psf, 22811 PCUITEMID_CHILD pidl); 22812 22813 HRESULT (STDMETHODCALLTYPE *EnterFolder)( 22814 INamespaceWalkCB* This, 22815 IShellFolder *psf, 22816 PCUITEMID_CHILD pidl); 22817 22818 HRESULT (STDMETHODCALLTYPE *LeaveFolder)( 22819 INamespaceWalkCB* This, 22820 IShellFolder *psf, 22821 PCUITEMID_CHILD pidl); 22822 22823 HRESULT (STDMETHODCALLTYPE *InitializeProgressDialog)( 22824 INamespaceWalkCB* This, 22825 LPWSTR *ppszTitle, 22826 LPWSTR *ppszCancel); 22827 22828 END_INTERFACE 22829 } INamespaceWalkCBVtbl; 22830 interface INamespaceWalkCB { 22831 CONST_VTBL INamespaceWalkCBVtbl* lpVtbl; 22832 }; 22833 22834 #ifdef COBJMACROS 22835 #ifndef WIDL_C_INLINE_WRAPPERS 22836 /*** IUnknown methods ***/ 22837 #define INamespaceWalkCB_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 22838 #define INamespaceWalkCB_AddRef(This) (This)->lpVtbl->AddRef(This) 22839 #define INamespaceWalkCB_Release(This) (This)->lpVtbl->Release(This) 22840 /*** INamespaceWalkCB methods ***/ 22841 #define INamespaceWalkCB_FoundItem(This,psf,pidl) (This)->lpVtbl->FoundItem(This,psf,pidl) 22842 #define INamespaceWalkCB_EnterFolder(This,psf,pidl) (This)->lpVtbl->EnterFolder(This,psf,pidl) 22843 #define INamespaceWalkCB_LeaveFolder(This,psf,pidl) (This)->lpVtbl->LeaveFolder(This,psf,pidl) 22844 #define INamespaceWalkCB_InitializeProgressDialog(This,ppszTitle,ppszCancel) (This)->lpVtbl->InitializeProgressDialog(This,ppszTitle,ppszCancel) 22845 #else 22846 /*** IUnknown methods ***/ 22847 static FORCEINLINE HRESULT INamespaceWalkCB_QueryInterface(INamespaceWalkCB* This,REFIID riid,void **ppvObject) { 22848 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 22849 } 22850 static FORCEINLINE ULONG INamespaceWalkCB_AddRef(INamespaceWalkCB* This) { 22851 return This->lpVtbl->AddRef(This); 22852 } 22853 static FORCEINLINE ULONG INamespaceWalkCB_Release(INamespaceWalkCB* This) { 22854 return This->lpVtbl->Release(This); 22855 } 22856 /*** INamespaceWalkCB methods ***/ 22857 static FORCEINLINE HRESULT INamespaceWalkCB_FoundItem(INamespaceWalkCB* This,IShellFolder *psf,PCUITEMID_CHILD pidl) { 22858 return This->lpVtbl->FoundItem(This,psf,pidl); 22859 } 22860 static FORCEINLINE HRESULT INamespaceWalkCB_EnterFolder(INamespaceWalkCB* This,IShellFolder *psf,PCUITEMID_CHILD pidl) { 22861 return This->lpVtbl->EnterFolder(This,psf,pidl); 22862 } 22863 static FORCEINLINE HRESULT INamespaceWalkCB_LeaveFolder(INamespaceWalkCB* This,IShellFolder *psf,PCUITEMID_CHILD pidl) { 22864 return This->lpVtbl->LeaveFolder(This,psf,pidl); 22865 } 22866 static FORCEINLINE HRESULT INamespaceWalkCB_InitializeProgressDialog(INamespaceWalkCB* This,LPWSTR *ppszTitle,LPWSTR *ppszCancel) { 22867 return This->lpVtbl->InitializeProgressDialog(This,ppszTitle,ppszCancel); 22868 } 22869 #endif 22870 #endif 22871 22872 #endif 22873 22874 HRESULT STDMETHODCALLTYPE INamespaceWalkCB_FoundItem_Proxy( 22875 INamespaceWalkCB* This, 22876 IShellFolder *psf, 22877 PCUITEMID_CHILD pidl); 22878 void __RPC_STUB INamespaceWalkCB_FoundItem_Stub( 22879 IRpcStubBuffer* This, 22880 IRpcChannelBuffer* pRpcChannelBuffer, 22881 PRPC_MESSAGE pRpcMessage, 22882 DWORD* pdwStubPhase); 22883 HRESULT STDMETHODCALLTYPE INamespaceWalkCB_EnterFolder_Proxy( 22884 INamespaceWalkCB* This, 22885 IShellFolder *psf, 22886 PCUITEMID_CHILD pidl); 22887 void __RPC_STUB INamespaceWalkCB_EnterFolder_Stub( 22888 IRpcStubBuffer* This, 22889 IRpcChannelBuffer* pRpcChannelBuffer, 22890 PRPC_MESSAGE pRpcMessage, 22891 DWORD* pdwStubPhase); 22892 HRESULT STDMETHODCALLTYPE INamespaceWalkCB_LeaveFolder_Proxy( 22893 INamespaceWalkCB* This, 22894 IShellFolder *psf, 22895 PCUITEMID_CHILD pidl); 22896 void __RPC_STUB INamespaceWalkCB_LeaveFolder_Stub( 22897 IRpcStubBuffer* This, 22898 IRpcChannelBuffer* pRpcChannelBuffer, 22899 PRPC_MESSAGE pRpcMessage, 22900 DWORD* pdwStubPhase); 22901 HRESULT STDMETHODCALLTYPE INamespaceWalkCB_InitializeProgressDialog_Proxy( 22902 INamespaceWalkCB* This, 22903 LPWSTR *ppszTitle, 22904 LPWSTR *ppszCancel); 22905 void __RPC_STUB INamespaceWalkCB_InitializeProgressDialog_Stub( 22906 IRpcStubBuffer* This, 22907 IRpcChannelBuffer* pRpcChannelBuffer, 22908 PRPC_MESSAGE pRpcMessage, 22909 DWORD* pdwStubPhase); 22910 22911 #endif /* __INamespaceWalkCB_INTERFACE_DEFINED__ */ 22912 22913 22914 #if _WIN32_IE >= _WIN32_IE_IE70 22915 /***************************************************************************** 22916 * INamespaceWalkCB2 interface 22917 */ 22918 #ifndef __INamespaceWalkCB2_INTERFACE_DEFINED__ 22919 #define __INamespaceWalkCB2_INTERFACE_DEFINED__ 22920 22921 DEFINE_GUID(IID_INamespaceWalkCB2, 0x7ac7492b, 0xc38e, 0x438a, 0x87,0xdb, 0x68,0x73,0x78,0x44,0xff,0x70); 22922 #if defined(__cplusplus) && !defined(CINTERFACE) 22923 MIDL_INTERFACE("7ac7492b-c38e-438a-87db-68737844ff70") 22924 INamespaceWalkCB2 : public INamespaceWalkCB 22925 { 22926 virtual HRESULT STDMETHODCALLTYPE WalkComplete( 22927 HRESULT hr) = 0; 22928 22929 }; 22930 #ifdef __CRT_UUID_DECL 22931 __CRT_UUID_DECL(INamespaceWalkCB2, 0x7ac7492b, 0xc38e, 0x438a, 0x87,0xdb, 0x68,0x73,0x78,0x44,0xff,0x70) 22932 #endif 22933 #else 22934 typedef struct INamespaceWalkCB2Vtbl { 22935 BEGIN_INTERFACE 22936 22937 /*** IUnknown methods ***/ 22938 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 22939 INamespaceWalkCB2* This, 22940 REFIID riid, 22941 void **ppvObject); 22942 22943 ULONG (STDMETHODCALLTYPE *AddRef)( 22944 INamespaceWalkCB2* This); 22945 22946 ULONG (STDMETHODCALLTYPE *Release)( 22947 INamespaceWalkCB2* This); 22948 22949 /*** INamespaceWalkCB methods ***/ 22950 HRESULT (STDMETHODCALLTYPE *FoundItem)( 22951 INamespaceWalkCB2* This, 22952 IShellFolder *psf, 22953 PCUITEMID_CHILD pidl); 22954 22955 HRESULT (STDMETHODCALLTYPE *EnterFolder)( 22956 INamespaceWalkCB2* This, 22957 IShellFolder *psf, 22958 PCUITEMID_CHILD pidl); 22959 22960 HRESULT (STDMETHODCALLTYPE *LeaveFolder)( 22961 INamespaceWalkCB2* This, 22962 IShellFolder *psf, 22963 PCUITEMID_CHILD pidl); 22964 22965 HRESULT (STDMETHODCALLTYPE *InitializeProgressDialog)( 22966 INamespaceWalkCB2* This, 22967 LPWSTR *ppszTitle, 22968 LPWSTR *ppszCancel); 22969 22970 /*** INamespaceWalkCB2 methods ***/ 22971 HRESULT (STDMETHODCALLTYPE *WalkComplete)( 22972 INamespaceWalkCB2* This, 22973 HRESULT hr); 22974 22975 END_INTERFACE 22976 } INamespaceWalkCB2Vtbl; 22977 interface INamespaceWalkCB2 { 22978 CONST_VTBL INamespaceWalkCB2Vtbl* lpVtbl; 22979 }; 22980 22981 #ifdef COBJMACROS 22982 #ifndef WIDL_C_INLINE_WRAPPERS 22983 /*** IUnknown methods ***/ 22984 #define INamespaceWalkCB2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 22985 #define INamespaceWalkCB2_AddRef(This) (This)->lpVtbl->AddRef(This) 22986 #define INamespaceWalkCB2_Release(This) (This)->lpVtbl->Release(This) 22987 /*** INamespaceWalkCB methods ***/ 22988 #define INamespaceWalkCB2_FoundItem(This,psf,pidl) (This)->lpVtbl->FoundItem(This,psf,pidl) 22989 #define INamespaceWalkCB2_EnterFolder(This,psf,pidl) (This)->lpVtbl->EnterFolder(This,psf,pidl) 22990 #define INamespaceWalkCB2_LeaveFolder(This,psf,pidl) (This)->lpVtbl->LeaveFolder(This,psf,pidl) 22991 #define INamespaceWalkCB2_InitializeProgressDialog(This,ppszTitle,ppszCancel) (This)->lpVtbl->InitializeProgressDialog(This,ppszTitle,ppszCancel) 22992 /*** INamespaceWalkCB2 methods ***/ 22993 #define INamespaceWalkCB2_WalkComplete(This,hr) (This)->lpVtbl->WalkComplete(This,hr) 22994 #else 22995 /*** IUnknown methods ***/ 22996 static FORCEINLINE HRESULT INamespaceWalkCB2_QueryInterface(INamespaceWalkCB2* This,REFIID riid,void **ppvObject) { 22997 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 22998 } 22999 static FORCEINLINE ULONG INamespaceWalkCB2_AddRef(INamespaceWalkCB2* This) { 23000 return This->lpVtbl->AddRef(This); 23001 } 23002 static FORCEINLINE ULONG INamespaceWalkCB2_Release(INamespaceWalkCB2* This) { 23003 return This->lpVtbl->Release(This); 23004 } 23005 /*** INamespaceWalkCB methods ***/ 23006 static FORCEINLINE HRESULT INamespaceWalkCB2_FoundItem(INamespaceWalkCB2* This,IShellFolder *psf,PCUITEMID_CHILD pidl) { 23007 return This->lpVtbl->FoundItem(This,psf,pidl); 23008 } 23009 static FORCEINLINE HRESULT INamespaceWalkCB2_EnterFolder(INamespaceWalkCB2* This,IShellFolder *psf,PCUITEMID_CHILD pidl) { 23010 return This->lpVtbl->EnterFolder(This,psf,pidl); 23011 } 23012 static FORCEINLINE HRESULT INamespaceWalkCB2_LeaveFolder(INamespaceWalkCB2* This,IShellFolder *psf,PCUITEMID_CHILD pidl) { 23013 return This->lpVtbl->LeaveFolder(This,psf,pidl); 23014 } 23015 static FORCEINLINE HRESULT INamespaceWalkCB2_InitializeProgressDialog(INamespaceWalkCB2* This,LPWSTR *ppszTitle,LPWSTR *ppszCancel) { 23016 return This->lpVtbl->InitializeProgressDialog(This,ppszTitle,ppszCancel); 23017 } 23018 /*** INamespaceWalkCB2 methods ***/ 23019 static FORCEINLINE HRESULT INamespaceWalkCB2_WalkComplete(INamespaceWalkCB2* This,HRESULT hr) { 23020 return This->lpVtbl->WalkComplete(This,hr); 23021 } 23022 #endif 23023 #endif 23024 23025 #endif 23026 23027 HRESULT STDMETHODCALLTYPE INamespaceWalkCB2_WalkComplete_Proxy( 23028 INamespaceWalkCB2* This, 23029 HRESULT hr); 23030 void __RPC_STUB INamespaceWalkCB2_WalkComplete_Stub( 23031 IRpcStubBuffer* This, 23032 IRpcChannelBuffer* pRpcChannelBuffer, 23033 PRPC_MESSAGE pRpcMessage, 23034 DWORD* pdwStubPhase); 23035 23036 #endif /* __INamespaceWalkCB2_INTERFACE_DEFINED__ */ 23037 23038 #endif 23039 23040 /***************************************************************************** 23041 * INamespaceWalk interface 23042 */ 23043 #ifndef __INamespaceWalk_INTERFACE_DEFINED__ 23044 #define __INamespaceWalk_INTERFACE_DEFINED__ 23045 23046 typedef enum NAMESPACEWALKFLAG { 23047 NSWF_DEFAULT = 0x0, 23048 NSWF_NONE_IMPLIES_ALL = 0x1, 23049 NSWF_ONE_IMPLIES_ALL = 0x2, 23050 NSWF_DONT_TRAVERSE_LINKS = 0x4, 23051 NSWF_DONT_ACCUMULATE_RESULT = 0x8, 23052 NSWF_TRAVERSE_STREAM_JUNCTIONS = 0x10, 23053 NSWF_FILESYSTEM_ONLY = 0x20, 23054 NSWF_SHOW_PROGRESS = 0x40, 23055 NSWF_FLAG_VIEWORDER = 0x80, 23056 NSWF_IGNORE_AUTOPLAY_HIDA = 0x100, 23057 NSWF_ASYNC = 0x200, 23058 NSWF_DONT_RESOLVE_LINKS = 0x400, 23059 NSWF_ACCUMULATE_FOLDERS = 0x800, 23060 NSWF_DONT_SORT = 0x1000, 23061 NSWF_USE_TRANSFER_MEDIUM = 0x2000, 23062 NSWF_DONT_TRAVERSE_STREAM_JUNCTIONS = 0x4000, 23063 NSWF_ANY_IMPLIES_ALL = 0x8000 23064 } NAMESPACEWALKFLAG; 23065 23066 #define NSWF_ENUMERATE_BEST_EFFORT 0x00010000 23067 #define NSWF_TRAVERSE_ONLY_STORAGE 0x00020000 23068 23069 DEFINE_ENUM_FLAG_OPERATORS(NAMESPACEWALKFLAG) 23070 23071 DEFINE_GUID(IID_INamespaceWalk, 0x57ced8a7, 0x3f4a, 0x432c, 0x93,0x50, 0x30,0xf2,0x44,0x83,0xf7,0x4f); 23072 #if defined(__cplusplus) && !defined(CINTERFACE) 23073 MIDL_INTERFACE("57ced8a7-3f4a-432c-9350-30f24483f74f") 23074 INamespaceWalk : public IUnknown 23075 { 23076 virtual HRESULT STDMETHODCALLTYPE Walk( 23077 IUnknown *punkToWalk, 23078 DWORD dwFlags, 23079 int cDepth, 23080 INamespaceWalkCB *pnswcb) = 0; 23081 23082 virtual HRESULT STDMETHODCALLTYPE GetIDArrayResult( 23083 UINT *pcItems, 23084 PIDLIST_ABSOLUTE **prgpidl) = 0; 23085 23086 }; 23087 #ifdef __CRT_UUID_DECL 23088 __CRT_UUID_DECL(INamespaceWalk, 0x57ced8a7, 0x3f4a, 0x432c, 0x93,0x50, 0x30,0xf2,0x44,0x83,0xf7,0x4f) 23089 #endif 23090 #else 23091 typedef struct INamespaceWalkVtbl { 23092 BEGIN_INTERFACE 23093 23094 /*** IUnknown methods ***/ 23095 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 23096 INamespaceWalk* This, 23097 REFIID riid, 23098 void **ppvObject); 23099 23100 ULONG (STDMETHODCALLTYPE *AddRef)( 23101 INamespaceWalk* This); 23102 23103 ULONG (STDMETHODCALLTYPE *Release)( 23104 INamespaceWalk* This); 23105 23106 /*** INamespaceWalk methods ***/ 23107 HRESULT (STDMETHODCALLTYPE *Walk)( 23108 INamespaceWalk* This, 23109 IUnknown *punkToWalk, 23110 DWORD dwFlags, 23111 int cDepth, 23112 INamespaceWalkCB *pnswcb); 23113 23114 HRESULT (STDMETHODCALLTYPE *GetIDArrayResult)( 23115 INamespaceWalk* This, 23116 UINT *pcItems, 23117 PIDLIST_ABSOLUTE **prgpidl); 23118 23119 END_INTERFACE 23120 } INamespaceWalkVtbl; 23121 interface INamespaceWalk { 23122 CONST_VTBL INamespaceWalkVtbl* lpVtbl; 23123 }; 23124 23125 #ifdef COBJMACROS 23126 #ifndef WIDL_C_INLINE_WRAPPERS 23127 /*** IUnknown methods ***/ 23128 #define INamespaceWalk_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 23129 #define INamespaceWalk_AddRef(This) (This)->lpVtbl->AddRef(This) 23130 #define INamespaceWalk_Release(This) (This)->lpVtbl->Release(This) 23131 /*** INamespaceWalk methods ***/ 23132 #define INamespaceWalk_Walk(This,punkToWalk,dwFlags,cDepth,pnswcb) (This)->lpVtbl->Walk(This,punkToWalk,dwFlags,cDepth,pnswcb) 23133 #define INamespaceWalk_GetIDArrayResult(This,pcItems,prgpidl) (This)->lpVtbl->GetIDArrayResult(This,pcItems,prgpidl) 23134 #else 23135 /*** IUnknown methods ***/ 23136 static FORCEINLINE HRESULT INamespaceWalk_QueryInterface(INamespaceWalk* This,REFIID riid,void **ppvObject) { 23137 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 23138 } 23139 static FORCEINLINE ULONG INamespaceWalk_AddRef(INamespaceWalk* This) { 23140 return This->lpVtbl->AddRef(This); 23141 } 23142 static FORCEINLINE ULONG INamespaceWalk_Release(INamespaceWalk* This) { 23143 return This->lpVtbl->Release(This); 23144 } 23145 /*** INamespaceWalk methods ***/ 23146 static FORCEINLINE HRESULT INamespaceWalk_Walk(INamespaceWalk* This,IUnknown *punkToWalk,DWORD dwFlags,int cDepth,INamespaceWalkCB *pnswcb) { 23147 return This->lpVtbl->Walk(This,punkToWalk,dwFlags,cDepth,pnswcb); 23148 } 23149 static FORCEINLINE HRESULT INamespaceWalk_GetIDArrayResult(INamespaceWalk* This,UINT *pcItems,PIDLIST_ABSOLUTE **prgpidl) { 23150 return This->lpVtbl->GetIDArrayResult(This,pcItems,prgpidl); 23151 } 23152 #endif 23153 #endif 23154 23155 #endif 23156 23157 HRESULT STDMETHODCALLTYPE INamespaceWalk_Walk_Proxy( 23158 INamespaceWalk* This, 23159 IUnknown *punkToWalk, 23160 DWORD dwFlags, 23161 int cDepth, 23162 INamespaceWalkCB *pnswcb); 23163 void __RPC_STUB INamespaceWalk_Walk_Stub( 23164 IRpcStubBuffer* This, 23165 IRpcChannelBuffer* pRpcChannelBuffer, 23166 PRPC_MESSAGE pRpcMessage, 23167 DWORD* pdwStubPhase); 23168 HRESULT STDMETHODCALLTYPE INamespaceWalk_GetIDArrayResult_Proxy( 23169 INamespaceWalk* This, 23170 UINT *pcItems, 23171 PIDLIST_ABSOLUTE **prgpidl); 23172 void __RPC_STUB INamespaceWalk_GetIDArrayResult_Stub( 23173 IRpcStubBuffer* This, 23174 IRpcChannelBuffer* pRpcChannelBuffer, 23175 PRPC_MESSAGE pRpcMessage, 23176 DWORD* pdwStubPhase); 23177 23178 #endif /* __INamespaceWalk_INTERFACE_DEFINED__ */ 23179 23180 FreeIDListArray(PIDLIST_RELATIVE * ppidls,UINT cItems)23181 __forceinline void FreeIDListArray(PIDLIST_RELATIVE *ppidls, UINT cItems) { 23182 UINT i; 23183 for (i = 0; i < cItems; i++) { 23184 CoTaskMemFree(ppidls[i]); 23185 } 23186 CoTaskMemFree(ppidls); 23187 } 23188 #if defined(STRICT_TYPED_ITEMIDS) && defined(__cplusplus) FreeIDListArrayFull(PIDLIST_ABSOLUTE * ppidls,UINT cItems)23189 __forceinline void FreeIDListArrayFull(PIDLIST_ABSOLUTE *ppidls, UINT cItems) { 23190 UINT i; 23191 for (i = 0; i < cItems; i++) 23192 CoTaskMemFree(ppidls[i]); 23193 CoTaskMemFree(ppidls); 23194 } FreeIDListArrayChild(PITEMID_CHILD * ppidls,UINT cItems)23195 __forceinline void FreeIDListArrayChild(PITEMID_CHILD *ppidls, UINT cItems) { 23196 UINT i; 23197 for (i = 0; i < cItems; i++) 23198 CoTaskMemFree(ppidls[i]); 23199 CoTaskMemFree(ppidls); 23200 } 23201 #else 23202 #define FreeIDListArrayFull FreeIDListArray 23203 #define FreeIDListArrayChild FreeIDListArray 23204 #endif 23205 23206 #define ACDD_VISIBLE 0x1 23207 23208 /***************************************************************************** 23209 * IAutoCompleteDropDown interface 23210 */ 23211 #ifndef __IAutoCompleteDropDown_INTERFACE_DEFINED__ 23212 #define __IAutoCompleteDropDown_INTERFACE_DEFINED__ 23213 23214 DEFINE_GUID(IID_IAutoCompleteDropDown, 0x3cd141f4, 0x3c6a, 0x11d2, 0xbc,0xaa, 0x00,0xc0,0x4f,0xd9,0x29,0xdb); 23215 #if defined(__cplusplus) && !defined(CINTERFACE) 23216 MIDL_INTERFACE("3cd141f4-3c6a-11d2-bcaa-00c04fd929db") 23217 IAutoCompleteDropDown : public IUnknown 23218 { 23219 virtual HRESULT STDMETHODCALLTYPE GetDropDownStatus( 23220 DWORD *pdwFlags, 23221 LPWSTR *ppwszString) = 0; 23222 23223 virtual HRESULT STDMETHODCALLTYPE ResetEnumerator( 23224 ) = 0; 23225 23226 }; 23227 #ifdef __CRT_UUID_DECL 23228 __CRT_UUID_DECL(IAutoCompleteDropDown, 0x3cd141f4, 0x3c6a, 0x11d2, 0xbc,0xaa, 0x00,0xc0,0x4f,0xd9,0x29,0xdb) 23229 #endif 23230 #else 23231 typedef struct IAutoCompleteDropDownVtbl { 23232 BEGIN_INTERFACE 23233 23234 /*** IUnknown methods ***/ 23235 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 23236 IAutoCompleteDropDown* This, 23237 REFIID riid, 23238 void **ppvObject); 23239 23240 ULONG (STDMETHODCALLTYPE *AddRef)( 23241 IAutoCompleteDropDown* This); 23242 23243 ULONG (STDMETHODCALLTYPE *Release)( 23244 IAutoCompleteDropDown* This); 23245 23246 /*** IAutoCompleteDropDown methods ***/ 23247 HRESULT (STDMETHODCALLTYPE *GetDropDownStatus)( 23248 IAutoCompleteDropDown* This, 23249 DWORD *pdwFlags, 23250 LPWSTR *ppwszString); 23251 23252 HRESULT (STDMETHODCALLTYPE *ResetEnumerator)( 23253 IAutoCompleteDropDown* This); 23254 23255 END_INTERFACE 23256 } IAutoCompleteDropDownVtbl; 23257 interface IAutoCompleteDropDown { 23258 CONST_VTBL IAutoCompleteDropDownVtbl* lpVtbl; 23259 }; 23260 23261 #ifdef COBJMACROS 23262 #ifndef WIDL_C_INLINE_WRAPPERS 23263 /*** IUnknown methods ***/ 23264 #define IAutoCompleteDropDown_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 23265 #define IAutoCompleteDropDown_AddRef(This) (This)->lpVtbl->AddRef(This) 23266 #define IAutoCompleteDropDown_Release(This) (This)->lpVtbl->Release(This) 23267 /*** IAutoCompleteDropDown methods ***/ 23268 #define IAutoCompleteDropDown_GetDropDownStatus(This,pdwFlags,ppwszString) (This)->lpVtbl->GetDropDownStatus(This,pdwFlags,ppwszString) 23269 #define IAutoCompleteDropDown_ResetEnumerator(This) (This)->lpVtbl->ResetEnumerator(This) 23270 #else 23271 /*** IUnknown methods ***/ 23272 static FORCEINLINE HRESULT IAutoCompleteDropDown_QueryInterface(IAutoCompleteDropDown* This,REFIID riid,void **ppvObject) { 23273 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 23274 } 23275 static FORCEINLINE ULONG IAutoCompleteDropDown_AddRef(IAutoCompleteDropDown* This) { 23276 return This->lpVtbl->AddRef(This); 23277 } 23278 static FORCEINLINE ULONG IAutoCompleteDropDown_Release(IAutoCompleteDropDown* This) { 23279 return This->lpVtbl->Release(This); 23280 } 23281 /*** IAutoCompleteDropDown methods ***/ 23282 static FORCEINLINE HRESULT IAutoCompleteDropDown_GetDropDownStatus(IAutoCompleteDropDown* This,DWORD *pdwFlags,LPWSTR *ppwszString) { 23283 return This->lpVtbl->GetDropDownStatus(This,pdwFlags,ppwszString); 23284 } 23285 static FORCEINLINE HRESULT IAutoCompleteDropDown_ResetEnumerator(IAutoCompleteDropDown* This) { 23286 return This->lpVtbl->ResetEnumerator(This); 23287 } 23288 #endif 23289 #endif 23290 23291 #endif 23292 23293 HRESULT STDMETHODCALLTYPE IAutoCompleteDropDown_GetDropDownStatus_Proxy( 23294 IAutoCompleteDropDown* This, 23295 DWORD *pdwFlags, 23296 LPWSTR *ppwszString); 23297 void __RPC_STUB IAutoCompleteDropDown_GetDropDownStatus_Stub( 23298 IRpcStubBuffer* This, 23299 IRpcChannelBuffer* pRpcChannelBuffer, 23300 PRPC_MESSAGE pRpcMessage, 23301 DWORD* pdwStubPhase); 23302 HRESULT STDMETHODCALLTYPE IAutoCompleteDropDown_ResetEnumerator_Proxy( 23303 IAutoCompleteDropDown* This); 23304 void __RPC_STUB IAutoCompleteDropDown_ResetEnumerator_Stub( 23305 IRpcStubBuffer* This, 23306 IRpcChannelBuffer* pRpcChannelBuffer, 23307 PRPC_MESSAGE pRpcMessage, 23308 DWORD* pdwStubPhase); 23309 23310 #endif /* __IAutoCompleteDropDown_INTERFACE_DEFINED__ */ 23311 23312 23313 #include <pshpack8.h> 23314 typedef struct tagBANDSITEINFO { 23315 DWORD dwMask; 23316 DWORD dwState; 23317 DWORD dwStyle; 23318 } BANDSITEINFO; 23319 #include <poppack.h> 23320 enum tagBANDSITECID { 23321 BSID_BANDADDED = 0, 23322 BSID_BANDREMOVED = 1 23323 }; 23324 23325 23326 #define BSIM_STATE 0x00000001 23327 #define BSIM_STYLE 0x00000002 23328 23329 #define BSSF_VISIBLE 0x00000001 23330 #define BSSF_NOTITLE 0x00000002 23331 #define BSSF_UNDELETEABLE 0x00001000 23332 23333 #define BSIS_AUTOGRIPPER 0x00000000 23334 #define BSIS_NOGRIPPER 0x00000001 23335 #define BSIS_ALWAYSGRIPPER 0x00000002 23336 #define BSIS_LEFTALIGN 0x00000004 23337 #define BSIS_SINGLECLICK 0x00000008 23338 #define BSIS_NOCONTEXTMENU 0x00000010 23339 #define BSIS_NODROPTARGET 0x00000020 23340 #define BSIS_NOCAPTION 0x00000040 23341 #define BSIS_PREFERNOLINEBREAK 0x00000080 23342 #define BSIS_LOCKED 0x00000100 23343 #if _WIN32_IE >= _WIN32_IE_IE70 23344 #define BSIS_PRESERVEORDERDURINGLAYOUT 0x00000200 23345 #define BSIS_FIXEDORDER 0x00000400 23346 #endif 23347 23348 #define SID_SBandSite IID_IBandSite 23349 #define CGID_BandSite IID_IBandSite 23350 23351 /***************************************************************************** 23352 * IBandSite interface 23353 */ 23354 #ifndef __IBandSite_INTERFACE_DEFINED__ 23355 #define __IBandSite_INTERFACE_DEFINED__ 23356 23357 DEFINE_GUID(IID_IBandSite, 0x4cf504b0, 0xde96, 0x11d0, 0x8b,0x3f, 0x00,0xa0,0xc9,0x11,0xe8,0xe5); 23358 #if defined(__cplusplus) && !defined(CINTERFACE) 23359 MIDL_INTERFACE("4cf504b0-de96-11d0-8b3f-00a0c911e8e5") 23360 IBandSite : public IUnknown 23361 { 23362 virtual HRESULT STDMETHODCALLTYPE AddBand( 23363 IUnknown *punk) = 0; 23364 23365 virtual HRESULT STDMETHODCALLTYPE EnumBands( 23366 UINT uBand, 23367 DWORD *pdwBandID) = 0; 23368 23369 virtual HRESULT STDMETHODCALLTYPE QueryBand( 23370 DWORD dwBandID, 23371 IDeskBand **ppstb, 23372 DWORD *pdwState, 23373 LPWSTR pszName, 23374 int cchName) = 0; 23375 23376 virtual HRESULT STDMETHODCALLTYPE SetBandState( 23377 DWORD dwBandID, 23378 DWORD dwMask, 23379 DWORD dwState) = 0; 23380 23381 virtual HRESULT STDMETHODCALLTYPE RemoveBand( 23382 DWORD dwBandID) = 0; 23383 23384 virtual HRESULT STDMETHODCALLTYPE GetBandObject( 23385 DWORD dwBandID, 23386 REFIID riid, 23387 void **ppv) = 0; 23388 23389 virtual HRESULT STDMETHODCALLTYPE SetBandSiteInfo( 23390 const BANDSITEINFO *pbsinfo) = 0; 23391 23392 virtual HRESULT STDMETHODCALLTYPE GetBandSiteInfo( 23393 BANDSITEINFO *pbsinfo) = 0; 23394 23395 }; 23396 #ifdef __CRT_UUID_DECL 23397 __CRT_UUID_DECL(IBandSite, 0x4cf504b0, 0xde96, 0x11d0, 0x8b,0x3f, 0x00,0xa0,0xc9,0x11,0xe8,0xe5) 23398 #endif 23399 #else 23400 typedef struct IBandSiteVtbl { 23401 BEGIN_INTERFACE 23402 23403 /*** IUnknown methods ***/ 23404 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 23405 IBandSite* This, 23406 REFIID riid, 23407 void **ppvObject); 23408 23409 ULONG (STDMETHODCALLTYPE *AddRef)( 23410 IBandSite* This); 23411 23412 ULONG (STDMETHODCALLTYPE *Release)( 23413 IBandSite* This); 23414 23415 /*** IBandSite methods ***/ 23416 HRESULT (STDMETHODCALLTYPE *AddBand)( 23417 IBandSite* This, 23418 IUnknown *punk); 23419 23420 HRESULT (STDMETHODCALLTYPE *EnumBands)( 23421 IBandSite* This, 23422 UINT uBand, 23423 DWORD *pdwBandID); 23424 23425 HRESULT (STDMETHODCALLTYPE *QueryBand)( 23426 IBandSite* This, 23427 DWORD dwBandID, 23428 IDeskBand **ppstb, 23429 DWORD *pdwState, 23430 LPWSTR pszName, 23431 int cchName); 23432 23433 HRESULT (STDMETHODCALLTYPE *SetBandState)( 23434 IBandSite* This, 23435 DWORD dwBandID, 23436 DWORD dwMask, 23437 DWORD dwState); 23438 23439 HRESULT (STDMETHODCALLTYPE *RemoveBand)( 23440 IBandSite* This, 23441 DWORD dwBandID); 23442 23443 HRESULT (STDMETHODCALLTYPE *GetBandObject)( 23444 IBandSite* This, 23445 DWORD dwBandID, 23446 REFIID riid, 23447 void **ppv); 23448 23449 HRESULT (STDMETHODCALLTYPE *SetBandSiteInfo)( 23450 IBandSite* This, 23451 const BANDSITEINFO *pbsinfo); 23452 23453 HRESULT (STDMETHODCALLTYPE *GetBandSiteInfo)( 23454 IBandSite* This, 23455 BANDSITEINFO *pbsinfo); 23456 23457 END_INTERFACE 23458 } IBandSiteVtbl; 23459 interface IBandSite { 23460 CONST_VTBL IBandSiteVtbl* lpVtbl; 23461 }; 23462 23463 #ifdef COBJMACROS 23464 #ifndef WIDL_C_INLINE_WRAPPERS 23465 /*** IUnknown methods ***/ 23466 #define IBandSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 23467 #define IBandSite_AddRef(This) (This)->lpVtbl->AddRef(This) 23468 #define IBandSite_Release(This) (This)->lpVtbl->Release(This) 23469 /*** IBandSite methods ***/ 23470 #define IBandSite_AddBand(This,punk) (This)->lpVtbl->AddBand(This,punk) 23471 #define IBandSite_EnumBands(This,uBand,pdwBandID) (This)->lpVtbl->EnumBands(This,uBand,pdwBandID) 23472 #define IBandSite_QueryBand(This,dwBandID,ppstb,pdwState,pszName,cchName) (This)->lpVtbl->QueryBand(This,dwBandID,ppstb,pdwState,pszName,cchName) 23473 #define IBandSite_SetBandState(This,dwBandID,dwMask,dwState) (This)->lpVtbl->SetBandState(This,dwBandID,dwMask,dwState) 23474 #define IBandSite_RemoveBand(This,dwBandID) (This)->lpVtbl->RemoveBand(This,dwBandID) 23475 #define IBandSite_GetBandObject(This,dwBandID,riid,ppv) (This)->lpVtbl->GetBandObject(This,dwBandID,riid,ppv) 23476 #define IBandSite_SetBandSiteInfo(This,pbsinfo) (This)->lpVtbl->SetBandSiteInfo(This,pbsinfo) 23477 #define IBandSite_GetBandSiteInfo(This,pbsinfo) (This)->lpVtbl->GetBandSiteInfo(This,pbsinfo) 23478 #else 23479 /*** IUnknown methods ***/ 23480 static FORCEINLINE HRESULT IBandSite_QueryInterface(IBandSite* This,REFIID riid,void **ppvObject) { 23481 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 23482 } 23483 static FORCEINLINE ULONG IBandSite_AddRef(IBandSite* This) { 23484 return This->lpVtbl->AddRef(This); 23485 } 23486 static FORCEINLINE ULONG IBandSite_Release(IBandSite* This) { 23487 return This->lpVtbl->Release(This); 23488 } 23489 /*** IBandSite methods ***/ 23490 static FORCEINLINE HRESULT IBandSite_AddBand(IBandSite* This,IUnknown *punk) { 23491 return This->lpVtbl->AddBand(This,punk); 23492 } 23493 static FORCEINLINE HRESULT IBandSite_EnumBands(IBandSite* This,UINT uBand,DWORD *pdwBandID) { 23494 return This->lpVtbl->EnumBands(This,uBand,pdwBandID); 23495 } 23496 static FORCEINLINE HRESULT IBandSite_QueryBand(IBandSite* This,DWORD dwBandID,IDeskBand **ppstb,DWORD *pdwState,LPWSTR pszName,int cchName) { 23497 return This->lpVtbl->QueryBand(This,dwBandID,ppstb,pdwState,pszName,cchName); 23498 } 23499 static FORCEINLINE HRESULT IBandSite_SetBandState(IBandSite* This,DWORD dwBandID,DWORD dwMask,DWORD dwState) { 23500 return This->lpVtbl->SetBandState(This,dwBandID,dwMask,dwState); 23501 } 23502 static FORCEINLINE HRESULT IBandSite_RemoveBand(IBandSite* This,DWORD dwBandID) { 23503 return This->lpVtbl->RemoveBand(This,dwBandID); 23504 } 23505 static FORCEINLINE HRESULT IBandSite_GetBandObject(IBandSite* This,DWORD dwBandID,REFIID riid,void **ppv) { 23506 return This->lpVtbl->GetBandObject(This,dwBandID,riid,ppv); 23507 } 23508 static FORCEINLINE HRESULT IBandSite_SetBandSiteInfo(IBandSite* This,const BANDSITEINFO *pbsinfo) { 23509 return This->lpVtbl->SetBandSiteInfo(This,pbsinfo); 23510 } 23511 static FORCEINLINE HRESULT IBandSite_GetBandSiteInfo(IBandSite* This,BANDSITEINFO *pbsinfo) { 23512 return This->lpVtbl->GetBandSiteInfo(This,pbsinfo); 23513 } 23514 #endif 23515 #endif 23516 23517 #endif 23518 23519 HRESULT STDMETHODCALLTYPE IBandSite_AddBand_Proxy( 23520 IBandSite* This, 23521 IUnknown *punk); 23522 void __RPC_STUB IBandSite_AddBand_Stub( 23523 IRpcStubBuffer* This, 23524 IRpcChannelBuffer* pRpcChannelBuffer, 23525 PRPC_MESSAGE pRpcMessage, 23526 DWORD* pdwStubPhase); 23527 HRESULT STDMETHODCALLTYPE IBandSite_EnumBands_Proxy( 23528 IBandSite* This, 23529 UINT uBand, 23530 DWORD *pdwBandID); 23531 void __RPC_STUB IBandSite_EnumBands_Stub( 23532 IRpcStubBuffer* This, 23533 IRpcChannelBuffer* pRpcChannelBuffer, 23534 PRPC_MESSAGE pRpcMessage, 23535 DWORD* pdwStubPhase); 23536 HRESULT STDMETHODCALLTYPE IBandSite_RemoteQueryBand_Proxy( 23537 IBandSite* This, 23538 DWORD dwBandID, 23539 IDeskBand **ppstb, 23540 DWORD *pdwState, 23541 LPWSTR pszName, 23542 int cchName); 23543 void __RPC_STUB IBandSite_RemoteQueryBand_Stub( 23544 IRpcStubBuffer* This, 23545 IRpcChannelBuffer* pRpcChannelBuffer, 23546 PRPC_MESSAGE pRpcMessage, 23547 DWORD* pdwStubPhase); 23548 HRESULT STDMETHODCALLTYPE IBandSite_SetBandState_Proxy( 23549 IBandSite* This, 23550 DWORD dwBandID, 23551 DWORD dwMask, 23552 DWORD dwState); 23553 void __RPC_STUB IBandSite_SetBandState_Stub( 23554 IRpcStubBuffer* This, 23555 IRpcChannelBuffer* pRpcChannelBuffer, 23556 PRPC_MESSAGE pRpcMessage, 23557 DWORD* pdwStubPhase); 23558 HRESULT STDMETHODCALLTYPE IBandSite_RemoveBand_Proxy( 23559 IBandSite* This, 23560 DWORD dwBandID); 23561 void __RPC_STUB IBandSite_RemoveBand_Stub( 23562 IRpcStubBuffer* This, 23563 IRpcChannelBuffer* pRpcChannelBuffer, 23564 PRPC_MESSAGE pRpcMessage, 23565 DWORD* pdwStubPhase); 23566 HRESULT STDMETHODCALLTYPE IBandSite_GetBandObject_Proxy( 23567 IBandSite* This, 23568 DWORD dwBandID, 23569 REFIID riid, 23570 void **ppv); 23571 void __RPC_STUB IBandSite_GetBandObject_Stub( 23572 IRpcStubBuffer* This, 23573 IRpcChannelBuffer* pRpcChannelBuffer, 23574 PRPC_MESSAGE pRpcMessage, 23575 DWORD* pdwStubPhase); 23576 HRESULT STDMETHODCALLTYPE IBandSite_SetBandSiteInfo_Proxy( 23577 IBandSite* This, 23578 const BANDSITEINFO *pbsinfo); 23579 void __RPC_STUB IBandSite_SetBandSiteInfo_Stub( 23580 IRpcStubBuffer* This, 23581 IRpcChannelBuffer* pRpcChannelBuffer, 23582 PRPC_MESSAGE pRpcMessage, 23583 DWORD* pdwStubPhase); 23584 HRESULT STDMETHODCALLTYPE IBandSite_GetBandSiteInfo_Proxy( 23585 IBandSite* This, 23586 BANDSITEINFO *pbsinfo); 23587 void __RPC_STUB IBandSite_GetBandSiteInfo_Stub( 23588 IRpcStubBuffer* This, 23589 IRpcChannelBuffer* pRpcChannelBuffer, 23590 PRPC_MESSAGE pRpcMessage, 23591 DWORD* pdwStubPhase); 23592 HRESULT CALLBACK IBandSite_QueryBand_Proxy( 23593 IBandSite* This, 23594 DWORD dwBandID, 23595 IDeskBand **ppstb, 23596 DWORD *pdwState, 23597 LPWSTR pszName, 23598 int cchName); 23599 HRESULT __RPC_STUB IBandSite_QueryBand_Stub( 23600 IBandSite* This, 23601 DWORD dwBandID, 23602 IDeskBand **ppstb, 23603 DWORD *pdwState, 23604 LPWSTR pszName, 23605 int cchName); 23606 23607 #endif /* __IBandSite_INTERFACE_DEFINED__ */ 23608 23609 23610 /***************************************************************************** 23611 * IModalWindow interface 23612 */ 23613 #ifndef __IModalWindow_INTERFACE_DEFINED__ 23614 #define __IModalWindow_INTERFACE_DEFINED__ 23615 23616 DEFINE_GUID(IID_IModalWindow, 0xb4db1657, 0x70d7, 0x485e, 0x8e,0x3e, 0x6f,0xcb,0x5a,0x5c,0x18,0x02); 23617 #if defined(__cplusplus) && !defined(CINTERFACE) 23618 MIDL_INTERFACE("b4db1657-70d7-485e-8e3e-6fcb5a5c1802") 23619 IModalWindow : public IUnknown 23620 { 23621 virtual HRESULT STDMETHODCALLTYPE Show( 23622 HWND hwndOwner) = 0; 23623 23624 }; 23625 #ifdef __CRT_UUID_DECL 23626 __CRT_UUID_DECL(IModalWindow, 0xb4db1657, 0x70d7, 0x485e, 0x8e,0x3e, 0x6f,0xcb,0x5a,0x5c,0x18,0x02) 23627 #endif 23628 #else 23629 typedef struct IModalWindowVtbl { 23630 BEGIN_INTERFACE 23631 23632 /*** IUnknown methods ***/ 23633 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 23634 IModalWindow* This, 23635 REFIID riid, 23636 void **ppvObject); 23637 23638 ULONG (STDMETHODCALLTYPE *AddRef)( 23639 IModalWindow* This); 23640 23641 ULONG (STDMETHODCALLTYPE *Release)( 23642 IModalWindow* This); 23643 23644 /*** IModalWindow methods ***/ 23645 HRESULT (STDMETHODCALLTYPE *Show)( 23646 IModalWindow* This, 23647 HWND hwndOwner); 23648 23649 END_INTERFACE 23650 } IModalWindowVtbl; 23651 interface IModalWindow { 23652 CONST_VTBL IModalWindowVtbl* lpVtbl; 23653 }; 23654 23655 #ifdef COBJMACROS 23656 #ifndef WIDL_C_INLINE_WRAPPERS 23657 /*** IUnknown methods ***/ 23658 #define IModalWindow_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 23659 #define IModalWindow_AddRef(This) (This)->lpVtbl->AddRef(This) 23660 #define IModalWindow_Release(This) (This)->lpVtbl->Release(This) 23661 /*** IModalWindow methods ***/ 23662 #define IModalWindow_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) 23663 #else 23664 /*** IUnknown methods ***/ 23665 static FORCEINLINE HRESULT IModalWindow_QueryInterface(IModalWindow* This,REFIID riid,void **ppvObject) { 23666 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 23667 } 23668 static FORCEINLINE ULONG IModalWindow_AddRef(IModalWindow* This) { 23669 return This->lpVtbl->AddRef(This); 23670 } 23671 static FORCEINLINE ULONG IModalWindow_Release(IModalWindow* This) { 23672 return This->lpVtbl->Release(This); 23673 } 23674 /*** IModalWindow methods ***/ 23675 static FORCEINLINE HRESULT IModalWindow_Show(IModalWindow* This,HWND hwndOwner) { 23676 return This->lpVtbl->Show(This,hwndOwner); 23677 } 23678 #endif 23679 #endif 23680 23681 #endif 23682 23683 HRESULT STDMETHODCALLTYPE IModalWindow_RemoteShow_Proxy( 23684 IModalWindow* This, 23685 HWND hwndOwner); 23686 void __RPC_STUB IModalWindow_RemoteShow_Stub( 23687 IRpcStubBuffer* This, 23688 IRpcChannelBuffer* pRpcChannelBuffer, 23689 PRPC_MESSAGE pRpcMessage, 23690 DWORD* pdwStubPhase); 23691 HRESULT CALLBACK IModalWindow_Show_Proxy( 23692 IModalWindow* This, 23693 HWND hwndOwner); 23694 HRESULT __RPC_STUB IModalWindow_Show_Stub( 23695 IModalWindow* This, 23696 HWND hwndOwner); 23697 23698 #endif /* __IModalWindow_INTERFACE_DEFINED__ */ 23699 23700 23701 #define PROPSTR_EXTENSIONCOMPLETIONSTATE L"ExtensionCompletionState" 23702 23703 enum tagCDBURNINGEXTENSIONRET { 23704 CDBE_RET_DEFAULT = 0x0, 23705 CDBE_RET_DONTRUNOTHEREXTS = 0x1, 23706 CDBE_RET_STOPWIZARD = 0x2 23707 }; 23708 23709 23710 #define SID_CDWizardHost IID_ICDBurnExt 23711 23712 enum _CDBE_ACTIONS { 23713 CDBE_TYPE_MUSIC = 0x1, 23714 CDBE_TYPE_DATA = 0x2, 23715 CDBE_TYPE_ALL = (int)0xffffffff 23716 }; 23717 23718 23719 typedef DWORD CDBE_ACTIONS; 23720 23721 /***************************************************************************** 23722 * ICDBurnExt interface 23723 */ 23724 #ifndef __ICDBurnExt_INTERFACE_DEFINED__ 23725 #define __ICDBurnExt_INTERFACE_DEFINED__ 23726 23727 DEFINE_GUID(IID_ICDBurnExt, 0x2271dcca, 0x74fc, 0x4414, 0x8f,0xb7, 0xc5,0x6b,0x05,0xac,0xe2,0xd7); 23728 #if defined(__cplusplus) && !defined(CINTERFACE) 23729 MIDL_INTERFACE("2271dcca-74fc-4414-8fb7-c56b05ace2d7") 23730 ICDBurnExt : public IUnknown 23731 { 23732 virtual HRESULT STDMETHODCALLTYPE GetSupportedActionTypes( 23733 CDBE_ACTIONS *pdwActions) = 0; 23734 23735 }; 23736 #ifdef __CRT_UUID_DECL 23737 __CRT_UUID_DECL(ICDBurnExt, 0x2271dcca, 0x74fc, 0x4414, 0x8f,0xb7, 0xc5,0x6b,0x05,0xac,0xe2,0xd7) 23738 #endif 23739 #else 23740 typedef struct ICDBurnExtVtbl { 23741 BEGIN_INTERFACE 23742 23743 /*** IUnknown methods ***/ 23744 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 23745 ICDBurnExt* This, 23746 REFIID riid, 23747 void **ppvObject); 23748 23749 ULONG (STDMETHODCALLTYPE *AddRef)( 23750 ICDBurnExt* This); 23751 23752 ULONG (STDMETHODCALLTYPE *Release)( 23753 ICDBurnExt* This); 23754 23755 /*** ICDBurnExt methods ***/ 23756 HRESULT (STDMETHODCALLTYPE *GetSupportedActionTypes)( 23757 ICDBurnExt* This, 23758 CDBE_ACTIONS *pdwActions); 23759 23760 END_INTERFACE 23761 } ICDBurnExtVtbl; 23762 interface ICDBurnExt { 23763 CONST_VTBL ICDBurnExtVtbl* lpVtbl; 23764 }; 23765 23766 #ifdef COBJMACROS 23767 #ifndef WIDL_C_INLINE_WRAPPERS 23768 /*** IUnknown methods ***/ 23769 #define ICDBurnExt_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 23770 #define ICDBurnExt_AddRef(This) (This)->lpVtbl->AddRef(This) 23771 #define ICDBurnExt_Release(This) (This)->lpVtbl->Release(This) 23772 /*** ICDBurnExt methods ***/ 23773 #define ICDBurnExt_GetSupportedActionTypes(This,pdwActions) (This)->lpVtbl->GetSupportedActionTypes(This,pdwActions) 23774 #else 23775 /*** IUnknown methods ***/ 23776 static FORCEINLINE HRESULT ICDBurnExt_QueryInterface(ICDBurnExt* This,REFIID riid,void **ppvObject) { 23777 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 23778 } 23779 static FORCEINLINE ULONG ICDBurnExt_AddRef(ICDBurnExt* This) { 23780 return This->lpVtbl->AddRef(This); 23781 } 23782 static FORCEINLINE ULONG ICDBurnExt_Release(ICDBurnExt* This) { 23783 return This->lpVtbl->Release(This); 23784 } 23785 /*** ICDBurnExt methods ***/ 23786 static FORCEINLINE HRESULT ICDBurnExt_GetSupportedActionTypes(ICDBurnExt* This,CDBE_ACTIONS *pdwActions) { 23787 return This->lpVtbl->GetSupportedActionTypes(This,pdwActions); 23788 } 23789 #endif 23790 #endif 23791 23792 #endif 23793 23794 HRESULT STDMETHODCALLTYPE ICDBurnExt_GetSupportedActionTypes_Proxy( 23795 ICDBurnExt* This, 23796 CDBE_ACTIONS *pdwActions); 23797 void __RPC_STUB ICDBurnExt_GetSupportedActionTypes_Stub( 23798 IRpcStubBuffer* This, 23799 IRpcChannelBuffer* pRpcChannelBuffer, 23800 PRPC_MESSAGE pRpcMessage, 23801 DWORD* pdwStubPhase); 23802 23803 #endif /* __ICDBurnExt_INTERFACE_DEFINED__ */ 23804 23805 23806 /***************************************************************************** 23807 * IContextMenuSite interface 23808 */ 23809 #ifndef __IContextMenuSite_INTERFACE_DEFINED__ 23810 #define __IContextMenuSite_INTERFACE_DEFINED__ 23811 23812 DEFINE_GUID(IID_IContextMenuSite, 0x0811aebe, 0x0b87, 0x4c54, 0x9e,0x72, 0x54,0x8c,0xf6,0x49,0x01,0x6b); 23813 #if defined(__cplusplus) && !defined(CINTERFACE) 23814 MIDL_INTERFACE("0811aebe-0b87-4c54-9e72-548cf649016b") 23815 IContextMenuSite : public IUnknown 23816 { 23817 virtual HRESULT STDMETHODCALLTYPE DoContextMenuPopup( 23818 IUnknown *punkContextMenu, 23819 UINT fFlags, 23820 POINT pt) = 0; 23821 23822 }; 23823 #ifdef __CRT_UUID_DECL 23824 __CRT_UUID_DECL(IContextMenuSite, 0x0811aebe, 0x0b87, 0x4c54, 0x9e,0x72, 0x54,0x8c,0xf6,0x49,0x01,0x6b) 23825 #endif 23826 #else 23827 typedef struct IContextMenuSiteVtbl { 23828 BEGIN_INTERFACE 23829 23830 /*** IUnknown methods ***/ 23831 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 23832 IContextMenuSite* This, 23833 REFIID riid, 23834 void **ppvObject); 23835 23836 ULONG (STDMETHODCALLTYPE *AddRef)( 23837 IContextMenuSite* This); 23838 23839 ULONG (STDMETHODCALLTYPE *Release)( 23840 IContextMenuSite* This); 23841 23842 /*** IContextMenuSite methods ***/ 23843 HRESULT (STDMETHODCALLTYPE *DoContextMenuPopup)( 23844 IContextMenuSite* This, 23845 IUnknown *punkContextMenu, 23846 UINT fFlags, 23847 POINT pt); 23848 23849 END_INTERFACE 23850 } IContextMenuSiteVtbl; 23851 interface IContextMenuSite { 23852 CONST_VTBL IContextMenuSiteVtbl* lpVtbl; 23853 }; 23854 23855 #ifdef COBJMACROS 23856 #ifndef WIDL_C_INLINE_WRAPPERS 23857 /*** IUnknown methods ***/ 23858 #define IContextMenuSite_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 23859 #define IContextMenuSite_AddRef(This) (This)->lpVtbl->AddRef(This) 23860 #define IContextMenuSite_Release(This) (This)->lpVtbl->Release(This) 23861 /*** IContextMenuSite methods ***/ 23862 #define IContextMenuSite_DoContextMenuPopup(This,punkContextMenu,fFlags,pt) (This)->lpVtbl->DoContextMenuPopup(This,punkContextMenu,fFlags,pt) 23863 #else 23864 /*** IUnknown methods ***/ 23865 static FORCEINLINE HRESULT IContextMenuSite_QueryInterface(IContextMenuSite* This,REFIID riid,void **ppvObject) { 23866 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 23867 } 23868 static FORCEINLINE ULONG IContextMenuSite_AddRef(IContextMenuSite* This) { 23869 return This->lpVtbl->AddRef(This); 23870 } 23871 static FORCEINLINE ULONG IContextMenuSite_Release(IContextMenuSite* This) { 23872 return This->lpVtbl->Release(This); 23873 } 23874 /*** IContextMenuSite methods ***/ 23875 static FORCEINLINE HRESULT IContextMenuSite_DoContextMenuPopup(IContextMenuSite* This,IUnknown *punkContextMenu,UINT fFlags,POINT pt) { 23876 return This->lpVtbl->DoContextMenuPopup(This,punkContextMenu,fFlags,pt); 23877 } 23878 #endif 23879 #endif 23880 23881 #endif 23882 23883 HRESULT STDMETHODCALLTYPE IContextMenuSite_DoContextMenuPopup_Proxy( 23884 IContextMenuSite* This, 23885 IUnknown *punkContextMenu, 23886 UINT fFlags, 23887 POINT pt); 23888 void __RPC_STUB IContextMenuSite_DoContextMenuPopup_Stub( 23889 IRpcStubBuffer* This, 23890 IRpcChannelBuffer* pRpcChannelBuffer, 23891 PRPC_MESSAGE pRpcMessage, 23892 DWORD* pdwStubPhase); 23893 23894 #endif /* __IContextMenuSite_INTERFACE_DEFINED__ */ 23895 23896 23897 /***************************************************************************** 23898 * IEnumReadyCallback interface 23899 */ 23900 #ifndef __IEnumReadyCallback_INTERFACE_DEFINED__ 23901 #define __IEnumReadyCallback_INTERFACE_DEFINED__ 23902 23903 DEFINE_GUID(IID_IEnumReadyCallback, 0x61e00d45, 0x8fff, 0x4e60, 0x92,0x4e, 0x65,0x37,0xb6,0x16,0x12,0xdd); 23904 #if defined(__cplusplus) && !defined(CINTERFACE) 23905 MIDL_INTERFACE("61e00d45-8fff-4e60-924e-6537b61612dd") 23906 IEnumReadyCallback : public IUnknown 23907 { 23908 virtual HRESULT STDMETHODCALLTYPE EnumReady( 23909 ) = 0; 23910 23911 }; 23912 #ifdef __CRT_UUID_DECL 23913 __CRT_UUID_DECL(IEnumReadyCallback, 0x61e00d45, 0x8fff, 0x4e60, 0x92,0x4e, 0x65,0x37,0xb6,0x16,0x12,0xdd) 23914 #endif 23915 #else 23916 typedef struct IEnumReadyCallbackVtbl { 23917 BEGIN_INTERFACE 23918 23919 /*** IUnknown methods ***/ 23920 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 23921 IEnumReadyCallback* This, 23922 REFIID riid, 23923 void **ppvObject); 23924 23925 ULONG (STDMETHODCALLTYPE *AddRef)( 23926 IEnumReadyCallback* This); 23927 23928 ULONG (STDMETHODCALLTYPE *Release)( 23929 IEnumReadyCallback* This); 23930 23931 /*** IEnumReadyCallback methods ***/ 23932 HRESULT (STDMETHODCALLTYPE *EnumReady)( 23933 IEnumReadyCallback* This); 23934 23935 END_INTERFACE 23936 } IEnumReadyCallbackVtbl; 23937 interface IEnumReadyCallback { 23938 CONST_VTBL IEnumReadyCallbackVtbl* lpVtbl; 23939 }; 23940 23941 #ifdef COBJMACROS 23942 #ifndef WIDL_C_INLINE_WRAPPERS 23943 /*** IUnknown methods ***/ 23944 #define IEnumReadyCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 23945 #define IEnumReadyCallback_AddRef(This) (This)->lpVtbl->AddRef(This) 23946 #define IEnumReadyCallback_Release(This) (This)->lpVtbl->Release(This) 23947 /*** IEnumReadyCallback methods ***/ 23948 #define IEnumReadyCallback_EnumReady(This) (This)->lpVtbl->EnumReady(This) 23949 #else 23950 /*** IUnknown methods ***/ 23951 static FORCEINLINE HRESULT IEnumReadyCallback_QueryInterface(IEnumReadyCallback* This,REFIID riid,void **ppvObject) { 23952 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 23953 } 23954 static FORCEINLINE ULONG IEnumReadyCallback_AddRef(IEnumReadyCallback* This) { 23955 return This->lpVtbl->AddRef(This); 23956 } 23957 static FORCEINLINE ULONG IEnumReadyCallback_Release(IEnumReadyCallback* This) { 23958 return This->lpVtbl->Release(This); 23959 } 23960 /*** IEnumReadyCallback methods ***/ 23961 static FORCEINLINE HRESULT IEnumReadyCallback_EnumReady(IEnumReadyCallback* This) { 23962 return This->lpVtbl->EnumReady(This); 23963 } 23964 #endif 23965 #endif 23966 23967 #endif 23968 23969 HRESULT STDMETHODCALLTYPE IEnumReadyCallback_EnumReady_Proxy( 23970 IEnumReadyCallback* This); 23971 void __RPC_STUB IEnumReadyCallback_EnumReady_Stub( 23972 IRpcStubBuffer* This, 23973 IRpcChannelBuffer* pRpcChannelBuffer, 23974 PRPC_MESSAGE pRpcMessage, 23975 DWORD* pdwStubPhase); 23976 23977 #endif /* __IEnumReadyCallback_INTERFACE_DEFINED__ */ 23978 23979 23980 /***************************************************************************** 23981 * IEnumerableView interface 23982 */ 23983 #ifndef __IEnumerableView_INTERFACE_DEFINED__ 23984 #define __IEnumerableView_INTERFACE_DEFINED__ 23985 23986 DEFINE_GUID(IID_IEnumerableView, 0x8c8bf236, 0x1aec, 0x495f, 0x98,0x94, 0x91,0xd5,0x7c,0x3c,0x68,0x6f); 23987 #if defined(__cplusplus) && !defined(CINTERFACE) 23988 MIDL_INTERFACE("8c8bf236-1aec-495f-9894-91d57c3c686f") 23989 IEnumerableView : public IUnknown 23990 { 23991 virtual HRESULT STDMETHODCALLTYPE SetEnumReadyCallback( 23992 IEnumReadyCallback *percb) = 0; 23993 23994 virtual HRESULT STDMETHODCALLTYPE CreateEnumIDListFromContents( 23995 PCIDLIST_ABSOLUTE pidlFolder, 23996 DWORD dwEnumFlags, 23997 IEnumIDList **ppEnumIDList) = 0; 23998 23999 }; 24000 #ifdef __CRT_UUID_DECL 24001 __CRT_UUID_DECL(IEnumerableView, 0x8c8bf236, 0x1aec, 0x495f, 0x98,0x94, 0x91,0xd5,0x7c,0x3c,0x68,0x6f) 24002 #endif 24003 #else 24004 typedef struct IEnumerableViewVtbl { 24005 BEGIN_INTERFACE 24006 24007 /*** IUnknown methods ***/ 24008 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 24009 IEnumerableView* This, 24010 REFIID riid, 24011 void **ppvObject); 24012 24013 ULONG (STDMETHODCALLTYPE *AddRef)( 24014 IEnumerableView* This); 24015 24016 ULONG (STDMETHODCALLTYPE *Release)( 24017 IEnumerableView* This); 24018 24019 /*** IEnumerableView methods ***/ 24020 HRESULT (STDMETHODCALLTYPE *SetEnumReadyCallback)( 24021 IEnumerableView* This, 24022 IEnumReadyCallback *percb); 24023 24024 HRESULT (STDMETHODCALLTYPE *CreateEnumIDListFromContents)( 24025 IEnumerableView* This, 24026 PCIDLIST_ABSOLUTE pidlFolder, 24027 DWORD dwEnumFlags, 24028 IEnumIDList **ppEnumIDList); 24029 24030 END_INTERFACE 24031 } IEnumerableViewVtbl; 24032 interface IEnumerableView { 24033 CONST_VTBL IEnumerableViewVtbl* lpVtbl; 24034 }; 24035 24036 #ifdef COBJMACROS 24037 #ifndef WIDL_C_INLINE_WRAPPERS 24038 /*** IUnknown methods ***/ 24039 #define IEnumerableView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 24040 #define IEnumerableView_AddRef(This) (This)->lpVtbl->AddRef(This) 24041 #define IEnumerableView_Release(This) (This)->lpVtbl->Release(This) 24042 /*** IEnumerableView methods ***/ 24043 #define IEnumerableView_SetEnumReadyCallback(This,percb) (This)->lpVtbl->SetEnumReadyCallback(This,percb) 24044 #define IEnumerableView_CreateEnumIDListFromContents(This,pidlFolder,dwEnumFlags,ppEnumIDList) (This)->lpVtbl->CreateEnumIDListFromContents(This,pidlFolder,dwEnumFlags,ppEnumIDList) 24045 #else 24046 /*** IUnknown methods ***/ 24047 static FORCEINLINE HRESULT IEnumerableView_QueryInterface(IEnumerableView* This,REFIID riid,void **ppvObject) { 24048 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 24049 } 24050 static FORCEINLINE ULONG IEnumerableView_AddRef(IEnumerableView* This) { 24051 return This->lpVtbl->AddRef(This); 24052 } 24053 static FORCEINLINE ULONG IEnumerableView_Release(IEnumerableView* This) { 24054 return This->lpVtbl->Release(This); 24055 } 24056 /*** IEnumerableView methods ***/ 24057 static FORCEINLINE HRESULT IEnumerableView_SetEnumReadyCallback(IEnumerableView* This,IEnumReadyCallback *percb) { 24058 return This->lpVtbl->SetEnumReadyCallback(This,percb); 24059 } 24060 static FORCEINLINE HRESULT IEnumerableView_CreateEnumIDListFromContents(IEnumerableView* This,PCIDLIST_ABSOLUTE pidlFolder,DWORD dwEnumFlags,IEnumIDList **ppEnumIDList) { 24061 return This->lpVtbl->CreateEnumIDListFromContents(This,pidlFolder,dwEnumFlags,ppEnumIDList); 24062 } 24063 #endif 24064 #endif 24065 24066 #endif 24067 24068 HRESULT STDMETHODCALLTYPE IEnumerableView_SetEnumReadyCallback_Proxy( 24069 IEnumerableView* This, 24070 IEnumReadyCallback *percb); 24071 void __RPC_STUB IEnumerableView_SetEnumReadyCallback_Stub( 24072 IRpcStubBuffer* This, 24073 IRpcChannelBuffer* pRpcChannelBuffer, 24074 PRPC_MESSAGE pRpcMessage, 24075 DWORD* pdwStubPhase); 24076 HRESULT STDMETHODCALLTYPE IEnumerableView_CreateEnumIDListFromContents_Proxy( 24077 IEnumerableView* This, 24078 PCIDLIST_ABSOLUTE pidlFolder, 24079 DWORD dwEnumFlags, 24080 IEnumIDList **ppEnumIDList); 24081 void __RPC_STUB IEnumerableView_CreateEnumIDListFromContents_Stub( 24082 IRpcStubBuffer* This, 24083 IRpcChannelBuffer* pRpcChannelBuffer, 24084 PRPC_MESSAGE pRpcMessage, 24085 DWORD* pdwStubPhase); 24086 24087 #endif /* __IEnumerableView_INTERFACE_DEFINED__ */ 24088 24089 24090 #define SID_EnumerableView IID_IEnumerableView 24091 24092 /***************************************************************************** 24093 * IInsertItem interface 24094 */ 24095 #ifndef __IInsertItem_INTERFACE_DEFINED__ 24096 #define __IInsertItem_INTERFACE_DEFINED__ 24097 24098 DEFINE_GUID(IID_IInsertItem, 0xd2b57227, 0x3d23, 0x4b95, 0x93,0xc0, 0x49,0x2b,0xd4,0x54,0xc3,0x56); 24099 #if defined(__cplusplus) && !defined(CINTERFACE) 24100 MIDL_INTERFACE("d2b57227-3d23-4b95-93c0-492bd454c356") 24101 IInsertItem : public IUnknown 24102 { 24103 virtual HRESULT STDMETHODCALLTYPE InsertItem( 24104 PCUIDLIST_RELATIVE pidl) = 0; 24105 24106 }; 24107 #ifdef __CRT_UUID_DECL 24108 __CRT_UUID_DECL(IInsertItem, 0xd2b57227, 0x3d23, 0x4b95, 0x93,0xc0, 0x49,0x2b,0xd4,0x54,0xc3,0x56) 24109 #endif 24110 #else 24111 typedef struct IInsertItemVtbl { 24112 BEGIN_INTERFACE 24113 24114 /*** IUnknown methods ***/ 24115 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 24116 IInsertItem* This, 24117 REFIID riid, 24118 void **ppvObject); 24119 24120 ULONG (STDMETHODCALLTYPE *AddRef)( 24121 IInsertItem* This); 24122 24123 ULONG (STDMETHODCALLTYPE *Release)( 24124 IInsertItem* This); 24125 24126 /*** IInsertItem methods ***/ 24127 HRESULT (STDMETHODCALLTYPE *InsertItem)( 24128 IInsertItem* This, 24129 PCUIDLIST_RELATIVE pidl); 24130 24131 END_INTERFACE 24132 } IInsertItemVtbl; 24133 interface IInsertItem { 24134 CONST_VTBL IInsertItemVtbl* lpVtbl; 24135 }; 24136 24137 #ifdef COBJMACROS 24138 #ifndef WIDL_C_INLINE_WRAPPERS 24139 /*** IUnknown methods ***/ 24140 #define IInsertItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 24141 #define IInsertItem_AddRef(This) (This)->lpVtbl->AddRef(This) 24142 #define IInsertItem_Release(This) (This)->lpVtbl->Release(This) 24143 /*** IInsertItem methods ***/ 24144 #define IInsertItem_InsertItem(This,pidl) (This)->lpVtbl->InsertItem(This,pidl) 24145 #else 24146 /*** IUnknown methods ***/ 24147 static FORCEINLINE HRESULT IInsertItem_QueryInterface(IInsertItem* This,REFIID riid,void **ppvObject) { 24148 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 24149 } 24150 static FORCEINLINE ULONG IInsertItem_AddRef(IInsertItem* This) { 24151 return This->lpVtbl->AddRef(This); 24152 } 24153 static FORCEINLINE ULONG IInsertItem_Release(IInsertItem* This) { 24154 return This->lpVtbl->Release(This); 24155 } 24156 /*** IInsertItem methods ***/ 24157 static FORCEINLINE HRESULT IInsertItem_InsertItem(IInsertItem* This,PCUIDLIST_RELATIVE pidl) { 24158 return This->lpVtbl->InsertItem(This,pidl); 24159 } 24160 #endif 24161 #endif 24162 24163 #endif 24164 24165 HRESULT STDMETHODCALLTYPE IInsertItem_InsertItem_Proxy( 24166 IInsertItem* This, 24167 PCUIDLIST_RELATIVE pidl); 24168 void __RPC_STUB IInsertItem_InsertItem_Stub( 24169 IRpcStubBuffer* This, 24170 IRpcChannelBuffer* pRpcChannelBuffer, 24171 PRPC_MESSAGE pRpcMessage, 24172 DWORD* pdwStubPhase); 24173 24174 #endif /* __IInsertItem_INTERFACE_DEFINED__ */ 24175 24176 24177 /***************************************************************************** 24178 * IMenuBand interface 24179 */ 24180 #ifndef __IMenuBand_INTERFACE_DEFINED__ 24181 #define __IMenuBand_INTERFACE_DEFINED__ 24182 24183 enum tagMENUBANDHANDLERCID { 24184 MBHANDCID_PIDLSELECT = 0 24185 }; 24186 24187 24188 DEFINE_GUID(IID_IMenuBand, 0x568804cd, 0xcbd7, 0x11d0, 0x98,0x16, 0x00,0xc0,0x4f,0xd9,0x19,0x72); 24189 #if defined(__cplusplus) && !defined(CINTERFACE) 24190 MIDL_INTERFACE("568804cd-cbd7-11d0-9816-00c04fd91972") 24191 IMenuBand : public IUnknown 24192 { 24193 virtual HRESULT STDMETHODCALLTYPE IsMenuMessage( 24194 MSG *pmsg) = 0; 24195 24196 virtual HRESULT STDMETHODCALLTYPE TranslateMenuMessage( 24197 MSG *pmsg, 24198 LRESULT *plRet) = 0; 24199 24200 }; 24201 #ifdef __CRT_UUID_DECL 24202 __CRT_UUID_DECL(IMenuBand, 0x568804cd, 0xcbd7, 0x11d0, 0x98,0x16, 0x00,0xc0,0x4f,0xd9,0x19,0x72) 24203 #endif 24204 #else 24205 typedef struct IMenuBandVtbl { 24206 BEGIN_INTERFACE 24207 24208 /*** IUnknown methods ***/ 24209 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 24210 IMenuBand* This, 24211 REFIID riid, 24212 void **ppvObject); 24213 24214 ULONG (STDMETHODCALLTYPE *AddRef)( 24215 IMenuBand* This); 24216 24217 ULONG (STDMETHODCALLTYPE *Release)( 24218 IMenuBand* This); 24219 24220 /*** IMenuBand methods ***/ 24221 HRESULT (STDMETHODCALLTYPE *IsMenuMessage)( 24222 IMenuBand* This, 24223 MSG *pmsg); 24224 24225 HRESULT (STDMETHODCALLTYPE *TranslateMenuMessage)( 24226 IMenuBand* This, 24227 MSG *pmsg, 24228 LRESULT *plRet); 24229 24230 END_INTERFACE 24231 } IMenuBandVtbl; 24232 interface IMenuBand { 24233 CONST_VTBL IMenuBandVtbl* lpVtbl; 24234 }; 24235 24236 #ifdef COBJMACROS 24237 #ifndef WIDL_C_INLINE_WRAPPERS 24238 /*** IUnknown methods ***/ 24239 #define IMenuBand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 24240 #define IMenuBand_AddRef(This) (This)->lpVtbl->AddRef(This) 24241 #define IMenuBand_Release(This) (This)->lpVtbl->Release(This) 24242 /*** IMenuBand methods ***/ 24243 #define IMenuBand_IsMenuMessage(This,pmsg) (This)->lpVtbl->IsMenuMessage(This,pmsg) 24244 #define IMenuBand_TranslateMenuMessage(This,pmsg,plRet) (This)->lpVtbl->TranslateMenuMessage(This,pmsg,plRet) 24245 #else 24246 /*** IUnknown methods ***/ 24247 static FORCEINLINE HRESULT IMenuBand_QueryInterface(IMenuBand* This,REFIID riid,void **ppvObject) { 24248 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 24249 } 24250 static FORCEINLINE ULONG IMenuBand_AddRef(IMenuBand* This) { 24251 return This->lpVtbl->AddRef(This); 24252 } 24253 static FORCEINLINE ULONG IMenuBand_Release(IMenuBand* This) { 24254 return This->lpVtbl->Release(This); 24255 } 24256 /*** IMenuBand methods ***/ 24257 static FORCEINLINE HRESULT IMenuBand_IsMenuMessage(IMenuBand* This,MSG *pmsg) { 24258 return This->lpVtbl->IsMenuMessage(This,pmsg); 24259 } 24260 static FORCEINLINE HRESULT IMenuBand_TranslateMenuMessage(IMenuBand* This,MSG *pmsg,LRESULT *plRet) { 24261 return This->lpVtbl->TranslateMenuMessage(This,pmsg,plRet); 24262 } 24263 #endif 24264 #endif 24265 24266 #endif 24267 24268 HRESULT STDMETHODCALLTYPE IMenuBand_IsMenuMessage_Proxy( 24269 IMenuBand* This, 24270 MSG *pmsg); 24271 void __RPC_STUB IMenuBand_IsMenuMessage_Stub( 24272 IRpcStubBuffer* This, 24273 IRpcChannelBuffer* pRpcChannelBuffer, 24274 PRPC_MESSAGE pRpcMessage, 24275 DWORD* pdwStubPhase); 24276 HRESULT STDMETHODCALLTYPE IMenuBand_TranslateMenuMessage_Proxy( 24277 IMenuBand* This, 24278 MSG *pmsg, 24279 LRESULT *plRet); 24280 void __RPC_STUB IMenuBand_TranslateMenuMessage_Stub( 24281 IRpcStubBuffer* This, 24282 IRpcChannelBuffer* pRpcChannelBuffer, 24283 PRPC_MESSAGE pRpcMessage, 24284 DWORD* pdwStubPhase); 24285 24286 #endif /* __IMenuBand_INTERFACE_DEFINED__ */ 24287 24288 24289 /***************************************************************************** 24290 * IFolderBandPriv interface 24291 */ 24292 #ifndef __IFolderBandPriv_INTERFACE_DEFINED__ 24293 #define __IFolderBandPriv_INTERFACE_DEFINED__ 24294 24295 DEFINE_GUID(IID_IFolderBandPriv, 0x47c01f95, 0xe185, 0x412c, 0xb5,0xc5, 0x4f,0x27,0xdf,0x96,0x5a,0xea); 24296 #if defined(__cplusplus) && !defined(CINTERFACE) 24297 MIDL_INTERFACE("47c01f95-e185-412c-b5c5-4f27df965aea") 24298 IFolderBandPriv : public IUnknown 24299 { 24300 virtual HRESULT STDMETHODCALLTYPE SetCascade( 24301 WINBOOL fCascade) = 0; 24302 24303 virtual HRESULT STDMETHODCALLTYPE SetAccelerators( 24304 WINBOOL fAccelerators) = 0; 24305 24306 virtual HRESULT STDMETHODCALLTYPE SetNoIcons( 24307 WINBOOL fNoIcons) = 0; 24308 24309 virtual HRESULT STDMETHODCALLTYPE SetNoText( 24310 WINBOOL fNoText) = 0; 24311 24312 }; 24313 #ifdef __CRT_UUID_DECL 24314 __CRT_UUID_DECL(IFolderBandPriv, 0x47c01f95, 0xe185, 0x412c, 0xb5,0xc5, 0x4f,0x27,0xdf,0x96,0x5a,0xea) 24315 #endif 24316 #else 24317 typedef struct IFolderBandPrivVtbl { 24318 BEGIN_INTERFACE 24319 24320 /*** IUnknown methods ***/ 24321 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 24322 IFolderBandPriv* This, 24323 REFIID riid, 24324 void **ppvObject); 24325 24326 ULONG (STDMETHODCALLTYPE *AddRef)( 24327 IFolderBandPriv* This); 24328 24329 ULONG (STDMETHODCALLTYPE *Release)( 24330 IFolderBandPriv* This); 24331 24332 /*** IFolderBandPriv methods ***/ 24333 HRESULT (STDMETHODCALLTYPE *SetCascade)( 24334 IFolderBandPriv* This, 24335 WINBOOL fCascade); 24336 24337 HRESULT (STDMETHODCALLTYPE *SetAccelerators)( 24338 IFolderBandPriv* This, 24339 WINBOOL fAccelerators); 24340 24341 HRESULT (STDMETHODCALLTYPE *SetNoIcons)( 24342 IFolderBandPriv* This, 24343 WINBOOL fNoIcons); 24344 24345 HRESULT (STDMETHODCALLTYPE *SetNoText)( 24346 IFolderBandPriv* This, 24347 WINBOOL fNoText); 24348 24349 END_INTERFACE 24350 } IFolderBandPrivVtbl; 24351 interface IFolderBandPriv { 24352 CONST_VTBL IFolderBandPrivVtbl* lpVtbl; 24353 }; 24354 24355 #ifdef COBJMACROS 24356 #ifndef WIDL_C_INLINE_WRAPPERS 24357 /*** IUnknown methods ***/ 24358 #define IFolderBandPriv_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 24359 #define IFolderBandPriv_AddRef(This) (This)->lpVtbl->AddRef(This) 24360 #define IFolderBandPriv_Release(This) (This)->lpVtbl->Release(This) 24361 /*** IFolderBandPriv methods ***/ 24362 #define IFolderBandPriv_SetCascade(This,fCascade) (This)->lpVtbl->SetCascade(This,fCascade) 24363 #define IFolderBandPriv_SetAccelerators(This,fAccelerators) (This)->lpVtbl->SetAccelerators(This,fAccelerators) 24364 #define IFolderBandPriv_SetNoIcons(This,fNoIcons) (This)->lpVtbl->SetNoIcons(This,fNoIcons) 24365 #define IFolderBandPriv_SetNoText(This,fNoText) (This)->lpVtbl->SetNoText(This,fNoText) 24366 #else 24367 /*** IUnknown methods ***/ 24368 static FORCEINLINE HRESULT IFolderBandPriv_QueryInterface(IFolderBandPriv* This,REFIID riid,void **ppvObject) { 24369 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 24370 } 24371 static FORCEINLINE ULONG IFolderBandPriv_AddRef(IFolderBandPriv* This) { 24372 return This->lpVtbl->AddRef(This); 24373 } 24374 static FORCEINLINE ULONG IFolderBandPriv_Release(IFolderBandPriv* This) { 24375 return This->lpVtbl->Release(This); 24376 } 24377 /*** IFolderBandPriv methods ***/ 24378 static FORCEINLINE HRESULT IFolderBandPriv_SetCascade(IFolderBandPriv* This,WINBOOL fCascade) { 24379 return This->lpVtbl->SetCascade(This,fCascade); 24380 } 24381 static FORCEINLINE HRESULT IFolderBandPriv_SetAccelerators(IFolderBandPriv* This,WINBOOL fAccelerators) { 24382 return This->lpVtbl->SetAccelerators(This,fAccelerators); 24383 } 24384 static FORCEINLINE HRESULT IFolderBandPriv_SetNoIcons(IFolderBandPriv* This,WINBOOL fNoIcons) { 24385 return This->lpVtbl->SetNoIcons(This,fNoIcons); 24386 } 24387 static FORCEINLINE HRESULT IFolderBandPriv_SetNoText(IFolderBandPriv* This,WINBOOL fNoText) { 24388 return This->lpVtbl->SetNoText(This,fNoText); 24389 } 24390 #endif 24391 #endif 24392 24393 #endif 24394 24395 HRESULT STDMETHODCALLTYPE IFolderBandPriv_SetCascade_Proxy( 24396 IFolderBandPriv* This, 24397 WINBOOL fCascade); 24398 void __RPC_STUB IFolderBandPriv_SetCascade_Stub( 24399 IRpcStubBuffer* This, 24400 IRpcChannelBuffer* pRpcChannelBuffer, 24401 PRPC_MESSAGE pRpcMessage, 24402 DWORD* pdwStubPhase); 24403 HRESULT STDMETHODCALLTYPE IFolderBandPriv_SetAccelerators_Proxy( 24404 IFolderBandPriv* This, 24405 WINBOOL fAccelerators); 24406 void __RPC_STUB IFolderBandPriv_SetAccelerators_Stub( 24407 IRpcStubBuffer* This, 24408 IRpcChannelBuffer* pRpcChannelBuffer, 24409 PRPC_MESSAGE pRpcMessage, 24410 DWORD* pdwStubPhase); 24411 HRESULT STDMETHODCALLTYPE IFolderBandPriv_SetNoIcons_Proxy( 24412 IFolderBandPriv* This, 24413 WINBOOL fNoIcons); 24414 void __RPC_STUB IFolderBandPriv_SetNoIcons_Stub( 24415 IRpcStubBuffer* This, 24416 IRpcChannelBuffer* pRpcChannelBuffer, 24417 PRPC_MESSAGE pRpcMessage, 24418 DWORD* pdwStubPhase); 24419 HRESULT STDMETHODCALLTYPE IFolderBandPriv_SetNoText_Proxy( 24420 IFolderBandPriv* This, 24421 WINBOOL fNoText); 24422 void __RPC_STUB IFolderBandPriv_SetNoText_Stub( 24423 IRpcStubBuffer* This, 24424 IRpcChannelBuffer* pRpcChannelBuffer, 24425 PRPC_MESSAGE pRpcMessage, 24426 DWORD* pdwStubPhase); 24427 24428 #endif /* __IFolderBandPriv_INTERFACE_DEFINED__ */ 24429 24430 24431 /***************************************************************************** 24432 * IRegTreeItem interface 24433 */ 24434 #ifndef __IRegTreeItem_INTERFACE_DEFINED__ 24435 #define __IRegTreeItem_INTERFACE_DEFINED__ 24436 24437 DEFINE_GUID(IID_IRegTreeItem, 0xa9521922, 0x0812, 0x4d44, 0x9e,0xc3, 0x7f,0xd3,0x8c,0x72,0x6f,0x3d); 24438 #if defined(__cplusplus) && !defined(CINTERFACE) 24439 MIDL_INTERFACE("a9521922-0812-4d44-9ec3-7fd38c726f3d") 24440 IRegTreeItem : public IUnknown 24441 { 24442 virtual HRESULT STDMETHODCALLTYPE GetCheckState( 24443 WINBOOL *pbCheck) = 0; 24444 24445 virtual HRESULT STDMETHODCALLTYPE SetCheckState( 24446 WINBOOL bCheck) = 0; 24447 24448 }; 24449 #ifdef __CRT_UUID_DECL 24450 __CRT_UUID_DECL(IRegTreeItem, 0xa9521922, 0x0812, 0x4d44, 0x9e,0xc3, 0x7f,0xd3,0x8c,0x72,0x6f,0x3d) 24451 #endif 24452 #else 24453 typedef struct IRegTreeItemVtbl { 24454 BEGIN_INTERFACE 24455 24456 /*** IUnknown methods ***/ 24457 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 24458 IRegTreeItem* This, 24459 REFIID riid, 24460 void **ppvObject); 24461 24462 ULONG (STDMETHODCALLTYPE *AddRef)( 24463 IRegTreeItem* This); 24464 24465 ULONG (STDMETHODCALLTYPE *Release)( 24466 IRegTreeItem* This); 24467 24468 /*** IRegTreeItem methods ***/ 24469 HRESULT (STDMETHODCALLTYPE *GetCheckState)( 24470 IRegTreeItem* This, 24471 WINBOOL *pbCheck); 24472 24473 HRESULT (STDMETHODCALLTYPE *SetCheckState)( 24474 IRegTreeItem* This, 24475 WINBOOL bCheck); 24476 24477 END_INTERFACE 24478 } IRegTreeItemVtbl; 24479 interface IRegTreeItem { 24480 CONST_VTBL IRegTreeItemVtbl* lpVtbl; 24481 }; 24482 24483 #ifdef COBJMACROS 24484 #ifndef WIDL_C_INLINE_WRAPPERS 24485 /*** IUnknown methods ***/ 24486 #define IRegTreeItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 24487 #define IRegTreeItem_AddRef(This) (This)->lpVtbl->AddRef(This) 24488 #define IRegTreeItem_Release(This) (This)->lpVtbl->Release(This) 24489 /*** IRegTreeItem methods ***/ 24490 #define IRegTreeItem_GetCheckState(This,pbCheck) (This)->lpVtbl->GetCheckState(This,pbCheck) 24491 #define IRegTreeItem_SetCheckState(This,bCheck) (This)->lpVtbl->SetCheckState(This,bCheck) 24492 #else 24493 /*** IUnknown methods ***/ 24494 static FORCEINLINE HRESULT IRegTreeItem_QueryInterface(IRegTreeItem* This,REFIID riid,void **ppvObject) { 24495 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 24496 } 24497 static FORCEINLINE ULONG IRegTreeItem_AddRef(IRegTreeItem* This) { 24498 return This->lpVtbl->AddRef(This); 24499 } 24500 static FORCEINLINE ULONG IRegTreeItem_Release(IRegTreeItem* This) { 24501 return This->lpVtbl->Release(This); 24502 } 24503 /*** IRegTreeItem methods ***/ 24504 static FORCEINLINE HRESULT IRegTreeItem_GetCheckState(IRegTreeItem* This,WINBOOL *pbCheck) { 24505 return This->lpVtbl->GetCheckState(This,pbCheck); 24506 } 24507 static FORCEINLINE HRESULT IRegTreeItem_SetCheckState(IRegTreeItem* This,WINBOOL bCheck) { 24508 return This->lpVtbl->SetCheckState(This,bCheck); 24509 } 24510 #endif 24511 #endif 24512 24513 #endif 24514 24515 HRESULT STDMETHODCALLTYPE IRegTreeItem_GetCheckState_Proxy( 24516 IRegTreeItem* This, 24517 WINBOOL *pbCheck); 24518 void __RPC_STUB IRegTreeItem_GetCheckState_Stub( 24519 IRpcStubBuffer* This, 24520 IRpcChannelBuffer* pRpcChannelBuffer, 24521 PRPC_MESSAGE pRpcMessage, 24522 DWORD* pdwStubPhase); 24523 HRESULT STDMETHODCALLTYPE IRegTreeItem_SetCheckState_Proxy( 24524 IRegTreeItem* This, 24525 WINBOOL bCheck); 24526 void __RPC_STUB IRegTreeItem_SetCheckState_Stub( 24527 IRpcStubBuffer* This, 24528 IRpcChannelBuffer* pRpcChannelBuffer, 24529 PRPC_MESSAGE pRpcMessage, 24530 DWORD* pdwStubPhase); 24531 24532 #endif /* __IRegTreeItem_INTERFACE_DEFINED__ */ 24533 24534 24535 /***************************************************************************** 24536 * IImageRecompress interface 24537 */ 24538 #ifndef __IImageRecompress_INTERFACE_DEFINED__ 24539 #define __IImageRecompress_INTERFACE_DEFINED__ 24540 24541 DEFINE_GUID(IID_IImageRecompress, 0x505f1513, 0x6b3e, 0x4892, 0xa2,0x72, 0x59,0xf8,0x88,0x9a,0x4d,0x3e); 24542 #if defined(__cplusplus) && !defined(CINTERFACE) 24543 MIDL_INTERFACE("505f1513-6b3e-4892-a272-59f8889a4d3e") 24544 IImageRecompress : public IUnknown 24545 { 24546 virtual HRESULT STDMETHODCALLTYPE RecompressImage( 24547 IShellItem *psi, 24548 int cx, 24549 int cy, 24550 int iQuality, 24551 IStorage *pstg, 24552 IStream **ppstrmOut) = 0; 24553 24554 }; 24555 #ifdef __CRT_UUID_DECL 24556 __CRT_UUID_DECL(IImageRecompress, 0x505f1513, 0x6b3e, 0x4892, 0xa2,0x72, 0x59,0xf8,0x88,0x9a,0x4d,0x3e) 24557 #endif 24558 #else 24559 typedef struct IImageRecompressVtbl { 24560 BEGIN_INTERFACE 24561 24562 /*** IUnknown methods ***/ 24563 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 24564 IImageRecompress* This, 24565 REFIID riid, 24566 void **ppvObject); 24567 24568 ULONG (STDMETHODCALLTYPE *AddRef)( 24569 IImageRecompress* This); 24570 24571 ULONG (STDMETHODCALLTYPE *Release)( 24572 IImageRecompress* This); 24573 24574 /*** IImageRecompress methods ***/ 24575 HRESULT (STDMETHODCALLTYPE *RecompressImage)( 24576 IImageRecompress* This, 24577 IShellItem *psi, 24578 int cx, 24579 int cy, 24580 int iQuality, 24581 IStorage *pstg, 24582 IStream **ppstrmOut); 24583 24584 END_INTERFACE 24585 } IImageRecompressVtbl; 24586 interface IImageRecompress { 24587 CONST_VTBL IImageRecompressVtbl* lpVtbl; 24588 }; 24589 24590 #ifdef COBJMACROS 24591 #ifndef WIDL_C_INLINE_WRAPPERS 24592 /*** IUnknown methods ***/ 24593 #define IImageRecompress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 24594 #define IImageRecompress_AddRef(This) (This)->lpVtbl->AddRef(This) 24595 #define IImageRecompress_Release(This) (This)->lpVtbl->Release(This) 24596 /*** IImageRecompress methods ***/ 24597 #define IImageRecompress_RecompressImage(This,psi,cx,cy,iQuality,pstg,ppstrmOut) (This)->lpVtbl->RecompressImage(This,psi,cx,cy,iQuality,pstg,ppstrmOut) 24598 #else 24599 /*** IUnknown methods ***/ 24600 static FORCEINLINE HRESULT IImageRecompress_QueryInterface(IImageRecompress* This,REFIID riid,void **ppvObject) { 24601 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 24602 } 24603 static FORCEINLINE ULONG IImageRecompress_AddRef(IImageRecompress* This) { 24604 return This->lpVtbl->AddRef(This); 24605 } 24606 static FORCEINLINE ULONG IImageRecompress_Release(IImageRecompress* This) { 24607 return This->lpVtbl->Release(This); 24608 } 24609 /*** IImageRecompress methods ***/ 24610 static FORCEINLINE HRESULT IImageRecompress_RecompressImage(IImageRecompress* This,IShellItem *psi,int cx,int cy,int iQuality,IStorage *pstg,IStream **ppstrmOut) { 24611 return This->lpVtbl->RecompressImage(This,psi,cx,cy,iQuality,pstg,ppstrmOut); 24612 } 24613 #endif 24614 #endif 24615 24616 #endif 24617 24618 HRESULT STDMETHODCALLTYPE IImageRecompress_RecompressImage_Proxy( 24619 IImageRecompress* This, 24620 IShellItem *psi, 24621 int cx, 24622 int cy, 24623 int iQuality, 24624 IStorage *pstg, 24625 IStream **ppstrmOut); 24626 void __RPC_STUB IImageRecompress_RecompressImage_Stub( 24627 IRpcStubBuffer* This, 24628 IRpcChannelBuffer* pRpcChannelBuffer, 24629 PRPC_MESSAGE pRpcMessage, 24630 DWORD* pdwStubPhase); 24631 24632 #endif /* __IImageRecompress_INTERFACE_DEFINED__ */ 24633 24634 24635 #if _WIN32_IE >= _WIN32_IE_IE60 24636 /***************************************************************************** 24637 * IDeskBar interface 24638 */ 24639 #ifndef __IDeskBar_INTERFACE_DEFINED__ 24640 #define __IDeskBar_INTERFACE_DEFINED__ 24641 24642 DEFINE_GUID(IID_IDeskBar, 0xeb0fe173, 0x1a3a, 0x11d0, 0x89,0xb3, 0x00,0xa0,0xc9,0x0a,0x90,0xac); 24643 #if defined(__cplusplus) && !defined(CINTERFACE) 24644 MIDL_INTERFACE("eb0fe173-1a3a-11d0-89b3-00a0c90a90ac") 24645 IDeskBar : public IOleWindow 24646 { 24647 virtual HRESULT STDMETHODCALLTYPE SetClient( 24648 IUnknown *punkClient) = 0; 24649 24650 virtual HRESULT STDMETHODCALLTYPE GetClient( 24651 IUnknown **ppunkClient) = 0; 24652 24653 virtual HRESULT STDMETHODCALLTYPE OnPosRectChangeDB( 24654 RECT *prc) = 0; 24655 24656 }; 24657 #ifdef __CRT_UUID_DECL 24658 __CRT_UUID_DECL(IDeskBar, 0xeb0fe173, 0x1a3a, 0x11d0, 0x89,0xb3, 0x00,0xa0,0xc9,0x0a,0x90,0xac) 24659 #endif 24660 #else 24661 typedef struct IDeskBarVtbl { 24662 BEGIN_INTERFACE 24663 24664 /*** IUnknown methods ***/ 24665 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 24666 IDeskBar* This, 24667 REFIID riid, 24668 void **ppvObject); 24669 24670 ULONG (STDMETHODCALLTYPE *AddRef)( 24671 IDeskBar* This); 24672 24673 ULONG (STDMETHODCALLTYPE *Release)( 24674 IDeskBar* This); 24675 24676 /*** IOleWindow methods ***/ 24677 HRESULT (STDMETHODCALLTYPE *GetWindow)( 24678 IDeskBar* This, 24679 HWND *phwnd); 24680 24681 HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( 24682 IDeskBar* This, 24683 WINBOOL fEnterMode); 24684 24685 /*** IDeskBar methods ***/ 24686 HRESULT (STDMETHODCALLTYPE *SetClient)( 24687 IDeskBar* This, 24688 IUnknown *punkClient); 24689 24690 HRESULT (STDMETHODCALLTYPE *GetClient)( 24691 IDeskBar* This, 24692 IUnknown **ppunkClient); 24693 24694 HRESULT (STDMETHODCALLTYPE *OnPosRectChangeDB)( 24695 IDeskBar* This, 24696 RECT *prc); 24697 24698 END_INTERFACE 24699 } IDeskBarVtbl; 24700 interface IDeskBar { 24701 CONST_VTBL IDeskBarVtbl* lpVtbl; 24702 }; 24703 24704 #ifdef COBJMACROS 24705 #ifndef WIDL_C_INLINE_WRAPPERS 24706 /*** IUnknown methods ***/ 24707 #define IDeskBar_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 24708 #define IDeskBar_AddRef(This) (This)->lpVtbl->AddRef(This) 24709 #define IDeskBar_Release(This) (This)->lpVtbl->Release(This) 24710 /*** IOleWindow methods ***/ 24711 #define IDeskBar_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) 24712 #define IDeskBar_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) 24713 /*** IDeskBar methods ***/ 24714 #define IDeskBar_SetClient(This,punkClient) (This)->lpVtbl->SetClient(This,punkClient) 24715 #define IDeskBar_GetClient(This,ppunkClient) (This)->lpVtbl->GetClient(This,ppunkClient) 24716 #define IDeskBar_OnPosRectChangeDB(This,prc) (This)->lpVtbl->OnPosRectChangeDB(This,prc) 24717 #else 24718 /*** IUnknown methods ***/ 24719 static FORCEINLINE HRESULT IDeskBar_QueryInterface(IDeskBar* This,REFIID riid,void **ppvObject) { 24720 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 24721 } 24722 static FORCEINLINE ULONG IDeskBar_AddRef(IDeskBar* This) { 24723 return This->lpVtbl->AddRef(This); 24724 } 24725 static FORCEINLINE ULONG IDeskBar_Release(IDeskBar* This) { 24726 return This->lpVtbl->Release(This); 24727 } 24728 /*** IOleWindow methods ***/ 24729 static FORCEINLINE HRESULT IDeskBar_GetWindow(IDeskBar* This,HWND *phwnd) { 24730 return This->lpVtbl->GetWindow(This,phwnd); 24731 } 24732 static FORCEINLINE HRESULT IDeskBar_ContextSensitiveHelp(IDeskBar* This,WINBOOL fEnterMode) { 24733 return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); 24734 } 24735 /*** IDeskBar methods ***/ 24736 static FORCEINLINE HRESULT IDeskBar_SetClient(IDeskBar* This,IUnknown *punkClient) { 24737 return This->lpVtbl->SetClient(This,punkClient); 24738 } 24739 static FORCEINLINE HRESULT IDeskBar_GetClient(IDeskBar* This,IUnknown **ppunkClient) { 24740 return This->lpVtbl->GetClient(This,ppunkClient); 24741 } 24742 static FORCEINLINE HRESULT IDeskBar_OnPosRectChangeDB(IDeskBar* This,RECT *prc) { 24743 return This->lpVtbl->OnPosRectChangeDB(This,prc); 24744 } 24745 #endif 24746 #endif 24747 24748 #endif 24749 24750 HRESULT STDMETHODCALLTYPE IDeskBar_SetClient_Proxy( 24751 IDeskBar* This, 24752 IUnknown *punkClient); 24753 void __RPC_STUB IDeskBar_SetClient_Stub( 24754 IRpcStubBuffer* This, 24755 IRpcChannelBuffer* pRpcChannelBuffer, 24756 PRPC_MESSAGE pRpcMessage, 24757 DWORD* pdwStubPhase); 24758 HRESULT STDMETHODCALLTYPE IDeskBar_GetClient_Proxy( 24759 IDeskBar* This, 24760 IUnknown **ppunkClient); 24761 void __RPC_STUB IDeskBar_GetClient_Stub( 24762 IRpcStubBuffer* This, 24763 IRpcChannelBuffer* pRpcChannelBuffer, 24764 PRPC_MESSAGE pRpcMessage, 24765 DWORD* pdwStubPhase); 24766 HRESULT STDMETHODCALLTYPE IDeskBar_OnPosRectChangeDB_Proxy( 24767 IDeskBar* This, 24768 RECT *prc); 24769 void __RPC_STUB IDeskBar_OnPosRectChangeDB_Stub( 24770 IRpcStubBuffer* This, 24771 IRpcChannelBuffer* pRpcChannelBuffer, 24772 PRPC_MESSAGE pRpcMessage, 24773 DWORD* pdwStubPhase); 24774 24775 #endif /* __IDeskBar_INTERFACE_DEFINED__ */ 24776 24777 24778 /***************************************************************************** 24779 * IMenuPopup interface 24780 */ 24781 #ifndef __IMenuPopup_INTERFACE_DEFINED__ 24782 #define __IMenuPopup_INTERFACE_DEFINED__ 24783 24784 enum tagMENUPOPUPSELECT { 24785 MPOS_EXECUTE = 0, 24786 MPOS_FULLCANCEL = 1, 24787 MPOS_CANCELLEVEL = 2, 24788 MPOS_SELECTLEFT = 3, 24789 MPOS_SELECTRIGHT = 4, 24790 MPOS_CHILDTRACKING = 5 24791 }; 24792 24793 24794 enum tagMENUPOPUPPOPUPFLAGS { 24795 MPPF_SETFOCUS = 0x1, 24796 MPPF_INITIALSELECT = 0x2, 24797 MPPF_NOANIMATE = 0x4, 24798 MPPF_KEYBOARD = 0x10, 24799 MPPF_REPOSITION = 0x20, 24800 MPPF_FORCEZORDER = 0x40, 24801 MPPF_FINALSELECT = 0x80, 24802 MPPF_TOP = 0x20000000, 24803 MPPF_LEFT = 0x40000000, 24804 MPPF_RIGHT = 0x60000000, 24805 MPPF_BOTTOM = (int)0x80000000, 24806 MPPF_POS_MASK = (int)0xe0000000, 24807 MPPF_ALIGN_LEFT = 0x2000000, 24808 MPPF_ALIGN_RIGHT = 0x4000000 24809 }; 24810 24811 24812 typedef int MP_POPUPFLAGS; 24813 24814 DEFINE_GUID(IID_IMenuPopup, 0xd1e7afeb, 0x6a2e, 0x11d0, 0x8c,0x78, 0x00,0xc0,0x4f,0xd9,0x18,0xb4); 24815 #if defined(__cplusplus) && !defined(CINTERFACE) 24816 MIDL_INTERFACE("d1e7afeb-6a2e-11d0-8c78-00c04fd918b4") 24817 IMenuPopup : public IDeskBar 24818 { 24819 virtual HRESULT STDMETHODCALLTYPE Popup( 24820 POINTL *ppt, 24821 RECTL *prcExclude, 24822 MP_POPUPFLAGS dwFlags) = 0; 24823 24824 virtual HRESULT STDMETHODCALLTYPE OnSelect( 24825 DWORD dwSelectType) = 0; 24826 24827 virtual HRESULT STDMETHODCALLTYPE SetSubMenu( 24828 IMenuPopup *pmp, 24829 WINBOOL fSet) = 0; 24830 24831 }; 24832 #ifdef __CRT_UUID_DECL 24833 __CRT_UUID_DECL(IMenuPopup, 0xd1e7afeb, 0x6a2e, 0x11d0, 0x8c,0x78, 0x00,0xc0,0x4f,0xd9,0x18,0xb4) 24834 #endif 24835 #else 24836 typedef struct IMenuPopupVtbl { 24837 BEGIN_INTERFACE 24838 24839 /*** IUnknown methods ***/ 24840 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 24841 IMenuPopup* This, 24842 REFIID riid, 24843 void **ppvObject); 24844 24845 ULONG (STDMETHODCALLTYPE *AddRef)( 24846 IMenuPopup* This); 24847 24848 ULONG (STDMETHODCALLTYPE *Release)( 24849 IMenuPopup* This); 24850 24851 /*** IOleWindow methods ***/ 24852 HRESULT (STDMETHODCALLTYPE *GetWindow)( 24853 IMenuPopup* This, 24854 HWND *phwnd); 24855 24856 HRESULT (STDMETHODCALLTYPE *ContextSensitiveHelp)( 24857 IMenuPopup* This, 24858 WINBOOL fEnterMode); 24859 24860 /*** IDeskBar methods ***/ 24861 HRESULT (STDMETHODCALLTYPE *SetClient)( 24862 IMenuPopup* This, 24863 IUnknown *punkClient); 24864 24865 HRESULT (STDMETHODCALLTYPE *GetClient)( 24866 IMenuPopup* This, 24867 IUnknown **ppunkClient); 24868 24869 HRESULT (STDMETHODCALLTYPE *OnPosRectChangeDB)( 24870 IMenuPopup* This, 24871 RECT *prc); 24872 24873 /*** IMenuPopup methods ***/ 24874 HRESULT (STDMETHODCALLTYPE *Popup)( 24875 IMenuPopup* This, 24876 POINTL *ppt, 24877 RECTL *prcExclude, 24878 MP_POPUPFLAGS dwFlags); 24879 24880 HRESULT (STDMETHODCALLTYPE *OnSelect)( 24881 IMenuPopup* This, 24882 DWORD dwSelectType); 24883 24884 HRESULT (STDMETHODCALLTYPE *SetSubMenu)( 24885 IMenuPopup* This, 24886 IMenuPopup *pmp, 24887 WINBOOL fSet); 24888 24889 END_INTERFACE 24890 } IMenuPopupVtbl; 24891 interface IMenuPopup { 24892 CONST_VTBL IMenuPopupVtbl* lpVtbl; 24893 }; 24894 24895 #ifdef COBJMACROS 24896 #ifndef WIDL_C_INLINE_WRAPPERS 24897 /*** IUnknown methods ***/ 24898 #define IMenuPopup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 24899 #define IMenuPopup_AddRef(This) (This)->lpVtbl->AddRef(This) 24900 #define IMenuPopup_Release(This) (This)->lpVtbl->Release(This) 24901 /*** IOleWindow methods ***/ 24902 #define IMenuPopup_GetWindow(This,phwnd) (This)->lpVtbl->GetWindow(This,phwnd) 24903 #define IMenuPopup_ContextSensitiveHelp(This,fEnterMode) (This)->lpVtbl->ContextSensitiveHelp(This,fEnterMode) 24904 /*** IDeskBar methods ***/ 24905 #define IMenuPopup_SetClient(This,punkClient) (This)->lpVtbl->SetClient(This,punkClient) 24906 #define IMenuPopup_GetClient(This,ppunkClient) (This)->lpVtbl->GetClient(This,ppunkClient) 24907 #define IMenuPopup_OnPosRectChangeDB(This,prc) (This)->lpVtbl->OnPosRectChangeDB(This,prc) 24908 /*** IMenuPopup methods ***/ 24909 #define IMenuPopup_Popup(This,ppt,prcExclude,dwFlags) (This)->lpVtbl->Popup(This,ppt,prcExclude,dwFlags) 24910 #define IMenuPopup_OnSelect(This,dwSelectType) (This)->lpVtbl->OnSelect(This,dwSelectType) 24911 #define IMenuPopup_SetSubMenu(This,pmp,fSet) (This)->lpVtbl->SetSubMenu(This,pmp,fSet) 24912 #else 24913 /*** IUnknown methods ***/ 24914 static FORCEINLINE HRESULT IMenuPopup_QueryInterface(IMenuPopup* This,REFIID riid,void **ppvObject) { 24915 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 24916 } 24917 static FORCEINLINE ULONG IMenuPopup_AddRef(IMenuPopup* This) { 24918 return This->lpVtbl->AddRef(This); 24919 } 24920 static FORCEINLINE ULONG IMenuPopup_Release(IMenuPopup* This) { 24921 return This->lpVtbl->Release(This); 24922 } 24923 /*** IOleWindow methods ***/ 24924 static FORCEINLINE HRESULT IMenuPopup_GetWindow(IMenuPopup* This,HWND *phwnd) { 24925 return This->lpVtbl->GetWindow(This,phwnd); 24926 } 24927 static FORCEINLINE HRESULT IMenuPopup_ContextSensitiveHelp(IMenuPopup* This,WINBOOL fEnterMode) { 24928 return This->lpVtbl->ContextSensitiveHelp(This,fEnterMode); 24929 } 24930 /*** IDeskBar methods ***/ 24931 static FORCEINLINE HRESULT IMenuPopup_SetClient(IMenuPopup* This,IUnknown *punkClient) { 24932 return This->lpVtbl->SetClient(This,punkClient); 24933 } 24934 static FORCEINLINE HRESULT IMenuPopup_GetClient(IMenuPopup* This,IUnknown **ppunkClient) { 24935 return This->lpVtbl->GetClient(This,ppunkClient); 24936 } 24937 static FORCEINLINE HRESULT IMenuPopup_OnPosRectChangeDB(IMenuPopup* This,RECT *prc) { 24938 return This->lpVtbl->OnPosRectChangeDB(This,prc); 24939 } 24940 /*** IMenuPopup methods ***/ 24941 static FORCEINLINE HRESULT IMenuPopup_Popup(IMenuPopup* This,POINTL *ppt,RECTL *prcExclude,MP_POPUPFLAGS dwFlags) { 24942 return This->lpVtbl->Popup(This,ppt,prcExclude,dwFlags); 24943 } 24944 static FORCEINLINE HRESULT IMenuPopup_OnSelect(IMenuPopup* This,DWORD dwSelectType) { 24945 return This->lpVtbl->OnSelect(This,dwSelectType); 24946 } 24947 static FORCEINLINE HRESULT IMenuPopup_SetSubMenu(IMenuPopup* This,IMenuPopup *pmp,WINBOOL fSet) { 24948 return This->lpVtbl->SetSubMenu(This,pmp,fSet); 24949 } 24950 #endif 24951 #endif 24952 24953 #endif 24954 24955 HRESULT STDMETHODCALLTYPE IMenuPopup_Popup_Proxy( 24956 IMenuPopup* This, 24957 POINTL *ppt, 24958 RECTL *prcExclude, 24959 MP_POPUPFLAGS dwFlags); 24960 void __RPC_STUB IMenuPopup_Popup_Stub( 24961 IRpcStubBuffer* This, 24962 IRpcChannelBuffer* pRpcChannelBuffer, 24963 PRPC_MESSAGE pRpcMessage, 24964 DWORD* pdwStubPhase); 24965 HRESULT STDMETHODCALLTYPE IMenuPopup_OnSelect_Proxy( 24966 IMenuPopup* This, 24967 DWORD dwSelectType); 24968 void __RPC_STUB IMenuPopup_OnSelect_Stub( 24969 IRpcStubBuffer* This, 24970 IRpcChannelBuffer* pRpcChannelBuffer, 24971 PRPC_MESSAGE pRpcMessage, 24972 DWORD* pdwStubPhase); 24973 HRESULT STDMETHODCALLTYPE IMenuPopup_SetSubMenu_Proxy( 24974 IMenuPopup* This, 24975 IMenuPopup *pmp, 24976 WINBOOL fSet); 24977 void __RPC_STUB IMenuPopup_SetSubMenu_Stub( 24978 IRpcStubBuffer* This, 24979 IRpcChannelBuffer* pRpcChannelBuffer, 24980 PRPC_MESSAGE pRpcMessage, 24981 DWORD* pdwStubPhase); 24982 24983 #endif /* __IMenuPopup_INTERFACE_DEFINED__ */ 24984 24985 #endif 24986 24987 #if NTDDI_VERSION >= NTDDI_VISTA 24988 typedef enum FILE_USAGE_TYPE { 24989 FUT_PLAYING = 0, 24990 FUT_EDITING = 1, 24991 FUT_GENERIC = 2 24992 } FILE_USAGE_TYPE; 24993 24994 #define OF_CAP_CANSWITCHTO 0x0001 24995 #define OF_CAP_CANCLOSE 0x0002 24996 24997 /***************************************************************************** 24998 * IFileIsInUse interface 24999 */ 25000 #ifndef __IFileIsInUse_INTERFACE_DEFINED__ 25001 #define __IFileIsInUse_INTERFACE_DEFINED__ 25002 25003 DEFINE_GUID(IID_IFileIsInUse, 0x64a1cbf0, 0x3a1a, 0x4461, 0x91,0x58, 0x37,0x69,0x69,0x69,0x39,0x50); 25004 #if defined(__cplusplus) && !defined(CINTERFACE) 25005 MIDL_INTERFACE("64a1cbf0-3a1a-4461-9158-376969693950") 25006 IFileIsInUse : public IUnknown 25007 { 25008 virtual HRESULT STDMETHODCALLTYPE GetAppName( 25009 LPWSTR *ppszName) = 0; 25010 25011 virtual HRESULT STDMETHODCALLTYPE GetUsage( 25012 FILE_USAGE_TYPE *pfut) = 0; 25013 25014 virtual HRESULT STDMETHODCALLTYPE GetCapabilities( 25015 DWORD *pdwCapFlags) = 0; 25016 25017 virtual HRESULT STDMETHODCALLTYPE GetSwitchToHWND( 25018 HWND *phwnd) = 0; 25019 25020 virtual HRESULT STDMETHODCALLTYPE CloseFile( 25021 ) = 0; 25022 25023 }; 25024 #ifdef __CRT_UUID_DECL 25025 __CRT_UUID_DECL(IFileIsInUse, 0x64a1cbf0, 0x3a1a, 0x4461, 0x91,0x58, 0x37,0x69,0x69,0x69,0x39,0x50) 25026 #endif 25027 #else 25028 typedef struct IFileIsInUseVtbl { 25029 BEGIN_INTERFACE 25030 25031 /*** IUnknown methods ***/ 25032 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 25033 IFileIsInUse* This, 25034 REFIID riid, 25035 void **ppvObject); 25036 25037 ULONG (STDMETHODCALLTYPE *AddRef)( 25038 IFileIsInUse* This); 25039 25040 ULONG (STDMETHODCALLTYPE *Release)( 25041 IFileIsInUse* This); 25042 25043 /*** IFileIsInUse methods ***/ 25044 HRESULT (STDMETHODCALLTYPE *GetAppName)( 25045 IFileIsInUse* This, 25046 LPWSTR *ppszName); 25047 25048 HRESULT (STDMETHODCALLTYPE *GetUsage)( 25049 IFileIsInUse* This, 25050 FILE_USAGE_TYPE *pfut); 25051 25052 HRESULT (STDMETHODCALLTYPE *GetCapabilities)( 25053 IFileIsInUse* This, 25054 DWORD *pdwCapFlags); 25055 25056 HRESULT (STDMETHODCALLTYPE *GetSwitchToHWND)( 25057 IFileIsInUse* This, 25058 HWND *phwnd); 25059 25060 HRESULT (STDMETHODCALLTYPE *CloseFile)( 25061 IFileIsInUse* This); 25062 25063 END_INTERFACE 25064 } IFileIsInUseVtbl; 25065 interface IFileIsInUse { 25066 CONST_VTBL IFileIsInUseVtbl* lpVtbl; 25067 }; 25068 25069 #ifdef COBJMACROS 25070 #ifndef WIDL_C_INLINE_WRAPPERS 25071 /*** IUnknown methods ***/ 25072 #define IFileIsInUse_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 25073 #define IFileIsInUse_AddRef(This) (This)->lpVtbl->AddRef(This) 25074 #define IFileIsInUse_Release(This) (This)->lpVtbl->Release(This) 25075 /*** IFileIsInUse methods ***/ 25076 #define IFileIsInUse_GetAppName(This,ppszName) (This)->lpVtbl->GetAppName(This,ppszName) 25077 #define IFileIsInUse_GetUsage(This,pfut) (This)->lpVtbl->GetUsage(This,pfut) 25078 #define IFileIsInUse_GetCapabilities(This,pdwCapFlags) (This)->lpVtbl->GetCapabilities(This,pdwCapFlags) 25079 #define IFileIsInUse_GetSwitchToHWND(This,phwnd) (This)->lpVtbl->GetSwitchToHWND(This,phwnd) 25080 #define IFileIsInUse_CloseFile(This) (This)->lpVtbl->CloseFile(This) 25081 #else 25082 /*** IUnknown methods ***/ 25083 static FORCEINLINE HRESULT IFileIsInUse_QueryInterface(IFileIsInUse* This,REFIID riid,void **ppvObject) { 25084 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 25085 } 25086 static FORCEINLINE ULONG IFileIsInUse_AddRef(IFileIsInUse* This) { 25087 return This->lpVtbl->AddRef(This); 25088 } 25089 static FORCEINLINE ULONG IFileIsInUse_Release(IFileIsInUse* This) { 25090 return This->lpVtbl->Release(This); 25091 } 25092 /*** IFileIsInUse methods ***/ 25093 static FORCEINLINE HRESULT IFileIsInUse_GetAppName(IFileIsInUse* This,LPWSTR *ppszName) { 25094 return This->lpVtbl->GetAppName(This,ppszName); 25095 } 25096 static FORCEINLINE HRESULT IFileIsInUse_GetUsage(IFileIsInUse* This,FILE_USAGE_TYPE *pfut) { 25097 return This->lpVtbl->GetUsage(This,pfut); 25098 } 25099 static FORCEINLINE HRESULT IFileIsInUse_GetCapabilities(IFileIsInUse* This,DWORD *pdwCapFlags) { 25100 return This->lpVtbl->GetCapabilities(This,pdwCapFlags); 25101 } 25102 static FORCEINLINE HRESULT IFileIsInUse_GetSwitchToHWND(IFileIsInUse* This,HWND *phwnd) { 25103 return This->lpVtbl->GetSwitchToHWND(This,phwnd); 25104 } 25105 static FORCEINLINE HRESULT IFileIsInUse_CloseFile(IFileIsInUse* This) { 25106 return This->lpVtbl->CloseFile(This); 25107 } 25108 #endif 25109 #endif 25110 25111 #endif 25112 25113 HRESULT STDMETHODCALLTYPE IFileIsInUse_GetAppName_Proxy( 25114 IFileIsInUse* This, 25115 LPWSTR *ppszName); 25116 void __RPC_STUB IFileIsInUse_GetAppName_Stub( 25117 IRpcStubBuffer* This, 25118 IRpcChannelBuffer* pRpcChannelBuffer, 25119 PRPC_MESSAGE pRpcMessage, 25120 DWORD* pdwStubPhase); 25121 HRESULT STDMETHODCALLTYPE IFileIsInUse_GetUsage_Proxy( 25122 IFileIsInUse* This, 25123 FILE_USAGE_TYPE *pfut); 25124 void __RPC_STUB IFileIsInUse_GetUsage_Stub( 25125 IRpcStubBuffer* This, 25126 IRpcChannelBuffer* pRpcChannelBuffer, 25127 PRPC_MESSAGE pRpcMessage, 25128 DWORD* pdwStubPhase); 25129 HRESULT STDMETHODCALLTYPE IFileIsInUse_GetCapabilities_Proxy( 25130 IFileIsInUse* This, 25131 DWORD *pdwCapFlags); 25132 void __RPC_STUB IFileIsInUse_GetCapabilities_Stub( 25133 IRpcStubBuffer* This, 25134 IRpcChannelBuffer* pRpcChannelBuffer, 25135 PRPC_MESSAGE pRpcMessage, 25136 DWORD* pdwStubPhase); 25137 HRESULT STDMETHODCALLTYPE IFileIsInUse_GetSwitchToHWND_Proxy( 25138 IFileIsInUse* This, 25139 HWND *phwnd); 25140 void __RPC_STUB IFileIsInUse_GetSwitchToHWND_Stub( 25141 IRpcStubBuffer* This, 25142 IRpcChannelBuffer* pRpcChannelBuffer, 25143 PRPC_MESSAGE pRpcMessage, 25144 DWORD* pdwStubPhase); 25145 HRESULT STDMETHODCALLTYPE IFileIsInUse_CloseFile_Proxy( 25146 IFileIsInUse* This); 25147 void __RPC_STUB IFileIsInUse_CloseFile_Stub( 25148 IRpcStubBuffer* This, 25149 IRpcChannelBuffer* pRpcChannelBuffer, 25150 PRPC_MESSAGE pRpcMessage, 25151 DWORD* pdwStubPhase); 25152 25153 #endif /* __IFileIsInUse_INTERFACE_DEFINED__ */ 25154 25155 25156 #ifndef __IFileDialog_FWD_DEFINED__ 25157 #define __IFileDialog_FWD_DEFINED__ 25158 typedef interface IFileDialog IFileDialog; 25159 #endif 25160 25161 25162 typedef enum FDE_OVERWRITE_RESPONSE { 25163 FDEOR_DEFAULT = 0, 25164 FDEOR_ACCEPT = 1, 25165 FDEOR_REFUSE = 2 25166 } FDE_OVERWRITE_RESPONSE; 25167 25168 typedef enum FDE_SHAREVIOLATION_RESPONSE { 25169 FDESVR_DEFAULT = 0, 25170 FDESVR_ACCEPT = 1, 25171 FDESVR_REFUSE = 2 25172 } FDE_SHAREVIOLATION_RESPONSE; 25173 25174 typedef enum FDAP { 25175 FDAP_BOTTOM = 0, 25176 FDAP_TOP = 1 25177 } FDAP; 25178 25179 /***************************************************************************** 25180 * IFileDialogEvents interface 25181 */ 25182 #ifndef __IFileDialogEvents_INTERFACE_DEFINED__ 25183 #define __IFileDialogEvents_INTERFACE_DEFINED__ 25184 25185 DEFINE_GUID(IID_IFileDialogEvents, 0x973510db, 0x7d7f, 0x452b, 0x89,0x75, 0x74,0xa8,0x58,0x28,0xd3,0x54); 25186 #if defined(__cplusplus) && !defined(CINTERFACE) 25187 MIDL_INTERFACE("973510db-7d7f-452b-8975-74a85828d354") 25188 IFileDialogEvents : public IUnknown 25189 { 25190 virtual HRESULT STDMETHODCALLTYPE OnFileOk( 25191 IFileDialog *pfd) = 0; 25192 25193 virtual HRESULT STDMETHODCALLTYPE OnFolderChanging( 25194 IFileDialog *pfd, 25195 IShellItem *psiFolder) = 0; 25196 25197 virtual HRESULT STDMETHODCALLTYPE OnFolderChange( 25198 IFileDialog *pfd) = 0; 25199 25200 virtual HRESULT STDMETHODCALLTYPE OnSelectionChange( 25201 IFileDialog *pfd) = 0; 25202 25203 virtual HRESULT STDMETHODCALLTYPE OnShareViolation( 25204 IFileDialog *pfd, 25205 IShellItem *psi, 25206 FDE_SHAREVIOLATION_RESPONSE *pResponse) = 0; 25207 25208 virtual HRESULT STDMETHODCALLTYPE OnTypeChange( 25209 IFileDialog *pfd) = 0; 25210 25211 virtual HRESULT STDMETHODCALLTYPE OnOverwrite( 25212 IFileDialog *pfd, 25213 IShellItem *psi, 25214 FDE_OVERWRITE_RESPONSE *pResponse) = 0; 25215 25216 }; 25217 #ifdef __CRT_UUID_DECL 25218 __CRT_UUID_DECL(IFileDialogEvents, 0x973510db, 0x7d7f, 0x452b, 0x89,0x75, 0x74,0xa8,0x58,0x28,0xd3,0x54) 25219 #endif 25220 #else 25221 typedef struct IFileDialogEventsVtbl { 25222 BEGIN_INTERFACE 25223 25224 /*** IUnknown methods ***/ 25225 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 25226 IFileDialogEvents* This, 25227 REFIID riid, 25228 void **ppvObject); 25229 25230 ULONG (STDMETHODCALLTYPE *AddRef)( 25231 IFileDialogEvents* This); 25232 25233 ULONG (STDMETHODCALLTYPE *Release)( 25234 IFileDialogEvents* This); 25235 25236 /*** IFileDialogEvents methods ***/ 25237 HRESULT (STDMETHODCALLTYPE *OnFileOk)( 25238 IFileDialogEvents* This, 25239 IFileDialog *pfd); 25240 25241 HRESULT (STDMETHODCALLTYPE *OnFolderChanging)( 25242 IFileDialogEvents* This, 25243 IFileDialog *pfd, 25244 IShellItem *psiFolder); 25245 25246 HRESULT (STDMETHODCALLTYPE *OnFolderChange)( 25247 IFileDialogEvents* This, 25248 IFileDialog *pfd); 25249 25250 HRESULT (STDMETHODCALLTYPE *OnSelectionChange)( 25251 IFileDialogEvents* This, 25252 IFileDialog *pfd); 25253 25254 HRESULT (STDMETHODCALLTYPE *OnShareViolation)( 25255 IFileDialogEvents* This, 25256 IFileDialog *pfd, 25257 IShellItem *psi, 25258 FDE_SHAREVIOLATION_RESPONSE *pResponse); 25259 25260 HRESULT (STDMETHODCALLTYPE *OnTypeChange)( 25261 IFileDialogEvents* This, 25262 IFileDialog *pfd); 25263 25264 HRESULT (STDMETHODCALLTYPE *OnOverwrite)( 25265 IFileDialogEvents* This, 25266 IFileDialog *pfd, 25267 IShellItem *psi, 25268 FDE_OVERWRITE_RESPONSE *pResponse); 25269 25270 END_INTERFACE 25271 } IFileDialogEventsVtbl; 25272 interface IFileDialogEvents { 25273 CONST_VTBL IFileDialogEventsVtbl* lpVtbl; 25274 }; 25275 25276 #ifdef COBJMACROS 25277 #ifndef WIDL_C_INLINE_WRAPPERS 25278 /*** IUnknown methods ***/ 25279 #define IFileDialogEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 25280 #define IFileDialogEvents_AddRef(This) (This)->lpVtbl->AddRef(This) 25281 #define IFileDialogEvents_Release(This) (This)->lpVtbl->Release(This) 25282 /*** IFileDialogEvents methods ***/ 25283 #define IFileDialogEvents_OnFileOk(This,pfd) (This)->lpVtbl->OnFileOk(This,pfd) 25284 #define IFileDialogEvents_OnFolderChanging(This,pfd,psiFolder) (This)->lpVtbl->OnFolderChanging(This,pfd,psiFolder) 25285 #define IFileDialogEvents_OnFolderChange(This,pfd) (This)->lpVtbl->OnFolderChange(This,pfd) 25286 #define IFileDialogEvents_OnSelectionChange(This,pfd) (This)->lpVtbl->OnSelectionChange(This,pfd) 25287 #define IFileDialogEvents_OnShareViolation(This,pfd,psi,pResponse) (This)->lpVtbl->OnShareViolation(This,pfd,psi,pResponse) 25288 #define IFileDialogEvents_OnTypeChange(This,pfd) (This)->lpVtbl->OnTypeChange(This,pfd) 25289 #define IFileDialogEvents_OnOverwrite(This,pfd,psi,pResponse) (This)->lpVtbl->OnOverwrite(This,pfd,psi,pResponse) 25290 #else 25291 /*** IUnknown methods ***/ 25292 static FORCEINLINE HRESULT IFileDialogEvents_QueryInterface(IFileDialogEvents* This,REFIID riid,void **ppvObject) { 25293 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 25294 } 25295 static FORCEINLINE ULONG IFileDialogEvents_AddRef(IFileDialogEvents* This) { 25296 return This->lpVtbl->AddRef(This); 25297 } 25298 static FORCEINLINE ULONG IFileDialogEvents_Release(IFileDialogEvents* This) { 25299 return This->lpVtbl->Release(This); 25300 } 25301 /*** IFileDialogEvents methods ***/ 25302 static FORCEINLINE HRESULT IFileDialogEvents_OnFileOk(IFileDialogEvents* This,IFileDialog *pfd) { 25303 return This->lpVtbl->OnFileOk(This,pfd); 25304 } 25305 static FORCEINLINE HRESULT IFileDialogEvents_OnFolderChanging(IFileDialogEvents* This,IFileDialog *pfd,IShellItem *psiFolder) { 25306 return This->lpVtbl->OnFolderChanging(This,pfd,psiFolder); 25307 } 25308 static FORCEINLINE HRESULT IFileDialogEvents_OnFolderChange(IFileDialogEvents* This,IFileDialog *pfd) { 25309 return This->lpVtbl->OnFolderChange(This,pfd); 25310 } 25311 static FORCEINLINE HRESULT IFileDialogEvents_OnSelectionChange(IFileDialogEvents* This,IFileDialog *pfd) { 25312 return This->lpVtbl->OnSelectionChange(This,pfd); 25313 } 25314 static FORCEINLINE HRESULT IFileDialogEvents_OnShareViolation(IFileDialogEvents* This,IFileDialog *pfd,IShellItem *psi,FDE_SHAREVIOLATION_RESPONSE *pResponse) { 25315 return This->lpVtbl->OnShareViolation(This,pfd,psi,pResponse); 25316 } 25317 static FORCEINLINE HRESULT IFileDialogEvents_OnTypeChange(IFileDialogEvents* This,IFileDialog *pfd) { 25318 return This->lpVtbl->OnTypeChange(This,pfd); 25319 } 25320 static FORCEINLINE HRESULT IFileDialogEvents_OnOverwrite(IFileDialogEvents* This,IFileDialog *pfd,IShellItem *psi,FDE_OVERWRITE_RESPONSE *pResponse) { 25321 return This->lpVtbl->OnOverwrite(This,pfd,psi,pResponse); 25322 } 25323 #endif 25324 #endif 25325 25326 #endif 25327 25328 HRESULT STDMETHODCALLTYPE IFileDialogEvents_OnFileOk_Proxy( 25329 IFileDialogEvents* This, 25330 IFileDialog *pfd); 25331 void __RPC_STUB IFileDialogEvents_OnFileOk_Stub( 25332 IRpcStubBuffer* This, 25333 IRpcChannelBuffer* pRpcChannelBuffer, 25334 PRPC_MESSAGE pRpcMessage, 25335 DWORD* pdwStubPhase); 25336 HRESULT STDMETHODCALLTYPE IFileDialogEvents_OnFolderChanging_Proxy( 25337 IFileDialogEvents* This, 25338 IFileDialog *pfd, 25339 IShellItem *psiFolder); 25340 void __RPC_STUB IFileDialogEvents_OnFolderChanging_Stub( 25341 IRpcStubBuffer* This, 25342 IRpcChannelBuffer* pRpcChannelBuffer, 25343 PRPC_MESSAGE pRpcMessage, 25344 DWORD* pdwStubPhase); 25345 HRESULT STDMETHODCALLTYPE IFileDialogEvents_OnFolderChange_Proxy( 25346 IFileDialogEvents* This, 25347 IFileDialog *pfd); 25348 void __RPC_STUB IFileDialogEvents_OnFolderChange_Stub( 25349 IRpcStubBuffer* This, 25350 IRpcChannelBuffer* pRpcChannelBuffer, 25351 PRPC_MESSAGE pRpcMessage, 25352 DWORD* pdwStubPhase); 25353 HRESULT STDMETHODCALLTYPE IFileDialogEvents_OnSelectionChange_Proxy( 25354 IFileDialogEvents* This, 25355 IFileDialog *pfd); 25356 void __RPC_STUB IFileDialogEvents_OnSelectionChange_Stub( 25357 IRpcStubBuffer* This, 25358 IRpcChannelBuffer* pRpcChannelBuffer, 25359 PRPC_MESSAGE pRpcMessage, 25360 DWORD* pdwStubPhase); 25361 HRESULT STDMETHODCALLTYPE IFileDialogEvents_OnShareViolation_Proxy( 25362 IFileDialogEvents* This, 25363 IFileDialog *pfd, 25364 IShellItem *psi, 25365 FDE_SHAREVIOLATION_RESPONSE *pResponse); 25366 void __RPC_STUB IFileDialogEvents_OnShareViolation_Stub( 25367 IRpcStubBuffer* This, 25368 IRpcChannelBuffer* pRpcChannelBuffer, 25369 PRPC_MESSAGE pRpcMessage, 25370 DWORD* pdwStubPhase); 25371 HRESULT STDMETHODCALLTYPE IFileDialogEvents_OnTypeChange_Proxy( 25372 IFileDialogEvents* This, 25373 IFileDialog *pfd); 25374 void __RPC_STUB IFileDialogEvents_OnTypeChange_Stub( 25375 IRpcStubBuffer* This, 25376 IRpcChannelBuffer* pRpcChannelBuffer, 25377 PRPC_MESSAGE pRpcMessage, 25378 DWORD* pdwStubPhase); 25379 HRESULT STDMETHODCALLTYPE IFileDialogEvents_OnOverwrite_Proxy( 25380 IFileDialogEvents* This, 25381 IFileDialog *pfd, 25382 IShellItem *psi, 25383 FDE_OVERWRITE_RESPONSE *pResponse); 25384 void __RPC_STUB IFileDialogEvents_OnOverwrite_Stub( 25385 IRpcStubBuffer* This, 25386 IRpcChannelBuffer* pRpcChannelBuffer, 25387 PRPC_MESSAGE pRpcMessage, 25388 DWORD* pdwStubPhase); 25389 25390 #endif /* __IFileDialogEvents_INTERFACE_DEFINED__ */ 25391 25392 25393 #ifndef __IShellItemFilter_FWD_DEFINED__ 25394 #define __IShellItemFilter_FWD_DEFINED__ 25395 typedef interface IShellItemFilter IShellItemFilter; 25396 #endif 25397 25398 25399 /***************************************************************************** 25400 * IFileDialog interface 25401 */ 25402 #ifndef __IFileDialog_INTERFACE_DEFINED__ 25403 #define __IFileDialog_INTERFACE_DEFINED__ 25404 25405 enum _FILEOPENDIALOGOPTIONS { 25406 FOS_OVERWRITEPROMPT = 0x2, 25407 FOS_STRICTFILETYPES = 0x4, 25408 FOS_NOCHANGEDIR = 0x8, 25409 FOS_PICKFOLDERS = 0x20, 25410 FOS_FORCEFILESYSTEM = 0x40, 25411 FOS_ALLNONSTORAGEITEMS = 0x80, 25412 FOS_NOVALIDATE = 0x100, 25413 FOS_ALLOWMULTISELECT = 0x200, 25414 FOS_PATHMUSTEXIST = 0x800, 25415 FOS_FILEMUSTEXIST = 0x1000, 25416 FOS_CREATEPROMPT = 0x2000, 25417 FOS_SHAREAWARE = 0x4000, 25418 FOS_NOREADONLYRETURN = 0x8000, 25419 FOS_NOTESTFILECREATE = 0x10000, 25420 FOS_HIDEMRUPLACES = 0x20000, 25421 FOS_HIDEPINNEDPLACES = 0x40000, 25422 FOS_NODEREFERENCELINKS = 0x100000, 25423 FOS_DONTADDTORECENT = 0x2000000, 25424 FOS_FORCESHOWHIDDEN = 0x10000000, 25425 FOS_DEFAULTNOMINIMODE = 0x20000000, 25426 FOS_FORCEPREVIEWPANEON = 0x40000000 25427 }; 25428 25429 25430 typedef DWORD FILEOPENDIALOGOPTIONS; 25431 25432 DEFINE_GUID(IID_IFileDialog, 0x42f85136, 0xdb7e, 0x439c, 0x85,0xf1, 0xe4,0x07,0x5d,0x13,0x5f,0xc8); 25433 #if defined(__cplusplus) && !defined(CINTERFACE) 25434 MIDL_INTERFACE("42f85136-db7e-439c-85f1-e4075d135fc8") 25435 IFileDialog : public IModalWindow 25436 { 25437 virtual HRESULT STDMETHODCALLTYPE SetFileTypes( 25438 UINT cFileTypes, 25439 const COMDLG_FILTERSPEC *rgFilterSpec) = 0; 25440 25441 virtual HRESULT STDMETHODCALLTYPE SetFileTypeIndex( 25442 UINT iFileType) = 0; 25443 25444 virtual HRESULT STDMETHODCALLTYPE GetFileTypeIndex( 25445 UINT *piFileType) = 0; 25446 25447 virtual HRESULT STDMETHODCALLTYPE Advise( 25448 IFileDialogEvents *pfde, 25449 DWORD *pdwCookie) = 0; 25450 25451 virtual HRESULT STDMETHODCALLTYPE Unadvise( 25452 DWORD dwCookie) = 0; 25453 25454 virtual HRESULT STDMETHODCALLTYPE SetOptions( 25455 FILEOPENDIALOGOPTIONS fos) = 0; 25456 25457 virtual HRESULT STDMETHODCALLTYPE GetOptions( 25458 FILEOPENDIALOGOPTIONS *pfos) = 0; 25459 25460 virtual HRESULT STDMETHODCALLTYPE SetDefaultFolder( 25461 IShellItem *psi) = 0; 25462 25463 virtual HRESULT STDMETHODCALLTYPE SetFolder( 25464 IShellItem *psi) = 0; 25465 25466 virtual HRESULT STDMETHODCALLTYPE GetFolder( 25467 IShellItem **ppsi) = 0; 25468 25469 virtual HRESULT STDMETHODCALLTYPE GetCurrentSelection( 25470 IShellItem **ppsi) = 0; 25471 25472 virtual HRESULT STDMETHODCALLTYPE SetFileName( 25473 LPCWSTR pszName) = 0; 25474 25475 virtual HRESULT STDMETHODCALLTYPE GetFileName( 25476 LPWSTR *pszName) = 0; 25477 25478 virtual HRESULT STDMETHODCALLTYPE SetTitle( 25479 LPCWSTR pszTitle) = 0; 25480 25481 virtual HRESULT STDMETHODCALLTYPE SetOkButtonLabel( 25482 LPCWSTR pszText) = 0; 25483 25484 virtual HRESULT STDMETHODCALLTYPE SetFileNameLabel( 25485 LPCWSTR pszLabel) = 0; 25486 25487 virtual HRESULT STDMETHODCALLTYPE GetResult( 25488 IShellItem **ppsi) = 0; 25489 25490 virtual HRESULT STDMETHODCALLTYPE AddPlace( 25491 IShellItem *psi, 25492 FDAP fdap) = 0; 25493 25494 virtual HRESULT STDMETHODCALLTYPE SetDefaultExtension( 25495 LPCWSTR pszDefaultExtension) = 0; 25496 25497 virtual HRESULT STDMETHODCALLTYPE Close( 25498 HRESULT hr) = 0; 25499 25500 virtual HRESULT STDMETHODCALLTYPE SetClientGuid( 25501 REFGUID guid) = 0; 25502 25503 virtual HRESULT STDMETHODCALLTYPE ClearClientData( 25504 ) = 0; 25505 25506 virtual HRESULT STDMETHODCALLTYPE SetFilter( 25507 IShellItemFilter *pFilter) = 0; 25508 25509 }; 25510 #ifdef __CRT_UUID_DECL 25511 __CRT_UUID_DECL(IFileDialog, 0x42f85136, 0xdb7e, 0x439c, 0x85,0xf1, 0xe4,0x07,0x5d,0x13,0x5f,0xc8) 25512 #endif 25513 #else 25514 typedef struct IFileDialogVtbl { 25515 BEGIN_INTERFACE 25516 25517 /*** IUnknown methods ***/ 25518 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 25519 IFileDialog* This, 25520 REFIID riid, 25521 void **ppvObject); 25522 25523 ULONG (STDMETHODCALLTYPE *AddRef)( 25524 IFileDialog* This); 25525 25526 ULONG (STDMETHODCALLTYPE *Release)( 25527 IFileDialog* This); 25528 25529 /*** IModalWindow methods ***/ 25530 HRESULT (STDMETHODCALLTYPE *Show)( 25531 IFileDialog* This, 25532 HWND hwndOwner); 25533 25534 /*** IFileDialog methods ***/ 25535 HRESULT (STDMETHODCALLTYPE *SetFileTypes)( 25536 IFileDialog* This, 25537 UINT cFileTypes, 25538 const COMDLG_FILTERSPEC *rgFilterSpec); 25539 25540 HRESULT (STDMETHODCALLTYPE *SetFileTypeIndex)( 25541 IFileDialog* This, 25542 UINT iFileType); 25543 25544 HRESULT (STDMETHODCALLTYPE *GetFileTypeIndex)( 25545 IFileDialog* This, 25546 UINT *piFileType); 25547 25548 HRESULT (STDMETHODCALLTYPE *Advise)( 25549 IFileDialog* This, 25550 IFileDialogEvents *pfde, 25551 DWORD *pdwCookie); 25552 25553 HRESULT (STDMETHODCALLTYPE *Unadvise)( 25554 IFileDialog* This, 25555 DWORD dwCookie); 25556 25557 HRESULT (STDMETHODCALLTYPE *SetOptions)( 25558 IFileDialog* This, 25559 FILEOPENDIALOGOPTIONS fos); 25560 25561 HRESULT (STDMETHODCALLTYPE *GetOptions)( 25562 IFileDialog* This, 25563 FILEOPENDIALOGOPTIONS *pfos); 25564 25565 HRESULT (STDMETHODCALLTYPE *SetDefaultFolder)( 25566 IFileDialog* This, 25567 IShellItem *psi); 25568 25569 HRESULT (STDMETHODCALLTYPE *SetFolder)( 25570 IFileDialog* This, 25571 IShellItem *psi); 25572 25573 HRESULT (STDMETHODCALLTYPE *GetFolder)( 25574 IFileDialog* This, 25575 IShellItem **ppsi); 25576 25577 HRESULT (STDMETHODCALLTYPE *GetCurrentSelection)( 25578 IFileDialog* This, 25579 IShellItem **ppsi); 25580 25581 HRESULT (STDMETHODCALLTYPE *SetFileName)( 25582 IFileDialog* This, 25583 LPCWSTR pszName); 25584 25585 HRESULT (STDMETHODCALLTYPE *GetFileName)( 25586 IFileDialog* This, 25587 LPWSTR *pszName); 25588 25589 HRESULT (STDMETHODCALLTYPE *SetTitle)( 25590 IFileDialog* This, 25591 LPCWSTR pszTitle); 25592 25593 HRESULT (STDMETHODCALLTYPE *SetOkButtonLabel)( 25594 IFileDialog* This, 25595 LPCWSTR pszText); 25596 25597 HRESULT (STDMETHODCALLTYPE *SetFileNameLabel)( 25598 IFileDialog* This, 25599 LPCWSTR pszLabel); 25600 25601 HRESULT (STDMETHODCALLTYPE *GetResult)( 25602 IFileDialog* This, 25603 IShellItem **ppsi); 25604 25605 HRESULT (STDMETHODCALLTYPE *AddPlace)( 25606 IFileDialog* This, 25607 IShellItem *psi, 25608 FDAP fdap); 25609 25610 HRESULT (STDMETHODCALLTYPE *SetDefaultExtension)( 25611 IFileDialog* This, 25612 LPCWSTR pszDefaultExtension); 25613 25614 HRESULT (STDMETHODCALLTYPE *Close)( 25615 IFileDialog* This, 25616 HRESULT hr); 25617 25618 HRESULT (STDMETHODCALLTYPE *SetClientGuid)( 25619 IFileDialog* This, 25620 REFGUID guid); 25621 25622 HRESULT (STDMETHODCALLTYPE *ClearClientData)( 25623 IFileDialog* This); 25624 25625 HRESULT (STDMETHODCALLTYPE *SetFilter)( 25626 IFileDialog* This, 25627 IShellItemFilter *pFilter); 25628 25629 END_INTERFACE 25630 } IFileDialogVtbl; 25631 interface IFileDialog { 25632 CONST_VTBL IFileDialogVtbl* lpVtbl; 25633 }; 25634 25635 #ifdef COBJMACROS 25636 #ifndef WIDL_C_INLINE_WRAPPERS 25637 /*** IUnknown methods ***/ 25638 #define IFileDialog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 25639 #define IFileDialog_AddRef(This) (This)->lpVtbl->AddRef(This) 25640 #define IFileDialog_Release(This) (This)->lpVtbl->Release(This) 25641 /*** IModalWindow methods ***/ 25642 #define IFileDialog_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) 25643 /*** IFileDialog methods ***/ 25644 #define IFileDialog_SetFileTypes(This,cFileTypes,rgFilterSpec) (This)->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec) 25645 #define IFileDialog_SetFileTypeIndex(This,iFileType) (This)->lpVtbl->SetFileTypeIndex(This,iFileType) 25646 #define IFileDialog_GetFileTypeIndex(This,piFileType) (This)->lpVtbl->GetFileTypeIndex(This,piFileType) 25647 #define IFileDialog_Advise(This,pfde,pdwCookie) (This)->lpVtbl->Advise(This,pfde,pdwCookie) 25648 #define IFileDialog_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) 25649 #define IFileDialog_SetOptions(This,fos) (This)->lpVtbl->SetOptions(This,fos) 25650 #define IFileDialog_GetOptions(This,pfos) (This)->lpVtbl->GetOptions(This,pfos) 25651 #define IFileDialog_SetDefaultFolder(This,psi) (This)->lpVtbl->SetDefaultFolder(This,psi) 25652 #define IFileDialog_SetFolder(This,psi) (This)->lpVtbl->SetFolder(This,psi) 25653 #define IFileDialog_GetFolder(This,ppsi) (This)->lpVtbl->GetFolder(This,ppsi) 25654 #define IFileDialog_GetCurrentSelection(This,ppsi) (This)->lpVtbl->GetCurrentSelection(This,ppsi) 25655 #define IFileDialog_SetFileName(This,pszName) (This)->lpVtbl->SetFileName(This,pszName) 25656 #define IFileDialog_GetFileName(This,pszName) (This)->lpVtbl->GetFileName(This,pszName) 25657 #define IFileDialog_SetTitle(This,pszTitle) (This)->lpVtbl->SetTitle(This,pszTitle) 25658 #define IFileDialog_SetOkButtonLabel(This,pszText) (This)->lpVtbl->SetOkButtonLabel(This,pszText) 25659 #define IFileDialog_SetFileNameLabel(This,pszLabel) (This)->lpVtbl->SetFileNameLabel(This,pszLabel) 25660 #define IFileDialog_GetResult(This,ppsi) (This)->lpVtbl->GetResult(This,ppsi) 25661 #define IFileDialog_AddPlace(This,psi,fdap) (This)->lpVtbl->AddPlace(This,psi,fdap) 25662 #define IFileDialog_SetDefaultExtension(This,pszDefaultExtension) (This)->lpVtbl->SetDefaultExtension(This,pszDefaultExtension) 25663 #define IFileDialog_Close(This,hr) (This)->lpVtbl->Close(This,hr) 25664 #define IFileDialog_SetClientGuid(This,guid) (This)->lpVtbl->SetClientGuid(This,guid) 25665 #define IFileDialog_ClearClientData(This) (This)->lpVtbl->ClearClientData(This) 25666 #define IFileDialog_SetFilter(This,pFilter) (This)->lpVtbl->SetFilter(This,pFilter) 25667 #else 25668 /*** IUnknown methods ***/ 25669 static FORCEINLINE HRESULT IFileDialog_QueryInterface(IFileDialog* This,REFIID riid,void **ppvObject) { 25670 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 25671 } 25672 static FORCEINLINE ULONG IFileDialog_AddRef(IFileDialog* This) { 25673 return This->lpVtbl->AddRef(This); 25674 } 25675 static FORCEINLINE ULONG IFileDialog_Release(IFileDialog* This) { 25676 return This->lpVtbl->Release(This); 25677 } 25678 /*** IModalWindow methods ***/ 25679 static FORCEINLINE HRESULT IFileDialog_Show(IFileDialog* This,HWND hwndOwner) { 25680 return This->lpVtbl->Show(This,hwndOwner); 25681 } 25682 /*** IFileDialog methods ***/ 25683 static FORCEINLINE HRESULT IFileDialog_SetFileTypes(IFileDialog* This,UINT cFileTypes,const COMDLG_FILTERSPEC *rgFilterSpec) { 25684 return This->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec); 25685 } 25686 static FORCEINLINE HRESULT IFileDialog_SetFileTypeIndex(IFileDialog* This,UINT iFileType) { 25687 return This->lpVtbl->SetFileTypeIndex(This,iFileType); 25688 } 25689 static FORCEINLINE HRESULT IFileDialog_GetFileTypeIndex(IFileDialog* This,UINT *piFileType) { 25690 return This->lpVtbl->GetFileTypeIndex(This,piFileType); 25691 } 25692 static FORCEINLINE HRESULT IFileDialog_Advise(IFileDialog* This,IFileDialogEvents *pfde,DWORD *pdwCookie) { 25693 return This->lpVtbl->Advise(This,pfde,pdwCookie); 25694 } 25695 static FORCEINLINE HRESULT IFileDialog_Unadvise(IFileDialog* This,DWORD dwCookie) { 25696 return This->lpVtbl->Unadvise(This,dwCookie); 25697 } 25698 static FORCEINLINE HRESULT IFileDialog_SetOptions(IFileDialog* This,FILEOPENDIALOGOPTIONS fos) { 25699 return This->lpVtbl->SetOptions(This,fos); 25700 } 25701 static FORCEINLINE HRESULT IFileDialog_GetOptions(IFileDialog* This,FILEOPENDIALOGOPTIONS *pfos) { 25702 return This->lpVtbl->GetOptions(This,pfos); 25703 } 25704 static FORCEINLINE HRESULT IFileDialog_SetDefaultFolder(IFileDialog* This,IShellItem *psi) { 25705 return This->lpVtbl->SetDefaultFolder(This,psi); 25706 } 25707 static FORCEINLINE HRESULT IFileDialog_SetFolder(IFileDialog* This,IShellItem *psi) { 25708 return This->lpVtbl->SetFolder(This,psi); 25709 } 25710 static FORCEINLINE HRESULT IFileDialog_GetFolder(IFileDialog* This,IShellItem **ppsi) { 25711 return This->lpVtbl->GetFolder(This,ppsi); 25712 } 25713 static FORCEINLINE HRESULT IFileDialog_GetCurrentSelection(IFileDialog* This,IShellItem **ppsi) { 25714 return This->lpVtbl->GetCurrentSelection(This,ppsi); 25715 } 25716 static FORCEINLINE HRESULT IFileDialog_SetFileName(IFileDialog* This,LPCWSTR pszName) { 25717 return This->lpVtbl->SetFileName(This,pszName); 25718 } 25719 static FORCEINLINE HRESULT IFileDialog_GetFileName(IFileDialog* This,LPWSTR *pszName) { 25720 return This->lpVtbl->GetFileName(This,pszName); 25721 } 25722 static FORCEINLINE HRESULT IFileDialog_SetTitle(IFileDialog* This,LPCWSTR pszTitle) { 25723 return This->lpVtbl->SetTitle(This,pszTitle); 25724 } 25725 static FORCEINLINE HRESULT IFileDialog_SetOkButtonLabel(IFileDialog* This,LPCWSTR pszText) { 25726 return This->lpVtbl->SetOkButtonLabel(This,pszText); 25727 } 25728 static FORCEINLINE HRESULT IFileDialog_SetFileNameLabel(IFileDialog* This,LPCWSTR pszLabel) { 25729 return This->lpVtbl->SetFileNameLabel(This,pszLabel); 25730 } 25731 static FORCEINLINE HRESULT IFileDialog_GetResult(IFileDialog* This,IShellItem **ppsi) { 25732 return This->lpVtbl->GetResult(This,ppsi); 25733 } 25734 static FORCEINLINE HRESULT IFileDialog_AddPlace(IFileDialog* This,IShellItem *psi,FDAP fdap) { 25735 return This->lpVtbl->AddPlace(This,psi,fdap); 25736 } 25737 static FORCEINLINE HRESULT IFileDialog_SetDefaultExtension(IFileDialog* This,LPCWSTR pszDefaultExtension) { 25738 return This->lpVtbl->SetDefaultExtension(This,pszDefaultExtension); 25739 } 25740 static FORCEINLINE HRESULT IFileDialog_Close(IFileDialog* This,HRESULT hr) { 25741 return This->lpVtbl->Close(This,hr); 25742 } 25743 static FORCEINLINE HRESULT IFileDialog_SetClientGuid(IFileDialog* This,REFGUID guid) { 25744 return This->lpVtbl->SetClientGuid(This,guid); 25745 } 25746 static FORCEINLINE HRESULT IFileDialog_ClearClientData(IFileDialog* This) { 25747 return This->lpVtbl->ClearClientData(This); 25748 } 25749 static FORCEINLINE HRESULT IFileDialog_SetFilter(IFileDialog* This,IShellItemFilter *pFilter) { 25750 return This->lpVtbl->SetFilter(This,pFilter); 25751 } 25752 #endif 25753 #endif 25754 25755 #endif 25756 25757 HRESULT STDMETHODCALLTYPE IFileDialog_SetFileTypes_Proxy( 25758 IFileDialog* This, 25759 UINT cFileTypes, 25760 const COMDLG_FILTERSPEC *rgFilterSpec); 25761 void __RPC_STUB IFileDialog_SetFileTypes_Stub( 25762 IRpcStubBuffer* This, 25763 IRpcChannelBuffer* pRpcChannelBuffer, 25764 PRPC_MESSAGE pRpcMessage, 25765 DWORD* pdwStubPhase); 25766 HRESULT STDMETHODCALLTYPE IFileDialog_SetFileTypeIndex_Proxy( 25767 IFileDialog* This, 25768 UINT iFileType); 25769 void __RPC_STUB IFileDialog_SetFileTypeIndex_Stub( 25770 IRpcStubBuffer* This, 25771 IRpcChannelBuffer* pRpcChannelBuffer, 25772 PRPC_MESSAGE pRpcMessage, 25773 DWORD* pdwStubPhase); 25774 HRESULT STDMETHODCALLTYPE IFileDialog_GetFileTypeIndex_Proxy( 25775 IFileDialog* This, 25776 UINT *piFileType); 25777 void __RPC_STUB IFileDialog_GetFileTypeIndex_Stub( 25778 IRpcStubBuffer* This, 25779 IRpcChannelBuffer* pRpcChannelBuffer, 25780 PRPC_MESSAGE pRpcMessage, 25781 DWORD* pdwStubPhase); 25782 HRESULT STDMETHODCALLTYPE IFileDialog_Advise_Proxy( 25783 IFileDialog* This, 25784 IFileDialogEvents *pfde, 25785 DWORD *pdwCookie); 25786 void __RPC_STUB IFileDialog_Advise_Stub( 25787 IRpcStubBuffer* This, 25788 IRpcChannelBuffer* pRpcChannelBuffer, 25789 PRPC_MESSAGE pRpcMessage, 25790 DWORD* pdwStubPhase); 25791 HRESULT STDMETHODCALLTYPE IFileDialog_Unadvise_Proxy( 25792 IFileDialog* This, 25793 DWORD dwCookie); 25794 void __RPC_STUB IFileDialog_Unadvise_Stub( 25795 IRpcStubBuffer* This, 25796 IRpcChannelBuffer* pRpcChannelBuffer, 25797 PRPC_MESSAGE pRpcMessage, 25798 DWORD* pdwStubPhase); 25799 HRESULT STDMETHODCALLTYPE IFileDialog_SetOptions_Proxy( 25800 IFileDialog* This, 25801 FILEOPENDIALOGOPTIONS fos); 25802 void __RPC_STUB IFileDialog_SetOptions_Stub( 25803 IRpcStubBuffer* This, 25804 IRpcChannelBuffer* pRpcChannelBuffer, 25805 PRPC_MESSAGE pRpcMessage, 25806 DWORD* pdwStubPhase); 25807 HRESULT STDMETHODCALLTYPE IFileDialog_GetOptions_Proxy( 25808 IFileDialog* This, 25809 FILEOPENDIALOGOPTIONS *pfos); 25810 void __RPC_STUB IFileDialog_GetOptions_Stub( 25811 IRpcStubBuffer* This, 25812 IRpcChannelBuffer* pRpcChannelBuffer, 25813 PRPC_MESSAGE pRpcMessage, 25814 DWORD* pdwStubPhase); 25815 HRESULT STDMETHODCALLTYPE IFileDialog_SetDefaultFolder_Proxy( 25816 IFileDialog* This, 25817 IShellItem *psi); 25818 void __RPC_STUB IFileDialog_SetDefaultFolder_Stub( 25819 IRpcStubBuffer* This, 25820 IRpcChannelBuffer* pRpcChannelBuffer, 25821 PRPC_MESSAGE pRpcMessage, 25822 DWORD* pdwStubPhase); 25823 HRESULT STDMETHODCALLTYPE IFileDialog_SetFolder_Proxy( 25824 IFileDialog* This, 25825 IShellItem *psi); 25826 void __RPC_STUB IFileDialog_SetFolder_Stub( 25827 IRpcStubBuffer* This, 25828 IRpcChannelBuffer* pRpcChannelBuffer, 25829 PRPC_MESSAGE pRpcMessage, 25830 DWORD* pdwStubPhase); 25831 HRESULT STDMETHODCALLTYPE IFileDialog_GetFolder_Proxy( 25832 IFileDialog* This, 25833 IShellItem **ppsi); 25834 void __RPC_STUB IFileDialog_GetFolder_Stub( 25835 IRpcStubBuffer* This, 25836 IRpcChannelBuffer* pRpcChannelBuffer, 25837 PRPC_MESSAGE pRpcMessage, 25838 DWORD* pdwStubPhase); 25839 HRESULT STDMETHODCALLTYPE IFileDialog_GetCurrentSelection_Proxy( 25840 IFileDialog* This, 25841 IShellItem **ppsi); 25842 void __RPC_STUB IFileDialog_GetCurrentSelection_Stub( 25843 IRpcStubBuffer* This, 25844 IRpcChannelBuffer* pRpcChannelBuffer, 25845 PRPC_MESSAGE pRpcMessage, 25846 DWORD* pdwStubPhase); 25847 HRESULT STDMETHODCALLTYPE IFileDialog_SetFileName_Proxy( 25848 IFileDialog* This, 25849 LPCWSTR pszName); 25850 void __RPC_STUB IFileDialog_SetFileName_Stub( 25851 IRpcStubBuffer* This, 25852 IRpcChannelBuffer* pRpcChannelBuffer, 25853 PRPC_MESSAGE pRpcMessage, 25854 DWORD* pdwStubPhase); 25855 HRESULT STDMETHODCALLTYPE IFileDialog_GetFileName_Proxy( 25856 IFileDialog* This, 25857 LPWSTR *pszName); 25858 void __RPC_STUB IFileDialog_GetFileName_Stub( 25859 IRpcStubBuffer* This, 25860 IRpcChannelBuffer* pRpcChannelBuffer, 25861 PRPC_MESSAGE pRpcMessage, 25862 DWORD* pdwStubPhase); 25863 HRESULT STDMETHODCALLTYPE IFileDialog_SetTitle_Proxy( 25864 IFileDialog* This, 25865 LPCWSTR pszTitle); 25866 void __RPC_STUB IFileDialog_SetTitle_Stub( 25867 IRpcStubBuffer* This, 25868 IRpcChannelBuffer* pRpcChannelBuffer, 25869 PRPC_MESSAGE pRpcMessage, 25870 DWORD* pdwStubPhase); 25871 HRESULT STDMETHODCALLTYPE IFileDialog_SetOkButtonLabel_Proxy( 25872 IFileDialog* This, 25873 LPCWSTR pszText); 25874 void __RPC_STUB IFileDialog_SetOkButtonLabel_Stub( 25875 IRpcStubBuffer* This, 25876 IRpcChannelBuffer* pRpcChannelBuffer, 25877 PRPC_MESSAGE pRpcMessage, 25878 DWORD* pdwStubPhase); 25879 HRESULT STDMETHODCALLTYPE IFileDialog_SetFileNameLabel_Proxy( 25880 IFileDialog* This, 25881 LPCWSTR pszLabel); 25882 void __RPC_STUB IFileDialog_SetFileNameLabel_Stub( 25883 IRpcStubBuffer* This, 25884 IRpcChannelBuffer* pRpcChannelBuffer, 25885 PRPC_MESSAGE pRpcMessage, 25886 DWORD* pdwStubPhase); 25887 HRESULT STDMETHODCALLTYPE IFileDialog_GetResult_Proxy( 25888 IFileDialog* This, 25889 IShellItem **ppsi); 25890 void __RPC_STUB IFileDialog_GetResult_Stub( 25891 IRpcStubBuffer* This, 25892 IRpcChannelBuffer* pRpcChannelBuffer, 25893 PRPC_MESSAGE pRpcMessage, 25894 DWORD* pdwStubPhase); 25895 HRESULT STDMETHODCALLTYPE IFileDialog_AddPlace_Proxy( 25896 IFileDialog* This, 25897 IShellItem *psi, 25898 FDAP fdap); 25899 void __RPC_STUB IFileDialog_AddPlace_Stub( 25900 IRpcStubBuffer* This, 25901 IRpcChannelBuffer* pRpcChannelBuffer, 25902 PRPC_MESSAGE pRpcMessage, 25903 DWORD* pdwStubPhase); 25904 HRESULT STDMETHODCALLTYPE IFileDialog_SetDefaultExtension_Proxy( 25905 IFileDialog* This, 25906 LPCWSTR pszDefaultExtension); 25907 void __RPC_STUB IFileDialog_SetDefaultExtension_Stub( 25908 IRpcStubBuffer* This, 25909 IRpcChannelBuffer* pRpcChannelBuffer, 25910 PRPC_MESSAGE pRpcMessage, 25911 DWORD* pdwStubPhase); 25912 HRESULT STDMETHODCALLTYPE IFileDialog_Close_Proxy( 25913 IFileDialog* This, 25914 HRESULT hr); 25915 void __RPC_STUB IFileDialog_Close_Stub( 25916 IRpcStubBuffer* This, 25917 IRpcChannelBuffer* pRpcChannelBuffer, 25918 PRPC_MESSAGE pRpcMessage, 25919 DWORD* pdwStubPhase); 25920 HRESULT STDMETHODCALLTYPE IFileDialog_SetClientGuid_Proxy( 25921 IFileDialog* This, 25922 REFGUID guid); 25923 void __RPC_STUB IFileDialog_SetClientGuid_Stub( 25924 IRpcStubBuffer* This, 25925 IRpcChannelBuffer* pRpcChannelBuffer, 25926 PRPC_MESSAGE pRpcMessage, 25927 DWORD* pdwStubPhase); 25928 HRESULT STDMETHODCALLTYPE IFileDialog_ClearClientData_Proxy( 25929 IFileDialog* This); 25930 void __RPC_STUB IFileDialog_ClearClientData_Stub( 25931 IRpcStubBuffer* This, 25932 IRpcChannelBuffer* pRpcChannelBuffer, 25933 PRPC_MESSAGE pRpcMessage, 25934 DWORD* pdwStubPhase); 25935 HRESULT STDMETHODCALLTYPE IFileDialog_SetFilter_Proxy( 25936 IFileDialog* This, 25937 IShellItemFilter *pFilter); 25938 void __RPC_STUB IFileDialog_SetFilter_Stub( 25939 IRpcStubBuffer* This, 25940 IRpcChannelBuffer* pRpcChannelBuffer, 25941 PRPC_MESSAGE pRpcMessage, 25942 DWORD* pdwStubPhase); 25943 25944 #endif /* __IFileDialog_INTERFACE_DEFINED__ */ 25945 25946 25947 /***************************************************************************** 25948 * IFileSaveDialog interface 25949 */ 25950 #ifndef __IFileSaveDialog_INTERFACE_DEFINED__ 25951 #define __IFileSaveDialog_INTERFACE_DEFINED__ 25952 25953 DEFINE_GUID(IID_IFileSaveDialog, 0x84bccd23, 0x5fde, 0x4cdb, 0xae,0xa4, 0xaf,0x64,0xb8,0x3d,0x78,0xab); 25954 #if defined(__cplusplus) && !defined(CINTERFACE) 25955 MIDL_INTERFACE("84bccd23-5fde-4cdb-aea4-af64b83d78ab") 25956 IFileSaveDialog : public IFileDialog 25957 { 25958 virtual HRESULT STDMETHODCALLTYPE SetSaveAsItem( 25959 IShellItem *psi) = 0; 25960 25961 virtual HRESULT STDMETHODCALLTYPE SetProperties( 25962 IPropertyStore *pStore) = 0; 25963 25964 virtual HRESULT STDMETHODCALLTYPE SetCollectedProperties( 25965 IPropertyDescriptionList *pList, 25966 WINBOOL fAppendDefault) = 0; 25967 25968 virtual HRESULT STDMETHODCALLTYPE GetProperties( 25969 IPropertyStore **ppStore) = 0; 25970 25971 virtual HRESULT STDMETHODCALLTYPE ApplyProperties( 25972 IShellItem *psi, 25973 IPropertyStore *pStore, 25974 HWND hwnd, 25975 IFileOperationProgressSink *pSink) = 0; 25976 25977 }; 25978 #ifdef __CRT_UUID_DECL 25979 __CRT_UUID_DECL(IFileSaveDialog, 0x84bccd23, 0x5fde, 0x4cdb, 0xae,0xa4, 0xaf,0x64,0xb8,0x3d,0x78,0xab) 25980 #endif 25981 #else 25982 typedef struct IFileSaveDialogVtbl { 25983 BEGIN_INTERFACE 25984 25985 /*** IUnknown methods ***/ 25986 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 25987 IFileSaveDialog* This, 25988 REFIID riid, 25989 void **ppvObject); 25990 25991 ULONG (STDMETHODCALLTYPE *AddRef)( 25992 IFileSaveDialog* This); 25993 25994 ULONG (STDMETHODCALLTYPE *Release)( 25995 IFileSaveDialog* This); 25996 25997 /*** IModalWindow methods ***/ 25998 HRESULT (STDMETHODCALLTYPE *Show)( 25999 IFileSaveDialog* This, 26000 HWND hwndOwner); 26001 26002 /*** IFileDialog methods ***/ 26003 HRESULT (STDMETHODCALLTYPE *SetFileTypes)( 26004 IFileSaveDialog* This, 26005 UINT cFileTypes, 26006 const COMDLG_FILTERSPEC *rgFilterSpec); 26007 26008 HRESULT (STDMETHODCALLTYPE *SetFileTypeIndex)( 26009 IFileSaveDialog* This, 26010 UINT iFileType); 26011 26012 HRESULT (STDMETHODCALLTYPE *GetFileTypeIndex)( 26013 IFileSaveDialog* This, 26014 UINT *piFileType); 26015 26016 HRESULT (STDMETHODCALLTYPE *Advise)( 26017 IFileSaveDialog* This, 26018 IFileDialogEvents *pfde, 26019 DWORD *pdwCookie); 26020 26021 HRESULT (STDMETHODCALLTYPE *Unadvise)( 26022 IFileSaveDialog* This, 26023 DWORD dwCookie); 26024 26025 HRESULT (STDMETHODCALLTYPE *SetOptions)( 26026 IFileSaveDialog* This, 26027 FILEOPENDIALOGOPTIONS fos); 26028 26029 HRESULT (STDMETHODCALLTYPE *GetOptions)( 26030 IFileSaveDialog* This, 26031 FILEOPENDIALOGOPTIONS *pfos); 26032 26033 HRESULT (STDMETHODCALLTYPE *SetDefaultFolder)( 26034 IFileSaveDialog* This, 26035 IShellItem *psi); 26036 26037 HRESULT (STDMETHODCALLTYPE *SetFolder)( 26038 IFileSaveDialog* This, 26039 IShellItem *psi); 26040 26041 HRESULT (STDMETHODCALLTYPE *GetFolder)( 26042 IFileSaveDialog* This, 26043 IShellItem **ppsi); 26044 26045 HRESULT (STDMETHODCALLTYPE *GetCurrentSelection)( 26046 IFileSaveDialog* This, 26047 IShellItem **ppsi); 26048 26049 HRESULT (STDMETHODCALLTYPE *SetFileName)( 26050 IFileSaveDialog* This, 26051 LPCWSTR pszName); 26052 26053 HRESULT (STDMETHODCALLTYPE *GetFileName)( 26054 IFileSaveDialog* This, 26055 LPWSTR *pszName); 26056 26057 HRESULT (STDMETHODCALLTYPE *SetTitle)( 26058 IFileSaveDialog* This, 26059 LPCWSTR pszTitle); 26060 26061 HRESULT (STDMETHODCALLTYPE *SetOkButtonLabel)( 26062 IFileSaveDialog* This, 26063 LPCWSTR pszText); 26064 26065 HRESULT (STDMETHODCALLTYPE *SetFileNameLabel)( 26066 IFileSaveDialog* This, 26067 LPCWSTR pszLabel); 26068 26069 HRESULT (STDMETHODCALLTYPE *GetResult)( 26070 IFileSaveDialog* This, 26071 IShellItem **ppsi); 26072 26073 HRESULT (STDMETHODCALLTYPE *AddPlace)( 26074 IFileSaveDialog* This, 26075 IShellItem *psi, 26076 FDAP fdap); 26077 26078 HRESULT (STDMETHODCALLTYPE *SetDefaultExtension)( 26079 IFileSaveDialog* This, 26080 LPCWSTR pszDefaultExtension); 26081 26082 HRESULT (STDMETHODCALLTYPE *Close)( 26083 IFileSaveDialog* This, 26084 HRESULT hr); 26085 26086 HRESULT (STDMETHODCALLTYPE *SetClientGuid)( 26087 IFileSaveDialog* This, 26088 REFGUID guid); 26089 26090 HRESULT (STDMETHODCALLTYPE *ClearClientData)( 26091 IFileSaveDialog* This); 26092 26093 HRESULT (STDMETHODCALLTYPE *SetFilter)( 26094 IFileSaveDialog* This, 26095 IShellItemFilter *pFilter); 26096 26097 /*** IFileSaveDialog methods ***/ 26098 HRESULT (STDMETHODCALLTYPE *SetSaveAsItem)( 26099 IFileSaveDialog* This, 26100 IShellItem *psi); 26101 26102 HRESULT (STDMETHODCALLTYPE *SetProperties)( 26103 IFileSaveDialog* This, 26104 IPropertyStore *pStore); 26105 26106 HRESULT (STDMETHODCALLTYPE *SetCollectedProperties)( 26107 IFileSaveDialog* This, 26108 IPropertyDescriptionList *pList, 26109 WINBOOL fAppendDefault); 26110 26111 HRESULT (STDMETHODCALLTYPE *GetProperties)( 26112 IFileSaveDialog* This, 26113 IPropertyStore **ppStore); 26114 26115 HRESULT (STDMETHODCALLTYPE *ApplyProperties)( 26116 IFileSaveDialog* This, 26117 IShellItem *psi, 26118 IPropertyStore *pStore, 26119 HWND hwnd, 26120 IFileOperationProgressSink *pSink); 26121 26122 END_INTERFACE 26123 } IFileSaveDialogVtbl; 26124 interface IFileSaveDialog { 26125 CONST_VTBL IFileSaveDialogVtbl* lpVtbl; 26126 }; 26127 26128 #ifdef COBJMACROS 26129 #ifndef WIDL_C_INLINE_WRAPPERS 26130 /*** IUnknown methods ***/ 26131 #define IFileSaveDialog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 26132 #define IFileSaveDialog_AddRef(This) (This)->lpVtbl->AddRef(This) 26133 #define IFileSaveDialog_Release(This) (This)->lpVtbl->Release(This) 26134 /*** IModalWindow methods ***/ 26135 #define IFileSaveDialog_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) 26136 /*** IFileDialog methods ***/ 26137 #define IFileSaveDialog_SetFileTypes(This,cFileTypes,rgFilterSpec) (This)->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec) 26138 #define IFileSaveDialog_SetFileTypeIndex(This,iFileType) (This)->lpVtbl->SetFileTypeIndex(This,iFileType) 26139 #define IFileSaveDialog_GetFileTypeIndex(This,piFileType) (This)->lpVtbl->GetFileTypeIndex(This,piFileType) 26140 #define IFileSaveDialog_Advise(This,pfde,pdwCookie) (This)->lpVtbl->Advise(This,pfde,pdwCookie) 26141 #define IFileSaveDialog_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) 26142 #define IFileSaveDialog_SetOptions(This,fos) (This)->lpVtbl->SetOptions(This,fos) 26143 #define IFileSaveDialog_GetOptions(This,pfos) (This)->lpVtbl->GetOptions(This,pfos) 26144 #define IFileSaveDialog_SetDefaultFolder(This,psi) (This)->lpVtbl->SetDefaultFolder(This,psi) 26145 #define IFileSaveDialog_SetFolder(This,psi) (This)->lpVtbl->SetFolder(This,psi) 26146 #define IFileSaveDialog_GetFolder(This,ppsi) (This)->lpVtbl->GetFolder(This,ppsi) 26147 #define IFileSaveDialog_GetCurrentSelection(This,ppsi) (This)->lpVtbl->GetCurrentSelection(This,ppsi) 26148 #define IFileSaveDialog_SetFileName(This,pszName) (This)->lpVtbl->SetFileName(This,pszName) 26149 #define IFileSaveDialog_GetFileName(This,pszName) (This)->lpVtbl->GetFileName(This,pszName) 26150 #define IFileSaveDialog_SetTitle(This,pszTitle) (This)->lpVtbl->SetTitle(This,pszTitle) 26151 #define IFileSaveDialog_SetOkButtonLabel(This,pszText) (This)->lpVtbl->SetOkButtonLabel(This,pszText) 26152 #define IFileSaveDialog_SetFileNameLabel(This,pszLabel) (This)->lpVtbl->SetFileNameLabel(This,pszLabel) 26153 #define IFileSaveDialog_GetResult(This,ppsi) (This)->lpVtbl->GetResult(This,ppsi) 26154 #define IFileSaveDialog_AddPlace(This,psi,fdap) (This)->lpVtbl->AddPlace(This,psi,fdap) 26155 #define IFileSaveDialog_SetDefaultExtension(This,pszDefaultExtension) (This)->lpVtbl->SetDefaultExtension(This,pszDefaultExtension) 26156 #define IFileSaveDialog_Close(This,hr) (This)->lpVtbl->Close(This,hr) 26157 #define IFileSaveDialog_SetClientGuid(This,guid) (This)->lpVtbl->SetClientGuid(This,guid) 26158 #define IFileSaveDialog_ClearClientData(This) (This)->lpVtbl->ClearClientData(This) 26159 #define IFileSaveDialog_SetFilter(This,pFilter) (This)->lpVtbl->SetFilter(This,pFilter) 26160 /*** IFileSaveDialog methods ***/ 26161 #define IFileSaveDialog_SetSaveAsItem(This,psi) (This)->lpVtbl->SetSaveAsItem(This,psi) 26162 #define IFileSaveDialog_SetProperties(This,pStore) (This)->lpVtbl->SetProperties(This,pStore) 26163 #define IFileSaveDialog_SetCollectedProperties(This,pList,fAppendDefault) (This)->lpVtbl->SetCollectedProperties(This,pList,fAppendDefault) 26164 #define IFileSaveDialog_GetProperties(This,ppStore) (This)->lpVtbl->GetProperties(This,ppStore) 26165 #define IFileSaveDialog_ApplyProperties(This,psi,pStore,hwnd,pSink) (This)->lpVtbl->ApplyProperties(This,psi,pStore,hwnd,pSink) 26166 #else 26167 /*** IUnknown methods ***/ 26168 static FORCEINLINE HRESULT IFileSaveDialog_QueryInterface(IFileSaveDialog* This,REFIID riid,void **ppvObject) { 26169 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 26170 } 26171 static FORCEINLINE ULONG IFileSaveDialog_AddRef(IFileSaveDialog* This) { 26172 return This->lpVtbl->AddRef(This); 26173 } 26174 static FORCEINLINE ULONG IFileSaveDialog_Release(IFileSaveDialog* This) { 26175 return This->lpVtbl->Release(This); 26176 } 26177 /*** IModalWindow methods ***/ 26178 static FORCEINLINE HRESULT IFileSaveDialog_Show(IFileSaveDialog* This,HWND hwndOwner) { 26179 return This->lpVtbl->Show(This,hwndOwner); 26180 } 26181 /*** IFileDialog methods ***/ 26182 static FORCEINLINE HRESULT IFileSaveDialog_SetFileTypes(IFileSaveDialog* This,UINT cFileTypes,const COMDLG_FILTERSPEC *rgFilterSpec) { 26183 return This->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec); 26184 } 26185 static FORCEINLINE HRESULT IFileSaveDialog_SetFileTypeIndex(IFileSaveDialog* This,UINT iFileType) { 26186 return This->lpVtbl->SetFileTypeIndex(This,iFileType); 26187 } 26188 static FORCEINLINE HRESULT IFileSaveDialog_GetFileTypeIndex(IFileSaveDialog* This,UINT *piFileType) { 26189 return This->lpVtbl->GetFileTypeIndex(This,piFileType); 26190 } 26191 static FORCEINLINE HRESULT IFileSaveDialog_Advise(IFileSaveDialog* This,IFileDialogEvents *pfde,DWORD *pdwCookie) { 26192 return This->lpVtbl->Advise(This,pfde,pdwCookie); 26193 } 26194 static FORCEINLINE HRESULT IFileSaveDialog_Unadvise(IFileSaveDialog* This,DWORD dwCookie) { 26195 return This->lpVtbl->Unadvise(This,dwCookie); 26196 } 26197 static FORCEINLINE HRESULT IFileSaveDialog_SetOptions(IFileSaveDialog* This,FILEOPENDIALOGOPTIONS fos) { 26198 return This->lpVtbl->SetOptions(This,fos); 26199 } 26200 static FORCEINLINE HRESULT IFileSaveDialog_GetOptions(IFileSaveDialog* This,FILEOPENDIALOGOPTIONS *pfos) { 26201 return This->lpVtbl->GetOptions(This,pfos); 26202 } 26203 static FORCEINLINE HRESULT IFileSaveDialog_SetDefaultFolder(IFileSaveDialog* This,IShellItem *psi) { 26204 return This->lpVtbl->SetDefaultFolder(This,psi); 26205 } 26206 static FORCEINLINE HRESULT IFileSaveDialog_SetFolder(IFileSaveDialog* This,IShellItem *psi) { 26207 return This->lpVtbl->SetFolder(This,psi); 26208 } 26209 static FORCEINLINE HRESULT IFileSaveDialog_GetFolder(IFileSaveDialog* This,IShellItem **ppsi) { 26210 return This->lpVtbl->GetFolder(This,ppsi); 26211 } 26212 static FORCEINLINE HRESULT IFileSaveDialog_GetCurrentSelection(IFileSaveDialog* This,IShellItem **ppsi) { 26213 return This->lpVtbl->GetCurrentSelection(This,ppsi); 26214 } 26215 static FORCEINLINE HRESULT IFileSaveDialog_SetFileName(IFileSaveDialog* This,LPCWSTR pszName) { 26216 return This->lpVtbl->SetFileName(This,pszName); 26217 } 26218 static FORCEINLINE HRESULT IFileSaveDialog_GetFileName(IFileSaveDialog* This,LPWSTR *pszName) { 26219 return This->lpVtbl->GetFileName(This,pszName); 26220 } 26221 static FORCEINLINE HRESULT IFileSaveDialog_SetTitle(IFileSaveDialog* This,LPCWSTR pszTitle) { 26222 return This->lpVtbl->SetTitle(This,pszTitle); 26223 } 26224 static FORCEINLINE HRESULT IFileSaveDialog_SetOkButtonLabel(IFileSaveDialog* This,LPCWSTR pszText) { 26225 return This->lpVtbl->SetOkButtonLabel(This,pszText); 26226 } 26227 static FORCEINLINE HRESULT IFileSaveDialog_SetFileNameLabel(IFileSaveDialog* This,LPCWSTR pszLabel) { 26228 return This->lpVtbl->SetFileNameLabel(This,pszLabel); 26229 } 26230 static FORCEINLINE HRESULT IFileSaveDialog_GetResult(IFileSaveDialog* This,IShellItem **ppsi) { 26231 return This->lpVtbl->GetResult(This,ppsi); 26232 } 26233 static FORCEINLINE HRESULT IFileSaveDialog_AddPlace(IFileSaveDialog* This,IShellItem *psi,FDAP fdap) { 26234 return This->lpVtbl->AddPlace(This,psi,fdap); 26235 } 26236 static FORCEINLINE HRESULT IFileSaveDialog_SetDefaultExtension(IFileSaveDialog* This,LPCWSTR pszDefaultExtension) { 26237 return This->lpVtbl->SetDefaultExtension(This,pszDefaultExtension); 26238 } 26239 static FORCEINLINE HRESULT IFileSaveDialog_Close(IFileSaveDialog* This,HRESULT hr) { 26240 return This->lpVtbl->Close(This,hr); 26241 } 26242 static FORCEINLINE HRESULT IFileSaveDialog_SetClientGuid(IFileSaveDialog* This,REFGUID guid) { 26243 return This->lpVtbl->SetClientGuid(This,guid); 26244 } 26245 static FORCEINLINE HRESULT IFileSaveDialog_ClearClientData(IFileSaveDialog* This) { 26246 return This->lpVtbl->ClearClientData(This); 26247 } 26248 static FORCEINLINE HRESULT IFileSaveDialog_SetFilter(IFileSaveDialog* This,IShellItemFilter *pFilter) { 26249 return This->lpVtbl->SetFilter(This,pFilter); 26250 } 26251 /*** IFileSaveDialog methods ***/ 26252 static FORCEINLINE HRESULT IFileSaveDialog_SetSaveAsItem(IFileSaveDialog* This,IShellItem *psi) { 26253 return This->lpVtbl->SetSaveAsItem(This,psi); 26254 } 26255 static FORCEINLINE HRESULT IFileSaveDialog_SetProperties(IFileSaveDialog* This,IPropertyStore *pStore) { 26256 return This->lpVtbl->SetProperties(This,pStore); 26257 } 26258 static FORCEINLINE HRESULT IFileSaveDialog_SetCollectedProperties(IFileSaveDialog* This,IPropertyDescriptionList *pList,WINBOOL fAppendDefault) { 26259 return This->lpVtbl->SetCollectedProperties(This,pList,fAppendDefault); 26260 } 26261 static FORCEINLINE HRESULT IFileSaveDialog_GetProperties(IFileSaveDialog* This,IPropertyStore **ppStore) { 26262 return This->lpVtbl->GetProperties(This,ppStore); 26263 } 26264 static FORCEINLINE HRESULT IFileSaveDialog_ApplyProperties(IFileSaveDialog* This,IShellItem *psi,IPropertyStore *pStore,HWND hwnd,IFileOperationProgressSink *pSink) { 26265 return This->lpVtbl->ApplyProperties(This,psi,pStore,hwnd,pSink); 26266 } 26267 #endif 26268 #endif 26269 26270 #endif 26271 26272 HRESULT STDMETHODCALLTYPE IFileSaveDialog_SetSaveAsItem_Proxy( 26273 IFileSaveDialog* This, 26274 IShellItem *psi); 26275 void __RPC_STUB IFileSaveDialog_SetSaveAsItem_Stub( 26276 IRpcStubBuffer* This, 26277 IRpcChannelBuffer* pRpcChannelBuffer, 26278 PRPC_MESSAGE pRpcMessage, 26279 DWORD* pdwStubPhase); 26280 HRESULT STDMETHODCALLTYPE IFileSaveDialog_SetProperties_Proxy( 26281 IFileSaveDialog* This, 26282 IPropertyStore *pStore); 26283 void __RPC_STUB IFileSaveDialog_SetProperties_Stub( 26284 IRpcStubBuffer* This, 26285 IRpcChannelBuffer* pRpcChannelBuffer, 26286 PRPC_MESSAGE pRpcMessage, 26287 DWORD* pdwStubPhase); 26288 HRESULT STDMETHODCALLTYPE IFileSaveDialog_SetCollectedProperties_Proxy( 26289 IFileSaveDialog* This, 26290 IPropertyDescriptionList *pList, 26291 WINBOOL fAppendDefault); 26292 void __RPC_STUB IFileSaveDialog_SetCollectedProperties_Stub( 26293 IRpcStubBuffer* This, 26294 IRpcChannelBuffer* pRpcChannelBuffer, 26295 PRPC_MESSAGE pRpcMessage, 26296 DWORD* pdwStubPhase); 26297 HRESULT STDMETHODCALLTYPE IFileSaveDialog_GetProperties_Proxy( 26298 IFileSaveDialog* This, 26299 IPropertyStore **ppStore); 26300 void __RPC_STUB IFileSaveDialog_GetProperties_Stub( 26301 IRpcStubBuffer* This, 26302 IRpcChannelBuffer* pRpcChannelBuffer, 26303 PRPC_MESSAGE pRpcMessage, 26304 DWORD* pdwStubPhase); 26305 HRESULT STDMETHODCALLTYPE IFileSaveDialog_ApplyProperties_Proxy( 26306 IFileSaveDialog* This, 26307 IShellItem *psi, 26308 IPropertyStore *pStore, 26309 HWND hwnd, 26310 IFileOperationProgressSink *pSink); 26311 void __RPC_STUB IFileSaveDialog_ApplyProperties_Stub( 26312 IRpcStubBuffer* This, 26313 IRpcChannelBuffer* pRpcChannelBuffer, 26314 PRPC_MESSAGE pRpcMessage, 26315 DWORD* pdwStubPhase); 26316 26317 #endif /* __IFileSaveDialog_INTERFACE_DEFINED__ */ 26318 26319 26320 /***************************************************************************** 26321 * IFileOpenDialog interface 26322 */ 26323 #ifndef __IFileOpenDialog_INTERFACE_DEFINED__ 26324 #define __IFileOpenDialog_INTERFACE_DEFINED__ 26325 26326 DEFINE_GUID(IID_IFileOpenDialog, 0xd57c7288, 0xd4ad, 0x4768, 0xbe,0x02, 0x9d,0x96,0x95,0x32,0xd9,0x60); 26327 #if defined(__cplusplus) && !defined(CINTERFACE) 26328 MIDL_INTERFACE("d57c7288-d4ad-4768-be02-9d969532d960") 26329 IFileOpenDialog : public IFileDialog 26330 { 26331 virtual HRESULT STDMETHODCALLTYPE GetResults( 26332 IShellItemArray **ppenum) = 0; 26333 26334 virtual HRESULT STDMETHODCALLTYPE GetSelectedItems( 26335 IShellItemArray **ppsai) = 0; 26336 26337 }; 26338 #ifdef __CRT_UUID_DECL 26339 __CRT_UUID_DECL(IFileOpenDialog, 0xd57c7288, 0xd4ad, 0x4768, 0xbe,0x02, 0x9d,0x96,0x95,0x32,0xd9,0x60) 26340 #endif 26341 #else 26342 typedef struct IFileOpenDialogVtbl { 26343 BEGIN_INTERFACE 26344 26345 /*** IUnknown methods ***/ 26346 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 26347 IFileOpenDialog* This, 26348 REFIID riid, 26349 void **ppvObject); 26350 26351 ULONG (STDMETHODCALLTYPE *AddRef)( 26352 IFileOpenDialog* This); 26353 26354 ULONG (STDMETHODCALLTYPE *Release)( 26355 IFileOpenDialog* This); 26356 26357 /*** IModalWindow methods ***/ 26358 HRESULT (STDMETHODCALLTYPE *Show)( 26359 IFileOpenDialog* This, 26360 HWND hwndOwner); 26361 26362 /*** IFileDialog methods ***/ 26363 HRESULT (STDMETHODCALLTYPE *SetFileTypes)( 26364 IFileOpenDialog* This, 26365 UINT cFileTypes, 26366 const COMDLG_FILTERSPEC *rgFilterSpec); 26367 26368 HRESULT (STDMETHODCALLTYPE *SetFileTypeIndex)( 26369 IFileOpenDialog* This, 26370 UINT iFileType); 26371 26372 HRESULT (STDMETHODCALLTYPE *GetFileTypeIndex)( 26373 IFileOpenDialog* This, 26374 UINT *piFileType); 26375 26376 HRESULT (STDMETHODCALLTYPE *Advise)( 26377 IFileOpenDialog* This, 26378 IFileDialogEvents *pfde, 26379 DWORD *pdwCookie); 26380 26381 HRESULT (STDMETHODCALLTYPE *Unadvise)( 26382 IFileOpenDialog* This, 26383 DWORD dwCookie); 26384 26385 HRESULT (STDMETHODCALLTYPE *SetOptions)( 26386 IFileOpenDialog* This, 26387 FILEOPENDIALOGOPTIONS fos); 26388 26389 HRESULT (STDMETHODCALLTYPE *GetOptions)( 26390 IFileOpenDialog* This, 26391 FILEOPENDIALOGOPTIONS *pfos); 26392 26393 HRESULT (STDMETHODCALLTYPE *SetDefaultFolder)( 26394 IFileOpenDialog* This, 26395 IShellItem *psi); 26396 26397 HRESULT (STDMETHODCALLTYPE *SetFolder)( 26398 IFileOpenDialog* This, 26399 IShellItem *psi); 26400 26401 HRESULT (STDMETHODCALLTYPE *GetFolder)( 26402 IFileOpenDialog* This, 26403 IShellItem **ppsi); 26404 26405 HRESULT (STDMETHODCALLTYPE *GetCurrentSelection)( 26406 IFileOpenDialog* This, 26407 IShellItem **ppsi); 26408 26409 HRESULT (STDMETHODCALLTYPE *SetFileName)( 26410 IFileOpenDialog* This, 26411 LPCWSTR pszName); 26412 26413 HRESULT (STDMETHODCALLTYPE *GetFileName)( 26414 IFileOpenDialog* This, 26415 LPWSTR *pszName); 26416 26417 HRESULT (STDMETHODCALLTYPE *SetTitle)( 26418 IFileOpenDialog* This, 26419 LPCWSTR pszTitle); 26420 26421 HRESULT (STDMETHODCALLTYPE *SetOkButtonLabel)( 26422 IFileOpenDialog* This, 26423 LPCWSTR pszText); 26424 26425 HRESULT (STDMETHODCALLTYPE *SetFileNameLabel)( 26426 IFileOpenDialog* This, 26427 LPCWSTR pszLabel); 26428 26429 HRESULT (STDMETHODCALLTYPE *GetResult)( 26430 IFileOpenDialog* This, 26431 IShellItem **ppsi); 26432 26433 HRESULT (STDMETHODCALLTYPE *AddPlace)( 26434 IFileOpenDialog* This, 26435 IShellItem *psi, 26436 FDAP fdap); 26437 26438 HRESULT (STDMETHODCALLTYPE *SetDefaultExtension)( 26439 IFileOpenDialog* This, 26440 LPCWSTR pszDefaultExtension); 26441 26442 HRESULT (STDMETHODCALLTYPE *Close)( 26443 IFileOpenDialog* This, 26444 HRESULT hr); 26445 26446 HRESULT (STDMETHODCALLTYPE *SetClientGuid)( 26447 IFileOpenDialog* This, 26448 REFGUID guid); 26449 26450 HRESULT (STDMETHODCALLTYPE *ClearClientData)( 26451 IFileOpenDialog* This); 26452 26453 HRESULT (STDMETHODCALLTYPE *SetFilter)( 26454 IFileOpenDialog* This, 26455 IShellItemFilter *pFilter); 26456 26457 /*** IFileOpenDialog methods ***/ 26458 HRESULT (STDMETHODCALLTYPE *GetResults)( 26459 IFileOpenDialog* This, 26460 IShellItemArray **ppenum); 26461 26462 HRESULT (STDMETHODCALLTYPE *GetSelectedItems)( 26463 IFileOpenDialog* This, 26464 IShellItemArray **ppsai); 26465 26466 END_INTERFACE 26467 } IFileOpenDialogVtbl; 26468 interface IFileOpenDialog { 26469 CONST_VTBL IFileOpenDialogVtbl* lpVtbl; 26470 }; 26471 26472 #ifdef COBJMACROS 26473 #ifndef WIDL_C_INLINE_WRAPPERS 26474 /*** IUnknown methods ***/ 26475 #define IFileOpenDialog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 26476 #define IFileOpenDialog_AddRef(This) (This)->lpVtbl->AddRef(This) 26477 #define IFileOpenDialog_Release(This) (This)->lpVtbl->Release(This) 26478 /*** IModalWindow methods ***/ 26479 #define IFileOpenDialog_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) 26480 /*** IFileDialog methods ***/ 26481 #define IFileOpenDialog_SetFileTypes(This,cFileTypes,rgFilterSpec) (This)->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec) 26482 #define IFileOpenDialog_SetFileTypeIndex(This,iFileType) (This)->lpVtbl->SetFileTypeIndex(This,iFileType) 26483 #define IFileOpenDialog_GetFileTypeIndex(This,piFileType) (This)->lpVtbl->GetFileTypeIndex(This,piFileType) 26484 #define IFileOpenDialog_Advise(This,pfde,pdwCookie) (This)->lpVtbl->Advise(This,pfde,pdwCookie) 26485 #define IFileOpenDialog_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) 26486 #define IFileOpenDialog_SetOptions(This,fos) (This)->lpVtbl->SetOptions(This,fos) 26487 #define IFileOpenDialog_GetOptions(This,pfos) (This)->lpVtbl->GetOptions(This,pfos) 26488 #define IFileOpenDialog_SetDefaultFolder(This,psi) (This)->lpVtbl->SetDefaultFolder(This,psi) 26489 #define IFileOpenDialog_SetFolder(This,psi) (This)->lpVtbl->SetFolder(This,psi) 26490 #define IFileOpenDialog_GetFolder(This,ppsi) (This)->lpVtbl->GetFolder(This,ppsi) 26491 #define IFileOpenDialog_GetCurrentSelection(This,ppsi) (This)->lpVtbl->GetCurrentSelection(This,ppsi) 26492 #define IFileOpenDialog_SetFileName(This,pszName) (This)->lpVtbl->SetFileName(This,pszName) 26493 #define IFileOpenDialog_GetFileName(This,pszName) (This)->lpVtbl->GetFileName(This,pszName) 26494 #define IFileOpenDialog_SetTitle(This,pszTitle) (This)->lpVtbl->SetTitle(This,pszTitle) 26495 #define IFileOpenDialog_SetOkButtonLabel(This,pszText) (This)->lpVtbl->SetOkButtonLabel(This,pszText) 26496 #define IFileOpenDialog_SetFileNameLabel(This,pszLabel) (This)->lpVtbl->SetFileNameLabel(This,pszLabel) 26497 #define IFileOpenDialog_GetResult(This,ppsi) (This)->lpVtbl->GetResult(This,ppsi) 26498 #define IFileOpenDialog_AddPlace(This,psi,fdap) (This)->lpVtbl->AddPlace(This,psi,fdap) 26499 #define IFileOpenDialog_SetDefaultExtension(This,pszDefaultExtension) (This)->lpVtbl->SetDefaultExtension(This,pszDefaultExtension) 26500 #define IFileOpenDialog_Close(This,hr) (This)->lpVtbl->Close(This,hr) 26501 #define IFileOpenDialog_SetClientGuid(This,guid) (This)->lpVtbl->SetClientGuid(This,guid) 26502 #define IFileOpenDialog_ClearClientData(This) (This)->lpVtbl->ClearClientData(This) 26503 #define IFileOpenDialog_SetFilter(This,pFilter) (This)->lpVtbl->SetFilter(This,pFilter) 26504 /*** IFileOpenDialog methods ***/ 26505 #define IFileOpenDialog_GetResults(This,ppenum) (This)->lpVtbl->GetResults(This,ppenum) 26506 #define IFileOpenDialog_GetSelectedItems(This,ppsai) (This)->lpVtbl->GetSelectedItems(This,ppsai) 26507 #else 26508 /*** IUnknown methods ***/ 26509 static FORCEINLINE HRESULT IFileOpenDialog_QueryInterface(IFileOpenDialog* This,REFIID riid,void **ppvObject) { 26510 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 26511 } 26512 static FORCEINLINE ULONG IFileOpenDialog_AddRef(IFileOpenDialog* This) { 26513 return This->lpVtbl->AddRef(This); 26514 } 26515 static FORCEINLINE ULONG IFileOpenDialog_Release(IFileOpenDialog* This) { 26516 return This->lpVtbl->Release(This); 26517 } 26518 /*** IModalWindow methods ***/ 26519 static FORCEINLINE HRESULT IFileOpenDialog_Show(IFileOpenDialog* This,HWND hwndOwner) { 26520 return This->lpVtbl->Show(This,hwndOwner); 26521 } 26522 /*** IFileDialog methods ***/ 26523 static FORCEINLINE HRESULT IFileOpenDialog_SetFileTypes(IFileOpenDialog* This,UINT cFileTypes,const COMDLG_FILTERSPEC *rgFilterSpec) { 26524 return This->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec); 26525 } 26526 static FORCEINLINE HRESULT IFileOpenDialog_SetFileTypeIndex(IFileOpenDialog* This,UINT iFileType) { 26527 return This->lpVtbl->SetFileTypeIndex(This,iFileType); 26528 } 26529 static FORCEINLINE HRESULT IFileOpenDialog_GetFileTypeIndex(IFileOpenDialog* This,UINT *piFileType) { 26530 return This->lpVtbl->GetFileTypeIndex(This,piFileType); 26531 } 26532 static FORCEINLINE HRESULT IFileOpenDialog_Advise(IFileOpenDialog* This,IFileDialogEvents *pfde,DWORD *pdwCookie) { 26533 return This->lpVtbl->Advise(This,pfde,pdwCookie); 26534 } 26535 static FORCEINLINE HRESULT IFileOpenDialog_Unadvise(IFileOpenDialog* This,DWORD dwCookie) { 26536 return This->lpVtbl->Unadvise(This,dwCookie); 26537 } 26538 static FORCEINLINE HRESULT IFileOpenDialog_SetOptions(IFileOpenDialog* This,FILEOPENDIALOGOPTIONS fos) { 26539 return This->lpVtbl->SetOptions(This,fos); 26540 } 26541 static FORCEINLINE HRESULT IFileOpenDialog_GetOptions(IFileOpenDialog* This,FILEOPENDIALOGOPTIONS *pfos) { 26542 return This->lpVtbl->GetOptions(This,pfos); 26543 } 26544 static FORCEINLINE HRESULT IFileOpenDialog_SetDefaultFolder(IFileOpenDialog* This,IShellItem *psi) { 26545 return This->lpVtbl->SetDefaultFolder(This,psi); 26546 } 26547 static FORCEINLINE HRESULT IFileOpenDialog_SetFolder(IFileOpenDialog* This,IShellItem *psi) { 26548 return This->lpVtbl->SetFolder(This,psi); 26549 } 26550 static FORCEINLINE HRESULT IFileOpenDialog_GetFolder(IFileOpenDialog* This,IShellItem **ppsi) { 26551 return This->lpVtbl->GetFolder(This,ppsi); 26552 } 26553 static FORCEINLINE HRESULT IFileOpenDialog_GetCurrentSelection(IFileOpenDialog* This,IShellItem **ppsi) { 26554 return This->lpVtbl->GetCurrentSelection(This,ppsi); 26555 } 26556 static FORCEINLINE HRESULT IFileOpenDialog_SetFileName(IFileOpenDialog* This,LPCWSTR pszName) { 26557 return This->lpVtbl->SetFileName(This,pszName); 26558 } 26559 static FORCEINLINE HRESULT IFileOpenDialog_GetFileName(IFileOpenDialog* This,LPWSTR *pszName) { 26560 return This->lpVtbl->GetFileName(This,pszName); 26561 } 26562 static FORCEINLINE HRESULT IFileOpenDialog_SetTitle(IFileOpenDialog* This,LPCWSTR pszTitle) { 26563 return This->lpVtbl->SetTitle(This,pszTitle); 26564 } 26565 static FORCEINLINE HRESULT IFileOpenDialog_SetOkButtonLabel(IFileOpenDialog* This,LPCWSTR pszText) { 26566 return This->lpVtbl->SetOkButtonLabel(This,pszText); 26567 } 26568 static FORCEINLINE HRESULT IFileOpenDialog_SetFileNameLabel(IFileOpenDialog* This,LPCWSTR pszLabel) { 26569 return This->lpVtbl->SetFileNameLabel(This,pszLabel); 26570 } 26571 static FORCEINLINE HRESULT IFileOpenDialog_GetResult(IFileOpenDialog* This,IShellItem **ppsi) { 26572 return This->lpVtbl->GetResult(This,ppsi); 26573 } 26574 static FORCEINLINE HRESULT IFileOpenDialog_AddPlace(IFileOpenDialog* This,IShellItem *psi,FDAP fdap) { 26575 return This->lpVtbl->AddPlace(This,psi,fdap); 26576 } 26577 static FORCEINLINE HRESULT IFileOpenDialog_SetDefaultExtension(IFileOpenDialog* This,LPCWSTR pszDefaultExtension) { 26578 return This->lpVtbl->SetDefaultExtension(This,pszDefaultExtension); 26579 } 26580 static FORCEINLINE HRESULT IFileOpenDialog_Close(IFileOpenDialog* This,HRESULT hr) { 26581 return This->lpVtbl->Close(This,hr); 26582 } 26583 static FORCEINLINE HRESULT IFileOpenDialog_SetClientGuid(IFileOpenDialog* This,REFGUID guid) { 26584 return This->lpVtbl->SetClientGuid(This,guid); 26585 } 26586 static FORCEINLINE HRESULT IFileOpenDialog_ClearClientData(IFileOpenDialog* This) { 26587 return This->lpVtbl->ClearClientData(This); 26588 } 26589 static FORCEINLINE HRESULT IFileOpenDialog_SetFilter(IFileOpenDialog* This,IShellItemFilter *pFilter) { 26590 return This->lpVtbl->SetFilter(This,pFilter); 26591 } 26592 /*** IFileOpenDialog methods ***/ 26593 static FORCEINLINE HRESULT IFileOpenDialog_GetResults(IFileOpenDialog* This,IShellItemArray **ppenum) { 26594 return This->lpVtbl->GetResults(This,ppenum); 26595 } 26596 static FORCEINLINE HRESULT IFileOpenDialog_GetSelectedItems(IFileOpenDialog* This,IShellItemArray **ppsai) { 26597 return This->lpVtbl->GetSelectedItems(This,ppsai); 26598 } 26599 #endif 26600 #endif 26601 26602 #endif 26603 26604 HRESULT STDMETHODCALLTYPE IFileOpenDialog_GetResults_Proxy( 26605 IFileOpenDialog* This, 26606 IShellItemArray **ppenum); 26607 void __RPC_STUB IFileOpenDialog_GetResults_Stub( 26608 IRpcStubBuffer* This, 26609 IRpcChannelBuffer* pRpcChannelBuffer, 26610 PRPC_MESSAGE pRpcMessage, 26611 DWORD* pdwStubPhase); 26612 HRESULT STDMETHODCALLTYPE IFileOpenDialog_GetSelectedItems_Proxy( 26613 IFileOpenDialog* This, 26614 IShellItemArray **ppsai); 26615 void __RPC_STUB IFileOpenDialog_GetSelectedItems_Stub( 26616 IRpcStubBuffer* This, 26617 IRpcChannelBuffer* pRpcChannelBuffer, 26618 PRPC_MESSAGE pRpcMessage, 26619 DWORD* pdwStubPhase); 26620 26621 #endif /* __IFileOpenDialog_INTERFACE_DEFINED__ */ 26622 26623 26624 typedef enum CDCONTROLSTATEF { 26625 CDCS_INACTIVE = 0x0, 26626 CDCS_ENABLED = 0x1, 26627 CDCS_VISIBLE = 0x2, 26628 CDCS_ENABLEDVISIBLE = 0x3 26629 } CDCONTROLSTATEF; 26630 26631 DEFINE_ENUM_FLAG_OPERATORS(CDCONTROLSTATEF) 26632 26633 /***************************************************************************** 26634 * IFileDialogCustomize interface 26635 */ 26636 #ifndef __IFileDialogCustomize_INTERFACE_DEFINED__ 26637 #define __IFileDialogCustomize_INTERFACE_DEFINED__ 26638 26639 DEFINE_GUID(IID_IFileDialogCustomize, 0xe6fdd21a, 0x163f, 0x4975, 0x9c,0x8c, 0xa6,0x9f,0x1b,0xa3,0x70,0x34); 26640 #if defined(__cplusplus) && !defined(CINTERFACE) 26641 MIDL_INTERFACE("e6fdd21a-163f-4975-9c8c-a69f1ba37034") 26642 IFileDialogCustomize : public IUnknown 26643 { 26644 virtual HRESULT STDMETHODCALLTYPE EnableOpenDropDown( 26645 DWORD dwIDCtl) = 0; 26646 26647 virtual HRESULT STDMETHODCALLTYPE AddMenu( 26648 DWORD dwIDCtl, 26649 LPCWSTR pszLabel) = 0; 26650 26651 virtual HRESULT STDMETHODCALLTYPE AddPushButton( 26652 DWORD dwIDCtl, 26653 LPCWSTR pszLabel) = 0; 26654 26655 virtual HRESULT STDMETHODCALLTYPE AddComboBox( 26656 DWORD dwIDCtl) = 0; 26657 26658 virtual HRESULT STDMETHODCALLTYPE AddRadioButtonList( 26659 DWORD dwIDCtl) = 0; 26660 26661 virtual HRESULT STDMETHODCALLTYPE AddCheckButton( 26662 DWORD dwIDCtl, 26663 LPCWSTR pszLabel, 26664 WINBOOL bChecked) = 0; 26665 26666 virtual HRESULT STDMETHODCALLTYPE AddEditBox( 26667 DWORD dwIDCtl, 26668 LPCWSTR pszText) = 0; 26669 26670 virtual HRESULT STDMETHODCALLTYPE AddSeparator( 26671 DWORD dwIDCtl) = 0; 26672 26673 virtual HRESULT STDMETHODCALLTYPE AddText( 26674 DWORD dwIDCtl, 26675 LPCWSTR pszText) = 0; 26676 26677 virtual HRESULT STDMETHODCALLTYPE SetControlLabel( 26678 DWORD dwIDCtl, 26679 LPCWSTR pszLabel) = 0; 26680 26681 virtual HRESULT STDMETHODCALLTYPE GetControlState( 26682 DWORD dwIDCtl, 26683 CDCONTROLSTATEF *pdwState) = 0; 26684 26685 virtual HRESULT STDMETHODCALLTYPE SetControlState( 26686 DWORD dwIDCtl, 26687 CDCONTROLSTATEF dwState) = 0; 26688 26689 virtual HRESULT STDMETHODCALLTYPE GetEditBoxText( 26690 DWORD dwIDCtl, 26691 WCHAR **ppszText) = 0; 26692 26693 virtual HRESULT STDMETHODCALLTYPE SetEditBoxText( 26694 DWORD dwIDCtl, 26695 LPCWSTR pszText) = 0; 26696 26697 virtual HRESULT STDMETHODCALLTYPE GetCheckButtonState( 26698 DWORD dwIDCtl, 26699 WINBOOL *pbChecked) = 0; 26700 26701 virtual HRESULT STDMETHODCALLTYPE SetCheckButtonState( 26702 DWORD dwIDCtl, 26703 WINBOOL bChecked) = 0; 26704 26705 virtual HRESULT STDMETHODCALLTYPE AddControlItem( 26706 DWORD dwIDCtl, 26707 DWORD dwIDItem, 26708 LPCWSTR pszLabel) = 0; 26709 26710 virtual HRESULT STDMETHODCALLTYPE RemoveControlItem( 26711 DWORD dwIDCtl, 26712 DWORD dwIDItem) = 0; 26713 26714 virtual HRESULT STDMETHODCALLTYPE RemoveAllControlItems( 26715 DWORD dwIDCtl) = 0; 26716 26717 virtual HRESULT STDMETHODCALLTYPE GetControlItemState( 26718 DWORD dwIDCtl, 26719 DWORD dwIDItem, 26720 CDCONTROLSTATEF *pdwState) = 0; 26721 26722 virtual HRESULT STDMETHODCALLTYPE SetControlItemState( 26723 DWORD dwIDCtl, 26724 DWORD dwIDItem, 26725 CDCONTROLSTATEF dwState) = 0; 26726 26727 virtual HRESULT STDMETHODCALLTYPE GetSelectedControlItem( 26728 DWORD dwIDCtl, 26729 DWORD *pdwIDItem) = 0; 26730 26731 virtual HRESULT STDMETHODCALLTYPE SetSelectedControlItem( 26732 DWORD dwIDCtl, 26733 DWORD dwIDItem) = 0; 26734 26735 virtual HRESULT STDMETHODCALLTYPE StartVisualGroup( 26736 DWORD dwIDCtl, 26737 LPCWSTR pszLabel) = 0; 26738 26739 virtual HRESULT STDMETHODCALLTYPE EndVisualGroup( 26740 ) = 0; 26741 26742 virtual HRESULT STDMETHODCALLTYPE MakeProminent( 26743 DWORD dwIDCtl) = 0; 26744 26745 virtual HRESULT STDMETHODCALLTYPE SetControlItemText( 26746 DWORD dwIDCtl, 26747 DWORD dwIDItem, 26748 LPCWSTR pszLabel) = 0; 26749 26750 }; 26751 #ifdef __CRT_UUID_DECL 26752 __CRT_UUID_DECL(IFileDialogCustomize, 0xe6fdd21a, 0x163f, 0x4975, 0x9c,0x8c, 0xa6,0x9f,0x1b,0xa3,0x70,0x34) 26753 #endif 26754 #else 26755 typedef struct IFileDialogCustomizeVtbl { 26756 BEGIN_INTERFACE 26757 26758 /*** IUnknown methods ***/ 26759 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 26760 IFileDialogCustomize* This, 26761 REFIID riid, 26762 void **ppvObject); 26763 26764 ULONG (STDMETHODCALLTYPE *AddRef)( 26765 IFileDialogCustomize* This); 26766 26767 ULONG (STDMETHODCALLTYPE *Release)( 26768 IFileDialogCustomize* This); 26769 26770 /*** IFileDialogCustomize methods ***/ 26771 HRESULT (STDMETHODCALLTYPE *EnableOpenDropDown)( 26772 IFileDialogCustomize* This, 26773 DWORD dwIDCtl); 26774 26775 HRESULT (STDMETHODCALLTYPE *AddMenu)( 26776 IFileDialogCustomize* This, 26777 DWORD dwIDCtl, 26778 LPCWSTR pszLabel); 26779 26780 HRESULT (STDMETHODCALLTYPE *AddPushButton)( 26781 IFileDialogCustomize* This, 26782 DWORD dwIDCtl, 26783 LPCWSTR pszLabel); 26784 26785 HRESULT (STDMETHODCALLTYPE *AddComboBox)( 26786 IFileDialogCustomize* This, 26787 DWORD dwIDCtl); 26788 26789 HRESULT (STDMETHODCALLTYPE *AddRadioButtonList)( 26790 IFileDialogCustomize* This, 26791 DWORD dwIDCtl); 26792 26793 HRESULT (STDMETHODCALLTYPE *AddCheckButton)( 26794 IFileDialogCustomize* This, 26795 DWORD dwIDCtl, 26796 LPCWSTR pszLabel, 26797 WINBOOL bChecked); 26798 26799 HRESULT (STDMETHODCALLTYPE *AddEditBox)( 26800 IFileDialogCustomize* This, 26801 DWORD dwIDCtl, 26802 LPCWSTR pszText); 26803 26804 HRESULT (STDMETHODCALLTYPE *AddSeparator)( 26805 IFileDialogCustomize* This, 26806 DWORD dwIDCtl); 26807 26808 HRESULT (STDMETHODCALLTYPE *AddText)( 26809 IFileDialogCustomize* This, 26810 DWORD dwIDCtl, 26811 LPCWSTR pszText); 26812 26813 HRESULT (STDMETHODCALLTYPE *SetControlLabel)( 26814 IFileDialogCustomize* This, 26815 DWORD dwIDCtl, 26816 LPCWSTR pszLabel); 26817 26818 HRESULT (STDMETHODCALLTYPE *GetControlState)( 26819 IFileDialogCustomize* This, 26820 DWORD dwIDCtl, 26821 CDCONTROLSTATEF *pdwState); 26822 26823 HRESULT (STDMETHODCALLTYPE *SetControlState)( 26824 IFileDialogCustomize* This, 26825 DWORD dwIDCtl, 26826 CDCONTROLSTATEF dwState); 26827 26828 HRESULT (STDMETHODCALLTYPE *GetEditBoxText)( 26829 IFileDialogCustomize* This, 26830 DWORD dwIDCtl, 26831 WCHAR **ppszText); 26832 26833 HRESULT (STDMETHODCALLTYPE *SetEditBoxText)( 26834 IFileDialogCustomize* This, 26835 DWORD dwIDCtl, 26836 LPCWSTR pszText); 26837 26838 HRESULT (STDMETHODCALLTYPE *GetCheckButtonState)( 26839 IFileDialogCustomize* This, 26840 DWORD dwIDCtl, 26841 WINBOOL *pbChecked); 26842 26843 HRESULT (STDMETHODCALLTYPE *SetCheckButtonState)( 26844 IFileDialogCustomize* This, 26845 DWORD dwIDCtl, 26846 WINBOOL bChecked); 26847 26848 HRESULT (STDMETHODCALLTYPE *AddControlItem)( 26849 IFileDialogCustomize* This, 26850 DWORD dwIDCtl, 26851 DWORD dwIDItem, 26852 LPCWSTR pszLabel); 26853 26854 HRESULT (STDMETHODCALLTYPE *RemoveControlItem)( 26855 IFileDialogCustomize* This, 26856 DWORD dwIDCtl, 26857 DWORD dwIDItem); 26858 26859 HRESULT (STDMETHODCALLTYPE *RemoveAllControlItems)( 26860 IFileDialogCustomize* This, 26861 DWORD dwIDCtl); 26862 26863 HRESULT (STDMETHODCALLTYPE *GetControlItemState)( 26864 IFileDialogCustomize* This, 26865 DWORD dwIDCtl, 26866 DWORD dwIDItem, 26867 CDCONTROLSTATEF *pdwState); 26868 26869 HRESULT (STDMETHODCALLTYPE *SetControlItemState)( 26870 IFileDialogCustomize* This, 26871 DWORD dwIDCtl, 26872 DWORD dwIDItem, 26873 CDCONTROLSTATEF dwState); 26874 26875 HRESULT (STDMETHODCALLTYPE *GetSelectedControlItem)( 26876 IFileDialogCustomize* This, 26877 DWORD dwIDCtl, 26878 DWORD *pdwIDItem); 26879 26880 HRESULT (STDMETHODCALLTYPE *SetSelectedControlItem)( 26881 IFileDialogCustomize* This, 26882 DWORD dwIDCtl, 26883 DWORD dwIDItem); 26884 26885 HRESULT (STDMETHODCALLTYPE *StartVisualGroup)( 26886 IFileDialogCustomize* This, 26887 DWORD dwIDCtl, 26888 LPCWSTR pszLabel); 26889 26890 HRESULT (STDMETHODCALLTYPE *EndVisualGroup)( 26891 IFileDialogCustomize* This); 26892 26893 HRESULT (STDMETHODCALLTYPE *MakeProminent)( 26894 IFileDialogCustomize* This, 26895 DWORD dwIDCtl); 26896 26897 HRESULT (STDMETHODCALLTYPE *SetControlItemText)( 26898 IFileDialogCustomize* This, 26899 DWORD dwIDCtl, 26900 DWORD dwIDItem, 26901 LPCWSTR pszLabel); 26902 26903 END_INTERFACE 26904 } IFileDialogCustomizeVtbl; 26905 interface IFileDialogCustomize { 26906 CONST_VTBL IFileDialogCustomizeVtbl* lpVtbl; 26907 }; 26908 26909 #ifdef COBJMACROS 26910 #ifndef WIDL_C_INLINE_WRAPPERS 26911 /*** IUnknown methods ***/ 26912 #define IFileDialogCustomize_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 26913 #define IFileDialogCustomize_AddRef(This) (This)->lpVtbl->AddRef(This) 26914 #define IFileDialogCustomize_Release(This) (This)->lpVtbl->Release(This) 26915 /*** IFileDialogCustomize methods ***/ 26916 #define IFileDialogCustomize_EnableOpenDropDown(This,dwIDCtl) (This)->lpVtbl->EnableOpenDropDown(This,dwIDCtl) 26917 #define IFileDialogCustomize_AddMenu(This,dwIDCtl,pszLabel) (This)->lpVtbl->AddMenu(This,dwIDCtl,pszLabel) 26918 #define IFileDialogCustomize_AddPushButton(This,dwIDCtl,pszLabel) (This)->lpVtbl->AddPushButton(This,dwIDCtl,pszLabel) 26919 #define IFileDialogCustomize_AddComboBox(This,dwIDCtl) (This)->lpVtbl->AddComboBox(This,dwIDCtl) 26920 #define IFileDialogCustomize_AddRadioButtonList(This,dwIDCtl) (This)->lpVtbl->AddRadioButtonList(This,dwIDCtl) 26921 #define IFileDialogCustomize_AddCheckButton(This,dwIDCtl,pszLabel,bChecked) (This)->lpVtbl->AddCheckButton(This,dwIDCtl,pszLabel,bChecked) 26922 #define IFileDialogCustomize_AddEditBox(This,dwIDCtl,pszText) (This)->lpVtbl->AddEditBox(This,dwIDCtl,pszText) 26923 #define IFileDialogCustomize_AddSeparator(This,dwIDCtl) (This)->lpVtbl->AddSeparator(This,dwIDCtl) 26924 #define IFileDialogCustomize_AddText(This,dwIDCtl,pszText) (This)->lpVtbl->AddText(This,dwIDCtl,pszText) 26925 #define IFileDialogCustomize_SetControlLabel(This,dwIDCtl,pszLabel) (This)->lpVtbl->SetControlLabel(This,dwIDCtl,pszLabel) 26926 #define IFileDialogCustomize_GetControlState(This,dwIDCtl,pdwState) (This)->lpVtbl->GetControlState(This,dwIDCtl,pdwState) 26927 #define IFileDialogCustomize_SetControlState(This,dwIDCtl,dwState) (This)->lpVtbl->SetControlState(This,dwIDCtl,dwState) 26928 #define IFileDialogCustomize_GetEditBoxText(This,dwIDCtl,ppszText) (This)->lpVtbl->GetEditBoxText(This,dwIDCtl,ppszText) 26929 #define IFileDialogCustomize_SetEditBoxText(This,dwIDCtl,pszText) (This)->lpVtbl->SetEditBoxText(This,dwIDCtl,pszText) 26930 #define IFileDialogCustomize_GetCheckButtonState(This,dwIDCtl,pbChecked) (This)->lpVtbl->GetCheckButtonState(This,dwIDCtl,pbChecked) 26931 #define IFileDialogCustomize_SetCheckButtonState(This,dwIDCtl,bChecked) (This)->lpVtbl->SetCheckButtonState(This,dwIDCtl,bChecked) 26932 #define IFileDialogCustomize_AddControlItem(This,dwIDCtl,dwIDItem,pszLabel) (This)->lpVtbl->AddControlItem(This,dwIDCtl,dwIDItem,pszLabel) 26933 #define IFileDialogCustomize_RemoveControlItem(This,dwIDCtl,dwIDItem) (This)->lpVtbl->RemoveControlItem(This,dwIDCtl,dwIDItem) 26934 #define IFileDialogCustomize_RemoveAllControlItems(This,dwIDCtl) (This)->lpVtbl->RemoveAllControlItems(This,dwIDCtl) 26935 #define IFileDialogCustomize_GetControlItemState(This,dwIDCtl,dwIDItem,pdwState) (This)->lpVtbl->GetControlItemState(This,dwIDCtl,dwIDItem,pdwState) 26936 #define IFileDialogCustomize_SetControlItemState(This,dwIDCtl,dwIDItem,dwState) (This)->lpVtbl->SetControlItemState(This,dwIDCtl,dwIDItem,dwState) 26937 #define IFileDialogCustomize_GetSelectedControlItem(This,dwIDCtl,pdwIDItem) (This)->lpVtbl->GetSelectedControlItem(This,dwIDCtl,pdwIDItem) 26938 #define IFileDialogCustomize_SetSelectedControlItem(This,dwIDCtl,dwIDItem) (This)->lpVtbl->SetSelectedControlItem(This,dwIDCtl,dwIDItem) 26939 #define IFileDialogCustomize_StartVisualGroup(This,dwIDCtl,pszLabel) (This)->lpVtbl->StartVisualGroup(This,dwIDCtl,pszLabel) 26940 #define IFileDialogCustomize_EndVisualGroup(This) (This)->lpVtbl->EndVisualGroup(This) 26941 #define IFileDialogCustomize_MakeProminent(This,dwIDCtl) (This)->lpVtbl->MakeProminent(This,dwIDCtl) 26942 #define IFileDialogCustomize_SetControlItemText(This,dwIDCtl,dwIDItem,pszLabel) (This)->lpVtbl->SetControlItemText(This,dwIDCtl,dwIDItem,pszLabel) 26943 #else 26944 /*** IUnknown methods ***/ 26945 static FORCEINLINE HRESULT IFileDialogCustomize_QueryInterface(IFileDialogCustomize* This,REFIID riid,void **ppvObject) { 26946 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 26947 } 26948 static FORCEINLINE ULONG IFileDialogCustomize_AddRef(IFileDialogCustomize* This) { 26949 return This->lpVtbl->AddRef(This); 26950 } 26951 static FORCEINLINE ULONG IFileDialogCustomize_Release(IFileDialogCustomize* This) { 26952 return This->lpVtbl->Release(This); 26953 } 26954 /*** IFileDialogCustomize methods ***/ 26955 static FORCEINLINE HRESULT IFileDialogCustomize_EnableOpenDropDown(IFileDialogCustomize* This,DWORD dwIDCtl) { 26956 return This->lpVtbl->EnableOpenDropDown(This,dwIDCtl); 26957 } 26958 static FORCEINLINE HRESULT IFileDialogCustomize_AddMenu(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel) { 26959 return This->lpVtbl->AddMenu(This,dwIDCtl,pszLabel); 26960 } 26961 static FORCEINLINE HRESULT IFileDialogCustomize_AddPushButton(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel) { 26962 return This->lpVtbl->AddPushButton(This,dwIDCtl,pszLabel); 26963 } 26964 static FORCEINLINE HRESULT IFileDialogCustomize_AddComboBox(IFileDialogCustomize* This,DWORD dwIDCtl) { 26965 return This->lpVtbl->AddComboBox(This,dwIDCtl); 26966 } 26967 static FORCEINLINE HRESULT IFileDialogCustomize_AddRadioButtonList(IFileDialogCustomize* This,DWORD dwIDCtl) { 26968 return This->lpVtbl->AddRadioButtonList(This,dwIDCtl); 26969 } 26970 static FORCEINLINE HRESULT IFileDialogCustomize_AddCheckButton(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel,WINBOOL bChecked) { 26971 return This->lpVtbl->AddCheckButton(This,dwIDCtl,pszLabel,bChecked); 26972 } 26973 static FORCEINLINE HRESULT IFileDialogCustomize_AddEditBox(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszText) { 26974 return This->lpVtbl->AddEditBox(This,dwIDCtl,pszText); 26975 } 26976 static FORCEINLINE HRESULT IFileDialogCustomize_AddSeparator(IFileDialogCustomize* This,DWORD dwIDCtl) { 26977 return This->lpVtbl->AddSeparator(This,dwIDCtl); 26978 } 26979 static FORCEINLINE HRESULT IFileDialogCustomize_AddText(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszText) { 26980 return This->lpVtbl->AddText(This,dwIDCtl,pszText); 26981 } 26982 static FORCEINLINE HRESULT IFileDialogCustomize_SetControlLabel(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel) { 26983 return This->lpVtbl->SetControlLabel(This,dwIDCtl,pszLabel); 26984 } 26985 static FORCEINLINE HRESULT IFileDialogCustomize_GetControlState(IFileDialogCustomize* This,DWORD dwIDCtl,CDCONTROLSTATEF *pdwState) { 26986 return This->lpVtbl->GetControlState(This,dwIDCtl,pdwState); 26987 } 26988 static FORCEINLINE HRESULT IFileDialogCustomize_SetControlState(IFileDialogCustomize* This,DWORD dwIDCtl,CDCONTROLSTATEF dwState) { 26989 return This->lpVtbl->SetControlState(This,dwIDCtl,dwState); 26990 } 26991 static FORCEINLINE HRESULT IFileDialogCustomize_GetEditBoxText(IFileDialogCustomize* This,DWORD dwIDCtl,WCHAR **ppszText) { 26992 return This->lpVtbl->GetEditBoxText(This,dwIDCtl,ppszText); 26993 } 26994 static FORCEINLINE HRESULT IFileDialogCustomize_SetEditBoxText(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszText) { 26995 return This->lpVtbl->SetEditBoxText(This,dwIDCtl,pszText); 26996 } 26997 static FORCEINLINE HRESULT IFileDialogCustomize_GetCheckButtonState(IFileDialogCustomize* This,DWORD dwIDCtl,WINBOOL *pbChecked) { 26998 return This->lpVtbl->GetCheckButtonState(This,dwIDCtl,pbChecked); 26999 } 27000 static FORCEINLINE HRESULT IFileDialogCustomize_SetCheckButtonState(IFileDialogCustomize* This,DWORD dwIDCtl,WINBOOL bChecked) { 27001 return This->lpVtbl->SetCheckButtonState(This,dwIDCtl,bChecked); 27002 } 27003 static FORCEINLINE HRESULT IFileDialogCustomize_AddControlItem(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem,LPCWSTR pszLabel) { 27004 return This->lpVtbl->AddControlItem(This,dwIDCtl,dwIDItem,pszLabel); 27005 } 27006 static FORCEINLINE HRESULT IFileDialogCustomize_RemoveControlItem(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem) { 27007 return This->lpVtbl->RemoveControlItem(This,dwIDCtl,dwIDItem); 27008 } 27009 static FORCEINLINE HRESULT IFileDialogCustomize_RemoveAllControlItems(IFileDialogCustomize* This,DWORD dwIDCtl) { 27010 return This->lpVtbl->RemoveAllControlItems(This,dwIDCtl); 27011 } 27012 static FORCEINLINE HRESULT IFileDialogCustomize_GetControlItemState(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem,CDCONTROLSTATEF *pdwState) { 27013 return This->lpVtbl->GetControlItemState(This,dwIDCtl,dwIDItem,pdwState); 27014 } 27015 static FORCEINLINE HRESULT IFileDialogCustomize_SetControlItemState(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem,CDCONTROLSTATEF dwState) { 27016 return This->lpVtbl->SetControlItemState(This,dwIDCtl,dwIDItem,dwState); 27017 } 27018 static FORCEINLINE HRESULT IFileDialogCustomize_GetSelectedControlItem(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD *pdwIDItem) { 27019 return This->lpVtbl->GetSelectedControlItem(This,dwIDCtl,pdwIDItem); 27020 } 27021 static FORCEINLINE HRESULT IFileDialogCustomize_SetSelectedControlItem(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem) { 27022 return This->lpVtbl->SetSelectedControlItem(This,dwIDCtl,dwIDItem); 27023 } 27024 static FORCEINLINE HRESULT IFileDialogCustomize_StartVisualGroup(IFileDialogCustomize* This,DWORD dwIDCtl,LPCWSTR pszLabel) { 27025 return This->lpVtbl->StartVisualGroup(This,dwIDCtl,pszLabel); 27026 } 27027 static FORCEINLINE HRESULT IFileDialogCustomize_EndVisualGroup(IFileDialogCustomize* This) { 27028 return This->lpVtbl->EndVisualGroup(This); 27029 } 27030 static FORCEINLINE HRESULT IFileDialogCustomize_MakeProminent(IFileDialogCustomize* This,DWORD dwIDCtl) { 27031 return This->lpVtbl->MakeProminent(This,dwIDCtl); 27032 } 27033 static FORCEINLINE HRESULT IFileDialogCustomize_SetControlItemText(IFileDialogCustomize* This,DWORD dwIDCtl,DWORD dwIDItem,LPCWSTR pszLabel) { 27034 return This->lpVtbl->SetControlItemText(This,dwIDCtl,dwIDItem,pszLabel); 27035 } 27036 #endif 27037 #endif 27038 27039 #endif 27040 27041 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_EnableOpenDropDown_Proxy( 27042 IFileDialogCustomize* This, 27043 DWORD dwIDCtl); 27044 void __RPC_STUB IFileDialogCustomize_EnableOpenDropDown_Stub( 27045 IRpcStubBuffer* This, 27046 IRpcChannelBuffer* pRpcChannelBuffer, 27047 PRPC_MESSAGE pRpcMessage, 27048 DWORD* pdwStubPhase); 27049 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_AddMenu_Proxy( 27050 IFileDialogCustomize* This, 27051 DWORD dwIDCtl, 27052 LPCWSTR pszLabel); 27053 void __RPC_STUB IFileDialogCustomize_AddMenu_Stub( 27054 IRpcStubBuffer* This, 27055 IRpcChannelBuffer* pRpcChannelBuffer, 27056 PRPC_MESSAGE pRpcMessage, 27057 DWORD* pdwStubPhase); 27058 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_AddPushButton_Proxy( 27059 IFileDialogCustomize* This, 27060 DWORD dwIDCtl, 27061 LPCWSTR pszLabel); 27062 void __RPC_STUB IFileDialogCustomize_AddPushButton_Stub( 27063 IRpcStubBuffer* This, 27064 IRpcChannelBuffer* pRpcChannelBuffer, 27065 PRPC_MESSAGE pRpcMessage, 27066 DWORD* pdwStubPhase); 27067 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_AddComboBox_Proxy( 27068 IFileDialogCustomize* This, 27069 DWORD dwIDCtl); 27070 void __RPC_STUB IFileDialogCustomize_AddComboBox_Stub( 27071 IRpcStubBuffer* This, 27072 IRpcChannelBuffer* pRpcChannelBuffer, 27073 PRPC_MESSAGE pRpcMessage, 27074 DWORD* pdwStubPhase); 27075 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_AddRadioButtonList_Proxy( 27076 IFileDialogCustomize* This, 27077 DWORD dwIDCtl); 27078 void __RPC_STUB IFileDialogCustomize_AddRadioButtonList_Stub( 27079 IRpcStubBuffer* This, 27080 IRpcChannelBuffer* pRpcChannelBuffer, 27081 PRPC_MESSAGE pRpcMessage, 27082 DWORD* pdwStubPhase); 27083 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_AddCheckButton_Proxy( 27084 IFileDialogCustomize* This, 27085 DWORD dwIDCtl, 27086 LPCWSTR pszLabel, 27087 WINBOOL bChecked); 27088 void __RPC_STUB IFileDialogCustomize_AddCheckButton_Stub( 27089 IRpcStubBuffer* This, 27090 IRpcChannelBuffer* pRpcChannelBuffer, 27091 PRPC_MESSAGE pRpcMessage, 27092 DWORD* pdwStubPhase); 27093 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_AddEditBox_Proxy( 27094 IFileDialogCustomize* This, 27095 DWORD dwIDCtl, 27096 LPCWSTR pszText); 27097 void __RPC_STUB IFileDialogCustomize_AddEditBox_Stub( 27098 IRpcStubBuffer* This, 27099 IRpcChannelBuffer* pRpcChannelBuffer, 27100 PRPC_MESSAGE pRpcMessage, 27101 DWORD* pdwStubPhase); 27102 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_AddSeparator_Proxy( 27103 IFileDialogCustomize* This, 27104 DWORD dwIDCtl); 27105 void __RPC_STUB IFileDialogCustomize_AddSeparator_Stub( 27106 IRpcStubBuffer* This, 27107 IRpcChannelBuffer* pRpcChannelBuffer, 27108 PRPC_MESSAGE pRpcMessage, 27109 DWORD* pdwStubPhase); 27110 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_AddText_Proxy( 27111 IFileDialogCustomize* This, 27112 DWORD dwIDCtl, 27113 LPCWSTR pszText); 27114 void __RPC_STUB IFileDialogCustomize_AddText_Stub( 27115 IRpcStubBuffer* This, 27116 IRpcChannelBuffer* pRpcChannelBuffer, 27117 PRPC_MESSAGE pRpcMessage, 27118 DWORD* pdwStubPhase); 27119 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_SetControlLabel_Proxy( 27120 IFileDialogCustomize* This, 27121 DWORD dwIDCtl, 27122 LPCWSTR pszLabel); 27123 void __RPC_STUB IFileDialogCustomize_SetControlLabel_Stub( 27124 IRpcStubBuffer* This, 27125 IRpcChannelBuffer* pRpcChannelBuffer, 27126 PRPC_MESSAGE pRpcMessage, 27127 DWORD* pdwStubPhase); 27128 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_GetControlState_Proxy( 27129 IFileDialogCustomize* This, 27130 DWORD dwIDCtl, 27131 CDCONTROLSTATEF *pdwState); 27132 void __RPC_STUB IFileDialogCustomize_GetControlState_Stub( 27133 IRpcStubBuffer* This, 27134 IRpcChannelBuffer* pRpcChannelBuffer, 27135 PRPC_MESSAGE pRpcMessage, 27136 DWORD* pdwStubPhase); 27137 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_SetControlState_Proxy( 27138 IFileDialogCustomize* This, 27139 DWORD dwIDCtl, 27140 CDCONTROLSTATEF dwState); 27141 void __RPC_STUB IFileDialogCustomize_SetControlState_Stub( 27142 IRpcStubBuffer* This, 27143 IRpcChannelBuffer* pRpcChannelBuffer, 27144 PRPC_MESSAGE pRpcMessage, 27145 DWORD* pdwStubPhase); 27146 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_GetEditBoxText_Proxy( 27147 IFileDialogCustomize* This, 27148 DWORD dwIDCtl, 27149 WCHAR **ppszText); 27150 void __RPC_STUB IFileDialogCustomize_GetEditBoxText_Stub( 27151 IRpcStubBuffer* This, 27152 IRpcChannelBuffer* pRpcChannelBuffer, 27153 PRPC_MESSAGE pRpcMessage, 27154 DWORD* pdwStubPhase); 27155 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_SetEditBoxText_Proxy( 27156 IFileDialogCustomize* This, 27157 DWORD dwIDCtl, 27158 LPCWSTR pszText); 27159 void __RPC_STUB IFileDialogCustomize_SetEditBoxText_Stub( 27160 IRpcStubBuffer* This, 27161 IRpcChannelBuffer* pRpcChannelBuffer, 27162 PRPC_MESSAGE pRpcMessage, 27163 DWORD* pdwStubPhase); 27164 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_GetCheckButtonState_Proxy( 27165 IFileDialogCustomize* This, 27166 DWORD dwIDCtl, 27167 WINBOOL *pbChecked); 27168 void __RPC_STUB IFileDialogCustomize_GetCheckButtonState_Stub( 27169 IRpcStubBuffer* This, 27170 IRpcChannelBuffer* pRpcChannelBuffer, 27171 PRPC_MESSAGE pRpcMessage, 27172 DWORD* pdwStubPhase); 27173 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_SetCheckButtonState_Proxy( 27174 IFileDialogCustomize* This, 27175 DWORD dwIDCtl, 27176 WINBOOL bChecked); 27177 void __RPC_STUB IFileDialogCustomize_SetCheckButtonState_Stub( 27178 IRpcStubBuffer* This, 27179 IRpcChannelBuffer* pRpcChannelBuffer, 27180 PRPC_MESSAGE pRpcMessage, 27181 DWORD* pdwStubPhase); 27182 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_AddControlItem_Proxy( 27183 IFileDialogCustomize* This, 27184 DWORD dwIDCtl, 27185 DWORD dwIDItem, 27186 LPCWSTR pszLabel); 27187 void __RPC_STUB IFileDialogCustomize_AddControlItem_Stub( 27188 IRpcStubBuffer* This, 27189 IRpcChannelBuffer* pRpcChannelBuffer, 27190 PRPC_MESSAGE pRpcMessage, 27191 DWORD* pdwStubPhase); 27192 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_RemoveControlItem_Proxy( 27193 IFileDialogCustomize* This, 27194 DWORD dwIDCtl, 27195 DWORD dwIDItem); 27196 void __RPC_STUB IFileDialogCustomize_RemoveControlItem_Stub( 27197 IRpcStubBuffer* This, 27198 IRpcChannelBuffer* pRpcChannelBuffer, 27199 PRPC_MESSAGE pRpcMessage, 27200 DWORD* pdwStubPhase); 27201 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_RemoveAllControlItems_Proxy( 27202 IFileDialogCustomize* This, 27203 DWORD dwIDCtl); 27204 void __RPC_STUB IFileDialogCustomize_RemoveAllControlItems_Stub( 27205 IRpcStubBuffer* This, 27206 IRpcChannelBuffer* pRpcChannelBuffer, 27207 PRPC_MESSAGE pRpcMessage, 27208 DWORD* pdwStubPhase); 27209 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_GetControlItemState_Proxy( 27210 IFileDialogCustomize* This, 27211 DWORD dwIDCtl, 27212 DWORD dwIDItem, 27213 CDCONTROLSTATEF *pdwState); 27214 void __RPC_STUB IFileDialogCustomize_GetControlItemState_Stub( 27215 IRpcStubBuffer* This, 27216 IRpcChannelBuffer* pRpcChannelBuffer, 27217 PRPC_MESSAGE pRpcMessage, 27218 DWORD* pdwStubPhase); 27219 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_SetControlItemState_Proxy( 27220 IFileDialogCustomize* This, 27221 DWORD dwIDCtl, 27222 DWORD dwIDItem, 27223 CDCONTROLSTATEF dwState); 27224 void __RPC_STUB IFileDialogCustomize_SetControlItemState_Stub( 27225 IRpcStubBuffer* This, 27226 IRpcChannelBuffer* pRpcChannelBuffer, 27227 PRPC_MESSAGE pRpcMessage, 27228 DWORD* pdwStubPhase); 27229 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_GetSelectedControlItem_Proxy( 27230 IFileDialogCustomize* This, 27231 DWORD dwIDCtl, 27232 DWORD *pdwIDItem); 27233 void __RPC_STUB IFileDialogCustomize_GetSelectedControlItem_Stub( 27234 IRpcStubBuffer* This, 27235 IRpcChannelBuffer* pRpcChannelBuffer, 27236 PRPC_MESSAGE pRpcMessage, 27237 DWORD* pdwStubPhase); 27238 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_SetSelectedControlItem_Proxy( 27239 IFileDialogCustomize* This, 27240 DWORD dwIDCtl, 27241 DWORD dwIDItem); 27242 void __RPC_STUB IFileDialogCustomize_SetSelectedControlItem_Stub( 27243 IRpcStubBuffer* This, 27244 IRpcChannelBuffer* pRpcChannelBuffer, 27245 PRPC_MESSAGE pRpcMessage, 27246 DWORD* pdwStubPhase); 27247 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_StartVisualGroup_Proxy( 27248 IFileDialogCustomize* This, 27249 DWORD dwIDCtl, 27250 LPCWSTR pszLabel); 27251 void __RPC_STUB IFileDialogCustomize_StartVisualGroup_Stub( 27252 IRpcStubBuffer* This, 27253 IRpcChannelBuffer* pRpcChannelBuffer, 27254 PRPC_MESSAGE pRpcMessage, 27255 DWORD* pdwStubPhase); 27256 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_EndVisualGroup_Proxy( 27257 IFileDialogCustomize* This); 27258 void __RPC_STUB IFileDialogCustomize_EndVisualGroup_Stub( 27259 IRpcStubBuffer* This, 27260 IRpcChannelBuffer* pRpcChannelBuffer, 27261 PRPC_MESSAGE pRpcMessage, 27262 DWORD* pdwStubPhase); 27263 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_MakeProminent_Proxy( 27264 IFileDialogCustomize* This, 27265 DWORD dwIDCtl); 27266 void __RPC_STUB IFileDialogCustomize_MakeProminent_Stub( 27267 IRpcStubBuffer* This, 27268 IRpcChannelBuffer* pRpcChannelBuffer, 27269 PRPC_MESSAGE pRpcMessage, 27270 DWORD* pdwStubPhase); 27271 HRESULT STDMETHODCALLTYPE IFileDialogCustomize_SetControlItemText_Proxy( 27272 IFileDialogCustomize* This, 27273 DWORD dwIDCtl, 27274 DWORD dwIDItem, 27275 LPCWSTR pszLabel); 27276 void __RPC_STUB IFileDialogCustomize_SetControlItemText_Stub( 27277 IRpcStubBuffer* This, 27278 IRpcChannelBuffer* pRpcChannelBuffer, 27279 PRPC_MESSAGE pRpcMessage, 27280 DWORD* pdwStubPhase); 27281 27282 #endif /* __IFileDialogCustomize_INTERFACE_DEFINED__ */ 27283 27284 27285 /***************************************************************************** 27286 * IFileDialogControlEvents interface 27287 */ 27288 #ifndef __IFileDialogControlEvents_INTERFACE_DEFINED__ 27289 #define __IFileDialogControlEvents_INTERFACE_DEFINED__ 27290 27291 DEFINE_GUID(IID_IFileDialogControlEvents, 0x36116642, 0xd713, 0x4b97, 0x9b,0x83, 0x74,0x84,0xa9,0xd0,0x04,0x33); 27292 #if defined(__cplusplus) && !defined(CINTERFACE) 27293 MIDL_INTERFACE("36116642-d713-4b97-9b83-7484a9d00433") 27294 IFileDialogControlEvents : public IUnknown 27295 { 27296 virtual HRESULT STDMETHODCALLTYPE OnItemSelected( 27297 IFileDialogCustomize *pfdc, 27298 DWORD dwIDCtl, 27299 DWORD dwIDItem) = 0; 27300 27301 virtual HRESULT STDMETHODCALLTYPE OnButtonClicked( 27302 IFileDialogCustomize *pfdc, 27303 DWORD dwIDCtl) = 0; 27304 27305 virtual HRESULT STDMETHODCALLTYPE OnCheckButtonToggled( 27306 IFileDialogCustomize *pfdc, 27307 DWORD dwIDCtl, 27308 WINBOOL bChecked) = 0; 27309 27310 virtual HRESULT STDMETHODCALLTYPE OnControlActivating( 27311 IFileDialogCustomize *pfdc, 27312 DWORD dwIDCtl) = 0; 27313 27314 }; 27315 #ifdef __CRT_UUID_DECL 27316 __CRT_UUID_DECL(IFileDialogControlEvents, 0x36116642, 0xd713, 0x4b97, 0x9b,0x83, 0x74,0x84,0xa9,0xd0,0x04,0x33) 27317 #endif 27318 #else 27319 typedef struct IFileDialogControlEventsVtbl { 27320 BEGIN_INTERFACE 27321 27322 /*** IUnknown methods ***/ 27323 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 27324 IFileDialogControlEvents* This, 27325 REFIID riid, 27326 void **ppvObject); 27327 27328 ULONG (STDMETHODCALLTYPE *AddRef)( 27329 IFileDialogControlEvents* This); 27330 27331 ULONG (STDMETHODCALLTYPE *Release)( 27332 IFileDialogControlEvents* This); 27333 27334 /*** IFileDialogControlEvents methods ***/ 27335 HRESULT (STDMETHODCALLTYPE *OnItemSelected)( 27336 IFileDialogControlEvents* This, 27337 IFileDialogCustomize *pfdc, 27338 DWORD dwIDCtl, 27339 DWORD dwIDItem); 27340 27341 HRESULT (STDMETHODCALLTYPE *OnButtonClicked)( 27342 IFileDialogControlEvents* This, 27343 IFileDialogCustomize *pfdc, 27344 DWORD dwIDCtl); 27345 27346 HRESULT (STDMETHODCALLTYPE *OnCheckButtonToggled)( 27347 IFileDialogControlEvents* This, 27348 IFileDialogCustomize *pfdc, 27349 DWORD dwIDCtl, 27350 WINBOOL bChecked); 27351 27352 HRESULT (STDMETHODCALLTYPE *OnControlActivating)( 27353 IFileDialogControlEvents* This, 27354 IFileDialogCustomize *pfdc, 27355 DWORD dwIDCtl); 27356 27357 END_INTERFACE 27358 } IFileDialogControlEventsVtbl; 27359 interface IFileDialogControlEvents { 27360 CONST_VTBL IFileDialogControlEventsVtbl* lpVtbl; 27361 }; 27362 27363 #ifdef COBJMACROS 27364 #ifndef WIDL_C_INLINE_WRAPPERS 27365 /*** IUnknown methods ***/ 27366 #define IFileDialogControlEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 27367 #define IFileDialogControlEvents_AddRef(This) (This)->lpVtbl->AddRef(This) 27368 #define IFileDialogControlEvents_Release(This) (This)->lpVtbl->Release(This) 27369 /*** IFileDialogControlEvents methods ***/ 27370 #define IFileDialogControlEvents_OnItemSelected(This,pfdc,dwIDCtl,dwIDItem) (This)->lpVtbl->OnItemSelected(This,pfdc,dwIDCtl,dwIDItem) 27371 #define IFileDialogControlEvents_OnButtonClicked(This,pfdc,dwIDCtl) (This)->lpVtbl->OnButtonClicked(This,pfdc,dwIDCtl) 27372 #define IFileDialogControlEvents_OnCheckButtonToggled(This,pfdc,dwIDCtl,bChecked) (This)->lpVtbl->OnCheckButtonToggled(This,pfdc,dwIDCtl,bChecked) 27373 #define IFileDialogControlEvents_OnControlActivating(This,pfdc,dwIDCtl) (This)->lpVtbl->OnControlActivating(This,pfdc,dwIDCtl) 27374 #else 27375 /*** IUnknown methods ***/ 27376 static FORCEINLINE HRESULT IFileDialogControlEvents_QueryInterface(IFileDialogControlEvents* This,REFIID riid,void **ppvObject) { 27377 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 27378 } 27379 static FORCEINLINE ULONG IFileDialogControlEvents_AddRef(IFileDialogControlEvents* This) { 27380 return This->lpVtbl->AddRef(This); 27381 } 27382 static FORCEINLINE ULONG IFileDialogControlEvents_Release(IFileDialogControlEvents* This) { 27383 return This->lpVtbl->Release(This); 27384 } 27385 /*** IFileDialogControlEvents methods ***/ 27386 static FORCEINLINE HRESULT IFileDialogControlEvents_OnItemSelected(IFileDialogControlEvents* This,IFileDialogCustomize *pfdc,DWORD dwIDCtl,DWORD dwIDItem) { 27387 return This->lpVtbl->OnItemSelected(This,pfdc,dwIDCtl,dwIDItem); 27388 } 27389 static FORCEINLINE HRESULT IFileDialogControlEvents_OnButtonClicked(IFileDialogControlEvents* This,IFileDialogCustomize *pfdc,DWORD dwIDCtl) { 27390 return This->lpVtbl->OnButtonClicked(This,pfdc,dwIDCtl); 27391 } 27392 static FORCEINLINE HRESULT IFileDialogControlEvents_OnCheckButtonToggled(IFileDialogControlEvents* This,IFileDialogCustomize *pfdc,DWORD dwIDCtl,WINBOOL bChecked) { 27393 return This->lpVtbl->OnCheckButtonToggled(This,pfdc,dwIDCtl,bChecked); 27394 } 27395 static FORCEINLINE HRESULT IFileDialogControlEvents_OnControlActivating(IFileDialogControlEvents* This,IFileDialogCustomize *pfdc,DWORD dwIDCtl) { 27396 return This->lpVtbl->OnControlActivating(This,pfdc,dwIDCtl); 27397 } 27398 #endif 27399 #endif 27400 27401 #endif 27402 27403 HRESULT STDMETHODCALLTYPE IFileDialogControlEvents_OnItemSelected_Proxy( 27404 IFileDialogControlEvents* This, 27405 IFileDialogCustomize *pfdc, 27406 DWORD dwIDCtl, 27407 DWORD dwIDItem); 27408 void __RPC_STUB IFileDialogControlEvents_OnItemSelected_Stub( 27409 IRpcStubBuffer* This, 27410 IRpcChannelBuffer* pRpcChannelBuffer, 27411 PRPC_MESSAGE pRpcMessage, 27412 DWORD* pdwStubPhase); 27413 HRESULT STDMETHODCALLTYPE IFileDialogControlEvents_OnButtonClicked_Proxy( 27414 IFileDialogControlEvents* This, 27415 IFileDialogCustomize *pfdc, 27416 DWORD dwIDCtl); 27417 void __RPC_STUB IFileDialogControlEvents_OnButtonClicked_Stub( 27418 IRpcStubBuffer* This, 27419 IRpcChannelBuffer* pRpcChannelBuffer, 27420 PRPC_MESSAGE pRpcMessage, 27421 DWORD* pdwStubPhase); 27422 HRESULT STDMETHODCALLTYPE IFileDialogControlEvents_OnCheckButtonToggled_Proxy( 27423 IFileDialogControlEvents* This, 27424 IFileDialogCustomize *pfdc, 27425 DWORD dwIDCtl, 27426 WINBOOL bChecked); 27427 void __RPC_STUB IFileDialogControlEvents_OnCheckButtonToggled_Stub( 27428 IRpcStubBuffer* This, 27429 IRpcChannelBuffer* pRpcChannelBuffer, 27430 PRPC_MESSAGE pRpcMessage, 27431 DWORD* pdwStubPhase); 27432 HRESULT STDMETHODCALLTYPE IFileDialogControlEvents_OnControlActivating_Proxy( 27433 IFileDialogControlEvents* This, 27434 IFileDialogCustomize *pfdc, 27435 DWORD dwIDCtl); 27436 void __RPC_STUB IFileDialogControlEvents_OnControlActivating_Stub( 27437 IRpcStubBuffer* This, 27438 IRpcChannelBuffer* pRpcChannelBuffer, 27439 PRPC_MESSAGE pRpcMessage, 27440 DWORD* pdwStubPhase); 27441 27442 #endif /* __IFileDialogControlEvents_INTERFACE_DEFINED__ */ 27443 27444 27445 /***************************************************************************** 27446 * IFileDialog2 interface 27447 */ 27448 #ifndef __IFileDialog2_INTERFACE_DEFINED__ 27449 #define __IFileDialog2_INTERFACE_DEFINED__ 27450 27451 DEFINE_GUID(IID_IFileDialog2, 0x61744fc7, 0x85b5, 0x4791, 0xa9,0xb0, 0x27,0x22,0x76,0x30,0x9b,0x13); 27452 #if defined(__cplusplus) && !defined(CINTERFACE) 27453 MIDL_INTERFACE("61744fc7-85b5-4791-a9b0-272276309b13") 27454 IFileDialog2 : public IFileDialog 27455 { 27456 virtual HRESULT STDMETHODCALLTYPE SetCancelButtonLabel( 27457 LPCWSTR pszLabel) = 0; 27458 27459 virtual HRESULT STDMETHODCALLTYPE SetNavigationRoot( 27460 IShellItem *psi) = 0; 27461 27462 }; 27463 #ifdef __CRT_UUID_DECL 27464 __CRT_UUID_DECL(IFileDialog2, 0x61744fc7, 0x85b5, 0x4791, 0xa9,0xb0, 0x27,0x22,0x76,0x30,0x9b,0x13) 27465 #endif 27466 #else 27467 typedef struct IFileDialog2Vtbl { 27468 BEGIN_INTERFACE 27469 27470 /*** IUnknown methods ***/ 27471 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 27472 IFileDialog2* This, 27473 REFIID riid, 27474 void **ppvObject); 27475 27476 ULONG (STDMETHODCALLTYPE *AddRef)( 27477 IFileDialog2* This); 27478 27479 ULONG (STDMETHODCALLTYPE *Release)( 27480 IFileDialog2* This); 27481 27482 /*** IModalWindow methods ***/ 27483 HRESULT (STDMETHODCALLTYPE *Show)( 27484 IFileDialog2* This, 27485 HWND hwndOwner); 27486 27487 /*** IFileDialog methods ***/ 27488 HRESULT (STDMETHODCALLTYPE *SetFileTypes)( 27489 IFileDialog2* This, 27490 UINT cFileTypes, 27491 const COMDLG_FILTERSPEC *rgFilterSpec); 27492 27493 HRESULT (STDMETHODCALLTYPE *SetFileTypeIndex)( 27494 IFileDialog2* This, 27495 UINT iFileType); 27496 27497 HRESULT (STDMETHODCALLTYPE *GetFileTypeIndex)( 27498 IFileDialog2* This, 27499 UINT *piFileType); 27500 27501 HRESULT (STDMETHODCALLTYPE *Advise)( 27502 IFileDialog2* This, 27503 IFileDialogEvents *pfde, 27504 DWORD *pdwCookie); 27505 27506 HRESULT (STDMETHODCALLTYPE *Unadvise)( 27507 IFileDialog2* This, 27508 DWORD dwCookie); 27509 27510 HRESULT (STDMETHODCALLTYPE *SetOptions)( 27511 IFileDialog2* This, 27512 FILEOPENDIALOGOPTIONS fos); 27513 27514 HRESULT (STDMETHODCALLTYPE *GetOptions)( 27515 IFileDialog2* This, 27516 FILEOPENDIALOGOPTIONS *pfos); 27517 27518 HRESULT (STDMETHODCALLTYPE *SetDefaultFolder)( 27519 IFileDialog2* This, 27520 IShellItem *psi); 27521 27522 HRESULT (STDMETHODCALLTYPE *SetFolder)( 27523 IFileDialog2* This, 27524 IShellItem *psi); 27525 27526 HRESULT (STDMETHODCALLTYPE *GetFolder)( 27527 IFileDialog2* This, 27528 IShellItem **ppsi); 27529 27530 HRESULT (STDMETHODCALLTYPE *GetCurrentSelection)( 27531 IFileDialog2* This, 27532 IShellItem **ppsi); 27533 27534 HRESULT (STDMETHODCALLTYPE *SetFileName)( 27535 IFileDialog2* This, 27536 LPCWSTR pszName); 27537 27538 HRESULT (STDMETHODCALLTYPE *GetFileName)( 27539 IFileDialog2* This, 27540 LPWSTR *pszName); 27541 27542 HRESULT (STDMETHODCALLTYPE *SetTitle)( 27543 IFileDialog2* This, 27544 LPCWSTR pszTitle); 27545 27546 HRESULT (STDMETHODCALLTYPE *SetOkButtonLabel)( 27547 IFileDialog2* This, 27548 LPCWSTR pszText); 27549 27550 HRESULT (STDMETHODCALLTYPE *SetFileNameLabel)( 27551 IFileDialog2* This, 27552 LPCWSTR pszLabel); 27553 27554 HRESULT (STDMETHODCALLTYPE *GetResult)( 27555 IFileDialog2* This, 27556 IShellItem **ppsi); 27557 27558 HRESULT (STDMETHODCALLTYPE *AddPlace)( 27559 IFileDialog2* This, 27560 IShellItem *psi, 27561 FDAP fdap); 27562 27563 HRESULT (STDMETHODCALLTYPE *SetDefaultExtension)( 27564 IFileDialog2* This, 27565 LPCWSTR pszDefaultExtension); 27566 27567 HRESULT (STDMETHODCALLTYPE *Close)( 27568 IFileDialog2* This, 27569 HRESULT hr); 27570 27571 HRESULT (STDMETHODCALLTYPE *SetClientGuid)( 27572 IFileDialog2* This, 27573 REFGUID guid); 27574 27575 HRESULT (STDMETHODCALLTYPE *ClearClientData)( 27576 IFileDialog2* This); 27577 27578 HRESULT (STDMETHODCALLTYPE *SetFilter)( 27579 IFileDialog2* This, 27580 IShellItemFilter *pFilter); 27581 27582 /*** IFileDialog2 methods ***/ 27583 HRESULT (STDMETHODCALLTYPE *SetCancelButtonLabel)( 27584 IFileDialog2* This, 27585 LPCWSTR pszLabel); 27586 27587 HRESULT (STDMETHODCALLTYPE *SetNavigationRoot)( 27588 IFileDialog2* This, 27589 IShellItem *psi); 27590 27591 END_INTERFACE 27592 } IFileDialog2Vtbl; 27593 interface IFileDialog2 { 27594 CONST_VTBL IFileDialog2Vtbl* lpVtbl; 27595 }; 27596 27597 #ifdef COBJMACROS 27598 #ifndef WIDL_C_INLINE_WRAPPERS 27599 /*** IUnknown methods ***/ 27600 #define IFileDialog2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 27601 #define IFileDialog2_AddRef(This) (This)->lpVtbl->AddRef(This) 27602 #define IFileDialog2_Release(This) (This)->lpVtbl->Release(This) 27603 /*** IModalWindow methods ***/ 27604 #define IFileDialog2_Show(This,hwndOwner) (This)->lpVtbl->Show(This,hwndOwner) 27605 /*** IFileDialog methods ***/ 27606 #define IFileDialog2_SetFileTypes(This,cFileTypes,rgFilterSpec) (This)->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec) 27607 #define IFileDialog2_SetFileTypeIndex(This,iFileType) (This)->lpVtbl->SetFileTypeIndex(This,iFileType) 27608 #define IFileDialog2_GetFileTypeIndex(This,piFileType) (This)->lpVtbl->GetFileTypeIndex(This,piFileType) 27609 #define IFileDialog2_Advise(This,pfde,pdwCookie) (This)->lpVtbl->Advise(This,pfde,pdwCookie) 27610 #define IFileDialog2_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) 27611 #define IFileDialog2_SetOptions(This,fos) (This)->lpVtbl->SetOptions(This,fos) 27612 #define IFileDialog2_GetOptions(This,pfos) (This)->lpVtbl->GetOptions(This,pfos) 27613 #define IFileDialog2_SetDefaultFolder(This,psi) (This)->lpVtbl->SetDefaultFolder(This,psi) 27614 #define IFileDialog2_SetFolder(This,psi) (This)->lpVtbl->SetFolder(This,psi) 27615 #define IFileDialog2_GetFolder(This,ppsi) (This)->lpVtbl->GetFolder(This,ppsi) 27616 #define IFileDialog2_GetCurrentSelection(This,ppsi) (This)->lpVtbl->GetCurrentSelection(This,ppsi) 27617 #define IFileDialog2_SetFileName(This,pszName) (This)->lpVtbl->SetFileName(This,pszName) 27618 #define IFileDialog2_GetFileName(This,pszName) (This)->lpVtbl->GetFileName(This,pszName) 27619 #define IFileDialog2_SetTitle(This,pszTitle) (This)->lpVtbl->SetTitle(This,pszTitle) 27620 #define IFileDialog2_SetOkButtonLabel(This,pszText) (This)->lpVtbl->SetOkButtonLabel(This,pszText) 27621 #define IFileDialog2_SetFileNameLabel(This,pszLabel) (This)->lpVtbl->SetFileNameLabel(This,pszLabel) 27622 #define IFileDialog2_GetResult(This,ppsi) (This)->lpVtbl->GetResult(This,ppsi) 27623 #define IFileDialog2_AddPlace(This,psi,fdap) (This)->lpVtbl->AddPlace(This,psi,fdap) 27624 #define IFileDialog2_SetDefaultExtension(This,pszDefaultExtension) (This)->lpVtbl->SetDefaultExtension(This,pszDefaultExtension) 27625 #define IFileDialog2_Close(This,hr) (This)->lpVtbl->Close(This,hr) 27626 #define IFileDialog2_SetClientGuid(This,guid) (This)->lpVtbl->SetClientGuid(This,guid) 27627 #define IFileDialog2_ClearClientData(This) (This)->lpVtbl->ClearClientData(This) 27628 #define IFileDialog2_SetFilter(This,pFilter) (This)->lpVtbl->SetFilter(This,pFilter) 27629 /*** IFileDialog2 methods ***/ 27630 #define IFileDialog2_SetCancelButtonLabel(This,pszLabel) (This)->lpVtbl->SetCancelButtonLabel(This,pszLabel) 27631 #define IFileDialog2_SetNavigationRoot(This,psi) (This)->lpVtbl->SetNavigationRoot(This,psi) 27632 #else 27633 /*** IUnknown methods ***/ 27634 static FORCEINLINE HRESULT IFileDialog2_QueryInterface(IFileDialog2* This,REFIID riid,void **ppvObject) { 27635 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 27636 } 27637 static FORCEINLINE ULONG IFileDialog2_AddRef(IFileDialog2* This) { 27638 return This->lpVtbl->AddRef(This); 27639 } 27640 static FORCEINLINE ULONG IFileDialog2_Release(IFileDialog2* This) { 27641 return This->lpVtbl->Release(This); 27642 } 27643 /*** IModalWindow methods ***/ 27644 static FORCEINLINE HRESULT IFileDialog2_Show(IFileDialog2* This,HWND hwndOwner) { 27645 return This->lpVtbl->Show(This,hwndOwner); 27646 } 27647 /*** IFileDialog methods ***/ 27648 static FORCEINLINE HRESULT IFileDialog2_SetFileTypes(IFileDialog2* This,UINT cFileTypes,const COMDLG_FILTERSPEC *rgFilterSpec) { 27649 return This->lpVtbl->SetFileTypes(This,cFileTypes,rgFilterSpec); 27650 } 27651 static FORCEINLINE HRESULT IFileDialog2_SetFileTypeIndex(IFileDialog2* This,UINT iFileType) { 27652 return This->lpVtbl->SetFileTypeIndex(This,iFileType); 27653 } 27654 static FORCEINLINE HRESULT IFileDialog2_GetFileTypeIndex(IFileDialog2* This,UINT *piFileType) { 27655 return This->lpVtbl->GetFileTypeIndex(This,piFileType); 27656 } 27657 static FORCEINLINE HRESULT IFileDialog2_Advise(IFileDialog2* This,IFileDialogEvents *pfde,DWORD *pdwCookie) { 27658 return This->lpVtbl->Advise(This,pfde,pdwCookie); 27659 } 27660 static FORCEINLINE HRESULT IFileDialog2_Unadvise(IFileDialog2* This,DWORD dwCookie) { 27661 return This->lpVtbl->Unadvise(This,dwCookie); 27662 } 27663 static FORCEINLINE HRESULT IFileDialog2_SetOptions(IFileDialog2* This,FILEOPENDIALOGOPTIONS fos) { 27664 return This->lpVtbl->SetOptions(This,fos); 27665 } 27666 static FORCEINLINE HRESULT IFileDialog2_GetOptions(IFileDialog2* This,FILEOPENDIALOGOPTIONS *pfos) { 27667 return This->lpVtbl->GetOptions(This,pfos); 27668 } 27669 static FORCEINLINE HRESULT IFileDialog2_SetDefaultFolder(IFileDialog2* This,IShellItem *psi) { 27670 return This->lpVtbl->SetDefaultFolder(This,psi); 27671 } 27672 static FORCEINLINE HRESULT IFileDialog2_SetFolder(IFileDialog2* This,IShellItem *psi) { 27673 return This->lpVtbl->SetFolder(This,psi); 27674 } 27675 static FORCEINLINE HRESULT IFileDialog2_GetFolder(IFileDialog2* This,IShellItem **ppsi) { 27676 return This->lpVtbl->GetFolder(This,ppsi); 27677 } 27678 static FORCEINLINE HRESULT IFileDialog2_GetCurrentSelection(IFileDialog2* This,IShellItem **ppsi) { 27679 return This->lpVtbl->GetCurrentSelection(This,ppsi); 27680 } 27681 static FORCEINLINE HRESULT IFileDialog2_SetFileName(IFileDialog2* This,LPCWSTR pszName) { 27682 return This->lpVtbl->SetFileName(This,pszName); 27683 } 27684 static FORCEINLINE HRESULT IFileDialog2_GetFileName(IFileDialog2* This,LPWSTR *pszName) { 27685 return This->lpVtbl->GetFileName(This,pszName); 27686 } 27687 static FORCEINLINE HRESULT IFileDialog2_SetTitle(IFileDialog2* This,LPCWSTR pszTitle) { 27688 return This->lpVtbl->SetTitle(This,pszTitle); 27689 } 27690 static FORCEINLINE HRESULT IFileDialog2_SetOkButtonLabel(IFileDialog2* This,LPCWSTR pszText) { 27691 return This->lpVtbl->SetOkButtonLabel(This,pszText); 27692 } 27693 static FORCEINLINE HRESULT IFileDialog2_SetFileNameLabel(IFileDialog2* This,LPCWSTR pszLabel) { 27694 return This->lpVtbl->SetFileNameLabel(This,pszLabel); 27695 } 27696 static FORCEINLINE HRESULT IFileDialog2_GetResult(IFileDialog2* This,IShellItem **ppsi) { 27697 return This->lpVtbl->GetResult(This,ppsi); 27698 } 27699 static FORCEINLINE HRESULT IFileDialog2_AddPlace(IFileDialog2* This,IShellItem *psi,FDAP fdap) { 27700 return This->lpVtbl->AddPlace(This,psi,fdap); 27701 } 27702 static FORCEINLINE HRESULT IFileDialog2_SetDefaultExtension(IFileDialog2* This,LPCWSTR pszDefaultExtension) { 27703 return This->lpVtbl->SetDefaultExtension(This,pszDefaultExtension); 27704 } 27705 static FORCEINLINE HRESULT IFileDialog2_Close(IFileDialog2* This,HRESULT hr) { 27706 return This->lpVtbl->Close(This,hr); 27707 } 27708 static FORCEINLINE HRESULT IFileDialog2_SetClientGuid(IFileDialog2* This,REFGUID guid) { 27709 return This->lpVtbl->SetClientGuid(This,guid); 27710 } 27711 static FORCEINLINE HRESULT IFileDialog2_ClearClientData(IFileDialog2* This) { 27712 return This->lpVtbl->ClearClientData(This); 27713 } 27714 static FORCEINLINE HRESULT IFileDialog2_SetFilter(IFileDialog2* This,IShellItemFilter *pFilter) { 27715 return This->lpVtbl->SetFilter(This,pFilter); 27716 } 27717 /*** IFileDialog2 methods ***/ 27718 static FORCEINLINE HRESULT IFileDialog2_SetCancelButtonLabel(IFileDialog2* This,LPCWSTR pszLabel) { 27719 return This->lpVtbl->SetCancelButtonLabel(This,pszLabel); 27720 } 27721 static FORCEINLINE HRESULT IFileDialog2_SetNavigationRoot(IFileDialog2* This,IShellItem *psi) { 27722 return This->lpVtbl->SetNavigationRoot(This,psi); 27723 } 27724 #endif 27725 #endif 27726 27727 #endif 27728 27729 HRESULT STDMETHODCALLTYPE IFileDialog2_SetCancelButtonLabel_Proxy( 27730 IFileDialog2* This, 27731 LPCWSTR pszLabel); 27732 void __RPC_STUB IFileDialog2_SetCancelButtonLabel_Stub( 27733 IRpcStubBuffer* This, 27734 IRpcChannelBuffer* pRpcChannelBuffer, 27735 PRPC_MESSAGE pRpcMessage, 27736 DWORD* pdwStubPhase); 27737 HRESULT STDMETHODCALLTYPE IFileDialog2_SetNavigationRoot_Proxy( 27738 IFileDialog2* This, 27739 IShellItem *psi); 27740 void __RPC_STUB IFileDialog2_SetNavigationRoot_Stub( 27741 IRpcStubBuffer* This, 27742 IRpcChannelBuffer* pRpcChannelBuffer, 27743 PRPC_MESSAGE pRpcMessage, 27744 DWORD* pdwStubPhase); 27745 27746 #endif /* __IFileDialog2_INTERFACE_DEFINED__ */ 27747 27748 27749 typedef enum ASSOCIATIONLEVEL { 27750 AL_MACHINE = 0, 27751 AL_EFFECTIVE = 1, 27752 AL_USER = 2 27753 } ASSOCIATIONLEVEL; 27754 27755 typedef enum ASSOCIATIONTYPE { 27756 AT_FILEEXTENSION = 0, 27757 AT_URLPROTOCOL = 1, 27758 AT_STARTMENUCLIENT = 2, 27759 AT_MIMETYPE = 3 27760 } ASSOCIATIONTYPE; 27761 27762 /***************************************************************************** 27763 * IApplicationAssociationRegistration interface 27764 */ 27765 #ifndef __IApplicationAssociationRegistration_INTERFACE_DEFINED__ 27766 #define __IApplicationAssociationRegistration_INTERFACE_DEFINED__ 27767 27768 DEFINE_GUID(IID_IApplicationAssociationRegistration, 0x4e530b0a, 0xe611, 0x4c77, 0xa3,0xac, 0x90,0x31,0xd0,0x22,0x28,0x1b); 27769 #if defined(__cplusplus) && !defined(CINTERFACE) 27770 MIDL_INTERFACE("4e530b0a-e611-4c77-a3ac-9031d022281b") 27771 IApplicationAssociationRegistration : public IUnknown 27772 { 27773 virtual HRESULT STDMETHODCALLTYPE QueryCurrentDefault( 27774 LPCWSTR pszQuery, 27775 ASSOCIATIONTYPE atQueryType, 27776 ASSOCIATIONLEVEL alQueryLevel, 27777 LPWSTR *ppszAssociation) = 0; 27778 27779 virtual HRESULT STDMETHODCALLTYPE QueryAppIsDefault( 27780 LPCWSTR pszQuery, 27781 ASSOCIATIONTYPE atQueryType, 27782 ASSOCIATIONLEVEL alQueryLevel, 27783 LPCWSTR pszAppRegistryName, 27784 WINBOOL *pfDefault) = 0; 27785 27786 virtual HRESULT STDMETHODCALLTYPE QueryAppIsDefaultAll( 27787 ASSOCIATIONLEVEL alQueryLevel, 27788 LPCWSTR pszAppRegistryName, 27789 WINBOOL *pfDefault) = 0; 27790 27791 virtual HRESULT STDMETHODCALLTYPE SetAppAsDefault( 27792 LPCWSTR pszAppRegistryName, 27793 LPCWSTR pszSet, 27794 ASSOCIATIONTYPE atSetType) = 0; 27795 27796 virtual HRESULT STDMETHODCALLTYPE SetAppAsDefaultAll( 27797 LPCWSTR pszAppRegistryName) = 0; 27798 27799 virtual HRESULT STDMETHODCALLTYPE ClearUserAssociations( 27800 ) = 0; 27801 27802 }; 27803 #ifdef __CRT_UUID_DECL 27804 __CRT_UUID_DECL(IApplicationAssociationRegistration, 0x4e530b0a, 0xe611, 0x4c77, 0xa3,0xac, 0x90,0x31,0xd0,0x22,0x28,0x1b) 27805 #endif 27806 #else 27807 typedef struct IApplicationAssociationRegistrationVtbl { 27808 BEGIN_INTERFACE 27809 27810 /*** IUnknown methods ***/ 27811 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 27812 IApplicationAssociationRegistration* This, 27813 REFIID riid, 27814 void **ppvObject); 27815 27816 ULONG (STDMETHODCALLTYPE *AddRef)( 27817 IApplicationAssociationRegistration* This); 27818 27819 ULONG (STDMETHODCALLTYPE *Release)( 27820 IApplicationAssociationRegistration* This); 27821 27822 /*** IApplicationAssociationRegistration methods ***/ 27823 HRESULT (STDMETHODCALLTYPE *QueryCurrentDefault)( 27824 IApplicationAssociationRegistration* This, 27825 LPCWSTR pszQuery, 27826 ASSOCIATIONTYPE atQueryType, 27827 ASSOCIATIONLEVEL alQueryLevel, 27828 LPWSTR *ppszAssociation); 27829 27830 HRESULT (STDMETHODCALLTYPE *QueryAppIsDefault)( 27831 IApplicationAssociationRegistration* This, 27832 LPCWSTR pszQuery, 27833 ASSOCIATIONTYPE atQueryType, 27834 ASSOCIATIONLEVEL alQueryLevel, 27835 LPCWSTR pszAppRegistryName, 27836 WINBOOL *pfDefault); 27837 27838 HRESULT (STDMETHODCALLTYPE *QueryAppIsDefaultAll)( 27839 IApplicationAssociationRegistration* This, 27840 ASSOCIATIONLEVEL alQueryLevel, 27841 LPCWSTR pszAppRegistryName, 27842 WINBOOL *pfDefault); 27843 27844 HRESULT (STDMETHODCALLTYPE *SetAppAsDefault)( 27845 IApplicationAssociationRegistration* This, 27846 LPCWSTR pszAppRegistryName, 27847 LPCWSTR pszSet, 27848 ASSOCIATIONTYPE atSetType); 27849 27850 HRESULT (STDMETHODCALLTYPE *SetAppAsDefaultAll)( 27851 IApplicationAssociationRegistration* This, 27852 LPCWSTR pszAppRegistryName); 27853 27854 HRESULT (STDMETHODCALLTYPE *ClearUserAssociations)( 27855 IApplicationAssociationRegistration* This); 27856 27857 END_INTERFACE 27858 } IApplicationAssociationRegistrationVtbl; 27859 interface IApplicationAssociationRegistration { 27860 CONST_VTBL IApplicationAssociationRegistrationVtbl* lpVtbl; 27861 }; 27862 27863 #ifdef COBJMACROS 27864 #ifndef WIDL_C_INLINE_WRAPPERS 27865 /*** IUnknown methods ***/ 27866 #define IApplicationAssociationRegistration_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 27867 #define IApplicationAssociationRegistration_AddRef(This) (This)->lpVtbl->AddRef(This) 27868 #define IApplicationAssociationRegistration_Release(This) (This)->lpVtbl->Release(This) 27869 /*** IApplicationAssociationRegistration methods ***/ 27870 #define IApplicationAssociationRegistration_QueryCurrentDefault(This,pszQuery,atQueryType,alQueryLevel,ppszAssociation) (This)->lpVtbl->QueryCurrentDefault(This,pszQuery,atQueryType,alQueryLevel,ppszAssociation) 27871 #define IApplicationAssociationRegistration_QueryAppIsDefault(This,pszQuery,atQueryType,alQueryLevel,pszAppRegistryName,pfDefault) (This)->lpVtbl->QueryAppIsDefault(This,pszQuery,atQueryType,alQueryLevel,pszAppRegistryName,pfDefault) 27872 #define IApplicationAssociationRegistration_QueryAppIsDefaultAll(This,alQueryLevel,pszAppRegistryName,pfDefault) (This)->lpVtbl->QueryAppIsDefaultAll(This,alQueryLevel,pszAppRegistryName,pfDefault) 27873 #define IApplicationAssociationRegistration_SetAppAsDefault(This,pszAppRegistryName,pszSet,atSetType) (This)->lpVtbl->SetAppAsDefault(This,pszAppRegistryName,pszSet,atSetType) 27874 #define IApplicationAssociationRegistration_SetAppAsDefaultAll(This,pszAppRegistryName) (This)->lpVtbl->SetAppAsDefaultAll(This,pszAppRegistryName) 27875 #define IApplicationAssociationRegistration_ClearUserAssociations(This) (This)->lpVtbl->ClearUserAssociations(This) 27876 #else 27877 /*** IUnknown methods ***/ 27878 static FORCEINLINE HRESULT IApplicationAssociationRegistration_QueryInterface(IApplicationAssociationRegistration* This,REFIID riid,void **ppvObject) { 27879 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 27880 } 27881 static FORCEINLINE ULONG IApplicationAssociationRegistration_AddRef(IApplicationAssociationRegistration* This) { 27882 return This->lpVtbl->AddRef(This); 27883 } 27884 static FORCEINLINE ULONG IApplicationAssociationRegistration_Release(IApplicationAssociationRegistration* This) { 27885 return This->lpVtbl->Release(This); 27886 } 27887 /*** IApplicationAssociationRegistration methods ***/ 27888 static FORCEINLINE HRESULT IApplicationAssociationRegistration_QueryCurrentDefault(IApplicationAssociationRegistration* This,LPCWSTR pszQuery,ASSOCIATIONTYPE atQueryType,ASSOCIATIONLEVEL alQueryLevel,LPWSTR *ppszAssociation) { 27889 return This->lpVtbl->QueryCurrentDefault(This,pszQuery,atQueryType,alQueryLevel,ppszAssociation); 27890 } 27891 static FORCEINLINE HRESULT IApplicationAssociationRegistration_QueryAppIsDefault(IApplicationAssociationRegistration* This,LPCWSTR pszQuery,ASSOCIATIONTYPE atQueryType,ASSOCIATIONLEVEL alQueryLevel,LPCWSTR pszAppRegistryName,WINBOOL *pfDefault) { 27892 return This->lpVtbl->QueryAppIsDefault(This,pszQuery,atQueryType,alQueryLevel,pszAppRegistryName,pfDefault); 27893 } 27894 static FORCEINLINE HRESULT IApplicationAssociationRegistration_QueryAppIsDefaultAll(IApplicationAssociationRegistration* This,ASSOCIATIONLEVEL alQueryLevel,LPCWSTR pszAppRegistryName,WINBOOL *pfDefault) { 27895 return This->lpVtbl->QueryAppIsDefaultAll(This,alQueryLevel,pszAppRegistryName,pfDefault); 27896 } 27897 static FORCEINLINE HRESULT IApplicationAssociationRegistration_SetAppAsDefault(IApplicationAssociationRegistration* This,LPCWSTR pszAppRegistryName,LPCWSTR pszSet,ASSOCIATIONTYPE atSetType) { 27898 return This->lpVtbl->SetAppAsDefault(This,pszAppRegistryName,pszSet,atSetType); 27899 } 27900 static FORCEINLINE HRESULT IApplicationAssociationRegistration_SetAppAsDefaultAll(IApplicationAssociationRegistration* This,LPCWSTR pszAppRegistryName) { 27901 return This->lpVtbl->SetAppAsDefaultAll(This,pszAppRegistryName); 27902 } 27903 static FORCEINLINE HRESULT IApplicationAssociationRegistration_ClearUserAssociations(IApplicationAssociationRegistration* This) { 27904 return This->lpVtbl->ClearUserAssociations(This); 27905 } 27906 #endif 27907 #endif 27908 27909 #endif 27910 27911 HRESULT STDMETHODCALLTYPE IApplicationAssociationRegistration_QueryCurrentDefault_Proxy( 27912 IApplicationAssociationRegistration* This, 27913 LPCWSTR pszQuery, 27914 ASSOCIATIONTYPE atQueryType, 27915 ASSOCIATIONLEVEL alQueryLevel, 27916 LPWSTR *ppszAssociation); 27917 void __RPC_STUB IApplicationAssociationRegistration_QueryCurrentDefault_Stub( 27918 IRpcStubBuffer* This, 27919 IRpcChannelBuffer* pRpcChannelBuffer, 27920 PRPC_MESSAGE pRpcMessage, 27921 DWORD* pdwStubPhase); 27922 HRESULT STDMETHODCALLTYPE IApplicationAssociationRegistration_QueryAppIsDefault_Proxy( 27923 IApplicationAssociationRegistration* This, 27924 LPCWSTR pszQuery, 27925 ASSOCIATIONTYPE atQueryType, 27926 ASSOCIATIONLEVEL alQueryLevel, 27927 LPCWSTR pszAppRegistryName, 27928 WINBOOL *pfDefault); 27929 void __RPC_STUB IApplicationAssociationRegistration_QueryAppIsDefault_Stub( 27930 IRpcStubBuffer* This, 27931 IRpcChannelBuffer* pRpcChannelBuffer, 27932 PRPC_MESSAGE pRpcMessage, 27933 DWORD* pdwStubPhase); 27934 HRESULT STDMETHODCALLTYPE IApplicationAssociationRegistration_QueryAppIsDefaultAll_Proxy( 27935 IApplicationAssociationRegistration* This, 27936 ASSOCIATIONLEVEL alQueryLevel, 27937 LPCWSTR pszAppRegistryName, 27938 WINBOOL *pfDefault); 27939 void __RPC_STUB IApplicationAssociationRegistration_QueryAppIsDefaultAll_Stub( 27940 IRpcStubBuffer* This, 27941 IRpcChannelBuffer* pRpcChannelBuffer, 27942 PRPC_MESSAGE pRpcMessage, 27943 DWORD* pdwStubPhase); 27944 HRESULT STDMETHODCALLTYPE IApplicationAssociationRegistration_SetAppAsDefault_Proxy( 27945 IApplicationAssociationRegistration* This, 27946 LPCWSTR pszAppRegistryName, 27947 LPCWSTR pszSet, 27948 ASSOCIATIONTYPE atSetType); 27949 void __RPC_STUB IApplicationAssociationRegistration_SetAppAsDefault_Stub( 27950 IRpcStubBuffer* This, 27951 IRpcChannelBuffer* pRpcChannelBuffer, 27952 PRPC_MESSAGE pRpcMessage, 27953 DWORD* pdwStubPhase); 27954 HRESULT STDMETHODCALLTYPE IApplicationAssociationRegistration_SetAppAsDefaultAll_Proxy( 27955 IApplicationAssociationRegistration* This, 27956 LPCWSTR pszAppRegistryName); 27957 void __RPC_STUB IApplicationAssociationRegistration_SetAppAsDefaultAll_Stub( 27958 IRpcStubBuffer* This, 27959 IRpcChannelBuffer* pRpcChannelBuffer, 27960 PRPC_MESSAGE pRpcMessage, 27961 DWORD* pdwStubPhase); 27962 HRESULT STDMETHODCALLTYPE IApplicationAssociationRegistration_ClearUserAssociations_Proxy( 27963 IApplicationAssociationRegistration* This); 27964 void __RPC_STUB IApplicationAssociationRegistration_ClearUserAssociations_Stub( 27965 IRpcStubBuffer* This, 27966 IRpcChannelBuffer* pRpcChannelBuffer, 27967 PRPC_MESSAGE pRpcMessage, 27968 DWORD* pdwStubPhase); 27969 27970 #endif /* __IApplicationAssociationRegistration_INTERFACE_DEFINED__ */ 27971 27972 27973 SHSTDAPI SHCreateAssociationRegistration(REFIID riid, void **ppv); 27974 27975 /***************************************************************************** 27976 * IApplicationAssociationRegistrationUI interface 27977 */ 27978 #ifndef __IApplicationAssociationRegistrationUI_INTERFACE_DEFINED__ 27979 #define __IApplicationAssociationRegistrationUI_INTERFACE_DEFINED__ 27980 27981 DEFINE_GUID(IID_IApplicationAssociationRegistrationUI, 0x1f76a169, 0xf994, 0x40ac, 0x8f,0xc8, 0x09,0x59,0xe8,0x87,0x47,0x10); 27982 #if defined(__cplusplus) && !defined(CINTERFACE) 27983 MIDL_INTERFACE("1f76a169-f994-40ac-8fc8-0959e8874710") 27984 IApplicationAssociationRegistrationUI : public IUnknown 27985 { 27986 virtual HRESULT STDMETHODCALLTYPE LaunchAdvancedAssociationUI( 27987 LPCWSTR pszAppRegistryName) = 0; 27988 27989 }; 27990 #ifdef __CRT_UUID_DECL 27991 __CRT_UUID_DECL(IApplicationAssociationRegistrationUI, 0x1f76a169, 0xf994, 0x40ac, 0x8f,0xc8, 0x09,0x59,0xe8,0x87,0x47,0x10) 27992 #endif 27993 #else 27994 typedef struct IApplicationAssociationRegistrationUIVtbl { 27995 BEGIN_INTERFACE 27996 27997 /*** IUnknown methods ***/ 27998 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 27999 IApplicationAssociationRegistrationUI* This, 28000 REFIID riid, 28001 void **ppvObject); 28002 28003 ULONG (STDMETHODCALLTYPE *AddRef)( 28004 IApplicationAssociationRegistrationUI* This); 28005 28006 ULONG (STDMETHODCALLTYPE *Release)( 28007 IApplicationAssociationRegistrationUI* This); 28008 28009 /*** IApplicationAssociationRegistrationUI methods ***/ 28010 HRESULT (STDMETHODCALLTYPE *LaunchAdvancedAssociationUI)( 28011 IApplicationAssociationRegistrationUI* This, 28012 LPCWSTR pszAppRegistryName); 28013 28014 END_INTERFACE 28015 } IApplicationAssociationRegistrationUIVtbl; 28016 interface IApplicationAssociationRegistrationUI { 28017 CONST_VTBL IApplicationAssociationRegistrationUIVtbl* lpVtbl; 28018 }; 28019 28020 #ifdef COBJMACROS 28021 #ifndef WIDL_C_INLINE_WRAPPERS 28022 /*** IUnknown methods ***/ 28023 #define IApplicationAssociationRegistrationUI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 28024 #define IApplicationAssociationRegistrationUI_AddRef(This) (This)->lpVtbl->AddRef(This) 28025 #define IApplicationAssociationRegistrationUI_Release(This) (This)->lpVtbl->Release(This) 28026 /*** IApplicationAssociationRegistrationUI methods ***/ 28027 #define IApplicationAssociationRegistrationUI_LaunchAdvancedAssociationUI(This,pszAppRegistryName) (This)->lpVtbl->LaunchAdvancedAssociationUI(This,pszAppRegistryName) 28028 #else 28029 /*** IUnknown methods ***/ 28030 static FORCEINLINE HRESULT IApplicationAssociationRegistrationUI_QueryInterface(IApplicationAssociationRegistrationUI* This,REFIID riid,void **ppvObject) { 28031 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 28032 } 28033 static FORCEINLINE ULONG IApplicationAssociationRegistrationUI_AddRef(IApplicationAssociationRegistrationUI* This) { 28034 return This->lpVtbl->AddRef(This); 28035 } 28036 static FORCEINLINE ULONG IApplicationAssociationRegistrationUI_Release(IApplicationAssociationRegistrationUI* This) { 28037 return This->lpVtbl->Release(This); 28038 } 28039 /*** IApplicationAssociationRegistrationUI methods ***/ 28040 static FORCEINLINE HRESULT IApplicationAssociationRegistrationUI_LaunchAdvancedAssociationUI(IApplicationAssociationRegistrationUI* This,LPCWSTR pszAppRegistryName) { 28041 return This->lpVtbl->LaunchAdvancedAssociationUI(This,pszAppRegistryName); 28042 } 28043 #endif 28044 #endif 28045 28046 #endif 28047 28048 HRESULT STDMETHODCALLTYPE IApplicationAssociationRegistrationUI_LaunchAdvancedAssociationUI_Proxy( 28049 IApplicationAssociationRegistrationUI* This, 28050 LPCWSTR pszAppRegistryName); 28051 void __RPC_STUB IApplicationAssociationRegistrationUI_LaunchAdvancedAssociationUI_Stub( 28052 IRpcStubBuffer* This, 28053 IRpcChannelBuffer* pRpcChannelBuffer, 28054 PRPC_MESSAGE pRpcMessage, 28055 DWORD* pdwStubPhase); 28056 28057 #endif /* __IApplicationAssociationRegistrationUI_INTERFACE_DEFINED__ */ 28058 28059 #endif 28060 28061 #include <pshpack1.h> 28062 typedef struct DELEGATEITEMID { 28063 WORD cbSize; 28064 WORD wOuter; 28065 WORD cbInner; 28066 BYTE rgb[1]; 28067 } DELEGATEITEMID; 28068 #include <poppack.h> 28069 28070 typedef const UNALIGNED DELEGATEITEMID *PCDELEGATEITEMID; 28071 typedef UNALIGNED DELEGATEITEMID *PDELEGATEITEMID; 28072 28073 /***************************************************************************** 28074 * IDelegateFolder interface 28075 */ 28076 #ifndef __IDelegateFolder_INTERFACE_DEFINED__ 28077 #define __IDelegateFolder_INTERFACE_DEFINED__ 28078 28079 DEFINE_GUID(IID_IDelegateFolder, 0xadd8ba80, 0x002b, 0x11d0, 0x8f,0x0f, 0x00,0xc0,0x4f,0xd7,0xd0,0x62); 28080 #if defined(__cplusplus) && !defined(CINTERFACE) 28081 MIDL_INTERFACE("add8ba80-002b-11d0-8f0f-00c04fd7d062") 28082 IDelegateFolder : public IUnknown 28083 { 28084 virtual HRESULT STDMETHODCALLTYPE SetItemAlloc( 28085 IMalloc *pmalloc) = 0; 28086 28087 }; 28088 #ifdef __CRT_UUID_DECL 28089 __CRT_UUID_DECL(IDelegateFolder, 0xadd8ba80, 0x002b, 0x11d0, 0x8f,0x0f, 0x00,0xc0,0x4f,0xd7,0xd0,0x62) 28090 #endif 28091 #else 28092 typedef struct IDelegateFolderVtbl { 28093 BEGIN_INTERFACE 28094 28095 /*** IUnknown methods ***/ 28096 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 28097 IDelegateFolder* This, 28098 REFIID riid, 28099 void **ppvObject); 28100 28101 ULONG (STDMETHODCALLTYPE *AddRef)( 28102 IDelegateFolder* This); 28103 28104 ULONG (STDMETHODCALLTYPE *Release)( 28105 IDelegateFolder* This); 28106 28107 /*** IDelegateFolder methods ***/ 28108 HRESULT (STDMETHODCALLTYPE *SetItemAlloc)( 28109 IDelegateFolder* This, 28110 IMalloc *pmalloc); 28111 28112 END_INTERFACE 28113 } IDelegateFolderVtbl; 28114 interface IDelegateFolder { 28115 CONST_VTBL IDelegateFolderVtbl* lpVtbl; 28116 }; 28117 28118 #ifdef COBJMACROS 28119 #ifndef WIDL_C_INLINE_WRAPPERS 28120 /*** IUnknown methods ***/ 28121 #define IDelegateFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 28122 #define IDelegateFolder_AddRef(This) (This)->lpVtbl->AddRef(This) 28123 #define IDelegateFolder_Release(This) (This)->lpVtbl->Release(This) 28124 /*** IDelegateFolder methods ***/ 28125 #define IDelegateFolder_SetItemAlloc(This,pmalloc) (This)->lpVtbl->SetItemAlloc(This,pmalloc) 28126 #else 28127 /*** IUnknown methods ***/ 28128 static FORCEINLINE HRESULT IDelegateFolder_QueryInterface(IDelegateFolder* This,REFIID riid,void **ppvObject) { 28129 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 28130 } 28131 static FORCEINLINE ULONG IDelegateFolder_AddRef(IDelegateFolder* This) { 28132 return This->lpVtbl->AddRef(This); 28133 } 28134 static FORCEINLINE ULONG IDelegateFolder_Release(IDelegateFolder* This) { 28135 return This->lpVtbl->Release(This); 28136 } 28137 /*** IDelegateFolder methods ***/ 28138 static FORCEINLINE HRESULT IDelegateFolder_SetItemAlloc(IDelegateFolder* This,IMalloc *pmalloc) { 28139 return This->lpVtbl->SetItemAlloc(This,pmalloc); 28140 } 28141 #endif 28142 #endif 28143 28144 #endif 28145 28146 HRESULT STDMETHODCALLTYPE IDelegateFolder_SetItemAlloc_Proxy( 28147 IDelegateFolder* This, 28148 IMalloc *pmalloc); 28149 void __RPC_STUB IDelegateFolder_SetItemAlloc_Stub( 28150 IRpcStubBuffer* This, 28151 IRpcChannelBuffer* pRpcChannelBuffer, 28152 PRPC_MESSAGE pRpcMessage, 28153 DWORD* pdwStubPhase); 28154 28155 #endif /* __IDelegateFolder_INTERFACE_DEFINED__ */ 28156 28157 28158 #if _WIN32_IE >= _WIN32_IE_IE60 28159 /***************************************************************************** 28160 * IBrowserFrameOptions interface 28161 */ 28162 #ifndef __IBrowserFrameOptions_INTERFACE_DEFINED__ 28163 #define __IBrowserFrameOptions_INTERFACE_DEFINED__ 28164 28165 typedef IBrowserFrameOptions *LPBROWSERFRAMEOPTIONS; 28166 28167 enum _BROWSERFRAMEOPTIONS { 28168 BFO_NONE = 0x0, 28169 BFO_BROWSER_PERSIST_SETTINGS = 0x1, 28170 BFO_RENAME_FOLDER_OPTIONS_TOINTERNET = 0x2, 28171 BFO_BOTH_OPTIONS = 0x4, 28172 BIF_PREFER_INTERNET_SHORTCUT = 0x8, 28173 BFO_BROWSE_NO_IN_NEW_PROCESS = 0x10, 28174 BFO_ENABLE_HYPERLINK_TRACKING = 0x20, 28175 BFO_USE_IE_OFFLINE_SUPPORT = 0x40, 28176 BFO_SUBSTITUE_INTERNET_START_PAGE = 0x80, 28177 BFO_USE_IE_LOGOBANDING = 0x100, 28178 BFO_ADD_IE_TOCAPTIONBAR = 0x200, 28179 BFO_USE_DIALUP_REF = 0x400, 28180 BFO_USE_IE_TOOLBAR = 0x800, 28181 BFO_NO_PARENT_FOLDER_SUPPORT = 0x1000, 28182 BFO_NO_REOPEN_NEXT_RESTART = 0x2000, 28183 BFO_GO_HOME_PAGE = 0x4000, 28184 BFO_PREFER_IEPROCESS = 0x8000, 28185 BFO_SHOW_NAVIGATION_CANCELLED = 0x10000, 28186 BFO_USE_IE_STATUSBAR = 0x20000, 28187 BFO_QUERY_ALL = (int)0xffffffff 28188 }; 28189 28190 28191 typedef DWORD BROWSERFRAMEOPTIONS; 28192 28193 DEFINE_GUID(IID_IBrowserFrameOptions, 0x10df43c8, 0x1dbe, 0x11d3, 0x8b,0x34, 0x00,0x60,0x97,0xdf,0x5b,0xd4); 28194 #if defined(__cplusplus) && !defined(CINTERFACE) 28195 MIDL_INTERFACE("10df43c8-1dbe-11d3-8b34-006097df5bd4") 28196 IBrowserFrameOptions : public IUnknown 28197 { 28198 virtual HRESULT STDMETHODCALLTYPE GetFrameOptions( 28199 BROWSERFRAMEOPTIONS dwMask, 28200 BROWSERFRAMEOPTIONS *pdwOptions) = 0; 28201 28202 }; 28203 #ifdef __CRT_UUID_DECL 28204 __CRT_UUID_DECL(IBrowserFrameOptions, 0x10df43c8, 0x1dbe, 0x11d3, 0x8b,0x34, 0x00,0x60,0x97,0xdf,0x5b,0xd4) 28205 #endif 28206 #else 28207 typedef struct IBrowserFrameOptionsVtbl { 28208 BEGIN_INTERFACE 28209 28210 /*** IUnknown methods ***/ 28211 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 28212 IBrowserFrameOptions* This, 28213 REFIID riid, 28214 void **ppvObject); 28215 28216 ULONG (STDMETHODCALLTYPE *AddRef)( 28217 IBrowserFrameOptions* This); 28218 28219 ULONG (STDMETHODCALLTYPE *Release)( 28220 IBrowserFrameOptions* This); 28221 28222 /*** IBrowserFrameOptions methods ***/ 28223 HRESULT (STDMETHODCALLTYPE *GetFrameOptions)( 28224 IBrowserFrameOptions* This, 28225 BROWSERFRAMEOPTIONS dwMask, 28226 BROWSERFRAMEOPTIONS *pdwOptions); 28227 28228 END_INTERFACE 28229 } IBrowserFrameOptionsVtbl; 28230 interface IBrowserFrameOptions { 28231 CONST_VTBL IBrowserFrameOptionsVtbl* lpVtbl; 28232 }; 28233 28234 #ifdef COBJMACROS 28235 #ifndef WIDL_C_INLINE_WRAPPERS 28236 /*** IUnknown methods ***/ 28237 #define IBrowserFrameOptions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 28238 #define IBrowserFrameOptions_AddRef(This) (This)->lpVtbl->AddRef(This) 28239 #define IBrowserFrameOptions_Release(This) (This)->lpVtbl->Release(This) 28240 /*** IBrowserFrameOptions methods ***/ 28241 #define IBrowserFrameOptions_GetFrameOptions(This,dwMask,pdwOptions) (This)->lpVtbl->GetFrameOptions(This,dwMask,pdwOptions) 28242 #else 28243 /*** IUnknown methods ***/ 28244 static FORCEINLINE HRESULT IBrowserFrameOptions_QueryInterface(IBrowserFrameOptions* This,REFIID riid,void **ppvObject) { 28245 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 28246 } 28247 static FORCEINLINE ULONG IBrowserFrameOptions_AddRef(IBrowserFrameOptions* This) { 28248 return This->lpVtbl->AddRef(This); 28249 } 28250 static FORCEINLINE ULONG IBrowserFrameOptions_Release(IBrowserFrameOptions* This) { 28251 return This->lpVtbl->Release(This); 28252 } 28253 /*** IBrowserFrameOptions methods ***/ 28254 static FORCEINLINE HRESULT IBrowserFrameOptions_GetFrameOptions(IBrowserFrameOptions* This,BROWSERFRAMEOPTIONS dwMask,BROWSERFRAMEOPTIONS *pdwOptions) { 28255 return This->lpVtbl->GetFrameOptions(This,dwMask,pdwOptions); 28256 } 28257 #endif 28258 #endif 28259 28260 #endif 28261 28262 HRESULT STDMETHODCALLTYPE IBrowserFrameOptions_GetFrameOptions_Proxy( 28263 IBrowserFrameOptions* This, 28264 BROWSERFRAMEOPTIONS dwMask, 28265 BROWSERFRAMEOPTIONS *pdwOptions); 28266 void __RPC_STUB IBrowserFrameOptions_GetFrameOptions_Stub( 28267 IRpcStubBuffer* This, 28268 IRpcChannelBuffer* pRpcChannelBuffer, 28269 PRPC_MESSAGE pRpcMessage, 28270 DWORD* pdwStubPhase); 28271 28272 #endif /* __IBrowserFrameOptions_INTERFACE_DEFINED__ */ 28273 28274 #endif 28275 28276 #if _WIN32_IE >= _WIN32_IE_IE60SP2 28277 typedef enum NWMF { 28278 NWMF_UNLOADING = 0x1, 28279 NWMF_USERINITED = 0x2, 28280 NWMF_FIRST = 0x4, 28281 NWMF_OVERRIDEKEY = 0x8, 28282 NWMF_SHOWHELP = 0x10, 28283 NWMF_HTMLDIALOG = 0x20, 28284 NWMF_FROMDIALOGCHILD = 0x40, 28285 NWMF_USERREQUESTED = 0x80, 28286 NWMF_USERALLOWED = 0x100, 28287 NWMF_FORCEWINDOW = 0x10000, 28288 NWMF_FORCETAB = 0x20000, 28289 NWMF_SUGGESTWINDOW = 0x40000, 28290 NWMF_SUGGESTTAB = 0x80000, 28291 NWMF_INACTIVETAB = 0x100000 28292 } NWMF; 28293 28294 DEFINE_ENUM_FLAG_OPERATORS(NWMF) 28295 28296 #define SID_SNewWindowManager IID_INewWindowManager 28297 28298 /***************************************************************************** 28299 * INewWindowManager interface 28300 */ 28301 #ifndef __INewWindowManager_INTERFACE_DEFINED__ 28302 #define __INewWindowManager_INTERFACE_DEFINED__ 28303 28304 DEFINE_GUID(IID_INewWindowManager, 0xd2bc4c84, 0x3f72, 0x4a52, 0xa6,0x04, 0x7b,0xcb,0xf3,0x98,0x2c,0xbb); 28305 #if defined(__cplusplus) && !defined(CINTERFACE) 28306 MIDL_INTERFACE("d2bc4c84-3f72-4a52-a604-7bcbf3982cbb") 28307 INewWindowManager : public IUnknown 28308 { 28309 virtual HRESULT STDMETHODCALLTYPE EvaluateNewWindow( 28310 LPCWSTR pszUrl, 28311 LPCWSTR pszName, 28312 LPCWSTR pszUrlContext, 28313 LPCWSTR pszFeatures, 28314 WINBOOL fReplace, 28315 DWORD dwFlags, 28316 DWORD dwUserActionTime) = 0; 28317 28318 }; 28319 #ifdef __CRT_UUID_DECL 28320 __CRT_UUID_DECL(INewWindowManager, 0xd2bc4c84, 0x3f72, 0x4a52, 0xa6,0x04, 0x7b,0xcb,0xf3,0x98,0x2c,0xbb) 28321 #endif 28322 #else 28323 typedef struct INewWindowManagerVtbl { 28324 BEGIN_INTERFACE 28325 28326 /*** IUnknown methods ***/ 28327 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 28328 INewWindowManager* This, 28329 REFIID riid, 28330 void **ppvObject); 28331 28332 ULONG (STDMETHODCALLTYPE *AddRef)( 28333 INewWindowManager* This); 28334 28335 ULONG (STDMETHODCALLTYPE *Release)( 28336 INewWindowManager* This); 28337 28338 /*** INewWindowManager methods ***/ 28339 HRESULT (STDMETHODCALLTYPE *EvaluateNewWindow)( 28340 INewWindowManager* This, 28341 LPCWSTR pszUrl, 28342 LPCWSTR pszName, 28343 LPCWSTR pszUrlContext, 28344 LPCWSTR pszFeatures, 28345 WINBOOL fReplace, 28346 DWORD dwFlags, 28347 DWORD dwUserActionTime); 28348 28349 END_INTERFACE 28350 } INewWindowManagerVtbl; 28351 interface INewWindowManager { 28352 CONST_VTBL INewWindowManagerVtbl* lpVtbl; 28353 }; 28354 28355 #ifdef COBJMACROS 28356 #ifndef WIDL_C_INLINE_WRAPPERS 28357 /*** IUnknown methods ***/ 28358 #define INewWindowManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 28359 #define INewWindowManager_AddRef(This) (This)->lpVtbl->AddRef(This) 28360 #define INewWindowManager_Release(This) (This)->lpVtbl->Release(This) 28361 /*** INewWindowManager methods ***/ 28362 #define INewWindowManager_EvaluateNewWindow(This,pszUrl,pszName,pszUrlContext,pszFeatures,fReplace,dwFlags,dwUserActionTime) (This)->lpVtbl->EvaluateNewWindow(This,pszUrl,pszName,pszUrlContext,pszFeatures,fReplace,dwFlags,dwUserActionTime) 28363 #else 28364 /*** IUnknown methods ***/ 28365 static FORCEINLINE HRESULT INewWindowManager_QueryInterface(INewWindowManager* This,REFIID riid,void **ppvObject) { 28366 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 28367 } 28368 static FORCEINLINE ULONG INewWindowManager_AddRef(INewWindowManager* This) { 28369 return This->lpVtbl->AddRef(This); 28370 } 28371 static FORCEINLINE ULONG INewWindowManager_Release(INewWindowManager* This) { 28372 return This->lpVtbl->Release(This); 28373 } 28374 /*** INewWindowManager methods ***/ 28375 static FORCEINLINE HRESULT INewWindowManager_EvaluateNewWindow(INewWindowManager* This,LPCWSTR pszUrl,LPCWSTR pszName,LPCWSTR pszUrlContext,LPCWSTR pszFeatures,WINBOOL fReplace,DWORD dwFlags,DWORD dwUserActionTime) { 28376 return This->lpVtbl->EvaluateNewWindow(This,pszUrl,pszName,pszUrlContext,pszFeatures,fReplace,dwFlags,dwUserActionTime); 28377 } 28378 #endif 28379 #endif 28380 28381 #endif 28382 28383 HRESULT STDMETHODCALLTYPE INewWindowManager_EvaluateNewWindow_Proxy( 28384 INewWindowManager* This, 28385 LPCWSTR pszUrl, 28386 LPCWSTR pszName, 28387 LPCWSTR pszUrlContext, 28388 LPCWSTR pszFeatures, 28389 WINBOOL fReplace, 28390 DWORD dwFlags, 28391 DWORD dwUserActionTime); 28392 void __RPC_STUB INewWindowManager_EvaluateNewWindow_Stub( 28393 IRpcStubBuffer* This, 28394 IRpcChannelBuffer* pRpcChannelBuffer, 28395 PRPC_MESSAGE pRpcMessage, 28396 DWORD* pdwStubPhase); 28397 28398 #endif /* __INewWindowManager_INTERFACE_DEFINED__ */ 28399 28400 28401 /***************************************************************************** 28402 * IAttachmentExecute interface 28403 */ 28404 #ifndef __IAttachmentExecute_INTERFACE_DEFINED__ 28405 #define __IAttachmentExecute_INTERFACE_DEFINED__ 28406 28407 typedef enum ATTACHMENT_PROMPT { 28408 ATTACHMENT_PROMPT_NONE = 0x0, 28409 ATTACHMENT_PROMPT_SAVE = 0x1, 28410 ATTACHMENT_PROMPT_EXEC = 0x2, 28411 ATTACHMENT_PROMPT_EXEC_OR_SAVE = 0x3 28412 } ATTACHMENT_PROMPT; 28413 28414 typedef enum ATTACHMENT_ACTION { 28415 ATTACHMENT_ACTION_CANCEL = 0x0, 28416 ATTACHMENT_ACTION_SAVE = 0x1, 28417 ATTACHMENT_ACTION_EXEC = 0x2 28418 } ATTACHMENT_ACTION; 28419 28420 DEFINE_GUID(IID_IAttachmentExecute, 0x73db1241, 0x1e85, 0x4581, 0x8e,0x4f, 0xa8,0x1e,0x1d,0x0f,0x8c,0x57); 28421 #if defined(__cplusplus) && !defined(CINTERFACE) 28422 MIDL_INTERFACE("73db1241-1e85-4581-8e4f-a81e1d0f8c57") 28423 IAttachmentExecute : public IUnknown 28424 { 28425 virtual HRESULT STDMETHODCALLTYPE SetClientTitle( 28426 LPCWSTR pszTitle) = 0; 28427 28428 virtual HRESULT STDMETHODCALLTYPE SetClientGuid( 28429 REFGUID guid) = 0; 28430 28431 virtual HRESULT STDMETHODCALLTYPE SetLocalPath( 28432 LPCWSTR pszLocalPath) = 0; 28433 28434 virtual HRESULT STDMETHODCALLTYPE SetFileName( 28435 LPCWSTR pszFileName) = 0; 28436 28437 virtual HRESULT STDMETHODCALLTYPE SetSource( 28438 LPCWSTR pszSource) = 0; 28439 28440 virtual HRESULT STDMETHODCALLTYPE SetReferrer( 28441 LPCWSTR pszReferrer) = 0; 28442 28443 virtual HRESULT STDMETHODCALLTYPE CheckPolicy( 28444 ) = 0; 28445 28446 virtual HRESULT STDMETHODCALLTYPE Prompt( 28447 HWND hwnd, 28448 ATTACHMENT_PROMPT prompt, 28449 ATTACHMENT_ACTION *paction) = 0; 28450 28451 virtual HRESULT STDMETHODCALLTYPE Save( 28452 ) = 0; 28453 28454 virtual HRESULT STDMETHODCALLTYPE Execute( 28455 HWND hwnd, 28456 LPCWSTR pszVerb, 28457 HANDLE *phProcess) = 0; 28458 28459 virtual HRESULT STDMETHODCALLTYPE SaveWithUI( 28460 HWND hwnd) = 0; 28461 28462 virtual HRESULT STDMETHODCALLTYPE ClearClientState( 28463 ) = 0; 28464 28465 }; 28466 #ifdef __CRT_UUID_DECL 28467 __CRT_UUID_DECL(IAttachmentExecute, 0x73db1241, 0x1e85, 0x4581, 0x8e,0x4f, 0xa8,0x1e,0x1d,0x0f,0x8c,0x57) 28468 #endif 28469 #else 28470 typedef struct IAttachmentExecuteVtbl { 28471 BEGIN_INTERFACE 28472 28473 /*** IUnknown methods ***/ 28474 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 28475 IAttachmentExecute* This, 28476 REFIID riid, 28477 void **ppvObject); 28478 28479 ULONG (STDMETHODCALLTYPE *AddRef)( 28480 IAttachmentExecute* This); 28481 28482 ULONG (STDMETHODCALLTYPE *Release)( 28483 IAttachmentExecute* This); 28484 28485 /*** IAttachmentExecute methods ***/ 28486 HRESULT (STDMETHODCALLTYPE *SetClientTitle)( 28487 IAttachmentExecute* This, 28488 LPCWSTR pszTitle); 28489 28490 HRESULT (STDMETHODCALLTYPE *SetClientGuid)( 28491 IAttachmentExecute* This, 28492 REFGUID guid); 28493 28494 HRESULT (STDMETHODCALLTYPE *SetLocalPath)( 28495 IAttachmentExecute* This, 28496 LPCWSTR pszLocalPath); 28497 28498 HRESULT (STDMETHODCALLTYPE *SetFileName)( 28499 IAttachmentExecute* This, 28500 LPCWSTR pszFileName); 28501 28502 HRESULT (STDMETHODCALLTYPE *SetSource)( 28503 IAttachmentExecute* This, 28504 LPCWSTR pszSource); 28505 28506 HRESULT (STDMETHODCALLTYPE *SetReferrer)( 28507 IAttachmentExecute* This, 28508 LPCWSTR pszReferrer); 28509 28510 HRESULT (STDMETHODCALLTYPE *CheckPolicy)( 28511 IAttachmentExecute* This); 28512 28513 HRESULT (STDMETHODCALLTYPE *Prompt)( 28514 IAttachmentExecute* This, 28515 HWND hwnd, 28516 ATTACHMENT_PROMPT prompt, 28517 ATTACHMENT_ACTION *paction); 28518 28519 HRESULT (STDMETHODCALLTYPE *Save)( 28520 IAttachmentExecute* This); 28521 28522 HRESULT (STDMETHODCALLTYPE *Execute)( 28523 IAttachmentExecute* This, 28524 HWND hwnd, 28525 LPCWSTR pszVerb, 28526 HANDLE *phProcess); 28527 28528 HRESULT (STDMETHODCALLTYPE *SaveWithUI)( 28529 IAttachmentExecute* This, 28530 HWND hwnd); 28531 28532 HRESULT (STDMETHODCALLTYPE *ClearClientState)( 28533 IAttachmentExecute* This); 28534 28535 END_INTERFACE 28536 } IAttachmentExecuteVtbl; 28537 interface IAttachmentExecute { 28538 CONST_VTBL IAttachmentExecuteVtbl* lpVtbl; 28539 }; 28540 28541 #ifdef COBJMACROS 28542 #ifndef WIDL_C_INLINE_WRAPPERS 28543 /*** IUnknown methods ***/ 28544 #define IAttachmentExecute_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 28545 #define IAttachmentExecute_AddRef(This) (This)->lpVtbl->AddRef(This) 28546 #define IAttachmentExecute_Release(This) (This)->lpVtbl->Release(This) 28547 /*** IAttachmentExecute methods ***/ 28548 #define IAttachmentExecute_SetClientTitle(This,pszTitle) (This)->lpVtbl->SetClientTitle(This,pszTitle) 28549 #define IAttachmentExecute_SetClientGuid(This,guid) (This)->lpVtbl->SetClientGuid(This,guid) 28550 #define IAttachmentExecute_SetLocalPath(This,pszLocalPath) (This)->lpVtbl->SetLocalPath(This,pszLocalPath) 28551 #define IAttachmentExecute_SetFileName(This,pszFileName) (This)->lpVtbl->SetFileName(This,pszFileName) 28552 #define IAttachmentExecute_SetSource(This,pszSource) (This)->lpVtbl->SetSource(This,pszSource) 28553 #define IAttachmentExecute_SetReferrer(This,pszReferrer) (This)->lpVtbl->SetReferrer(This,pszReferrer) 28554 #define IAttachmentExecute_CheckPolicy(This) (This)->lpVtbl->CheckPolicy(This) 28555 #define IAttachmentExecute_Prompt(This,hwnd,prompt,paction) (This)->lpVtbl->Prompt(This,hwnd,prompt,paction) 28556 #define IAttachmentExecute_Save(This) (This)->lpVtbl->Save(This) 28557 #define IAttachmentExecute_Execute(This,hwnd,pszVerb,phProcess) (This)->lpVtbl->Execute(This,hwnd,pszVerb,phProcess) 28558 #define IAttachmentExecute_SaveWithUI(This,hwnd) (This)->lpVtbl->SaveWithUI(This,hwnd) 28559 #define IAttachmentExecute_ClearClientState(This) (This)->lpVtbl->ClearClientState(This) 28560 #else 28561 /*** IUnknown methods ***/ 28562 static FORCEINLINE HRESULT IAttachmentExecute_QueryInterface(IAttachmentExecute* This,REFIID riid,void **ppvObject) { 28563 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 28564 } 28565 static FORCEINLINE ULONG IAttachmentExecute_AddRef(IAttachmentExecute* This) { 28566 return This->lpVtbl->AddRef(This); 28567 } 28568 static FORCEINLINE ULONG IAttachmentExecute_Release(IAttachmentExecute* This) { 28569 return This->lpVtbl->Release(This); 28570 } 28571 /*** IAttachmentExecute methods ***/ 28572 static FORCEINLINE HRESULT IAttachmentExecute_SetClientTitle(IAttachmentExecute* This,LPCWSTR pszTitle) { 28573 return This->lpVtbl->SetClientTitle(This,pszTitle); 28574 } 28575 static FORCEINLINE HRESULT IAttachmentExecute_SetClientGuid(IAttachmentExecute* This,REFGUID guid) { 28576 return This->lpVtbl->SetClientGuid(This,guid); 28577 } 28578 static FORCEINLINE HRESULT IAttachmentExecute_SetLocalPath(IAttachmentExecute* This,LPCWSTR pszLocalPath) { 28579 return This->lpVtbl->SetLocalPath(This,pszLocalPath); 28580 } 28581 static FORCEINLINE HRESULT IAttachmentExecute_SetFileName(IAttachmentExecute* This,LPCWSTR pszFileName) { 28582 return This->lpVtbl->SetFileName(This,pszFileName); 28583 } 28584 static FORCEINLINE HRESULT IAttachmentExecute_SetSource(IAttachmentExecute* This,LPCWSTR pszSource) { 28585 return This->lpVtbl->SetSource(This,pszSource); 28586 } 28587 static FORCEINLINE HRESULT IAttachmentExecute_SetReferrer(IAttachmentExecute* This,LPCWSTR pszReferrer) { 28588 return This->lpVtbl->SetReferrer(This,pszReferrer); 28589 } 28590 static FORCEINLINE HRESULT IAttachmentExecute_CheckPolicy(IAttachmentExecute* This) { 28591 return This->lpVtbl->CheckPolicy(This); 28592 } 28593 static FORCEINLINE HRESULT IAttachmentExecute_Prompt(IAttachmentExecute* This,HWND hwnd,ATTACHMENT_PROMPT prompt,ATTACHMENT_ACTION *paction) { 28594 return This->lpVtbl->Prompt(This,hwnd,prompt,paction); 28595 } 28596 static FORCEINLINE HRESULT IAttachmentExecute_Save(IAttachmentExecute* This) { 28597 return This->lpVtbl->Save(This); 28598 } 28599 static FORCEINLINE HRESULT IAttachmentExecute_Execute(IAttachmentExecute* This,HWND hwnd,LPCWSTR pszVerb,HANDLE *phProcess) { 28600 return This->lpVtbl->Execute(This,hwnd,pszVerb,phProcess); 28601 } 28602 static FORCEINLINE HRESULT IAttachmentExecute_SaveWithUI(IAttachmentExecute* This,HWND hwnd) { 28603 return This->lpVtbl->SaveWithUI(This,hwnd); 28604 } 28605 static FORCEINLINE HRESULT IAttachmentExecute_ClearClientState(IAttachmentExecute* This) { 28606 return This->lpVtbl->ClearClientState(This); 28607 } 28608 #endif 28609 #endif 28610 28611 #endif 28612 28613 HRESULT STDMETHODCALLTYPE IAttachmentExecute_SetClientTitle_Proxy( 28614 IAttachmentExecute* This, 28615 LPCWSTR pszTitle); 28616 void __RPC_STUB IAttachmentExecute_SetClientTitle_Stub( 28617 IRpcStubBuffer* This, 28618 IRpcChannelBuffer* pRpcChannelBuffer, 28619 PRPC_MESSAGE pRpcMessage, 28620 DWORD* pdwStubPhase); 28621 HRESULT STDMETHODCALLTYPE IAttachmentExecute_SetClientGuid_Proxy( 28622 IAttachmentExecute* This, 28623 REFGUID guid); 28624 void __RPC_STUB IAttachmentExecute_SetClientGuid_Stub( 28625 IRpcStubBuffer* This, 28626 IRpcChannelBuffer* pRpcChannelBuffer, 28627 PRPC_MESSAGE pRpcMessage, 28628 DWORD* pdwStubPhase); 28629 HRESULT STDMETHODCALLTYPE IAttachmentExecute_SetLocalPath_Proxy( 28630 IAttachmentExecute* This, 28631 LPCWSTR pszLocalPath); 28632 void __RPC_STUB IAttachmentExecute_SetLocalPath_Stub( 28633 IRpcStubBuffer* This, 28634 IRpcChannelBuffer* pRpcChannelBuffer, 28635 PRPC_MESSAGE pRpcMessage, 28636 DWORD* pdwStubPhase); 28637 HRESULT STDMETHODCALLTYPE IAttachmentExecute_SetFileName_Proxy( 28638 IAttachmentExecute* This, 28639 LPCWSTR pszFileName); 28640 void __RPC_STUB IAttachmentExecute_SetFileName_Stub( 28641 IRpcStubBuffer* This, 28642 IRpcChannelBuffer* pRpcChannelBuffer, 28643 PRPC_MESSAGE pRpcMessage, 28644 DWORD* pdwStubPhase); 28645 HRESULT STDMETHODCALLTYPE IAttachmentExecute_SetSource_Proxy( 28646 IAttachmentExecute* This, 28647 LPCWSTR pszSource); 28648 void __RPC_STUB IAttachmentExecute_SetSource_Stub( 28649 IRpcStubBuffer* This, 28650 IRpcChannelBuffer* pRpcChannelBuffer, 28651 PRPC_MESSAGE pRpcMessage, 28652 DWORD* pdwStubPhase); 28653 HRESULT STDMETHODCALLTYPE IAttachmentExecute_SetReferrer_Proxy( 28654 IAttachmentExecute* This, 28655 LPCWSTR pszReferrer); 28656 void __RPC_STUB IAttachmentExecute_SetReferrer_Stub( 28657 IRpcStubBuffer* This, 28658 IRpcChannelBuffer* pRpcChannelBuffer, 28659 PRPC_MESSAGE pRpcMessage, 28660 DWORD* pdwStubPhase); 28661 HRESULT STDMETHODCALLTYPE IAttachmentExecute_CheckPolicy_Proxy( 28662 IAttachmentExecute* This); 28663 void __RPC_STUB IAttachmentExecute_CheckPolicy_Stub( 28664 IRpcStubBuffer* This, 28665 IRpcChannelBuffer* pRpcChannelBuffer, 28666 PRPC_MESSAGE pRpcMessage, 28667 DWORD* pdwStubPhase); 28668 HRESULT STDMETHODCALLTYPE IAttachmentExecute_Prompt_Proxy( 28669 IAttachmentExecute* This, 28670 HWND hwnd, 28671 ATTACHMENT_PROMPT prompt, 28672 ATTACHMENT_ACTION *paction); 28673 void __RPC_STUB IAttachmentExecute_Prompt_Stub( 28674 IRpcStubBuffer* This, 28675 IRpcChannelBuffer* pRpcChannelBuffer, 28676 PRPC_MESSAGE pRpcMessage, 28677 DWORD* pdwStubPhase); 28678 HRESULT STDMETHODCALLTYPE IAttachmentExecute_Save_Proxy( 28679 IAttachmentExecute* This); 28680 void __RPC_STUB IAttachmentExecute_Save_Stub( 28681 IRpcStubBuffer* This, 28682 IRpcChannelBuffer* pRpcChannelBuffer, 28683 PRPC_MESSAGE pRpcMessage, 28684 DWORD* pdwStubPhase); 28685 HRESULT STDMETHODCALLTYPE IAttachmentExecute_Execute_Proxy( 28686 IAttachmentExecute* This, 28687 HWND hwnd, 28688 LPCWSTR pszVerb, 28689 HANDLE *phProcess); 28690 void __RPC_STUB IAttachmentExecute_Execute_Stub( 28691 IRpcStubBuffer* This, 28692 IRpcChannelBuffer* pRpcChannelBuffer, 28693 PRPC_MESSAGE pRpcMessage, 28694 DWORD* pdwStubPhase); 28695 HRESULT STDMETHODCALLTYPE IAttachmentExecute_SaveWithUI_Proxy( 28696 IAttachmentExecute* This, 28697 HWND hwnd); 28698 void __RPC_STUB IAttachmentExecute_SaveWithUI_Stub( 28699 IRpcStubBuffer* This, 28700 IRpcChannelBuffer* pRpcChannelBuffer, 28701 PRPC_MESSAGE pRpcMessage, 28702 DWORD* pdwStubPhase); 28703 HRESULT STDMETHODCALLTYPE IAttachmentExecute_ClearClientState_Proxy( 28704 IAttachmentExecute* This); 28705 void __RPC_STUB IAttachmentExecute_ClearClientState_Stub( 28706 IRpcStubBuffer* This, 28707 IRpcChannelBuffer* pRpcChannelBuffer, 28708 PRPC_MESSAGE pRpcMessage, 28709 DWORD* pdwStubPhase); 28710 28711 #endif /* __IAttachmentExecute_INTERFACE_DEFINED__ */ 28712 28713 #endif 28714 28715 #if _WIN32_IE >= _WIN32_IE_IE60 28716 28717 #include <pshpack8.h> 28718 typedef struct tagSMDATA { 28719 DWORD dwMask; 28720 DWORD dwFlags; 28721 HMENU hmenu; 28722 HWND hwnd; 28723 UINT uId; 28724 UINT uIdParent; 28725 UINT uIdAncestor; 28726 IUnknown *punk; 28727 PIDLIST_ABSOLUTE pidlFolder; 28728 PUITEMID_CHILD pidlItem; 28729 IShellFolder *psf; 28730 void *pvUserData; 28731 } SMDATA; 28732 typedef struct tagSMDATA *LPSMDATA; 28733 28734 #define SMDM_SHELLFOLDER 0x00000001 28735 #define SMDM_HMENU 0x00000002 28736 #define SMDM_TOOLBAR 0x00000004 28737 28738 typedef struct tagSMINFO { 28739 DWORD dwMask; 28740 DWORD dwType; 28741 DWORD dwFlags; 28742 int iIcon; 28743 } SMINFO; 28744 typedef struct tagSMINFO *PSMINFO; 28745 28746 typedef struct SHCSCHANGENOTIFYSTRUCT { 28747 LONG lEvent; 28748 PCIDLIST_ABSOLUTE pidl1; 28749 PCIDLIST_ABSOLUTE pidl2; 28750 } SMCSHCHANGENOTIFYSTRUCT; 28751 typedef struct SHCSCHANGENOTIFYSTRUCT *PSMCSHCHANGENOTIFYSTRUCT; 28752 #include <poppack.h> 28753 28754 enum tagSMINFOMASK { 28755 SMIM_TYPE = 0x1, 28756 SMIM_FLAGS = 0x2, 28757 SMIM_ICON = 0x4 28758 }; 28759 28760 28761 enum tagSMINFOTYPE { 28762 SMIT_SEPARATOR = 0x1, 28763 SMIT_STRING = 0x2 28764 }; 28765 28766 28767 enum tagSMINFOFLAGS { 28768 SMIF_ICON = 0x1, 28769 SMIF_ACCELERATOR = 0x2, 28770 SMIF_DROPTARGET = 0x4, 28771 SMIF_SUBMENU = 0x8, 28772 SMIF_CHECKED = 0x20, 28773 SMIF_DROPCASCADE = 0x40, 28774 SMIF_HIDDEN = 0x80, 28775 SMIF_DISABLED = 0x100, 28776 SMIF_TRACKPOPUP = 0x200, 28777 SMIF_DEMOTED = 0x400, 28778 SMIF_ALTSTATE = 0x800, 28779 SMIF_DRAGNDROP = 0x1000, 28780 SMIF_NEW = 0x2000 28781 }; 28782 28783 28784 #define SMC_INITMENU 0x00000001 28785 #define SMC_CREATE 0x00000002 28786 #define SMC_EXITMENU 0x00000003 28787 #define SMC_GETINFO 0x00000005 28788 #define SMC_GETSFINFO 0x00000006 28789 #define SMC_GETOBJECT 0x00000007 28790 #define SMC_GETSFOBJECT 0x00000008 28791 #define SMC_SFEXEC 0x00000009 28792 #define SMC_SFSELECTITEM 0x0000000A 28793 #define SMC_REFRESH 0x00000010 28794 #define SMC_DEMOTE 0x00000011 28795 #define SMC_PROMOTE 0x00000012 28796 #define SMC_DEFAULTICON 0x00000016 28797 #define SMC_NEWITEM 0x00000017 28798 #define SMC_CHEVRONEXPAND 0x00000019 28799 #define SMC_DISPLAYCHEVRONTIP 0x0000002A 28800 #define SMC_SETSFOBJECT 0x0000002D 28801 #define SMC_SHCHANGENOTIFY 0x0000002E 28802 #define SMC_CHEVRONGETTIP 0x0000002F 28803 #define SMC_SFDDRESTRICTED 0x00000030 28804 #if _WIN32_IE >= _WIN32_IE_IE70 28805 #define SMC_SFEXEC_MIDDLE 0x00000031 28806 #define SMC_GETAUTOEXPANDSTATE 0x00000041 28807 #define SMC_AUTOEXPANDCHANGE 0x00000042 28808 #define SMC_GETCONTEXTMENUMODIFIER 0x00000043 28809 #define SMC_GETBKCONTEXTMENU 0x00000044 28810 #define SMC_OPEN 0x00000045 28811 28812 #define SMAE_EXPANDED 0x00000001 28813 #define SMAE_CONTRACTED 0x00000002 28814 28815 #define SMAE_USER 0x00000004 28816 28817 #define SMAE_VALID 0x00000007 28818 #endif 28819 28820 /***************************************************************************** 28821 * IShellMenuCallback interface 28822 */ 28823 #ifndef __IShellMenuCallback_INTERFACE_DEFINED__ 28824 #define __IShellMenuCallback_INTERFACE_DEFINED__ 28825 28826 DEFINE_GUID(IID_IShellMenuCallback, 0x4ca300a1, 0x9b8d, 0x11d1, 0x8b,0x22, 0x00,0xc0,0x4f,0xd9,0x18,0xd0); 28827 #if defined(__cplusplus) && !defined(CINTERFACE) 28828 MIDL_INTERFACE("4ca300a1-9b8d-11d1-8b22-00c04fd918d0") 28829 IShellMenuCallback : public IUnknown 28830 { 28831 virtual HRESULT STDMETHODCALLTYPE CallbackSM( 28832 LPSMDATA psmd, 28833 UINT uMsg, 28834 WPARAM wParam, 28835 LPARAM lParam) = 0; 28836 28837 }; 28838 #ifdef __CRT_UUID_DECL 28839 __CRT_UUID_DECL(IShellMenuCallback, 0x4ca300a1, 0x9b8d, 0x11d1, 0x8b,0x22, 0x00,0xc0,0x4f,0xd9,0x18,0xd0) 28840 #endif 28841 #else 28842 typedef struct IShellMenuCallbackVtbl { 28843 BEGIN_INTERFACE 28844 28845 /*** IUnknown methods ***/ 28846 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 28847 IShellMenuCallback* This, 28848 REFIID riid, 28849 void **ppvObject); 28850 28851 ULONG (STDMETHODCALLTYPE *AddRef)( 28852 IShellMenuCallback* This); 28853 28854 ULONG (STDMETHODCALLTYPE *Release)( 28855 IShellMenuCallback* This); 28856 28857 /*** IShellMenuCallback methods ***/ 28858 HRESULT (STDMETHODCALLTYPE *CallbackSM)( 28859 IShellMenuCallback* This, 28860 LPSMDATA psmd, 28861 UINT uMsg, 28862 WPARAM wParam, 28863 LPARAM lParam); 28864 28865 END_INTERFACE 28866 } IShellMenuCallbackVtbl; 28867 interface IShellMenuCallback { 28868 CONST_VTBL IShellMenuCallbackVtbl* lpVtbl; 28869 }; 28870 28871 #ifdef COBJMACROS 28872 #ifndef WIDL_C_INLINE_WRAPPERS 28873 /*** IUnknown methods ***/ 28874 #define IShellMenuCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 28875 #define IShellMenuCallback_AddRef(This) (This)->lpVtbl->AddRef(This) 28876 #define IShellMenuCallback_Release(This) (This)->lpVtbl->Release(This) 28877 /*** IShellMenuCallback methods ***/ 28878 #define IShellMenuCallback_CallbackSM(This,psmd,uMsg,wParam,lParam) (This)->lpVtbl->CallbackSM(This,psmd,uMsg,wParam,lParam) 28879 #else 28880 /*** IUnknown methods ***/ 28881 static FORCEINLINE HRESULT IShellMenuCallback_QueryInterface(IShellMenuCallback* This,REFIID riid,void **ppvObject) { 28882 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 28883 } 28884 static FORCEINLINE ULONG IShellMenuCallback_AddRef(IShellMenuCallback* This) { 28885 return This->lpVtbl->AddRef(This); 28886 } 28887 static FORCEINLINE ULONG IShellMenuCallback_Release(IShellMenuCallback* This) { 28888 return This->lpVtbl->Release(This); 28889 } 28890 /*** IShellMenuCallback methods ***/ 28891 static FORCEINLINE HRESULT IShellMenuCallback_CallbackSM(IShellMenuCallback* This,LPSMDATA psmd,UINT uMsg,WPARAM wParam,LPARAM lParam) { 28892 return This->lpVtbl->CallbackSM(This,psmd,uMsg,wParam,lParam); 28893 } 28894 #endif 28895 #endif 28896 28897 #endif 28898 28899 HRESULT STDMETHODCALLTYPE IShellMenuCallback_CallbackSM_Proxy( 28900 IShellMenuCallback* This, 28901 LPSMDATA psmd, 28902 UINT uMsg, 28903 WPARAM wParam, 28904 LPARAM lParam); 28905 void __RPC_STUB IShellMenuCallback_CallbackSM_Stub( 28906 IRpcStubBuffer* This, 28907 IRpcChannelBuffer* pRpcChannelBuffer, 28908 PRPC_MESSAGE pRpcMessage, 28909 DWORD* pdwStubPhase); 28910 28911 #endif /* __IShellMenuCallback_INTERFACE_DEFINED__ */ 28912 28913 28914 #define SMINIT_DEFAULT 0x00000000 28915 #define SMINIT_RESTRICT_DRAGDROP 0x00000002 28916 #define SMINIT_TOPLEVEL 0x00000004 28917 #define SMINIT_CACHED 0x00000010 28918 #if _WIN32_IE >= _WIN32_IE_IE70 28919 #define SMINIT_AUTOEXPAND 0x00000100 28920 #define SMINIT_AUTOTOOLTIP 0x00000200 28921 #define SMINIT_DROPONCONTAINER 0x00000400 28922 #endif 28923 28924 #define SMINIT_VERTICAL 0x10000000 28925 #define SMINIT_HORIZONTAL 0x20000000 28926 28927 #define ANCESTORDEFAULT (UINT)-1 28928 28929 #define SMSET_TOP 0x10000000 28930 #define SMSET_BOTTOM 0x20000000 28931 #define SMSET_DONTOWN 0x00000001 28932 28933 #define SMINV_REFRESH 0x00000001 28934 #define SMINV_ID 0x00000008 28935 28936 /***************************************************************************** 28937 * IShellMenu interface 28938 */ 28939 #ifndef __IShellMenu_INTERFACE_DEFINED__ 28940 #define __IShellMenu_INTERFACE_DEFINED__ 28941 28942 DEFINE_GUID(IID_IShellMenu, 0xee1f7637, 0xe138, 0x11d1, 0x83,0x79, 0x00,0xc0,0x4f,0xd9,0x18,0xd0); 28943 #if defined(__cplusplus) && !defined(CINTERFACE) 28944 MIDL_INTERFACE("ee1f7637-e138-11d1-8379-00c04fd918d0") 28945 IShellMenu : public IUnknown 28946 { 28947 virtual HRESULT STDMETHODCALLTYPE Initialize( 28948 IShellMenuCallback *psmc, 28949 UINT uId, 28950 UINT uIdAncestor, 28951 DWORD dwFlags) = 0; 28952 28953 virtual HRESULT STDMETHODCALLTYPE GetMenuInfo( 28954 IShellMenuCallback **ppsmc, 28955 UINT *puId, 28956 UINT *puIdAncestor, 28957 DWORD *pdwFlags) = 0; 28958 28959 virtual HRESULT STDMETHODCALLTYPE SetShellFolder( 28960 IShellFolder *psf, 28961 PCIDLIST_ABSOLUTE pidlFolder, 28962 HKEY hKey, 28963 DWORD dwFlags) = 0; 28964 28965 virtual HRESULT STDMETHODCALLTYPE GetShellFolder( 28966 DWORD *pdwFlags, 28967 PIDLIST_ABSOLUTE *ppidl, 28968 REFIID riid, 28969 void **ppv) = 0; 28970 28971 virtual HRESULT STDMETHODCALLTYPE SetMenu( 28972 HMENU hmenu, 28973 HWND hwnd, 28974 DWORD dwFlags) = 0; 28975 28976 virtual HRESULT STDMETHODCALLTYPE GetMenu( 28977 HMENU *phmenu, 28978 HWND *phwnd, 28979 DWORD *pdwFlags) = 0; 28980 28981 virtual HRESULT STDMETHODCALLTYPE InvalidateItem( 28982 LPSMDATA psmd, 28983 DWORD dwFlags) = 0; 28984 28985 virtual HRESULT STDMETHODCALLTYPE GetState( 28986 LPSMDATA psmd) = 0; 28987 28988 virtual HRESULT STDMETHODCALLTYPE SetMenuToolbar( 28989 IUnknown *punk, 28990 DWORD dwFlags) = 0; 28991 28992 }; 28993 #ifdef __CRT_UUID_DECL 28994 __CRT_UUID_DECL(IShellMenu, 0xee1f7637, 0xe138, 0x11d1, 0x83,0x79, 0x00,0xc0,0x4f,0xd9,0x18,0xd0) 28995 #endif 28996 #else 28997 typedef struct IShellMenuVtbl { 28998 BEGIN_INTERFACE 28999 29000 /*** IUnknown methods ***/ 29001 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 29002 IShellMenu* This, 29003 REFIID riid, 29004 void **ppvObject); 29005 29006 ULONG (STDMETHODCALLTYPE *AddRef)( 29007 IShellMenu* This); 29008 29009 ULONG (STDMETHODCALLTYPE *Release)( 29010 IShellMenu* This); 29011 29012 /*** IShellMenu methods ***/ 29013 HRESULT (STDMETHODCALLTYPE *Initialize)( 29014 IShellMenu* This, 29015 IShellMenuCallback *psmc, 29016 UINT uId, 29017 UINT uIdAncestor, 29018 DWORD dwFlags); 29019 29020 HRESULT (STDMETHODCALLTYPE *GetMenuInfo)( 29021 IShellMenu* This, 29022 IShellMenuCallback **ppsmc, 29023 UINT *puId, 29024 UINT *puIdAncestor, 29025 DWORD *pdwFlags); 29026 29027 HRESULT (STDMETHODCALLTYPE *SetShellFolder)( 29028 IShellMenu* This, 29029 IShellFolder *psf, 29030 PCIDLIST_ABSOLUTE pidlFolder, 29031 HKEY hKey, 29032 DWORD dwFlags); 29033 29034 HRESULT (STDMETHODCALLTYPE *GetShellFolder)( 29035 IShellMenu* This, 29036 DWORD *pdwFlags, 29037 PIDLIST_ABSOLUTE *ppidl, 29038 REFIID riid, 29039 void **ppv); 29040 29041 HRESULT (STDMETHODCALLTYPE *SetMenu)( 29042 IShellMenu* This, 29043 HMENU hmenu, 29044 HWND hwnd, 29045 DWORD dwFlags); 29046 29047 HRESULT (STDMETHODCALLTYPE *GetMenu)( 29048 IShellMenu* This, 29049 HMENU *phmenu, 29050 HWND *phwnd, 29051 DWORD *pdwFlags); 29052 29053 HRESULT (STDMETHODCALLTYPE *InvalidateItem)( 29054 IShellMenu* This, 29055 LPSMDATA psmd, 29056 DWORD dwFlags); 29057 29058 HRESULT (STDMETHODCALLTYPE *GetState)( 29059 IShellMenu* This, 29060 LPSMDATA psmd); 29061 29062 HRESULT (STDMETHODCALLTYPE *SetMenuToolbar)( 29063 IShellMenu* This, 29064 IUnknown *punk, 29065 DWORD dwFlags); 29066 29067 END_INTERFACE 29068 } IShellMenuVtbl; 29069 interface IShellMenu { 29070 CONST_VTBL IShellMenuVtbl* lpVtbl; 29071 }; 29072 29073 #ifdef COBJMACROS 29074 #ifndef WIDL_C_INLINE_WRAPPERS 29075 /*** IUnknown methods ***/ 29076 #define IShellMenu_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 29077 #define IShellMenu_AddRef(This) (This)->lpVtbl->AddRef(This) 29078 #define IShellMenu_Release(This) (This)->lpVtbl->Release(This) 29079 /*** IShellMenu methods ***/ 29080 #define IShellMenu_Initialize(This,psmc,uId,uIdAncestor,dwFlags) (This)->lpVtbl->Initialize(This,psmc,uId,uIdAncestor,dwFlags) 29081 #define IShellMenu_GetMenuInfo(This,ppsmc,puId,puIdAncestor,pdwFlags) (This)->lpVtbl->GetMenuInfo(This,ppsmc,puId,puIdAncestor,pdwFlags) 29082 #define IShellMenu_SetShellFolder(This,psf,pidlFolder,hKey,dwFlags) (This)->lpVtbl->SetShellFolder(This,psf,pidlFolder,hKey,dwFlags) 29083 #define IShellMenu_GetShellFolder(This,pdwFlags,ppidl,riid,ppv) (This)->lpVtbl->GetShellFolder(This,pdwFlags,ppidl,riid,ppv) 29084 #define IShellMenu_SetMenu(This,hmenu,hwnd,dwFlags) (This)->lpVtbl->SetMenu(This,hmenu,hwnd,dwFlags) 29085 #define IShellMenu_GetMenu(This,phmenu,phwnd,pdwFlags) (This)->lpVtbl->GetMenu(This,phmenu,phwnd,pdwFlags) 29086 #define IShellMenu_InvalidateItem(This,psmd,dwFlags) (This)->lpVtbl->InvalidateItem(This,psmd,dwFlags) 29087 #define IShellMenu_GetState(This,psmd) (This)->lpVtbl->GetState(This,psmd) 29088 #define IShellMenu_SetMenuToolbar(This,punk,dwFlags) (This)->lpVtbl->SetMenuToolbar(This,punk,dwFlags) 29089 #else 29090 /*** IUnknown methods ***/ 29091 static FORCEINLINE HRESULT IShellMenu_QueryInterface(IShellMenu* This,REFIID riid,void **ppvObject) { 29092 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 29093 } 29094 static FORCEINLINE ULONG IShellMenu_AddRef(IShellMenu* This) { 29095 return This->lpVtbl->AddRef(This); 29096 } 29097 static FORCEINLINE ULONG IShellMenu_Release(IShellMenu* This) { 29098 return This->lpVtbl->Release(This); 29099 } 29100 /*** IShellMenu methods ***/ 29101 static FORCEINLINE HRESULT IShellMenu_Initialize(IShellMenu* This,IShellMenuCallback *psmc,UINT uId,UINT uIdAncestor,DWORD dwFlags) { 29102 return This->lpVtbl->Initialize(This,psmc,uId,uIdAncestor,dwFlags); 29103 } 29104 static FORCEINLINE HRESULT IShellMenu_GetMenuInfo(IShellMenu* This,IShellMenuCallback **ppsmc,UINT *puId,UINT *puIdAncestor,DWORD *pdwFlags) { 29105 return This->lpVtbl->GetMenuInfo(This,ppsmc,puId,puIdAncestor,pdwFlags); 29106 } 29107 static FORCEINLINE HRESULT IShellMenu_SetShellFolder(IShellMenu* This,IShellFolder *psf,PCIDLIST_ABSOLUTE pidlFolder,HKEY hKey,DWORD dwFlags) { 29108 return This->lpVtbl->SetShellFolder(This,psf,pidlFolder,hKey,dwFlags); 29109 } 29110 static FORCEINLINE HRESULT IShellMenu_GetShellFolder(IShellMenu* This,DWORD *pdwFlags,PIDLIST_ABSOLUTE *ppidl,REFIID riid,void **ppv) { 29111 return This->lpVtbl->GetShellFolder(This,pdwFlags,ppidl,riid,ppv); 29112 } 29113 static FORCEINLINE HRESULT IShellMenu_SetMenu(IShellMenu* This,HMENU hmenu,HWND hwnd,DWORD dwFlags) { 29114 return This->lpVtbl->SetMenu(This,hmenu,hwnd,dwFlags); 29115 } 29116 static FORCEINLINE HRESULT IShellMenu_GetMenu(IShellMenu* This,HMENU *phmenu,HWND *phwnd,DWORD *pdwFlags) { 29117 return This->lpVtbl->GetMenu(This,phmenu,phwnd,pdwFlags); 29118 } 29119 static FORCEINLINE HRESULT IShellMenu_InvalidateItem(IShellMenu* This,LPSMDATA psmd,DWORD dwFlags) { 29120 return This->lpVtbl->InvalidateItem(This,psmd,dwFlags); 29121 } 29122 static FORCEINLINE HRESULT IShellMenu_GetState(IShellMenu* This,LPSMDATA psmd) { 29123 return This->lpVtbl->GetState(This,psmd); 29124 } 29125 static FORCEINLINE HRESULT IShellMenu_SetMenuToolbar(IShellMenu* This,IUnknown *punk,DWORD dwFlags) { 29126 return This->lpVtbl->SetMenuToolbar(This,punk,dwFlags); 29127 } 29128 #endif 29129 #endif 29130 29131 #endif 29132 29133 HRESULT STDMETHODCALLTYPE IShellMenu_Initialize_Proxy( 29134 IShellMenu* This, 29135 IShellMenuCallback *psmc, 29136 UINT uId, 29137 UINT uIdAncestor, 29138 DWORD dwFlags); 29139 void __RPC_STUB IShellMenu_Initialize_Stub( 29140 IRpcStubBuffer* This, 29141 IRpcChannelBuffer* pRpcChannelBuffer, 29142 PRPC_MESSAGE pRpcMessage, 29143 DWORD* pdwStubPhase); 29144 HRESULT STDMETHODCALLTYPE IShellMenu_GetMenuInfo_Proxy( 29145 IShellMenu* This, 29146 IShellMenuCallback **ppsmc, 29147 UINT *puId, 29148 UINT *puIdAncestor, 29149 DWORD *pdwFlags); 29150 void __RPC_STUB IShellMenu_GetMenuInfo_Stub( 29151 IRpcStubBuffer* This, 29152 IRpcChannelBuffer* pRpcChannelBuffer, 29153 PRPC_MESSAGE pRpcMessage, 29154 DWORD* pdwStubPhase); 29155 HRESULT STDMETHODCALLTYPE IShellMenu_SetShellFolder_Proxy( 29156 IShellMenu* This, 29157 IShellFolder *psf, 29158 PCIDLIST_ABSOLUTE pidlFolder, 29159 HKEY hKey, 29160 DWORD dwFlags); 29161 void __RPC_STUB IShellMenu_SetShellFolder_Stub( 29162 IRpcStubBuffer* This, 29163 IRpcChannelBuffer* pRpcChannelBuffer, 29164 PRPC_MESSAGE pRpcMessage, 29165 DWORD* pdwStubPhase); 29166 HRESULT STDMETHODCALLTYPE IShellMenu_GetShellFolder_Proxy( 29167 IShellMenu* This, 29168 DWORD *pdwFlags, 29169 PIDLIST_ABSOLUTE *ppidl, 29170 REFIID riid, 29171 void **ppv); 29172 void __RPC_STUB IShellMenu_GetShellFolder_Stub( 29173 IRpcStubBuffer* This, 29174 IRpcChannelBuffer* pRpcChannelBuffer, 29175 PRPC_MESSAGE pRpcMessage, 29176 DWORD* pdwStubPhase); 29177 HRESULT STDMETHODCALLTYPE IShellMenu_SetMenu_Proxy( 29178 IShellMenu* This, 29179 HMENU hmenu, 29180 HWND hwnd, 29181 DWORD dwFlags); 29182 void __RPC_STUB IShellMenu_SetMenu_Stub( 29183 IRpcStubBuffer* This, 29184 IRpcChannelBuffer* pRpcChannelBuffer, 29185 PRPC_MESSAGE pRpcMessage, 29186 DWORD* pdwStubPhase); 29187 HRESULT STDMETHODCALLTYPE IShellMenu_GetMenu_Proxy( 29188 IShellMenu* This, 29189 HMENU *phmenu, 29190 HWND *phwnd, 29191 DWORD *pdwFlags); 29192 void __RPC_STUB IShellMenu_GetMenu_Stub( 29193 IRpcStubBuffer* This, 29194 IRpcChannelBuffer* pRpcChannelBuffer, 29195 PRPC_MESSAGE pRpcMessage, 29196 DWORD* pdwStubPhase); 29197 HRESULT STDMETHODCALLTYPE IShellMenu_InvalidateItem_Proxy( 29198 IShellMenu* This, 29199 LPSMDATA psmd, 29200 DWORD dwFlags); 29201 void __RPC_STUB IShellMenu_InvalidateItem_Stub( 29202 IRpcStubBuffer* This, 29203 IRpcChannelBuffer* pRpcChannelBuffer, 29204 PRPC_MESSAGE pRpcMessage, 29205 DWORD* pdwStubPhase); 29206 HRESULT STDMETHODCALLTYPE IShellMenu_GetState_Proxy( 29207 IShellMenu* This, 29208 LPSMDATA psmd); 29209 void __RPC_STUB IShellMenu_GetState_Stub( 29210 IRpcStubBuffer* This, 29211 IRpcChannelBuffer* pRpcChannelBuffer, 29212 PRPC_MESSAGE pRpcMessage, 29213 DWORD* pdwStubPhase); 29214 HRESULT STDMETHODCALLTYPE IShellMenu_SetMenuToolbar_Proxy( 29215 IShellMenu* This, 29216 IUnknown *punk, 29217 DWORD dwFlags); 29218 void __RPC_STUB IShellMenu_SetMenuToolbar_Stub( 29219 IRpcStubBuffer* This, 29220 IRpcChannelBuffer* pRpcChannelBuffer, 29221 PRPC_MESSAGE pRpcMessage, 29222 DWORD* pdwStubPhase); 29223 29224 #endif /* __IShellMenu_INTERFACE_DEFINED__ */ 29225 29226 #endif 29227 29228 /***************************************************************************** 29229 * IShellRunDll interface 29230 */ 29231 #ifndef __IShellRunDll_INTERFACE_DEFINED__ 29232 #define __IShellRunDll_INTERFACE_DEFINED__ 29233 29234 DEFINE_GUID(IID_IShellRunDll, 0xfce4bde0, 0x4b68, 0x4b80, 0x8e,0x9c, 0x74,0x26,0x31,0x5a,0x73,0x88); 29235 #if defined(__cplusplus) && !defined(CINTERFACE) 29236 MIDL_INTERFACE("fce4bde0-4b68-4b80-8e9c-7426315a7388") 29237 IShellRunDll : public IUnknown 29238 { 29239 virtual HRESULT STDMETHODCALLTYPE Run( 29240 LPCWSTR pszArgs) = 0; 29241 29242 }; 29243 #ifdef __CRT_UUID_DECL 29244 __CRT_UUID_DECL(IShellRunDll, 0xfce4bde0, 0x4b68, 0x4b80, 0x8e,0x9c, 0x74,0x26,0x31,0x5a,0x73,0x88) 29245 #endif 29246 #else 29247 typedef struct IShellRunDllVtbl { 29248 BEGIN_INTERFACE 29249 29250 /*** IUnknown methods ***/ 29251 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 29252 IShellRunDll* This, 29253 REFIID riid, 29254 void **ppvObject); 29255 29256 ULONG (STDMETHODCALLTYPE *AddRef)( 29257 IShellRunDll* This); 29258 29259 ULONG (STDMETHODCALLTYPE *Release)( 29260 IShellRunDll* This); 29261 29262 /*** IShellRunDll methods ***/ 29263 HRESULT (STDMETHODCALLTYPE *Run)( 29264 IShellRunDll* This, 29265 LPCWSTR pszArgs); 29266 29267 END_INTERFACE 29268 } IShellRunDllVtbl; 29269 interface IShellRunDll { 29270 CONST_VTBL IShellRunDllVtbl* lpVtbl; 29271 }; 29272 29273 #ifdef COBJMACROS 29274 #ifndef WIDL_C_INLINE_WRAPPERS 29275 /*** IUnknown methods ***/ 29276 #define IShellRunDll_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 29277 #define IShellRunDll_AddRef(This) (This)->lpVtbl->AddRef(This) 29278 #define IShellRunDll_Release(This) (This)->lpVtbl->Release(This) 29279 /*** IShellRunDll methods ***/ 29280 #define IShellRunDll_Run(This,pszArgs) (This)->lpVtbl->Run(This,pszArgs) 29281 #else 29282 /*** IUnknown methods ***/ 29283 static FORCEINLINE HRESULT IShellRunDll_QueryInterface(IShellRunDll* This,REFIID riid,void **ppvObject) { 29284 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 29285 } 29286 static FORCEINLINE ULONG IShellRunDll_AddRef(IShellRunDll* This) { 29287 return This->lpVtbl->AddRef(This); 29288 } 29289 static FORCEINLINE ULONG IShellRunDll_Release(IShellRunDll* This) { 29290 return This->lpVtbl->Release(This); 29291 } 29292 /*** IShellRunDll methods ***/ 29293 static FORCEINLINE HRESULT IShellRunDll_Run(IShellRunDll* This,LPCWSTR pszArgs) { 29294 return This->lpVtbl->Run(This,pszArgs); 29295 } 29296 #endif 29297 #endif 29298 29299 #endif 29300 29301 HRESULT STDMETHODCALLTYPE IShellRunDll_Run_Proxy( 29302 IShellRunDll* This, 29303 LPCWSTR pszArgs); 29304 void __RPC_STUB IShellRunDll_Run_Stub( 29305 IRpcStubBuffer* This, 29306 IRpcChannelBuffer* pRpcChannelBuffer, 29307 PRPC_MESSAGE pRpcMessage, 29308 DWORD* pdwStubPhase); 29309 29310 #endif /* __IShellRunDll_INTERFACE_DEFINED__ */ 29311 29312 29313 #if NTDDI_VERSION >= NTDDI_VISTA 29314 typedef enum KF_CATEGORY { 29315 KF_CATEGORY_VIRTUAL = 1, 29316 KF_CATEGORY_FIXED = 2, 29317 KF_CATEGORY_COMMON = 3, 29318 KF_CATEGORY_PERUSER = 4 29319 } KF_CATEGORY; 29320 29321 enum _KF_DEFINITION_FLAGS { 29322 KFDF_LOCAL_REDIRECT_ONLY = 0x2, 29323 KFDF_ROAMABLE = 0x4, 29324 KFDF_PRECREATE = 0x8, 29325 KFDF_STREAM = 0x10, 29326 KFDF_PUBLISHEXPANDEDPATH = 0x20 29327 }; 29328 29329 29330 typedef DWORD KF_DEFINITION_FLAGS; 29331 29332 enum _KF_REDIRECT_FLAGS { 29333 KF_REDIRECT_USER_EXCLUSIVE = 0x1, 29334 KF_REDIRECT_COPY_SOURCE_DACL = 0x2, 29335 KF_REDIRECT_OWNER_USER = 0x4, 29336 KF_REDIRECT_SET_OWNER_EXPLICIT = 0x8, 29337 KF_REDIRECT_CHECK_ONLY = 0x10, 29338 KF_REDIRECT_WITH_UI = 0x20, 29339 KF_REDIRECT_UNPIN = 0x40, 29340 KF_REDIRECT_PIN = 0x80, 29341 KF_REDIRECT_COPY_CONTENTS = 0x200, 29342 KF_REDIRECT_DEL_SOURCE_CONTENTS = 0x400, 29343 KF_REDIRECT_EXCLUDE_ALL_KNOWN_SUBFOLDERS = 0x800 29344 }; 29345 29346 29347 typedef DWORD KF_REDIRECT_FLAGS; 29348 29349 enum _KF_REDIRECTION_CAPABILITIES { 29350 KF_REDIRECTION_CAPABILITIES_ALLOW_ALL = 0xff, 29351 KF_REDIRECTION_CAPABILITIES_REDIRECTABLE = 0x1, 29352 KF_REDIRECTION_CAPABILITIES_DENY_ALL = 0xfff00, 29353 KF_REDIRECTION_CAPABILITIES_DENY_POLICY_REDIRECTED = 0x100, 29354 KF_REDIRECTION_CAPABILITIES_DENY_POLICY = 0x200, 29355 KF_REDIRECTION_CAPABILITIES_DENY_PERMISSIONS = 0x400 29356 }; 29357 29358 29359 typedef DWORD KF_REDIRECTION_CAPABILITIES; 29360 29361 typedef struct KNOWNFOLDER_DEFINITION { 29362 KF_CATEGORY category; 29363 LPWSTR pszName; 29364 LPWSTR pszDescription; 29365 KNOWNFOLDERID fidParent; 29366 LPWSTR pszRelativePath; 29367 LPWSTR pszParsingName; 29368 LPWSTR pszTooltip; 29369 LPWSTR pszLocalizedName; 29370 LPWSTR pszIcon; 29371 LPWSTR pszSecurity; 29372 DWORD dwAttributes; 29373 KF_DEFINITION_FLAGS kfdFlags; 29374 FOLDERTYPEID ftidType; 29375 } KNOWNFOLDER_DEFINITION; 29376 29377 /***************************************************************************** 29378 * IKnownFolder interface 29379 */ 29380 #ifndef __IKnownFolder_INTERFACE_DEFINED__ 29381 #define __IKnownFolder_INTERFACE_DEFINED__ 29382 29383 DEFINE_GUID(IID_IKnownFolder, 0x3aa7af7e, 0x9b36, 0x420c, 0xa8,0xe3, 0xf7,0x7d,0x46,0x74,0xa4,0x88); 29384 #if defined(__cplusplus) && !defined(CINTERFACE) 29385 MIDL_INTERFACE("3aa7af7e-9b36-420c-a8e3-f77d4674a488") 29386 IKnownFolder : public IUnknown 29387 { 29388 virtual HRESULT STDMETHODCALLTYPE GetId( 29389 KNOWNFOLDERID *pkfid) = 0; 29390 29391 virtual HRESULT STDMETHODCALLTYPE GetCategory( 29392 KF_CATEGORY *pCategory) = 0; 29393 29394 virtual HRESULT STDMETHODCALLTYPE GetShellItem( 29395 DWORD dwFlags, 29396 REFIID riid, 29397 void **ppv) = 0; 29398 29399 virtual HRESULT STDMETHODCALLTYPE GetPath( 29400 DWORD dwFlags, 29401 LPWSTR *ppszPath) = 0; 29402 29403 virtual HRESULT STDMETHODCALLTYPE SetPath( 29404 DWORD dwFlags, 29405 LPCWSTR pszPath) = 0; 29406 29407 virtual HRESULT STDMETHODCALLTYPE GetIDList( 29408 DWORD dwFlags, 29409 PIDLIST_ABSOLUTE *ppidl) = 0; 29410 29411 virtual HRESULT STDMETHODCALLTYPE GetFolderType( 29412 FOLDERTYPEID *pftid) = 0; 29413 29414 virtual HRESULT STDMETHODCALLTYPE GetRedirectionCapabilities( 29415 KF_REDIRECTION_CAPABILITIES *pCapabilities) = 0; 29416 29417 virtual HRESULT STDMETHODCALLTYPE GetFolderDefinition( 29418 KNOWNFOLDER_DEFINITION *pKFD) = 0; 29419 29420 }; 29421 #ifdef __CRT_UUID_DECL 29422 __CRT_UUID_DECL(IKnownFolder, 0x3aa7af7e, 0x9b36, 0x420c, 0xa8,0xe3, 0xf7,0x7d,0x46,0x74,0xa4,0x88) 29423 #endif 29424 #else 29425 typedef struct IKnownFolderVtbl { 29426 BEGIN_INTERFACE 29427 29428 /*** IUnknown methods ***/ 29429 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 29430 IKnownFolder* This, 29431 REFIID riid, 29432 void **ppvObject); 29433 29434 ULONG (STDMETHODCALLTYPE *AddRef)( 29435 IKnownFolder* This); 29436 29437 ULONG (STDMETHODCALLTYPE *Release)( 29438 IKnownFolder* This); 29439 29440 /*** IKnownFolder methods ***/ 29441 HRESULT (STDMETHODCALLTYPE *GetId)( 29442 IKnownFolder* This, 29443 KNOWNFOLDERID *pkfid); 29444 29445 HRESULT (STDMETHODCALLTYPE *GetCategory)( 29446 IKnownFolder* This, 29447 KF_CATEGORY *pCategory); 29448 29449 HRESULT (STDMETHODCALLTYPE *GetShellItem)( 29450 IKnownFolder* This, 29451 DWORD dwFlags, 29452 REFIID riid, 29453 void **ppv); 29454 29455 HRESULT (STDMETHODCALLTYPE *GetPath)( 29456 IKnownFolder* This, 29457 DWORD dwFlags, 29458 LPWSTR *ppszPath); 29459 29460 HRESULT (STDMETHODCALLTYPE *SetPath)( 29461 IKnownFolder* This, 29462 DWORD dwFlags, 29463 LPCWSTR pszPath); 29464 29465 HRESULT (STDMETHODCALLTYPE *GetIDList)( 29466 IKnownFolder* This, 29467 DWORD dwFlags, 29468 PIDLIST_ABSOLUTE *ppidl); 29469 29470 HRESULT (STDMETHODCALLTYPE *GetFolderType)( 29471 IKnownFolder* This, 29472 FOLDERTYPEID *pftid); 29473 29474 HRESULT (STDMETHODCALLTYPE *GetRedirectionCapabilities)( 29475 IKnownFolder* This, 29476 KF_REDIRECTION_CAPABILITIES *pCapabilities); 29477 29478 HRESULT (STDMETHODCALLTYPE *GetFolderDefinition)( 29479 IKnownFolder* This, 29480 KNOWNFOLDER_DEFINITION *pKFD); 29481 29482 END_INTERFACE 29483 } IKnownFolderVtbl; 29484 interface IKnownFolder { 29485 CONST_VTBL IKnownFolderVtbl* lpVtbl; 29486 }; 29487 29488 #ifdef COBJMACROS 29489 #ifndef WIDL_C_INLINE_WRAPPERS 29490 /*** IUnknown methods ***/ 29491 #define IKnownFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 29492 #define IKnownFolder_AddRef(This) (This)->lpVtbl->AddRef(This) 29493 #define IKnownFolder_Release(This) (This)->lpVtbl->Release(This) 29494 /*** IKnownFolder methods ***/ 29495 #define IKnownFolder_GetId(This,pkfid) (This)->lpVtbl->GetId(This,pkfid) 29496 #define IKnownFolder_GetCategory(This,pCategory) (This)->lpVtbl->GetCategory(This,pCategory) 29497 #define IKnownFolder_GetShellItem(This,dwFlags,riid,ppv) (This)->lpVtbl->GetShellItem(This,dwFlags,riid,ppv) 29498 #define IKnownFolder_GetPath(This,dwFlags,ppszPath) (This)->lpVtbl->GetPath(This,dwFlags,ppszPath) 29499 #define IKnownFolder_SetPath(This,dwFlags,pszPath) (This)->lpVtbl->SetPath(This,dwFlags,pszPath) 29500 #define IKnownFolder_GetIDList(This,dwFlags,ppidl) (This)->lpVtbl->GetIDList(This,dwFlags,ppidl) 29501 #define IKnownFolder_GetFolderType(This,pftid) (This)->lpVtbl->GetFolderType(This,pftid) 29502 #define IKnownFolder_GetRedirectionCapabilities(This,pCapabilities) (This)->lpVtbl->GetRedirectionCapabilities(This,pCapabilities) 29503 #define IKnownFolder_GetFolderDefinition(This,pKFD) (This)->lpVtbl->GetFolderDefinition(This,pKFD) 29504 #else 29505 /*** IUnknown methods ***/ 29506 static FORCEINLINE HRESULT IKnownFolder_QueryInterface(IKnownFolder* This,REFIID riid,void **ppvObject) { 29507 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 29508 } 29509 static FORCEINLINE ULONG IKnownFolder_AddRef(IKnownFolder* This) { 29510 return This->lpVtbl->AddRef(This); 29511 } 29512 static FORCEINLINE ULONG IKnownFolder_Release(IKnownFolder* This) { 29513 return This->lpVtbl->Release(This); 29514 } 29515 /*** IKnownFolder methods ***/ 29516 static FORCEINLINE HRESULT IKnownFolder_GetId(IKnownFolder* This,KNOWNFOLDERID *pkfid) { 29517 return This->lpVtbl->GetId(This,pkfid); 29518 } 29519 static FORCEINLINE HRESULT IKnownFolder_GetCategory(IKnownFolder* This,KF_CATEGORY *pCategory) { 29520 return This->lpVtbl->GetCategory(This,pCategory); 29521 } 29522 static FORCEINLINE HRESULT IKnownFolder_GetShellItem(IKnownFolder* This,DWORD dwFlags,REFIID riid,void **ppv) { 29523 return This->lpVtbl->GetShellItem(This,dwFlags,riid,ppv); 29524 } 29525 static FORCEINLINE HRESULT IKnownFolder_GetPath(IKnownFolder* This,DWORD dwFlags,LPWSTR *ppszPath) { 29526 return This->lpVtbl->GetPath(This,dwFlags,ppszPath); 29527 } 29528 static FORCEINLINE HRESULT IKnownFolder_SetPath(IKnownFolder* This,DWORD dwFlags,LPCWSTR pszPath) { 29529 return This->lpVtbl->SetPath(This,dwFlags,pszPath); 29530 } 29531 static FORCEINLINE HRESULT IKnownFolder_GetIDList(IKnownFolder* This,DWORD dwFlags,PIDLIST_ABSOLUTE *ppidl) { 29532 return This->lpVtbl->GetIDList(This,dwFlags,ppidl); 29533 } 29534 static FORCEINLINE HRESULT IKnownFolder_GetFolderType(IKnownFolder* This,FOLDERTYPEID *pftid) { 29535 return This->lpVtbl->GetFolderType(This,pftid); 29536 } 29537 static FORCEINLINE HRESULT IKnownFolder_GetRedirectionCapabilities(IKnownFolder* This,KF_REDIRECTION_CAPABILITIES *pCapabilities) { 29538 return This->lpVtbl->GetRedirectionCapabilities(This,pCapabilities); 29539 } 29540 static FORCEINLINE HRESULT IKnownFolder_GetFolderDefinition(IKnownFolder* This,KNOWNFOLDER_DEFINITION *pKFD) { 29541 return This->lpVtbl->GetFolderDefinition(This,pKFD); 29542 } 29543 #endif 29544 #endif 29545 29546 #endif 29547 29548 HRESULT STDMETHODCALLTYPE IKnownFolder_GetId_Proxy( 29549 IKnownFolder* This, 29550 KNOWNFOLDERID *pkfid); 29551 void __RPC_STUB IKnownFolder_GetId_Stub( 29552 IRpcStubBuffer* This, 29553 IRpcChannelBuffer* pRpcChannelBuffer, 29554 PRPC_MESSAGE pRpcMessage, 29555 DWORD* pdwStubPhase); 29556 HRESULT STDMETHODCALLTYPE IKnownFolder_GetCategory_Proxy( 29557 IKnownFolder* This, 29558 KF_CATEGORY *pCategory); 29559 void __RPC_STUB IKnownFolder_GetCategory_Stub( 29560 IRpcStubBuffer* This, 29561 IRpcChannelBuffer* pRpcChannelBuffer, 29562 PRPC_MESSAGE pRpcMessage, 29563 DWORD* pdwStubPhase); 29564 HRESULT STDMETHODCALLTYPE IKnownFolder_GetShellItem_Proxy( 29565 IKnownFolder* This, 29566 DWORD dwFlags, 29567 REFIID riid, 29568 void **ppv); 29569 void __RPC_STUB IKnownFolder_GetShellItem_Stub( 29570 IRpcStubBuffer* This, 29571 IRpcChannelBuffer* pRpcChannelBuffer, 29572 PRPC_MESSAGE pRpcMessage, 29573 DWORD* pdwStubPhase); 29574 HRESULT STDMETHODCALLTYPE IKnownFolder_GetPath_Proxy( 29575 IKnownFolder* This, 29576 DWORD dwFlags, 29577 LPWSTR *ppszPath); 29578 void __RPC_STUB IKnownFolder_GetPath_Stub( 29579 IRpcStubBuffer* This, 29580 IRpcChannelBuffer* pRpcChannelBuffer, 29581 PRPC_MESSAGE pRpcMessage, 29582 DWORD* pdwStubPhase); 29583 HRESULT STDMETHODCALLTYPE IKnownFolder_SetPath_Proxy( 29584 IKnownFolder* This, 29585 DWORD dwFlags, 29586 LPCWSTR pszPath); 29587 void __RPC_STUB IKnownFolder_SetPath_Stub( 29588 IRpcStubBuffer* This, 29589 IRpcChannelBuffer* pRpcChannelBuffer, 29590 PRPC_MESSAGE pRpcMessage, 29591 DWORD* pdwStubPhase); 29592 HRESULT STDMETHODCALLTYPE IKnownFolder_GetIDList_Proxy( 29593 IKnownFolder* This, 29594 DWORD dwFlags, 29595 PIDLIST_ABSOLUTE *ppidl); 29596 void __RPC_STUB IKnownFolder_GetIDList_Stub( 29597 IRpcStubBuffer* This, 29598 IRpcChannelBuffer* pRpcChannelBuffer, 29599 PRPC_MESSAGE pRpcMessage, 29600 DWORD* pdwStubPhase); 29601 HRESULT STDMETHODCALLTYPE IKnownFolder_GetFolderType_Proxy( 29602 IKnownFolder* This, 29603 FOLDERTYPEID *pftid); 29604 void __RPC_STUB IKnownFolder_GetFolderType_Stub( 29605 IRpcStubBuffer* This, 29606 IRpcChannelBuffer* pRpcChannelBuffer, 29607 PRPC_MESSAGE pRpcMessage, 29608 DWORD* pdwStubPhase); 29609 HRESULT STDMETHODCALLTYPE IKnownFolder_GetRedirectionCapabilities_Proxy( 29610 IKnownFolder* This, 29611 KF_REDIRECTION_CAPABILITIES *pCapabilities); 29612 void __RPC_STUB IKnownFolder_GetRedirectionCapabilities_Stub( 29613 IRpcStubBuffer* This, 29614 IRpcChannelBuffer* pRpcChannelBuffer, 29615 PRPC_MESSAGE pRpcMessage, 29616 DWORD* pdwStubPhase); 29617 HRESULT STDMETHODCALLTYPE IKnownFolder_GetFolderDefinition_Proxy( 29618 IKnownFolder* This, 29619 KNOWNFOLDER_DEFINITION *pKFD); 29620 void __RPC_STUB IKnownFolder_GetFolderDefinition_Stub( 29621 IRpcStubBuffer* This, 29622 IRpcChannelBuffer* pRpcChannelBuffer, 29623 PRPC_MESSAGE pRpcMessage, 29624 DWORD* pdwStubPhase); 29625 29626 #endif /* __IKnownFolder_INTERFACE_DEFINED__ */ 29627 29628 29629 /***************************************************************************** 29630 * IKnownFolderManager interface 29631 */ 29632 #ifndef __IKnownFolderManager_INTERFACE_DEFINED__ 29633 #define __IKnownFolderManager_INTERFACE_DEFINED__ 29634 29635 typedef enum FFFP_MODE { 29636 FFFP_EXACTMATCH = 0, 29637 FFFP_NEARESTPARENTMATCH = 1 29638 } FFFP_MODE; 29639 29640 DEFINE_GUID(IID_IKnownFolderManager, 0x8be2d872, 0x86aa, 0x4d47, 0xb7,0x76, 0x32,0xcc,0xa4,0x0c,0x70,0x18); 29641 #if defined(__cplusplus) && !defined(CINTERFACE) 29642 MIDL_INTERFACE("8be2d872-86aa-4d47-b776-32cca40c7018") 29643 IKnownFolderManager : public IUnknown 29644 { 29645 virtual HRESULT STDMETHODCALLTYPE FolderIdFromCsidl( 29646 int nCsidl, 29647 KNOWNFOLDERID *pfid) = 0; 29648 29649 virtual HRESULT STDMETHODCALLTYPE FolderIdToCsidl( 29650 REFKNOWNFOLDERID rfid, 29651 int *pnCsidl) = 0; 29652 29653 virtual HRESULT STDMETHODCALLTYPE GetFolderIds( 29654 KNOWNFOLDERID **ppKFId, 29655 UINT *pCount) = 0; 29656 29657 virtual HRESULT STDMETHODCALLTYPE GetFolder( 29658 REFKNOWNFOLDERID rfid, 29659 IKnownFolder **ppkf) = 0; 29660 29661 virtual HRESULT STDMETHODCALLTYPE GetFolderByName( 29662 LPCWSTR pszCanonicalName, 29663 IKnownFolder **ppkf) = 0; 29664 29665 virtual HRESULT STDMETHODCALLTYPE RegisterFolder( 29666 REFKNOWNFOLDERID rfid, 29667 const KNOWNFOLDER_DEFINITION *pKFD) = 0; 29668 29669 virtual HRESULT STDMETHODCALLTYPE UnregisterFolder( 29670 REFKNOWNFOLDERID rfid) = 0; 29671 29672 virtual HRESULT STDMETHODCALLTYPE FindFolderFromPath( 29673 LPCWSTR pszPath, 29674 FFFP_MODE mode, 29675 IKnownFolder **ppkf) = 0; 29676 29677 virtual HRESULT STDMETHODCALLTYPE FindFolderFromIDList( 29678 PCIDLIST_ABSOLUTE pidl, 29679 IKnownFolder **ppkf) = 0; 29680 29681 virtual HRESULT STDMETHODCALLTYPE Redirect( 29682 REFKNOWNFOLDERID rfid, 29683 HWND hwnd, 29684 KF_REDIRECT_FLAGS flags, 29685 LPCWSTR pszTargetPath, 29686 UINT cFolders, 29687 const KNOWNFOLDERID *pExclusion, 29688 LPWSTR *ppszError) = 0; 29689 29690 }; 29691 #ifdef __CRT_UUID_DECL 29692 __CRT_UUID_DECL(IKnownFolderManager, 0x8be2d872, 0x86aa, 0x4d47, 0xb7,0x76, 0x32,0xcc,0xa4,0x0c,0x70,0x18) 29693 #endif 29694 #else 29695 typedef struct IKnownFolderManagerVtbl { 29696 BEGIN_INTERFACE 29697 29698 /*** IUnknown methods ***/ 29699 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 29700 IKnownFolderManager* This, 29701 REFIID riid, 29702 void **ppvObject); 29703 29704 ULONG (STDMETHODCALLTYPE *AddRef)( 29705 IKnownFolderManager* This); 29706 29707 ULONG (STDMETHODCALLTYPE *Release)( 29708 IKnownFolderManager* This); 29709 29710 /*** IKnownFolderManager methods ***/ 29711 HRESULT (STDMETHODCALLTYPE *FolderIdFromCsidl)( 29712 IKnownFolderManager* This, 29713 int nCsidl, 29714 KNOWNFOLDERID *pfid); 29715 29716 HRESULT (STDMETHODCALLTYPE *FolderIdToCsidl)( 29717 IKnownFolderManager* This, 29718 REFKNOWNFOLDERID rfid, 29719 int *pnCsidl); 29720 29721 HRESULT (STDMETHODCALLTYPE *GetFolderIds)( 29722 IKnownFolderManager* This, 29723 KNOWNFOLDERID **ppKFId, 29724 UINT *pCount); 29725 29726 HRESULT (STDMETHODCALLTYPE *GetFolder)( 29727 IKnownFolderManager* This, 29728 REFKNOWNFOLDERID rfid, 29729 IKnownFolder **ppkf); 29730 29731 HRESULT (STDMETHODCALLTYPE *GetFolderByName)( 29732 IKnownFolderManager* This, 29733 LPCWSTR pszCanonicalName, 29734 IKnownFolder **ppkf); 29735 29736 HRESULT (STDMETHODCALLTYPE *RegisterFolder)( 29737 IKnownFolderManager* This, 29738 REFKNOWNFOLDERID rfid, 29739 const KNOWNFOLDER_DEFINITION *pKFD); 29740 29741 HRESULT (STDMETHODCALLTYPE *UnregisterFolder)( 29742 IKnownFolderManager* This, 29743 REFKNOWNFOLDERID rfid); 29744 29745 HRESULT (STDMETHODCALLTYPE *FindFolderFromPath)( 29746 IKnownFolderManager* This, 29747 LPCWSTR pszPath, 29748 FFFP_MODE mode, 29749 IKnownFolder **ppkf); 29750 29751 HRESULT (STDMETHODCALLTYPE *FindFolderFromIDList)( 29752 IKnownFolderManager* This, 29753 PCIDLIST_ABSOLUTE pidl, 29754 IKnownFolder **ppkf); 29755 29756 HRESULT (STDMETHODCALLTYPE *Redirect)( 29757 IKnownFolderManager* This, 29758 REFKNOWNFOLDERID rfid, 29759 HWND hwnd, 29760 KF_REDIRECT_FLAGS flags, 29761 LPCWSTR pszTargetPath, 29762 UINT cFolders, 29763 const KNOWNFOLDERID *pExclusion, 29764 LPWSTR *ppszError); 29765 29766 END_INTERFACE 29767 } IKnownFolderManagerVtbl; 29768 interface IKnownFolderManager { 29769 CONST_VTBL IKnownFolderManagerVtbl* lpVtbl; 29770 }; 29771 29772 #ifdef COBJMACROS 29773 #ifndef WIDL_C_INLINE_WRAPPERS 29774 /*** IUnknown methods ***/ 29775 #define IKnownFolderManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 29776 #define IKnownFolderManager_AddRef(This) (This)->lpVtbl->AddRef(This) 29777 #define IKnownFolderManager_Release(This) (This)->lpVtbl->Release(This) 29778 /*** IKnownFolderManager methods ***/ 29779 #define IKnownFolderManager_FolderIdFromCsidl(This,nCsidl,pfid) (This)->lpVtbl->FolderIdFromCsidl(This,nCsidl,pfid) 29780 #define IKnownFolderManager_FolderIdToCsidl(This,rfid,pnCsidl) (This)->lpVtbl->FolderIdToCsidl(This,rfid,pnCsidl) 29781 #define IKnownFolderManager_GetFolderIds(This,ppKFId,pCount) (This)->lpVtbl->GetFolderIds(This,ppKFId,pCount) 29782 #define IKnownFolderManager_GetFolder(This,rfid,ppkf) (This)->lpVtbl->GetFolder(This,rfid,ppkf) 29783 #define IKnownFolderManager_GetFolderByName(This,pszCanonicalName,ppkf) (This)->lpVtbl->GetFolderByName(This,pszCanonicalName,ppkf) 29784 #define IKnownFolderManager_RegisterFolder(This,rfid,pKFD) (This)->lpVtbl->RegisterFolder(This,rfid,pKFD) 29785 #define IKnownFolderManager_UnregisterFolder(This,rfid) (This)->lpVtbl->UnregisterFolder(This,rfid) 29786 #define IKnownFolderManager_FindFolderFromPath(This,pszPath,mode,ppkf) (This)->lpVtbl->FindFolderFromPath(This,pszPath,mode,ppkf) 29787 #define IKnownFolderManager_FindFolderFromIDList(This,pidl,ppkf) (This)->lpVtbl->FindFolderFromIDList(This,pidl,ppkf) 29788 #define IKnownFolderManager_Redirect(This,rfid,hwnd,flags,pszTargetPath,cFolders,pExclusion,ppszError) (This)->lpVtbl->Redirect(This,rfid,hwnd,flags,pszTargetPath,cFolders,pExclusion,ppszError) 29789 #else 29790 /*** IUnknown methods ***/ 29791 static FORCEINLINE HRESULT IKnownFolderManager_QueryInterface(IKnownFolderManager* This,REFIID riid,void **ppvObject) { 29792 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 29793 } 29794 static FORCEINLINE ULONG IKnownFolderManager_AddRef(IKnownFolderManager* This) { 29795 return This->lpVtbl->AddRef(This); 29796 } 29797 static FORCEINLINE ULONG IKnownFolderManager_Release(IKnownFolderManager* This) { 29798 return This->lpVtbl->Release(This); 29799 } 29800 /*** IKnownFolderManager methods ***/ 29801 static FORCEINLINE HRESULT IKnownFolderManager_FolderIdFromCsidl(IKnownFolderManager* This,int nCsidl,KNOWNFOLDERID *pfid) { 29802 return This->lpVtbl->FolderIdFromCsidl(This,nCsidl,pfid); 29803 } 29804 static FORCEINLINE HRESULT IKnownFolderManager_FolderIdToCsidl(IKnownFolderManager* This,REFKNOWNFOLDERID rfid,int *pnCsidl) { 29805 return This->lpVtbl->FolderIdToCsidl(This,rfid,pnCsidl); 29806 } 29807 static FORCEINLINE HRESULT IKnownFolderManager_GetFolderIds(IKnownFolderManager* This,KNOWNFOLDERID **ppKFId,UINT *pCount) { 29808 return This->lpVtbl->GetFolderIds(This,ppKFId,pCount); 29809 } 29810 static FORCEINLINE HRESULT IKnownFolderManager_GetFolder(IKnownFolderManager* This,REFKNOWNFOLDERID rfid,IKnownFolder **ppkf) { 29811 return This->lpVtbl->GetFolder(This,rfid,ppkf); 29812 } 29813 static FORCEINLINE HRESULT IKnownFolderManager_GetFolderByName(IKnownFolderManager* This,LPCWSTR pszCanonicalName,IKnownFolder **ppkf) { 29814 return This->lpVtbl->GetFolderByName(This,pszCanonicalName,ppkf); 29815 } 29816 static FORCEINLINE HRESULT IKnownFolderManager_RegisterFolder(IKnownFolderManager* This,REFKNOWNFOLDERID rfid,const KNOWNFOLDER_DEFINITION *pKFD) { 29817 return This->lpVtbl->RegisterFolder(This,rfid,pKFD); 29818 } 29819 static FORCEINLINE HRESULT IKnownFolderManager_UnregisterFolder(IKnownFolderManager* This,REFKNOWNFOLDERID rfid) { 29820 return This->lpVtbl->UnregisterFolder(This,rfid); 29821 } 29822 static FORCEINLINE HRESULT IKnownFolderManager_FindFolderFromPath(IKnownFolderManager* This,LPCWSTR pszPath,FFFP_MODE mode,IKnownFolder **ppkf) { 29823 return This->lpVtbl->FindFolderFromPath(This,pszPath,mode,ppkf); 29824 } 29825 static FORCEINLINE HRESULT IKnownFolderManager_FindFolderFromIDList(IKnownFolderManager* This,PCIDLIST_ABSOLUTE pidl,IKnownFolder **ppkf) { 29826 return This->lpVtbl->FindFolderFromIDList(This,pidl,ppkf); 29827 } 29828 static FORCEINLINE HRESULT IKnownFolderManager_Redirect(IKnownFolderManager* This,REFKNOWNFOLDERID rfid,HWND hwnd,KF_REDIRECT_FLAGS flags,LPCWSTR pszTargetPath,UINT cFolders,const KNOWNFOLDERID *pExclusion,LPWSTR *ppszError) { 29829 return This->lpVtbl->Redirect(This,rfid,hwnd,flags,pszTargetPath,cFolders,pExclusion,ppszError); 29830 } 29831 #endif 29832 #endif 29833 29834 #endif 29835 29836 HRESULT STDMETHODCALLTYPE IKnownFolderManager_FolderIdFromCsidl_Proxy( 29837 IKnownFolderManager* This, 29838 int nCsidl, 29839 KNOWNFOLDERID *pfid); 29840 void __RPC_STUB IKnownFolderManager_FolderIdFromCsidl_Stub( 29841 IRpcStubBuffer* This, 29842 IRpcChannelBuffer* pRpcChannelBuffer, 29843 PRPC_MESSAGE pRpcMessage, 29844 DWORD* pdwStubPhase); 29845 HRESULT STDMETHODCALLTYPE IKnownFolderManager_FolderIdToCsidl_Proxy( 29846 IKnownFolderManager* This, 29847 REFKNOWNFOLDERID rfid, 29848 int *pnCsidl); 29849 void __RPC_STUB IKnownFolderManager_FolderIdToCsidl_Stub( 29850 IRpcStubBuffer* This, 29851 IRpcChannelBuffer* pRpcChannelBuffer, 29852 PRPC_MESSAGE pRpcMessage, 29853 DWORD* pdwStubPhase); 29854 HRESULT STDMETHODCALLTYPE IKnownFolderManager_GetFolderIds_Proxy( 29855 IKnownFolderManager* This, 29856 KNOWNFOLDERID **ppKFId, 29857 UINT *pCount); 29858 void __RPC_STUB IKnownFolderManager_GetFolderIds_Stub( 29859 IRpcStubBuffer* This, 29860 IRpcChannelBuffer* pRpcChannelBuffer, 29861 PRPC_MESSAGE pRpcMessage, 29862 DWORD* pdwStubPhase); 29863 HRESULT STDMETHODCALLTYPE IKnownFolderManager_GetFolder_Proxy( 29864 IKnownFolderManager* This, 29865 REFKNOWNFOLDERID rfid, 29866 IKnownFolder **ppkf); 29867 void __RPC_STUB IKnownFolderManager_GetFolder_Stub( 29868 IRpcStubBuffer* This, 29869 IRpcChannelBuffer* pRpcChannelBuffer, 29870 PRPC_MESSAGE pRpcMessage, 29871 DWORD* pdwStubPhase); 29872 HRESULT STDMETHODCALLTYPE IKnownFolderManager_GetFolderByName_Proxy( 29873 IKnownFolderManager* This, 29874 LPCWSTR pszCanonicalName, 29875 IKnownFolder **ppkf); 29876 void __RPC_STUB IKnownFolderManager_GetFolderByName_Stub( 29877 IRpcStubBuffer* This, 29878 IRpcChannelBuffer* pRpcChannelBuffer, 29879 PRPC_MESSAGE pRpcMessage, 29880 DWORD* pdwStubPhase); 29881 HRESULT STDMETHODCALLTYPE IKnownFolderManager_RegisterFolder_Proxy( 29882 IKnownFolderManager* This, 29883 REFKNOWNFOLDERID rfid, 29884 const KNOWNFOLDER_DEFINITION *pKFD); 29885 void __RPC_STUB IKnownFolderManager_RegisterFolder_Stub( 29886 IRpcStubBuffer* This, 29887 IRpcChannelBuffer* pRpcChannelBuffer, 29888 PRPC_MESSAGE pRpcMessage, 29889 DWORD* pdwStubPhase); 29890 HRESULT STDMETHODCALLTYPE IKnownFolderManager_UnregisterFolder_Proxy( 29891 IKnownFolderManager* This, 29892 REFKNOWNFOLDERID rfid); 29893 void __RPC_STUB IKnownFolderManager_UnregisterFolder_Stub( 29894 IRpcStubBuffer* This, 29895 IRpcChannelBuffer* pRpcChannelBuffer, 29896 PRPC_MESSAGE pRpcMessage, 29897 DWORD* pdwStubPhase); 29898 HRESULT STDMETHODCALLTYPE IKnownFolderManager_FindFolderFromPath_Proxy( 29899 IKnownFolderManager* This, 29900 LPCWSTR pszPath, 29901 FFFP_MODE mode, 29902 IKnownFolder **ppkf); 29903 void __RPC_STUB IKnownFolderManager_FindFolderFromPath_Stub( 29904 IRpcStubBuffer* This, 29905 IRpcChannelBuffer* pRpcChannelBuffer, 29906 PRPC_MESSAGE pRpcMessage, 29907 DWORD* pdwStubPhase); 29908 HRESULT STDMETHODCALLTYPE IKnownFolderManager_FindFolderFromIDList_Proxy( 29909 IKnownFolderManager* This, 29910 PCIDLIST_ABSOLUTE pidl, 29911 IKnownFolder **ppkf); 29912 void __RPC_STUB IKnownFolderManager_FindFolderFromIDList_Stub( 29913 IRpcStubBuffer* This, 29914 IRpcChannelBuffer* pRpcChannelBuffer, 29915 PRPC_MESSAGE pRpcMessage, 29916 DWORD* pdwStubPhase); 29917 HRESULT STDMETHODCALLTYPE IKnownFolderManager_RemoteRedirect_Proxy( 29918 IKnownFolderManager* This, 29919 REFKNOWNFOLDERID rfid, 29920 HWND hwnd, 29921 KF_REDIRECT_FLAGS flags, 29922 LPCWSTR pszTargetPath, 29923 UINT cFolders, 29924 const GUID *pExclusion, 29925 LPWSTR *ppszError); 29926 void __RPC_STUB IKnownFolderManager_RemoteRedirect_Stub( 29927 IRpcStubBuffer* This, 29928 IRpcChannelBuffer* pRpcChannelBuffer, 29929 PRPC_MESSAGE pRpcMessage, 29930 DWORD* pdwStubPhase); 29931 HRESULT CALLBACK IKnownFolderManager_Redirect_Proxy( 29932 IKnownFolderManager* This, 29933 REFKNOWNFOLDERID rfid, 29934 HWND hwnd, 29935 KF_REDIRECT_FLAGS flags, 29936 LPCWSTR pszTargetPath, 29937 UINT cFolders, 29938 const KNOWNFOLDERID *pExclusion, 29939 LPWSTR *ppszError); 29940 HRESULT __RPC_STUB IKnownFolderManager_Redirect_Stub( 29941 IKnownFolderManager* This, 29942 REFKNOWNFOLDERID rfid, 29943 HWND hwnd, 29944 KF_REDIRECT_FLAGS flags, 29945 LPCWSTR pszTargetPath, 29946 UINT cFolders, 29947 const GUID *pExclusion, 29948 LPWSTR *ppszError); 29949 29950 #endif /* __IKnownFolderManager_INTERFACE_DEFINED__ */ 29951 29952 FreeKnownFolderDefinitionFields(KNOWNFOLDER_DEFINITION * pKFD)29953 __forceinline void FreeKnownFolderDefinitionFields(KNOWNFOLDER_DEFINITION *pKFD) { 29954 CoTaskMemFree(pKFD->pszName); 29955 CoTaskMemFree(pKFD->pszDescription); 29956 CoTaskMemFree(pKFD->pszRelativePath); 29957 CoTaskMemFree(pKFD->pszParsingName); 29958 CoTaskMemFree(pKFD->pszTooltip); 29959 CoTaskMemFree(pKFD->pszLocalizedName); 29960 CoTaskMemFree(pKFD->pszIcon); 29961 CoTaskMemFree(pKFD->pszSecurity); 29962 } 29963 29964 typedef enum SHARE_ROLE { 29965 SHARE_ROLE_INVALID = -1, 29966 SHARE_ROLE_READER = 0, 29967 SHARE_ROLE_CONTRIBUTOR = 1, 29968 SHARE_ROLE_CO_OWNER = 2, 29969 SHARE_ROLE_OWNER = 3, 29970 SHARE_ROLE_CUSTOM = 4, 29971 SHARE_ROLE_MIXED = 5 29972 } SHARE_ROLE; 29973 29974 typedef enum DEF_SHARE_ID { 29975 DEFSHAREID_USERS = 1, 29976 DEFSHAREID_PUBLIC = 2 29977 } DEF_SHARE_ID; 29978 29979 /***************************************************************************** 29980 * ISharingConfigurationManager interface 29981 */ 29982 #ifndef __ISharingConfigurationManager_INTERFACE_DEFINED__ 29983 #define __ISharingConfigurationManager_INTERFACE_DEFINED__ 29984 29985 DEFINE_GUID(IID_ISharingConfigurationManager, 0xb4cd448a, 0x9c86, 0x4466, 0x92,0x01, 0x2e,0x62,0x10,0x5b,0x87,0xae); 29986 #if defined(__cplusplus) && !defined(CINTERFACE) 29987 MIDL_INTERFACE("b4cd448a-9c86-4466-9201-2e62105b87ae") 29988 ISharingConfigurationManager : public IUnknown 29989 { 29990 virtual HRESULT STDMETHODCALLTYPE CreateShare( 29991 DEF_SHARE_ID dsid, 29992 SHARE_ROLE role) = 0; 29993 29994 virtual HRESULT STDMETHODCALLTYPE DeleteShare( 29995 DEF_SHARE_ID dsid) = 0; 29996 29997 virtual HRESULT STDMETHODCALLTYPE ShareExists( 29998 DEF_SHARE_ID dsid) = 0; 29999 30000 virtual HRESULT STDMETHODCALLTYPE GetSharePermissions( 30001 DEF_SHARE_ID dsid, 30002 SHARE_ROLE *pRole) = 0; 30003 30004 virtual HRESULT STDMETHODCALLTYPE SharePrinters( 30005 ) = 0; 30006 30007 virtual HRESULT STDMETHODCALLTYPE StopSharingPrinters( 30008 ) = 0; 30009 30010 virtual HRESULT STDMETHODCALLTYPE ArePrintersShared( 30011 ) = 0; 30012 30013 }; 30014 #ifdef __CRT_UUID_DECL 30015 __CRT_UUID_DECL(ISharingConfigurationManager, 0xb4cd448a, 0x9c86, 0x4466, 0x92,0x01, 0x2e,0x62,0x10,0x5b,0x87,0xae) 30016 #endif 30017 #else 30018 typedef struct ISharingConfigurationManagerVtbl { 30019 BEGIN_INTERFACE 30020 30021 /*** IUnknown methods ***/ 30022 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 30023 ISharingConfigurationManager* This, 30024 REFIID riid, 30025 void **ppvObject); 30026 30027 ULONG (STDMETHODCALLTYPE *AddRef)( 30028 ISharingConfigurationManager* This); 30029 30030 ULONG (STDMETHODCALLTYPE *Release)( 30031 ISharingConfigurationManager* This); 30032 30033 /*** ISharingConfigurationManager methods ***/ 30034 HRESULT (STDMETHODCALLTYPE *CreateShare)( 30035 ISharingConfigurationManager* This, 30036 DEF_SHARE_ID dsid, 30037 SHARE_ROLE role); 30038 30039 HRESULT (STDMETHODCALLTYPE *DeleteShare)( 30040 ISharingConfigurationManager* This, 30041 DEF_SHARE_ID dsid); 30042 30043 HRESULT (STDMETHODCALLTYPE *ShareExists)( 30044 ISharingConfigurationManager* This, 30045 DEF_SHARE_ID dsid); 30046 30047 HRESULT (STDMETHODCALLTYPE *GetSharePermissions)( 30048 ISharingConfigurationManager* This, 30049 DEF_SHARE_ID dsid, 30050 SHARE_ROLE *pRole); 30051 30052 HRESULT (STDMETHODCALLTYPE *SharePrinters)( 30053 ISharingConfigurationManager* This); 30054 30055 HRESULT (STDMETHODCALLTYPE *StopSharingPrinters)( 30056 ISharingConfigurationManager* This); 30057 30058 HRESULT (STDMETHODCALLTYPE *ArePrintersShared)( 30059 ISharingConfigurationManager* This); 30060 30061 END_INTERFACE 30062 } ISharingConfigurationManagerVtbl; 30063 interface ISharingConfigurationManager { 30064 CONST_VTBL ISharingConfigurationManagerVtbl* lpVtbl; 30065 }; 30066 30067 #ifdef COBJMACROS 30068 #ifndef WIDL_C_INLINE_WRAPPERS 30069 /*** IUnknown methods ***/ 30070 #define ISharingConfigurationManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 30071 #define ISharingConfigurationManager_AddRef(This) (This)->lpVtbl->AddRef(This) 30072 #define ISharingConfigurationManager_Release(This) (This)->lpVtbl->Release(This) 30073 /*** ISharingConfigurationManager methods ***/ 30074 #define ISharingConfigurationManager_CreateShare(This,dsid,role) (This)->lpVtbl->CreateShare(This,dsid,role) 30075 #define ISharingConfigurationManager_DeleteShare(This,dsid) (This)->lpVtbl->DeleteShare(This,dsid) 30076 #define ISharingConfigurationManager_ShareExists(This,dsid) (This)->lpVtbl->ShareExists(This,dsid) 30077 #define ISharingConfigurationManager_GetSharePermissions(This,dsid,pRole) (This)->lpVtbl->GetSharePermissions(This,dsid,pRole) 30078 #define ISharingConfigurationManager_SharePrinters(This) (This)->lpVtbl->SharePrinters(This) 30079 #define ISharingConfigurationManager_StopSharingPrinters(This) (This)->lpVtbl->StopSharingPrinters(This) 30080 #define ISharingConfigurationManager_ArePrintersShared(This) (This)->lpVtbl->ArePrintersShared(This) 30081 #else 30082 /*** IUnknown methods ***/ 30083 static FORCEINLINE HRESULT ISharingConfigurationManager_QueryInterface(ISharingConfigurationManager* This,REFIID riid,void **ppvObject) { 30084 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 30085 } 30086 static FORCEINLINE ULONG ISharingConfigurationManager_AddRef(ISharingConfigurationManager* This) { 30087 return This->lpVtbl->AddRef(This); 30088 } 30089 static FORCEINLINE ULONG ISharingConfigurationManager_Release(ISharingConfigurationManager* This) { 30090 return This->lpVtbl->Release(This); 30091 } 30092 /*** ISharingConfigurationManager methods ***/ 30093 static FORCEINLINE HRESULT ISharingConfigurationManager_CreateShare(ISharingConfigurationManager* This,DEF_SHARE_ID dsid,SHARE_ROLE role) { 30094 return This->lpVtbl->CreateShare(This,dsid,role); 30095 } 30096 static FORCEINLINE HRESULT ISharingConfigurationManager_DeleteShare(ISharingConfigurationManager* This,DEF_SHARE_ID dsid) { 30097 return This->lpVtbl->DeleteShare(This,dsid); 30098 } 30099 static FORCEINLINE HRESULT ISharingConfigurationManager_ShareExists(ISharingConfigurationManager* This,DEF_SHARE_ID dsid) { 30100 return This->lpVtbl->ShareExists(This,dsid); 30101 } 30102 static FORCEINLINE HRESULT ISharingConfigurationManager_GetSharePermissions(ISharingConfigurationManager* This,DEF_SHARE_ID dsid,SHARE_ROLE *pRole) { 30103 return This->lpVtbl->GetSharePermissions(This,dsid,pRole); 30104 } 30105 static FORCEINLINE HRESULT ISharingConfigurationManager_SharePrinters(ISharingConfigurationManager* This) { 30106 return This->lpVtbl->SharePrinters(This); 30107 } 30108 static FORCEINLINE HRESULT ISharingConfigurationManager_StopSharingPrinters(ISharingConfigurationManager* This) { 30109 return This->lpVtbl->StopSharingPrinters(This); 30110 } 30111 static FORCEINLINE HRESULT ISharingConfigurationManager_ArePrintersShared(ISharingConfigurationManager* This) { 30112 return This->lpVtbl->ArePrintersShared(This); 30113 } 30114 #endif 30115 #endif 30116 30117 #endif 30118 30119 HRESULT STDMETHODCALLTYPE ISharingConfigurationManager_CreateShare_Proxy( 30120 ISharingConfigurationManager* This, 30121 DEF_SHARE_ID dsid, 30122 SHARE_ROLE role); 30123 void __RPC_STUB ISharingConfigurationManager_CreateShare_Stub( 30124 IRpcStubBuffer* This, 30125 IRpcChannelBuffer* pRpcChannelBuffer, 30126 PRPC_MESSAGE pRpcMessage, 30127 DWORD* pdwStubPhase); 30128 HRESULT STDMETHODCALLTYPE ISharingConfigurationManager_DeleteShare_Proxy( 30129 ISharingConfigurationManager* This, 30130 DEF_SHARE_ID dsid); 30131 void __RPC_STUB ISharingConfigurationManager_DeleteShare_Stub( 30132 IRpcStubBuffer* This, 30133 IRpcChannelBuffer* pRpcChannelBuffer, 30134 PRPC_MESSAGE pRpcMessage, 30135 DWORD* pdwStubPhase); 30136 HRESULT STDMETHODCALLTYPE ISharingConfigurationManager_ShareExists_Proxy( 30137 ISharingConfigurationManager* This, 30138 DEF_SHARE_ID dsid); 30139 void __RPC_STUB ISharingConfigurationManager_ShareExists_Stub( 30140 IRpcStubBuffer* This, 30141 IRpcChannelBuffer* pRpcChannelBuffer, 30142 PRPC_MESSAGE pRpcMessage, 30143 DWORD* pdwStubPhase); 30144 HRESULT STDMETHODCALLTYPE ISharingConfigurationManager_GetSharePermissions_Proxy( 30145 ISharingConfigurationManager* This, 30146 DEF_SHARE_ID dsid, 30147 SHARE_ROLE *pRole); 30148 void __RPC_STUB ISharingConfigurationManager_GetSharePermissions_Stub( 30149 IRpcStubBuffer* This, 30150 IRpcChannelBuffer* pRpcChannelBuffer, 30151 PRPC_MESSAGE pRpcMessage, 30152 DWORD* pdwStubPhase); 30153 HRESULT STDMETHODCALLTYPE ISharingConfigurationManager_SharePrinters_Proxy( 30154 ISharingConfigurationManager* This); 30155 void __RPC_STUB ISharingConfigurationManager_SharePrinters_Stub( 30156 IRpcStubBuffer* This, 30157 IRpcChannelBuffer* pRpcChannelBuffer, 30158 PRPC_MESSAGE pRpcMessage, 30159 DWORD* pdwStubPhase); 30160 HRESULT STDMETHODCALLTYPE ISharingConfigurationManager_StopSharingPrinters_Proxy( 30161 ISharingConfigurationManager* This); 30162 void __RPC_STUB ISharingConfigurationManager_StopSharingPrinters_Stub( 30163 IRpcStubBuffer* This, 30164 IRpcChannelBuffer* pRpcChannelBuffer, 30165 PRPC_MESSAGE pRpcMessage, 30166 DWORD* pdwStubPhase); 30167 HRESULT STDMETHODCALLTYPE ISharingConfigurationManager_ArePrintersShared_Proxy( 30168 ISharingConfigurationManager* This); 30169 void __RPC_STUB ISharingConfigurationManager_ArePrintersShared_Stub( 30170 IRpcStubBuffer* This, 30171 IRpcChannelBuffer* pRpcChannelBuffer, 30172 PRPC_MESSAGE pRpcMessage, 30173 DWORD* pdwStubPhase); 30174 30175 #endif /* __ISharingConfigurationManager_INTERFACE_DEFINED__ */ 30176 30177 #endif 30178 30179 /***************************************************************************** 30180 * IPreviousVersionsInfo interface 30181 */ 30182 #ifndef __IPreviousVersionsInfo_INTERFACE_DEFINED__ 30183 #define __IPreviousVersionsInfo_INTERFACE_DEFINED__ 30184 30185 DEFINE_GUID(IID_IPreviousVersionsInfo, 0x76e54780, 0xad74, 0x48e3, 0xa6,0x95, 0x3b,0xa9,0xa0,0xaf,0xf1,0x0d); 30186 #if defined(__cplusplus) && !defined(CINTERFACE) 30187 MIDL_INTERFACE("76e54780-ad74-48e3-a695-3ba9a0aff10d") 30188 IPreviousVersionsInfo : public IUnknown 30189 { 30190 virtual HRESULT STDMETHODCALLTYPE AreSnapshotsAvailable( 30191 LPCWSTR pszPath, 30192 WINBOOL fOkToBeSlow, 30193 WINBOOL *pfAvailable) = 0; 30194 30195 }; 30196 #ifdef __CRT_UUID_DECL 30197 __CRT_UUID_DECL(IPreviousVersionsInfo, 0x76e54780, 0xad74, 0x48e3, 0xa6,0x95, 0x3b,0xa9,0xa0,0xaf,0xf1,0x0d) 30198 #endif 30199 #else 30200 typedef struct IPreviousVersionsInfoVtbl { 30201 BEGIN_INTERFACE 30202 30203 /*** IUnknown methods ***/ 30204 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 30205 IPreviousVersionsInfo* This, 30206 REFIID riid, 30207 void **ppvObject); 30208 30209 ULONG (STDMETHODCALLTYPE *AddRef)( 30210 IPreviousVersionsInfo* This); 30211 30212 ULONG (STDMETHODCALLTYPE *Release)( 30213 IPreviousVersionsInfo* This); 30214 30215 /*** IPreviousVersionsInfo methods ***/ 30216 HRESULT (STDMETHODCALLTYPE *AreSnapshotsAvailable)( 30217 IPreviousVersionsInfo* This, 30218 LPCWSTR pszPath, 30219 WINBOOL fOkToBeSlow, 30220 WINBOOL *pfAvailable); 30221 30222 END_INTERFACE 30223 } IPreviousVersionsInfoVtbl; 30224 interface IPreviousVersionsInfo { 30225 CONST_VTBL IPreviousVersionsInfoVtbl* lpVtbl; 30226 }; 30227 30228 #ifdef COBJMACROS 30229 #ifndef WIDL_C_INLINE_WRAPPERS 30230 /*** IUnknown methods ***/ 30231 #define IPreviousVersionsInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 30232 #define IPreviousVersionsInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 30233 #define IPreviousVersionsInfo_Release(This) (This)->lpVtbl->Release(This) 30234 /*** IPreviousVersionsInfo methods ***/ 30235 #define IPreviousVersionsInfo_AreSnapshotsAvailable(This,pszPath,fOkToBeSlow,pfAvailable) (This)->lpVtbl->AreSnapshotsAvailable(This,pszPath,fOkToBeSlow,pfAvailable) 30236 #else 30237 /*** IUnknown methods ***/ 30238 static FORCEINLINE HRESULT IPreviousVersionsInfo_QueryInterface(IPreviousVersionsInfo* This,REFIID riid,void **ppvObject) { 30239 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 30240 } 30241 static FORCEINLINE ULONG IPreviousVersionsInfo_AddRef(IPreviousVersionsInfo* This) { 30242 return This->lpVtbl->AddRef(This); 30243 } 30244 static FORCEINLINE ULONG IPreviousVersionsInfo_Release(IPreviousVersionsInfo* This) { 30245 return This->lpVtbl->Release(This); 30246 } 30247 /*** IPreviousVersionsInfo methods ***/ 30248 static FORCEINLINE HRESULT IPreviousVersionsInfo_AreSnapshotsAvailable(IPreviousVersionsInfo* This,LPCWSTR pszPath,WINBOOL fOkToBeSlow,WINBOOL *pfAvailable) { 30249 return This->lpVtbl->AreSnapshotsAvailable(This,pszPath,fOkToBeSlow,pfAvailable); 30250 } 30251 #endif 30252 #endif 30253 30254 #endif 30255 30256 HRESULT STDMETHODCALLTYPE IPreviousVersionsInfo_AreSnapshotsAvailable_Proxy( 30257 IPreviousVersionsInfo* This, 30258 LPCWSTR pszPath, 30259 WINBOOL fOkToBeSlow, 30260 WINBOOL *pfAvailable); 30261 void __RPC_STUB IPreviousVersionsInfo_AreSnapshotsAvailable_Stub( 30262 IRpcStubBuffer* This, 30263 IRpcChannelBuffer* pRpcChannelBuffer, 30264 PRPC_MESSAGE pRpcMessage, 30265 DWORD* pdwStubPhase); 30266 30267 #endif /* __IPreviousVersionsInfo_INTERFACE_DEFINED__ */ 30268 30269 30270 #if NTDDI_VERSION >= NTDDI_VISTA 30271 /***************************************************************************** 30272 * IRelatedItem interface 30273 */ 30274 #ifndef __IRelatedItem_INTERFACE_DEFINED__ 30275 #define __IRelatedItem_INTERFACE_DEFINED__ 30276 30277 DEFINE_GUID(IID_IRelatedItem, 0xa73ce67a, 0x8ab1, 0x44f1, 0x8d,0x43, 0xd2,0xfc,0xbf,0x6b,0x1c,0xd0); 30278 #if defined(__cplusplus) && !defined(CINTERFACE) 30279 MIDL_INTERFACE("a73ce67a-8ab1-44f1-8d43-d2fcbf6b1cd0") 30280 IRelatedItem : public IUnknown 30281 { 30282 virtual HRESULT STDMETHODCALLTYPE GetItemIDList( 30283 PIDLIST_ABSOLUTE *ppidl) = 0; 30284 30285 virtual HRESULT STDMETHODCALLTYPE GetItem( 30286 IShellItem **ppsi) = 0; 30287 30288 }; 30289 #ifdef __CRT_UUID_DECL 30290 __CRT_UUID_DECL(IRelatedItem, 0xa73ce67a, 0x8ab1, 0x44f1, 0x8d,0x43, 0xd2,0xfc,0xbf,0x6b,0x1c,0xd0) 30291 #endif 30292 #else 30293 typedef struct IRelatedItemVtbl { 30294 BEGIN_INTERFACE 30295 30296 /*** IUnknown methods ***/ 30297 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 30298 IRelatedItem* This, 30299 REFIID riid, 30300 void **ppvObject); 30301 30302 ULONG (STDMETHODCALLTYPE *AddRef)( 30303 IRelatedItem* This); 30304 30305 ULONG (STDMETHODCALLTYPE *Release)( 30306 IRelatedItem* This); 30307 30308 /*** IRelatedItem methods ***/ 30309 HRESULT (STDMETHODCALLTYPE *GetItemIDList)( 30310 IRelatedItem* This, 30311 PIDLIST_ABSOLUTE *ppidl); 30312 30313 HRESULT (STDMETHODCALLTYPE *GetItem)( 30314 IRelatedItem* This, 30315 IShellItem **ppsi); 30316 30317 END_INTERFACE 30318 } IRelatedItemVtbl; 30319 interface IRelatedItem { 30320 CONST_VTBL IRelatedItemVtbl* lpVtbl; 30321 }; 30322 30323 #ifdef COBJMACROS 30324 #ifndef WIDL_C_INLINE_WRAPPERS 30325 /*** IUnknown methods ***/ 30326 #define IRelatedItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 30327 #define IRelatedItem_AddRef(This) (This)->lpVtbl->AddRef(This) 30328 #define IRelatedItem_Release(This) (This)->lpVtbl->Release(This) 30329 /*** IRelatedItem methods ***/ 30330 #define IRelatedItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) 30331 #define IRelatedItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) 30332 #else 30333 /*** IUnknown methods ***/ 30334 static FORCEINLINE HRESULT IRelatedItem_QueryInterface(IRelatedItem* This,REFIID riid,void **ppvObject) { 30335 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 30336 } 30337 static FORCEINLINE ULONG IRelatedItem_AddRef(IRelatedItem* This) { 30338 return This->lpVtbl->AddRef(This); 30339 } 30340 static FORCEINLINE ULONG IRelatedItem_Release(IRelatedItem* This) { 30341 return This->lpVtbl->Release(This); 30342 } 30343 /*** IRelatedItem methods ***/ 30344 static FORCEINLINE HRESULT IRelatedItem_GetItemIDList(IRelatedItem* This,PIDLIST_ABSOLUTE *ppidl) { 30345 return This->lpVtbl->GetItemIDList(This,ppidl); 30346 } 30347 static FORCEINLINE HRESULT IRelatedItem_GetItem(IRelatedItem* This,IShellItem **ppsi) { 30348 return This->lpVtbl->GetItem(This,ppsi); 30349 } 30350 #endif 30351 #endif 30352 30353 #endif 30354 30355 HRESULT STDMETHODCALLTYPE IRelatedItem_GetItemIDList_Proxy( 30356 IRelatedItem* This, 30357 PIDLIST_ABSOLUTE *ppidl); 30358 void __RPC_STUB IRelatedItem_GetItemIDList_Stub( 30359 IRpcStubBuffer* This, 30360 IRpcChannelBuffer* pRpcChannelBuffer, 30361 PRPC_MESSAGE pRpcMessage, 30362 DWORD* pdwStubPhase); 30363 HRESULT STDMETHODCALLTYPE IRelatedItem_GetItem_Proxy( 30364 IRelatedItem* This, 30365 IShellItem **ppsi); 30366 void __RPC_STUB IRelatedItem_GetItem_Stub( 30367 IRpcStubBuffer* This, 30368 IRpcChannelBuffer* pRpcChannelBuffer, 30369 PRPC_MESSAGE pRpcMessage, 30370 DWORD* pdwStubPhase); 30371 30372 #endif /* __IRelatedItem_INTERFACE_DEFINED__ */ 30373 30374 30375 /***************************************************************************** 30376 * IIdentityName interface 30377 */ 30378 #ifndef __IIdentityName_INTERFACE_DEFINED__ 30379 #define __IIdentityName_INTERFACE_DEFINED__ 30380 30381 DEFINE_GUID(IID_IIdentityName, 0x7d903fca, 0xd6f9, 0x4810, 0x83,0x32, 0x94,0x6c,0x01,0x77,0xe2,0x47); 30382 #if defined(__cplusplus) && !defined(CINTERFACE) 30383 MIDL_INTERFACE("7d903fca-d6f9-4810-8332-946c0177e247") 30384 IIdentityName : public IRelatedItem 30385 { 30386 }; 30387 #ifdef __CRT_UUID_DECL 30388 __CRT_UUID_DECL(IIdentityName, 0x7d903fca, 0xd6f9, 0x4810, 0x83,0x32, 0x94,0x6c,0x01,0x77,0xe2,0x47) 30389 #endif 30390 #else 30391 typedef struct IIdentityNameVtbl { 30392 BEGIN_INTERFACE 30393 30394 /*** IUnknown methods ***/ 30395 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 30396 IIdentityName* This, 30397 REFIID riid, 30398 void **ppvObject); 30399 30400 ULONG (STDMETHODCALLTYPE *AddRef)( 30401 IIdentityName* This); 30402 30403 ULONG (STDMETHODCALLTYPE *Release)( 30404 IIdentityName* This); 30405 30406 /*** IRelatedItem methods ***/ 30407 HRESULT (STDMETHODCALLTYPE *GetItemIDList)( 30408 IIdentityName* This, 30409 PIDLIST_ABSOLUTE *ppidl); 30410 30411 HRESULT (STDMETHODCALLTYPE *GetItem)( 30412 IIdentityName* This, 30413 IShellItem **ppsi); 30414 30415 END_INTERFACE 30416 } IIdentityNameVtbl; 30417 interface IIdentityName { 30418 CONST_VTBL IIdentityNameVtbl* lpVtbl; 30419 }; 30420 30421 #ifdef COBJMACROS 30422 #ifndef WIDL_C_INLINE_WRAPPERS 30423 /*** IUnknown methods ***/ 30424 #define IIdentityName_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 30425 #define IIdentityName_AddRef(This) (This)->lpVtbl->AddRef(This) 30426 #define IIdentityName_Release(This) (This)->lpVtbl->Release(This) 30427 /*** IRelatedItem methods ***/ 30428 #define IIdentityName_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) 30429 #define IIdentityName_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) 30430 #else 30431 /*** IUnknown methods ***/ 30432 static FORCEINLINE HRESULT IIdentityName_QueryInterface(IIdentityName* This,REFIID riid,void **ppvObject) { 30433 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 30434 } 30435 static FORCEINLINE ULONG IIdentityName_AddRef(IIdentityName* This) { 30436 return This->lpVtbl->AddRef(This); 30437 } 30438 static FORCEINLINE ULONG IIdentityName_Release(IIdentityName* This) { 30439 return This->lpVtbl->Release(This); 30440 } 30441 /*** IRelatedItem methods ***/ 30442 static FORCEINLINE HRESULT IIdentityName_GetItemIDList(IIdentityName* This,PIDLIST_ABSOLUTE *ppidl) { 30443 return This->lpVtbl->GetItemIDList(This,ppidl); 30444 } 30445 static FORCEINLINE HRESULT IIdentityName_GetItem(IIdentityName* This,IShellItem **ppsi) { 30446 return This->lpVtbl->GetItem(This,ppsi); 30447 } 30448 #endif 30449 #endif 30450 30451 #endif 30452 30453 30454 #endif /* __IIdentityName_INTERFACE_DEFINED__ */ 30455 30456 30457 /***************************************************************************** 30458 * IDelegateItem interface 30459 */ 30460 #ifndef __IDelegateItem_INTERFACE_DEFINED__ 30461 #define __IDelegateItem_INTERFACE_DEFINED__ 30462 30463 DEFINE_GUID(IID_IDelegateItem, 0x3c5a1c94, 0xc951, 0x4cb7, 0xbb,0x6d, 0x3b,0x93,0xf3,0x0c,0xce,0x93); 30464 #if defined(__cplusplus) && !defined(CINTERFACE) 30465 MIDL_INTERFACE("3c5a1c94-c951-4cb7-bb6d-3b93f30cce93") 30466 IDelegateItem : public IRelatedItem 30467 { 30468 }; 30469 #ifdef __CRT_UUID_DECL 30470 __CRT_UUID_DECL(IDelegateItem, 0x3c5a1c94, 0xc951, 0x4cb7, 0xbb,0x6d, 0x3b,0x93,0xf3,0x0c,0xce,0x93) 30471 #endif 30472 #else 30473 typedef struct IDelegateItemVtbl { 30474 BEGIN_INTERFACE 30475 30476 /*** IUnknown methods ***/ 30477 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 30478 IDelegateItem* This, 30479 REFIID riid, 30480 void **ppvObject); 30481 30482 ULONG (STDMETHODCALLTYPE *AddRef)( 30483 IDelegateItem* This); 30484 30485 ULONG (STDMETHODCALLTYPE *Release)( 30486 IDelegateItem* This); 30487 30488 /*** IRelatedItem methods ***/ 30489 HRESULT (STDMETHODCALLTYPE *GetItemIDList)( 30490 IDelegateItem* This, 30491 PIDLIST_ABSOLUTE *ppidl); 30492 30493 HRESULT (STDMETHODCALLTYPE *GetItem)( 30494 IDelegateItem* This, 30495 IShellItem **ppsi); 30496 30497 END_INTERFACE 30498 } IDelegateItemVtbl; 30499 interface IDelegateItem { 30500 CONST_VTBL IDelegateItemVtbl* lpVtbl; 30501 }; 30502 30503 #ifdef COBJMACROS 30504 #ifndef WIDL_C_INLINE_WRAPPERS 30505 /*** IUnknown methods ***/ 30506 #define IDelegateItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 30507 #define IDelegateItem_AddRef(This) (This)->lpVtbl->AddRef(This) 30508 #define IDelegateItem_Release(This) (This)->lpVtbl->Release(This) 30509 /*** IRelatedItem methods ***/ 30510 #define IDelegateItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) 30511 #define IDelegateItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) 30512 #else 30513 /*** IUnknown methods ***/ 30514 static FORCEINLINE HRESULT IDelegateItem_QueryInterface(IDelegateItem* This,REFIID riid,void **ppvObject) { 30515 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 30516 } 30517 static FORCEINLINE ULONG IDelegateItem_AddRef(IDelegateItem* This) { 30518 return This->lpVtbl->AddRef(This); 30519 } 30520 static FORCEINLINE ULONG IDelegateItem_Release(IDelegateItem* This) { 30521 return This->lpVtbl->Release(This); 30522 } 30523 /*** IRelatedItem methods ***/ 30524 static FORCEINLINE HRESULT IDelegateItem_GetItemIDList(IDelegateItem* This,PIDLIST_ABSOLUTE *ppidl) { 30525 return This->lpVtbl->GetItemIDList(This,ppidl); 30526 } 30527 static FORCEINLINE HRESULT IDelegateItem_GetItem(IDelegateItem* This,IShellItem **ppsi) { 30528 return This->lpVtbl->GetItem(This,ppsi); 30529 } 30530 #endif 30531 #endif 30532 30533 #endif 30534 30535 30536 #endif /* __IDelegateItem_INTERFACE_DEFINED__ */ 30537 30538 30539 /***************************************************************************** 30540 * ICurrentItem interface 30541 */ 30542 #ifndef __ICurrentItem_INTERFACE_DEFINED__ 30543 #define __ICurrentItem_INTERFACE_DEFINED__ 30544 30545 DEFINE_GUID(IID_ICurrentItem, 0x240a7174, 0xd653, 0x4a1d, 0xa6,0xd3, 0xd4,0x94,0x3c,0xfb,0xfe,0x3d); 30546 #if defined(__cplusplus) && !defined(CINTERFACE) 30547 MIDL_INTERFACE("240a7174-d653-4a1d-a6d3-d4943cfbfe3d") 30548 ICurrentItem : public IRelatedItem 30549 { 30550 }; 30551 #ifdef __CRT_UUID_DECL 30552 __CRT_UUID_DECL(ICurrentItem, 0x240a7174, 0xd653, 0x4a1d, 0xa6,0xd3, 0xd4,0x94,0x3c,0xfb,0xfe,0x3d) 30553 #endif 30554 #else 30555 typedef struct ICurrentItemVtbl { 30556 BEGIN_INTERFACE 30557 30558 /*** IUnknown methods ***/ 30559 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 30560 ICurrentItem* This, 30561 REFIID riid, 30562 void **ppvObject); 30563 30564 ULONG (STDMETHODCALLTYPE *AddRef)( 30565 ICurrentItem* This); 30566 30567 ULONG (STDMETHODCALLTYPE *Release)( 30568 ICurrentItem* This); 30569 30570 /*** IRelatedItem methods ***/ 30571 HRESULT (STDMETHODCALLTYPE *GetItemIDList)( 30572 ICurrentItem* This, 30573 PIDLIST_ABSOLUTE *ppidl); 30574 30575 HRESULT (STDMETHODCALLTYPE *GetItem)( 30576 ICurrentItem* This, 30577 IShellItem **ppsi); 30578 30579 END_INTERFACE 30580 } ICurrentItemVtbl; 30581 interface ICurrentItem { 30582 CONST_VTBL ICurrentItemVtbl* lpVtbl; 30583 }; 30584 30585 #ifdef COBJMACROS 30586 #ifndef WIDL_C_INLINE_WRAPPERS 30587 /*** IUnknown methods ***/ 30588 #define ICurrentItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 30589 #define ICurrentItem_AddRef(This) (This)->lpVtbl->AddRef(This) 30590 #define ICurrentItem_Release(This) (This)->lpVtbl->Release(This) 30591 /*** IRelatedItem methods ***/ 30592 #define ICurrentItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) 30593 #define ICurrentItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) 30594 #else 30595 /*** IUnknown methods ***/ 30596 static FORCEINLINE HRESULT ICurrentItem_QueryInterface(ICurrentItem* This,REFIID riid,void **ppvObject) { 30597 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 30598 } 30599 static FORCEINLINE ULONG ICurrentItem_AddRef(ICurrentItem* This) { 30600 return This->lpVtbl->AddRef(This); 30601 } 30602 static FORCEINLINE ULONG ICurrentItem_Release(ICurrentItem* This) { 30603 return This->lpVtbl->Release(This); 30604 } 30605 /*** IRelatedItem methods ***/ 30606 static FORCEINLINE HRESULT ICurrentItem_GetItemIDList(ICurrentItem* This,PIDLIST_ABSOLUTE *ppidl) { 30607 return This->lpVtbl->GetItemIDList(This,ppidl); 30608 } 30609 static FORCEINLINE HRESULT ICurrentItem_GetItem(ICurrentItem* This,IShellItem **ppsi) { 30610 return This->lpVtbl->GetItem(This,ppsi); 30611 } 30612 #endif 30613 #endif 30614 30615 #endif 30616 30617 30618 #endif /* __ICurrentItem_INTERFACE_DEFINED__ */ 30619 30620 30621 /***************************************************************************** 30622 * ITransferMediumItem interface 30623 */ 30624 #ifndef __ITransferMediumItem_INTERFACE_DEFINED__ 30625 #define __ITransferMediumItem_INTERFACE_DEFINED__ 30626 30627 DEFINE_GUID(IID_ITransferMediumItem, 0x77f295d5, 0x2d6f, 0x4e19, 0xb8,0xae, 0x32,0x2f,0x3e,0x72,0x1a,0xb5); 30628 #if defined(__cplusplus) && !defined(CINTERFACE) 30629 MIDL_INTERFACE("77f295d5-2d6f-4e19-b8ae-322f3e721ab5") 30630 ITransferMediumItem : public IRelatedItem 30631 { 30632 }; 30633 #ifdef __CRT_UUID_DECL 30634 __CRT_UUID_DECL(ITransferMediumItem, 0x77f295d5, 0x2d6f, 0x4e19, 0xb8,0xae, 0x32,0x2f,0x3e,0x72,0x1a,0xb5) 30635 #endif 30636 #else 30637 typedef struct ITransferMediumItemVtbl { 30638 BEGIN_INTERFACE 30639 30640 /*** IUnknown methods ***/ 30641 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 30642 ITransferMediumItem* This, 30643 REFIID riid, 30644 void **ppvObject); 30645 30646 ULONG (STDMETHODCALLTYPE *AddRef)( 30647 ITransferMediumItem* This); 30648 30649 ULONG (STDMETHODCALLTYPE *Release)( 30650 ITransferMediumItem* This); 30651 30652 /*** IRelatedItem methods ***/ 30653 HRESULT (STDMETHODCALLTYPE *GetItemIDList)( 30654 ITransferMediumItem* This, 30655 PIDLIST_ABSOLUTE *ppidl); 30656 30657 HRESULT (STDMETHODCALLTYPE *GetItem)( 30658 ITransferMediumItem* This, 30659 IShellItem **ppsi); 30660 30661 END_INTERFACE 30662 } ITransferMediumItemVtbl; 30663 interface ITransferMediumItem { 30664 CONST_VTBL ITransferMediumItemVtbl* lpVtbl; 30665 }; 30666 30667 #ifdef COBJMACROS 30668 #ifndef WIDL_C_INLINE_WRAPPERS 30669 /*** IUnknown methods ***/ 30670 #define ITransferMediumItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 30671 #define ITransferMediumItem_AddRef(This) (This)->lpVtbl->AddRef(This) 30672 #define ITransferMediumItem_Release(This) (This)->lpVtbl->Release(This) 30673 /*** IRelatedItem methods ***/ 30674 #define ITransferMediumItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) 30675 #define ITransferMediumItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) 30676 #else 30677 /*** IUnknown methods ***/ 30678 static FORCEINLINE HRESULT ITransferMediumItem_QueryInterface(ITransferMediumItem* This,REFIID riid,void **ppvObject) { 30679 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 30680 } 30681 static FORCEINLINE ULONG ITransferMediumItem_AddRef(ITransferMediumItem* This) { 30682 return This->lpVtbl->AddRef(This); 30683 } 30684 static FORCEINLINE ULONG ITransferMediumItem_Release(ITransferMediumItem* This) { 30685 return This->lpVtbl->Release(This); 30686 } 30687 /*** IRelatedItem methods ***/ 30688 static FORCEINLINE HRESULT ITransferMediumItem_GetItemIDList(ITransferMediumItem* This,PIDLIST_ABSOLUTE *ppidl) { 30689 return This->lpVtbl->GetItemIDList(This,ppidl); 30690 } 30691 static FORCEINLINE HRESULT ITransferMediumItem_GetItem(ITransferMediumItem* This,IShellItem **ppsi) { 30692 return This->lpVtbl->GetItem(This,ppsi); 30693 } 30694 #endif 30695 #endif 30696 30697 #endif 30698 30699 30700 #endif /* __ITransferMediumItem_INTERFACE_DEFINED__ */ 30701 30702 30703 /***************************************************************************** 30704 * IUseToBrowseItem interface 30705 */ 30706 #ifndef __IUseToBrowseItem_INTERFACE_DEFINED__ 30707 #define __IUseToBrowseItem_INTERFACE_DEFINED__ 30708 30709 DEFINE_GUID(IID_IUseToBrowseItem, 0x05edda5c, 0x98a3, 0x4717, 0x8a,0xdb, 0xc5,0xe7,0xda,0x99,0x1e,0xb1); 30710 #if defined(__cplusplus) && !defined(CINTERFACE) 30711 MIDL_INTERFACE("05edda5c-98a3-4717-8adb-c5e7da991eb1") 30712 IUseToBrowseItem : public IRelatedItem 30713 { 30714 }; 30715 #ifdef __CRT_UUID_DECL 30716 __CRT_UUID_DECL(IUseToBrowseItem, 0x05edda5c, 0x98a3, 0x4717, 0x8a,0xdb, 0xc5,0xe7,0xda,0x99,0x1e,0xb1) 30717 #endif 30718 #else 30719 typedef struct IUseToBrowseItemVtbl { 30720 BEGIN_INTERFACE 30721 30722 /*** IUnknown methods ***/ 30723 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 30724 IUseToBrowseItem* This, 30725 REFIID riid, 30726 void **ppvObject); 30727 30728 ULONG (STDMETHODCALLTYPE *AddRef)( 30729 IUseToBrowseItem* This); 30730 30731 ULONG (STDMETHODCALLTYPE *Release)( 30732 IUseToBrowseItem* This); 30733 30734 /*** IRelatedItem methods ***/ 30735 HRESULT (STDMETHODCALLTYPE *GetItemIDList)( 30736 IUseToBrowseItem* This, 30737 PIDLIST_ABSOLUTE *ppidl); 30738 30739 HRESULT (STDMETHODCALLTYPE *GetItem)( 30740 IUseToBrowseItem* This, 30741 IShellItem **ppsi); 30742 30743 END_INTERFACE 30744 } IUseToBrowseItemVtbl; 30745 interface IUseToBrowseItem { 30746 CONST_VTBL IUseToBrowseItemVtbl* lpVtbl; 30747 }; 30748 30749 #ifdef COBJMACROS 30750 #ifndef WIDL_C_INLINE_WRAPPERS 30751 /*** IUnknown methods ***/ 30752 #define IUseToBrowseItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 30753 #define IUseToBrowseItem_AddRef(This) (This)->lpVtbl->AddRef(This) 30754 #define IUseToBrowseItem_Release(This) (This)->lpVtbl->Release(This) 30755 /*** IRelatedItem methods ***/ 30756 #define IUseToBrowseItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) 30757 #define IUseToBrowseItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) 30758 #else 30759 /*** IUnknown methods ***/ 30760 static FORCEINLINE HRESULT IUseToBrowseItem_QueryInterface(IUseToBrowseItem* This,REFIID riid,void **ppvObject) { 30761 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 30762 } 30763 static FORCEINLINE ULONG IUseToBrowseItem_AddRef(IUseToBrowseItem* This) { 30764 return This->lpVtbl->AddRef(This); 30765 } 30766 static FORCEINLINE ULONG IUseToBrowseItem_Release(IUseToBrowseItem* This) { 30767 return This->lpVtbl->Release(This); 30768 } 30769 /*** IRelatedItem methods ***/ 30770 static FORCEINLINE HRESULT IUseToBrowseItem_GetItemIDList(IUseToBrowseItem* This,PIDLIST_ABSOLUTE *ppidl) { 30771 return This->lpVtbl->GetItemIDList(This,ppidl); 30772 } 30773 static FORCEINLINE HRESULT IUseToBrowseItem_GetItem(IUseToBrowseItem* This,IShellItem **ppsi) { 30774 return This->lpVtbl->GetItem(This,ppsi); 30775 } 30776 #endif 30777 #endif 30778 30779 #endif 30780 30781 30782 #endif /* __IUseToBrowseItem_INTERFACE_DEFINED__ */ 30783 30784 30785 /***************************************************************************** 30786 * IDisplayItem interface 30787 */ 30788 #ifndef __IDisplayItem_INTERFACE_DEFINED__ 30789 #define __IDisplayItem_INTERFACE_DEFINED__ 30790 30791 DEFINE_GUID(IID_IDisplayItem, 0xc6fd5997, 0x9f6b, 0x4888, 0x87,0x03, 0x94,0xe8,0x0e,0x8c,0xde,0x3f); 30792 #if defined(__cplusplus) && !defined(CINTERFACE) 30793 MIDL_INTERFACE("c6fd5997-9f6b-4888-8703-94e80e8cde3f") 30794 IDisplayItem : public IRelatedItem 30795 { 30796 }; 30797 #ifdef __CRT_UUID_DECL 30798 __CRT_UUID_DECL(IDisplayItem, 0xc6fd5997, 0x9f6b, 0x4888, 0x87,0x03, 0x94,0xe8,0x0e,0x8c,0xde,0x3f) 30799 #endif 30800 #else 30801 typedef struct IDisplayItemVtbl { 30802 BEGIN_INTERFACE 30803 30804 /*** IUnknown methods ***/ 30805 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 30806 IDisplayItem* This, 30807 REFIID riid, 30808 void **ppvObject); 30809 30810 ULONG (STDMETHODCALLTYPE *AddRef)( 30811 IDisplayItem* This); 30812 30813 ULONG (STDMETHODCALLTYPE *Release)( 30814 IDisplayItem* This); 30815 30816 /*** IRelatedItem methods ***/ 30817 HRESULT (STDMETHODCALLTYPE *GetItemIDList)( 30818 IDisplayItem* This, 30819 PIDLIST_ABSOLUTE *ppidl); 30820 30821 HRESULT (STDMETHODCALLTYPE *GetItem)( 30822 IDisplayItem* This, 30823 IShellItem **ppsi); 30824 30825 END_INTERFACE 30826 } IDisplayItemVtbl; 30827 interface IDisplayItem { 30828 CONST_VTBL IDisplayItemVtbl* lpVtbl; 30829 }; 30830 30831 #ifdef COBJMACROS 30832 #ifndef WIDL_C_INLINE_WRAPPERS 30833 /*** IUnknown methods ***/ 30834 #define IDisplayItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 30835 #define IDisplayItem_AddRef(This) (This)->lpVtbl->AddRef(This) 30836 #define IDisplayItem_Release(This) (This)->lpVtbl->Release(This) 30837 /*** IRelatedItem methods ***/ 30838 #define IDisplayItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) 30839 #define IDisplayItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) 30840 #else 30841 /*** IUnknown methods ***/ 30842 static FORCEINLINE HRESULT IDisplayItem_QueryInterface(IDisplayItem* This,REFIID riid,void **ppvObject) { 30843 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 30844 } 30845 static FORCEINLINE ULONG IDisplayItem_AddRef(IDisplayItem* This) { 30846 return This->lpVtbl->AddRef(This); 30847 } 30848 static FORCEINLINE ULONG IDisplayItem_Release(IDisplayItem* This) { 30849 return This->lpVtbl->Release(This); 30850 } 30851 /*** IRelatedItem methods ***/ 30852 static FORCEINLINE HRESULT IDisplayItem_GetItemIDList(IDisplayItem* This,PIDLIST_ABSOLUTE *ppidl) { 30853 return This->lpVtbl->GetItemIDList(This,ppidl); 30854 } 30855 static FORCEINLINE HRESULT IDisplayItem_GetItem(IDisplayItem* This,IShellItem **ppsi) { 30856 return This->lpVtbl->GetItem(This,ppsi); 30857 } 30858 #endif 30859 #endif 30860 30861 #endif 30862 30863 30864 #endif /* __IDisplayItem_INTERFACE_DEFINED__ */ 30865 30866 30867 /***************************************************************************** 30868 * IViewStateIdentityItem interface 30869 */ 30870 #ifndef __IViewStateIdentityItem_INTERFACE_DEFINED__ 30871 #define __IViewStateIdentityItem_INTERFACE_DEFINED__ 30872 30873 DEFINE_GUID(IID_IViewStateIdentityItem, 0x9d264146, 0xa94f, 0x4195, 0x9f,0x9f, 0x3b,0xb1,0x2c,0xe0,0xc9,0x55); 30874 #if defined(__cplusplus) && !defined(CINTERFACE) 30875 MIDL_INTERFACE("9d264146-a94f-4195-9f9f-3bb12ce0c955") 30876 IViewStateIdentityItem : public IRelatedItem 30877 { 30878 }; 30879 #ifdef __CRT_UUID_DECL 30880 __CRT_UUID_DECL(IViewStateIdentityItem, 0x9d264146, 0xa94f, 0x4195, 0x9f,0x9f, 0x3b,0xb1,0x2c,0xe0,0xc9,0x55) 30881 #endif 30882 #else 30883 typedef struct IViewStateIdentityItemVtbl { 30884 BEGIN_INTERFACE 30885 30886 /*** IUnknown methods ***/ 30887 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 30888 IViewStateIdentityItem* This, 30889 REFIID riid, 30890 void **ppvObject); 30891 30892 ULONG (STDMETHODCALLTYPE *AddRef)( 30893 IViewStateIdentityItem* This); 30894 30895 ULONG (STDMETHODCALLTYPE *Release)( 30896 IViewStateIdentityItem* This); 30897 30898 /*** IRelatedItem methods ***/ 30899 HRESULT (STDMETHODCALLTYPE *GetItemIDList)( 30900 IViewStateIdentityItem* This, 30901 PIDLIST_ABSOLUTE *ppidl); 30902 30903 HRESULT (STDMETHODCALLTYPE *GetItem)( 30904 IViewStateIdentityItem* This, 30905 IShellItem **ppsi); 30906 30907 END_INTERFACE 30908 } IViewStateIdentityItemVtbl; 30909 interface IViewStateIdentityItem { 30910 CONST_VTBL IViewStateIdentityItemVtbl* lpVtbl; 30911 }; 30912 30913 #ifdef COBJMACROS 30914 #ifndef WIDL_C_INLINE_WRAPPERS 30915 /*** IUnknown methods ***/ 30916 #define IViewStateIdentityItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 30917 #define IViewStateIdentityItem_AddRef(This) (This)->lpVtbl->AddRef(This) 30918 #define IViewStateIdentityItem_Release(This) (This)->lpVtbl->Release(This) 30919 /*** IRelatedItem methods ***/ 30920 #define IViewStateIdentityItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) 30921 #define IViewStateIdentityItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) 30922 #else 30923 /*** IUnknown methods ***/ 30924 static FORCEINLINE HRESULT IViewStateIdentityItem_QueryInterface(IViewStateIdentityItem* This,REFIID riid,void **ppvObject) { 30925 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 30926 } 30927 static FORCEINLINE ULONG IViewStateIdentityItem_AddRef(IViewStateIdentityItem* This) { 30928 return This->lpVtbl->AddRef(This); 30929 } 30930 static FORCEINLINE ULONG IViewStateIdentityItem_Release(IViewStateIdentityItem* This) { 30931 return This->lpVtbl->Release(This); 30932 } 30933 /*** IRelatedItem methods ***/ 30934 static FORCEINLINE HRESULT IViewStateIdentityItem_GetItemIDList(IViewStateIdentityItem* This,PIDLIST_ABSOLUTE *ppidl) { 30935 return This->lpVtbl->GetItemIDList(This,ppidl); 30936 } 30937 static FORCEINLINE HRESULT IViewStateIdentityItem_GetItem(IViewStateIdentityItem* This,IShellItem **ppsi) { 30938 return This->lpVtbl->GetItem(This,ppsi); 30939 } 30940 #endif 30941 #endif 30942 30943 #endif 30944 30945 30946 #endif /* __IViewStateIdentityItem_INTERFACE_DEFINED__ */ 30947 30948 30949 /***************************************************************************** 30950 * IPreviewItem interface 30951 */ 30952 #ifndef __IPreviewItem_INTERFACE_DEFINED__ 30953 #define __IPreviewItem_INTERFACE_DEFINED__ 30954 30955 DEFINE_GUID(IID_IPreviewItem, 0x36149969, 0x0a8f, 0x49c8, 0x8b,0x00, 0x4a,0xec,0xb2,0x02,0x22,0xfb); 30956 #if defined(__cplusplus) && !defined(CINTERFACE) 30957 MIDL_INTERFACE("36149969-0a8f-49c8-8b00-4aecb20222fb") 30958 IPreviewItem : public IRelatedItem 30959 { 30960 }; 30961 #ifdef __CRT_UUID_DECL 30962 __CRT_UUID_DECL(IPreviewItem, 0x36149969, 0x0a8f, 0x49c8, 0x8b,0x00, 0x4a,0xec,0xb2,0x02,0x22,0xfb) 30963 #endif 30964 #else 30965 typedef struct IPreviewItemVtbl { 30966 BEGIN_INTERFACE 30967 30968 /*** IUnknown methods ***/ 30969 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 30970 IPreviewItem* This, 30971 REFIID riid, 30972 void **ppvObject); 30973 30974 ULONG (STDMETHODCALLTYPE *AddRef)( 30975 IPreviewItem* This); 30976 30977 ULONG (STDMETHODCALLTYPE *Release)( 30978 IPreviewItem* This); 30979 30980 /*** IRelatedItem methods ***/ 30981 HRESULT (STDMETHODCALLTYPE *GetItemIDList)( 30982 IPreviewItem* This, 30983 PIDLIST_ABSOLUTE *ppidl); 30984 30985 HRESULT (STDMETHODCALLTYPE *GetItem)( 30986 IPreviewItem* This, 30987 IShellItem **ppsi); 30988 30989 END_INTERFACE 30990 } IPreviewItemVtbl; 30991 interface IPreviewItem { 30992 CONST_VTBL IPreviewItemVtbl* lpVtbl; 30993 }; 30994 30995 #ifdef COBJMACROS 30996 #ifndef WIDL_C_INLINE_WRAPPERS 30997 /*** IUnknown methods ***/ 30998 #define IPreviewItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 30999 #define IPreviewItem_AddRef(This) (This)->lpVtbl->AddRef(This) 31000 #define IPreviewItem_Release(This) (This)->lpVtbl->Release(This) 31001 /*** IRelatedItem methods ***/ 31002 #define IPreviewItem_GetItemIDList(This,ppidl) (This)->lpVtbl->GetItemIDList(This,ppidl) 31003 #define IPreviewItem_GetItem(This,ppsi) (This)->lpVtbl->GetItem(This,ppsi) 31004 #else 31005 /*** IUnknown methods ***/ 31006 static FORCEINLINE HRESULT IPreviewItem_QueryInterface(IPreviewItem* This,REFIID riid,void **ppvObject) { 31007 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 31008 } 31009 static FORCEINLINE ULONG IPreviewItem_AddRef(IPreviewItem* This) { 31010 return This->lpVtbl->AddRef(This); 31011 } 31012 static FORCEINLINE ULONG IPreviewItem_Release(IPreviewItem* This) { 31013 return This->lpVtbl->Release(This); 31014 } 31015 /*** IRelatedItem methods ***/ 31016 static FORCEINLINE HRESULT IPreviewItem_GetItemIDList(IPreviewItem* This,PIDLIST_ABSOLUTE *ppidl) { 31017 return This->lpVtbl->GetItemIDList(This,ppidl); 31018 } 31019 static FORCEINLINE HRESULT IPreviewItem_GetItem(IPreviewItem* This,IShellItem **ppsi) { 31020 return This->lpVtbl->GetItem(This,ppsi); 31021 } 31022 #endif 31023 #endif 31024 31025 #endif 31026 31027 31028 #endif /* __IPreviewItem_INTERFACE_DEFINED__ */ 31029 31030 #endif 31031 31032 /***************************************************************************** 31033 * IDestinationStreamFactory interface 31034 */ 31035 #ifndef __IDestinationStreamFactory_INTERFACE_DEFINED__ 31036 #define __IDestinationStreamFactory_INTERFACE_DEFINED__ 31037 31038 DEFINE_GUID(IID_IDestinationStreamFactory, 0x8a87781b, 0x39a7, 0x4a1f, 0xaa,0xb3, 0xa3,0x9b,0x9c,0x34,0xa7,0xd9); 31039 #if defined(__cplusplus) && !defined(CINTERFACE) 31040 MIDL_INTERFACE("8a87781b-39a7-4a1f-aab3-a39b9c34a7d9") 31041 IDestinationStreamFactory : public IUnknown 31042 { 31043 virtual HRESULT STDMETHODCALLTYPE GetDestinationStream( 31044 IStream **ppstm) = 0; 31045 31046 }; 31047 #ifdef __CRT_UUID_DECL 31048 __CRT_UUID_DECL(IDestinationStreamFactory, 0x8a87781b, 0x39a7, 0x4a1f, 0xaa,0xb3, 0xa3,0x9b,0x9c,0x34,0xa7,0xd9) 31049 #endif 31050 #else 31051 typedef struct IDestinationStreamFactoryVtbl { 31052 BEGIN_INTERFACE 31053 31054 /*** IUnknown methods ***/ 31055 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 31056 IDestinationStreamFactory* This, 31057 REFIID riid, 31058 void **ppvObject); 31059 31060 ULONG (STDMETHODCALLTYPE *AddRef)( 31061 IDestinationStreamFactory* This); 31062 31063 ULONG (STDMETHODCALLTYPE *Release)( 31064 IDestinationStreamFactory* This); 31065 31066 /*** IDestinationStreamFactory methods ***/ 31067 HRESULT (STDMETHODCALLTYPE *GetDestinationStream)( 31068 IDestinationStreamFactory* This, 31069 IStream **ppstm); 31070 31071 END_INTERFACE 31072 } IDestinationStreamFactoryVtbl; 31073 interface IDestinationStreamFactory { 31074 CONST_VTBL IDestinationStreamFactoryVtbl* lpVtbl; 31075 }; 31076 31077 #ifdef COBJMACROS 31078 #ifndef WIDL_C_INLINE_WRAPPERS 31079 /*** IUnknown methods ***/ 31080 #define IDestinationStreamFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 31081 #define IDestinationStreamFactory_AddRef(This) (This)->lpVtbl->AddRef(This) 31082 #define IDestinationStreamFactory_Release(This) (This)->lpVtbl->Release(This) 31083 /*** IDestinationStreamFactory methods ***/ 31084 #define IDestinationStreamFactory_GetDestinationStream(This,ppstm) (This)->lpVtbl->GetDestinationStream(This,ppstm) 31085 #else 31086 /*** IUnknown methods ***/ 31087 static FORCEINLINE HRESULT IDestinationStreamFactory_QueryInterface(IDestinationStreamFactory* This,REFIID riid,void **ppvObject) { 31088 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 31089 } 31090 static FORCEINLINE ULONG IDestinationStreamFactory_AddRef(IDestinationStreamFactory* This) { 31091 return This->lpVtbl->AddRef(This); 31092 } 31093 static FORCEINLINE ULONG IDestinationStreamFactory_Release(IDestinationStreamFactory* This) { 31094 return This->lpVtbl->Release(This); 31095 } 31096 /*** IDestinationStreamFactory methods ***/ 31097 static FORCEINLINE HRESULT IDestinationStreamFactory_GetDestinationStream(IDestinationStreamFactory* This,IStream **ppstm) { 31098 return This->lpVtbl->GetDestinationStream(This,ppstm); 31099 } 31100 #endif 31101 #endif 31102 31103 #endif 31104 31105 HRESULT STDMETHODCALLTYPE IDestinationStreamFactory_GetDestinationStream_Proxy( 31106 IDestinationStreamFactory* This, 31107 IStream **ppstm); 31108 void __RPC_STUB IDestinationStreamFactory_GetDestinationStream_Stub( 31109 IRpcStubBuffer* This, 31110 IRpcChannelBuffer* pRpcChannelBuffer, 31111 PRPC_MESSAGE pRpcMessage, 31112 DWORD* pdwStubPhase); 31113 31114 #endif /* __IDestinationStreamFactory_INTERFACE_DEFINED__ */ 31115 31116 31117 enum _NMCII_FLAGS { 31118 NMCII_NONE = 0x0, 31119 NMCII_ITEMS = 0x1, 31120 NMCII_FOLDERS = 0x2 31121 }; 31122 31123 31124 typedef int NMCII_FLAGS; 31125 31126 enum _NMCSAEI_FLAGS { 31127 NMCSAEI_SELECT = 0x0, 31128 NMCSAEI_EDIT = 0x1 31129 }; 31130 31131 31132 typedef int NMCSAEI_FLAGS; 31133 31134 /***************************************************************************** 31135 * INewMenuClient interface 31136 */ 31137 #ifndef __INewMenuClient_INTERFACE_DEFINED__ 31138 #define __INewMenuClient_INTERFACE_DEFINED__ 31139 31140 DEFINE_GUID(IID_INewMenuClient, 0xdcb07fdc, 0x3bb5, 0x451c, 0x90,0xbe, 0x96,0x66,0x44,0xfe,0xd7,0xb0); 31141 #if defined(__cplusplus) && !defined(CINTERFACE) 31142 MIDL_INTERFACE("dcb07fdc-3bb5-451c-90be-966644fed7b0") 31143 INewMenuClient : public IUnknown 31144 { 31145 virtual HRESULT STDMETHODCALLTYPE IncludeItems( 31146 NMCII_FLAGS *pflags) = 0; 31147 31148 virtual HRESULT STDMETHODCALLTYPE SelectAndEditItem( 31149 PCIDLIST_ABSOLUTE pidlItem, 31150 NMCSAEI_FLAGS flags) = 0; 31151 31152 }; 31153 #ifdef __CRT_UUID_DECL 31154 __CRT_UUID_DECL(INewMenuClient, 0xdcb07fdc, 0x3bb5, 0x451c, 0x90,0xbe, 0x96,0x66,0x44,0xfe,0xd7,0xb0) 31155 #endif 31156 #else 31157 typedef struct INewMenuClientVtbl { 31158 BEGIN_INTERFACE 31159 31160 /*** IUnknown methods ***/ 31161 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 31162 INewMenuClient* This, 31163 REFIID riid, 31164 void **ppvObject); 31165 31166 ULONG (STDMETHODCALLTYPE *AddRef)( 31167 INewMenuClient* This); 31168 31169 ULONG (STDMETHODCALLTYPE *Release)( 31170 INewMenuClient* This); 31171 31172 /*** INewMenuClient methods ***/ 31173 HRESULT (STDMETHODCALLTYPE *IncludeItems)( 31174 INewMenuClient* This, 31175 NMCII_FLAGS *pflags); 31176 31177 HRESULT (STDMETHODCALLTYPE *SelectAndEditItem)( 31178 INewMenuClient* This, 31179 PCIDLIST_ABSOLUTE pidlItem, 31180 NMCSAEI_FLAGS flags); 31181 31182 END_INTERFACE 31183 } INewMenuClientVtbl; 31184 interface INewMenuClient { 31185 CONST_VTBL INewMenuClientVtbl* lpVtbl; 31186 }; 31187 31188 #ifdef COBJMACROS 31189 #ifndef WIDL_C_INLINE_WRAPPERS 31190 /*** IUnknown methods ***/ 31191 #define INewMenuClient_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 31192 #define INewMenuClient_AddRef(This) (This)->lpVtbl->AddRef(This) 31193 #define INewMenuClient_Release(This) (This)->lpVtbl->Release(This) 31194 /*** INewMenuClient methods ***/ 31195 #define INewMenuClient_IncludeItems(This,pflags) (This)->lpVtbl->IncludeItems(This,pflags) 31196 #define INewMenuClient_SelectAndEditItem(This,pidlItem,flags) (This)->lpVtbl->SelectAndEditItem(This,pidlItem,flags) 31197 #else 31198 /*** IUnknown methods ***/ 31199 static FORCEINLINE HRESULT INewMenuClient_QueryInterface(INewMenuClient* This,REFIID riid,void **ppvObject) { 31200 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 31201 } 31202 static FORCEINLINE ULONG INewMenuClient_AddRef(INewMenuClient* This) { 31203 return This->lpVtbl->AddRef(This); 31204 } 31205 static FORCEINLINE ULONG INewMenuClient_Release(INewMenuClient* This) { 31206 return This->lpVtbl->Release(This); 31207 } 31208 /*** INewMenuClient methods ***/ 31209 static FORCEINLINE HRESULT INewMenuClient_IncludeItems(INewMenuClient* This,NMCII_FLAGS *pflags) { 31210 return This->lpVtbl->IncludeItems(This,pflags); 31211 } 31212 static FORCEINLINE HRESULT INewMenuClient_SelectAndEditItem(INewMenuClient* This,PCIDLIST_ABSOLUTE pidlItem,NMCSAEI_FLAGS flags) { 31213 return This->lpVtbl->SelectAndEditItem(This,pidlItem,flags); 31214 } 31215 #endif 31216 #endif 31217 31218 #endif 31219 31220 HRESULT STDMETHODCALLTYPE INewMenuClient_IncludeItems_Proxy( 31221 INewMenuClient* This, 31222 NMCII_FLAGS *pflags); 31223 void __RPC_STUB INewMenuClient_IncludeItems_Stub( 31224 IRpcStubBuffer* This, 31225 IRpcChannelBuffer* pRpcChannelBuffer, 31226 PRPC_MESSAGE pRpcMessage, 31227 DWORD* pdwStubPhase); 31228 HRESULT STDMETHODCALLTYPE INewMenuClient_SelectAndEditItem_Proxy( 31229 INewMenuClient* This, 31230 PCIDLIST_ABSOLUTE pidlItem, 31231 NMCSAEI_FLAGS flags); 31232 void __RPC_STUB INewMenuClient_SelectAndEditItem_Stub( 31233 IRpcStubBuffer* This, 31234 IRpcChannelBuffer* pRpcChannelBuffer, 31235 PRPC_MESSAGE pRpcMessage, 31236 DWORD* pdwStubPhase); 31237 31238 #endif /* __INewMenuClient_INTERFACE_DEFINED__ */ 31239 31240 31241 #define SID_SNewMenuClient IID_INewMenuClient 31242 31243 DEFINE_GUID(SID_SCommandBarState, 0xB99EAA5C, 0x3850, 0x4400, 0xBC, 0x33, 0x2C, 0xE5, 0x34, 0x04, 0x8B, 0xF8); 31244 31245 #if _WIN32_IE >= _WIN32_IE_IE70 31246 /***************************************************************************** 31247 * IInitializeWithBindCtx interface 31248 */ 31249 #ifndef __IInitializeWithBindCtx_INTERFACE_DEFINED__ 31250 #define __IInitializeWithBindCtx_INTERFACE_DEFINED__ 31251 31252 DEFINE_GUID(IID_IInitializeWithBindCtx, 0x71c0d2bc, 0x726d, 0x45cc, 0xa6,0xc0, 0x2e,0x31,0xc1,0xdb,0x21,0x59); 31253 #if defined(__cplusplus) && !defined(CINTERFACE) 31254 MIDL_INTERFACE("71c0d2bc-726d-45cc-a6c0-2e31c1db2159") 31255 IInitializeWithBindCtx : public IUnknown 31256 { 31257 virtual HRESULT STDMETHODCALLTYPE Initialize( 31258 IBindCtx *pbc) = 0; 31259 31260 }; 31261 #ifdef __CRT_UUID_DECL 31262 __CRT_UUID_DECL(IInitializeWithBindCtx, 0x71c0d2bc, 0x726d, 0x45cc, 0xa6,0xc0, 0x2e,0x31,0xc1,0xdb,0x21,0x59) 31263 #endif 31264 #else 31265 typedef struct IInitializeWithBindCtxVtbl { 31266 BEGIN_INTERFACE 31267 31268 /*** IUnknown methods ***/ 31269 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 31270 IInitializeWithBindCtx* This, 31271 REFIID riid, 31272 void **ppvObject); 31273 31274 ULONG (STDMETHODCALLTYPE *AddRef)( 31275 IInitializeWithBindCtx* This); 31276 31277 ULONG (STDMETHODCALLTYPE *Release)( 31278 IInitializeWithBindCtx* This); 31279 31280 /*** IInitializeWithBindCtx methods ***/ 31281 HRESULT (STDMETHODCALLTYPE *Initialize)( 31282 IInitializeWithBindCtx* This, 31283 IBindCtx *pbc); 31284 31285 END_INTERFACE 31286 } IInitializeWithBindCtxVtbl; 31287 interface IInitializeWithBindCtx { 31288 CONST_VTBL IInitializeWithBindCtxVtbl* lpVtbl; 31289 }; 31290 31291 #ifdef COBJMACROS 31292 #ifndef WIDL_C_INLINE_WRAPPERS 31293 /*** IUnknown methods ***/ 31294 #define IInitializeWithBindCtx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 31295 #define IInitializeWithBindCtx_AddRef(This) (This)->lpVtbl->AddRef(This) 31296 #define IInitializeWithBindCtx_Release(This) (This)->lpVtbl->Release(This) 31297 /*** IInitializeWithBindCtx methods ***/ 31298 #define IInitializeWithBindCtx_Initialize(This,pbc) (This)->lpVtbl->Initialize(This,pbc) 31299 #else 31300 /*** IUnknown methods ***/ 31301 static FORCEINLINE HRESULT IInitializeWithBindCtx_QueryInterface(IInitializeWithBindCtx* This,REFIID riid,void **ppvObject) { 31302 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 31303 } 31304 static FORCEINLINE ULONG IInitializeWithBindCtx_AddRef(IInitializeWithBindCtx* This) { 31305 return This->lpVtbl->AddRef(This); 31306 } 31307 static FORCEINLINE ULONG IInitializeWithBindCtx_Release(IInitializeWithBindCtx* This) { 31308 return This->lpVtbl->Release(This); 31309 } 31310 /*** IInitializeWithBindCtx methods ***/ 31311 static FORCEINLINE HRESULT IInitializeWithBindCtx_Initialize(IInitializeWithBindCtx* This,IBindCtx *pbc) { 31312 return This->lpVtbl->Initialize(This,pbc); 31313 } 31314 #endif 31315 #endif 31316 31317 #endif 31318 31319 HRESULT STDMETHODCALLTYPE IInitializeWithBindCtx_Initialize_Proxy( 31320 IInitializeWithBindCtx* This, 31321 IBindCtx *pbc); 31322 void __RPC_STUB IInitializeWithBindCtx_Initialize_Stub( 31323 IRpcStubBuffer* This, 31324 IRpcChannelBuffer* pRpcChannelBuffer, 31325 PRPC_MESSAGE pRpcMessage, 31326 DWORD* pdwStubPhase); 31327 31328 #endif /* __IInitializeWithBindCtx_INTERFACE_DEFINED__ */ 31329 31330 31331 /***************************************************************************** 31332 * IShellItemFilter interface 31333 */ 31334 #ifndef __IShellItemFilter_INTERFACE_DEFINED__ 31335 #define __IShellItemFilter_INTERFACE_DEFINED__ 31336 31337 DEFINE_GUID(IID_IShellItemFilter, 0x2659b475, 0xeeb8, 0x48b7, 0x8f,0x07, 0xb3,0x78,0x81,0x0f,0x48,0xcf); 31338 #if defined(__cplusplus) && !defined(CINTERFACE) 31339 MIDL_INTERFACE("2659b475-eeb8-48b7-8f07-b378810f48cf") 31340 IShellItemFilter : public IUnknown 31341 { 31342 virtual HRESULT STDMETHODCALLTYPE IncludeItem( 31343 IShellItem *psi) = 0; 31344 31345 virtual HRESULT STDMETHODCALLTYPE GetEnumFlagsForItem( 31346 IShellItem *psi, 31347 SHCONTF *pgrfFlags) = 0; 31348 31349 }; 31350 #ifdef __CRT_UUID_DECL 31351 __CRT_UUID_DECL(IShellItemFilter, 0x2659b475, 0xeeb8, 0x48b7, 0x8f,0x07, 0xb3,0x78,0x81,0x0f,0x48,0xcf) 31352 #endif 31353 #else 31354 typedef struct IShellItemFilterVtbl { 31355 BEGIN_INTERFACE 31356 31357 /*** IUnknown methods ***/ 31358 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 31359 IShellItemFilter* This, 31360 REFIID riid, 31361 void **ppvObject); 31362 31363 ULONG (STDMETHODCALLTYPE *AddRef)( 31364 IShellItemFilter* This); 31365 31366 ULONG (STDMETHODCALLTYPE *Release)( 31367 IShellItemFilter* This); 31368 31369 /*** IShellItemFilter methods ***/ 31370 HRESULT (STDMETHODCALLTYPE *IncludeItem)( 31371 IShellItemFilter* This, 31372 IShellItem *psi); 31373 31374 HRESULT (STDMETHODCALLTYPE *GetEnumFlagsForItem)( 31375 IShellItemFilter* This, 31376 IShellItem *psi, 31377 SHCONTF *pgrfFlags); 31378 31379 END_INTERFACE 31380 } IShellItemFilterVtbl; 31381 interface IShellItemFilter { 31382 CONST_VTBL IShellItemFilterVtbl* lpVtbl; 31383 }; 31384 31385 #ifdef COBJMACROS 31386 #ifndef WIDL_C_INLINE_WRAPPERS 31387 /*** IUnknown methods ***/ 31388 #define IShellItemFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 31389 #define IShellItemFilter_AddRef(This) (This)->lpVtbl->AddRef(This) 31390 #define IShellItemFilter_Release(This) (This)->lpVtbl->Release(This) 31391 /*** IShellItemFilter methods ***/ 31392 #define IShellItemFilter_IncludeItem(This,psi) (This)->lpVtbl->IncludeItem(This,psi) 31393 #define IShellItemFilter_GetEnumFlagsForItem(This,psi,pgrfFlags) (This)->lpVtbl->GetEnumFlagsForItem(This,psi,pgrfFlags) 31394 #else 31395 /*** IUnknown methods ***/ 31396 static FORCEINLINE HRESULT IShellItemFilter_QueryInterface(IShellItemFilter* This,REFIID riid,void **ppvObject) { 31397 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 31398 } 31399 static FORCEINLINE ULONG IShellItemFilter_AddRef(IShellItemFilter* This) { 31400 return This->lpVtbl->AddRef(This); 31401 } 31402 static FORCEINLINE ULONG IShellItemFilter_Release(IShellItemFilter* This) { 31403 return This->lpVtbl->Release(This); 31404 } 31405 /*** IShellItemFilter methods ***/ 31406 static FORCEINLINE HRESULT IShellItemFilter_IncludeItem(IShellItemFilter* This,IShellItem *psi) { 31407 return This->lpVtbl->IncludeItem(This,psi); 31408 } 31409 static FORCEINLINE HRESULT IShellItemFilter_GetEnumFlagsForItem(IShellItemFilter* This,IShellItem *psi,SHCONTF *pgrfFlags) { 31410 return This->lpVtbl->GetEnumFlagsForItem(This,psi,pgrfFlags); 31411 } 31412 #endif 31413 #endif 31414 31415 #endif 31416 31417 HRESULT STDMETHODCALLTYPE IShellItemFilter_IncludeItem_Proxy( 31418 IShellItemFilter* This, 31419 IShellItem *psi); 31420 void __RPC_STUB IShellItemFilter_IncludeItem_Stub( 31421 IRpcStubBuffer* This, 31422 IRpcChannelBuffer* pRpcChannelBuffer, 31423 PRPC_MESSAGE pRpcMessage, 31424 DWORD* pdwStubPhase); 31425 HRESULT STDMETHODCALLTYPE IShellItemFilter_GetEnumFlagsForItem_Proxy( 31426 IShellItemFilter* This, 31427 IShellItem *psi, 31428 SHCONTF *pgrfFlags); 31429 void __RPC_STUB IShellItemFilter_GetEnumFlagsForItem_Stub( 31430 IRpcStubBuffer* This, 31431 IRpcChannelBuffer* pRpcChannelBuffer, 31432 PRPC_MESSAGE pRpcMessage, 31433 DWORD* pdwStubPhase); 31434 31435 #endif /* __IShellItemFilter_INTERFACE_DEFINED__ */ 31436 31437 #endif 31438 31439 /***************************************************************************** 31440 * INameSpaceTreeControl interface 31441 */ 31442 #ifndef __INameSpaceTreeControl_INTERFACE_DEFINED__ 31443 #define __INameSpaceTreeControl_INTERFACE_DEFINED__ 31444 31445 enum _NSTCSTYLE { 31446 NSTCS_HASEXPANDOS = 0x1, 31447 NSTCS_HASLINES = 0x2, 31448 NSTCS_SINGLECLICKEXPAND = 0x4, 31449 NSTCS_FULLROWSELECT = 0x8, 31450 NSTCS_SPRINGEXPAND = 0x10, 31451 NSTCS_HORIZONTALSCROLL = 0x20, 31452 NSTCS_ROOTHASEXPANDO = 0x40, 31453 NSTCS_SHOWSELECTIONALWAYS = 0x80, 31454 NSTCS_NOINFOTIP = 0x200, 31455 NSTCS_EVENHEIGHT = 0x400, 31456 NSTCS_NOREPLACEOPEN = 0x800, 31457 NSTCS_DISABLEDRAGDROP = 0x1000, 31458 NSTCS_NOORDERSTREAM = 0x2000, 31459 NSTCS_RICHTOOLTIP = 0x4000, 31460 NSTCS_BORDER = 0x8000, 31461 NSTCS_NOEDITLABELS = 0x10000, 31462 NSTCS_TABSTOP = 0x20000, 31463 NSTCS_FAVORITESMODE = 0x80000, 31464 NSTCS_AUTOHSCROLL = 0x100000, 31465 NSTCS_FADEINOUTEXPANDOS = 0x200000, 31466 NSTCS_EMPTYTEXT = 0x400000, 31467 NSTCS_CHECKBOXES = 0x800000, 31468 NSTCS_PARTIALCHECKBOXES = 0x1000000, 31469 NSTCS_EXCLUSIONCHECKBOXES = 0x2000000, 31470 NSTCS_DIMMEDCHECKBOXES = 0x4000000, 31471 NSTCS_NOINDENTCHECKS = 0x8000000, 31472 NSTCS_ALLOWJUNCTIONS = 0x10000000, 31473 NSTCS_SHOWTABSBUTTON = 0x20000000, 31474 NSTCS_SHOWDELETEBUTTON = 0x40000000, 31475 NSTCS_SHOWREFRESHBUTTON = (int)0x80000000 31476 }; 31477 31478 31479 typedef DWORD NSTCSTYLE; 31480 31481 enum _NSTCROOTSTYLE { 31482 NSTCRS_VISIBLE = 0x0, 31483 NSTCRS_HIDDEN = 0x1, 31484 NSTCRS_EXPANDED = 0x2 31485 }; 31486 31487 31488 typedef DWORD NSTCROOTSTYLE; 31489 31490 enum _NSTCITEMSTATE { 31491 NSTCIS_NONE = 0x0, 31492 NSTCIS_SELECTED = 0x1, 31493 NSTCIS_EXPANDED = 0x2, 31494 NSTCIS_BOLD = 0x4, 31495 NSTCIS_DISABLED = 0x8, 31496 NSTCIS_SELECTEDNOEXPAND = 0x10 31497 }; 31498 31499 31500 typedef DWORD NSTCITEMSTATE; 31501 31502 typedef enum NSTCGNI { 31503 NSTCGNI_NEXT = 0, 31504 NSTCGNI_NEXTVISIBLE = 1, 31505 NSTCGNI_PREV = 2, 31506 NSTCGNI_PREVVISIBLE = 3, 31507 NSTCGNI_PARENT = 4, 31508 NSTCGNI_CHILD = 5, 31509 NSTCGNI_FIRSTVISIBLE = 6, 31510 NSTCGNI_LASTVISIBLE = 7 31511 } NSTCGNI; 31512 31513 DEFINE_GUID(IID_INameSpaceTreeControl, 0x028212a3, 0xb627, 0x47e9, 0x88,0x56, 0xc1,0x42,0x65,0x55,0x4e,0x4f); 31514 #if defined(__cplusplus) && !defined(CINTERFACE) 31515 MIDL_INTERFACE("028212a3-b627-47e9-8856-c14265554e4f") 31516 INameSpaceTreeControl : public IUnknown 31517 { 31518 virtual HRESULT STDMETHODCALLTYPE Initialize( 31519 HWND hwndParent, 31520 RECT *prc, 31521 NSTCSTYLE nsctsFlags) = 0; 31522 31523 virtual HRESULT STDMETHODCALLTYPE TreeAdvise( 31524 IUnknown *punk, 31525 DWORD *pdwCookie) = 0; 31526 31527 virtual HRESULT STDMETHODCALLTYPE TreeUnadvise( 31528 DWORD dwCookie) = 0; 31529 31530 virtual HRESULT STDMETHODCALLTYPE AppendRoot( 31531 IShellItem *psiRoot, 31532 SHCONTF grfEnumFlags, 31533 NSTCROOTSTYLE grfRootStyle, 31534 IShellItemFilter *pif) = 0; 31535 31536 virtual HRESULT STDMETHODCALLTYPE InsertRoot( 31537 int iIndex, 31538 IShellItem *psiRoot, 31539 SHCONTF grfEnumFlags, 31540 NSTCROOTSTYLE grfRootStyle, 31541 IShellItemFilter *pif) = 0; 31542 31543 virtual HRESULT STDMETHODCALLTYPE RemoveRoot( 31544 IShellItem *psiRoot) = 0; 31545 31546 virtual HRESULT STDMETHODCALLTYPE RemoveAllRoots( 31547 ) = 0; 31548 31549 virtual HRESULT STDMETHODCALLTYPE GetRootItems( 31550 IShellItemArray **ppsiaRootItems) = 0; 31551 31552 virtual HRESULT STDMETHODCALLTYPE SetItemState( 31553 IShellItem *psi, 31554 NSTCITEMSTATE nstcisMask, 31555 NSTCITEMSTATE nstcisFlags) = 0; 31556 31557 virtual HRESULT STDMETHODCALLTYPE GetItemState( 31558 IShellItem *psi, 31559 NSTCITEMSTATE nstcisMask, 31560 NSTCITEMSTATE *pnstcisFlags) = 0; 31561 31562 virtual HRESULT STDMETHODCALLTYPE GetSelectedItems( 31563 IShellItemArray **psiaItems) = 0; 31564 31565 virtual HRESULT STDMETHODCALLTYPE GetItemCustomState( 31566 IShellItem *psi, 31567 int *piStateNumber) = 0; 31568 31569 virtual HRESULT STDMETHODCALLTYPE SetItemCustomState( 31570 IShellItem *psi, 31571 int iStateNumber) = 0; 31572 31573 virtual HRESULT STDMETHODCALLTYPE EnsureItemVisible( 31574 IShellItem *psi) = 0; 31575 31576 virtual HRESULT STDMETHODCALLTYPE SetTheme( 31577 LPCWSTR pszTheme) = 0; 31578 31579 virtual HRESULT STDMETHODCALLTYPE GetNextItem( 31580 IShellItem *psi, 31581 NSTCGNI nstcgi, 31582 IShellItem **ppsiNext) = 0; 31583 31584 virtual HRESULT STDMETHODCALLTYPE HitTest( 31585 POINT *ppt, 31586 IShellItem **ppsiOut) = 0; 31587 31588 virtual HRESULT STDMETHODCALLTYPE GetItemRect( 31589 IShellItem *psi, 31590 RECT *prect) = 0; 31591 31592 virtual HRESULT STDMETHODCALLTYPE CollapseAll( 31593 ) = 0; 31594 31595 }; 31596 #ifdef __CRT_UUID_DECL 31597 __CRT_UUID_DECL(INameSpaceTreeControl, 0x028212a3, 0xb627, 0x47e9, 0x88,0x56, 0xc1,0x42,0x65,0x55,0x4e,0x4f) 31598 #endif 31599 #else 31600 typedef struct INameSpaceTreeControlVtbl { 31601 BEGIN_INTERFACE 31602 31603 /*** IUnknown methods ***/ 31604 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 31605 INameSpaceTreeControl* This, 31606 REFIID riid, 31607 void **ppvObject); 31608 31609 ULONG (STDMETHODCALLTYPE *AddRef)( 31610 INameSpaceTreeControl* This); 31611 31612 ULONG (STDMETHODCALLTYPE *Release)( 31613 INameSpaceTreeControl* This); 31614 31615 /*** INameSpaceTreeControl methods ***/ 31616 HRESULT (STDMETHODCALLTYPE *Initialize)( 31617 INameSpaceTreeControl* This, 31618 HWND hwndParent, 31619 RECT *prc, 31620 NSTCSTYLE nsctsFlags); 31621 31622 HRESULT (STDMETHODCALLTYPE *TreeAdvise)( 31623 INameSpaceTreeControl* This, 31624 IUnknown *punk, 31625 DWORD *pdwCookie); 31626 31627 HRESULT (STDMETHODCALLTYPE *TreeUnadvise)( 31628 INameSpaceTreeControl* This, 31629 DWORD dwCookie); 31630 31631 HRESULT (STDMETHODCALLTYPE *AppendRoot)( 31632 INameSpaceTreeControl* This, 31633 IShellItem *psiRoot, 31634 SHCONTF grfEnumFlags, 31635 NSTCROOTSTYLE grfRootStyle, 31636 IShellItemFilter *pif); 31637 31638 HRESULT (STDMETHODCALLTYPE *InsertRoot)( 31639 INameSpaceTreeControl* This, 31640 int iIndex, 31641 IShellItem *psiRoot, 31642 SHCONTF grfEnumFlags, 31643 NSTCROOTSTYLE grfRootStyle, 31644 IShellItemFilter *pif); 31645 31646 HRESULT (STDMETHODCALLTYPE *RemoveRoot)( 31647 INameSpaceTreeControl* This, 31648 IShellItem *psiRoot); 31649 31650 HRESULT (STDMETHODCALLTYPE *RemoveAllRoots)( 31651 INameSpaceTreeControl* This); 31652 31653 HRESULT (STDMETHODCALLTYPE *GetRootItems)( 31654 INameSpaceTreeControl* This, 31655 IShellItemArray **ppsiaRootItems); 31656 31657 HRESULT (STDMETHODCALLTYPE *SetItemState)( 31658 INameSpaceTreeControl* This, 31659 IShellItem *psi, 31660 NSTCITEMSTATE nstcisMask, 31661 NSTCITEMSTATE nstcisFlags); 31662 31663 HRESULT (STDMETHODCALLTYPE *GetItemState)( 31664 INameSpaceTreeControl* This, 31665 IShellItem *psi, 31666 NSTCITEMSTATE nstcisMask, 31667 NSTCITEMSTATE *pnstcisFlags); 31668 31669 HRESULT (STDMETHODCALLTYPE *GetSelectedItems)( 31670 INameSpaceTreeControl* This, 31671 IShellItemArray **psiaItems); 31672 31673 HRESULT (STDMETHODCALLTYPE *GetItemCustomState)( 31674 INameSpaceTreeControl* This, 31675 IShellItem *psi, 31676 int *piStateNumber); 31677 31678 HRESULT (STDMETHODCALLTYPE *SetItemCustomState)( 31679 INameSpaceTreeControl* This, 31680 IShellItem *psi, 31681 int iStateNumber); 31682 31683 HRESULT (STDMETHODCALLTYPE *EnsureItemVisible)( 31684 INameSpaceTreeControl* This, 31685 IShellItem *psi); 31686 31687 HRESULT (STDMETHODCALLTYPE *SetTheme)( 31688 INameSpaceTreeControl* This, 31689 LPCWSTR pszTheme); 31690 31691 HRESULT (STDMETHODCALLTYPE *GetNextItem)( 31692 INameSpaceTreeControl* This, 31693 IShellItem *psi, 31694 NSTCGNI nstcgi, 31695 IShellItem **ppsiNext); 31696 31697 HRESULT (STDMETHODCALLTYPE *HitTest)( 31698 INameSpaceTreeControl* This, 31699 POINT *ppt, 31700 IShellItem **ppsiOut); 31701 31702 HRESULT (STDMETHODCALLTYPE *GetItemRect)( 31703 INameSpaceTreeControl* This, 31704 IShellItem *psi, 31705 RECT *prect); 31706 31707 HRESULT (STDMETHODCALLTYPE *CollapseAll)( 31708 INameSpaceTreeControl* This); 31709 31710 END_INTERFACE 31711 } INameSpaceTreeControlVtbl; 31712 interface INameSpaceTreeControl { 31713 CONST_VTBL INameSpaceTreeControlVtbl* lpVtbl; 31714 }; 31715 31716 #ifdef COBJMACROS 31717 #ifndef WIDL_C_INLINE_WRAPPERS 31718 /*** IUnknown methods ***/ 31719 #define INameSpaceTreeControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 31720 #define INameSpaceTreeControl_AddRef(This) (This)->lpVtbl->AddRef(This) 31721 #define INameSpaceTreeControl_Release(This) (This)->lpVtbl->Release(This) 31722 /*** INameSpaceTreeControl methods ***/ 31723 #define INameSpaceTreeControl_Initialize(This,hwndParent,prc,nsctsFlags) (This)->lpVtbl->Initialize(This,hwndParent,prc,nsctsFlags) 31724 #define INameSpaceTreeControl_TreeAdvise(This,punk,pdwCookie) (This)->lpVtbl->TreeAdvise(This,punk,pdwCookie) 31725 #define INameSpaceTreeControl_TreeUnadvise(This,dwCookie) (This)->lpVtbl->TreeUnadvise(This,dwCookie) 31726 #define INameSpaceTreeControl_AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif) (This)->lpVtbl->AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif) 31727 #define INameSpaceTreeControl_InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif) (This)->lpVtbl->InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif) 31728 #define INameSpaceTreeControl_RemoveRoot(This,psiRoot) (This)->lpVtbl->RemoveRoot(This,psiRoot) 31729 #define INameSpaceTreeControl_RemoveAllRoots(This) (This)->lpVtbl->RemoveAllRoots(This) 31730 #define INameSpaceTreeControl_GetRootItems(This,ppsiaRootItems) (This)->lpVtbl->GetRootItems(This,ppsiaRootItems) 31731 #define INameSpaceTreeControl_SetItemState(This,psi,nstcisMask,nstcisFlags) (This)->lpVtbl->SetItemState(This,psi,nstcisMask,nstcisFlags) 31732 #define INameSpaceTreeControl_GetItemState(This,psi,nstcisMask,pnstcisFlags) (This)->lpVtbl->GetItemState(This,psi,nstcisMask,pnstcisFlags) 31733 #define INameSpaceTreeControl_GetSelectedItems(This,psiaItems) (This)->lpVtbl->GetSelectedItems(This,psiaItems) 31734 #define INameSpaceTreeControl_GetItemCustomState(This,psi,piStateNumber) (This)->lpVtbl->GetItemCustomState(This,psi,piStateNumber) 31735 #define INameSpaceTreeControl_SetItemCustomState(This,psi,iStateNumber) (This)->lpVtbl->SetItemCustomState(This,psi,iStateNumber) 31736 #define INameSpaceTreeControl_EnsureItemVisible(This,psi) (This)->lpVtbl->EnsureItemVisible(This,psi) 31737 #define INameSpaceTreeControl_SetTheme(This,pszTheme) (This)->lpVtbl->SetTheme(This,pszTheme) 31738 #define INameSpaceTreeControl_GetNextItem(This,psi,nstcgi,ppsiNext) (This)->lpVtbl->GetNextItem(This,psi,nstcgi,ppsiNext) 31739 #define INameSpaceTreeControl_HitTest(This,ppt,ppsiOut) (This)->lpVtbl->HitTest(This,ppt,ppsiOut) 31740 #define INameSpaceTreeControl_GetItemRect(This,psi,prect) (This)->lpVtbl->GetItemRect(This,psi,prect) 31741 #define INameSpaceTreeControl_CollapseAll(This) (This)->lpVtbl->CollapseAll(This) 31742 #else 31743 /*** IUnknown methods ***/ 31744 static FORCEINLINE HRESULT INameSpaceTreeControl_QueryInterface(INameSpaceTreeControl* This,REFIID riid,void **ppvObject) { 31745 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 31746 } 31747 static FORCEINLINE ULONG INameSpaceTreeControl_AddRef(INameSpaceTreeControl* This) { 31748 return This->lpVtbl->AddRef(This); 31749 } 31750 static FORCEINLINE ULONG INameSpaceTreeControl_Release(INameSpaceTreeControl* This) { 31751 return This->lpVtbl->Release(This); 31752 } 31753 /*** INameSpaceTreeControl methods ***/ 31754 static FORCEINLINE HRESULT INameSpaceTreeControl_Initialize(INameSpaceTreeControl* This,HWND hwndParent,RECT *prc,NSTCSTYLE nsctsFlags) { 31755 return This->lpVtbl->Initialize(This,hwndParent,prc,nsctsFlags); 31756 } 31757 static FORCEINLINE HRESULT INameSpaceTreeControl_TreeAdvise(INameSpaceTreeControl* This,IUnknown *punk,DWORD *pdwCookie) { 31758 return This->lpVtbl->TreeAdvise(This,punk,pdwCookie); 31759 } 31760 static FORCEINLINE HRESULT INameSpaceTreeControl_TreeUnadvise(INameSpaceTreeControl* This,DWORD dwCookie) { 31761 return This->lpVtbl->TreeUnadvise(This,dwCookie); 31762 } 31763 static FORCEINLINE HRESULT INameSpaceTreeControl_AppendRoot(INameSpaceTreeControl* This,IShellItem *psiRoot,SHCONTF grfEnumFlags,NSTCROOTSTYLE grfRootStyle,IShellItemFilter *pif) { 31764 return This->lpVtbl->AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif); 31765 } 31766 static FORCEINLINE HRESULT INameSpaceTreeControl_InsertRoot(INameSpaceTreeControl* This,int iIndex,IShellItem *psiRoot,SHCONTF grfEnumFlags,NSTCROOTSTYLE grfRootStyle,IShellItemFilter *pif) { 31767 return This->lpVtbl->InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif); 31768 } 31769 static FORCEINLINE HRESULT INameSpaceTreeControl_RemoveRoot(INameSpaceTreeControl* This,IShellItem *psiRoot) { 31770 return This->lpVtbl->RemoveRoot(This,psiRoot); 31771 } 31772 static FORCEINLINE HRESULT INameSpaceTreeControl_RemoveAllRoots(INameSpaceTreeControl* This) { 31773 return This->lpVtbl->RemoveAllRoots(This); 31774 } 31775 static FORCEINLINE HRESULT INameSpaceTreeControl_GetRootItems(INameSpaceTreeControl* This,IShellItemArray **ppsiaRootItems) { 31776 return This->lpVtbl->GetRootItems(This,ppsiaRootItems); 31777 } 31778 static FORCEINLINE HRESULT INameSpaceTreeControl_SetItemState(INameSpaceTreeControl* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE nstcisFlags) { 31779 return This->lpVtbl->SetItemState(This,psi,nstcisMask,nstcisFlags); 31780 } 31781 static FORCEINLINE HRESULT INameSpaceTreeControl_GetItemState(INameSpaceTreeControl* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE *pnstcisFlags) { 31782 return This->lpVtbl->GetItemState(This,psi,nstcisMask,pnstcisFlags); 31783 } 31784 static FORCEINLINE HRESULT INameSpaceTreeControl_GetSelectedItems(INameSpaceTreeControl* This,IShellItemArray **psiaItems) { 31785 return This->lpVtbl->GetSelectedItems(This,psiaItems); 31786 } 31787 static FORCEINLINE HRESULT INameSpaceTreeControl_GetItemCustomState(INameSpaceTreeControl* This,IShellItem *psi,int *piStateNumber) { 31788 return This->lpVtbl->GetItemCustomState(This,psi,piStateNumber); 31789 } 31790 static FORCEINLINE HRESULT INameSpaceTreeControl_SetItemCustomState(INameSpaceTreeControl* This,IShellItem *psi,int iStateNumber) { 31791 return This->lpVtbl->SetItemCustomState(This,psi,iStateNumber); 31792 } 31793 static FORCEINLINE HRESULT INameSpaceTreeControl_EnsureItemVisible(INameSpaceTreeControl* This,IShellItem *psi) { 31794 return This->lpVtbl->EnsureItemVisible(This,psi); 31795 } 31796 static FORCEINLINE HRESULT INameSpaceTreeControl_SetTheme(INameSpaceTreeControl* This,LPCWSTR pszTheme) { 31797 return This->lpVtbl->SetTheme(This,pszTheme); 31798 } 31799 static FORCEINLINE HRESULT INameSpaceTreeControl_GetNextItem(INameSpaceTreeControl* This,IShellItem *psi,NSTCGNI nstcgi,IShellItem **ppsiNext) { 31800 return This->lpVtbl->GetNextItem(This,psi,nstcgi,ppsiNext); 31801 } 31802 static FORCEINLINE HRESULT INameSpaceTreeControl_HitTest(INameSpaceTreeControl* This,POINT *ppt,IShellItem **ppsiOut) { 31803 return This->lpVtbl->HitTest(This,ppt,ppsiOut); 31804 } 31805 static FORCEINLINE HRESULT INameSpaceTreeControl_GetItemRect(INameSpaceTreeControl* This,IShellItem *psi,RECT *prect) { 31806 return This->lpVtbl->GetItemRect(This,psi,prect); 31807 } 31808 static FORCEINLINE HRESULT INameSpaceTreeControl_CollapseAll(INameSpaceTreeControl* This) { 31809 return This->lpVtbl->CollapseAll(This); 31810 } 31811 #endif 31812 #endif 31813 31814 #endif 31815 31816 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_Initialize_Proxy( 31817 INameSpaceTreeControl* This, 31818 HWND hwndParent, 31819 RECT *prc, 31820 NSTCSTYLE nsctsFlags); 31821 void __RPC_STUB INameSpaceTreeControl_Initialize_Stub( 31822 IRpcStubBuffer* This, 31823 IRpcChannelBuffer* pRpcChannelBuffer, 31824 PRPC_MESSAGE pRpcMessage, 31825 DWORD* pdwStubPhase); 31826 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_TreeAdvise_Proxy( 31827 INameSpaceTreeControl* This, 31828 IUnknown *punk, 31829 DWORD *pdwCookie); 31830 void __RPC_STUB INameSpaceTreeControl_TreeAdvise_Stub( 31831 IRpcStubBuffer* This, 31832 IRpcChannelBuffer* pRpcChannelBuffer, 31833 PRPC_MESSAGE pRpcMessage, 31834 DWORD* pdwStubPhase); 31835 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_TreeUnadvise_Proxy( 31836 INameSpaceTreeControl* This, 31837 DWORD dwCookie); 31838 void __RPC_STUB INameSpaceTreeControl_TreeUnadvise_Stub( 31839 IRpcStubBuffer* This, 31840 IRpcChannelBuffer* pRpcChannelBuffer, 31841 PRPC_MESSAGE pRpcMessage, 31842 DWORD* pdwStubPhase); 31843 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_AppendRoot_Proxy( 31844 INameSpaceTreeControl* This, 31845 IShellItem *psiRoot, 31846 SHCONTF grfEnumFlags, 31847 NSTCROOTSTYLE grfRootStyle, 31848 IShellItemFilter *pif); 31849 void __RPC_STUB INameSpaceTreeControl_AppendRoot_Stub( 31850 IRpcStubBuffer* This, 31851 IRpcChannelBuffer* pRpcChannelBuffer, 31852 PRPC_MESSAGE pRpcMessage, 31853 DWORD* pdwStubPhase); 31854 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_InsertRoot_Proxy( 31855 INameSpaceTreeControl* This, 31856 int iIndex, 31857 IShellItem *psiRoot, 31858 SHCONTF grfEnumFlags, 31859 NSTCROOTSTYLE grfRootStyle, 31860 IShellItemFilter *pif); 31861 void __RPC_STUB INameSpaceTreeControl_InsertRoot_Stub( 31862 IRpcStubBuffer* This, 31863 IRpcChannelBuffer* pRpcChannelBuffer, 31864 PRPC_MESSAGE pRpcMessage, 31865 DWORD* pdwStubPhase); 31866 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_RemoveRoot_Proxy( 31867 INameSpaceTreeControl* This, 31868 IShellItem *psiRoot); 31869 void __RPC_STUB INameSpaceTreeControl_RemoveRoot_Stub( 31870 IRpcStubBuffer* This, 31871 IRpcChannelBuffer* pRpcChannelBuffer, 31872 PRPC_MESSAGE pRpcMessage, 31873 DWORD* pdwStubPhase); 31874 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_RemoveAllRoots_Proxy( 31875 INameSpaceTreeControl* This); 31876 void __RPC_STUB INameSpaceTreeControl_RemoveAllRoots_Stub( 31877 IRpcStubBuffer* This, 31878 IRpcChannelBuffer* pRpcChannelBuffer, 31879 PRPC_MESSAGE pRpcMessage, 31880 DWORD* pdwStubPhase); 31881 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_GetRootItems_Proxy( 31882 INameSpaceTreeControl* This, 31883 IShellItemArray **ppsiaRootItems); 31884 void __RPC_STUB INameSpaceTreeControl_GetRootItems_Stub( 31885 IRpcStubBuffer* This, 31886 IRpcChannelBuffer* pRpcChannelBuffer, 31887 PRPC_MESSAGE pRpcMessage, 31888 DWORD* pdwStubPhase); 31889 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_SetItemState_Proxy( 31890 INameSpaceTreeControl* This, 31891 IShellItem *psi, 31892 NSTCITEMSTATE nstcisMask, 31893 NSTCITEMSTATE nstcisFlags); 31894 void __RPC_STUB INameSpaceTreeControl_SetItemState_Stub( 31895 IRpcStubBuffer* This, 31896 IRpcChannelBuffer* pRpcChannelBuffer, 31897 PRPC_MESSAGE pRpcMessage, 31898 DWORD* pdwStubPhase); 31899 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_GetItemState_Proxy( 31900 INameSpaceTreeControl* This, 31901 IShellItem *psi, 31902 NSTCITEMSTATE nstcisMask, 31903 NSTCITEMSTATE *pnstcisFlags); 31904 void __RPC_STUB INameSpaceTreeControl_GetItemState_Stub( 31905 IRpcStubBuffer* This, 31906 IRpcChannelBuffer* pRpcChannelBuffer, 31907 PRPC_MESSAGE pRpcMessage, 31908 DWORD* pdwStubPhase); 31909 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_GetSelectedItems_Proxy( 31910 INameSpaceTreeControl* This, 31911 IShellItemArray **psiaItems); 31912 void __RPC_STUB INameSpaceTreeControl_GetSelectedItems_Stub( 31913 IRpcStubBuffer* This, 31914 IRpcChannelBuffer* pRpcChannelBuffer, 31915 PRPC_MESSAGE pRpcMessage, 31916 DWORD* pdwStubPhase); 31917 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_GetItemCustomState_Proxy( 31918 INameSpaceTreeControl* This, 31919 IShellItem *psi, 31920 int *piStateNumber); 31921 void __RPC_STUB INameSpaceTreeControl_GetItemCustomState_Stub( 31922 IRpcStubBuffer* This, 31923 IRpcChannelBuffer* pRpcChannelBuffer, 31924 PRPC_MESSAGE pRpcMessage, 31925 DWORD* pdwStubPhase); 31926 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_SetItemCustomState_Proxy( 31927 INameSpaceTreeControl* This, 31928 IShellItem *psi, 31929 int iStateNumber); 31930 void __RPC_STUB INameSpaceTreeControl_SetItemCustomState_Stub( 31931 IRpcStubBuffer* This, 31932 IRpcChannelBuffer* pRpcChannelBuffer, 31933 PRPC_MESSAGE pRpcMessage, 31934 DWORD* pdwStubPhase); 31935 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_EnsureItemVisible_Proxy( 31936 INameSpaceTreeControl* This, 31937 IShellItem *psi); 31938 void __RPC_STUB INameSpaceTreeControl_EnsureItemVisible_Stub( 31939 IRpcStubBuffer* This, 31940 IRpcChannelBuffer* pRpcChannelBuffer, 31941 PRPC_MESSAGE pRpcMessage, 31942 DWORD* pdwStubPhase); 31943 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_SetTheme_Proxy( 31944 INameSpaceTreeControl* This, 31945 LPCWSTR pszTheme); 31946 void __RPC_STUB INameSpaceTreeControl_SetTheme_Stub( 31947 IRpcStubBuffer* This, 31948 IRpcChannelBuffer* pRpcChannelBuffer, 31949 PRPC_MESSAGE pRpcMessage, 31950 DWORD* pdwStubPhase); 31951 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_GetNextItem_Proxy( 31952 INameSpaceTreeControl* This, 31953 IShellItem *psi, 31954 NSTCGNI nstcgi, 31955 IShellItem **ppsiNext); 31956 void __RPC_STUB INameSpaceTreeControl_GetNextItem_Stub( 31957 IRpcStubBuffer* This, 31958 IRpcChannelBuffer* pRpcChannelBuffer, 31959 PRPC_MESSAGE pRpcMessage, 31960 DWORD* pdwStubPhase); 31961 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_HitTest_Proxy( 31962 INameSpaceTreeControl* This, 31963 POINT *ppt, 31964 IShellItem **ppsiOut); 31965 void __RPC_STUB INameSpaceTreeControl_HitTest_Stub( 31966 IRpcStubBuffer* This, 31967 IRpcChannelBuffer* pRpcChannelBuffer, 31968 PRPC_MESSAGE pRpcMessage, 31969 DWORD* pdwStubPhase); 31970 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_GetItemRect_Proxy( 31971 INameSpaceTreeControl* This, 31972 IShellItem *psi, 31973 RECT *prect); 31974 void __RPC_STUB INameSpaceTreeControl_GetItemRect_Stub( 31975 IRpcStubBuffer* This, 31976 IRpcChannelBuffer* pRpcChannelBuffer, 31977 PRPC_MESSAGE pRpcMessage, 31978 DWORD* pdwStubPhase); 31979 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl_CollapseAll_Proxy( 31980 INameSpaceTreeControl* This); 31981 void __RPC_STUB INameSpaceTreeControl_CollapseAll_Stub( 31982 IRpcStubBuffer* This, 31983 IRpcChannelBuffer* pRpcChannelBuffer, 31984 PRPC_MESSAGE pRpcMessage, 31985 DWORD* pdwStubPhase); 31986 31987 #endif /* __INameSpaceTreeControl_INTERFACE_DEFINED__ */ 31988 31989 31990 /***************************************************************************** 31991 * INameSpaceTreeControl2 interface 31992 */ 31993 #ifndef __INameSpaceTreeControl2_INTERFACE_DEFINED__ 31994 #define __INameSpaceTreeControl2_INTERFACE_DEFINED__ 31995 31996 typedef enum NSTCSTYLE2 { 31997 NSTCS2_DEFAULT = 0x0, 31998 NSTCS2_INTERRUPTNOTIFICATIONS = 0x1, 31999 NSTCS2_SHOWNULLSPACEMENU = 0x2, 32000 NSTCS2_DISPLAYPADDING = 0x4, 32001 NSTCS2_DISPLAYPINNEDONLY = 0x8, 32002 NTSCS2_NOSINGLETONAUTOEXPAND = 0x10, 32003 NTSCS2_NEVERINSERTNONENUMERATED = 0x20 32004 } NSTCSTYLE2; 32005 32006 DEFINE_ENUM_FLAG_OPERATORS(NSTCSTYLE2) 32007 32008 DEFINE_GUID(IID_INameSpaceTreeControl2, 0x7cc7aed8, 0x290e, 0x49bc, 0x89,0x45, 0xc1,0x40,0x1c,0xc9,0x30,0x6c); 32009 #if defined(__cplusplus) && !defined(CINTERFACE) 32010 MIDL_INTERFACE("7cc7aed8-290e-49bc-8945-c1401cc9306c") 32011 INameSpaceTreeControl2 : public INameSpaceTreeControl 32012 { 32013 virtual HRESULT STDMETHODCALLTYPE SetControlStyle( 32014 NSTCSTYLE nstcsMask, 32015 NSTCSTYLE nstcsStyle) = 0; 32016 32017 virtual HRESULT STDMETHODCALLTYPE GetControlStyle( 32018 NSTCSTYLE nstcsMask, 32019 NSTCSTYLE *pnstcsStyle) = 0; 32020 32021 virtual HRESULT STDMETHODCALLTYPE SetControlStyle2( 32022 NSTCSTYLE2 nstcsMask, 32023 NSTCSTYLE2 nstcsStyle) = 0; 32024 32025 virtual HRESULT STDMETHODCALLTYPE GetControlStyle2( 32026 NSTCSTYLE2 nstcsMask, 32027 NSTCSTYLE2 *pnstcsStyle) = 0; 32028 32029 }; 32030 #ifdef __CRT_UUID_DECL 32031 __CRT_UUID_DECL(INameSpaceTreeControl2, 0x7cc7aed8, 0x290e, 0x49bc, 0x89,0x45, 0xc1,0x40,0x1c,0xc9,0x30,0x6c) 32032 #endif 32033 #else 32034 typedef struct INameSpaceTreeControl2Vtbl { 32035 BEGIN_INTERFACE 32036 32037 /*** IUnknown methods ***/ 32038 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 32039 INameSpaceTreeControl2* This, 32040 REFIID riid, 32041 void **ppvObject); 32042 32043 ULONG (STDMETHODCALLTYPE *AddRef)( 32044 INameSpaceTreeControl2* This); 32045 32046 ULONG (STDMETHODCALLTYPE *Release)( 32047 INameSpaceTreeControl2* This); 32048 32049 /*** INameSpaceTreeControl methods ***/ 32050 HRESULT (STDMETHODCALLTYPE *Initialize)( 32051 INameSpaceTreeControl2* This, 32052 HWND hwndParent, 32053 RECT *prc, 32054 NSTCSTYLE nsctsFlags); 32055 32056 HRESULT (STDMETHODCALLTYPE *TreeAdvise)( 32057 INameSpaceTreeControl2* This, 32058 IUnknown *punk, 32059 DWORD *pdwCookie); 32060 32061 HRESULT (STDMETHODCALLTYPE *TreeUnadvise)( 32062 INameSpaceTreeControl2* This, 32063 DWORD dwCookie); 32064 32065 HRESULT (STDMETHODCALLTYPE *AppendRoot)( 32066 INameSpaceTreeControl2* This, 32067 IShellItem *psiRoot, 32068 SHCONTF grfEnumFlags, 32069 NSTCROOTSTYLE grfRootStyle, 32070 IShellItemFilter *pif); 32071 32072 HRESULT (STDMETHODCALLTYPE *InsertRoot)( 32073 INameSpaceTreeControl2* This, 32074 int iIndex, 32075 IShellItem *psiRoot, 32076 SHCONTF grfEnumFlags, 32077 NSTCROOTSTYLE grfRootStyle, 32078 IShellItemFilter *pif); 32079 32080 HRESULT (STDMETHODCALLTYPE *RemoveRoot)( 32081 INameSpaceTreeControl2* This, 32082 IShellItem *psiRoot); 32083 32084 HRESULT (STDMETHODCALLTYPE *RemoveAllRoots)( 32085 INameSpaceTreeControl2* This); 32086 32087 HRESULT (STDMETHODCALLTYPE *GetRootItems)( 32088 INameSpaceTreeControl2* This, 32089 IShellItemArray **ppsiaRootItems); 32090 32091 HRESULT (STDMETHODCALLTYPE *SetItemState)( 32092 INameSpaceTreeControl2* This, 32093 IShellItem *psi, 32094 NSTCITEMSTATE nstcisMask, 32095 NSTCITEMSTATE nstcisFlags); 32096 32097 HRESULT (STDMETHODCALLTYPE *GetItemState)( 32098 INameSpaceTreeControl2* This, 32099 IShellItem *psi, 32100 NSTCITEMSTATE nstcisMask, 32101 NSTCITEMSTATE *pnstcisFlags); 32102 32103 HRESULT (STDMETHODCALLTYPE *GetSelectedItems)( 32104 INameSpaceTreeControl2* This, 32105 IShellItemArray **psiaItems); 32106 32107 HRESULT (STDMETHODCALLTYPE *GetItemCustomState)( 32108 INameSpaceTreeControl2* This, 32109 IShellItem *psi, 32110 int *piStateNumber); 32111 32112 HRESULT (STDMETHODCALLTYPE *SetItemCustomState)( 32113 INameSpaceTreeControl2* This, 32114 IShellItem *psi, 32115 int iStateNumber); 32116 32117 HRESULT (STDMETHODCALLTYPE *EnsureItemVisible)( 32118 INameSpaceTreeControl2* This, 32119 IShellItem *psi); 32120 32121 HRESULT (STDMETHODCALLTYPE *SetTheme)( 32122 INameSpaceTreeControl2* This, 32123 LPCWSTR pszTheme); 32124 32125 HRESULT (STDMETHODCALLTYPE *GetNextItem)( 32126 INameSpaceTreeControl2* This, 32127 IShellItem *psi, 32128 NSTCGNI nstcgi, 32129 IShellItem **ppsiNext); 32130 32131 HRESULT (STDMETHODCALLTYPE *HitTest)( 32132 INameSpaceTreeControl2* This, 32133 POINT *ppt, 32134 IShellItem **ppsiOut); 32135 32136 HRESULT (STDMETHODCALLTYPE *GetItemRect)( 32137 INameSpaceTreeControl2* This, 32138 IShellItem *psi, 32139 RECT *prect); 32140 32141 HRESULT (STDMETHODCALLTYPE *CollapseAll)( 32142 INameSpaceTreeControl2* This); 32143 32144 /*** INameSpaceTreeControl2 methods ***/ 32145 HRESULT (STDMETHODCALLTYPE *SetControlStyle)( 32146 INameSpaceTreeControl2* This, 32147 NSTCSTYLE nstcsMask, 32148 NSTCSTYLE nstcsStyle); 32149 32150 HRESULT (STDMETHODCALLTYPE *GetControlStyle)( 32151 INameSpaceTreeControl2* This, 32152 NSTCSTYLE nstcsMask, 32153 NSTCSTYLE *pnstcsStyle); 32154 32155 HRESULT (STDMETHODCALLTYPE *SetControlStyle2)( 32156 INameSpaceTreeControl2* This, 32157 NSTCSTYLE2 nstcsMask, 32158 NSTCSTYLE2 nstcsStyle); 32159 32160 HRESULT (STDMETHODCALLTYPE *GetControlStyle2)( 32161 INameSpaceTreeControl2* This, 32162 NSTCSTYLE2 nstcsMask, 32163 NSTCSTYLE2 *pnstcsStyle); 32164 32165 END_INTERFACE 32166 } INameSpaceTreeControl2Vtbl; 32167 interface INameSpaceTreeControl2 { 32168 CONST_VTBL INameSpaceTreeControl2Vtbl* lpVtbl; 32169 }; 32170 32171 #ifdef COBJMACROS 32172 #ifndef WIDL_C_INLINE_WRAPPERS 32173 /*** IUnknown methods ***/ 32174 #define INameSpaceTreeControl2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 32175 #define INameSpaceTreeControl2_AddRef(This) (This)->lpVtbl->AddRef(This) 32176 #define INameSpaceTreeControl2_Release(This) (This)->lpVtbl->Release(This) 32177 /*** INameSpaceTreeControl methods ***/ 32178 #define INameSpaceTreeControl2_Initialize(This,hwndParent,prc,nsctsFlags) (This)->lpVtbl->Initialize(This,hwndParent,prc,nsctsFlags) 32179 #define INameSpaceTreeControl2_TreeAdvise(This,punk,pdwCookie) (This)->lpVtbl->TreeAdvise(This,punk,pdwCookie) 32180 #define INameSpaceTreeControl2_TreeUnadvise(This,dwCookie) (This)->lpVtbl->TreeUnadvise(This,dwCookie) 32181 #define INameSpaceTreeControl2_AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif) (This)->lpVtbl->AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif) 32182 #define INameSpaceTreeControl2_InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif) (This)->lpVtbl->InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif) 32183 #define INameSpaceTreeControl2_RemoveRoot(This,psiRoot) (This)->lpVtbl->RemoveRoot(This,psiRoot) 32184 #define INameSpaceTreeControl2_RemoveAllRoots(This) (This)->lpVtbl->RemoveAllRoots(This) 32185 #define INameSpaceTreeControl2_GetRootItems(This,ppsiaRootItems) (This)->lpVtbl->GetRootItems(This,ppsiaRootItems) 32186 #define INameSpaceTreeControl2_SetItemState(This,psi,nstcisMask,nstcisFlags) (This)->lpVtbl->SetItemState(This,psi,nstcisMask,nstcisFlags) 32187 #define INameSpaceTreeControl2_GetItemState(This,psi,nstcisMask,pnstcisFlags) (This)->lpVtbl->GetItemState(This,psi,nstcisMask,pnstcisFlags) 32188 #define INameSpaceTreeControl2_GetSelectedItems(This,psiaItems) (This)->lpVtbl->GetSelectedItems(This,psiaItems) 32189 #define INameSpaceTreeControl2_GetItemCustomState(This,psi,piStateNumber) (This)->lpVtbl->GetItemCustomState(This,psi,piStateNumber) 32190 #define INameSpaceTreeControl2_SetItemCustomState(This,psi,iStateNumber) (This)->lpVtbl->SetItemCustomState(This,psi,iStateNumber) 32191 #define INameSpaceTreeControl2_EnsureItemVisible(This,psi) (This)->lpVtbl->EnsureItemVisible(This,psi) 32192 #define INameSpaceTreeControl2_SetTheme(This,pszTheme) (This)->lpVtbl->SetTheme(This,pszTheme) 32193 #define INameSpaceTreeControl2_GetNextItem(This,psi,nstcgi,ppsiNext) (This)->lpVtbl->GetNextItem(This,psi,nstcgi,ppsiNext) 32194 #define INameSpaceTreeControl2_HitTest(This,ppt,ppsiOut) (This)->lpVtbl->HitTest(This,ppt,ppsiOut) 32195 #define INameSpaceTreeControl2_GetItemRect(This,psi,prect) (This)->lpVtbl->GetItemRect(This,psi,prect) 32196 #define INameSpaceTreeControl2_CollapseAll(This) (This)->lpVtbl->CollapseAll(This) 32197 /*** INameSpaceTreeControl2 methods ***/ 32198 #define INameSpaceTreeControl2_SetControlStyle(This,nstcsMask,nstcsStyle) (This)->lpVtbl->SetControlStyle(This,nstcsMask,nstcsStyle) 32199 #define INameSpaceTreeControl2_GetControlStyle(This,nstcsMask,pnstcsStyle) (This)->lpVtbl->GetControlStyle(This,nstcsMask,pnstcsStyle) 32200 #define INameSpaceTreeControl2_SetControlStyle2(This,nstcsMask,nstcsStyle) (This)->lpVtbl->SetControlStyle2(This,nstcsMask,nstcsStyle) 32201 #define INameSpaceTreeControl2_GetControlStyle2(This,nstcsMask,pnstcsStyle) (This)->lpVtbl->GetControlStyle2(This,nstcsMask,pnstcsStyle) 32202 #else 32203 /*** IUnknown methods ***/ 32204 static FORCEINLINE HRESULT INameSpaceTreeControl2_QueryInterface(INameSpaceTreeControl2* This,REFIID riid,void **ppvObject) { 32205 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 32206 } 32207 static FORCEINLINE ULONG INameSpaceTreeControl2_AddRef(INameSpaceTreeControl2* This) { 32208 return This->lpVtbl->AddRef(This); 32209 } 32210 static FORCEINLINE ULONG INameSpaceTreeControl2_Release(INameSpaceTreeControl2* This) { 32211 return This->lpVtbl->Release(This); 32212 } 32213 /*** INameSpaceTreeControl methods ***/ 32214 static FORCEINLINE HRESULT INameSpaceTreeControl2_Initialize(INameSpaceTreeControl2* This,HWND hwndParent,RECT *prc,NSTCSTYLE nsctsFlags) { 32215 return This->lpVtbl->Initialize(This,hwndParent,prc,nsctsFlags); 32216 } 32217 static FORCEINLINE HRESULT INameSpaceTreeControl2_TreeAdvise(INameSpaceTreeControl2* This,IUnknown *punk,DWORD *pdwCookie) { 32218 return This->lpVtbl->TreeAdvise(This,punk,pdwCookie); 32219 } 32220 static FORCEINLINE HRESULT INameSpaceTreeControl2_TreeUnadvise(INameSpaceTreeControl2* This,DWORD dwCookie) { 32221 return This->lpVtbl->TreeUnadvise(This,dwCookie); 32222 } 32223 static FORCEINLINE HRESULT INameSpaceTreeControl2_AppendRoot(INameSpaceTreeControl2* This,IShellItem *psiRoot,SHCONTF grfEnumFlags,NSTCROOTSTYLE grfRootStyle,IShellItemFilter *pif) { 32224 return This->lpVtbl->AppendRoot(This,psiRoot,grfEnumFlags,grfRootStyle,pif); 32225 } 32226 static FORCEINLINE HRESULT INameSpaceTreeControl2_InsertRoot(INameSpaceTreeControl2* This,int iIndex,IShellItem *psiRoot,SHCONTF grfEnumFlags,NSTCROOTSTYLE grfRootStyle,IShellItemFilter *pif) { 32227 return This->lpVtbl->InsertRoot(This,iIndex,psiRoot,grfEnumFlags,grfRootStyle,pif); 32228 } 32229 static FORCEINLINE HRESULT INameSpaceTreeControl2_RemoveRoot(INameSpaceTreeControl2* This,IShellItem *psiRoot) { 32230 return This->lpVtbl->RemoveRoot(This,psiRoot); 32231 } 32232 static FORCEINLINE HRESULT INameSpaceTreeControl2_RemoveAllRoots(INameSpaceTreeControl2* This) { 32233 return This->lpVtbl->RemoveAllRoots(This); 32234 } 32235 static FORCEINLINE HRESULT INameSpaceTreeControl2_GetRootItems(INameSpaceTreeControl2* This,IShellItemArray **ppsiaRootItems) { 32236 return This->lpVtbl->GetRootItems(This,ppsiaRootItems); 32237 } 32238 static FORCEINLINE HRESULT INameSpaceTreeControl2_SetItemState(INameSpaceTreeControl2* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE nstcisFlags) { 32239 return This->lpVtbl->SetItemState(This,psi,nstcisMask,nstcisFlags); 32240 } 32241 static FORCEINLINE HRESULT INameSpaceTreeControl2_GetItemState(INameSpaceTreeControl2* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE *pnstcisFlags) { 32242 return This->lpVtbl->GetItemState(This,psi,nstcisMask,pnstcisFlags); 32243 } 32244 static FORCEINLINE HRESULT INameSpaceTreeControl2_GetSelectedItems(INameSpaceTreeControl2* This,IShellItemArray **psiaItems) { 32245 return This->lpVtbl->GetSelectedItems(This,psiaItems); 32246 } 32247 static FORCEINLINE HRESULT INameSpaceTreeControl2_GetItemCustomState(INameSpaceTreeControl2* This,IShellItem *psi,int *piStateNumber) { 32248 return This->lpVtbl->GetItemCustomState(This,psi,piStateNumber); 32249 } 32250 static FORCEINLINE HRESULT INameSpaceTreeControl2_SetItemCustomState(INameSpaceTreeControl2* This,IShellItem *psi,int iStateNumber) { 32251 return This->lpVtbl->SetItemCustomState(This,psi,iStateNumber); 32252 } 32253 static FORCEINLINE HRESULT INameSpaceTreeControl2_EnsureItemVisible(INameSpaceTreeControl2* This,IShellItem *psi) { 32254 return This->lpVtbl->EnsureItemVisible(This,psi); 32255 } 32256 static FORCEINLINE HRESULT INameSpaceTreeControl2_SetTheme(INameSpaceTreeControl2* This,LPCWSTR pszTheme) { 32257 return This->lpVtbl->SetTheme(This,pszTheme); 32258 } 32259 static FORCEINLINE HRESULT INameSpaceTreeControl2_GetNextItem(INameSpaceTreeControl2* This,IShellItem *psi,NSTCGNI nstcgi,IShellItem **ppsiNext) { 32260 return This->lpVtbl->GetNextItem(This,psi,nstcgi,ppsiNext); 32261 } 32262 static FORCEINLINE HRESULT INameSpaceTreeControl2_HitTest(INameSpaceTreeControl2* This,POINT *ppt,IShellItem **ppsiOut) { 32263 return This->lpVtbl->HitTest(This,ppt,ppsiOut); 32264 } 32265 static FORCEINLINE HRESULT INameSpaceTreeControl2_GetItemRect(INameSpaceTreeControl2* This,IShellItem *psi,RECT *prect) { 32266 return This->lpVtbl->GetItemRect(This,psi,prect); 32267 } 32268 static FORCEINLINE HRESULT INameSpaceTreeControl2_CollapseAll(INameSpaceTreeControl2* This) { 32269 return This->lpVtbl->CollapseAll(This); 32270 } 32271 /*** INameSpaceTreeControl2 methods ***/ 32272 static FORCEINLINE HRESULT INameSpaceTreeControl2_SetControlStyle(INameSpaceTreeControl2* This,NSTCSTYLE nstcsMask,NSTCSTYLE nstcsStyle) { 32273 return This->lpVtbl->SetControlStyle(This,nstcsMask,nstcsStyle); 32274 } 32275 static FORCEINLINE HRESULT INameSpaceTreeControl2_GetControlStyle(INameSpaceTreeControl2* This,NSTCSTYLE nstcsMask,NSTCSTYLE *pnstcsStyle) { 32276 return This->lpVtbl->GetControlStyle(This,nstcsMask,pnstcsStyle); 32277 } 32278 static FORCEINLINE HRESULT INameSpaceTreeControl2_SetControlStyle2(INameSpaceTreeControl2* This,NSTCSTYLE2 nstcsMask,NSTCSTYLE2 nstcsStyle) { 32279 return This->lpVtbl->SetControlStyle2(This,nstcsMask,nstcsStyle); 32280 } 32281 static FORCEINLINE HRESULT INameSpaceTreeControl2_GetControlStyle2(INameSpaceTreeControl2* This,NSTCSTYLE2 nstcsMask,NSTCSTYLE2 *pnstcsStyle) { 32282 return This->lpVtbl->GetControlStyle2(This,nstcsMask,pnstcsStyle); 32283 } 32284 #endif 32285 #endif 32286 32287 #endif 32288 32289 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl2_SetControlStyle_Proxy( 32290 INameSpaceTreeControl2* This, 32291 NSTCSTYLE nstcsMask, 32292 NSTCSTYLE nstcsStyle); 32293 void __RPC_STUB INameSpaceTreeControl2_SetControlStyle_Stub( 32294 IRpcStubBuffer* This, 32295 IRpcChannelBuffer* pRpcChannelBuffer, 32296 PRPC_MESSAGE pRpcMessage, 32297 DWORD* pdwStubPhase); 32298 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl2_GetControlStyle_Proxy( 32299 INameSpaceTreeControl2* This, 32300 NSTCSTYLE nstcsMask, 32301 NSTCSTYLE *pnstcsStyle); 32302 void __RPC_STUB INameSpaceTreeControl2_GetControlStyle_Stub( 32303 IRpcStubBuffer* This, 32304 IRpcChannelBuffer* pRpcChannelBuffer, 32305 PRPC_MESSAGE pRpcMessage, 32306 DWORD* pdwStubPhase); 32307 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl2_SetControlStyle2_Proxy( 32308 INameSpaceTreeControl2* This, 32309 NSTCSTYLE2 nstcsMask, 32310 NSTCSTYLE2 nstcsStyle); 32311 void __RPC_STUB INameSpaceTreeControl2_SetControlStyle2_Stub( 32312 IRpcStubBuffer* This, 32313 IRpcChannelBuffer* pRpcChannelBuffer, 32314 PRPC_MESSAGE pRpcMessage, 32315 DWORD* pdwStubPhase); 32316 HRESULT STDMETHODCALLTYPE INameSpaceTreeControl2_GetControlStyle2_Proxy( 32317 INameSpaceTreeControl2* This, 32318 NSTCSTYLE2 nstcsMask, 32319 NSTCSTYLE2 *pnstcsStyle); 32320 void __RPC_STUB INameSpaceTreeControl2_GetControlStyle2_Stub( 32321 IRpcStubBuffer* This, 32322 IRpcChannelBuffer* pRpcChannelBuffer, 32323 PRPC_MESSAGE pRpcMessage, 32324 DWORD* pdwStubPhase); 32325 32326 #endif /* __INameSpaceTreeControl2_INTERFACE_DEFINED__ */ 32327 32328 32329 #define NSTCS2_ALLMASK (NSTCS2_INTERRUPTNOTIFICATIONS | NSTCS2_SHOWNULLSPACEMENU | NSTCS2_DISPLAYPADDING) 32330 #define SID_SNavigationPane IID_INameSpaceTreeControl 32331 32332 #define ISLBUTTON(x) (NSTCECT_LBUTTON == ((x) & NSTCECT_BUTTON)) 32333 #define ISMBUTTON(x) (NSTCECT_MBUTTON == ((x) & NSTCECT_BUTTON)) 32334 #define ISRBUTTON(x) (NSTCECT_RBUTTON == ((x) & NSTCECT_BUTTON)) 32335 #define ISDBLCLICK(x) (NSTCECT_DBLCLICK == ((x) & NSTCECT_DBLCLICK)) 32336 32337 /***************************************************************************** 32338 * INameSpaceTreeControlEvents interface 32339 */ 32340 #ifndef __INameSpaceTreeControlEvents_INTERFACE_DEFINED__ 32341 #define __INameSpaceTreeControlEvents_INTERFACE_DEFINED__ 32342 32343 enum _NSTCEHITTEST { 32344 NSTCEHT_NOWHERE = 0x1, 32345 NSTCEHT_ONITEMICON = 0x2, 32346 NSTCEHT_ONITEMLABEL = 0x4, 32347 NSTCEHT_ONITEMINDENT = 0x8, 32348 NSTCEHT_ONITEMBUTTON = 0x10, 32349 NSTCEHT_ONITEMRIGHT = 0x20, 32350 NSTCEHT_ONITEMSTATEICON = 0x40, 32351 NSTCEHT_ONITEM = 0x46, 32352 NSTCEHT_ONITEMTABBUTTON = 0x1000 32353 }; 32354 32355 32356 typedef DWORD NSTCEHITTEST; 32357 32358 enum _NSTCECLICKTYPE { 32359 NSTCECT_LBUTTON = 0x1, 32360 NSTCECT_MBUTTON = 0x2, 32361 NSTCECT_RBUTTON = 0x3, 32362 NSTCECT_BUTTON = 0x3, 32363 NSTCECT_DBLCLICK = 0x4 32364 }; 32365 32366 32367 typedef DWORD NSTCECLICKTYPE; 32368 32369 DEFINE_GUID(IID_INameSpaceTreeControlEvents, 0x93d77985, 0xb3d8, 0x4484, 0x83,0x18, 0x67,0x2c,0xdd,0xa0,0x02,0xce); 32370 #if defined(__cplusplus) && !defined(CINTERFACE) 32371 MIDL_INTERFACE("93d77985-b3d8-4484-8318-672cdda002ce") 32372 INameSpaceTreeControlEvents : public IUnknown 32373 { 32374 virtual HRESULT STDMETHODCALLTYPE OnItemClick( 32375 IShellItem *psi, 32376 NSTCEHITTEST nstceHitTest, 32377 NSTCECLICKTYPE nstceClickType) = 0; 32378 32379 virtual HRESULT STDMETHODCALLTYPE OnPropertyItemCommit( 32380 IShellItem *psi) = 0; 32381 32382 virtual HRESULT STDMETHODCALLTYPE OnItemStateChanging( 32383 IShellItem *psi, 32384 NSTCITEMSTATE nstcisMask, 32385 NSTCITEMSTATE nstcisState) = 0; 32386 32387 virtual HRESULT STDMETHODCALLTYPE OnItemStateChanged( 32388 IShellItem *psi, 32389 NSTCITEMSTATE nstcisMask, 32390 NSTCITEMSTATE nstcisState) = 0; 32391 32392 virtual HRESULT STDMETHODCALLTYPE OnSelectionChanged( 32393 IShellItemArray *psiaSelection) = 0; 32394 32395 virtual HRESULT STDMETHODCALLTYPE OnKeyboardInput( 32396 UINT uMsg, 32397 WPARAM wParam, 32398 LPARAM lParam) = 0; 32399 32400 virtual HRESULT STDMETHODCALLTYPE OnBeforeExpand( 32401 IShellItem *psi) = 0; 32402 32403 virtual HRESULT STDMETHODCALLTYPE OnAfterExpand( 32404 IShellItem *psi) = 0; 32405 32406 virtual HRESULT STDMETHODCALLTYPE OnBeginLabelEdit( 32407 IShellItem *psi) = 0; 32408 32409 virtual HRESULT STDMETHODCALLTYPE OnEndLabelEdit( 32410 IShellItem *psi) = 0; 32411 32412 virtual HRESULT STDMETHODCALLTYPE OnGetToolTip( 32413 IShellItem *psi, 32414 LPWSTR pszTip, 32415 int cchTip) = 0; 32416 32417 virtual HRESULT STDMETHODCALLTYPE OnBeforeItemDelete( 32418 IShellItem *psi) = 0; 32419 32420 virtual HRESULT STDMETHODCALLTYPE OnItemAdded( 32421 IShellItem *psi, 32422 WINBOOL fIsRoot) = 0; 32423 32424 virtual HRESULT STDMETHODCALLTYPE OnItemDeleted( 32425 IShellItem *psi, 32426 WINBOOL fIsRoot) = 0; 32427 32428 virtual HRESULT STDMETHODCALLTYPE OnBeforeContextMenu( 32429 IShellItem *psi, 32430 REFIID riid, 32431 void **ppv) = 0; 32432 32433 virtual HRESULT STDMETHODCALLTYPE OnAfterContextMenu( 32434 IShellItem *psi, 32435 IContextMenu *pcmIn, 32436 REFIID riid, 32437 void **ppv) = 0; 32438 32439 virtual HRESULT STDMETHODCALLTYPE OnBeforeStateImageChange( 32440 IShellItem *psi) = 0; 32441 32442 virtual HRESULT STDMETHODCALLTYPE OnGetDefaultIconIndex( 32443 IShellItem *psi, 32444 int *piDefaultIcon, 32445 int *piOpenIcon) = 0; 32446 32447 }; 32448 #ifdef __CRT_UUID_DECL 32449 __CRT_UUID_DECL(INameSpaceTreeControlEvents, 0x93d77985, 0xb3d8, 0x4484, 0x83,0x18, 0x67,0x2c,0xdd,0xa0,0x02,0xce) 32450 #endif 32451 #else 32452 typedef struct INameSpaceTreeControlEventsVtbl { 32453 BEGIN_INTERFACE 32454 32455 /*** IUnknown methods ***/ 32456 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 32457 INameSpaceTreeControlEvents* This, 32458 REFIID riid, 32459 void **ppvObject); 32460 32461 ULONG (STDMETHODCALLTYPE *AddRef)( 32462 INameSpaceTreeControlEvents* This); 32463 32464 ULONG (STDMETHODCALLTYPE *Release)( 32465 INameSpaceTreeControlEvents* This); 32466 32467 /*** INameSpaceTreeControlEvents methods ***/ 32468 HRESULT (STDMETHODCALLTYPE *OnItemClick)( 32469 INameSpaceTreeControlEvents* This, 32470 IShellItem *psi, 32471 NSTCEHITTEST nstceHitTest, 32472 NSTCECLICKTYPE nstceClickType); 32473 32474 HRESULT (STDMETHODCALLTYPE *OnPropertyItemCommit)( 32475 INameSpaceTreeControlEvents* This, 32476 IShellItem *psi); 32477 32478 HRESULT (STDMETHODCALLTYPE *OnItemStateChanging)( 32479 INameSpaceTreeControlEvents* This, 32480 IShellItem *psi, 32481 NSTCITEMSTATE nstcisMask, 32482 NSTCITEMSTATE nstcisState); 32483 32484 HRESULT (STDMETHODCALLTYPE *OnItemStateChanged)( 32485 INameSpaceTreeControlEvents* This, 32486 IShellItem *psi, 32487 NSTCITEMSTATE nstcisMask, 32488 NSTCITEMSTATE nstcisState); 32489 32490 HRESULT (STDMETHODCALLTYPE *OnSelectionChanged)( 32491 INameSpaceTreeControlEvents* This, 32492 IShellItemArray *psiaSelection); 32493 32494 HRESULT (STDMETHODCALLTYPE *OnKeyboardInput)( 32495 INameSpaceTreeControlEvents* This, 32496 UINT uMsg, 32497 WPARAM wParam, 32498 LPARAM lParam); 32499 32500 HRESULT (STDMETHODCALLTYPE *OnBeforeExpand)( 32501 INameSpaceTreeControlEvents* This, 32502 IShellItem *psi); 32503 32504 HRESULT (STDMETHODCALLTYPE *OnAfterExpand)( 32505 INameSpaceTreeControlEvents* This, 32506 IShellItem *psi); 32507 32508 HRESULT (STDMETHODCALLTYPE *OnBeginLabelEdit)( 32509 INameSpaceTreeControlEvents* This, 32510 IShellItem *psi); 32511 32512 HRESULT (STDMETHODCALLTYPE *OnEndLabelEdit)( 32513 INameSpaceTreeControlEvents* This, 32514 IShellItem *psi); 32515 32516 HRESULT (STDMETHODCALLTYPE *OnGetToolTip)( 32517 INameSpaceTreeControlEvents* This, 32518 IShellItem *psi, 32519 LPWSTR pszTip, 32520 int cchTip); 32521 32522 HRESULT (STDMETHODCALLTYPE *OnBeforeItemDelete)( 32523 INameSpaceTreeControlEvents* This, 32524 IShellItem *psi); 32525 32526 HRESULT (STDMETHODCALLTYPE *OnItemAdded)( 32527 INameSpaceTreeControlEvents* This, 32528 IShellItem *psi, 32529 WINBOOL fIsRoot); 32530 32531 HRESULT (STDMETHODCALLTYPE *OnItemDeleted)( 32532 INameSpaceTreeControlEvents* This, 32533 IShellItem *psi, 32534 WINBOOL fIsRoot); 32535 32536 HRESULT (STDMETHODCALLTYPE *OnBeforeContextMenu)( 32537 INameSpaceTreeControlEvents* This, 32538 IShellItem *psi, 32539 REFIID riid, 32540 void **ppv); 32541 32542 HRESULT (STDMETHODCALLTYPE *OnAfterContextMenu)( 32543 INameSpaceTreeControlEvents* This, 32544 IShellItem *psi, 32545 IContextMenu *pcmIn, 32546 REFIID riid, 32547 void **ppv); 32548 32549 HRESULT (STDMETHODCALLTYPE *OnBeforeStateImageChange)( 32550 INameSpaceTreeControlEvents* This, 32551 IShellItem *psi); 32552 32553 HRESULT (STDMETHODCALLTYPE *OnGetDefaultIconIndex)( 32554 INameSpaceTreeControlEvents* This, 32555 IShellItem *psi, 32556 int *piDefaultIcon, 32557 int *piOpenIcon); 32558 32559 END_INTERFACE 32560 } INameSpaceTreeControlEventsVtbl; 32561 interface INameSpaceTreeControlEvents { 32562 CONST_VTBL INameSpaceTreeControlEventsVtbl* lpVtbl; 32563 }; 32564 32565 #ifdef COBJMACROS 32566 #ifndef WIDL_C_INLINE_WRAPPERS 32567 /*** IUnknown methods ***/ 32568 #define INameSpaceTreeControlEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 32569 #define INameSpaceTreeControlEvents_AddRef(This) (This)->lpVtbl->AddRef(This) 32570 #define INameSpaceTreeControlEvents_Release(This) (This)->lpVtbl->Release(This) 32571 /*** INameSpaceTreeControlEvents methods ***/ 32572 #define INameSpaceTreeControlEvents_OnItemClick(This,psi,nstceHitTest,nstceClickType) (This)->lpVtbl->OnItemClick(This,psi,nstceHitTest,nstceClickType) 32573 #define INameSpaceTreeControlEvents_OnPropertyItemCommit(This,psi) (This)->lpVtbl->OnPropertyItemCommit(This,psi) 32574 #define INameSpaceTreeControlEvents_OnItemStateChanging(This,psi,nstcisMask,nstcisState) (This)->lpVtbl->OnItemStateChanging(This,psi,nstcisMask,nstcisState) 32575 #define INameSpaceTreeControlEvents_OnItemStateChanged(This,psi,nstcisMask,nstcisState) (This)->lpVtbl->OnItemStateChanged(This,psi,nstcisMask,nstcisState) 32576 #define INameSpaceTreeControlEvents_OnSelectionChanged(This,psiaSelection) (This)->lpVtbl->OnSelectionChanged(This,psiaSelection) 32577 #define INameSpaceTreeControlEvents_OnKeyboardInput(This,uMsg,wParam,lParam) (This)->lpVtbl->OnKeyboardInput(This,uMsg,wParam,lParam) 32578 #define INameSpaceTreeControlEvents_OnBeforeExpand(This,psi) (This)->lpVtbl->OnBeforeExpand(This,psi) 32579 #define INameSpaceTreeControlEvents_OnAfterExpand(This,psi) (This)->lpVtbl->OnAfterExpand(This,psi) 32580 #define INameSpaceTreeControlEvents_OnBeginLabelEdit(This,psi) (This)->lpVtbl->OnBeginLabelEdit(This,psi) 32581 #define INameSpaceTreeControlEvents_OnEndLabelEdit(This,psi) (This)->lpVtbl->OnEndLabelEdit(This,psi) 32582 #define INameSpaceTreeControlEvents_OnGetToolTip(This,psi,pszTip,cchTip) (This)->lpVtbl->OnGetToolTip(This,psi,pszTip,cchTip) 32583 #define INameSpaceTreeControlEvents_OnBeforeItemDelete(This,psi) (This)->lpVtbl->OnBeforeItemDelete(This,psi) 32584 #define INameSpaceTreeControlEvents_OnItemAdded(This,psi,fIsRoot) (This)->lpVtbl->OnItemAdded(This,psi,fIsRoot) 32585 #define INameSpaceTreeControlEvents_OnItemDeleted(This,psi,fIsRoot) (This)->lpVtbl->OnItemDeleted(This,psi,fIsRoot) 32586 #define INameSpaceTreeControlEvents_OnBeforeContextMenu(This,psi,riid,ppv) (This)->lpVtbl->OnBeforeContextMenu(This,psi,riid,ppv) 32587 #define INameSpaceTreeControlEvents_OnAfterContextMenu(This,psi,pcmIn,riid,ppv) (This)->lpVtbl->OnAfterContextMenu(This,psi,pcmIn,riid,ppv) 32588 #define INameSpaceTreeControlEvents_OnBeforeStateImageChange(This,psi) (This)->lpVtbl->OnBeforeStateImageChange(This,psi) 32589 #define INameSpaceTreeControlEvents_OnGetDefaultIconIndex(This,psi,piDefaultIcon,piOpenIcon) (This)->lpVtbl->OnGetDefaultIconIndex(This,psi,piDefaultIcon,piOpenIcon) 32590 #else 32591 /*** IUnknown methods ***/ 32592 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_QueryInterface(INameSpaceTreeControlEvents* This,REFIID riid,void **ppvObject) { 32593 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 32594 } 32595 static FORCEINLINE ULONG INameSpaceTreeControlEvents_AddRef(INameSpaceTreeControlEvents* This) { 32596 return This->lpVtbl->AddRef(This); 32597 } 32598 static FORCEINLINE ULONG INameSpaceTreeControlEvents_Release(INameSpaceTreeControlEvents* This) { 32599 return This->lpVtbl->Release(This); 32600 } 32601 /*** INameSpaceTreeControlEvents methods ***/ 32602 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnItemClick(INameSpaceTreeControlEvents* This,IShellItem *psi,NSTCEHITTEST nstceHitTest,NSTCECLICKTYPE nstceClickType) { 32603 return This->lpVtbl->OnItemClick(This,psi,nstceHitTest,nstceClickType); 32604 } 32605 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnPropertyItemCommit(INameSpaceTreeControlEvents* This,IShellItem *psi) { 32606 return This->lpVtbl->OnPropertyItemCommit(This,psi); 32607 } 32608 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnItemStateChanging(INameSpaceTreeControlEvents* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE nstcisState) { 32609 return This->lpVtbl->OnItemStateChanging(This,psi,nstcisMask,nstcisState); 32610 } 32611 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnItemStateChanged(INameSpaceTreeControlEvents* This,IShellItem *psi,NSTCITEMSTATE nstcisMask,NSTCITEMSTATE nstcisState) { 32612 return This->lpVtbl->OnItemStateChanged(This,psi,nstcisMask,nstcisState); 32613 } 32614 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnSelectionChanged(INameSpaceTreeControlEvents* This,IShellItemArray *psiaSelection) { 32615 return This->lpVtbl->OnSelectionChanged(This,psiaSelection); 32616 } 32617 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnKeyboardInput(INameSpaceTreeControlEvents* This,UINT uMsg,WPARAM wParam,LPARAM lParam) { 32618 return This->lpVtbl->OnKeyboardInput(This,uMsg,wParam,lParam); 32619 } 32620 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnBeforeExpand(INameSpaceTreeControlEvents* This,IShellItem *psi) { 32621 return This->lpVtbl->OnBeforeExpand(This,psi); 32622 } 32623 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnAfterExpand(INameSpaceTreeControlEvents* This,IShellItem *psi) { 32624 return This->lpVtbl->OnAfterExpand(This,psi); 32625 } 32626 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnBeginLabelEdit(INameSpaceTreeControlEvents* This,IShellItem *psi) { 32627 return This->lpVtbl->OnBeginLabelEdit(This,psi); 32628 } 32629 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnEndLabelEdit(INameSpaceTreeControlEvents* This,IShellItem *psi) { 32630 return This->lpVtbl->OnEndLabelEdit(This,psi); 32631 } 32632 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnGetToolTip(INameSpaceTreeControlEvents* This,IShellItem *psi,LPWSTR pszTip,int cchTip) { 32633 return This->lpVtbl->OnGetToolTip(This,psi,pszTip,cchTip); 32634 } 32635 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnBeforeItemDelete(INameSpaceTreeControlEvents* This,IShellItem *psi) { 32636 return This->lpVtbl->OnBeforeItemDelete(This,psi); 32637 } 32638 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnItemAdded(INameSpaceTreeControlEvents* This,IShellItem *psi,WINBOOL fIsRoot) { 32639 return This->lpVtbl->OnItemAdded(This,psi,fIsRoot); 32640 } 32641 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnItemDeleted(INameSpaceTreeControlEvents* This,IShellItem *psi,WINBOOL fIsRoot) { 32642 return This->lpVtbl->OnItemDeleted(This,psi,fIsRoot); 32643 } 32644 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnBeforeContextMenu(INameSpaceTreeControlEvents* This,IShellItem *psi,REFIID riid,void **ppv) { 32645 return This->lpVtbl->OnBeforeContextMenu(This,psi,riid,ppv); 32646 } 32647 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnAfterContextMenu(INameSpaceTreeControlEvents* This,IShellItem *psi,IContextMenu *pcmIn,REFIID riid,void **ppv) { 32648 return This->lpVtbl->OnAfterContextMenu(This,psi,pcmIn,riid,ppv); 32649 } 32650 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnBeforeStateImageChange(INameSpaceTreeControlEvents* This,IShellItem *psi) { 32651 return This->lpVtbl->OnBeforeStateImageChange(This,psi); 32652 } 32653 static FORCEINLINE HRESULT INameSpaceTreeControlEvents_OnGetDefaultIconIndex(INameSpaceTreeControlEvents* This,IShellItem *psi,int *piDefaultIcon,int *piOpenIcon) { 32654 return This->lpVtbl->OnGetDefaultIconIndex(This,psi,piDefaultIcon,piOpenIcon); 32655 } 32656 #endif 32657 #endif 32658 32659 #endif 32660 32661 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnItemClick_Proxy( 32662 INameSpaceTreeControlEvents* This, 32663 IShellItem *psi, 32664 NSTCEHITTEST nstceHitTest, 32665 NSTCECLICKTYPE nstceClickType); 32666 void __RPC_STUB INameSpaceTreeControlEvents_OnItemClick_Stub( 32667 IRpcStubBuffer* This, 32668 IRpcChannelBuffer* pRpcChannelBuffer, 32669 PRPC_MESSAGE pRpcMessage, 32670 DWORD* pdwStubPhase); 32671 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnPropertyItemCommit_Proxy( 32672 INameSpaceTreeControlEvents* This, 32673 IShellItem *psi); 32674 void __RPC_STUB INameSpaceTreeControlEvents_OnPropertyItemCommit_Stub( 32675 IRpcStubBuffer* This, 32676 IRpcChannelBuffer* pRpcChannelBuffer, 32677 PRPC_MESSAGE pRpcMessage, 32678 DWORD* pdwStubPhase); 32679 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnItemStateChanging_Proxy( 32680 INameSpaceTreeControlEvents* This, 32681 IShellItem *psi, 32682 NSTCITEMSTATE nstcisMask, 32683 NSTCITEMSTATE nstcisState); 32684 void __RPC_STUB INameSpaceTreeControlEvents_OnItemStateChanging_Stub( 32685 IRpcStubBuffer* This, 32686 IRpcChannelBuffer* pRpcChannelBuffer, 32687 PRPC_MESSAGE pRpcMessage, 32688 DWORD* pdwStubPhase); 32689 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnItemStateChanged_Proxy( 32690 INameSpaceTreeControlEvents* This, 32691 IShellItem *psi, 32692 NSTCITEMSTATE nstcisMask, 32693 NSTCITEMSTATE nstcisState); 32694 void __RPC_STUB INameSpaceTreeControlEvents_OnItemStateChanged_Stub( 32695 IRpcStubBuffer* This, 32696 IRpcChannelBuffer* pRpcChannelBuffer, 32697 PRPC_MESSAGE pRpcMessage, 32698 DWORD* pdwStubPhase); 32699 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnSelectionChanged_Proxy( 32700 INameSpaceTreeControlEvents* This, 32701 IShellItemArray *psiaSelection); 32702 void __RPC_STUB INameSpaceTreeControlEvents_OnSelectionChanged_Stub( 32703 IRpcStubBuffer* This, 32704 IRpcChannelBuffer* pRpcChannelBuffer, 32705 PRPC_MESSAGE pRpcMessage, 32706 DWORD* pdwStubPhase); 32707 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnKeyboardInput_Proxy( 32708 INameSpaceTreeControlEvents* This, 32709 UINT uMsg, 32710 WPARAM wParam, 32711 LPARAM lParam); 32712 void __RPC_STUB INameSpaceTreeControlEvents_OnKeyboardInput_Stub( 32713 IRpcStubBuffer* This, 32714 IRpcChannelBuffer* pRpcChannelBuffer, 32715 PRPC_MESSAGE pRpcMessage, 32716 DWORD* pdwStubPhase); 32717 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnBeforeExpand_Proxy( 32718 INameSpaceTreeControlEvents* This, 32719 IShellItem *psi); 32720 void __RPC_STUB INameSpaceTreeControlEvents_OnBeforeExpand_Stub( 32721 IRpcStubBuffer* This, 32722 IRpcChannelBuffer* pRpcChannelBuffer, 32723 PRPC_MESSAGE pRpcMessage, 32724 DWORD* pdwStubPhase); 32725 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnAfterExpand_Proxy( 32726 INameSpaceTreeControlEvents* This, 32727 IShellItem *psi); 32728 void __RPC_STUB INameSpaceTreeControlEvents_OnAfterExpand_Stub( 32729 IRpcStubBuffer* This, 32730 IRpcChannelBuffer* pRpcChannelBuffer, 32731 PRPC_MESSAGE pRpcMessage, 32732 DWORD* pdwStubPhase); 32733 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnBeginLabelEdit_Proxy( 32734 INameSpaceTreeControlEvents* This, 32735 IShellItem *psi); 32736 void __RPC_STUB INameSpaceTreeControlEvents_OnBeginLabelEdit_Stub( 32737 IRpcStubBuffer* This, 32738 IRpcChannelBuffer* pRpcChannelBuffer, 32739 PRPC_MESSAGE pRpcMessage, 32740 DWORD* pdwStubPhase); 32741 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnEndLabelEdit_Proxy( 32742 INameSpaceTreeControlEvents* This, 32743 IShellItem *psi); 32744 void __RPC_STUB INameSpaceTreeControlEvents_OnEndLabelEdit_Stub( 32745 IRpcStubBuffer* This, 32746 IRpcChannelBuffer* pRpcChannelBuffer, 32747 PRPC_MESSAGE pRpcMessage, 32748 DWORD* pdwStubPhase); 32749 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnGetToolTip_Proxy( 32750 INameSpaceTreeControlEvents* This, 32751 IShellItem *psi, 32752 LPWSTR pszTip, 32753 int cchTip); 32754 void __RPC_STUB INameSpaceTreeControlEvents_OnGetToolTip_Stub( 32755 IRpcStubBuffer* This, 32756 IRpcChannelBuffer* pRpcChannelBuffer, 32757 PRPC_MESSAGE pRpcMessage, 32758 DWORD* pdwStubPhase); 32759 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnBeforeItemDelete_Proxy( 32760 INameSpaceTreeControlEvents* This, 32761 IShellItem *psi); 32762 void __RPC_STUB INameSpaceTreeControlEvents_OnBeforeItemDelete_Stub( 32763 IRpcStubBuffer* This, 32764 IRpcChannelBuffer* pRpcChannelBuffer, 32765 PRPC_MESSAGE pRpcMessage, 32766 DWORD* pdwStubPhase); 32767 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnItemAdded_Proxy( 32768 INameSpaceTreeControlEvents* This, 32769 IShellItem *psi, 32770 WINBOOL fIsRoot); 32771 void __RPC_STUB INameSpaceTreeControlEvents_OnItemAdded_Stub( 32772 IRpcStubBuffer* This, 32773 IRpcChannelBuffer* pRpcChannelBuffer, 32774 PRPC_MESSAGE pRpcMessage, 32775 DWORD* pdwStubPhase); 32776 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnItemDeleted_Proxy( 32777 INameSpaceTreeControlEvents* This, 32778 IShellItem *psi, 32779 WINBOOL fIsRoot); 32780 void __RPC_STUB INameSpaceTreeControlEvents_OnItemDeleted_Stub( 32781 IRpcStubBuffer* This, 32782 IRpcChannelBuffer* pRpcChannelBuffer, 32783 PRPC_MESSAGE pRpcMessage, 32784 DWORD* pdwStubPhase); 32785 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnBeforeContextMenu_Proxy( 32786 INameSpaceTreeControlEvents* This, 32787 IShellItem *psi, 32788 REFIID riid, 32789 void **ppv); 32790 void __RPC_STUB INameSpaceTreeControlEvents_OnBeforeContextMenu_Stub( 32791 IRpcStubBuffer* This, 32792 IRpcChannelBuffer* pRpcChannelBuffer, 32793 PRPC_MESSAGE pRpcMessage, 32794 DWORD* pdwStubPhase); 32795 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnAfterContextMenu_Proxy( 32796 INameSpaceTreeControlEvents* This, 32797 IShellItem *psi, 32798 IContextMenu *pcmIn, 32799 REFIID riid, 32800 void **ppv); 32801 void __RPC_STUB INameSpaceTreeControlEvents_OnAfterContextMenu_Stub( 32802 IRpcStubBuffer* This, 32803 IRpcChannelBuffer* pRpcChannelBuffer, 32804 PRPC_MESSAGE pRpcMessage, 32805 DWORD* pdwStubPhase); 32806 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnBeforeStateImageChange_Proxy( 32807 INameSpaceTreeControlEvents* This, 32808 IShellItem *psi); 32809 void __RPC_STUB INameSpaceTreeControlEvents_OnBeforeStateImageChange_Stub( 32810 IRpcStubBuffer* This, 32811 IRpcChannelBuffer* pRpcChannelBuffer, 32812 PRPC_MESSAGE pRpcMessage, 32813 DWORD* pdwStubPhase); 32814 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlEvents_OnGetDefaultIconIndex_Proxy( 32815 INameSpaceTreeControlEvents* This, 32816 IShellItem *psi, 32817 int *piDefaultIcon, 32818 int *piOpenIcon); 32819 void __RPC_STUB INameSpaceTreeControlEvents_OnGetDefaultIconIndex_Stub( 32820 IRpcStubBuffer* This, 32821 IRpcChannelBuffer* pRpcChannelBuffer, 32822 PRPC_MESSAGE pRpcMessage, 32823 DWORD* pdwStubPhase); 32824 32825 #endif /* __INameSpaceTreeControlEvents_INTERFACE_DEFINED__ */ 32826 32827 32828 #define NSTCDHPOS_ONTOP -1 32829 32830 /***************************************************************************** 32831 * INameSpaceTreeControlDropHandler interface 32832 */ 32833 #ifndef __INameSpaceTreeControlDropHandler_INTERFACE_DEFINED__ 32834 #define __INameSpaceTreeControlDropHandler_INTERFACE_DEFINED__ 32835 32836 DEFINE_GUID(IID_INameSpaceTreeControlDropHandler, 0xf9c665d6, 0xc2f2, 0x4c19, 0xbf,0x33, 0x83,0x22,0xd7,0x35,0x2f,0x51); 32837 #if defined(__cplusplus) && !defined(CINTERFACE) 32838 MIDL_INTERFACE("f9c665d6-c2f2-4c19-bf33-8322d7352f51") 32839 INameSpaceTreeControlDropHandler : public IUnknown 32840 { 32841 virtual HRESULT STDMETHODCALLTYPE OnDragEnter( 32842 IShellItem *psiOver, 32843 IShellItemArray *psiaData, 32844 WINBOOL fOutsideSource, 32845 DWORD grfKeyState, 32846 DWORD *pdwEffect) = 0; 32847 32848 virtual HRESULT STDMETHODCALLTYPE OnDragOver( 32849 IShellItem *psiOver, 32850 IShellItemArray *psiaData, 32851 DWORD grfKeyState, 32852 DWORD *pdwEffect) = 0; 32853 32854 virtual HRESULT STDMETHODCALLTYPE OnDragPosition( 32855 IShellItem *psiOver, 32856 IShellItemArray *psiaData, 32857 int iNewPosition, 32858 int iOldPosition) = 0; 32859 32860 virtual HRESULT STDMETHODCALLTYPE OnDrop( 32861 IShellItem *psiOver, 32862 IShellItemArray *psiaData, 32863 int iPosition, 32864 DWORD grfKeyState, 32865 DWORD *pdwEffect) = 0; 32866 32867 virtual HRESULT STDMETHODCALLTYPE OnDropPosition( 32868 IShellItem *psiOver, 32869 IShellItemArray *psiaData, 32870 int iNewPosition, 32871 int iOldPosition) = 0; 32872 32873 virtual HRESULT STDMETHODCALLTYPE OnDragLeave( 32874 IShellItem *psiOver) = 0; 32875 32876 }; 32877 #ifdef __CRT_UUID_DECL 32878 __CRT_UUID_DECL(INameSpaceTreeControlDropHandler, 0xf9c665d6, 0xc2f2, 0x4c19, 0xbf,0x33, 0x83,0x22,0xd7,0x35,0x2f,0x51) 32879 #endif 32880 #else 32881 typedef struct INameSpaceTreeControlDropHandlerVtbl { 32882 BEGIN_INTERFACE 32883 32884 /*** IUnknown methods ***/ 32885 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 32886 INameSpaceTreeControlDropHandler* This, 32887 REFIID riid, 32888 void **ppvObject); 32889 32890 ULONG (STDMETHODCALLTYPE *AddRef)( 32891 INameSpaceTreeControlDropHandler* This); 32892 32893 ULONG (STDMETHODCALLTYPE *Release)( 32894 INameSpaceTreeControlDropHandler* This); 32895 32896 /*** INameSpaceTreeControlDropHandler methods ***/ 32897 HRESULT (STDMETHODCALLTYPE *OnDragEnter)( 32898 INameSpaceTreeControlDropHandler* This, 32899 IShellItem *psiOver, 32900 IShellItemArray *psiaData, 32901 WINBOOL fOutsideSource, 32902 DWORD grfKeyState, 32903 DWORD *pdwEffect); 32904 32905 HRESULT (STDMETHODCALLTYPE *OnDragOver)( 32906 INameSpaceTreeControlDropHandler* This, 32907 IShellItem *psiOver, 32908 IShellItemArray *psiaData, 32909 DWORD grfKeyState, 32910 DWORD *pdwEffect); 32911 32912 HRESULT (STDMETHODCALLTYPE *OnDragPosition)( 32913 INameSpaceTreeControlDropHandler* This, 32914 IShellItem *psiOver, 32915 IShellItemArray *psiaData, 32916 int iNewPosition, 32917 int iOldPosition); 32918 32919 HRESULT (STDMETHODCALLTYPE *OnDrop)( 32920 INameSpaceTreeControlDropHandler* This, 32921 IShellItem *psiOver, 32922 IShellItemArray *psiaData, 32923 int iPosition, 32924 DWORD grfKeyState, 32925 DWORD *pdwEffect); 32926 32927 HRESULT (STDMETHODCALLTYPE *OnDropPosition)( 32928 INameSpaceTreeControlDropHandler* This, 32929 IShellItem *psiOver, 32930 IShellItemArray *psiaData, 32931 int iNewPosition, 32932 int iOldPosition); 32933 32934 HRESULT (STDMETHODCALLTYPE *OnDragLeave)( 32935 INameSpaceTreeControlDropHandler* This, 32936 IShellItem *psiOver); 32937 32938 END_INTERFACE 32939 } INameSpaceTreeControlDropHandlerVtbl; 32940 interface INameSpaceTreeControlDropHandler { 32941 CONST_VTBL INameSpaceTreeControlDropHandlerVtbl* lpVtbl; 32942 }; 32943 32944 #ifdef COBJMACROS 32945 #ifndef WIDL_C_INLINE_WRAPPERS 32946 /*** IUnknown methods ***/ 32947 #define INameSpaceTreeControlDropHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 32948 #define INameSpaceTreeControlDropHandler_AddRef(This) (This)->lpVtbl->AddRef(This) 32949 #define INameSpaceTreeControlDropHandler_Release(This) (This)->lpVtbl->Release(This) 32950 /*** INameSpaceTreeControlDropHandler methods ***/ 32951 #define INameSpaceTreeControlDropHandler_OnDragEnter(This,psiOver,psiaData,fOutsideSource,grfKeyState,pdwEffect) (This)->lpVtbl->OnDragEnter(This,psiOver,psiaData,fOutsideSource,grfKeyState,pdwEffect) 32952 #define INameSpaceTreeControlDropHandler_OnDragOver(This,psiOver,psiaData,grfKeyState,pdwEffect) (This)->lpVtbl->OnDragOver(This,psiOver,psiaData,grfKeyState,pdwEffect) 32953 #define INameSpaceTreeControlDropHandler_OnDragPosition(This,psiOver,psiaData,iNewPosition,iOldPosition) (This)->lpVtbl->OnDragPosition(This,psiOver,psiaData,iNewPosition,iOldPosition) 32954 #define INameSpaceTreeControlDropHandler_OnDrop(This,psiOver,psiaData,iPosition,grfKeyState,pdwEffect) (This)->lpVtbl->OnDrop(This,psiOver,psiaData,iPosition,grfKeyState,pdwEffect) 32955 #define INameSpaceTreeControlDropHandler_OnDropPosition(This,psiOver,psiaData,iNewPosition,iOldPosition) (This)->lpVtbl->OnDropPosition(This,psiOver,psiaData,iNewPosition,iOldPosition) 32956 #define INameSpaceTreeControlDropHandler_OnDragLeave(This,psiOver) (This)->lpVtbl->OnDragLeave(This,psiOver) 32957 #else 32958 /*** IUnknown methods ***/ 32959 static FORCEINLINE HRESULT INameSpaceTreeControlDropHandler_QueryInterface(INameSpaceTreeControlDropHandler* This,REFIID riid,void **ppvObject) { 32960 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 32961 } 32962 static FORCEINLINE ULONG INameSpaceTreeControlDropHandler_AddRef(INameSpaceTreeControlDropHandler* This) { 32963 return This->lpVtbl->AddRef(This); 32964 } 32965 static FORCEINLINE ULONG INameSpaceTreeControlDropHandler_Release(INameSpaceTreeControlDropHandler* This) { 32966 return This->lpVtbl->Release(This); 32967 } 32968 /*** INameSpaceTreeControlDropHandler methods ***/ 32969 static FORCEINLINE HRESULT INameSpaceTreeControlDropHandler_OnDragEnter(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,WINBOOL fOutsideSource,DWORD grfKeyState,DWORD *pdwEffect) { 32970 return This->lpVtbl->OnDragEnter(This,psiOver,psiaData,fOutsideSource,grfKeyState,pdwEffect); 32971 } 32972 static FORCEINLINE HRESULT INameSpaceTreeControlDropHandler_OnDragOver(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,DWORD grfKeyState,DWORD *pdwEffect) { 32973 return This->lpVtbl->OnDragOver(This,psiOver,psiaData,grfKeyState,pdwEffect); 32974 } 32975 static FORCEINLINE HRESULT INameSpaceTreeControlDropHandler_OnDragPosition(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,int iNewPosition,int iOldPosition) { 32976 return This->lpVtbl->OnDragPosition(This,psiOver,psiaData,iNewPosition,iOldPosition); 32977 } 32978 static FORCEINLINE HRESULT INameSpaceTreeControlDropHandler_OnDrop(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,int iPosition,DWORD grfKeyState,DWORD *pdwEffect) { 32979 return This->lpVtbl->OnDrop(This,psiOver,psiaData,iPosition,grfKeyState,pdwEffect); 32980 } 32981 static FORCEINLINE HRESULT INameSpaceTreeControlDropHandler_OnDropPosition(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver,IShellItemArray *psiaData,int iNewPosition,int iOldPosition) { 32982 return This->lpVtbl->OnDropPosition(This,psiOver,psiaData,iNewPosition,iOldPosition); 32983 } 32984 static FORCEINLINE HRESULT INameSpaceTreeControlDropHandler_OnDragLeave(INameSpaceTreeControlDropHandler* This,IShellItem *psiOver) { 32985 return This->lpVtbl->OnDragLeave(This,psiOver); 32986 } 32987 #endif 32988 #endif 32989 32990 #endif 32991 32992 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlDropHandler_OnDragEnter_Proxy( 32993 INameSpaceTreeControlDropHandler* This, 32994 IShellItem *psiOver, 32995 IShellItemArray *psiaData, 32996 WINBOOL fOutsideSource, 32997 DWORD grfKeyState, 32998 DWORD *pdwEffect); 32999 void __RPC_STUB INameSpaceTreeControlDropHandler_OnDragEnter_Stub( 33000 IRpcStubBuffer* This, 33001 IRpcChannelBuffer* pRpcChannelBuffer, 33002 PRPC_MESSAGE pRpcMessage, 33003 DWORD* pdwStubPhase); 33004 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlDropHandler_OnDragOver_Proxy( 33005 INameSpaceTreeControlDropHandler* This, 33006 IShellItem *psiOver, 33007 IShellItemArray *psiaData, 33008 DWORD grfKeyState, 33009 DWORD *pdwEffect); 33010 void __RPC_STUB INameSpaceTreeControlDropHandler_OnDragOver_Stub( 33011 IRpcStubBuffer* This, 33012 IRpcChannelBuffer* pRpcChannelBuffer, 33013 PRPC_MESSAGE pRpcMessage, 33014 DWORD* pdwStubPhase); 33015 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlDropHandler_OnDragPosition_Proxy( 33016 INameSpaceTreeControlDropHandler* This, 33017 IShellItem *psiOver, 33018 IShellItemArray *psiaData, 33019 int iNewPosition, 33020 int iOldPosition); 33021 void __RPC_STUB INameSpaceTreeControlDropHandler_OnDragPosition_Stub( 33022 IRpcStubBuffer* This, 33023 IRpcChannelBuffer* pRpcChannelBuffer, 33024 PRPC_MESSAGE pRpcMessage, 33025 DWORD* pdwStubPhase); 33026 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlDropHandler_OnDrop_Proxy( 33027 INameSpaceTreeControlDropHandler* This, 33028 IShellItem *psiOver, 33029 IShellItemArray *psiaData, 33030 int iPosition, 33031 DWORD grfKeyState, 33032 DWORD *pdwEffect); 33033 void __RPC_STUB INameSpaceTreeControlDropHandler_OnDrop_Stub( 33034 IRpcStubBuffer* This, 33035 IRpcChannelBuffer* pRpcChannelBuffer, 33036 PRPC_MESSAGE pRpcMessage, 33037 DWORD* pdwStubPhase); 33038 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlDropHandler_OnDropPosition_Proxy( 33039 INameSpaceTreeControlDropHandler* This, 33040 IShellItem *psiOver, 33041 IShellItemArray *psiaData, 33042 int iNewPosition, 33043 int iOldPosition); 33044 void __RPC_STUB INameSpaceTreeControlDropHandler_OnDropPosition_Stub( 33045 IRpcStubBuffer* This, 33046 IRpcChannelBuffer* pRpcChannelBuffer, 33047 PRPC_MESSAGE pRpcMessage, 33048 DWORD* pdwStubPhase); 33049 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlDropHandler_OnDragLeave_Proxy( 33050 INameSpaceTreeControlDropHandler* This, 33051 IShellItem *psiOver); 33052 void __RPC_STUB INameSpaceTreeControlDropHandler_OnDragLeave_Stub( 33053 IRpcStubBuffer* This, 33054 IRpcChannelBuffer* pRpcChannelBuffer, 33055 PRPC_MESSAGE pRpcMessage, 33056 DWORD* pdwStubPhase); 33057 33058 #endif /* __INameSpaceTreeControlDropHandler_INTERFACE_DEFINED__ */ 33059 33060 33061 /***************************************************************************** 33062 * INameSpaceTreeAccessible interface 33063 */ 33064 #ifndef __INameSpaceTreeAccessible_INTERFACE_DEFINED__ 33065 #define __INameSpaceTreeAccessible_INTERFACE_DEFINED__ 33066 33067 DEFINE_GUID(IID_INameSpaceTreeAccessible, 0x71f312de, 0x43ed, 0x4190, 0x84,0x77, 0xe9,0x53,0x6b,0x82,0x35,0x0b); 33068 #if defined(__cplusplus) && !defined(CINTERFACE) 33069 MIDL_INTERFACE("71f312de-43ed-4190-8477-e9536b82350b") 33070 INameSpaceTreeAccessible : public IUnknown 33071 { 33072 virtual HRESULT STDMETHODCALLTYPE OnGetDefaultAccessibilityAction( 33073 IShellItem *psi, 33074 BSTR *pbstrDefaultAction) = 0; 33075 33076 virtual HRESULT STDMETHODCALLTYPE OnDoDefaultAccessibilityAction( 33077 IShellItem *psi) = 0; 33078 33079 virtual HRESULT STDMETHODCALLTYPE OnGetAccessibilityRole( 33080 IShellItem *psi, 33081 VARIANT *pvarRole) = 0; 33082 33083 }; 33084 #ifdef __CRT_UUID_DECL 33085 __CRT_UUID_DECL(INameSpaceTreeAccessible, 0x71f312de, 0x43ed, 0x4190, 0x84,0x77, 0xe9,0x53,0x6b,0x82,0x35,0x0b) 33086 #endif 33087 #else 33088 typedef struct INameSpaceTreeAccessibleVtbl { 33089 BEGIN_INTERFACE 33090 33091 /*** IUnknown methods ***/ 33092 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 33093 INameSpaceTreeAccessible* This, 33094 REFIID riid, 33095 void **ppvObject); 33096 33097 ULONG (STDMETHODCALLTYPE *AddRef)( 33098 INameSpaceTreeAccessible* This); 33099 33100 ULONG (STDMETHODCALLTYPE *Release)( 33101 INameSpaceTreeAccessible* This); 33102 33103 /*** INameSpaceTreeAccessible methods ***/ 33104 HRESULT (STDMETHODCALLTYPE *OnGetDefaultAccessibilityAction)( 33105 INameSpaceTreeAccessible* This, 33106 IShellItem *psi, 33107 BSTR *pbstrDefaultAction); 33108 33109 HRESULT (STDMETHODCALLTYPE *OnDoDefaultAccessibilityAction)( 33110 INameSpaceTreeAccessible* This, 33111 IShellItem *psi); 33112 33113 HRESULT (STDMETHODCALLTYPE *OnGetAccessibilityRole)( 33114 INameSpaceTreeAccessible* This, 33115 IShellItem *psi, 33116 VARIANT *pvarRole); 33117 33118 END_INTERFACE 33119 } INameSpaceTreeAccessibleVtbl; 33120 interface INameSpaceTreeAccessible { 33121 CONST_VTBL INameSpaceTreeAccessibleVtbl* lpVtbl; 33122 }; 33123 33124 #ifdef COBJMACROS 33125 #ifndef WIDL_C_INLINE_WRAPPERS 33126 /*** IUnknown methods ***/ 33127 #define INameSpaceTreeAccessible_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 33128 #define INameSpaceTreeAccessible_AddRef(This) (This)->lpVtbl->AddRef(This) 33129 #define INameSpaceTreeAccessible_Release(This) (This)->lpVtbl->Release(This) 33130 /*** INameSpaceTreeAccessible methods ***/ 33131 #define INameSpaceTreeAccessible_OnGetDefaultAccessibilityAction(This,psi,pbstrDefaultAction) (This)->lpVtbl->OnGetDefaultAccessibilityAction(This,psi,pbstrDefaultAction) 33132 #define INameSpaceTreeAccessible_OnDoDefaultAccessibilityAction(This,psi) (This)->lpVtbl->OnDoDefaultAccessibilityAction(This,psi) 33133 #define INameSpaceTreeAccessible_OnGetAccessibilityRole(This,psi,pvarRole) (This)->lpVtbl->OnGetAccessibilityRole(This,psi,pvarRole) 33134 #else 33135 /*** IUnknown methods ***/ 33136 static FORCEINLINE HRESULT INameSpaceTreeAccessible_QueryInterface(INameSpaceTreeAccessible* This,REFIID riid,void **ppvObject) { 33137 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 33138 } 33139 static FORCEINLINE ULONG INameSpaceTreeAccessible_AddRef(INameSpaceTreeAccessible* This) { 33140 return This->lpVtbl->AddRef(This); 33141 } 33142 static FORCEINLINE ULONG INameSpaceTreeAccessible_Release(INameSpaceTreeAccessible* This) { 33143 return This->lpVtbl->Release(This); 33144 } 33145 /*** INameSpaceTreeAccessible methods ***/ 33146 static FORCEINLINE HRESULT INameSpaceTreeAccessible_OnGetDefaultAccessibilityAction(INameSpaceTreeAccessible* This,IShellItem *psi,BSTR *pbstrDefaultAction) { 33147 return This->lpVtbl->OnGetDefaultAccessibilityAction(This,psi,pbstrDefaultAction); 33148 } 33149 static FORCEINLINE HRESULT INameSpaceTreeAccessible_OnDoDefaultAccessibilityAction(INameSpaceTreeAccessible* This,IShellItem *psi) { 33150 return This->lpVtbl->OnDoDefaultAccessibilityAction(This,psi); 33151 } 33152 static FORCEINLINE HRESULT INameSpaceTreeAccessible_OnGetAccessibilityRole(INameSpaceTreeAccessible* This,IShellItem *psi,VARIANT *pvarRole) { 33153 return This->lpVtbl->OnGetAccessibilityRole(This,psi,pvarRole); 33154 } 33155 #endif 33156 #endif 33157 33158 #endif 33159 33160 HRESULT STDMETHODCALLTYPE INameSpaceTreeAccessible_OnGetDefaultAccessibilityAction_Proxy( 33161 INameSpaceTreeAccessible* This, 33162 IShellItem *psi, 33163 BSTR *pbstrDefaultAction); 33164 void __RPC_STUB INameSpaceTreeAccessible_OnGetDefaultAccessibilityAction_Stub( 33165 IRpcStubBuffer* This, 33166 IRpcChannelBuffer* pRpcChannelBuffer, 33167 PRPC_MESSAGE pRpcMessage, 33168 DWORD* pdwStubPhase); 33169 HRESULT STDMETHODCALLTYPE INameSpaceTreeAccessible_OnDoDefaultAccessibilityAction_Proxy( 33170 INameSpaceTreeAccessible* This, 33171 IShellItem *psi); 33172 void __RPC_STUB INameSpaceTreeAccessible_OnDoDefaultAccessibilityAction_Stub( 33173 IRpcStubBuffer* This, 33174 IRpcChannelBuffer* pRpcChannelBuffer, 33175 PRPC_MESSAGE pRpcMessage, 33176 DWORD* pdwStubPhase); 33177 HRESULT STDMETHODCALLTYPE INameSpaceTreeAccessible_OnGetAccessibilityRole_Proxy( 33178 INameSpaceTreeAccessible* This, 33179 IShellItem *psi, 33180 VARIANT *pvarRole); 33181 void __RPC_STUB INameSpaceTreeAccessible_OnGetAccessibilityRole_Stub( 33182 IRpcStubBuffer* This, 33183 IRpcChannelBuffer* pRpcChannelBuffer, 33184 PRPC_MESSAGE pRpcMessage, 33185 DWORD* pdwStubPhase); 33186 33187 #endif /* __INameSpaceTreeAccessible_INTERFACE_DEFINED__ */ 33188 33189 33190 /***************************************************************************** 33191 * INameSpaceTreeControlCustomDraw interface 33192 */ 33193 #ifndef __INameSpaceTreeControlCustomDraw_INTERFACE_DEFINED__ 33194 #define __INameSpaceTreeControlCustomDraw_INTERFACE_DEFINED__ 33195 33196 typedef struct NSTCCUSTOMDRAW { 33197 IShellItem *psi; 33198 UINT uItemState; 33199 NSTCITEMSTATE nstcis; 33200 LPCWSTR pszText; 33201 int iImage; 33202 HIMAGELIST himl; 33203 int iLevel; 33204 int iIndent; 33205 } NSTCCUSTOMDRAW; 33206 33207 DEFINE_GUID(IID_INameSpaceTreeControlCustomDraw, 0x2d3ba758, 0x33ee, 0x42d5, 0xbb,0x7b, 0x5f,0x34,0x31,0xd8,0x6c,0x78); 33208 #if defined(__cplusplus) && !defined(CINTERFACE) 33209 MIDL_INTERFACE("2d3ba758-33ee-42d5-bb7b-5f3431d86c78") 33210 INameSpaceTreeControlCustomDraw : public IUnknown 33211 { 33212 virtual HRESULT STDMETHODCALLTYPE PrePaint( 33213 HDC hdc, 33214 RECT *prc, 33215 LRESULT *plres) = 0; 33216 33217 virtual HRESULT STDMETHODCALLTYPE PostPaint( 33218 HDC hdc, 33219 RECT *prc) = 0; 33220 33221 virtual HRESULT STDMETHODCALLTYPE ItemPrePaint( 33222 HDC hdc, 33223 RECT *prc, 33224 NSTCCUSTOMDRAW *pnstccdItem, 33225 COLORREF *pclrText, 33226 COLORREF *pclrTextBk, 33227 LRESULT *plres) = 0; 33228 33229 virtual HRESULT STDMETHODCALLTYPE ItemPostPaint( 33230 HDC hdc, 33231 RECT *prc, 33232 NSTCCUSTOMDRAW *pnstccdItem) = 0; 33233 33234 }; 33235 #ifdef __CRT_UUID_DECL 33236 __CRT_UUID_DECL(INameSpaceTreeControlCustomDraw, 0x2d3ba758, 0x33ee, 0x42d5, 0xbb,0x7b, 0x5f,0x34,0x31,0xd8,0x6c,0x78) 33237 #endif 33238 #else 33239 typedef struct INameSpaceTreeControlCustomDrawVtbl { 33240 BEGIN_INTERFACE 33241 33242 /*** IUnknown methods ***/ 33243 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 33244 INameSpaceTreeControlCustomDraw* This, 33245 REFIID riid, 33246 void **ppvObject); 33247 33248 ULONG (STDMETHODCALLTYPE *AddRef)( 33249 INameSpaceTreeControlCustomDraw* This); 33250 33251 ULONG (STDMETHODCALLTYPE *Release)( 33252 INameSpaceTreeControlCustomDraw* This); 33253 33254 /*** INameSpaceTreeControlCustomDraw methods ***/ 33255 HRESULT (STDMETHODCALLTYPE *PrePaint)( 33256 INameSpaceTreeControlCustomDraw* This, 33257 HDC hdc, 33258 RECT *prc, 33259 LRESULT *plres); 33260 33261 HRESULT (STDMETHODCALLTYPE *PostPaint)( 33262 INameSpaceTreeControlCustomDraw* This, 33263 HDC hdc, 33264 RECT *prc); 33265 33266 HRESULT (STDMETHODCALLTYPE *ItemPrePaint)( 33267 INameSpaceTreeControlCustomDraw* This, 33268 HDC hdc, 33269 RECT *prc, 33270 NSTCCUSTOMDRAW *pnstccdItem, 33271 COLORREF *pclrText, 33272 COLORREF *pclrTextBk, 33273 LRESULT *plres); 33274 33275 HRESULT (STDMETHODCALLTYPE *ItemPostPaint)( 33276 INameSpaceTreeControlCustomDraw* This, 33277 HDC hdc, 33278 RECT *prc, 33279 NSTCCUSTOMDRAW *pnstccdItem); 33280 33281 END_INTERFACE 33282 } INameSpaceTreeControlCustomDrawVtbl; 33283 interface INameSpaceTreeControlCustomDraw { 33284 CONST_VTBL INameSpaceTreeControlCustomDrawVtbl* lpVtbl; 33285 }; 33286 33287 #ifdef COBJMACROS 33288 #ifndef WIDL_C_INLINE_WRAPPERS 33289 /*** IUnknown methods ***/ 33290 #define INameSpaceTreeControlCustomDraw_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 33291 #define INameSpaceTreeControlCustomDraw_AddRef(This) (This)->lpVtbl->AddRef(This) 33292 #define INameSpaceTreeControlCustomDraw_Release(This) (This)->lpVtbl->Release(This) 33293 /*** INameSpaceTreeControlCustomDraw methods ***/ 33294 #define INameSpaceTreeControlCustomDraw_PrePaint(This,hdc,prc,plres) (This)->lpVtbl->PrePaint(This,hdc,prc,plres) 33295 #define INameSpaceTreeControlCustomDraw_PostPaint(This,hdc,prc) (This)->lpVtbl->PostPaint(This,hdc,prc) 33296 #define INameSpaceTreeControlCustomDraw_ItemPrePaint(This,hdc,prc,pnstccdItem,pclrText,pclrTextBk,plres) (This)->lpVtbl->ItemPrePaint(This,hdc,prc,pnstccdItem,pclrText,pclrTextBk,plres) 33297 #define INameSpaceTreeControlCustomDraw_ItemPostPaint(This,hdc,prc,pnstccdItem) (This)->lpVtbl->ItemPostPaint(This,hdc,prc,pnstccdItem) 33298 #else 33299 /*** IUnknown methods ***/ 33300 static FORCEINLINE HRESULT INameSpaceTreeControlCustomDraw_QueryInterface(INameSpaceTreeControlCustomDraw* This,REFIID riid,void **ppvObject) { 33301 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 33302 } 33303 static FORCEINLINE ULONG INameSpaceTreeControlCustomDraw_AddRef(INameSpaceTreeControlCustomDraw* This) { 33304 return This->lpVtbl->AddRef(This); 33305 } 33306 static FORCEINLINE ULONG INameSpaceTreeControlCustomDraw_Release(INameSpaceTreeControlCustomDraw* This) { 33307 return This->lpVtbl->Release(This); 33308 } 33309 /*** INameSpaceTreeControlCustomDraw methods ***/ 33310 static FORCEINLINE HRESULT INameSpaceTreeControlCustomDraw_PrePaint(INameSpaceTreeControlCustomDraw* This,HDC hdc,RECT *prc,LRESULT *plres) { 33311 return This->lpVtbl->PrePaint(This,hdc,prc,plres); 33312 } 33313 static FORCEINLINE HRESULT INameSpaceTreeControlCustomDraw_PostPaint(INameSpaceTreeControlCustomDraw* This,HDC hdc,RECT *prc) { 33314 return This->lpVtbl->PostPaint(This,hdc,prc); 33315 } 33316 static FORCEINLINE HRESULT INameSpaceTreeControlCustomDraw_ItemPrePaint(INameSpaceTreeControlCustomDraw* This,HDC hdc,RECT *prc,NSTCCUSTOMDRAW *pnstccdItem,COLORREF *pclrText,COLORREF *pclrTextBk,LRESULT *plres) { 33317 return This->lpVtbl->ItemPrePaint(This,hdc,prc,pnstccdItem,pclrText,pclrTextBk,plres); 33318 } 33319 static FORCEINLINE HRESULT INameSpaceTreeControlCustomDraw_ItemPostPaint(INameSpaceTreeControlCustomDraw* This,HDC hdc,RECT *prc,NSTCCUSTOMDRAW *pnstccdItem) { 33320 return This->lpVtbl->ItemPostPaint(This,hdc,prc,pnstccdItem); 33321 } 33322 #endif 33323 #endif 33324 33325 #endif 33326 33327 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlCustomDraw_PrePaint_Proxy( 33328 INameSpaceTreeControlCustomDraw* This, 33329 HDC hdc, 33330 RECT *prc, 33331 LRESULT *plres); 33332 void __RPC_STUB INameSpaceTreeControlCustomDraw_PrePaint_Stub( 33333 IRpcStubBuffer* This, 33334 IRpcChannelBuffer* pRpcChannelBuffer, 33335 PRPC_MESSAGE pRpcMessage, 33336 DWORD* pdwStubPhase); 33337 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlCustomDraw_PostPaint_Proxy( 33338 INameSpaceTreeControlCustomDraw* This, 33339 HDC hdc, 33340 RECT *prc); 33341 void __RPC_STUB INameSpaceTreeControlCustomDraw_PostPaint_Stub( 33342 IRpcStubBuffer* This, 33343 IRpcChannelBuffer* pRpcChannelBuffer, 33344 PRPC_MESSAGE pRpcMessage, 33345 DWORD* pdwStubPhase); 33346 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlCustomDraw_ItemPrePaint_Proxy( 33347 INameSpaceTreeControlCustomDraw* This, 33348 HDC hdc, 33349 RECT *prc, 33350 NSTCCUSTOMDRAW *pnstccdItem, 33351 COLORREF *pclrText, 33352 COLORREF *pclrTextBk, 33353 LRESULT *plres); 33354 void __RPC_STUB INameSpaceTreeControlCustomDraw_ItemPrePaint_Stub( 33355 IRpcStubBuffer* This, 33356 IRpcChannelBuffer* pRpcChannelBuffer, 33357 PRPC_MESSAGE pRpcMessage, 33358 DWORD* pdwStubPhase); 33359 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlCustomDraw_ItemPostPaint_Proxy( 33360 INameSpaceTreeControlCustomDraw* This, 33361 HDC hdc, 33362 RECT *prc, 33363 NSTCCUSTOMDRAW *pnstccdItem); 33364 void __RPC_STUB INameSpaceTreeControlCustomDraw_ItemPostPaint_Stub( 33365 IRpcStubBuffer* This, 33366 IRpcChannelBuffer* pRpcChannelBuffer, 33367 PRPC_MESSAGE pRpcMessage, 33368 DWORD* pdwStubPhase); 33369 33370 #endif /* __INameSpaceTreeControlCustomDraw_INTERFACE_DEFINED__ */ 33371 33372 33373 #if NTDDI_VERSION >= NTDDI_VISTA 33374 /***************************************************************************** 33375 * INameSpaceTreeControlFolderCapabilities interface 33376 */ 33377 #ifndef __INameSpaceTreeControlFolderCapabilities_INTERFACE_DEFINED__ 33378 #define __INameSpaceTreeControlFolderCapabilities_INTERFACE_DEFINED__ 33379 33380 typedef enum NSTCFOLDERCAPABILITIES { 33381 NSTCFC_NONE = 0x0, 33382 NSTCFC_PINNEDITEMFILTERING = 0x1, 33383 NSTCFC_DELAY_REGISTER_NOTIFY = 0x2 33384 } NSTCFOLDERCAPABILITIES; 33385 33386 DEFINE_ENUM_FLAG_OPERATORS(NSTCFOLDERCAPABILITIES) 33387 33388 DEFINE_GUID(IID_INameSpaceTreeControlFolderCapabilities, 0xe9701183, 0xe6b3, 0x4ff2, 0x85,0x68, 0x81,0x36,0x15,0xfe,0xc7,0xbe); 33389 #if defined(__cplusplus) && !defined(CINTERFACE) 33390 MIDL_INTERFACE("e9701183-e6b3-4ff2-8568-813615fec7be") 33391 INameSpaceTreeControlFolderCapabilities : public IUnknown 33392 { 33393 virtual HRESULT STDMETHODCALLTYPE GetFolderCapabilities( 33394 NSTCFOLDERCAPABILITIES nfcMask, 33395 NSTCFOLDERCAPABILITIES *pnfcValue) = 0; 33396 33397 }; 33398 #ifdef __CRT_UUID_DECL 33399 __CRT_UUID_DECL(INameSpaceTreeControlFolderCapabilities, 0xe9701183, 0xe6b3, 0x4ff2, 0x85,0x68, 0x81,0x36,0x15,0xfe,0xc7,0xbe) 33400 #endif 33401 #else 33402 typedef struct INameSpaceTreeControlFolderCapabilitiesVtbl { 33403 BEGIN_INTERFACE 33404 33405 /*** IUnknown methods ***/ 33406 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 33407 INameSpaceTreeControlFolderCapabilities* This, 33408 REFIID riid, 33409 void **ppvObject); 33410 33411 ULONG (STDMETHODCALLTYPE *AddRef)( 33412 INameSpaceTreeControlFolderCapabilities* This); 33413 33414 ULONG (STDMETHODCALLTYPE *Release)( 33415 INameSpaceTreeControlFolderCapabilities* This); 33416 33417 /*** INameSpaceTreeControlFolderCapabilities methods ***/ 33418 HRESULT (STDMETHODCALLTYPE *GetFolderCapabilities)( 33419 INameSpaceTreeControlFolderCapabilities* This, 33420 NSTCFOLDERCAPABILITIES nfcMask, 33421 NSTCFOLDERCAPABILITIES *pnfcValue); 33422 33423 END_INTERFACE 33424 } INameSpaceTreeControlFolderCapabilitiesVtbl; 33425 interface INameSpaceTreeControlFolderCapabilities { 33426 CONST_VTBL INameSpaceTreeControlFolderCapabilitiesVtbl* lpVtbl; 33427 }; 33428 33429 #ifdef COBJMACROS 33430 #ifndef WIDL_C_INLINE_WRAPPERS 33431 /*** IUnknown methods ***/ 33432 #define INameSpaceTreeControlFolderCapabilities_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 33433 #define INameSpaceTreeControlFolderCapabilities_AddRef(This) (This)->lpVtbl->AddRef(This) 33434 #define INameSpaceTreeControlFolderCapabilities_Release(This) (This)->lpVtbl->Release(This) 33435 /*** INameSpaceTreeControlFolderCapabilities methods ***/ 33436 #define INameSpaceTreeControlFolderCapabilities_GetFolderCapabilities(This,nfcMask,pnfcValue) (This)->lpVtbl->GetFolderCapabilities(This,nfcMask,pnfcValue) 33437 #else 33438 /*** IUnknown methods ***/ 33439 static FORCEINLINE HRESULT INameSpaceTreeControlFolderCapabilities_QueryInterface(INameSpaceTreeControlFolderCapabilities* This,REFIID riid,void **ppvObject) { 33440 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 33441 } 33442 static FORCEINLINE ULONG INameSpaceTreeControlFolderCapabilities_AddRef(INameSpaceTreeControlFolderCapabilities* This) { 33443 return This->lpVtbl->AddRef(This); 33444 } 33445 static FORCEINLINE ULONG INameSpaceTreeControlFolderCapabilities_Release(INameSpaceTreeControlFolderCapabilities* This) { 33446 return This->lpVtbl->Release(This); 33447 } 33448 /*** INameSpaceTreeControlFolderCapabilities methods ***/ 33449 static FORCEINLINE HRESULT INameSpaceTreeControlFolderCapabilities_GetFolderCapabilities(INameSpaceTreeControlFolderCapabilities* This,NSTCFOLDERCAPABILITIES nfcMask,NSTCFOLDERCAPABILITIES *pnfcValue) { 33450 return This->lpVtbl->GetFolderCapabilities(This,nfcMask,pnfcValue); 33451 } 33452 #endif 33453 #endif 33454 33455 #endif 33456 33457 HRESULT STDMETHODCALLTYPE INameSpaceTreeControlFolderCapabilities_GetFolderCapabilities_Proxy( 33458 INameSpaceTreeControlFolderCapabilities* This, 33459 NSTCFOLDERCAPABILITIES nfcMask, 33460 NSTCFOLDERCAPABILITIES *pnfcValue); 33461 void __RPC_STUB INameSpaceTreeControlFolderCapabilities_GetFolderCapabilities_Stub( 33462 IRpcStubBuffer* This, 33463 IRpcChannelBuffer* pRpcChannelBuffer, 33464 PRPC_MESSAGE pRpcMessage, 33465 DWORD* pdwStubPhase); 33466 33467 #endif /* __INameSpaceTreeControlFolderCapabilities_INTERFACE_DEFINED__ */ 33468 33469 #endif 33470 33471 #define E_PREVIEWHANDLER_DRM_FAIL _HRESULT_TYPEDEF_(0x86420001L) 33472 #define E_PREVIEWHANDLER_NOAUTH _HRESULT_TYPEDEF_(0x86420002L) 33473 #define E_PREVIEWHANDLER_NOTFOUND _HRESULT_TYPEDEF_(0x86420003L) 33474 #define E_PREVIEWHANDLER_CORRUPT _HRESULT_TYPEDEF_(0x86420004L) 33475 33476 /***************************************************************************** 33477 * IPreviewHandler interface 33478 */ 33479 #ifndef __IPreviewHandler_INTERFACE_DEFINED__ 33480 #define __IPreviewHandler_INTERFACE_DEFINED__ 33481 33482 DEFINE_GUID(IID_IPreviewHandler, 0x8895b1c6, 0xb41f, 0x4c1c, 0xa5,0x62, 0x0d,0x56,0x42,0x50,0x83,0x6f); 33483 #if defined(__cplusplus) && !defined(CINTERFACE) 33484 MIDL_INTERFACE("8895b1c6-b41f-4c1c-a562-0d564250836f") 33485 IPreviewHandler : public IUnknown 33486 { 33487 virtual HRESULT STDMETHODCALLTYPE SetWindow( 33488 HWND hwnd, 33489 const RECT *prc) = 0; 33490 33491 virtual HRESULT STDMETHODCALLTYPE SetRect( 33492 const RECT *prc) = 0; 33493 33494 virtual HRESULT STDMETHODCALLTYPE DoPreview( 33495 ) = 0; 33496 33497 virtual HRESULT STDMETHODCALLTYPE Unload( 33498 ) = 0; 33499 33500 virtual HRESULT STDMETHODCALLTYPE SetFocus( 33501 ) = 0; 33502 33503 virtual HRESULT STDMETHODCALLTYPE QueryFocus( 33504 HWND *phwnd) = 0; 33505 33506 virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator( 33507 MSG *pmsg) = 0; 33508 33509 }; 33510 #ifdef __CRT_UUID_DECL 33511 __CRT_UUID_DECL(IPreviewHandler, 0x8895b1c6, 0xb41f, 0x4c1c, 0xa5,0x62, 0x0d,0x56,0x42,0x50,0x83,0x6f) 33512 #endif 33513 #else 33514 typedef struct IPreviewHandlerVtbl { 33515 BEGIN_INTERFACE 33516 33517 /*** IUnknown methods ***/ 33518 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 33519 IPreviewHandler* This, 33520 REFIID riid, 33521 void **ppvObject); 33522 33523 ULONG (STDMETHODCALLTYPE *AddRef)( 33524 IPreviewHandler* This); 33525 33526 ULONG (STDMETHODCALLTYPE *Release)( 33527 IPreviewHandler* This); 33528 33529 /*** IPreviewHandler methods ***/ 33530 HRESULT (STDMETHODCALLTYPE *SetWindow)( 33531 IPreviewHandler* This, 33532 HWND hwnd, 33533 const RECT *prc); 33534 33535 HRESULT (STDMETHODCALLTYPE *SetRect)( 33536 IPreviewHandler* This, 33537 const RECT *prc); 33538 33539 HRESULT (STDMETHODCALLTYPE *DoPreview)( 33540 IPreviewHandler* This); 33541 33542 HRESULT (STDMETHODCALLTYPE *Unload)( 33543 IPreviewHandler* This); 33544 33545 HRESULT (STDMETHODCALLTYPE *SetFocus)( 33546 IPreviewHandler* This); 33547 33548 HRESULT (STDMETHODCALLTYPE *QueryFocus)( 33549 IPreviewHandler* This, 33550 HWND *phwnd); 33551 33552 HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( 33553 IPreviewHandler* This, 33554 MSG *pmsg); 33555 33556 END_INTERFACE 33557 } IPreviewHandlerVtbl; 33558 interface IPreviewHandler { 33559 CONST_VTBL IPreviewHandlerVtbl* lpVtbl; 33560 }; 33561 33562 #ifdef COBJMACROS 33563 #ifndef WIDL_C_INLINE_WRAPPERS 33564 /*** IUnknown methods ***/ 33565 #define IPreviewHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 33566 #define IPreviewHandler_AddRef(This) (This)->lpVtbl->AddRef(This) 33567 #define IPreviewHandler_Release(This) (This)->lpVtbl->Release(This) 33568 /*** IPreviewHandler methods ***/ 33569 #define IPreviewHandler_SetWindow(This,hwnd,prc) (This)->lpVtbl->SetWindow(This,hwnd,prc) 33570 #define IPreviewHandler_SetRect(This,prc) (This)->lpVtbl->SetRect(This,prc) 33571 #define IPreviewHandler_DoPreview(This) (This)->lpVtbl->DoPreview(This) 33572 #define IPreviewHandler_Unload(This) (This)->lpVtbl->Unload(This) 33573 #define IPreviewHandler_SetFocus(This) (This)->lpVtbl->SetFocus(This) 33574 #define IPreviewHandler_QueryFocus(This,phwnd) (This)->lpVtbl->QueryFocus(This,phwnd) 33575 #define IPreviewHandler_TranslateAccelerator(This,pmsg) (This)->lpVtbl->TranslateAccelerator(This,pmsg) 33576 #else 33577 /*** IUnknown methods ***/ 33578 static FORCEINLINE HRESULT IPreviewHandler_QueryInterface(IPreviewHandler* This,REFIID riid,void **ppvObject) { 33579 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 33580 } 33581 static FORCEINLINE ULONG IPreviewHandler_AddRef(IPreviewHandler* This) { 33582 return This->lpVtbl->AddRef(This); 33583 } 33584 static FORCEINLINE ULONG IPreviewHandler_Release(IPreviewHandler* This) { 33585 return This->lpVtbl->Release(This); 33586 } 33587 /*** IPreviewHandler methods ***/ 33588 static FORCEINLINE HRESULT IPreviewHandler_SetWindow(IPreviewHandler* This,HWND hwnd,const RECT *prc) { 33589 return This->lpVtbl->SetWindow(This,hwnd,prc); 33590 } 33591 static FORCEINLINE HRESULT IPreviewHandler_SetRect(IPreviewHandler* This,const RECT *prc) { 33592 return This->lpVtbl->SetRect(This,prc); 33593 } 33594 static FORCEINLINE HRESULT IPreviewHandler_DoPreview(IPreviewHandler* This) { 33595 return This->lpVtbl->DoPreview(This); 33596 } 33597 static FORCEINLINE HRESULT IPreviewHandler_Unload(IPreviewHandler* This) { 33598 return This->lpVtbl->Unload(This); 33599 } 33600 static FORCEINLINE HRESULT IPreviewHandler_SetFocus(IPreviewHandler* This) { 33601 return This->lpVtbl->SetFocus(This); 33602 } 33603 static FORCEINLINE HRESULT IPreviewHandler_QueryFocus(IPreviewHandler* This,HWND *phwnd) { 33604 return This->lpVtbl->QueryFocus(This,phwnd); 33605 } 33606 static FORCEINLINE HRESULT IPreviewHandler_TranslateAccelerator(IPreviewHandler* This,MSG *pmsg) { 33607 return This->lpVtbl->TranslateAccelerator(This,pmsg); 33608 } 33609 #endif 33610 #endif 33611 33612 #endif 33613 33614 HRESULT STDMETHODCALLTYPE IPreviewHandler_SetWindow_Proxy( 33615 IPreviewHandler* This, 33616 HWND hwnd, 33617 const RECT *prc); 33618 void __RPC_STUB IPreviewHandler_SetWindow_Stub( 33619 IRpcStubBuffer* This, 33620 IRpcChannelBuffer* pRpcChannelBuffer, 33621 PRPC_MESSAGE pRpcMessage, 33622 DWORD* pdwStubPhase); 33623 HRESULT STDMETHODCALLTYPE IPreviewHandler_SetRect_Proxy( 33624 IPreviewHandler* This, 33625 const RECT *prc); 33626 void __RPC_STUB IPreviewHandler_SetRect_Stub( 33627 IRpcStubBuffer* This, 33628 IRpcChannelBuffer* pRpcChannelBuffer, 33629 PRPC_MESSAGE pRpcMessage, 33630 DWORD* pdwStubPhase); 33631 HRESULT STDMETHODCALLTYPE IPreviewHandler_DoPreview_Proxy( 33632 IPreviewHandler* This); 33633 void __RPC_STUB IPreviewHandler_DoPreview_Stub( 33634 IRpcStubBuffer* This, 33635 IRpcChannelBuffer* pRpcChannelBuffer, 33636 PRPC_MESSAGE pRpcMessage, 33637 DWORD* pdwStubPhase); 33638 HRESULT STDMETHODCALLTYPE IPreviewHandler_Unload_Proxy( 33639 IPreviewHandler* This); 33640 void __RPC_STUB IPreviewHandler_Unload_Stub( 33641 IRpcStubBuffer* This, 33642 IRpcChannelBuffer* pRpcChannelBuffer, 33643 PRPC_MESSAGE pRpcMessage, 33644 DWORD* pdwStubPhase); 33645 HRESULT STDMETHODCALLTYPE IPreviewHandler_SetFocus_Proxy( 33646 IPreviewHandler* This); 33647 void __RPC_STUB IPreviewHandler_SetFocus_Stub( 33648 IRpcStubBuffer* This, 33649 IRpcChannelBuffer* pRpcChannelBuffer, 33650 PRPC_MESSAGE pRpcMessage, 33651 DWORD* pdwStubPhase); 33652 HRESULT STDMETHODCALLTYPE IPreviewHandler_QueryFocus_Proxy( 33653 IPreviewHandler* This, 33654 HWND *phwnd); 33655 void __RPC_STUB IPreviewHandler_QueryFocus_Stub( 33656 IRpcStubBuffer* This, 33657 IRpcChannelBuffer* pRpcChannelBuffer, 33658 PRPC_MESSAGE pRpcMessage, 33659 DWORD* pdwStubPhase); 33660 HRESULT STDMETHODCALLTYPE IPreviewHandler_TranslateAccelerator_Proxy( 33661 IPreviewHandler* This, 33662 MSG *pmsg); 33663 void __RPC_STUB IPreviewHandler_TranslateAccelerator_Stub( 33664 IRpcStubBuffer* This, 33665 IRpcChannelBuffer* pRpcChannelBuffer, 33666 PRPC_MESSAGE pRpcMessage, 33667 DWORD* pdwStubPhase); 33668 33669 #endif /* __IPreviewHandler_INTERFACE_DEFINED__ */ 33670 33671 33672 /***************************************************************************** 33673 * IPreviewHandlerFrame interface 33674 */ 33675 #ifndef __IPreviewHandlerFrame_INTERFACE_DEFINED__ 33676 #define __IPreviewHandlerFrame_INTERFACE_DEFINED__ 33677 33678 typedef struct PREVIEWHANDLERFRAMEINFO { 33679 HACCEL haccel; 33680 UINT cAccelEntries; 33681 } PREVIEWHANDLERFRAMEINFO; 33682 33683 DEFINE_GUID(IID_IPreviewHandlerFrame, 0xfec87aaf, 0x35f9, 0x447a, 0xad,0xb7, 0x20,0x23,0x44,0x91,0x40,0x1a); 33684 #if defined(__cplusplus) && !defined(CINTERFACE) 33685 MIDL_INTERFACE("fec87aaf-35f9-447a-adb7-20234491401a") 33686 IPreviewHandlerFrame : public IUnknown 33687 { 33688 virtual HRESULT STDMETHODCALLTYPE GetWindowContext( 33689 PREVIEWHANDLERFRAMEINFO *pinfo) = 0; 33690 33691 virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator( 33692 MSG *pmsg) = 0; 33693 33694 }; 33695 #ifdef __CRT_UUID_DECL 33696 __CRT_UUID_DECL(IPreviewHandlerFrame, 0xfec87aaf, 0x35f9, 0x447a, 0xad,0xb7, 0x20,0x23,0x44,0x91,0x40,0x1a) 33697 #endif 33698 #else 33699 typedef struct IPreviewHandlerFrameVtbl { 33700 BEGIN_INTERFACE 33701 33702 /*** IUnknown methods ***/ 33703 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 33704 IPreviewHandlerFrame* This, 33705 REFIID riid, 33706 void **ppvObject); 33707 33708 ULONG (STDMETHODCALLTYPE *AddRef)( 33709 IPreviewHandlerFrame* This); 33710 33711 ULONG (STDMETHODCALLTYPE *Release)( 33712 IPreviewHandlerFrame* This); 33713 33714 /*** IPreviewHandlerFrame methods ***/ 33715 HRESULT (STDMETHODCALLTYPE *GetWindowContext)( 33716 IPreviewHandlerFrame* This, 33717 PREVIEWHANDLERFRAMEINFO *pinfo); 33718 33719 HRESULT (STDMETHODCALLTYPE *TranslateAccelerator)( 33720 IPreviewHandlerFrame* This, 33721 MSG *pmsg); 33722 33723 END_INTERFACE 33724 } IPreviewHandlerFrameVtbl; 33725 interface IPreviewHandlerFrame { 33726 CONST_VTBL IPreviewHandlerFrameVtbl* lpVtbl; 33727 }; 33728 33729 #ifdef COBJMACROS 33730 #ifndef WIDL_C_INLINE_WRAPPERS 33731 /*** IUnknown methods ***/ 33732 #define IPreviewHandlerFrame_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 33733 #define IPreviewHandlerFrame_AddRef(This) (This)->lpVtbl->AddRef(This) 33734 #define IPreviewHandlerFrame_Release(This) (This)->lpVtbl->Release(This) 33735 /*** IPreviewHandlerFrame methods ***/ 33736 #define IPreviewHandlerFrame_GetWindowContext(This,pinfo) (This)->lpVtbl->GetWindowContext(This,pinfo) 33737 #define IPreviewHandlerFrame_TranslateAccelerator(This,pmsg) (This)->lpVtbl->TranslateAccelerator(This,pmsg) 33738 #else 33739 /*** IUnknown methods ***/ 33740 static FORCEINLINE HRESULT IPreviewHandlerFrame_QueryInterface(IPreviewHandlerFrame* This,REFIID riid,void **ppvObject) { 33741 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 33742 } 33743 static FORCEINLINE ULONG IPreviewHandlerFrame_AddRef(IPreviewHandlerFrame* This) { 33744 return This->lpVtbl->AddRef(This); 33745 } 33746 static FORCEINLINE ULONG IPreviewHandlerFrame_Release(IPreviewHandlerFrame* This) { 33747 return This->lpVtbl->Release(This); 33748 } 33749 /*** IPreviewHandlerFrame methods ***/ 33750 static FORCEINLINE HRESULT IPreviewHandlerFrame_GetWindowContext(IPreviewHandlerFrame* This,PREVIEWHANDLERFRAMEINFO *pinfo) { 33751 return This->lpVtbl->GetWindowContext(This,pinfo); 33752 } 33753 static FORCEINLINE HRESULT IPreviewHandlerFrame_TranslateAccelerator(IPreviewHandlerFrame* This,MSG *pmsg) { 33754 return This->lpVtbl->TranslateAccelerator(This,pmsg); 33755 } 33756 #endif 33757 #endif 33758 33759 #endif 33760 33761 HRESULT STDMETHODCALLTYPE IPreviewHandlerFrame_GetWindowContext_Proxy( 33762 IPreviewHandlerFrame* This, 33763 PREVIEWHANDLERFRAMEINFO *pinfo); 33764 void __RPC_STUB IPreviewHandlerFrame_GetWindowContext_Stub( 33765 IRpcStubBuffer* This, 33766 IRpcChannelBuffer* pRpcChannelBuffer, 33767 PRPC_MESSAGE pRpcMessage, 33768 DWORD* pdwStubPhase); 33769 HRESULT STDMETHODCALLTYPE IPreviewHandlerFrame_TranslateAccelerator_Proxy( 33770 IPreviewHandlerFrame* This, 33771 MSG *pmsg); 33772 void __RPC_STUB IPreviewHandlerFrame_TranslateAccelerator_Stub( 33773 IRpcStubBuffer* This, 33774 IRpcChannelBuffer* pRpcChannelBuffer, 33775 PRPC_MESSAGE pRpcMessage, 33776 DWORD* pdwStubPhase); 33777 33778 #endif /* __IPreviewHandlerFrame_INTERFACE_DEFINED__ */ 33779 33780 33781 #if NTDDI_VERSION >= NTDDI_VISTA 33782 /***************************************************************************** 33783 * ITrayDeskBand interface 33784 */ 33785 #ifndef __ITrayDeskBand_INTERFACE_DEFINED__ 33786 #define __ITrayDeskBand_INTERFACE_DEFINED__ 33787 33788 DEFINE_GUID(IID_ITrayDeskBand, 0x6d67e846, 0x5b9c, 0x4db8, 0x9c,0xbc, 0xdd,0xe1,0x2f,0x42,0x54,0xf1); 33789 #if defined(__cplusplus) && !defined(CINTERFACE) 33790 MIDL_INTERFACE("6d67e846-5b9c-4db8-9cbc-dde12f4254f1") 33791 ITrayDeskBand : public IUnknown 33792 { 33793 virtual HRESULT STDMETHODCALLTYPE ShowDeskBand( 33794 REFCLSID clsid) = 0; 33795 33796 virtual HRESULT STDMETHODCALLTYPE HideDeskBand( 33797 REFCLSID clsid) = 0; 33798 33799 virtual HRESULT STDMETHODCALLTYPE IsDeskBandShown( 33800 REFCLSID clsid) = 0; 33801 33802 virtual HRESULT STDMETHODCALLTYPE DeskBandRegistrationChanged( 33803 ) = 0; 33804 33805 }; 33806 #ifdef __CRT_UUID_DECL 33807 __CRT_UUID_DECL(ITrayDeskBand, 0x6d67e846, 0x5b9c, 0x4db8, 0x9c,0xbc, 0xdd,0xe1,0x2f,0x42,0x54,0xf1) 33808 #endif 33809 #else 33810 typedef struct ITrayDeskBandVtbl { 33811 BEGIN_INTERFACE 33812 33813 /*** IUnknown methods ***/ 33814 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 33815 ITrayDeskBand* This, 33816 REFIID riid, 33817 void **ppvObject); 33818 33819 ULONG (STDMETHODCALLTYPE *AddRef)( 33820 ITrayDeskBand* This); 33821 33822 ULONG (STDMETHODCALLTYPE *Release)( 33823 ITrayDeskBand* This); 33824 33825 /*** ITrayDeskBand methods ***/ 33826 HRESULT (STDMETHODCALLTYPE *ShowDeskBand)( 33827 ITrayDeskBand* This, 33828 REFCLSID clsid); 33829 33830 HRESULT (STDMETHODCALLTYPE *HideDeskBand)( 33831 ITrayDeskBand* This, 33832 REFCLSID clsid); 33833 33834 HRESULT (STDMETHODCALLTYPE *IsDeskBandShown)( 33835 ITrayDeskBand* This, 33836 REFCLSID clsid); 33837 33838 HRESULT (STDMETHODCALLTYPE *DeskBandRegistrationChanged)( 33839 ITrayDeskBand* This); 33840 33841 END_INTERFACE 33842 } ITrayDeskBandVtbl; 33843 interface ITrayDeskBand { 33844 CONST_VTBL ITrayDeskBandVtbl* lpVtbl; 33845 }; 33846 33847 #ifdef COBJMACROS 33848 #ifndef WIDL_C_INLINE_WRAPPERS 33849 /*** IUnknown methods ***/ 33850 #define ITrayDeskBand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 33851 #define ITrayDeskBand_AddRef(This) (This)->lpVtbl->AddRef(This) 33852 #define ITrayDeskBand_Release(This) (This)->lpVtbl->Release(This) 33853 /*** ITrayDeskBand methods ***/ 33854 #define ITrayDeskBand_ShowDeskBand(This,clsid) (This)->lpVtbl->ShowDeskBand(This,clsid) 33855 #define ITrayDeskBand_HideDeskBand(This,clsid) (This)->lpVtbl->HideDeskBand(This,clsid) 33856 #define ITrayDeskBand_IsDeskBandShown(This,clsid) (This)->lpVtbl->IsDeskBandShown(This,clsid) 33857 #define ITrayDeskBand_DeskBandRegistrationChanged(This) (This)->lpVtbl->DeskBandRegistrationChanged(This) 33858 #else 33859 /*** IUnknown methods ***/ 33860 static FORCEINLINE HRESULT ITrayDeskBand_QueryInterface(ITrayDeskBand* This,REFIID riid,void **ppvObject) { 33861 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 33862 } 33863 static FORCEINLINE ULONG ITrayDeskBand_AddRef(ITrayDeskBand* This) { 33864 return This->lpVtbl->AddRef(This); 33865 } 33866 static FORCEINLINE ULONG ITrayDeskBand_Release(ITrayDeskBand* This) { 33867 return This->lpVtbl->Release(This); 33868 } 33869 /*** ITrayDeskBand methods ***/ 33870 static FORCEINLINE HRESULT ITrayDeskBand_ShowDeskBand(ITrayDeskBand* This,REFCLSID clsid) { 33871 return This->lpVtbl->ShowDeskBand(This,clsid); 33872 } 33873 static FORCEINLINE HRESULT ITrayDeskBand_HideDeskBand(ITrayDeskBand* This,REFCLSID clsid) { 33874 return This->lpVtbl->HideDeskBand(This,clsid); 33875 } 33876 static FORCEINLINE HRESULT ITrayDeskBand_IsDeskBandShown(ITrayDeskBand* This,REFCLSID clsid) { 33877 return This->lpVtbl->IsDeskBandShown(This,clsid); 33878 } 33879 static FORCEINLINE HRESULT ITrayDeskBand_DeskBandRegistrationChanged(ITrayDeskBand* This) { 33880 return This->lpVtbl->DeskBandRegistrationChanged(This); 33881 } 33882 #endif 33883 #endif 33884 33885 #endif 33886 33887 HRESULT STDMETHODCALLTYPE ITrayDeskBand_ShowDeskBand_Proxy( 33888 ITrayDeskBand* This, 33889 REFCLSID clsid); 33890 void __RPC_STUB ITrayDeskBand_ShowDeskBand_Stub( 33891 IRpcStubBuffer* This, 33892 IRpcChannelBuffer* pRpcChannelBuffer, 33893 PRPC_MESSAGE pRpcMessage, 33894 DWORD* pdwStubPhase); 33895 HRESULT STDMETHODCALLTYPE ITrayDeskBand_HideDeskBand_Proxy( 33896 ITrayDeskBand* This, 33897 REFCLSID clsid); 33898 void __RPC_STUB ITrayDeskBand_HideDeskBand_Stub( 33899 IRpcStubBuffer* This, 33900 IRpcChannelBuffer* pRpcChannelBuffer, 33901 PRPC_MESSAGE pRpcMessage, 33902 DWORD* pdwStubPhase); 33903 HRESULT STDMETHODCALLTYPE ITrayDeskBand_IsDeskBandShown_Proxy( 33904 ITrayDeskBand* This, 33905 REFCLSID clsid); 33906 void __RPC_STUB ITrayDeskBand_IsDeskBandShown_Stub( 33907 IRpcStubBuffer* This, 33908 IRpcChannelBuffer* pRpcChannelBuffer, 33909 PRPC_MESSAGE pRpcMessage, 33910 DWORD* pdwStubPhase); 33911 HRESULT STDMETHODCALLTYPE ITrayDeskBand_DeskBandRegistrationChanged_Proxy( 33912 ITrayDeskBand* This); 33913 void __RPC_STUB ITrayDeskBand_DeskBandRegistrationChanged_Stub( 33914 IRpcStubBuffer* This, 33915 IRpcChannelBuffer* pRpcChannelBuffer, 33916 PRPC_MESSAGE pRpcMessage, 33917 DWORD* pdwStubPhase); 33918 33919 #endif /* __ITrayDeskBand_INTERFACE_DEFINED__ */ 33920 33921 33922 /***************************************************************************** 33923 * IBandHost interface 33924 */ 33925 #ifndef __IBandHost_INTERFACE_DEFINED__ 33926 #define __IBandHost_INTERFACE_DEFINED__ 33927 33928 DEFINE_GUID(IID_IBandHost, 0xb9075c7c, 0xd48e, 0x403f, 0xab,0x99, 0xd6,0xc7,0x7a,0x10,0x84,0xac); 33929 #if defined(__cplusplus) && !defined(CINTERFACE) 33930 MIDL_INTERFACE("b9075c7c-d48e-403f-ab99-d6c77a1084ac") 33931 IBandHost : public IUnknown 33932 { 33933 virtual HRESULT STDMETHODCALLTYPE CreateBand( 33934 REFCLSID rclsidBand, 33935 WINBOOL fAvailable, 33936 WINBOOL fVisible, 33937 REFIID riid, 33938 void **ppv) = 0; 33939 33940 virtual HRESULT STDMETHODCALLTYPE SetBandAvailability( 33941 REFCLSID rclsidBand, 33942 WINBOOL fAvailable) = 0; 33943 33944 virtual HRESULT STDMETHODCALLTYPE DestroyBand( 33945 REFCLSID rclsidBand) = 0; 33946 33947 }; 33948 #ifdef __CRT_UUID_DECL 33949 __CRT_UUID_DECL(IBandHost, 0xb9075c7c, 0xd48e, 0x403f, 0xab,0x99, 0xd6,0xc7,0x7a,0x10,0x84,0xac) 33950 #endif 33951 #else 33952 typedef struct IBandHostVtbl { 33953 BEGIN_INTERFACE 33954 33955 /*** IUnknown methods ***/ 33956 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 33957 IBandHost* This, 33958 REFIID riid, 33959 void **ppvObject); 33960 33961 ULONG (STDMETHODCALLTYPE *AddRef)( 33962 IBandHost* This); 33963 33964 ULONG (STDMETHODCALLTYPE *Release)( 33965 IBandHost* This); 33966 33967 /*** IBandHost methods ***/ 33968 HRESULT (STDMETHODCALLTYPE *CreateBand)( 33969 IBandHost* This, 33970 REFCLSID rclsidBand, 33971 WINBOOL fAvailable, 33972 WINBOOL fVisible, 33973 REFIID riid, 33974 void **ppv); 33975 33976 HRESULT (STDMETHODCALLTYPE *SetBandAvailability)( 33977 IBandHost* This, 33978 REFCLSID rclsidBand, 33979 WINBOOL fAvailable); 33980 33981 HRESULT (STDMETHODCALLTYPE *DestroyBand)( 33982 IBandHost* This, 33983 REFCLSID rclsidBand); 33984 33985 END_INTERFACE 33986 } IBandHostVtbl; 33987 interface IBandHost { 33988 CONST_VTBL IBandHostVtbl* lpVtbl; 33989 }; 33990 33991 #ifdef COBJMACROS 33992 #ifndef WIDL_C_INLINE_WRAPPERS 33993 /*** IUnknown methods ***/ 33994 #define IBandHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 33995 #define IBandHost_AddRef(This) (This)->lpVtbl->AddRef(This) 33996 #define IBandHost_Release(This) (This)->lpVtbl->Release(This) 33997 /*** IBandHost methods ***/ 33998 #define IBandHost_CreateBand(This,rclsidBand,fAvailable,fVisible,riid,ppv) (This)->lpVtbl->CreateBand(This,rclsidBand,fAvailable,fVisible,riid,ppv) 33999 #define IBandHost_SetBandAvailability(This,rclsidBand,fAvailable) (This)->lpVtbl->SetBandAvailability(This,rclsidBand,fAvailable) 34000 #define IBandHost_DestroyBand(This,rclsidBand) (This)->lpVtbl->DestroyBand(This,rclsidBand) 34001 #else 34002 /*** IUnknown methods ***/ 34003 static FORCEINLINE HRESULT IBandHost_QueryInterface(IBandHost* This,REFIID riid,void **ppvObject) { 34004 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 34005 } 34006 static FORCEINLINE ULONG IBandHost_AddRef(IBandHost* This) { 34007 return This->lpVtbl->AddRef(This); 34008 } 34009 static FORCEINLINE ULONG IBandHost_Release(IBandHost* This) { 34010 return This->lpVtbl->Release(This); 34011 } 34012 /*** IBandHost methods ***/ 34013 static FORCEINLINE HRESULT IBandHost_CreateBand(IBandHost* This,REFCLSID rclsidBand,WINBOOL fAvailable,WINBOOL fVisible,REFIID riid,void **ppv) { 34014 return This->lpVtbl->CreateBand(This,rclsidBand,fAvailable,fVisible,riid,ppv); 34015 } 34016 static FORCEINLINE HRESULT IBandHost_SetBandAvailability(IBandHost* This,REFCLSID rclsidBand,WINBOOL fAvailable) { 34017 return This->lpVtbl->SetBandAvailability(This,rclsidBand,fAvailable); 34018 } 34019 static FORCEINLINE HRESULT IBandHost_DestroyBand(IBandHost* This,REFCLSID rclsidBand) { 34020 return This->lpVtbl->DestroyBand(This,rclsidBand); 34021 } 34022 #endif 34023 #endif 34024 34025 #endif 34026 34027 HRESULT STDMETHODCALLTYPE IBandHost_CreateBand_Proxy( 34028 IBandHost* This, 34029 REFCLSID rclsidBand, 34030 WINBOOL fAvailable, 34031 WINBOOL fVisible, 34032 REFIID riid, 34033 void **ppv); 34034 void __RPC_STUB IBandHost_CreateBand_Stub( 34035 IRpcStubBuffer* This, 34036 IRpcChannelBuffer* pRpcChannelBuffer, 34037 PRPC_MESSAGE pRpcMessage, 34038 DWORD* pdwStubPhase); 34039 HRESULT STDMETHODCALLTYPE IBandHost_SetBandAvailability_Proxy( 34040 IBandHost* This, 34041 REFCLSID rclsidBand, 34042 WINBOOL fAvailable); 34043 void __RPC_STUB IBandHost_SetBandAvailability_Stub( 34044 IRpcStubBuffer* This, 34045 IRpcChannelBuffer* pRpcChannelBuffer, 34046 PRPC_MESSAGE pRpcMessage, 34047 DWORD* pdwStubPhase); 34048 HRESULT STDMETHODCALLTYPE IBandHost_DestroyBand_Proxy( 34049 IBandHost* This, 34050 REFCLSID rclsidBand); 34051 void __RPC_STUB IBandHost_DestroyBand_Stub( 34052 IRpcStubBuffer* This, 34053 IRpcChannelBuffer* pRpcChannelBuffer, 34054 PRPC_MESSAGE pRpcMessage, 34055 DWORD* pdwStubPhase); 34056 34057 #endif /* __IBandHost_INTERFACE_DEFINED__ */ 34058 34059 34060 #define SID_SBandHost IID_IBandHost 34061 34062 typedef GUID EXPLORERPANE; 34063 34064 #if 0 34065 typedef EXPLORERPANE *REFEXPLORERPANE; 34066 #endif 34067 34068 #ifdef __cplusplus 34069 #define REFEXPLORERPANE const EXPLORERPANE & 34070 #else 34071 #define REFEXPLORERPANE const EXPLORERPANE * __MIDL_CONST 34072 #endif 34073 34074 /***************************************************************************** 34075 * IExplorerPaneVisibility interface 34076 */ 34077 #ifndef __IExplorerPaneVisibility_INTERFACE_DEFINED__ 34078 #define __IExplorerPaneVisibility_INTERFACE_DEFINED__ 34079 34080 enum _EXPLORERPANESTATE { 34081 EPS_DONTCARE = 0x0, 34082 EPS_DEFAULT_ON = 0x1, 34083 EPS_DEFAULT_OFF = 0x2, 34084 EPS_STATEMASK = 0xffff, 34085 EPS_INITIALSTATE = 0x10000, 34086 EPS_FORCE = 0x20000 34087 }; 34088 34089 34090 typedef DWORD EXPLORERPANESTATE; 34091 34092 DEFINE_GUID(IID_IExplorerPaneVisibility, 0xe07010ec, 0xbc17, 0x44c0, 0x97,0xb0, 0x46,0xc7,0xc9,0x5b,0x9e,0xdc); 34093 #if defined(__cplusplus) && !defined(CINTERFACE) 34094 MIDL_INTERFACE("e07010ec-bc17-44c0-97b0-46c7c95b9edc") 34095 IExplorerPaneVisibility : public IUnknown 34096 { 34097 virtual HRESULT STDMETHODCALLTYPE GetPaneState( 34098 REFEXPLORERPANE ep, 34099 EXPLORERPANESTATE *peps) = 0; 34100 34101 }; 34102 #ifdef __CRT_UUID_DECL 34103 __CRT_UUID_DECL(IExplorerPaneVisibility, 0xe07010ec, 0xbc17, 0x44c0, 0x97,0xb0, 0x46,0xc7,0xc9,0x5b,0x9e,0xdc) 34104 #endif 34105 #else 34106 typedef struct IExplorerPaneVisibilityVtbl { 34107 BEGIN_INTERFACE 34108 34109 /*** IUnknown methods ***/ 34110 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 34111 IExplorerPaneVisibility* This, 34112 REFIID riid, 34113 void **ppvObject); 34114 34115 ULONG (STDMETHODCALLTYPE *AddRef)( 34116 IExplorerPaneVisibility* This); 34117 34118 ULONG (STDMETHODCALLTYPE *Release)( 34119 IExplorerPaneVisibility* This); 34120 34121 /*** IExplorerPaneVisibility methods ***/ 34122 HRESULT (STDMETHODCALLTYPE *GetPaneState)( 34123 IExplorerPaneVisibility* This, 34124 REFEXPLORERPANE ep, 34125 EXPLORERPANESTATE *peps); 34126 34127 END_INTERFACE 34128 } IExplorerPaneVisibilityVtbl; 34129 interface IExplorerPaneVisibility { 34130 CONST_VTBL IExplorerPaneVisibilityVtbl* lpVtbl; 34131 }; 34132 34133 #ifdef COBJMACROS 34134 #ifndef WIDL_C_INLINE_WRAPPERS 34135 /*** IUnknown methods ***/ 34136 #define IExplorerPaneVisibility_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 34137 #define IExplorerPaneVisibility_AddRef(This) (This)->lpVtbl->AddRef(This) 34138 #define IExplorerPaneVisibility_Release(This) (This)->lpVtbl->Release(This) 34139 /*** IExplorerPaneVisibility methods ***/ 34140 #define IExplorerPaneVisibility_GetPaneState(This,ep,peps) (This)->lpVtbl->GetPaneState(This,ep,peps) 34141 #else 34142 /*** IUnknown methods ***/ 34143 static FORCEINLINE HRESULT IExplorerPaneVisibility_QueryInterface(IExplorerPaneVisibility* This,REFIID riid,void **ppvObject) { 34144 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 34145 } 34146 static FORCEINLINE ULONG IExplorerPaneVisibility_AddRef(IExplorerPaneVisibility* This) { 34147 return This->lpVtbl->AddRef(This); 34148 } 34149 static FORCEINLINE ULONG IExplorerPaneVisibility_Release(IExplorerPaneVisibility* This) { 34150 return This->lpVtbl->Release(This); 34151 } 34152 /*** IExplorerPaneVisibility methods ***/ 34153 static FORCEINLINE HRESULT IExplorerPaneVisibility_GetPaneState(IExplorerPaneVisibility* This,REFEXPLORERPANE ep,EXPLORERPANESTATE *peps) { 34154 return This->lpVtbl->GetPaneState(This,ep,peps); 34155 } 34156 #endif 34157 #endif 34158 34159 #endif 34160 34161 HRESULT STDMETHODCALLTYPE IExplorerPaneVisibility_GetPaneState_Proxy( 34162 IExplorerPaneVisibility* This, 34163 REFEXPLORERPANE ep, 34164 EXPLORERPANESTATE *peps); 34165 void __RPC_STUB IExplorerPaneVisibility_GetPaneState_Stub( 34166 IRpcStubBuffer* This, 34167 IRpcChannelBuffer* pRpcChannelBuffer, 34168 PRPC_MESSAGE pRpcMessage, 34169 DWORD* pdwStubPhase); 34170 34171 #endif /* __IExplorerPaneVisibility_INTERFACE_DEFINED__ */ 34172 34173 34174 #define SID_ExplorerPaneVisibility IID_IExplorerPaneVisibility 34175 34176 /***************************************************************************** 34177 * IContextMenuCB interface 34178 */ 34179 #ifndef __IContextMenuCB_INTERFACE_DEFINED__ 34180 #define __IContextMenuCB_INTERFACE_DEFINED__ 34181 34182 DEFINE_GUID(IID_IContextMenuCB, 0x3409e930, 0x5a39, 0x11d1, 0x83,0xfa, 0x00,0xa0,0xc9,0x0d,0xc8,0x49); 34183 #if defined(__cplusplus) && !defined(CINTERFACE) 34184 MIDL_INTERFACE("3409e930-5a39-11d1-83fa-00a0c90dc849") 34185 IContextMenuCB : public IUnknown 34186 { 34187 virtual HRESULT STDMETHODCALLTYPE CallBack( 34188 IShellFolder *psf, 34189 HWND hwndOwner, 34190 IDataObject *pdtobj, 34191 UINT uMsg, 34192 WPARAM wParam, 34193 LPARAM lParam) = 0; 34194 34195 }; 34196 #ifdef __CRT_UUID_DECL 34197 __CRT_UUID_DECL(IContextMenuCB, 0x3409e930, 0x5a39, 0x11d1, 0x83,0xfa, 0x00,0xa0,0xc9,0x0d,0xc8,0x49) 34198 #endif 34199 #else 34200 typedef struct IContextMenuCBVtbl { 34201 BEGIN_INTERFACE 34202 34203 /*** IUnknown methods ***/ 34204 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 34205 IContextMenuCB* This, 34206 REFIID riid, 34207 void **ppvObject); 34208 34209 ULONG (STDMETHODCALLTYPE *AddRef)( 34210 IContextMenuCB* This); 34211 34212 ULONG (STDMETHODCALLTYPE *Release)( 34213 IContextMenuCB* This); 34214 34215 /*** IContextMenuCB methods ***/ 34216 HRESULT (STDMETHODCALLTYPE *CallBack)( 34217 IContextMenuCB* This, 34218 IShellFolder *psf, 34219 HWND hwndOwner, 34220 IDataObject *pdtobj, 34221 UINT uMsg, 34222 WPARAM wParam, 34223 LPARAM lParam); 34224 34225 END_INTERFACE 34226 } IContextMenuCBVtbl; 34227 interface IContextMenuCB { 34228 CONST_VTBL IContextMenuCBVtbl* lpVtbl; 34229 }; 34230 34231 #ifdef COBJMACROS 34232 #ifndef WIDL_C_INLINE_WRAPPERS 34233 /*** IUnknown methods ***/ 34234 #define IContextMenuCB_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 34235 #define IContextMenuCB_AddRef(This) (This)->lpVtbl->AddRef(This) 34236 #define IContextMenuCB_Release(This) (This)->lpVtbl->Release(This) 34237 /*** IContextMenuCB methods ***/ 34238 #define IContextMenuCB_CallBack(This,psf,hwndOwner,pdtobj,uMsg,wParam,lParam) (This)->lpVtbl->CallBack(This,psf,hwndOwner,pdtobj,uMsg,wParam,lParam) 34239 #else 34240 /*** IUnknown methods ***/ 34241 static FORCEINLINE HRESULT IContextMenuCB_QueryInterface(IContextMenuCB* This,REFIID riid,void **ppvObject) { 34242 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 34243 } 34244 static FORCEINLINE ULONG IContextMenuCB_AddRef(IContextMenuCB* This) { 34245 return This->lpVtbl->AddRef(This); 34246 } 34247 static FORCEINLINE ULONG IContextMenuCB_Release(IContextMenuCB* This) { 34248 return This->lpVtbl->Release(This); 34249 } 34250 /*** IContextMenuCB methods ***/ 34251 static FORCEINLINE HRESULT IContextMenuCB_CallBack(IContextMenuCB* This,IShellFolder *psf,HWND hwndOwner,IDataObject *pdtobj,UINT uMsg,WPARAM wParam,LPARAM lParam) { 34252 return This->lpVtbl->CallBack(This,psf,hwndOwner,pdtobj,uMsg,wParam,lParam); 34253 } 34254 #endif 34255 #endif 34256 34257 #endif 34258 34259 HRESULT STDMETHODCALLTYPE IContextMenuCB_CallBack_Proxy( 34260 IContextMenuCB* This, 34261 IShellFolder *psf, 34262 HWND hwndOwner, 34263 IDataObject *pdtobj, 34264 UINT uMsg, 34265 WPARAM wParam, 34266 LPARAM lParam); 34267 void __RPC_STUB IContextMenuCB_CallBack_Stub( 34268 IRpcStubBuffer* This, 34269 IRpcChannelBuffer* pRpcChannelBuffer, 34270 PRPC_MESSAGE pRpcMessage, 34271 DWORD* pdwStubPhase); 34272 34273 #endif /* __IContextMenuCB_INTERFACE_DEFINED__ */ 34274 34275 #endif 34276 34277 /***************************************************************************** 34278 * IDefaultExtractIconInit interface 34279 */ 34280 #ifndef __IDefaultExtractIconInit_INTERFACE_DEFINED__ 34281 #define __IDefaultExtractIconInit_INTERFACE_DEFINED__ 34282 34283 DEFINE_GUID(IID_IDefaultExtractIconInit, 0x41ded17d, 0xd6b3, 0x4261, 0x99,0x7d, 0x88,0xc6,0x0e,0x4b,0x1d,0x58); 34284 #if defined(__cplusplus) && !defined(CINTERFACE) 34285 MIDL_INTERFACE("41ded17d-d6b3-4261-997d-88c60e4b1d58") 34286 IDefaultExtractIconInit : public IUnknown 34287 { 34288 virtual HRESULT STDMETHODCALLTYPE SetFlags( 34289 UINT uFlags) = 0; 34290 34291 virtual HRESULT STDMETHODCALLTYPE SetKey( 34292 HKEY hkey) = 0; 34293 34294 virtual HRESULT STDMETHODCALLTYPE SetNormalIcon( 34295 LPCWSTR pszFile, 34296 int iIcon) = 0; 34297 34298 virtual HRESULT STDMETHODCALLTYPE SetOpenIcon( 34299 LPCWSTR pszFile, 34300 int iIcon) = 0; 34301 34302 virtual HRESULT STDMETHODCALLTYPE SetShortcutIcon( 34303 LPCWSTR pszFile, 34304 int iIcon) = 0; 34305 34306 virtual HRESULT STDMETHODCALLTYPE SetDefaultIcon( 34307 LPCWSTR pszFile, 34308 int iIcon) = 0; 34309 34310 }; 34311 #ifdef __CRT_UUID_DECL 34312 __CRT_UUID_DECL(IDefaultExtractIconInit, 0x41ded17d, 0xd6b3, 0x4261, 0x99,0x7d, 0x88,0xc6,0x0e,0x4b,0x1d,0x58) 34313 #endif 34314 #else 34315 typedef struct IDefaultExtractIconInitVtbl { 34316 BEGIN_INTERFACE 34317 34318 /*** IUnknown methods ***/ 34319 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 34320 IDefaultExtractIconInit* This, 34321 REFIID riid, 34322 void **ppvObject); 34323 34324 ULONG (STDMETHODCALLTYPE *AddRef)( 34325 IDefaultExtractIconInit* This); 34326 34327 ULONG (STDMETHODCALLTYPE *Release)( 34328 IDefaultExtractIconInit* This); 34329 34330 /*** IDefaultExtractIconInit methods ***/ 34331 HRESULT (STDMETHODCALLTYPE *SetFlags)( 34332 IDefaultExtractIconInit* This, 34333 UINT uFlags); 34334 34335 HRESULT (STDMETHODCALLTYPE *SetKey)( 34336 IDefaultExtractIconInit* This, 34337 HKEY hkey); 34338 34339 HRESULT (STDMETHODCALLTYPE *SetNormalIcon)( 34340 IDefaultExtractIconInit* This, 34341 LPCWSTR pszFile, 34342 int iIcon); 34343 34344 HRESULT (STDMETHODCALLTYPE *SetOpenIcon)( 34345 IDefaultExtractIconInit* This, 34346 LPCWSTR pszFile, 34347 int iIcon); 34348 34349 HRESULT (STDMETHODCALLTYPE *SetShortcutIcon)( 34350 IDefaultExtractIconInit* This, 34351 LPCWSTR pszFile, 34352 int iIcon); 34353 34354 HRESULT (STDMETHODCALLTYPE *SetDefaultIcon)( 34355 IDefaultExtractIconInit* This, 34356 LPCWSTR pszFile, 34357 int iIcon); 34358 34359 END_INTERFACE 34360 } IDefaultExtractIconInitVtbl; 34361 interface IDefaultExtractIconInit { 34362 CONST_VTBL IDefaultExtractIconInitVtbl* lpVtbl; 34363 }; 34364 34365 #ifdef COBJMACROS 34366 #ifndef WIDL_C_INLINE_WRAPPERS 34367 /*** IUnknown methods ***/ 34368 #define IDefaultExtractIconInit_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 34369 #define IDefaultExtractIconInit_AddRef(This) (This)->lpVtbl->AddRef(This) 34370 #define IDefaultExtractIconInit_Release(This) (This)->lpVtbl->Release(This) 34371 /*** IDefaultExtractIconInit methods ***/ 34372 #define IDefaultExtractIconInit_SetFlags(This,uFlags) (This)->lpVtbl->SetFlags(This,uFlags) 34373 #define IDefaultExtractIconInit_SetKey(This,hkey) (This)->lpVtbl->SetKey(This,hkey) 34374 #define IDefaultExtractIconInit_SetNormalIcon(This,pszFile,iIcon) (This)->lpVtbl->SetNormalIcon(This,pszFile,iIcon) 34375 #define IDefaultExtractIconInit_SetOpenIcon(This,pszFile,iIcon) (This)->lpVtbl->SetOpenIcon(This,pszFile,iIcon) 34376 #define IDefaultExtractIconInit_SetShortcutIcon(This,pszFile,iIcon) (This)->lpVtbl->SetShortcutIcon(This,pszFile,iIcon) 34377 #define IDefaultExtractIconInit_SetDefaultIcon(This,pszFile,iIcon) (This)->lpVtbl->SetDefaultIcon(This,pszFile,iIcon) 34378 #else 34379 /*** IUnknown methods ***/ 34380 static FORCEINLINE HRESULT IDefaultExtractIconInit_QueryInterface(IDefaultExtractIconInit* This,REFIID riid,void **ppvObject) { 34381 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 34382 } 34383 static FORCEINLINE ULONG IDefaultExtractIconInit_AddRef(IDefaultExtractIconInit* This) { 34384 return This->lpVtbl->AddRef(This); 34385 } 34386 static FORCEINLINE ULONG IDefaultExtractIconInit_Release(IDefaultExtractIconInit* This) { 34387 return This->lpVtbl->Release(This); 34388 } 34389 /*** IDefaultExtractIconInit methods ***/ 34390 static FORCEINLINE HRESULT IDefaultExtractIconInit_SetFlags(IDefaultExtractIconInit* This,UINT uFlags) { 34391 return This->lpVtbl->SetFlags(This,uFlags); 34392 } 34393 static FORCEINLINE HRESULT IDefaultExtractIconInit_SetKey(IDefaultExtractIconInit* This,HKEY hkey) { 34394 return This->lpVtbl->SetKey(This,hkey); 34395 } 34396 static FORCEINLINE HRESULT IDefaultExtractIconInit_SetNormalIcon(IDefaultExtractIconInit* This,LPCWSTR pszFile,int iIcon) { 34397 return This->lpVtbl->SetNormalIcon(This,pszFile,iIcon); 34398 } 34399 static FORCEINLINE HRESULT IDefaultExtractIconInit_SetOpenIcon(IDefaultExtractIconInit* This,LPCWSTR pszFile,int iIcon) { 34400 return This->lpVtbl->SetOpenIcon(This,pszFile,iIcon); 34401 } 34402 static FORCEINLINE HRESULT IDefaultExtractIconInit_SetShortcutIcon(IDefaultExtractIconInit* This,LPCWSTR pszFile,int iIcon) { 34403 return This->lpVtbl->SetShortcutIcon(This,pszFile,iIcon); 34404 } 34405 static FORCEINLINE HRESULT IDefaultExtractIconInit_SetDefaultIcon(IDefaultExtractIconInit* This,LPCWSTR pszFile,int iIcon) { 34406 return This->lpVtbl->SetDefaultIcon(This,pszFile,iIcon); 34407 } 34408 #endif 34409 #endif 34410 34411 #endif 34412 34413 HRESULT STDMETHODCALLTYPE IDefaultExtractIconInit_SetFlags_Proxy( 34414 IDefaultExtractIconInit* This, 34415 UINT uFlags); 34416 void __RPC_STUB IDefaultExtractIconInit_SetFlags_Stub( 34417 IRpcStubBuffer* This, 34418 IRpcChannelBuffer* pRpcChannelBuffer, 34419 PRPC_MESSAGE pRpcMessage, 34420 DWORD* pdwStubPhase); 34421 HRESULT STDMETHODCALLTYPE IDefaultExtractIconInit_SetKey_Proxy( 34422 IDefaultExtractIconInit* This, 34423 HKEY hkey); 34424 void __RPC_STUB IDefaultExtractIconInit_SetKey_Stub( 34425 IRpcStubBuffer* This, 34426 IRpcChannelBuffer* pRpcChannelBuffer, 34427 PRPC_MESSAGE pRpcMessage, 34428 DWORD* pdwStubPhase); 34429 HRESULT STDMETHODCALLTYPE IDefaultExtractIconInit_SetNormalIcon_Proxy( 34430 IDefaultExtractIconInit* This, 34431 LPCWSTR pszFile, 34432 int iIcon); 34433 void __RPC_STUB IDefaultExtractIconInit_SetNormalIcon_Stub( 34434 IRpcStubBuffer* This, 34435 IRpcChannelBuffer* pRpcChannelBuffer, 34436 PRPC_MESSAGE pRpcMessage, 34437 DWORD* pdwStubPhase); 34438 HRESULT STDMETHODCALLTYPE IDefaultExtractIconInit_SetOpenIcon_Proxy( 34439 IDefaultExtractIconInit* This, 34440 LPCWSTR pszFile, 34441 int iIcon); 34442 void __RPC_STUB IDefaultExtractIconInit_SetOpenIcon_Stub( 34443 IRpcStubBuffer* This, 34444 IRpcChannelBuffer* pRpcChannelBuffer, 34445 PRPC_MESSAGE pRpcMessage, 34446 DWORD* pdwStubPhase); 34447 HRESULT STDMETHODCALLTYPE IDefaultExtractIconInit_SetShortcutIcon_Proxy( 34448 IDefaultExtractIconInit* This, 34449 LPCWSTR pszFile, 34450 int iIcon); 34451 void __RPC_STUB IDefaultExtractIconInit_SetShortcutIcon_Stub( 34452 IRpcStubBuffer* This, 34453 IRpcChannelBuffer* pRpcChannelBuffer, 34454 PRPC_MESSAGE pRpcMessage, 34455 DWORD* pdwStubPhase); 34456 HRESULT STDMETHODCALLTYPE IDefaultExtractIconInit_SetDefaultIcon_Proxy( 34457 IDefaultExtractIconInit* This, 34458 LPCWSTR pszFile, 34459 int iIcon); 34460 void __RPC_STUB IDefaultExtractIconInit_SetDefaultIcon_Stub( 34461 IRpcStubBuffer* This, 34462 IRpcChannelBuffer* pRpcChannelBuffer, 34463 PRPC_MESSAGE pRpcMessage, 34464 DWORD* pdwStubPhase); 34465 34466 #endif /* __IDefaultExtractIconInit_INTERFACE_DEFINED__ */ 34467 34468 34469 STDAPI SHCreateDefaultExtractIcon(REFIID riid, void **ppv); 34470 34471 #ifndef __IEnumExplorerCommand_FWD_DEFINED__ 34472 #define __IEnumExplorerCommand_FWD_DEFINED__ 34473 typedef interface IEnumExplorerCommand IEnumExplorerCommand; 34474 #endif 34475 34476 34477 /***************************************************************************** 34478 * IExplorerCommand interface 34479 */ 34480 #ifndef __IExplorerCommand_INTERFACE_DEFINED__ 34481 #define __IExplorerCommand_INTERFACE_DEFINED__ 34482 34483 enum _EXPCMDSTATE { 34484 ECS_ENABLED = 0x0, 34485 ECS_DISABLED = 0x1, 34486 ECS_HIDDEN = 0x2, 34487 ECS_CHECKBOX = 0x4, 34488 ECS_CHECKED = 0x8, 34489 ECS_RADIOCHECK = 0x10 34490 }; 34491 34492 34493 typedef DWORD EXPCMDSTATE; 34494 34495 enum _EXPCMDFLAGS { 34496 ECF_DEFAULT = 0x0, 34497 ECF_HASSUBCOMMANDS = 0x1, 34498 ECF_HASSPLITBUTTON = 0x2, 34499 ECF_HIDELABEL = 0x4, 34500 ECF_ISSEPARATOR = 0x8, 34501 ECF_HASLUASHIELD = 0x10, 34502 ECF_SEPARATORBEFORE = 0x20, 34503 ECF_SEPARATORAFTER = 0x40, 34504 ECF_ISDROPDOWN = 0x80, 34505 ECF_TOGGLEABLE = 0x100, 34506 ECF_AUTOMENUICONS = 0x200 34507 }; 34508 34509 34510 typedef DWORD EXPCMDFLAGS; 34511 34512 DEFINE_GUID(IID_IExplorerCommand, 0xa08ce4d0, 0xfa25, 0x44ab, 0xb5,0x7c, 0xc7,0xb1,0xc3,0x23,0xe0,0xb9); 34513 #if defined(__cplusplus) && !defined(CINTERFACE) 34514 MIDL_INTERFACE("a08ce4d0-fa25-44ab-b57c-c7b1c323e0b9") 34515 IExplorerCommand : public IUnknown 34516 { 34517 virtual HRESULT STDMETHODCALLTYPE GetTitle( 34518 IShellItemArray *psiItemArray, 34519 LPWSTR *ppszName) = 0; 34520 34521 virtual HRESULT STDMETHODCALLTYPE GetIcon( 34522 IShellItemArray *psiItemArray, 34523 LPWSTR *ppszIcon) = 0; 34524 34525 virtual HRESULT STDMETHODCALLTYPE GetToolTip( 34526 IShellItemArray *psiItemArray, 34527 LPWSTR *ppszInfotip) = 0; 34528 34529 virtual HRESULT STDMETHODCALLTYPE GetCanonicalName( 34530 GUID *pguidCommandName) = 0; 34531 34532 virtual HRESULT STDMETHODCALLTYPE GetState( 34533 IShellItemArray *psiItemArray, 34534 WINBOOL fOkToBeSlow, 34535 EXPCMDSTATE *pCmdState) = 0; 34536 34537 virtual HRESULT STDMETHODCALLTYPE Invoke( 34538 IShellItemArray *psiItemArray, 34539 IBindCtx *pbc) = 0; 34540 34541 virtual HRESULT STDMETHODCALLTYPE GetFlags( 34542 EXPCMDFLAGS *pFlags) = 0; 34543 34544 virtual HRESULT STDMETHODCALLTYPE EnumSubCommands( 34545 IEnumExplorerCommand **ppEnum) = 0; 34546 34547 }; 34548 #ifdef __CRT_UUID_DECL 34549 __CRT_UUID_DECL(IExplorerCommand, 0xa08ce4d0, 0xfa25, 0x44ab, 0xb5,0x7c, 0xc7,0xb1,0xc3,0x23,0xe0,0xb9) 34550 #endif 34551 #else 34552 typedef struct IExplorerCommandVtbl { 34553 BEGIN_INTERFACE 34554 34555 /*** IUnknown methods ***/ 34556 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 34557 IExplorerCommand* This, 34558 REFIID riid, 34559 void **ppvObject); 34560 34561 ULONG (STDMETHODCALLTYPE *AddRef)( 34562 IExplorerCommand* This); 34563 34564 ULONG (STDMETHODCALLTYPE *Release)( 34565 IExplorerCommand* This); 34566 34567 /*** IExplorerCommand methods ***/ 34568 HRESULT (STDMETHODCALLTYPE *GetTitle)( 34569 IExplorerCommand* This, 34570 IShellItemArray *psiItemArray, 34571 LPWSTR *ppszName); 34572 34573 HRESULT (STDMETHODCALLTYPE *GetIcon)( 34574 IExplorerCommand* This, 34575 IShellItemArray *psiItemArray, 34576 LPWSTR *ppszIcon); 34577 34578 HRESULT (STDMETHODCALLTYPE *GetToolTip)( 34579 IExplorerCommand* This, 34580 IShellItemArray *psiItemArray, 34581 LPWSTR *ppszInfotip); 34582 34583 HRESULT (STDMETHODCALLTYPE *GetCanonicalName)( 34584 IExplorerCommand* This, 34585 GUID *pguidCommandName); 34586 34587 HRESULT (STDMETHODCALLTYPE *GetState)( 34588 IExplorerCommand* This, 34589 IShellItemArray *psiItemArray, 34590 WINBOOL fOkToBeSlow, 34591 EXPCMDSTATE *pCmdState); 34592 34593 HRESULT (STDMETHODCALLTYPE *Invoke)( 34594 IExplorerCommand* This, 34595 IShellItemArray *psiItemArray, 34596 IBindCtx *pbc); 34597 34598 HRESULT (STDMETHODCALLTYPE *GetFlags)( 34599 IExplorerCommand* This, 34600 EXPCMDFLAGS *pFlags); 34601 34602 HRESULT (STDMETHODCALLTYPE *EnumSubCommands)( 34603 IExplorerCommand* This, 34604 IEnumExplorerCommand **ppEnum); 34605 34606 END_INTERFACE 34607 } IExplorerCommandVtbl; 34608 interface IExplorerCommand { 34609 CONST_VTBL IExplorerCommandVtbl* lpVtbl; 34610 }; 34611 34612 #ifdef COBJMACROS 34613 #ifndef WIDL_C_INLINE_WRAPPERS 34614 /*** IUnknown methods ***/ 34615 #define IExplorerCommand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 34616 #define IExplorerCommand_AddRef(This) (This)->lpVtbl->AddRef(This) 34617 #define IExplorerCommand_Release(This) (This)->lpVtbl->Release(This) 34618 /*** IExplorerCommand methods ***/ 34619 #define IExplorerCommand_GetTitle(This,psiItemArray,ppszName) (This)->lpVtbl->GetTitle(This,psiItemArray,ppszName) 34620 #define IExplorerCommand_GetIcon(This,psiItemArray,ppszIcon) (This)->lpVtbl->GetIcon(This,psiItemArray,ppszIcon) 34621 #define IExplorerCommand_GetToolTip(This,psiItemArray,ppszInfotip) (This)->lpVtbl->GetToolTip(This,psiItemArray,ppszInfotip) 34622 #define IExplorerCommand_GetCanonicalName(This,pguidCommandName) (This)->lpVtbl->GetCanonicalName(This,pguidCommandName) 34623 #define IExplorerCommand_GetState(This,psiItemArray,fOkToBeSlow,pCmdState) (This)->lpVtbl->GetState(This,psiItemArray,fOkToBeSlow,pCmdState) 34624 #define IExplorerCommand_Invoke(This,psiItemArray,pbc) (This)->lpVtbl->Invoke(This,psiItemArray,pbc) 34625 #define IExplorerCommand_GetFlags(This,pFlags) (This)->lpVtbl->GetFlags(This,pFlags) 34626 #define IExplorerCommand_EnumSubCommands(This,ppEnum) (This)->lpVtbl->EnumSubCommands(This,ppEnum) 34627 #else 34628 /*** IUnknown methods ***/ 34629 static FORCEINLINE HRESULT IExplorerCommand_QueryInterface(IExplorerCommand* This,REFIID riid,void **ppvObject) { 34630 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 34631 } 34632 static FORCEINLINE ULONG IExplorerCommand_AddRef(IExplorerCommand* This) { 34633 return This->lpVtbl->AddRef(This); 34634 } 34635 static FORCEINLINE ULONG IExplorerCommand_Release(IExplorerCommand* This) { 34636 return This->lpVtbl->Release(This); 34637 } 34638 /*** IExplorerCommand methods ***/ 34639 static FORCEINLINE HRESULT IExplorerCommand_GetTitle(IExplorerCommand* This,IShellItemArray *psiItemArray,LPWSTR *ppszName) { 34640 return This->lpVtbl->GetTitle(This,psiItemArray,ppszName); 34641 } 34642 static FORCEINLINE HRESULT IExplorerCommand_GetIcon(IExplorerCommand* This,IShellItemArray *psiItemArray,LPWSTR *ppszIcon) { 34643 return This->lpVtbl->GetIcon(This,psiItemArray,ppszIcon); 34644 } 34645 static FORCEINLINE HRESULT IExplorerCommand_GetToolTip(IExplorerCommand* This,IShellItemArray *psiItemArray,LPWSTR *ppszInfotip) { 34646 return This->lpVtbl->GetToolTip(This,psiItemArray,ppszInfotip); 34647 } 34648 static FORCEINLINE HRESULT IExplorerCommand_GetCanonicalName(IExplorerCommand* This,GUID *pguidCommandName) { 34649 return This->lpVtbl->GetCanonicalName(This,pguidCommandName); 34650 } 34651 static FORCEINLINE HRESULT IExplorerCommand_GetState(IExplorerCommand* This,IShellItemArray *psiItemArray,WINBOOL fOkToBeSlow,EXPCMDSTATE *pCmdState) { 34652 return This->lpVtbl->GetState(This,psiItemArray,fOkToBeSlow,pCmdState); 34653 } 34654 static FORCEINLINE HRESULT IExplorerCommand_Invoke(IExplorerCommand* This,IShellItemArray *psiItemArray,IBindCtx *pbc) { 34655 return This->lpVtbl->Invoke(This,psiItemArray,pbc); 34656 } 34657 static FORCEINLINE HRESULT IExplorerCommand_GetFlags(IExplorerCommand* This,EXPCMDFLAGS *pFlags) { 34658 return This->lpVtbl->GetFlags(This,pFlags); 34659 } 34660 static FORCEINLINE HRESULT IExplorerCommand_EnumSubCommands(IExplorerCommand* This,IEnumExplorerCommand **ppEnum) { 34661 return This->lpVtbl->EnumSubCommands(This,ppEnum); 34662 } 34663 #endif 34664 #endif 34665 34666 #endif 34667 34668 HRESULT STDMETHODCALLTYPE IExplorerCommand_GetTitle_Proxy( 34669 IExplorerCommand* This, 34670 IShellItemArray *psiItemArray, 34671 LPWSTR *ppszName); 34672 void __RPC_STUB IExplorerCommand_GetTitle_Stub( 34673 IRpcStubBuffer* This, 34674 IRpcChannelBuffer* pRpcChannelBuffer, 34675 PRPC_MESSAGE pRpcMessage, 34676 DWORD* pdwStubPhase); 34677 HRESULT STDMETHODCALLTYPE IExplorerCommand_GetIcon_Proxy( 34678 IExplorerCommand* This, 34679 IShellItemArray *psiItemArray, 34680 LPWSTR *ppszIcon); 34681 void __RPC_STUB IExplorerCommand_GetIcon_Stub( 34682 IRpcStubBuffer* This, 34683 IRpcChannelBuffer* pRpcChannelBuffer, 34684 PRPC_MESSAGE pRpcMessage, 34685 DWORD* pdwStubPhase); 34686 HRESULT STDMETHODCALLTYPE IExplorerCommand_GetToolTip_Proxy( 34687 IExplorerCommand* This, 34688 IShellItemArray *psiItemArray, 34689 LPWSTR *ppszInfotip); 34690 void __RPC_STUB IExplorerCommand_GetToolTip_Stub( 34691 IRpcStubBuffer* This, 34692 IRpcChannelBuffer* pRpcChannelBuffer, 34693 PRPC_MESSAGE pRpcMessage, 34694 DWORD* pdwStubPhase); 34695 HRESULT STDMETHODCALLTYPE IExplorerCommand_GetCanonicalName_Proxy( 34696 IExplorerCommand* This, 34697 GUID *pguidCommandName); 34698 void __RPC_STUB IExplorerCommand_GetCanonicalName_Stub( 34699 IRpcStubBuffer* This, 34700 IRpcChannelBuffer* pRpcChannelBuffer, 34701 PRPC_MESSAGE pRpcMessage, 34702 DWORD* pdwStubPhase); 34703 HRESULT STDMETHODCALLTYPE IExplorerCommand_GetState_Proxy( 34704 IExplorerCommand* This, 34705 IShellItemArray *psiItemArray, 34706 WINBOOL fOkToBeSlow, 34707 EXPCMDSTATE *pCmdState); 34708 void __RPC_STUB IExplorerCommand_GetState_Stub( 34709 IRpcStubBuffer* This, 34710 IRpcChannelBuffer* pRpcChannelBuffer, 34711 PRPC_MESSAGE pRpcMessage, 34712 DWORD* pdwStubPhase); 34713 HRESULT STDMETHODCALLTYPE IExplorerCommand_Invoke_Proxy( 34714 IExplorerCommand* This, 34715 IShellItemArray *psiItemArray, 34716 IBindCtx *pbc); 34717 void __RPC_STUB IExplorerCommand_Invoke_Stub( 34718 IRpcStubBuffer* This, 34719 IRpcChannelBuffer* pRpcChannelBuffer, 34720 PRPC_MESSAGE pRpcMessage, 34721 DWORD* pdwStubPhase); 34722 HRESULT STDMETHODCALLTYPE IExplorerCommand_GetFlags_Proxy( 34723 IExplorerCommand* This, 34724 EXPCMDFLAGS *pFlags); 34725 void __RPC_STUB IExplorerCommand_GetFlags_Stub( 34726 IRpcStubBuffer* This, 34727 IRpcChannelBuffer* pRpcChannelBuffer, 34728 PRPC_MESSAGE pRpcMessage, 34729 DWORD* pdwStubPhase); 34730 HRESULT STDMETHODCALLTYPE IExplorerCommand_EnumSubCommands_Proxy( 34731 IExplorerCommand* This, 34732 IEnumExplorerCommand **ppEnum); 34733 void __RPC_STUB IExplorerCommand_EnumSubCommands_Stub( 34734 IRpcStubBuffer* This, 34735 IRpcChannelBuffer* pRpcChannelBuffer, 34736 PRPC_MESSAGE pRpcMessage, 34737 DWORD* pdwStubPhase); 34738 34739 #endif /* __IExplorerCommand_INTERFACE_DEFINED__ */ 34740 34741 34742 /***************************************************************************** 34743 * IExplorerCommandState interface 34744 */ 34745 #ifndef __IExplorerCommandState_INTERFACE_DEFINED__ 34746 #define __IExplorerCommandState_INTERFACE_DEFINED__ 34747 34748 DEFINE_GUID(IID_IExplorerCommandState, 0xbddacb60, 0x7657, 0x47ae, 0x84,0x45, 0xd2,0x3e,0x1a,0xcf,0x82,0xae); 34749 #if defined(__cplusplus) && !defined(CINTERFACE) 34750 MIDL_INTERFACE("bddacb60-7657-47ae-8445-d23e1acf82ae") 34751 IExplorerCommandState : public IUnknown 34752 { 34753 virtual HRESULT STDMETHODCALLTYPE GetState( 34754 IShellItemArray *psiItemArray, 34755 WINBOOL fOkToBeSlow, 34756 EXPCMDSTATE *pCmdState) = 0; 34757 34758 }; 34759 #ifdef __CRT_UUID_DECL 34760 __CRT_UUID_DECL(IExplorerCommandState, 0xbddacb60, 0x7657, 0x47ae, 0x84,0x45, 0xd2,0x3e,0x1a,0xcf,0x82,0xae) 34761 #endif 34762 #else 34763 typedef struct IExplorerCommandStateVtbl { 34764 BEGIN_INTERFACE 34765 34766 /*** IUnknown methods ***/ 34767 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 34768 IExplorerCommandState* This, 34769 REFIID riid, 34770 void **ppvObject); 34771 34772 ULONG (STDMETHODCALLTYPE *AddRef)( 34773 IExplorerCommandState* This); 34774 34775 ULONG (STDMETHODCALLTYPE *Release)( 34776 IExplorerCommandState* This); 34777 34778 /*** IExplorerCommandState methods ***/ 34779 HRESULT (STDMETHODCALLTYPE *GetState)( 34780 IExplorerCommandState* This, 34781 IShellItemArray *psiItemArray, 34782 WINBOOL fOkToBeSlow, 34783 EXPCMDSTATE *pCmdState); 34784 34785 END_INTERFACE 34786 } IExplorerCommandStateVtbl; 34787 interface IExplorerCommandState { 34788 CONST_VTBL IExplorerCommandStateVtbl* lpVtbl; 34789 }; 34790 34791 #ifdef COBJMACROS 34792 #ifndef WIDL_C_INLINE_WRAPPERS 34793 /*** IUnknown methods ***/ 34794 #define IExplorerCommandState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 34795 #define IExplorerCommandState_AddRef(This) (This)->lpVtbl->AddRef(This) 34796 #define IExplorerCommandState_Release(This) (This)->lpVtbl->Release(This) 34797 /*** IExplorerCommandState methods ***/ 34798 #define IExplorerCommandState_GetState(This,psiItemArray,fOkToBeSlow,pCmdState) (This)->lpVtbl->GetState(This,psiItemArray,fOkToBeSlow,pCmdState) 34799 #else 34800 /*** IUnknown methods ***/ 34801 static FORCEINLINE HRESULT IExplorerCommandState_QueryInterface(IExplorerCommandState* This,REFIID riid,void **ppvObject) { 34802 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 34803 } 34804 static FORCEINLINE ULONG IExplorerCommandState_AddRef(IExplorerCommandState* This) { 34805 return This->lpVtbl->AddRef(This); 34806 } 34807 static FORCEINLINE ULONG IExplorerCommandState_Release(IExplorerCommandState* This) { 34808 return This->lpVtbl->Release(This); 34809 } 34810 /*** IExplorerCommandState methods ***/ 34811 static FORCEINLINE HRESULT IExplorerCommandState_GetState(IExplorerCommandState* This,IShellItemArray *psiItemArray,WINBOOL fOkToBeSlow,EXPCMDSTATE *pCmdState) { 34812 return This->lpVtbl->GetState(This,psiItemArray,fOkToBeSlow,pCmdState); 34813 } 34814 #endif 34815 #endif 34816 34817 #endif 34818 34819 HRESULT STDMETHODCALLTYPE IExplorerCommandState_GetState_Proxy( 34820 IExplorerCommandState* This, 34821 IShellItemArray *psiItemArray, 34822 WINBOOL fOkToBeSlow, 34823 EXPCMDSTATE *pCmdState); 34824 void __RPC_STUB IExplorerCommandState_GetState_Stub( 34825 IRpcStubBuffer* This, 34826 IRpcChannelBuffer* pRpcChannelBuffer, 34827 PRPC_MESSAGE pRpcMessage, 34828 DWORD* pdwStubPhase); 34829 34830 #endif /* __IExplorerCommandState_INTERFACE_DEFINED__ */ 34831 34832 34833 /***************************************************************************** 34834 * IInitializeCommand interface 34835 */ 34836 #ifndef __IInitializeCommand_INTERFACE_DEFINED__ 34837 #define __IInitializeCommand_INTERFACE_DEFINED__ 34838 34839 DEFINE_GUID(IID_IInitializeCommand, 0x85075acf, 0x231f, 0x40ea, 0x96,0x10, 0xd2,0x6b,0x7b,0x58,0xf6,0x38); 34840 #if defined(__cplusplus) && !defined(CINTERFACE) 34841 MIDL_INTERFACE("85075acf-231f-40ea-9610-d26b7b58f638") 34842 IInitializeCommand : public IUnknown 34843 { 34844 virtual HRESULT STDMETHODCALLTYPE Initialize( 34845 LPCWSTR pszCommandName, 34846 IPropertyBag *ppb) = 0; 34847 34848 }; 34849 #ifdef __CRT_UUID_DECL 34850 __CRT_UUID_DECL(IInitializeCommand, 0x85075acf, 0x231f, 0x40ea, 0x96,0x10, 0xd2,0x6b,0x7b,0x58,0xf6,0x38) 34851 #endif 34852 #else 34853 typedef struct IInitializeCommandVtbl { 34854 BEGIN_INTERFACE 34855 34856 /*** IUnknown methods ***/ 34857 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 34858 IInitializeCommand* This, 34859 REFIID riid, 34860 void **ppvObject); 34861 34862 ULONG (STDMETHODCALLTYPE *AddRef)( 34863 IInitializeCommand* This); 34864 34865 ULONG (STDMETHODCALLTYPE *Release)( 34866 IInitializeCommand* This); 34867 34868 /*** IInitializeCommand methods ***/ 34869 HRESULT (STDMETHODCALLTYPE *Initialize)( 34870 IInitializeCommand* This, 34871 LPCWSTR pszCommandName, 34872 IPropertyBag *ppb); 34873 34874 END_INTERFACE 34875 } IInitializeCommandVtbl; 34876 interface IInitializeCommand { 34877 CONST_VTBL IInitializeCommandVtbl* lpVtbl; 34878 }; 34879 34880 #ifdef COBJMACROS 34881 #ifndef WIDL_C_INLINE_WRAPPERS 34882 /*** IUnknown methods ***/ 34883 #define IInitializeCommand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 34884 #define IInitializeCommand_AddRef(This) (This)->lpVtbl->AddRef(This) 34885 #define IInitializeCommand_Release(This) (This)->lpVtbl->Release(This) 34886 /*** IInitializeCommand methods ***/ 34887 #define IInitializeCommand_Initialize(This,pszCommandName,ppb) (This)->lpVtbl->Initialize(This,pszCommandName,ppb) 34888 #else 34889 /*** IUnknown methods ***/ 34890 static FORCEINLINE HRESULT IInitializeCommand_QueryInterface(IInitializeCommand* This,REFIID riid,void **ppvObject) { 34891 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 34892 } 34893 static FORCEINLINE ULONG IInitializeCommand_AddRef(IInitializeCommand* This) { 34894 return This->lpVtbl->AddRef(This); 34895 } 34896 static FORCEINLINE ULONG IInitializeCommand_Release(IInitializeCommand* This) { 34897 return This->lpVtbl->Release(This); 34898 } 34899 /*** IInitializeCommand methods ***/ 34900 static FORCEINLINE HRESULT IInitializeCommand_Initialize(IInitializeCommand* This,LPCWSTR pszCommandName,IPropertyBag *ppb) { 34901 return This->lpVtbl->Initialize(This,pszCommandName,ppb); 34902 } 34903 #endif 34904 #endif 34905 34906 #endif 34907 34908 HRESULT STDMETHODCALLTYPE IInitializeCommand_Initialize_Proxy( 34909 IInitializeCommand* This, 34910 LPCWSTR pszCommandName, 34911 IPropertyBag *ppb); 34912 void __RPC_STUB IInitializeCommand_Initialize_Stub( 34913 IRpcStubBuffer* This, 34914 IRpcChannelBuffer* pRpcChannelBuffer, 34915 PRPC_MESSAGE pRpcMessage, 34916 DWORD* pdwStubPhase); 34917 34918 #endif /* __IInitializeCommand_INTERFACE_DEFINED__ */ 34919 34920 34921 /***************************************************************************** 34922 * IEnumExplorerCommand interface 34923 */ 34924 #ifndef __IEnumExplorerCommand_INTERFACE_DEFINED__ 34925 #define __IEnumExplorerCommand_INTERFACE_DEFINED__ 34926 34927 DEFINE_GUID(IID_IEnumExplorerCommand, 0xa88826f8, 0x186f, 0x4987, 0xaa,0xde, 0xea,0x0c,0xef,0x8f,0xbf,0xe8); 34928 #if defined(__cplusplus) && !defined(CINTERFACE) 34929 MIDL_INTERFACE("a88826f8-186f-4987-aade-ea0cef8fbfe8") 34930 IEnumExplorerCommand : public IUnknown 34931 { 34932 virtual HRESULT STDMETHODCALLTYPE Next( 34933 ULONG celt, 34934 IExplorerCommand **pUICommand, 34935 ULONG *pceltFetched) = 0; 34936 34937 virtual HRESULT STDMETHODCALLTYPE Skip( 34938 ULONG celt) = 0; 34939 34940 virtual HRESULT STDMETHODCALLTYPE Reset( 34941 ) = 0; 34942 34943 virtual HRESULT STDMETHODCALLTYPE Clone( 34944 IEnumExplorerCommand **ppenum) = 0; 34945 34946 }; 34947 #ifdef __CRT_UUID_DECL 34948 __CRT_UUID_DECL(IEnumExplorerCommand, 0xa88826f8, 0x186f, 0x4987, 0xaa,0xde, 0xea,0x0c,0xef,0x8f,0xbf,0xe8) 34949 #endif 34950 #else 34951 typedef struct IEnumExplorerCommandVtbl { 34952 BEGIN_INTERFACE 34953 34954 /*** IUnknown methods ***/ 34955 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 34956 IEnumExplorerCommand* This, 34957 REFIID riid, 34958 void **ppvObject); 34959 34960 ULONG (STDMETHODCALLTYPE *AddRef)( 34961 IEnumExplorerCommand* This); 34962 34963 ULONG (STDMETHODCALLTYPE *Release)( 34964 IEnumExplorerCommand* This); 34965 34966 /*** IEnumExplorerCommand methods ***/ 34967 HRESULT (STDMETHODCALLTYPE *Next)( 34968 IEnumExplorerCommand* This, 34969 ULONG celt, 34970 IExplorerCommand **pUICommand, 34971 ULONG *pceltFetched); 34972 34973 HRESULT (STDMETHODCALLTYPE *Skip)( 34974 IEnumExplorerCommand* This, 34975 ULONG celt); 34976 34977 HRESULT (STDMETHODCALLTYPE *Reset)( 34978 IEnumExplorerCommand* This); 34979 34980 HRESULT (STDMETHODCALLTYPE *Clone)( 34981 IEnumExplorerCommand* This, 34982 IEnumExplorerCommand **ppenum); 34983 34984 END_INTERFACE 34985 } IEnumExplorerCommandVtbl; 34986 interface IEnumExplorerCommand { 34987 CONST_VTBL IEnumExplorerCommandVtbl* lpVtbl; 34988 }; 34989 34990 #ifdef COBJMACROS 34991 #ifndef WIDL_C_INLINE_WRAPPERS 34992 /*** IUnknown methods ***/ 34993 #define IEnumExplorerCommand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 34994 #define IEnumExplorerCommand_AddRef(This) (This)->lpVtbl->AddRef(This) 34995 #define IEnumExplorerCommand_Release(This) (This)->lpVtbl->Release(This) 34996 /*** IEnumExplorerCommand methods ***/ 34997 #define IEnumExplorerCommand_Next(This,celt,pUICommand,pceltFetched) (This)->lpVtbl->Next(This,celt,pUICommand,pceltFetched) 34998 #define IEnumExplorerCommand_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 34999 #define IEnumExplorerCommand_Reset(This) (This)->lpVtbl->Reset(This) 35000 #define IEnumExplorerCommand_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) 35001 #else 35002 /*** IUnknown methods ***/ 35003 static FORCEINLINE HRESULT IEnumExplorerCommand_QueryInterface(IEnumExplorerCommand* This,REFIID riid,void **ppvObject) { 35004 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 35005 } 35006 static FORCEINLINE ULONG IEnumExplorerCommand_AddRef(IEnumExplorerCommand* This) { 35007 return This->lpVtbl->AddRef(This); 35008 } 35009 static FORCEINLINE ULONG IEnumExplorerCommand_Release(IEnumExplorerCommand* This) { 35010 return This->lpVtbl->Release(This); 35011 } 35012 /*** IEnumExplorerCommand methods ***/ 35013 static FORCEINLINE HRESULT IEnumExplorerCommand_Next(IEnumExplorerCommand* This,ULONG celt,IExplorerCommand **pUICommand,ULONG *pceltFetched) { 35014 return This->lpVtbl->Next(This,celt,pUICommand,pceltFetched); 35015 } 35016 static FORCEINLINE HRESULT IEnumExplorerCommand_Skip(IEnumExplorerCommand* This,ULONG celt) { 35017 return This->lpVtbl->Skip(This,celt); 35018 } 35019 static FORCEINLINE HRESULT IEnumExplorerCommand_Reset(IEnumExplorerCommand* This) { 35020 return This->lpVtbl->Reset(This); 35021 } 35022 static FORCEINLINE HRESULT IEnumExplorerCommand_Clone(IEnumExplorerCommand* This,IEnumExplorerCommand **ppenum) { 35023 return This->lpVtbl->Clone(This,ppenum); 35024 } 35025 #endif 35026 #endif 35027 35028 #endif 35029 35030 HRESULT STDMETHODCALLTYPE IEnumExplorerCommand_RemoteNext_Proxy( 35031 IEnumExplorerCommand* This, 35032 ULONG celt, 35033 IExplorerCommand **pUICommand, 35034 ULONG *pceltFetched); 35035 void __RPC_STUB IEnumExplorerCommand_RemoteNext_Stub( 35036 IRpcStubBuffer* This, 35037 IRpcChannelBuffer* pRpcChannelBuffer, 35038 PRPC_MESSAGE pRpcMessage, 35039 DWORD* pdwStubPhase); 35040 HRESULT STDMETHODCALLTYPE IEnumExplorerCommand_Skip_Proxy( 35041 IEnumExplorerCommand* This, 35042 ULONG celt); 35043 void __RPC_STUB IEnumExplorerCommand_Skip_Stub( 35044 IRpcStubBuffer* This, 35045 IRpcChannelBuffer* pRpcChannelBuffer, 35046 PRPC_MESSAGE pRpcMessage, 35047 DWORD* pdwStubPhase); 35048 HRESULT STDMETHODCALLTYPE IEnumExplorerCommand_Reset_Proxy( 35049 IEnumExplorerCommand* This); 35050 void __RPC_STUB IEnumExplorerCommand_Reset_Stub( 35051 IRpcStubBuffer* This, 35052 IRpcChannelBuffer* pRpcChannelBuffer, 35053 PRPC_MESSAGE pRpcMessage, 35054 DWORD* pdwStubPhase); 35055 HRESULT STDMETHODCALLTYPE IEnumExplorerCommand_Clone_Proxy( 35056 IEnumExplorerCommand* This, 35057 IEnumExplorerCommand **ppenum); 35058 void __RPC_STUB IEnumExplorerCommand_Clone_Stub( 35059 IRpcStubBuffer* This, 35060 IRpcChannelBuffer* pRpcChannelBuffer, 35061 PRPC_MESSAGE pRpcMessage, 35062 DWORD* pdwStubPhase); 35063 HRESULT CALLBACK IEnumExplorerCommand_Next_Proxy( 35064 IEnumExplorerCommand* This, 35065 ULONG celt, 35066 IExplorerCommand **pUICommand, 35067 ULONG *pceltFetched); 35068 HRESULT __RPC_STUB IEnumExplorerCommand_Next_Stub( 35069 IEnumExplorerCommand* This, 35070 ULONG celt, 35071 IExplorerCommand **pUICommand, 35072 ULONG *pceltFetched); 35073 35074 #endif /* __IEnumExplorerCommand_INTERFACE_DEFINED__ */ 35075 35076 35077 /***************************************************************************** 35078 * IExplorerCommandProvider interface 35079 */ 35080 #ifndef __IExplorerCommandProvider_INTERFACE_DEFINED__ 35081 #define __IExplorerCommandProvider_INTERFACE_DEFINED__ 35082 35083 DEFINE_GUID(IID_IExplorerCommandProvider, 0x64961751, 0x0835, 0x43c0, 0x8f,0xfe, 0xd5,0x76,0x86,0x53,0x0e,0x64); 35084 #if defined(__cplusplus) && !defined(CINTERFACE) 35085 MIDL_INTERFACE("64961751-0835-43c0-8ffe-d57686530e64") 35086 IExplorerCommandProvider : public IUnknown 35087 { 35088 virtual HRESULT STDMETHODCALLTYPE GetCommands( 35089 IUnknown *punkSite, 35090 REFIID riid, 35091 void **ppv) = 0; 35092 35093 virtual HRESULT STDMETHODCALLTYPE GetCommand( 35094 REFGUID rguidCommandId, 35095 REFIID riid, 35096 void **ppv) = 0; 35097 35098 }; 35099 #ifdef __CRT_UUID_DECL 35100 __CRT_UUID_DECL(IExplorerCommandProvider, 0x64961751, 0x0835, 0x43c0, 0x8f,0xfe, 0xd5,0x76,0x86,0x53,0x0e,0x64) 35101 #endif 35102 #else 35103 typedef struct IExplorerCommandProviderVtbl { 35104 BEGIN_INTERFACE 35105 35106 /*** IUnknown methods ***/ 35107 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 35108 IExplorerCommandProvider* This, 35109 REFIID riid, 35110 void **ppvObject); 35111 35112 ULONG (STDMETHODCALLTYPE *AddRef)( 35113 IExplorerCommandProvider* This); 35114 35115 ULONG (STDMETHODCALLTYPE *Release)( 35116 IExplorerCommandProvider* This); 35117 35118 /*** IExplorerCommandProvider methods ***/ 35119 HRESULT (STDMETHODCALLTYPE *GetCommands)( 35120 IExplorerCommandProvider* This, 35121 IUnknown *punkSite, 35122 REFIID riid, 35123 void **ppv); 35124 35125 HRESULT (STDMETHODCALLTYPE *GetCommand)( 35126 IExplorerCommandProvider* This, 35127 REFGUID rguidCommandId, 35128 REFIID riid, 35129 void **ppv); 35130 35131 END_INTERFACE 35132 } IExplorerCommandProviderVtbl; 35133 interface IExplorerCommandProvider { 35134 CONST_VTBL IExplorerCommandProviderVtbl* lpVtbl; 35135 }; 35136 35137 #ifdef COBJMACROS 35138 #ifndef WIDL_C_INLINE_WRAPPERS 35139 /*** IUnknown methods ***/ 35140 #define IExplorerCommandProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 35141 #define IExplorerCommandProvider_AddRef(This) (This)->lpVtbl->AddRef(This) 35142 #define IExplorerCommandProvider_Release(This) (This)->lpVtbl->Release(This) 35143 /*** IExplorerCommandProvider methods ***/ 35144 #define IExplorerCommandProvider_GetCommands(This,punkSite,riid,ppv) (This)->lpVtbl->GetCommands(This,punkSite,riid,ppv) 35145 #define IExplorerCommandProvider_GetCommand(This,rguidCommandId,riid,ppv) (This)->lpVtbl->GetCommand(This,rguidCommandId,riid,ppv) 35146 #else 35147 /*** IUnknown methods ***/ 35148 static FORCEINLINE HRESULT IExplorerCommandProvider_QueryInterface(IExplorerCommandProvider* This,REFIID riid,void **ppvObject) { 35149 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 35150 } 35151 static FORCEINLINE ULONG IExplorerCommandProvider_AddRef(IExplorerCommandProvider* This) { 35152 return This->lpVtbl->AddRef(This); 35153 } 35154 static FORCEINLINE ULONG IExplorerCommandProvider_Release(IExplorerCommandProvider* This) { 35155 return This->lpVtbl->Release(This); 35156 } 35157 /*** IExplorerCommandProvider methods ***/ 35158 static FORCEINLINE HRESULT IExplorerCommandProvider_GetCommands(IExplorerCommandProvider* This,IUnknown *punkSite,REFIID riid,void **ppv) { 35159 return This->lpVtbl->GetCommands(This,punkSite,riid,ppv); 35160 } 35161 static FORCEINLINE HRESULT IExplorerCommandProvider_GetCommand(IExplorerCommandProvider* This,REFGUID rguidCommandId,REFIID riid,void **ppv) { 35162 return This->lpVtbl->GetCommand(This,rguidCommandId,riid,ppv); 35163 } 35164 #endif 35165 #endif 35166 35167 #endif 35168 35169 HRESULT STDMETHODCALLTYPE IExplorerCommandProvider_GetCommands_Proxy( 35170 IExplorerCommandProvider* This, 35171 IUnknown *punkSite, 35172 REFIID riid, 35173 void **ppv); 35174 void __RPC_STUB IExplorerCommandProvider_GetCommands_Stub( 35175 IRpcStubBuffer* This, 35176 IRpcChannelBuffer* pRpcChannelBuffer, 35177 PRPC_MESSAGE pRpcMessage, 35178 DWORD* pdwStubPhase); 35179 HRESULT STDMETHODCALLTYPE IExplorerCommandProvider_GetCommand_Proxy( 35180 IExplorerCommandProvider* This, 35181 REFGUID rguidCommandId, 35182 REFIID riid, 35183 void **ppv); 35184 void __RPC_STUB IExplorerCommandProvider_GetCommand_Stub( 35185 IRpcStubBuffer* This, 35186 IRpcChannelBuffer* pRpcChannelBuffer, 35187 PRPC_MESSAGE pRpcMessage, 35188 DWORD* pdwStubPhase); 35189 35190 #endif /* __IExplorerCommandProvider_INTERFACE_DEFINED__ */ 35191 35192 35193 typedef HANDLE HTHEME; 35194 35195 /***************************************************************************** 35196 * IInitializeNetworkFolder interface 35197 */ 35198 #ifndef __IInitializeNetworkFolder_INTERFACE_DEFINED__ 35199 #define __IInitializeNetworkFolder_INTERFACE_DEFINED__ 35200 35201 DEFINE_GUID(IID_IInitializeNetworkFolder, 0x6e0f9881, 0x42a8, 0x4f2a, 0x97,0xf8, 0x8a,0xf4,0xe0,0x26,0xd9,0x2d); 35202 #if defined(__cplusplus) && !defined(CINTERFACE) 35203 MIDL_INTERFACE("6e0f9881-42a8-4f2a-97f8-8af4e026d92d") 35204 IInitializeNetworkFolder : public IUnknown 35205 { 35206 virtual HRESULT STDMETHODCALLTYPE Initialize( 35207 PCIDLIST_ABSOLUTE pidl, 35208 PCIDLIST_ABSOLUTE pidlTarget, 35209 UINT uDisplayType, 35210 LPCWSTR pszResName, 35211 LPCWSTR pszProvider) = 0; 35212 35213 }; 35214 #ifdef __CRT_UUID_DECL 35215 __CRT_UUID_DECL(IInitializeNetworkFolder, 0x6e0f9881, 0x42a8, 0x4f2a, 0x97,0xf8, 0x8a,0xf4,0xe0,0x26,0xd9,0x2d) 35216 #endif 35217 #else 35218 typedef struct IInitializeNetworkFolderVtbl { 35219 BEGIN_INTERFACE 35220 35221 /*** IUnknown methods ***/ 35222 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 35223 IInitializeNetworkFolder* This, 35224 REFIID riid, 35225 void **ppvObject); 35226 35227 ULONG (STDMETHODCALLTYPE *AddRef)( 35228 IInitializeNetworkFolder* This); 35229 35230 ULONG (STDMETHODCALLTYPE *Release)( 35231 IInitializeNetworkFolder* This); 35232 35233 /*** IInitializeNetworkFolder methods ***/ 35234 HRESULT (STDMETHODCALLTYPE *Initialize)( 35235 IInitializeNetworkFolder* This, 35236 PCIDLIST_ABSOLUTE pidl, 35237 PCIDLIST_ABSOLUTE pidlTarget, 35238 UINT uDisplayType, 35239 LPCWSTR pszResName, 35240 LPCWSTR pszProvider); 35241 35242 END_INTERFACE 35243 } IInitializeNetworkFolderVtbl; 35244 interface IInitializeNetworkFolder { 35245 CONST_VTBL IInitializeNetworkFolderVtbl* lpVtbl; 35246 }; 35247 35248 #ifdef COBJMACROS 35249 #ifndef WIDL_C_INLINE_WRAPPERS 35250 /*** IUnknown methods ***/ 35251 #define IInitializeNetworkFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 35252 #define IInitializeNetworkFolder_AddRef(This) (This)->lpVtbl->AddRef(This) 35253 #define IInitializeNetworkFolder_Release(This) (This)->lpVtbl->Release(This) 35254 /*** IInitializeNetworkFolder methods ***/ 35255 #define IInitializeNetworkFolder_Initialize(This,pidl,pidlTarget,uDisplayType,pszResName,pszProvider) (This)->lpVtbl->Initialize(This,pidl,pidlTarget,uDisplayType,pszResName,pszProvider) 35256 #else 35257 /*** IUnknown methods ***/ 35258 static FORCEINLINE HRESULT IInitializeNetworkFolder_QueryInterface(IInitializeNetworkFolder* This,REFIID riid,void **ppvObject) { 35259 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 35260 } 35261 static FORCEINLINE ULONG IInitializeNetworkFolder_AddRef(IInitializeNetworkFolder* This) { 35262 return This->lpVtbl->AddRef(This); 35263 } 35264 static FORCEINLINE ULONG IInitializeNetworkFolder_Release(IInitializeNetworkFolder* This) { 35265 return This->lpVtbl->Release(This); 35266 } 35267 /*** IInitializeNetworkFolder methods ***/ 35268 static FORCEINLINE HRESULT IInitializeNetworkFolder_Initialize(IInitializeNetworkFolder* This,PCIDLIST_ABSOLUTE pidl,PCIDLIST_ABSOLUTE pidlTarget,UINT uDisplayType,LPCWSTR pszResName,LPCWSTR pszProvider) { 35269 return This->lpVtbl->Initialize(This,pidl,pidlTarget,uDisplayType,pszResName,pszProvider); 35270 } 35271 #endif 35272 #endif 35273 35274 #endif 35275 35276 HRESULT STDMETHODCALLTYPE IInitializeNetworkFolder_Initialize_Proxy( 35277 IInitializeNetworkFolder* This, 35278 PCIDLIST_ABSOLUTE pidl, 35279 PCIDLIST_ABSOLUTE pidlTarget, 35280 UINT uDisplayType, 35281 LPCWSTR pszResName, 35282 LPCWSTR pszProvider); 35283 void __RPC_STUB IInitializeNetworkFolder_Initialize_Stub( 35284 IRpcStubBuffer* This, 35285 IRpcChannelBuffer* pRpcChannelBuffer, 35286 PRPC_MESSAGE pRpcMessage, 35287 DWORD* pdwStubPhase); 35288 35289 #endif /* __IInitializeNetworkFolder_INTERFACE_DEFINED__ */ 35290 35291 35292 typedef enum CPVIEW { 35293 CPVIEW_CLASSIC = 0, 35294 CPVIEW_ALLITEMS = CPVIEW_CLASSIC, 35295 CPVIEW_CATEGORY = 1, 35296 CPVIEW_HOME = CPVIEW_CATEGORY 35297 } CPVIEW; 35298 35299 /***************************************************************************** 35300 * IOpenControlPanel interface 35301 */ 35302 #ifndef __IOpenControlPanel_INTERFACE_DEFINED__ 35303 #define __IOpenControlPanel_INTERFACE_DEFINED__ 35304 35305 DEFINE_GUID(IID_IOpenControlPanel, 0xd11ad862, 0x66de, 0x4df4, 0xbf,0x6c, 0x1f,0x56,0x21,0x99,0x6a,0xf1); 35306 #if defined(__cplusplus) && !defined(CINTERFACE) 35307 MIDL_INTERFACE("d11ad862-66de-4df4-bf6c-1f5621996af1") 35308 IOpenControlPanel : public IUnknown 35309 { 35310 virtual HRESULT STDMETHODCALLTYPE Open( 35311 LPCWSTR pszName, 35312 LPCWSTR pszPage, 35313 IUnknown *punkSite) = 0; 35314 35315 virtual HRESULT STDMETHODCALLTYPE GetPath( 35316 LPCWSTR pszName, 35317 LPWSTR pszPath, 35318 UINT cchPath) = 0; 35319 35320 virtual HRESULT STDMETHODCALLTYPE GetCurrentView( 35321 CPVIEW *pView) = 0; 35322 35323 }; 35324 #ifdef __CRT_UUID_DECL 35325 __CRT_UUID_DECL(IOpenControlPanel, 0xd11ad862, 0x66de, 0x4df4, 0xbf,0x6c, 0x1f,0x56,0x21,0x99,0x6a,0xf1) 35326 #endif 35327 #else 35328 typedef struct IOpenControlPanelVtbl { 35329 BEGIN_INTERFACE 35330 35331 /*** IUnknown methods ***/ 35332 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 35333 IOpenControlPanel* This, 35334 REFIID riid, 35335 void **ppvObject); 35336 35337 ULONG (STDMETHODCALLTYPE *AddRef)( 35338 IOpenControlPanel* This); 35339 35340 ULONG (STDMETHODCALLTYPE *Release)( 35341 IOpenControlPanel* This); 35342 35343 /*** IOpenControlPanel methods ***/ 35344 HRESULT (STDMETHODCALLTYPE *Open)( 35345 IOpenControlPanel* This, 35346 LPCWSTR pszName, 35347 LPCWSTR pszPage, 35348 IUnknown *punkSite); 35349 35350 HRESULT (STDMETHODCALLTYPE *GetPath)( 35351 IOpenControlPanel* This, 35352 LPCWSTR pszName, 35353 LPWSTR pszPath, 35354 UINT cchPath); 35355 35356 HRESULT (STDMETHODCALLTYPE *GetCurrentView)( 35357 IOpenControlPanel* This, 35358 CPVIEW *pView); 35359 35360 END_INTERFACE 35361 } IOpenControlPanelVtbl; 35362 interface IOpenControlPanel { 35363 CONST_VTBL IOpenControlPanelVtbl* lpVtbl; 35364 }; 35365 35366 #ifdef COBJMACROS 35367 #ifndef WIDL_C_INLINE_WRAPPERS 35368 /*** IUnknown methods ***/ 35369 #define IOpenControlPanel_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 35370 #define IOpenControlPanel_AddRef(This) (This)->lpVtbl->AddRef(This) 35371 #define IOpenControlPanel_Release(This) (This)->lpVtbl->Release(This) 35372 /*** IOpenControlPanel methods ***/ 35373 #define IOpenControlPanel_Open(This,pszName,pszPage,punkSite) (This)->lpVtbl->Open(This,pszName,pszPage,punkSite) 35374 #define IOpenControlPanel_GetPath(This,pszName,pszPath,cchPath) (This)->lpVtbl->GetPath(This,pszName,pszPath,cchPath) 35375 #define IOpenControlPanel_GetCurrentView(This,pView) (This)->lpVtbl->GetCurrentView(This,pView) 35376 #else 35377 /*** IUnknown methods ***/ 35378 static FORCEINLINE HRESULT IOpenControlPanel_QueryInterface(IOpenControlPanel* This,REFIID riid,void **ppvObject) { 35379 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 35380 } 35381 static FORCEINLINE ULONG IOpenControlPanel_AddRef(IOpenControlPanel* This) { 35382 return This->lpVtbl->AddRef(This); 35383 } 35384 static FORCEINLINE ULONG IOpenControlPanel_Release(IOpenControlPanel* This) { 35385 return This->lpVtbl->Release(This); 35386 } 35387 /*** IOpenControlPanel methods ***/ 35388 static FORCEINLINE HRESULT IOpenControlPanel_Open(IOpenControlPanel* This,LPCWSTR pszName,LPCWSTR pszPage,IUnknown *punkSite) { 35389 return This->lpVtbl->Open(This,pszName,pszPage,punkSite); 35390 } 35391 static FORCEINLINE HRESULT IOpenControlPanel_GetPath(IOpenControlPanel* This,LPCWSTR pszName,LPWSTR pszPath,UINT cchPath) { 35392 return This->lpVtbl->GetPath(This,pszName,pszPath,cchPath); 35393 } 35394 static FORCEINLINE HRESULT IOpenControlPanel_GetCurrentView(IOpenControlPanel* This,CPVIEW *pView) { 35395 return This->lpVtbl->GetCurrentView(This,pView); 35396 } 35397 #endif 35398 #endif 35399 35400 #endif 35401 35402 HRESULT STDMETHODCALLTYPE IOpenControlPanel_Open_Proxy( 35403 IOpenControlPanel* This, 35404 LPCWSTR pszName, 35405 LPCWSTR pszPage, 35406 IUnknown *punkSite); 35407 void __RPC_STUB IOpenControlPanel_Open_Stub( 35408 IRpcStubBuffer* This, 35409 IRpcChannelBuffer* pRpcChannelBuffer, 35410 PRPC_MESSAGE pRpcMessage, 35411 DWORD* pdwStubPhase); 35412 HRESULT STDMETHODCALLTYPE IOpenControlPanel_GetPath_Proxy( 35413 IOpenControlPanel* This, 35414 LPCWSTR pszName, 35415 LPWSTR pszPath, 35416 UINT cchPath); 35417 void __RPC_STUB IOpenControlPanel_GetPath_Stub( 35418 IRpcStubBuffer* This, 35419 IRpcChannelBuffer* pRpcChannelBuffer, 35420 PRPC_MESSAGE pRpcMessage, 35421 DWORD* pdwStubPhase); 35422 HRESULT STDMETHODCALLTYPE IOpenControlPanel_GetCurrentView_Proxy( 35423 IOpenControlPanel* This, 35424 CPVIEW *pView); 35425 void __RPC_STUB IOpenControlPanel_GetCurrentView_Stub( 35426 IRpcStubBuffer* This, 35427 IRpcChannelBuffer* pRpcChannelBuffer, 35428 PRPC_MESSAGE pRpcMessage, 35429 DWORD* pdwStubPhase); 35430 35431 #endif /* __IOpenControlPanel_INTERFACE_DEFINED__ */ 35432 35433 35434 /***************************************************************************** 35435 * IComputerInfoChangeNotify interface 35436 */ 35437 #ifndef __IComputerInfoChangeNotify_INTERFACE_DEFINED__ 35438 #define __IComputerInfoChangeNotify_INTERFACE_DEFINED__ 35439 35440 DEFINE_GUID(IID_IComputerInfoChangeNotify, 0x0df60d92, 0x6818, 0x46d6, 0xb3,0x58, 0xd6,0x61,0x70,0xdd,0xe4,0x66); 35441 #if defined(__cplusplus) && !defined(CINTERFACE) 35442 MIDL_INTERFACE("0df60d92-6818-46d6-b358-d66170dde466") 35443 IComputerInfoChangeNotify : public IUnknown 35444 { 35445 virtual HRESULT STDMETHODCALLTYPE ComputerInfoChanged( 35446 ) = 0; 35447 35448 }; 35449 #ifdef __CRT_UUID_DECL 35450 __CRT_UUID_DECL(IComputerInfoChangeNotify, 0x0df60d92, 0x6818, 0x46d6, 0xb3,0x58, 0xd6,0x61,0x70,0xdd,0xe4,0x66) 35451 #endif 35452 #else 35453 typedef struct IComputerInfoChangeNotifyVtbl { 35454 BEGIN_INTERFACE 35455 35456 /*** IUnknown methods ***/ 35457 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 35458 IComputerInfoChangeNotify* This, 35459 REFIID riid, 35460 void **ppvObject); 35461 35462 ULONG (STDMETHODCALLTYPE *AddRef)( 35463 IComputerInfoChangeNotify* This); 35464 35465 ULONG (STDMETHODCALLTYPE *Release)( 35466 IComputerInfoChangeNotify* This); 35467 35468 /*** IComputerInfoChangeNotify methods ***/ 35469 HRESULT (STDMETHODCALLTYPE *ComputerInfoChanged)( 35470 IComputerInfoChangeNotify* This); 35471 35472 END_INTERFACE 35473 } IComputerInfoChangeNotifyVtbl; 35474 interface IComputerInfoChangeNotify { 35475 CONST_VTBL IComputerInfoChangeNotifyVtbl* lpVtbl; 35476 }; 35477 35478 #ifdef COBJMACROS 35479 #ifndef WIDL_C_INLINE_WRAPPERS 35480 /*** IUnknown methods ***/ 35481 #define IComputerInfoChangeNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 35482 #define IComputerInfoChangeNotify_AddRef(This) (This)->lpVtbl->AddRef(This) 35483 #define IComputerInfoChangeNotify_Release(This) (This)->lpVtbl->Release(This) 35484 /*** IComputerInfoChangeNotify methods ***/ 35485 #define IComputerInfoChangeNotify_ComputerInfoChanged(This) (This)->lpVtbl->ComputerInfoChanged(This) 35486 #else 35487 /*** IUnknown methods ***/ 35488 static FORCEINLINE HRESULT IComputerInfoChangeNotify_QueryInterface(IComputerInfoChangeNotify* This,REFIID riid,void **ppvObject) { 35489 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 35490 } 35491 static FORCEINLINE ULONG IComputerInfoChangeNotify_AddRef(IComputerInfoChangeNotify* This) { 35492 return This->lpVtbl->AddRef(This); 35493 } 35494 static FORCEINLINE ULONG IComputerInfoChangeNotify_Release(IComputerInfoChangeNotify* This) { 35495 return This->lpVtbl->Release(This); 35496 } 35497 /*** IComputerInfoChangeNotify methods ***/ 35498 static FORCEINLINE HRESULT IComputerInfoChangeNotify_ComputerInfoChanged(IComputerInfoChangeNotify* This) { 35499 return This->lpVtbl->ComputerInfoChanged(This); 35500 } 35501 #endif 35502 #endif 35503 35504 #endif 35505 35506 HRESULT STDMETHODCALLTYPE IComputerInfoChangeNotify_ComputerInfoChanged_Proxy( 35507 IComputerInfoChangeNotify* This); 35508 void __RPC_STUB IComputerInfoChangeNotify_ComputerInfoChanged_Stub( 35509 IRpcStubBuffer* This, 35510 IRpcChannelBuffer* pRpcChannelBuffer, 35511 PRPC_MESSAGE pRpcMessage, 35512 DWORD* pdwStubPhase); 35513 35514 #endif /* __IComputerInfoChangeNotify_INTERFACE_DEFINED__ */ 35515 35516 35517 #define STR_FILE_SYS_BIND_DATA L"File System Bind Data" 35518 35519 /***************************************************************************** 35520 * IFileSystemBindData interface 35521 */ 35522 #ifndef __IFileSystemBindData_INTERFACE_DEFINED__ 35523 #define __IFileSystemBindData_INTERFACE_DEFINED__ 35524 35525 DEFINE_GUID(IID_IFileSystemBindData, 0x01e18d10, 0x4d8b, 0x11d2, 0x85,0x5d, 0x00,0x60,0x08,0x05,0x93,0x67); 35526 #if defined(__cplusplus) && !defined(CINTERFACE) 35527 MIDL_INTERFACE("01e18d10-4d8b-11d2-855d-006008059367") 35528 IFileSystemBindData : public IUnknown 35529 { 35530 virtual HRESULT STDMETHODCALLTYPE SetFindData( 35531 const WIN32_FIND_DATAW *pfd) = 0; 35532 35533 virtual HRESULT STDMETHODCALLTYPE GetFindData( 35534 WIN32_FIND_DATAW *pfd) = 0; 35535 35536 }; 35537 #ifdef __CRT_UUID_DECL 35538 __CRT_UUID_DECL(IFileSystemBindData, 0x01e18d10, 0x4d8b, 0x11d2, 0x85,0x5d, 0x00,0x60,0x08,0x05,0x93,0x67) 35539 #endif 35540 #else 35541 typedef struct IFileSystemBindDataVtbl { 35542 BEGIN_INTERFACE 35543 35544 /*** IUnknown methods ***/ 35545 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 35546 IFileSystemBindData* This, 35547 REFIID riid, 35548 void **ppvObject); 35549 35550 ULONG (STDMETHODCALLTYPE *AddRef)( 35551 IFileSystemBindData* This); 35552 35553 ULONG (STDMETHODCALLTYPE *Release)( 35554 IFileSystemBindData* This); 35555 35556 /*** IFileSystemBindData methods ***/ 35557 HRESULT (STDMETHODCALLTYPE *SetFindData)( 35558 IFileSystemBindData* This, 35559 const WIN32_FIND_DATAW *pfd); 35560 35561 HRESULT (STDMETHODCALLTYPE *GetFindData)( 35562 IFileSystemBindData* This, 35563 WIN32_FIND_DATAW *pfd); 35564 35565 END_INTERFACE 35566 } IFileSystemBindDataVtbl; 35567 interface IFileSystemBindData { 35568 CONST_VTBL IFileSystemBindDataVtbl* lpVtbl; 35569 }; 35570 35571 #ifdef COBJMACROS 35572 #ifndef WIDL_C_INLINE_WRAPPERS 35573 /*** IUnknown methods ***/ 35574 #define IFileSystemBindData_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 35575 #define IFileSystemBindData_AddRef(This) (This)->lpVtbl->AddRef(This) 35576 #define IFileSystemBindData_Release(This) (This)->lpVtbl->Release(This) 35577 /*** IFileSystemBindData methods ***/ 35578 #define IFileSystemBindData_SetFindData(This,pfd) (This)->lpVtbl->SetFindData(This,pfd) 35579 #define IFileSystemBindData_GetFindData(This,pfd) (This)->lpVtbl->GetFindData(This,pfd) 35580 #else 35581 /*** IUnknown methods ***/ 35582 static FORCEINLINE HRESULT IFileSystemBindData_QueryInterface(IFileSystemBindData* This,REFIID riid,void **ppvObject) { 35583 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 35584 } 35585 static FORCEINLINE ULONG IFileSystemBindData_AddRef(IFileSystemBindData* This) { 35586 return This->lpVtbl->AddRef(This); 35587 } 35588 static FORCEINLINE ULONG IFileSystemBindData_Release(IFileSystemBindData* This) { 35589 return This->lpVtbl->Release(This); 35590 } 35591 /*** IFileSystemBindData methods ***/ 35592 static FORCEINLINE HRESULT IFileSystemBindData_SetFindData(IFileSystemBindData* This,const WIN32_FIND_DATAW *pfd) { 35593 return This->lpVtbl->SetFindData(This,pfd); 35594 } 35595 static FORCEINLINE HRESULT IFileSystemBindData_GetFindData(IFileSystemBindData* This,WIN32_FIND_DATAW *pfd) { 35596 return This->lpVtbl->GetFindData(This,pfd); 35597 } 35598 #endif 35599 #endif 35600 35601 #endif 35602 35603 HRESULT STDMETHODCALLTYPE IFileSystemBindData_SetFindData_Proxy( 35604 IFileSystemBindData* This, 35605 const WIN32_FIND_DATAW *pfd); 35606 void __RPC_STUB IFileSystemBindData_SetFindData_Stub( 35607 IRpcStubBuffer* This, 35608 IRpcChannelBuffer* pRpcChannelBuffer, 35609 PRPC_MESSAGE pRpcMessage, 35610 DWORD* pdwStubPhase); 35611 HRESULT STDMETHODCALLTYPE IFileSystemBindData_GetFindData_Proxy( 35612 IFileSystemBindData* This, 35613 WIN32_FIND_DATAW *pfd); 35614 void __RPC_STUB IFileSystemBindData_GetFindData_Stub( 35615 IRpcStubBuffer* This, 35616 IRpcChannelBuffer* pRpcChannelBuffer, 35617 PRPC_MESSAGE pRpcMessage, 35618 DWORD* pdwStubPhase); 35619 35620 #endif /* __IFileSystemBindData_INTERFACE_DEFINED__ */ 35621 35622 35623 /***************************************************************************** 35624 * IFileSystemBindData2 interface 35625 */ 35626 #ifndef __IFileSystemBindData2_INTERFACE_DEFINED__ 35627 #define __IFileSystemBindData2_INTERFACE_DEFINED__ 35628 35629 DEFINE_GUID(IID_IFileSystemBindData2, 0x3acf075f, 0x71db, 0x4afa, 0x81,0xf0, 0x3f,0xc4,0xfd,0xf2,0xa5,0xb8); 35630 #if defined(__cplusplus) && !defined(CINTERFACE) 35631 MIDL_INTERFACE("3acf075f-71db-4afa-81f0-3fc4fdf2a5b8") 35632 IFileSystemBindData2 : public IFileSystemBindData 35633 { 35634 virtual HRESULT STDMETHODCALLTYPE SetFileID( 35635 LARGE_INTEGER liFileID) = 0; 35636 35637 virtual HRESULT STDMETHODCALLTYPE GetFileID( 35638 LARGE_INTEGER *pliFileID) = 0; 35639 35640 virtual HRESULT STDMETHODCALLTYPE SetJunctionCLSID( 35641 REFCLSID clsid) = 0; 35642 35643 virtual HRESULT STDMETHODCALLTYPE GetJunctionCLSID( 35644 CLSID *pclsid) = 0; 35645 35646 }; 35647 #ifdef __CRT_UUID_DECL 35648 __CRT_UUID_DECL(IFileSystemBindData2, 0x3acf075f, 0x71db, 0x4afa, 0x81,0xf0, 0x3f,0xc4,0xfd,0xf2,0xa5,0xb8) 35649 #endif 35650 #else 35651 typedef struct IFileSystemBindData2Vtbl { 35652 BEGIN_INTERFACE 35653 35654 /*** IUnknown methods ***/ 35655 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 35656 IFileSystemBindData2* This, 35657 REFIID riid, 35658 void **ppvObject); 35659 35660 ULONG (STDMETHODCALLTYPE *AddRef)( 35661 IFileSystemBindData2* This); 35662 35663 ULONG (STDMETHODCALLTYPE *Release)( 35664 IFileSystemBindData2* This); 35665 35666 /*** IFileSystemBindData methods ***/ 35667 HRESULT (STDMETHODCALLTYPE *SetFindData)( 35668 IFileSystemBindData2* This, 35669 const WIN32_FIND_DATAW *pfd); 35670 35671 HRESULT (STDMETHODCALLTYPE *GetFindData)( 35672 IFileSystemBindData2* This, 35673 WIN32_FIND_DATAW *pfd); 35674 35675 /*** IFileSystemBindData2 methods ***/ 35676 HRESULT (STDMETHODCALLTYPE *SetFileID)( 35677 IFileSystemBindData2* This, 35678 LARGE_INTEGER liFileID); 35679 35680 HRESULT (STDMETHODCALLTYPE *GetFileID)( 35681 IFileSystemBindData2* This, 35682 LARGE_INTEGER *pliFileID); 35683 35684 HRESULT (STDMETHODCALLTYPE *SetJunctionCLSID)( 35685 IFileSystemBindData2* This, 35686 REFCLSID clsid); 35687 35688 HRESULT (STDMETHODCALLTYPE *GetJunctionCLSID)( 35689 IFileSystemBindData2* This, 35690 CLSID *pclsid); 35691 35692 END_INTERFACE 35693 } IFileSystemBindData2Vtbl; 35694 interface IFileSystemBindData2 { 35695 CONST_VTBL IFileSystemBindData2Vtbl* lpVtbl; 35696 }; 35697 35698 #ifdef COBJMACROS 35699 #ifndef WIDL_C_INLINE_WRAPPERS 35700 /*** IUnknown methods ***/ 35701 #define IFileSystemBindData2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 35702 #define IFileSystemBindData2_AddRef(This) (This)->lpVtbl->AddRef(This) 35703 #define IFileSystemBindData2_Release(This) (This)->lpVtbl->Release(This) 35704 /*** IFileSystemBindData methods ***/ 35705 #define IFileSystemBindData2_SetFindData(This,pfd) (This)->lpVtbl->SetFindData(This,pfd) 35706 #define IFileSystemBindData2_GetFindData(This,pfd) (This)->lpVtbl->GetFindData(This,pfd) 35707 /*** IFileSystemBindData2 methods ***/ 35708 #define IFileSystemBindData2_SetFileID(This,liFileID) (This)->lpVtbl->SetFileID(This,liFileID) 35709 #define IFileSystemBindData2_GetFileID(This,pliFileID) (This)->lpVtbl->GetFileID(This,pliFileID) 35710 #define IFileSystemBindData2_SetJunctionCLSID(This,clsid) (This)->lpVtbl->SetJunctionCLSID(This,clsid) 35711 #define IFileSystemBindData2_GetJunctionCLSID(This,pclsid) (This)->lpVtbl->GetJunctionCLSID(This,pclsid) 35712 #else 35713 /*** IUnknown methods ***/ 35714 static FORCEINLINE HRESULT IFileSystemBindData2_QueryInterface(IFileSystemBindData2* This,REFIID riid,void **ppvObject) { 35715 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 35716 } 35717 static FORCEINLINE ULONG IFileSystemBindData2_AddRef(IFileSystemBindData2* This) { 35718 return This->lpVtbl->AddRef(This); 35719 } 35720 static FORCEINLINE ULONG IFileSystemBindData2_Release(IFileSystemBindData2* This) { 35721 return This->lpVtbl->Release(This); 35722 } 35723 /*** IFileSystemBindData methods ***/ 35724 static FORCEINLINE HRESULT IFileSystemBindData2_SetFindData(IFileSystemBindData2* This,const WIN32_FIND_DATAW *pfd) { 35725 return This->lpVtbl->SetFindData(This,pfd); 35726 } 35727 static FORCEINLINE HRESULT IFileSystemBindData2_GetFindData(IFileSystemBindData2* This,WIN32_FIND_DATAW *pfd) { 35728 return This->lpVtbl->GetFindData(This,pfd); 35729 } 35730 /*** IFileSystemBindData2 methods ***/ 35731 static FORCEINLINE HRESULT IFileSystemBindData2_SetFileID(IFileSystemBindData2* This,LARGE_INTEGER liFileID) { 35732 return This->lpVtbl->SetFileID(This,liFileID); 35733 } 35734 static FORCEINLINE HRESULT IFileSystemBindData2_GetFileID(IFileSystemBindData2* This,LARGE_INTEGER *pliFileID) { 35735 return This->lpVtbl->GetFileID(This,pliFileID); 35736 } 35737 static FORCEINLINE HRESULT IFileSystemBindData2_SetJunctionCLSID(IFileSystemBindData2* This,REFCLSID clsid) { 35738 return This->lpVtbl->SetJunctionCLSID(This,clsid); 35739 } 35740 static FORCEINLINE HRESULT IFileSystemBindData2_GetJunctionCLSID(IFileSystemBindData2* This,CLSID *pclsid) { 35741 return This->lpVtbl->GetJunctionCLSID(This,pclsid); 35742 } 35743 #endif 35744 #endif 35745 35746 #endif 35747 35748 HRESULT STDMETHODCALLTYPE IFileSystemBindData2_SetFileID_Proxy( 35749 IFileSystemBindData2* This, 35750 LARGE_INTEGER liFileID); 35751 void __RPC_STUB IFileSystemBindData2_SetFileID_Stub( 35752 IRpcStubBuffer* This, 35753 IRpcChannelBuffer* pRpcChannelBuffer, 35754 PRPC_MESSAGE pRpcMessage, 35755 DWORD* pdwStubPhase); 35756 HRESULT STDMETHODCALLTYPE IFileSystemBindData2_GetFileID_Proxy( 35757 IFileSystemBindData2* This, 35758 LARGE_INTEGER *pliFileID); 35759 void __RPC_STUB IFileSystemBindData2_GetFileID_Stub( 35760 IRpcStubBuffer* This, 35761 IRpcChannelBuffer* pRpcChannelBuffer, 35762 PRPC_MESSAGE pRpcMessage, 35763 DWORD* pdwStubPhase); 35764 HRESULT STDMETHODCALLTYPE IFileSystemBindData2_SetJunctionCLSID_Proxy( 35765 IFileSystemBindData2* This, 35766 REFCLSID clsid); 35767 void __RPC_STUB IFileSystemBindData2_SetJunctionCLSID_Stub( 35768 IRpcStubBuffer* This, 35769 IRpcChannelBuffer* pRpcChannelBuffer, 35770 PRPC_MESSAGE pRpcMessage, 35771 DWORD* pdwStubPhase); 35772 HRESULT STDMETHODCALLTYPE IFileSystemBindData2_GetJunctionCLSID_Proxy( 35773 IFileSystemBindData2* This, 35774 CLSID *pclsid); 35775 void __RPC_STUB IFileSystemBindData2_GetJunctionCLSID_Stub( 35776 IRpcStubBuffer* This, 35777 IRpcChannelBuffer* pRpcChannelBuffer, 35778 PRPC_MESSAGE pRpcMessage, 35779 DWORD* pdwStubPhase); 35780 35781 #endif /* __IFileSystemBindData2_INTERFACE_DEFINED__ */ 35782 35783 35784 #if NTDDI_VERSION >= NTDDI_WIN7 35785 /***************************************************************************** 35786 * ICustomDestinationList interface 35787 */ 35788 #ifndef __ICustomDestinationList_INTERFACE_DEFINED__ 35789 #define __ICustomDestinationList_INTERFACE_DEFINED__ 35790 35791 typedef enum KNOWNDESTCATEGORY { 35792 KDC_FREQUENT = 1, 35793 KDC_RECENT = 2 35794 } KNOWNDESTCATEGORY; 35795 35796 DEFINE_GUID(IID_ICustomDestinationList, 0x6332debf, 0x87b5, 0x4670, 0x90,0xc0, 0x5e,0x57,0xb4,0x08,0xa4,0x9e); 35797 #if defined(__cplusplus) && !defined(CINTERFACE) 35798 MIDL_INTERFACE("6332debf-87b5-4670-90c0-5e57b408a49e") 35799 ICustomDestinationList : public IUnknown 35800 { 35801 virtual HRESULT STDMETHODCALLTYPE SetAppID( 35802 LPCWSTR pszAppID) = 0; 35803 35804 virtual HRESULT STDMETHODCALLTYPE BeginList( 35805 UINT *pcMinSlots, 35806 REFIID riid, 35807 void **ppv) = 0; 35808 35809 virtual HRESULT STDMETHODCALLTYPE AppendCategory( 35810 LPCWSTR pszCategory, 35811 IObjectArray *poa) = 0; 35812 35813 virtual HRESULT STDMETHODCALLTYPE AppendKnownCategory( 35814 KNOWNDESTCATEGORY category) = 0; 35815 35816 virtual HRESULT STDMETHODCALLTYPE AddUserTasks( 35817 IObjectArray *poa) = 0; 35818 35819 virtual HRESULT STDMETHODCALLTYPE CommitList( 35820 ) = 0; 35821 35822 virtual HRESULT STDMETHODCALLTYPE GetRemovedDestinations( 35823 REFIID riid, 35824 void **ppv) = 0; 35825 35826 virtual HRESULT STDMETHODCALLTYPE DeleteList( 35827 LPCWSTR pszAppID) = 0; 35828 35829 virtual HRESULT STDMETHODCALLTYPE AbortList( 35830 ) = 0; 35831 35832 }; 35833 #ifdef __CRT_UUID_DECL 35834 __CRT_UUID_DECL(ICustomDestinationList, 0x6332debf, 0x87b5, 0x4670, 0x90,0xc0, 0x5e,0x57,0xb4,0x08,0xa4,0x9e) 35835 #endif 35836 #else 35837 typedef struct ICustomDestinationListVtbl { 35838 BEGIN_INTERFACE 35839 35840 /*** IUnknown methods ***/ 35841 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 35842 ICustomDestinationList* This, 35843 REFIID riid, 35844 void **ppvObject); 35845 35846 ULONG (STDMETHODCALLTYPE *AddRef)( 35847 ICustomDestinationList* This); 35848 35849 ULONG (STDMETHODCALLTYPE *Release)( 35850 ICustomDestinationList* This); 35851 35852 /*** ICustomDestinationList methods ***/ 35853 HRESULT (STDMETHODCALLTYPE *SetAppID)( 35854 ICustomDestinationList* This, 35855 LPCWSTR pszAppID); 35856 35857 HRESULT (STDMETHODCALLTYPE *BeginList)( 35858 ICustomDestinationList* This, 35859 UINT *pcMinSlots, 35860 REFIID riid, 35861 void **ppv); 35862 35863 HRESULT (STDMETHODCALLTYPE *AppendCategory)( 35864 ICustomDestinationList* This, 35865 LPCWSTR pszCategory, 35866 IObjectArray *poa); 35867 35868 HRESULT (STDMETHODCALLTYPE *AppendKnownCategory)( 35869 ICustomDestinationList* This, 35870 KNOWNDESTCATEGORY category); 35871 35872 HRESULT (STDMETHODCALLTYPE *AddUserTasks)( 35873 ICustomDestinationList* This, 35874 IObjectArray *poa); 35875 35876 HRESULT (STDMETHODCALLTYPE *CommitList)( 35877 ICustomDestinationList* This); 35878 35879 HRESULT (STDMETHODCALLTYPE *GetRemovedDestinations)( 35880 ICustomDestinationList* This, 35881 REFIID riid, 35882 void **ppv); 35883 35884 HRESULT (STDMETHODCALLTYPE *DeleteList)( 35885 ICustomDestinationList* This, 35886 LPCWSTR pszAppID); 35887 35888 HRESULT (STDMETHODCALLTYPE *AbortList)( 35889 ICustomDestinationList* This); 35890 35891 END_INTERFACE 35892 } ICustomDestinationListVtbl; 35893 interface ICustomDestinationList { 35894 CONST_VTBL ICustomDestinationListVtbl* lpVtbl; 35895 }; 35896 35897 #ifdef COBJMACROS 35898 #ifndef WIDL_C_INLINE_WRAPPERS 35899 /*** IUnknown methods ***/ 35900 #define ICustomDestinationList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 35901 #define ICustomDestinationList_AddRef(This) (This)->lpVtbl->AddRef(This) 35902 #define ICustomDestinationList_Release(This) (This)->lpVtbl->Release(This) 35903 /*** ICustomDestinationList methods ***/ 35904 #define ICustomDestinationList_SetAppID(This,pszAppID) (This)->lpVtbl->SetAppID(This,pszAppID) 35905 #define ICustomDestinationList_BeginList(This,pcMinSlots,riid,ppv) (This)->lpVtbl->BeginList(This,pcMinSlots,riid,ppv) 35906 #define ICustomDestinationList_AppendCategory(This,pszCategory,poa) (This)->lpVtbl->AppendCategory(This,pszCategory,poa) 35907 #define ICustomDestinationList_AppendKnownCategory(This,category) (This)->lpVtbl->AppendKnownCategory(This,category) 35908 #define ICustomDestinationList_AddUserTasks(This,poa) (This)->lpVtbl->AddUserTasks(This,poa) 35909 #define ICustomDestinationList_CommitList(This) (This)->lpVtbl->CommitList(This) 35910 #define ICustomDestinationList_GetRemovedDestinations(This,riid,ppv) (This)->lpVtbl->GetRemovedDestinations(This,riid,ppv) 35911 #define ICustomDestinationList_DeleteList(This,pszAppID) (This)->lpVtbl->DeleteList(This,pszAppID) 35912 #define ICustomDestinationList_AbortList(This) (This)->lpVtbl->AbortList(This) 35913 #else 35914 /*** IUnknown methods ***/ 35915 static FORCEINLINE HRESULT ICustomDestinationList_QueryInterface(ICustomDestinationList* This,REFIID riid,void **ppvObject) { 35916 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 35917 } 35918 static FORCEINLINE ULONG ICustomDestinationList_AddRef(ICustomDestinationList* This) { 35919 return This->lpVtbl->AddRef(This); 35920 } 35921 static FORCEINLINE ULONG ICustomDestinationList_Release(ICustomDestinationList* This) { 35922 return This->lpVtbl->Release(This); 35923 } 35924 /*** ICustomDestinationList methods ***/ 35925 static FORCEINLINE HRESULT ICustomDestinationList_SetAppID(ICustomDestinationList* This,LPCWSTR pszAppID) { 35926 return This->lpVtbl->SetAppID(This,pszAppID); 35927 } 35928 static FORCEINLINE HRESULT ICustomDestinationList_BeginList(ICustomDestinationList* This,UINT *pcMinSlots,REFIID riid,void **ppv) { 35929 return This->lpVtbl->BeginList(This,pcMinSlots,riid,ppv); 35930 } 35931 static FORCEINLINE HRESULT ICustomDestinationList_AppendCategory(ICustomDestinationList* This,LPCWSTR pszCategory,IObjectArray *poa) { 35932 return This->lpVtbl->AppendCategory(This,pszCategory,poa); 35933 } 35934 static FORCEINLINE HRESULT ICustomDestinationList_AppendKnownCategory(ICustomDestinationList* This,KNOWNDESTCATEGORY category) { 35935 return This->lpVtbl->AppendKnownCategory(This,category); 35936 } 35937 static FORCEINLINE HRESULT ICustomDestinationList_AddUserTasks(ICustomDestinationList* This,IObjectArray *poa) { 35938 return This->lpVtbl->AddUserTasks(This,poa); 35939 } 35940 static FORCEINLINE HRESULT ICustomDestinationList_CommitList(ICustomDestinationList* This) { 35941 return This->lpVtbl->CommitList(This); 35942 } 35943 static FORCEINLINE HRESULT ICustomDestinationList_GetRemovedDestinations(ICustomDestinationList* This,REFIID riid,void **ppv) { 35944 return This->lpVtbl->GetRemovedDestinations(This,riid,ppv); 35945 } 35946 static FORCEINLINE HRESULT ICustomDestinationList_DeleteList(ICustomDestinationList* This,LPCWSTR pszAppID) { 35947 return This->lpVtbl->DeleteList(This,pszAppID); 35948 } 35949 static FORCEINLINE HRESULT ICustomDestinationList_AbortList(ICustomDestinationList* This) { 35950 return This->lpVtbl->AbortList(This); 35951 } 35952 #endif 35953 #endif 35954 35955 #endif 35956 35957 HRESULT STDMETHODCALLTYPE ICustomDestinationList_SetAppID_Proxy( 35958 ICustomDestinationList* This, 35959 LPCWSTR pszAppID); 35960 void __RPC_STUB ICustomDestinationList_SetAppID_Stub( 35961 IRpcStubBuffer* This, 35962 IRpcChannelBuffer* pRpcChannelBuffer, 35963 PRPC_MESSAGE pRpcMessage, 35964 DWORD* pdwStubPhase); 35965 HRESULT STDMETHODCALLTYPE ICustomDestinationList_BeginList_Proxy( 35966 ICustomDestinationList* This, 35967 UINT *pcMinSlots, 35968 REFIID riid, 35969 void **ppv); 35970 void __RPC_STUB ICustomDestinationList_BeginList_Stub( 35971 IRpcStubBuffer* This, 35972 IRpcChannelBuffer* pRpcChannelBuffer, 35973 PRPC_MESSAGE pRpcMessage, 35974 DWORD* pdwStubPhase); 35975 HRESULT STDMETHODCALLTYPE ICustomDestinationList_AppendCategory_Proxy( 35976 ICustomDestinationList* This, 35977 LPCWSTR pszCategory, 35978 IObjectArray *poa); 35979 void __RPC_STUB ICustomDestinationList_AppendCategory_Stub( 35980 IRpcStubBuffer* This, 35981 IRpcChannelBuffer* pRpcChannelBuffer, 35982 PRPC_MESSAGE pRpcMessage, 35983 DWORD* pdwStubPhase); 35984 HRESULT STDMETHODCALLTYPE ICustomDestinationList_AppendKnownCategory_Proxy( 35985 ICustomDestinationList* This, 35986 KNOWNDESTCATEGORY category); 35987 void __RPC_STUB ICustomDestinationList_AppendKnownCategory_Stub( 35988 IRpcStubBuffer* This, 35989 IRpcChannelBuffer* pRpcChannelBuffer, 35990 PRPC_MESSAGE pRpcMessage, 35991 DWORD* pdwStubPhase); 35992 HRESULT STDMETHODCALLTYPE ICustomDestinationList_AddUserTasks_Proxy( 35993 ICustomDestinationList* This, 35994 IObjectArray *poa); 35995 void __RPC_STUB ICustomDestinationList_AddUserTasks_Stub( 35996 IRpcStubBuffer* This, 35997 IRpcChannelBuffer* pRpcChannelBuffer, 35998 PRPC_MESSAGE pRpcMessage, 35999 DWORD* pdwStubPhase); 36000 HRESULT STDMETHODCALLTYPE ICustomDestinationList_CommitList_Proxy( 36001 ICustomDestinationList* This); 36002 void __RPC_STUB ICustomDestinationList_CommitList_Stub( 36003 IRpcStubBuffer* This, 36004 IRpcChannelBuffer* pRpcChannelBuffer, 36005 PRPC_MESSAGE pRpcMessage, 36006 DWORD* pdwStubPhase); 36007 HRESULT STDMETHODCALLTYPE ICustomDestinationList_GetRemovedDestinations_Proxy( 36008 ICustomDestinationList* This, 36009 REFIID riid, 36010 void **ppv); 36011 void __RPC_STUB ICustomDestinationList_GetRemovedDestinations_Stub( 36012 IRpcStubBuffer* This, 36013 IRpcChannelBuffer* pRpcChannelBuffer, 36014 PRPC_MESSAGE pRpcMessage, 36015 DWORD* pdwStubPhase); 36016 HRESULT STDMETHODCALLTYPE ICustomDestinationList_DeleteList_Proxy( 36017 ICustomDestinationList* This, 36018 LPCWSTR pszAppID); 36019 void __RPC_STUB ICustomDestinationList_DeleteList_Stub( 36020 IRpcStubBuffer* This, 36021 IRpcChannelBuffer* pRpcChannelBuffer, 36022 PRPC_MESSAGE pRpcMessage, 36023 DWORD* pdwStubPhase); 36024 HRESULT STDMETHODCALLTYPE ICustomDestinationList_AbortList_Proxy( 36025 ICustomDestinationList* This); 36026 void __RPC_STUB ICustomDestinationList_AbortList_Stub( 36027 IRpcStubBuffer* This, 36028 IRpcChannelBuffer* pRpcChannelBuffer, 36029 PRPC_MESSAGE pRpcMessage, 36030 DWORD* pdwStubPhase); 36031 36032 #endif /* __ICustomDestinationList_INTERFACE_DEFINED__ */ 36033 36034 36035 /***************************************************************************** 36036 * IApplicationDestinations interface 36037 */ 36038 #ifndef __IApplicationDestinations_INTERFACE_DEFINED__ 36039 #define __IApplicationDestinations_INTERFACE_DEFINED__ 36040 36041 DEFINE_GUID(IID_IApplicationDestinations, 0x12337d35, 0x94c6, 0x48a0, 0xbc,0xe7, 0x6a,0x9c,0x69,0xd4,0xd6,0x00); 36042 #if defined(__cplusplus) && !defined(CINTERFACE) 36043 MIDL_INTERFACE("12337d35-94c6-48a0-bce7-6a9c69d4d600") 36044 IApplicationDestinations : public IUnknown 36045 { 36046 virtual HRESULT STDMETHODCALLTYPE SetAppID( 36047 LPCWSTR pszAppID) = 0; 36048 36049 virtual HRESULT STDMETHODCALLTYPE RemoveDestination( 36050 IUnknown *punk) = 0; 36051 36052 virtual HRESULT STDMETHODCALLTYPE RemoveAllDestinations( 36053 ) = 0; 36054 36055 }; 36056 #ifdef __CRT_UUID_DECL 36057 __CRT_UUID_DECL(IApplicationDestinations, 0x12337d35, 0x94c6, 0x48a0, 0xbc,0xe7, 0x6a,0x9c,0x69,0xd4,0xd6,0x00) 36058 #endif 36059 #else 36060 typedef struct IApplicationDestinationsVtbl { 36061 BEGIN_INTERFACE 36062 36063 /*** IUnknown methods ***/ 36064 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 36065 IApplicationDestinations* This, 36066 REFIID riid, 36067 void **ppvObject); 36068 36069 ULONG (STDMETHODCALLTYPE *AddRef)( 36070 IApplicationDestinations* This); 36071 36072 ULONG (STDMETHODCALLTYPE *Release)( 36073 IApplicationDestinations* This); 36074 36075 /*** IApplicationDestinations methods ***/ 36076 HRESULT (STDMETHODCALLTYPE *SetAppID)( 36077 IApplicationDestinations* This, 36078 LPCWSTR pszAppID); 36079 36080 HRESULT (STDMETHODCALLTYPE *RemoveDestination)( 36081 IApplicationDestinations* This, 36082 IUnknown *punk); 36083 36084 HRESULT (STDMETHODCALLTYPE *RemoveAllDestinations)( 36085 IApplicationDestinations* This); 36086 36087 END_INTERFACE 36088 } IApplicationDestinationsVtbl; 36089 interface IApplicationDestinations { 36090 CONST_VTBL IApplicationDestinationsVtbl* lpVtbl; 36091 }; 36092 36093 #ifdef COBJMACROS 36094 #ifndef WIDL_C_INLINE_WRAPPERS 36095 /*** IUnknown methods ***/ 36096 #define IApplicationDestinations_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 36097 #define IApplicationDestinations_AddRef(This) (This)->lpVtbl->AddRef(This) 36098 #define IApplicationDestinations_Release(This) (This)->lpVtbl->Release(This) 36099 /*** IApplicationDestinations methods ***/ 36100 #define IApplicationDestinations_SetAppID(This,pszAppID) (This)->lpVtbl->SetAppID(This,pszAppID) 36101 #define IApplicationDestinations_RemoveDestination(This,punk) (This)->lpVtbl->RemoveDestination(This,punk) 36102 #define IApplicationDestinations_RemoveAllDestinations(This) (This)->lpVtbl->RemoveAllDestinations(This) 36103 #else 36104 /*** IUnknown methods ***/ 36105 static FORCEINLINE HRESULT IApplicationDestinations_QueryInterface(IApplicationDestinations* This,REFIID riid,void **ppvObject) { 36106 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 36107 } 36108 static FORCEINLINE ULONG IApplicationDestinations_AddRef(IApplicationDestinations* This) { 36109 return This->lpVtbl->AddRef(This); 36110 } 36111 static FORCEINLINE ULONG IApplicationDestinations_Release(IApplicationDestinations* This) { 36112 return This->lpVtbl->Release(This); 36113 } 36114 /*** IApplicationDestinations methods ***/ 36115 static FORCEINLINE HRESULT IApplicationDestinations_SetAppID(IApplicationDestinations* This,LPCWSTR pszAppID) { 36116 return This->lpVtbl->SetAppID(This,pszAppID); 36117 } 36118 static FORCEINLINE HRESULT IApplicationDestinations_RemoveDestination(IApplicationDestinations* This,IUnknown *punk) { 36119 return This->lpVtbl->RemoveDestination(This,punk); 36120 } 36121 static FORCEINLINE HRESULT IApplicationDestinations_RemoveAllDestinations(IApplicationDestinations* This) { 36122 return This->lpVtbl->RemoveAllDestinations(This); 36123 } 36124 #endif 36125 #endif 36126 36127 #endif 36128 36129 HRESULT STDMETHODCALLTYPE IApplicationDestinations_SetAppID_Proxy( 36130 IApplicationDestinations* This, 36131 LPCWSTR pszAppID); 36132 void __RPC_STUB IApplicationDestinations_SetAppID_Stub( 36133 IRpcStubBuffer* This, 36134 IRpcChannelBuffer* pRpcChannelBuffer, 36135 PRPC_MESSAGE pRpcMessage, 36136 DWORD* pdwStubPhase); 36137 HRESULT STDMETHODCALLTYPE IApplicationDestinations_RemoveDestination_Proxy( 36138 IApplicationDestinations* This, 36139 IUnknown *punk); 36140 void __RPC_STUB IApplicationDestinations_RemoveDestination_Stub( 36141 IRpcStubBuffer* This, 36142 IRpcChannelBuffer* pRpcChannelBuffer, 36143 PRPC_MESSAGE pRpcMessage, 36144 DWORD* pdwStubPhase); 36145 HRESULT STDMETHODCALLTYPE IApplicationDestinations_RemoveAllDestinations_Proxy( 36146 IApplicationDestinations* This); 36147 void __RPC_STUB IApplicationDestinations_RemoveAllDestinations_Stub( 36148 IRpcStubBuffer* This, 36149 IRpcChannelBuffer* pRpcChannelBuffer, 36150 PRPC_MESSAGE pRpcMessage, 36151 DWORD* pdwStubPhase); 36152 36153 #endif /* __IApplicationDestinations_INTERFACE_DEFINED__ */ 36154 36155 36156 /***************************************************************************** 36157 * IApplicationDocumentLists interface 36158 */ 36159 #ifndef __IApplicationDocumentLists_INTERFACE_DEFINED__ 36160 #define __IApplicationDocumentLists_INTERFACE_DEFINED__ 36161 36162 typedef enum APPDOCLISTTYPE { 36163 ADLT_RECENT = 0, 36164 ADLT_FREQUENT = 1 36165 } APPDOCLISTTYPE; 36166 36167 DEFINE_GUID(IID_IApplicationDocumentLists, 0x3c594f9f, 0x9f30, 0x47a1, 0x97,0x9a, 0xc9,0xe8,0x3d,0x3d,0x0a,0x06); 36168 #if defined(__cplusplus) && !defined(CINTERFACE) 36169 MIDL_INTERFACE("3c594f9f-9f30-47a1-979a-c9e83d3d0a06") 36170 IApplicationDocumentLists : public IUnknown 36171 { 36172 virtual HRESULT STDMETHODCALLTYPE SetAppID( 36173 LPCWSTR pszAppID) = 0; 36174 36175 virtual HRESULT STDMETHODCALLTYPE GetList( 36176 APPDOCLISTTYPE listtype, 36177 UINT cItemsDesired, 36178 REFIID riid, 36179 void **ppv) = 0; 36180 36181 }; 36182 #ifdef __CRT_UUID_DECL 36183 __CRT_UUID_DECL(IApplicationDocumentLists, 0x3c594f9f, 0x9f30, 0x47a1, 0x97,0x9a, 0xc9,0xe8,0x3d,0x3d,0x0a,0x06) 36184 #endif 36185 #else 36186 typedef struct IApplicationDocumentListsVtbl { 36187 BEGIN_INTERFACE 36188 36189 /*** IUnknown methods ***/ 36190 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 36191 IApplicationDocumentLists* This, 36192 REFIID riid, 36193 void **ppvObject); 36194 36195 ULONG (STDMETHODCALLTYPE *AddRef)( 36196 IApplicationDocumentLists* This); 36197 36198 ULONG (STDMETHODCALLTYPE *Release)( 36199 IApplicationDocumentLists* This); 36200 36201 /*** IApplicationDocumentLists methods ***/ 36202 HRESULT (STDMETHODCALLTYPE *SetAppID)( 36203 IApplicationDocumentLists* This, 36204 LPCWSTR pszAppID); 36205 36206 HRESULT (STDMETHODCALLTYPE *GetList)( 36207 IApplicationDocumentLists* This, 36208 APPDOCLISTTYPE listtype, 36209 UINT cItemsDesired, 36210 REFIID riid, 36211 void **ppv); 36212 36213 END_INTERFACE 36214 } IApplicationDocumentListsVtbl; 36215 interface IApplicationDocumentLists { 36216 CONST_VTBL IApplicationDocumentListsVtbl* lpVtbl; 36217 }; 36218 36219 #ifdef COBJMACROS 36220 #ifndef WIDL_C_INLINE_WRAPPERS 36221 /*** IUnknown methods ***/ 36222 #define IApplicationDocumentLists_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 36223 #define IApplicationDocumentLists_AddRef(This) (This)->lpVtbl->AddRef(This) 36224 #define IApplicationDocumentLists_Release(This) (This)->lpVtbl->Release(This) 36225 /*** IApplicationDocumentLists methods ***/ 36226 #define IApplicationDocumentLists_SetAppID(This,pszAppID) (This)->lpVtbl->SetAppID(This,pszAppID) 36227 #define IApplicationDocumentLists_GetList(This,listtype,cItemsDesired,riid,ppv) (This)->lpVtbl->GetList(This,listtype,cItemsDesired,riid,ppv) 36228 #else 36229 /*** IUnknown methods ***/ 36230 static FORCEINLINE HRESULT IApplicationDocumentLists_QueryInterface(IApplicationDocumentLists* This,REFIID riid,void **ppvObject) { 36231 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 36232 } 36233 static FORCEINLINE ULONG IApplicationDocumentLists_AddRef(IApplicationDocumentLists* This) { 36234 return This->lpVtbl->AddRef(This); 36235 } 36236 static FORCEINLINE ULONG IApplicationDocumentLists_Release(IApplicationDocumentLists* This) { 36237 return This->lpVtbl->Release(This); 36238 } 36239 /*** IApplicationDocumentLists methods ***/ 36240 static FORCEINLINE HRESULT IApplicationDocumentLists_SetAppID(IApplicationDocumentLists* This,LPCWSTR pszAppID) { 36241 return This->lpVtbl->SetAppID(This,pszAppID); 36242 } 36243 static FORCEINLINE HRESULT IApplicationDocumentLists_GetList(IApplicationDocumentLists* This,APPDOCLISTTYPE listtype,UINT cItemsDesired,REFIID riid,void **ppv) { 36244 return This->lpVtbl->GetList(This,listtype,cItemsDesired,riid,ppv); 36245 } 36246 #endif 36247 #endif 36248 36249 #endif 36250 36251 HRESULT STDMETHODCALLTYPE IApplicationDocumentLists_SetAppID_Proxy( 36252 IApplicationDocumentLists* This, 36253 LPCWSTR pszAppID); 36254 void __RPC_STUB IApplicationDocumentLists_SetAppID_Stub( 36255 IRpcStubBuffer* This, 36256 IRpcChannelBuffer* pRpcChannelBuffer, 36257 PRPC_MESSAGE pRpcMessage, 36258 DWORD* pdwStubPhase); 36259 HRESULT STDMETHODCALLTYPE IApplicationDocumentLists_GetList_Proxy( 36260 IApplicationDocumentLists* This, 36261 APPDOCLISTTYPE listtype, 36262 UINT cItemsDesired, 36263 REFIID riid, 36264 void **ppv); 36265 void __RPC_STUB IApplicationDocumentLists_GetList_Stub( 36266 IRpcStubBuffer* This, 36267 IRpcChannelBuffer* pRpcChannelBuffer, 36268 PRPC_MESSAGE pRpcMessage, 36269 DWORD* pdwStubPhase); 36270 36271 #endif /* __IApplicationDocumentLists_INTERFACE_DEFINED__ */ 36272 36273 36274 /***************************************************************************** 36275 * IObjectWithAppUserModelID interface 36276 */ 36277 #ifndef __IObjectWithAppUserModelID_INTERFACE_DEFINED__ 36278 #define __IObjectWithAppUserModelID_INTERFACE_DEFINED__ 36279 36280 DEFINE_GUID(IID_IObjectWithAppUserModelID, 0x36db0196, 0x9665, 0x46d1, 0x9b,0xa7, 0xd3,0x70,0x9e,0xec,0xf9,0xed); 36281 #if defined(__cplusplus) && !defined(CINTERFACE) 36282 MIDL_INTERFACE("36db0196-9665-46d1-9ba7-d3709eecf9ed") 36283 IObjectWithAppUserModelID : public IUnknown 36284 { 36285 virtual HRESULT STDMETHODCALLTYPE SetAppID( 36286 LPCWSTR pszAppID) = 0; 36287 36288 virtual HRESULT STDMETHODCALLTYPE GetAppID( 36289 LPWSTR *ppszAppID) = 0; 36290 36291 }; 36292 #ifdef __CRT_UUID_DECL 36293 __CRT_UUID_DECL(IObjectWithAppUserModelID, 0x36db0196, 0x9665, 0x46d1, 0x9b,0xa7, 0xd3,0x70,0x9e,0xec,0xf9,0xed) 36294 #endif 36295 #else 36296 typedef struct IObjectWithAppUserModelIDVtbl { 36297 BEGIN_INTERFACE 36298 36299 /*** IUnknown methods ***/ 36300 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 36301 IObjectWithAppUserModelID* This, 36302 REFIID riid, 36303 void **ppvObject); 36304 36305 ULONG (STDMETHODCALLTYPE *AddRef)( 36306 IObjectWithAppUserModelID* This); 36307 36308 ULONG (STDMETHODCALLTYPE *Release)( 36309 IObjectWithAppUserModelID* This); 36310 36311 /*** IObjectWithAppUserModelID methods ***/ 36312 HRESULT (STDMETHODCALLTYPE *SetAppID)( 36313 IObjectWithAppUserModelID* This, 36314 LPCWSTR pszAppID); 36315 36316 HRESULT (STDMETHODCALLTYPE *GetAppID)( 36317 IObjectWithAppUserModelID* This, 36318 LPWSTR *ppszAppID); 36319 36320 END_INTERFACE 36321 } IObjectWithAppUserModelIDVtbl; 36322 interface IObjectWithAppUserModelID { 36323 CONST_VTBL IObjectWithAppUserModelIDVtbl* lpVtbl; 36324 }; 36325 36326 #ifdef COBJMACROS 36327 #ifndef WIDL_C_INLINE_WRAPPERS 36328 /*** IUnknown methods ***/ 36329 #define IObjectWithAppUserModelID_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 36330 #define IObjectWithAppUserModelID_AddRef(This) (This)->lpVtbl->AddRef(This) 36331 #define IObjectWithAppUserModelID_Release(This) (This)->lpVtbl->Release(This) 36332 /*** IObjectWithAppUserModelID methods ***/ 36333 #define IObjectWithAppUserModelID_SetAppID(This,pszAppID) (This)->lpVtbl->SetAppID(This,pszAppID) 36334 #define IObjectWithAppUserModelID_GetAppID(This,ppszAppID) (This)->lpVtbl->GetAppID(This,ppszAppID) 36335 #else 36336 /*** IUnknown methods ***/ 36337 static FORCEINLINE HRESULT IObjectWithAppUserModelID_QueryInterface(IObjectWithAppUserModelID* This,REFIID riid,void **ppvObject) { 36338 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 36339 } 36340 static FORCEINLINE ULONG IObjectWithAppUserModelID_AddRef(IObjectWithAppUserModelID* This) { 36341 return This->lpVtbl->AddRef(This); 36342 } 36343 static FORCEINLINE ULONG IObjectWithAppUserModelID_Release(IObjectWithAppUserModelID* This) { 36344 return This->lpVtbl->Release(This); 36345 } 36346 /*** IObjectWithAppUserModelID methods ***/ 36347 static FORCEINLINE HRESULT IObjectWithAppUserModelID_SetAppID(IObjectWithAppUserModelID* This,LPCWSTR pszAppID) { 36348 return This->lpVtbl->SetAppID(This,pszAppID); 36349 } 36350 static FORCEINLINE HRESULT IObjectWithAppUserModelID_GetAppID(IObjectWithAppUserModelID* This,LPWSTR *ppszAppID) { 36351 return This->lpVtbl->GetAppID(This,ppszAppID); 36352 } 36353 #endif 36354 #endif 36355 36356 #endif 36357 36358 HRESULT STDMETHODCALLTYPE IObjectWithAppUserModelID_SetAppID_Proxy( 36359 IObjectWithAppUserModelID* This, 36360 LPCWSTR pszAppID); 36361 void __RPC_STUB IObjectWithAppUserModelID_SetAppID_Stub( 36362 IRpcStubBuffer* This, 36363 IRpcChannelBuffer* pRpcChannelBuffer, 36364 PRPC_MESSAGE pRpcMessage, 36365 DWORD* pdwStubPhase); 36366 HRESULT STDMETHODCALLTYPE IObjectWithAppUserModelID_GetAppID_Proxy( 36367 IObjectWithAppUserModelID* This, 36368 LPWSTR *ppszAppID); 36369 void __RPC_STUB IObjectWithAppUserModelID_GetAppID_Stub( 36370 IRpcStubBuffer* This, 36371 IRpcChannelBuffer* pRpcChannelBuffer, 36372 PRPC_MESSAGE pRpcMessage, 36373 DWORD* pdwStubPhase); 36374 36375 #endif /* __IObjectWithAppUserModelID_INTERFACE_DEFINED__ */ 36376 36377 36378 /***************************************************************************** 36379 * IObjectWithProgID interface 36380 */ 36381 #ifndef __IObjectWithProgID_INTERFACE_DEFINED__ 36382 #define __IObjectWithProgID_INTERFACE_DEFINED__ 36383 36384 DEFINE_GUID(IID_IObjectWithProgID, 0x71e806fb, 0x8dee, 0x46fc, 0xbf,0x8c, 0x77,0x48,0xa8,0xa1,0xae,0x13); 36385 #if defined(__cplusplus) && !defined(CINTERFACE) 36386 MIDL_INTERFACE("71e806fb-8dee-46fc-bf8c-7748a8a1ae13") 36387 IObjectWithProgID : public IUnknown 36388 { 36389 virtual HRESULT STDMETHODCALLTYPE SetProgID( 36390 LPCWSTR pszProgID) = 0; 36391 36392 virtual HRESULT STDMETHODCALLTYPE GetProgID( 36393 LPWSTR *ppszProgID) = 0; 36394 36395 }; 36396 #ifdef __CRT_UUID_DECL 36397 __CRT_UUID_DECL(IObjectWithProgID, 0x71e806fb, 0x8dee, 0x46fc, 0xbf,0x8c, 0x77,0x48,0xa8,0xa1,0xae,0x13) 36398 #endif 36399 #else 36400 typedef struct IObjectWithProgIDVtbl { 36401 BEGIN_INTERFACE 36402 36403 /*** IUnknown methods ***/ 36404 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 36405 IObjectWithProgID* This, 36406 REFIID riid, 36407 void **ppvObject); 36408 36409 ULONG (STDMETHODCALLTYPE *AddRef)( 36410 IObjectWithProgID* This); 36411 36412 ULONG (STDMETHODCALLTYPE *Release)( 36413 IObjectWithProgID* This); 36414 36415 /*** IObjectWithProgID methods ***/ 36416 HRESULT (STDMETHODCALLTYPE *SetProgID)( 36417 IObjectWithProgID* This, 36418 LPCWSTR pszProgID); 36419 36420 HRESULT (STDMETHODCALLTYPE *GetProgID)( 36421 IObjectWithProgID* This, 36422 LPWSTR *ppszProgID); 36423 36424 END_INTERFACE 36425 } IObjectWithProgIDVtbl; 36426 interface IObjectWithProgID { 36427 CONST_VTBL IObjectWithProgIDVtbl* lpVtbl; 36428 }; 36429 36430 #ifdef COBJMACROS 36431 #ifndef WIDL_C_INLINE_WRAPPERS 36432 /*** IUnknown methods ***/ 36433 #define IObjectWithProgID_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 36434 #define IObjectWithProgID_AddRef(This) (This)->lpVtbl->AddRef(This) 36435 #define IObjectWithProgID_Release(This) (This)->lpVtbl->Release(This) 36436 /*** IObjectWithProgID methods ***/ 36437 #define IObjectWithProgID_SetProgID(This,pszProgID) (This)->lpVtbl->SetProgID(This,pszProgID) 36438 #define IObjectWithProgID_GetProgID(This,ppszProgID) (This)->lpVtbl->GetProgID(This,ppszProgID) 36439 #else 36440 /*** IUnknown methods ***/ 36441 static FORCEINLINE HRESULT IObjectWithProgID_QueryInterface(IObjectWithProgID* This,REFIID riid,void **ppvObject) { 36442 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 36443 } 36444 static FORCEINLINE ULONG IObjectWithProgID_AddRef(IObjectWithProgID* This) { 36445 return This->lpVtbl->AddRef(This); 36446 } 36447 static FORCEINLINE ULONG IObjectWithProgID_Release(IObjectWithProgID* This) { 36448 return This->lpVtbl->Release(This); 36449 } 36450 /*** IObjectWithProgID methods ***/ 36451 static FORCEINLINE HRESULT IObjectWithProgID_SetProgID(IObjectWithProgID* This,LPCWSTR pszProgID) { 36452 return This->lpVtbl->SetProgID(This,pszProgID); 36453 } 36454 static FORCEINLINE HRESULT IObjectWithProgID_GetProgID(IObjectWithProgID* This,LPWSTR *ppszProgID) { 36455 return This->lpVtbl->GetProgID(This,ppszProgID); 36456 } 36457 #endif 36458 #endif 36459 36460 #endif 36461 36462 HRESULT STDMETHODCALLTYPE IObjectWithProgID_SetProgID_Proxy( 36463 IObjectWithProgID* This, 36464 LPCWSTR pszProgID); 36465 void __RPC_STUB IObjectWithProgID_SetProgID_Stub( 36466 IRpcStubBuffer* This, 36467 IRpcChannelBuffer* pRpcChannelBuffer, 36468 PRPC_MESSAGE pRpcMessage, 36469 DWORD* pdwStubPhase); 36470 HRESULT STDMETHODCALLTYPE IObjectWithProgID_GetProgID_Proxy( 36471 IObjectWithProgID* This, 36472 LPWSTR *ppszProgID); 36473 void __RPC_STUB IObjectWithProgID_GetProgID_Stub( 36474 IRpcStubBuffer* This, 36475 IRpcChannelBuffer* pRpcChannelBuffer, 36476 PRPC_MESSAGE pRpcMessage, 36477 DWORD* pdwStubPhase); 36478 36479 #endif /* __IObjectWithProgID_INTERFACE_DEFINED__ */ 36480 36481 36482 /***************************************************************************** 36483 * IUpdateIDList interface 36484 */ 36485 #ifndef __IUpdateIDList_INTERFACE_DEFINED__ 36486 #define __IUpdateIDList_INTERFACE_DEFINED__ 36487 36488 DEFINE_GUID(IID_IUpdateIDList, 0x6589b6d2, 0x5f8d, 0x4b9e, 0xb7,0xe0, 0x23,0xcd,0xd9,0x71,0x7d,0x8c); 36489 #if defined(__cplusplus) && !defined(CINTERFACE) 36490 MIDL_INTERFACE("6589b6d2-5f8d-4b9e-b7e0-23cdd9717d8c") 36491 IUpdateIDList : public IUnknown 36492 { 36493 virtual HRESULT STDMETHODCALLTYPE Update( 36494 IBindCtx *pbc, 36495 PCUITEMID_CHILD pidlIn, 36496 PITEMID_CHILD *ppidlOut) = 0; 36497 36498 }; 36499 #ifdef __CRT_UUID_DECL 36500 __CRT_UUID_DECL(IUpdateIDList, 0x6589b6d2, 0x5f8d, 0x4b9e, 0xb7,0xe0, 0x23,0xcd,0xd9,0x71,0x7d,0x8c) 36501 #endif 36502 #else 36503 typedef struct IUpdateIDListVtbl { 36504 BEGIN_INTERFACE 36505 36506 /*** IUnknown methods ***/ 36507 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 36508 IUpdateIDList* This, 36509 REFIID riid, 36510 void **ppvObject); 36511 36512 ULONG (STDMETHODCALLTYPE *AddRef)( 36513 IUpdateIDList* This); 36514 36515 ULONG (STDMETHODCALLTYPE *Release)( 36516 IUpdateIDList* This); 36517 36518 /*** IUpdateIDList methods ***/ 36519 HRESULT (STDMETHODCALLTYPE *Update)( 36520 IUpdateIDList* This, 36521 IBindCtx *pbc, 36522 PCUITEMID_CHILD pidlIn, 36523 PITEMID_CHILD *ppidlOut); 36524 36525 END_INTERFACE 36526 } IUpdateIDListVtbl; 36527 interface IUpdateIDList { 36528 CONST_VTBL IUpdateIDListVtbl* lpVtbl; 36529 }; 36530 36531 #ifdef COBJMACROS 36532 #ifndef WIDL_C_INLINE_WRAPPERS 36533 /*** IUnknown methods ***/ 36534 #define IUpdateIDList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 36535 #define IUpdateIDList_AddRef(This) (This)->lpVtbl->AddRef(This) 36536 #define IUpdateIDList_Release(This) (This)->lpVtbl->Release(This) 36537 /*** IUpdateIDList methods ***/ 36538 #define IUpdateIDList_Update(This,pbc,pidlIn,ppidlOut) (This)->lpVtbl->Update(This,pbc,pidlIn,ppidlOut) 36539 #else 36540 /*** IUnknown methods ***/ 36541 static FORCEINLINE HRESULT IUpdateIDList_QueryInterface(IUpdateIDList* This,REFIID riid,void **ppvObject) { 36542 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 36543 } 36544 static FORCEINLINE ULONG IUpdateIDList_AddRef(IUpdateIDList* This) { 36545 return This->lpVtbl->AddRef(This); 36546 } 36547 static FORCEINLINE ULONG IUpdateIDList_Release(IUpdateIDList* This) { 36548 return This->lpVtbl->Release(This); 36549 } 36550 /*** IUpdateIDList methods ***/ 36551 static FORCEINLINE HRESULT IUpdateIDList_Update(IUpdateIDList* This,IBindCtx *pbc,PCUITEMID_CHILD pidlIn,PITEMID_CHILD *ppidlOut) { 36552 return This->lpVtbl->Update(This,pbc,pidlIn,ppidlOut); 36553 } 36554 #endif 36555 #endif 36556 36557 #endif 36558 36559 HRESULT STDMETHODCALLTYPE IUpdateIDList_Update_Proxy( 36560 IUpdateIDList* This, 36561 IBindCtx *pbc, 36562 PCUITEMID_CHILD pidlIn, 36563 PITEMID_CHILD *ppidlOut); 36564 void __RPC_STUB IUpdateIDList_Update_Stub( 36565 IRpcStubBuffer* This, 36566 IRpcChannelBuffer* pRpcChannelBuffer, 36567 PRPC_MESSAGE pRpcMessage, 36568 DWORD* pdwStubPhase); 36569 36570 #endif /* __IUpdateIDList_INTERFACE_DEFINED__ */ 36571 36572 36573 SHSTDAPI SetCurrentProcessExplicitAppUserModelID(PCWSTR AppID); 36574 SHSTDAPI GetCurrentProcessExplicitAppUserModelID(PWSTR *AppID); 36575 #endif 36576 36577 /***************************************************************************** 36578 * IDesktopGadget interface 36579 */ 36580 #ifndef __IDesktopGadget_INTERFACE_DEFINED__ 36581 #define __IDesktopGadget_INTERFACE_DEFINED__ 36582 36583 DEFINE_GUID(IID_IDesktopGadget, 0xc1646bc4, 0xf298, 0x4f91, 0xa2,0x04, 0xeb,0x2d,0xd1,0x70,0x9d,0x1a); 36584 #if defined(__cplusplus) && !defined(CINTERFACE) 36585 MIDL_INTERFACE("c1646bc4-f298-4f91-a204-eb2dd1709d1a") 36586 IDesktopGadget : public IUnknown 36587 { 36588 virtual HRESULT STDMETHODCALLTYPE RunGadget( 36589 LPCWSTR gadgetPath) = 0; 36590 36591 }; 36592 #ifdef __CRT_UUID_DECL 36593 __CRT_UUID_DECL(IDesktopGadget, 0xc1646bc4, 0xf298, 0x4f91, 0xa2,0x04, 0xeb,0x2d,0xd1,0x70,0x9d,0x1a) 36594 #endif 36595 #else 36596 typedef struct IDesktopGadgetVtbl { 36597 BEGIN_INTERFACE 36598 36599 /*** IUnknown methods ***/ 36600 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 36601 IDesktopGadget* This, 36602 REFIID riid, 36603 void **ppvObject); 36604 36605 ULONG (STDMETHODCALLTYPE *AddRef)( 36606 IDesktopGadget* This); 36607 36608 ULONG (STDMETHODCALLTYPE *Release)( 36609 IDesktopGadget* This); 36610 36611 /*** IDesktopGadget methods ***/ 36612 HRESULT (STDMETHODCALLTYPE *RunGadget)( 36613 IDesktopGadget* This, 36614 LPCWSTR gadgetPath); 36615 36616 END_INTERFACE 36617 } IDesktopGadgetVtbl; 36618 interface IDesktopGadget { 36619 CONST_VTBL IDesktopGadgetVtbl* lpVtbl; 36620 }; 36621 36622 #ifdef COBJMACROS 36623 #ifndef WIDL_C_INLINE_WRAPPERS 36624 /*** IUnknown methods ***/ 36625 #define IDesktopGadget_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 36626 #define IDesktopGadget_AddRef(This) (This)->lpVtbl->AddRef(This) 36627 #define IDesktopGadget_Release(This) (This)->lpVtbl->Release(This) 36628 /*** IDesktopGadget methods ***/ 36629 #define IDesktopGadget_RunGadget(This,gadgetPath) (This)->lpVtbl->RunGadget(This,gadgetPath) 36630 #else 36631 /*** IUnknown methods ***/ 36632 static FORCEINLINE HRESULT IDesktopGadget_QueryInterface(IDesktopGadget* This,REFIID riid,void **ppvObject) { 36633 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 36634 } 36635 static FORCEINLINE ULONG IDesktopGadget_AddRef(IDesktopGadget* This) { 36636 return This->lpVtbl->AddRef(This); 36637 } 36638 static FORCEINLINE ULONG IDesktopGadget_Release(IDesktopGadget* This) { 36639 return This->lpVtbl->Release(This); 36640 } 36641 /*** IDesktopGadget methods ***/ 36642 static FORCEINLINE HRESULT IDesktopGadget_RunGadget(IDesktopGadget* This,LPCWSTR gadgetPath) { 36643 return This->lpVtbl->RunGadget(This,gadgetPath); 36644 } 36645 #endif 36646 #endif 36647 36648 #endif 36649 36650 HRESULT STDMETHODCALLTYPE IDesktopGadget_RunGadget_Proxy( 36651 IDesktopGadget* This, 36652 LPCWSTR gadgetPath); 36653 void __RPC_STUB IDesktopGadget_RunGadget_Stub( 36654 IRpcStubBuffer* This, 36655 IRpcChannelBuffer* pRpcChannelBuffer, 36656 PRPC_MESSAGE pRpcMessage, 36657 DWORD* pdwStubPhase); 36658 36659 #endif /* __IDesktopGadget_INTERFACE_DEFINED__ */ 36660 36661 36662 #if NTDDI_VERSION >= NTDDI_WIN8 36663 /***************************************************************************** 36664 * IDesktopWallpaper interface 36665 */ 36666 #ifndef __IDesktopWallpaper_INTERFACE_DEFINED__ 36667 #define __IDesktopWallpaper_INTERFACE_DEFINED__ 36668 36669 typedef enum DESKTOP_SLIDESHOW_OPTIONS { 36670 DSO_SHUFFLEIMAGES = 0x1 36671 } DESKTOP_SLIDESHOW_OPTIONS; 36672 36673 DEFINE_ENUM_FLAG_OPERATORS(DESKTOP_SLIDESHOW_OPTIONS); 36674 36675 typedef enum DESKTOP_SLIDESHOW_STATE { 36676 DSS_ENABLED = 0x1, 36677 DSS_SLIDESHOW = 0x2, 36678 DSS_DISABLED_BY_REMOTE_SESSION = 0x4 36679 } DESKTOP_SLIDESHOW_STATE; 36680 36681 DEFINE_ENUM_FLAG_OPERATORS(DESKTOP_SLIDESHOW_STATE); 36682 36683 typedef enum DESKTOP_SLIDESHOW_DIRECTION { 36684 DSD_FORWARD = 0, 36685 DSD_BACKWARD = 1 36686 } DESKTOP_SLIDESHOW_DIRECTION; 36687 36688 typedef enum DESKTOP_WALLPAPER_POSITION { 36689 DWPOS_CENTER = 0, 36690 DWPOS_TILE = 1, 36691 DWPOS_STRETCH = 2, 36692 DWPOS_FIT = 3, 36693 DWPOS_FILL = 4, 36694 DWPOS_SPAN = 5 36695 } DESKTOP_WALLPAPER_POSITION; 36696 36697 DEFINE_GUID(IID_IDesktopWallpaper, 0xb92b56a9, 0x8b55, 0x4e14, 0x9a,0x89, 0x01,0x99,0xbb,0xb6,0xf9,0x3b); 36698 #if defined(__cplusplus) && !defined(CINTERFACE) 36699 MIDL_INTERFACE("b92b56a9-8b55-4e14-9a89-0199bbb6f93b") 36700 IDesktopWallpaper : public IUnknown 36701 { 36702 virtual HRESULT STDMETHODCALLTYPE SetWallpaper( 36703 LPCWSTR monitorID, 36704 LPCWSTR wallpaper) = 0; 36705 36706 virtual HRESULT STDMETHODCALLTYPE GetWallpaper( 36707 LPCWSTR monitorID, 36708 LPWSTR *wallpaper) = 0; 36709 36710 virtual HRESULT STDMETHODCALLTYPE GetMonitorDevicePathAt( 36711 UINT monitorIndex, 36712 LPWSTR *monitorID) = 0; 36713 36714 virtual HRESULT STDMETHODCALLTYPE GetMonitorDevicePathCount( 36715 UINT *count) = 0; 36716 36717 virtual HRESULT STDMETHODCALLTYPE GetMonitorRECT( 36718 LPCWSTR monitorID, 36719 RECT *displayRect) = 0; 36720 36721 virtual HRESULT STDMETHODCALLTYPE SetBackgroundColor( 36722 COLORREF color) = 0; 36723 36724 virtual HRESULT STDMETHODCALLTYPE GetBackgroundColor( 36725 COLORREF *color) = 0; 36726 36727 virtual HRESULT STDMETHODCALLTYPE SetPosition( 36728 DESKTOP_WALLPAPER_POSITION position) = 0; 36729 36730 virtual HRESULT STDMETHODCALLTYPE GetPosition( 36731 DESKTOP_WALLPAPER_POSITION *position) = 0; 36732 36733 virtual HRESULT STDMETHODCALLTYPE SetSlideshow( 36734 IShellItemArray *items) = 0; 36735 36736 virtual HRESULT STDMETHODCALLTYPE GetSlideshow( 36737 IShellItemArray **items) = 0; 36738 36739 virtual HRESULT STDMETHODCALLTYPE SetSlideshowOptions( 36740 DESKTOP_SLIDESHOW_OPTIONS options, 36741 UINT slideshowTick) = 0; 36742 36743 virtual HRESULT STDMETHODCALLTYPE GetSlideshowOptions( 36744 DESKTOP_SLIDESHOW_OPTIONS *options, 36745 UINT *slideshowTick) = 0; 36746 36747 virtual HRESULT STDMETHODCALLTYPE AdvanceSlideshow( 36748 LPCWSTR monitorID, 36749 DESKTOP_SLIDESHOW_DIRECTION direction) = 0; 36750 36751 virtual HRESULT STDMETHODCALLTYPE GetStatus( 36752 DESKTOP_SLIDESHOW_STATE *state) = 0; 36753 36754 virtual HRESULT STDMETHODCALLTYPE Enable( 36755 WINBOOL enable) = 0; 36756 36757 }; 36758 #ifdef __CRT_UUID_DECL 36759 __CRT_UUID_DECL(IDesktopWallpaper, 0xb92b56a9, 0x8b55, 0x4e14, 0x9a,0x89, 0x01,0x99,0xbb,0xb6,0xf9,0x3b) 36760 #endif 36761 #else 36762 typedef struct IDesktopWallpaperVtbl { 36763 BEGIN_INTERFACE 36764 36765 /*** IUnknown methods ***/ 36766 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 36767 IDesktopWallpaper* This, 36768 REFIID riid, 36769 void **ppvObject); 36770 36771 ULONG (STDMETHODCALLTYPE *AddRef)( 36772 IDesktopWallpaper* This); 36773 36774 ULONG (STDMETHODCALLTYPE *Release)( 36775 IDesktopWallpaper* This); 36776 36777 /*** IDesktopWallpaper methods ***/ 36778 HRESULT (STDMETHODCALLTYPE *SetWallpaper)( 36779 IDesktopWallpaper* This, 36780 LPCWSTR monitorID, 36781 LPCWSTR wallpaper); 36782 36783 HRESULT (STDMETHODCALLTYPE *GetWallpaper)( 36784 IDesktopWallpaper* This, 36785 LPCWSTR monitorID, 36786 LPWSTR *wallpaper); 36787 36788 HRESULT (STDMETHODCALLTYPE *GetMonitorDevicePathAt)( 36789 IDesktopWallpaper* This, 36790 UINT monitorIndex, 36791 LPWSTR *monitorID); 36792 36793 HRESULT (STDMETHODCALLTYPE *GetMonitorDevicePathCount)( 36794 IDesktopWallpaper* This, 36795 UINT *count); 36796 36797 HRESULT (STDMETHODCALLTYPE *GetMonitorRECT)( 36798 IDesktopWallpaper* This, 36799 LPCWSTR monitorID, 36800 RECT *displayRect); 36801 36802 HRESULT (STDMETHODCALLTYPE *SetBackgroundColor)( 36803 IDesktopWallpaper* This, 36804 COLORREF color); 36805 36806 HRESULT (STDMETHODCALLTYPE *GetBackgroundColor)( 36807 IDesktopWallpaper* This, 36808 COLORREF *color); 36809 36810 HRESULT (STDMETHODCALLTYPE *SetPosition)( 36811 IDesktopWallpaper* This, 36812 DESKTOP_WALLPAPER_POSITION position); 36813 36814 HRESULT (STDMETHODCALLTYPE *GetPosition)( 36815 IDesktopWallpaper* This, 36816 DESKTOP_WALLPAPER_POSITION *position); 36817 36818 HRESULT (STDMETHODCALLTYPE *SetSlideshow)( 36819 IDesktopWallpaper* This, 36820 IShellItemArray *items); 36821 36822 HRESULT (STDMETHODCALLTYPE *GetSlideshow)( 36823 IDesktopWallpaper* This, 36824 IShellItemArray **items); 36825 36826 HRESULT (STDMETHODCALLTYPE *SetSlideshowOptions)( 36827 IDesktopWallpaper* This, 36828 DESKTOP_SLIDESHOW_OPTIONS options, 36829 UINT slideshowTick); 36830 36831 HRESULT (STDMETHODCALLTYPE *GetSlideshowOptions)( 36832 IDesktopWallpaper* This, 36833 DESKTOP_SLIDESHOW_OPTIONS *options, 36834 UINT *slideshowTick); 36835 36836 HRESULT (STDMETHODCALLTYPE *AdvanceSlideshow)( 36837 IDesktopWallpaper* This, 36838 LPCWSTR monitorID, 36839 DESKTOP_SLIDESHOW_DIRECTION direction); 36840 36841 HRESULT (STDMETHODCALLTYPE *GetStatus)( 36842 IDesktopWallpaper* This, 36843 DESKTOP_SLIDESHOW_STATE *state); 36844 36845 HRESULT (STDMETHODCALLTYPE *Enable)( 36846 IDesktopWallpaper* This, 36847 WINBOOL enable); 36848 36849 END_INTERFACE 36850 } IDesktopWallpaperVtbl; 36851 interface IDesktopWallpaper { 36852 CONST_VTBL IDesktopWallpaperVtbl* lpVtbl; 36853 }; 36854 36855 #ifdef COBJMACROS 36856 #ifndef WIDL_C_INLINE_WRAPPERS 36857 /*** IUnknown methods ***/ 36858 #define IDesktopWallpaper_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 36859 #define IDesktopWallpaper_AddRef(This) (This)->lpVtbl->AddRef(This) 36860 #define IDesktopWallpaper_Release(This) (This)->lpVtbl->Release(This) 36861 /*** IDesktopWallpaper methods ***/ 36862 #define IDesktopWallpaper_SetWallpaper(This,monitorID,wallpaper) (This)->lpVtbl->SetWallpaper(This,monitorID,wallpaper) 36863 #define IDesktopWallpaper_GetWallpaper(This,monitorID,wallpaper) (This)->lpVtbl->GetWallpaper(This,monitorID,wallpaper) 36864 #define IDesktopWallpaper_GetMonitorDevicePathAt(This,monitorIndex,monitorID) (This)->lpVtbl->GetMonitorDevicePathAt(This,monitorIndex,monitorID) 36865 #define IDesktopWallpaper_GetMonitorDevicePathCount(This,count) (This)->lpVtbl->GetMonitorDevicePathCount(This,count) 36866 #define IDesktopWallpaper_GetMonitorRECT(This,monitorID,displayRect) (This)->lpVtbl->GetMonitorRECT(This,monitorID,displayRect) 36867 #define IDesktopWallpaper_SetBackgroundColor(This,color) (This)->lpVtbl->SetBackgroundColor(This,color) 36868 #define IDesktopWallpaper_GetBackgroundColor(This,color) (This)->lpVtbl->GetBackgroundColor(This,color) 36869 #define IDesktopWallpaper_SetPosition(This,position) (This)->lpVtbl->SetPosition(This,position) 36870 #define IDesktopWallpaper_GetPosition(This,position) (This)->lpVtbl->GetPosition(This,position) 36871 #define IDesktopWallpaper_SetSlideshow(This,items) (This)->lpVtbl->SetSlideshow(This,items) 36872 #define IDesktopWallpaper_GetSlideshow(This,items) (This)->lpVtbl->GetSlideshow(This,items) 36873 #define IDesktopWallpaper_SetSlideshowOptions(This,options,slideshowTick) (This)->lpVtbl->SetSlideshowOptions(This,options,slideshowTick) 36874 #define IDesktopWallpaper_GetSlideshowOptions(This,options,slideshowTick) (This)->lpVtbl->GetSlideshowOptions(This,options,slideshowTick) 36875 #define IDesktopWallpaper_AdvanceSlideshow(This,monitorID,direction) (This)->lpVtbl->AdvanceSlideshow(This,monitorID,direction) 36876 #define IDesktopWallpaper_GetStatus(This,state) (This)->lpVtbl->GetStatus(This,state) 36877 #define IDesktopWallpaper_Enable(This,enable) (This)->lpVtbl->Enable(This,enable) 36878 #else 36879 /*** IUnknown methods ***/ 36880 static FORCEINLINE HRESULT IDesktopWallpaper_QueryInterface(IDesktopWallpaper* This,REFIID riid,void **ppvObject) { 36881 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 36882 } 36883 static FORCEINLINE ULONG IDesktopWallpaper_AddRef(IDesktopWallpaper* This) { 36884 return This->lpVtbl->AddRef(This); 36885 } 36886 static FORCEINLINE ULONG IDesktopWallpaper_Release(IDesktopWallpaper* This) { 36887 return This->lpVtbl->Release(This); 36888 } 36889 /*** IDesktopWallpaper methods ***/ 36890 static FORCEINLINE HRESULT IDesktopWallpaper_SetWallpaper(IDesktopWallpaper* This,LPCWSTR monitorID,LPCWSTR wallpaper) { 36891 return This->lpVtbl->SetWallpaper(This,monitorID,wallpaper); 36892 } 36893 static FORCEINLINE HRESULT IDesktopWallpaper_GetWallpaper(IDesktopWallpaper* This,LPCWSTR monitorID,LPWSTR *wallpaper) { 36894 return This->lpVtbl->GetWallpaper(This,monitorID,wallpaper); 36895 } 36896 static FORCEINLINE HRESULT IDesktopWallpaper_GetMonitorDevicePathAt(IDesktopWallpaper* This,UINT monitorIndex,LPWSTR *monitorID) { 36897 return This->lpVtbl->GetMonitorDevicePathAt(This,monitorIndex,monitorID); 36898 } 36899 static FORCEINLINE HRESULT IDesktopWallpaper_GetMonitorDevicePathCount(IDesktopWallpaper* This,UINT *count) { 36900 return This->lpVtbl->GetMonitorDevicePathCount(This,count); 36901 } 36902 static FORCEINLINE HRESULT IDesktopWallpaper_GetMonitorRECT(IDesktopWallpaper* This,LPCWSTR monitorID,RECT *displayRect) { 36903 return This->lpVtbl->GetMonitorRECT(This,monitorID,displayRect); 36904 } 36905 static FORCEINLINE HRESULT IDesktopWallpaper_SetBackgroundColor(IDesktopWallpaper* This,COLORREF color) { 36906 return This->lpVtbl->SetBackgroundColor(This,color); 36907 } 36908 static FORCEINLINE HRESULT IDesktopWallpaper_GetBackgroundColor(IDesktopWallpaper* This,COLORREF *color) { 36909 return This->lpVtbl->GetBackgroundColor(This,color); 36910 } 36911 static FORCEINLINE HRESULT IDesktopWallpaper_SetPosition(IDesktopWallpaper* This,DESKTOP_WALLPAPER_POSITION position) { 36912 return This->lpVtbl->SetPosition(This,position); 36913 } 36914 static FORCEINLINE HRESULT IDesktopWallpaper_GetPosition(IDesktopWallpaper* This,DESKTOP_WALLPAPER_POSITION *position) { 36915 return This->lpVtbl->GetPosition(This,position); 36916 } 36917 static FORCEINLINE HRESULT IDesktopWallpaper_SetSlideshow(IDesktopWallpaper* This,IShellItemArray *items) { 36918 return This->lpVtbl->SetSlideshow(This,items); 36919 } 36920 static FORCEINLINE HRESULT IDesktopWallpaper_GetSlideshow(IDesktopWallpaper* This,IShellItemArray **items) { 36921 return This->lpVtbl->GetSlideshow(This,items); 36922 } 36923 static FORCEINLINE HRESULT IDesktopWallpaper_SetSlideshowOptions(IDesktopWallpaper* This,DESKTOP_SLIDESHOW_OPTIONS options,UINT slideshowTick) { 36924 return This->lpVtbl->SetSlideshowOptions(This,options,slideshowTick); 36925 } 36926 static FORCEINLINE HRESULT IDesktopWallpaper_GetSlideshowOptions(IDesktopWallpaper* This,DESKTOP_SLIDESHOW_OPTIONS *options,UINT *slideshowTick) { 36927 return This->lpVtbl->GetSlideshowOptions(This,options,slideshowTick); 36928 } 36929 static FORCEINLINE HRESULT IDesktopWallpaper_AdvanceSlideshow(IDesktopWallpaper* This,LPCWSTR monitorID,DESKTOP_SLIDESHOW_DIRECTION direction) { 36930 return This->lpVtbl->AdvanceSlideshow(This,monitorID,direction); 36931 } 36932 static FORCEINLINE HRESULT IDesktopWallpaper_GetStatus(IDesktopWallpaper* This,DESKTOP_SLIDESHOW_STATE *state) { 36933 return This->lpVtbl->GetStatus(This,state); 36934 } 36935 static FORCEINLINE HRESULT IDesktopWallpaper_Enable(IDesktopWallpaper* This,WINBOOL enable) { 36936 return This->lpVtbl->Enable(This,enable); 36937 } 36938 #endif 36939 #endif 36940 36941 #endif 36942 36943 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_SetWallpaper_Proxy( 36944 IDesktopWallpaper* This, 36945 LPCWSTR monitorID, 36946 LPCWSTR wallpaper); 36947 void __RPC_STUB IDesktopWallpaper_SetWallpaper_Stub( 36948 IRpcStubBuffer* This, 36949 IRpcChannelBuffer* pRpcChannelBuffer, 36950 PRPC_MESSAGE pRpcMessage, 36951 DWORD* pdwStubPhase); 36952 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_GetWallpaper_Proxy( 36953 IDesktopWallpaper* This, 36954 LPCWSTR monitorID, 36955 LPWSTR *wallpaper); 36956 void __RPC_STUB IDesktopWallpaper_GetWallpaper_Stub( 36957 IRpcStubBuffer* This, 36958 IRpcChannelBuffer* pRpcChannelBuffer, 36959 PRPC_MESSAGE pRpcMessage, 36960 DWORD* pdwStubPhase); 36961 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_GetMonitorDevicePathAt_Proxy( 36962 IDesktopWallpaper* This, 36963 UINT monitorIndex, 36964 LPWSTR *monitorID); 36965 void __RPC_STUB IDesktopWallpaper_GetMonitorDevicePathAt_Stub( 36966 IRpcStubBuffer* This, 36967 IRpcChannelBuffer* pRpcChannelBuffer, 36968 PRPC_MESSAGE pRpcMessage, 36969 DWORD* pdwStubPhase); 36970 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_GetMonitorDevicePathCount_Proxy( 36971 IDesktopWallpaper* This, 36972 UINT *count); 36973 void __RPC_STUB IDesktopWallpaper_GetMonitorDevicePathCount_Stub( 36974 IRpcStubBuffer* This, 36975 IRpcChannelBuffer* pRpcChannelBuffer, 36976 PRPC_MESSAGE pRpcMessage, 36977 DWORD* pdwStubPhase); 36978 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_GetMonitorRECT_Proxy( 36979 IDesktopWallpaper* This, 36980 LPCWSTR monitorID, 36981 RECT *displayRect); 36982 void __RPC_STUB IDesktopWallpaper_GetMonitorRECT_Stub( 36983 IRpcStubBuffer* This, 36984 IRpcChannelBuffer* pRpcChannelBuffer, 36985 PRPC_MESSAGE pRpcMessage, 36986 DWORD* pdwStubPhase); 36987 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_SetBackgroundColor_Proxy( 36988 IDesktopWallpaper* This, 36989 COLORREF color); 36990 void __RPC_STUB IDesktopWallpaper_SetBackgroundColor_Stub( 36991 IRpcStubBuffer* This, 36992 IRpcChannelBuffer* pRpcChannelBuffer, 36993 PRPC_MESSAGE pRpcMessage, 36994 DWORD* pdwStubPhase); 36995 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_GetBackgroundColor_Proxy( 36996 IDesktopWallpaper* This, 36997 COLORREF *color); 36998 void __RPC_STUB IDesktopWallpaper_GetBackgroundColor_Stub( 36999 IRpcStubBuffer* This, 37000 IRpcChannelBuffer* pRpcChannelBuffer, 37001 PRPC_MESSAGE pRpcMessage, 37002 DWORD* pdwStubPhase); 37003 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_SetPosition_Proxy( 37004 IDesktopWallpaper* This, 37005 DESKTOP_WALLPAPER_POSITION position); 37006 void __RPC_STUB IDesktopWallpaper_SetPosition_Stub( 37007 IRpcStubBuffer* This, 37008 IRpcChannelBuffer* pRpcChannelBuffer, 37009 PRPC_MESSAGE pRpcMessage, 37010 DWORD* pdwStubPhase); 37011 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_GetPosition_Proxy( 37012 IDesktopWallpaper* This, 37013 DESKTOP_WALLPAPER_POSITION *position); 37014 void __RPC_STUB IDesktopWallpaper_GetPosition_Stub( 37015 IRpcStubBuffer* This, 37016 IRpcChannelBuffer* pRpcChannelBuffer, 37017 PRPC_MESSAGE pRpcMessage, 37018 DWORD* pdwStubPhase); 37019 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_SetSlideshow_Proxy( 37020 IDesktopWallpaper* This, 37021 IShellItemArray *items); 37022 void __RPC_STUB IDesktopWallpaper_SetSlideshow_Stub( 37023 IRpcStubBuffer* This, 37024 IRpcChannelBuffer* pRpcChannelBuffer, 37025 PRPC_MESSAGE pRpcMessage, 37026 DWORD* pdwStubPhase); 37027 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_GetSlideshow_Proxy( 37028 IDesktopWallpaper* This, 37029 IShellItemArray **items); 37030 void __RPC_STUB IDesktopWallpaper_GetSlideshow_Stub( 37031 IRpcStubBuffer* This, 37032 IRpcChannelBuffer* pRpcChannelBuffer, 37033 PRPC_MESSAGE pRpcMessage, 37034 DWORD* pdwStubPhase); 37035 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_SetSlideshowOptions_Proxy( 37036 IDesktopWallpaper* This, 37037 DESKTOP_SLIDESHOW_OPTIONS options, 37038 UINT slideshowTick); 37039 void __RPC_STUB IDesktopWallpaper_SetSlideshowOptions_Stub( 37040 IRpcStubBuffer* This, 37041 IRpcChannelBuffer* pRpcChannelBuffer, 37042 PRPC_MESSAGE pRpcMessage, 37043 DWORD* pdwStubPhase); 37044 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_GetSlideshowOptions_Proxy( 37045 IDesktopWallpaper* This, 37046 DESKTOP_SLIDESHOW_OPTIONS *options, 37047 UINT *slideshowTick); 37048 void __RPC_STUB IDesktopWallpaper_GetSlideshowOptions_Stub( 37049 IRpcStubBuffer* This, 37050 IRpcChannelBuffer* pRpcChannelBuffer, 37051 PRPC_MESSAGE pRpcMessage, 37052 DWORD* pdwStubPhase); 37053 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_AdvanceSlideshow_Proxy( 37054 IDesktopWallpaper* This, 37055 LPCWSTR monitorID, 37056 DESKTOP_SLIDESHOW_DIRECTION direction); 37057 void __RPC_STUB IDesktopWallpaper_AdvanceSlideshow_Stub( 37058 IRpcStubBuffer* This, 37059 IRpcChannelBuffer* pRpcChannelBuffer, 37060 PRPC_MESSAGE pRpcMessage, 37061 DWORD* pdwStubPhase); 37062 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_GetStatus_Proxy( 37063 IDesktopWallpaper* This, 37064 DESKTOP_SLIDESHOW_STATE *state); 37065 void __RPC_STUB IDesktopWallpaper_GetStatus_Stub( 37066 IRpcStubBuffer* This, 37067 IRpcChannelBuffer* pRpcChannelBuffer, 37068 PRPC_MESSAGE pRpcMessage, 37069 DWORD* pdwStubPhase); 37070 HRESULT STDMETHODCALLTYPE IDesktopWallpaper_Enable_Proxy( 37071 IDesktopWallpaper* This, 37072 WINBOOL enable); 37073 void __RPC_STUB IDesktopWallpaper_Enable_Stub( 37074 IRpcStubBuffer* This, 37075 IRpcChannelBuffer* pRpcChannelBuffer, 37076 PRPC_MESSAGE pRpcMessage, 37077 DWORD* pdwStubPhase); 37078 37079 #endif /* __IDesktopWallpaper_INTERFACE_DEFINED__ */ 37080 37081 #endif 37082 37083 #define HOMEGROUP_SECURITY_GROUP_MULTI L"HUG" 37084 #define HOMEGROUP_SECURITY_GROUP L"HomeUsers" 37085 37086 /***************************************************************************** 37087 * IHomeGroup interface 37088 */ 37089 #ifndef __IHomeGroup_INTERFACE_DEFINED__ 37090 #define __IHomeGroup_INTERFACE_DEFINED__ 37091 37092 typedef enum HOMEGROUPSHARINGCHOICES { 37093 HGSC_NONE = 0x0, 37094 HGSC_MUSICLIBRARY = 0x1, 37095 HGSC_PICTURESLIBRARY = 0x2, 37096 HGSC_VIDEOSLIBRARY = 0x4, 37097 HGSC_DOCUMENTSLIBRARY = 0x8, 37098 HGSC_PRINTERS = 0x10 37099 } HOMEGROUPSHARINGCHOICES; 37100 37101 DEFINE_ENUM_FLAG_OPERATORS(HOMEGROUPSHARINGCHOICES) 37102 37103 DEFINE_GUID(IID_IHomeGroup, 0x7a3bd1d9, 0x35a9, 0x4fb3, 0xa4,0x67, 0xf4,0x8c,0xac,0x35,0xe2,0xd0); 37104 #if defined(__cplusplus) && !defined(CINTERFACE) 37105 MIDL_INTERFACE("7a3bd1d9-35a9-4fb3-a467-f48cac35e2d0") 37106 IHomeGroup : public IUnknown 37107 { 37108 virtual HRESULT STDMETHODCALLTYPE IsMember( 37109 WINBOOL *member) = 0; 37110 37111 virtual HRESULT STDMETHODCALLTYPE ShowSharingWizard( 37112 HWND owner, 37113 HOMEGROUPSHARINGCHOICES *sharingchoices) = 0; 37114 37115 }; 37116 #ifdef __CRT_UUID_DECL 37117 __CRT_UUID_DECL(IHomeGroup, 0x7a3bd1d9, 0x35a9, 0x4fb3, 0xa4,0x67, 0xf4,0x8c,0xac,0x35,0xe2,0xd0) 37118 #endif 37119 #else 37120 typedef struct IHomeGroupVtbl { 37121 BEGIN_INTERFACE 37122 37123 /*** IUnknown methods ***/ 37124 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 37125 IHomeGroup* This, 37126 REFIID riid, 37127 void **ppvObject); 37128 37129 ULONG (STDMETHODCALLTYPE *AddRef)( 37130 IHomeGroup* This); 37131 37132 ULONG (STDMETHODCALLTYPE *Release)( 37133 IHomeGroup* This); 37134 37135 /*** IHomeGroup methods ***/ 37136 HRESULT (STDMETHODCALLTYPE *IsMember)( 37137 IHomeGroup* This, 37138 WINBOOL *member); 37139 37140 HRESULT (STDMETHODCALLTYPE *ShowSharingWizard)( 37141 IHomeGroup* This, 37142 HWND owner, 37143 HOMEGROUPSHARINGCHOICES *sharingchoices); 37144 37145 END_INTERFACE 37146 } IHomeGroupVtbl; 37147 interface IHomeGroup { 37148 CONST_VTBL IHomeGroupVtbl* lpVtbl; 37149 }; 37150 37151 #ifdef COBJMACROS 37152 #ifndef WIDL_C_INLINE_WRAPPERS 37153 /*** IUnknown methods ***/ 37154 #define IHomeGroup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 37155 #define IHomeGroup_AddRef(This) (This)->lpVtbl->AddRef(This) 37156 #define IHomeGroup_Release(This) (This)->lpVtbl->Release(This) 37157 /*** IHomeGroup methods ***/ 37158 #define IHomeGroup_IsMember(This,member) (This)->lpVtbl->IsMember(This,member) 37159 #define IHomeGroup_ShowSharingWizard(This,owner,sharingchoices) (This)->lpVtbl->ShowSharingWizard(This,owner,sharingchoices) 37160 #else 37161 /*** IUnknown methods ***/ 37162 static FORCEINLINE HRESULT IHomeGroup_QueryInterface(IHomeGroup* This,REFIID riid,void **ppvObject) { 37163 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 37164 } 37165 static FORCEINLINE ULONG IHomeGroup_AddRef(IHomeGroup* This) { 37166 return This->lpVtbl->AddRef(This); 37167 } 37168 static FORCEINLINE ULONG IHomeGroup_Release(IHomeGroup* This) { 37169 return This->lpVtbl->Release(This); 37170 } 37171 /*** IHomeGroup methods ***/ 37172 static FORCEINLINE HRESULT IHomeGroup_IsMember(IHomeGroup* This,WINBOOL *member) { 37173 return This->lpVtbl->IsMember(This,member); 37174 } 37175 static FORCEINLINE HRESULT IHomeGroup_ShowSharingWizard(IHomeGroup* This,HWND owner,HOMEGROUPSHARINGCHOICES *sharingchoices) { 37176 return This->lpVtbl->ShowSharingWizard(This,owner,sharingchoices); 37177 } 37178 #endif 37179 #endif 37180 37181 #endif 37182 37183 HRESULT STDMETHODCALLTYPE IHomeGroup_IsMember_Proxy( 37184 IHomeGroup* This, 37185 WINBOOL *member); 37186 void __RPC_STUB IHomeGroup_IsMember_Stub( 37187 IRpcStubBuffer* This, 37188 IRpcChannelBuffer* pRpcChannelBuffer, 37189 PRPC_MESSAGE pRpcMessage, 37190 DWORD* pdwStubPhase); 37191 HRESULT STDMETHODCALLTYPE IHomeGroup_ShowSharingWizard_Proxy( 37192 IHomeGroup* This, 37193 HWND owner, 37194 HOMEGROUPSHARINGCHOICES *sharingchoices); 37195 void __RPC_STUB IHomeGroup_ShowSharingWizard_Stub( 37196 IRpcStubBuffer* This, 37197 IRpcChannelBuffer* pRpcChannelBuffer, 37198 PRPC_MESSAGE pRpcMessage, 37199 DWORD* pdwStubPhase); 37200 37201 #endif /* __IHomeGroup_INTERFACE_DEFINED__ */ 37202 37203 37204 /***************************************************************************** 37205 * IInitializeWithPropertyStore interface 37206 */ 37207 #ifndef __IInitializeWithPropertyStore_INTERFACE_DEFINED__ 37208 #define __IInitializeWithPropertyStore_INTERFACE_DEFINED__ 37209 37210 DEFINE_GUID(IID_IInitializeWithPropertyStore, 0xc3e12eb5, 0x7d8d, 0x44f8, 0xb6,0xdd, 0x0e,0x77,0xb3,0x4d,0x6d,0xe4); 37211 #if defined(__cplusplus) && !defined(CINTERFACE) 37212 MIDL_INTERFACE("c3e12eb5-7d8d-44f8-b6dd-0e77b34d6de4") 37213 IInitializeWithPropertyStore : public IUnknown 37214 { 37215 virtual HRESULT STDMETHODCALLTYPE Initialize( 37216 IPropertyStore *pps) = 0; 37217 37218 }; 37219 #ifdef __CRT_UUID_DECL 37220 __CRT_UUID_DECL(IInitializeWithPropertyStore, 0xc3e12eb5, 0x7d8d, 0x44f8, 0xb6,0xdd, 0x0e,0x77,0xb3,0x4d,0x6d,0xe4) 37221 #endif 37222 #else 37223 typedef struct IInitializeWithPropertyStoreVtbl { 37224 BEGIN_INTERFACE 37225 37226 /*** IUnknown methods ***/ 37227 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 37228 IInitializeWithPropertyStore* This, 37229 REFIID riid, 37230 void **ppvObject); 37231 37232 ULONG (STDMETHODCALLTYPE *AddRef)( 37233 IInitializeWithPropertyStore* This); 37234 37235 ULONG (STDMETHODCALLTYPE *Release)( 37236 IInitializeWithPropertyStore* This); 37237 37238 /*** IInitializeWithPropertyStore methods ***/ 37239 HRESULT (STDMETHODCALLTYPE *Initialize)( 37240 IInitializeWithPropertyStore* This, 37241 IPropertyStore *pps); 37242 37243 END_INTERFACE 37244 } IInitializeWithPropertyStoreVtbl; 37245 interface IInitializeWithPropertyStore { 37246 CONST_VTBL IInitializeWithPropertyStoreVtbl* lpVtbl; 37247 }; 37248 37249 #ifdef COBJMACROS 37250 #ifndef WIDL_C_INLINE_WRAPPERS 37251 /*** IUnknown methods ***/ 37252 #define IInitializeWithPropertyStore_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 37253 #define IInitializeWithPropertyStore_AddRef(This) (This)->lpVtbl->AddRef(This) 37254 #define IInitializeWithPropertyStore_Release(This) (This)->lpVtbl->Release(This) 37255 /*** IInitializeWithPropertyStore methods ***/ 37256 #define IInitializeWithPropertyStore_Initialize(This,pps) (This)->lpVtbl->Initialize(This,pps) 37257 #else 37258 /*** IUnknown methods ***/ 37259 static FORCEINLINE HRESULT IInitializeWithPropertyStore_QueryInterface(IInitializeWithPropertyStore* This,REFIID riid,void **ppvObject) { 37260 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 37261 } 37262 static FORCEINLINE ULONG IInitializeWithPropertyStore_AddRef(IInitializeWithPropertyStore* This) { 37263 return This->lpVtbl->AddRef(This); 37264 } 37265 static FORCEINLINE ULONG IInitializeWithPropertyStore_Release(IInitializeWithPropertyStore* This) { 37266 return This->lpVtbl->Release(This); 37267 } 37268 /*** IInitializeWithPropertyStore methods ***/ 37269 static FORCEINLINE HRESULT IInitializeWithPropertyStore_Initialize(IInitializeWithPropertyStore* This,IPropertyStore *pps) { 37270 return This->lpVtbl->Initialize(This,pps); 37271 } 37272 #endif 37273 #endif 37274 37275 #endif 37276 37277 HRESULT STDMETHODCALLTYPE IInitializeWithPropertyStore_Initialize_Proxy( 37278 IInitializeWithPropertyStore* This, 37279 IPropertyStore *pps); 37280 void __RPC_STUB IInitializeWithPropertyStore_Initialize_Stub( 37281 IRpcStubBuffer* This, 37282 IRpcChannelBuffer* pRpcChannelBuffer, 37283 PRPC_MESSAGE pRpcMessage, 37284 DWORD* pdwStubPhase); 37285 37286 #endif /* __IInitializeWithPropertyStore_INTERFACE_DEFINED__ */ 37287 37288 37289 /***************************************************************************** 37290 * IOpenSearchSource interface 37291 */ 37292 #ifndef __IOpenSearchSource_INTERFACE_DEFINED__ 37293 #define __IOpenSearchSource_INTERFACE_DEFINED__ 37294 37295 DEFINE_GUID(IID_IOpenSearchSource, 0xf0ee7333, 0xe6fc, 0x479b, 0x9f,0x25, 0xa8,0x60,0xc2,0x34,0xa3,0x8e); 37296 #if defined(__cplusplus) && !defined(CINTERFACE) 37297 MIDL_INTERFACE("f0ee7333-e6fc-479b-9f25-a860c234a38e") 37298 IOpenSearchSource : public IUnknown 37299 { 37300 virtual HRESULT STDMETHODCALLTYPE GetResults( 37301 HWND hwnd, 37302 LPCWSTR pszQuery, 37303 DWORD dwStartIndex, 37304 DWORD dwCount, 37305 REFIID riid, 37306 void **ppv) = 0; 37307 37308 }; 37309 #ifdef __CRT_UUID_DECL 37310 __CRT_UUID_DECL(IOpenSearchSource, 0xf0ee7333, 0xe6fc, 0x479b, 0x9f,0x25, 0xa8,0x60,0xc2,0x34,0xa3,0x8e) 37311 #endif 37312 #else 37313 typedef struct IOpenSearchSourceVtbl { 37314 BEGIN_INTERFACE 37315 37316 /*** IUnknown methods ***/ 37317 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 37318 IOpenSearchSource* This, 37319 REFIID riid, 37320 void **ppvObject); 37321 37322 ULONG (STDMETHODCALLTYPE *AddRef)( 37323 IOpenSearchSource* This); 37324 37325 ULONG (STDMETHODCALLTYPE *Release)( 37326 IOpenSearchSource* This); 37327 37328 /*** IOpenSearchSource methods ***/ 37329 HRESULT (STDMETHODCALLTYPE *GetResults)( 37330 IOpenSearchSource* This, 37331 HWND hwnd, 37332 LPCWSTR pszQuery, 37333 DWORD dwStartIndex, 37334 DWORD dwCount, 37335 REFIID riid, 37336 void **ppv); 37337 37338 END_INTERFACE 37339 } IOpenSearchSourceVtbl; 37340 interface IOpenSearchSource { 37341 CONST_VTBL IOpenSearchSourceVtbl* lpVtbl; 37342 }; 37343 37344 #ifdef COBJMACROS 37345 #ifndef WIDL_C_INLINE_WRAPPERS 37346 /*** IUnknown methods ***/ 37347 #define IOpenSearchSource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 37348 #define IOpenSearchSource_AddRef(This) (This)->lpVtbl->AddRef(This) 37349 #define IOpenSearchSource_Release(This) (This)->lpVtbl->Release(This) 37350 /*** IOpenSearchSource methods ***/ 37351 #define IOpenSearchSource_GetResults(This,hwnd,pszQuery,dwStartIndex,dwCount,riid,ppv) (This)->lpVtbl->GetResults(This,hwnd,pszQuery,dwStartIndex,dwCount,riid,ppv) 37352 #else 37353 /*** IUnknown methods ***/ 37354 static FORCEINLINE HRESULT IOpenSearchSource_QueryInterface(IOpenSearchSource* This,REFIID riid,void **ppvObject) { 37355 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 37356 } 37357 static FORCEINLINE ULONG IOpenSearchSource_AddRef(IOpenSearchSource* This) { 37358 return This->lpVtbl->AddRef(This); 37359 } 37360 static FORCEINLINE ULONG IOpenSearchSource_Release(IOpenSearchSource* This) { 37361 return This->lpVtbl->Release(This); 37362 } 37363 /*** IOpenSearchSource methods ***/ 37364 static FORCEINLINE HRESULT IOpenSearchSource_GetResults(IOpenSearchSource* This,HWND hwnd,LPCWSTR pszQuery,DWORD dwStartIndex,DWORD dwCount,REFIID riid,void **ppv) { 37365 return This->lpVtbl->GetResults(This,hwnd,pszQuery,dwStartIndex,dwCount,riid,ppv); 37366 } 37367 #endif 37368 #endif 37369 37370 #endif 37371 37372 HRESULT STDMETHODCALLTYPE IOpenSearchSource_GetResults_Proxy( 37373 IOpenSearchSource* This, 37374 HWND hwnd, 37375 LPCWSTR pszQuery, 37376 DWORD dwStartIndex, 37377 DWORD dwCount, 37378 REFIID riid, 37379 void **ppv); 37380 void __RPC_STUB IOpenSearchSource_GetResults_Stub( 37381 IRpcStubBuffer* This, 37382 IRpcChannelBuffer* pRpcChannelBuffer, 37383 PRPC_MESSAGE pRpcMessage, 37384 DWORD* pdwStubPhase); 37385 37386 #endif /* __IOpenSearchSource_INTERFACE_DEFINED__ */ 37387 37388 37389 /***************************************************************************** 37390 * IShellLibrary interface 37391 */ 37392 #ifndef __IShellLibrary_INTERFACE_DEFINED__ 37393 #define __IShellLibrary_INTERFACE_DEFINED__ 37394 37395 typedef enum LIBRARYFOLDERFILTER { 37396 LFF_FORCEFILESYSTEM = 1, 37397 LFF_STORAGEITEMS = 2, 37398 LFF_ALLITEMS = 3 37399 } LIBRARYFOLDERFILTER; 37400 37401 typedef enum LIBRARYOPTIONFLAGS { 37402 LOF_DEFAULT = 0x0, 37403 LOF_PINNEDTONAVPANE = 0x1, 37404 LOF_MASK_ALL = 0x1 37405 } LIBRARYOPTIONFLAGS; 37406 37407 DEFINE_ENUM_FLAG_OPERATORS(LIBRARYOPTIONFLAGS) 37408 37409 typedef enum DEFAULTSAVEFOLDERTYPE { 37410 DSFT_DETECT = 1, 37411 DSFT_PRIVATE = 2, 37412 DSFT_PUBLIC = 3 37413 } DEFAULTSAVEFOLDERTYPE; 37414 37415 typedef enum LIBRARYSAVEFLAGS { 37416 LSF_FAILIFTHERE = 0x0, 37417 LSF_OVERRIDEEXISTING = 0x1, 37418 LSF_MAKEUNIQUENAME = 0x2 37419 } LIBRARYSAVEFLAGS; 37420 37421 DEFINE_ENUM_FLAG_OPERATORS(LIBRARYSAVEFLAGS) 37422 37423 DEFINE_GUID(IID_IShellLibrary, 0x11a66efa, 0x382e, 0x451a, 0x92,0x34, 0x1e,0x0e,0x12,0xef,0x30,0x85); 37424 #if defined(__cplusplus) && !defined(CINTERFACE) 37425 MIDL_INTERFACE("11a66efa-382e-451a-9234-1e0e12ef3085") 37426 IShellLibrary : public IUnknown 37427 { 37428 virtual HRESULT STDMETHODCALLTYPE LoadLibraryFromItem( 37429 IShellItem *psiLibrary, 37430 DWORD grfMode) = 0; 37431 37432 virtual HRESULT STDMETHODCALLTYPE LoadLibraryFromKnownFolder( 37433 REFKNOWNFOLDERID kfidLibrary, 37434 DWORD grfMode) = 0; 37435 37436 virtual HRESULT STDMETHODCALLTYPE AddFolder( 37437 IShellItem *psiLocation) = 0; 37438 37439 virtual HRESULT STDMETHODCALLTYPE RemoveFolder( 37440 IShellItem *psiLocation) = 0; 37441 37442 virtual HRESULT STDMETHODCALLTYPE GetFolders( 37443 LIBRARYFOLDERFILTER lff, 37444 REFIID riid, 37445 void **ppv) = 0; 37446 37447 virtual HRESULT STDMETHODCALLTYPE ResolveFolder( 37448 IShellItem *psiFolderToResolve, 37449 DWORD dwTimeout, 37450 REFIID riid, 37451 void **ppv) = 0; 37452 37453 virtual HRESULT STDMETHODCALLTYPE GetDefaultSaveFolder( 37454 DEFAULTSAVEFOLDERTYPE dsft, 37455 REFIID riid, 37456 void **ppv) = 0; 37457 37458 virtual HRESULT STDMETHODCALLTYPE SetDefaultSaveFolder( 37459 DEFAULTSAVEFOLDERTYPE dsft, 37460 IShellItem *psi) = 0; 37461 37462 virtual HRESULT STDMETHODCALLTYPE GetOptions( 37463 LIBRARYOPTIONFLAGS *plofOptions) = 0; 37464 37465 virtual HRESULT STDMETHODCALLTYPE SetOptions( 37466 LIBRARYOPTIONFLAGS lofMask, 37467 LIBRARYOPTIONFLAGS lofOptions) = 0; 37468 37469 virtual HRESULT STDMETHODCALLTYPE GetFolderType( 37470 FOLDERTYPEID *pftid) = 0; 37471 37472 virtual HRESULT STDMETHODCALLTYPE SetFolderType( 37473 REFFOLDERTYPEID ftid) = 0; 37474 37475 virtual HRESULT STDMETHODCALLTYPE GetIcon( 37476 LPWSTR *ppszIcon) = 0; 37477 37478 virtual HRESULT STDMETHODCALLTYPE SetIcon( 37479 LPCWSTR pszIcon) = 0; 37480 37481 virtual HRESULT STDMETHODCALLTYPE Commit( 37482 ) = 0; 37483 37484 virtual HRESULT STDMETHODCALLTYPE Save( 37485 IShellItem *psiFolderToSaveIn, 37486 LPCWSTR pszLibraryName, 37487 LIBRARYSAVEFLAGS lsf, 37488 IShellItem **ppsiSavedTo) = 0; 37489 37490 virtual HRESULT STDMETHODCALLTYPE SaveInKnownFolder( 37491 REFKNOWNFOLDERID kfidToSaveIn, 37492 LPCWSTR pszLibraryName, 37493 LIBRARYSAVEFLAGS lsf, 37494 IShellItem **ppsiSavedTo) = 0; 37495 37496 }; 37497 #ifdef __CRT_UUID_DECL 37498 __CRT_UUID_DECL(IShellLibrary, 0x11a66efa, 0x382e, 0x451a, 0x92,0x34, 0x1e,0x0e,0x12,0xef,0x30,0x85) 37499 #endif 37500 #else 37501 typedef struct IShellLibraryVtbl { 37502 BEGIN_INTERFACE 37503 37504 /*** IUnknown methods ***/ 37505 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 37506 IShellLibrary* This, 37507 REFIID riid, 37508 void **ppvObject); 37509 37510 ULONG (STDMETHODCALLTYPE *AddRef)( 37511 IShellLibrary* This); 37512 37513 ULONG (STDMETHODCALLTYPE *Release)( 37514 IShellLibrary* This); 37515 37516 /*** IShellLibrary methods ***/ 37517 HRESULT (STDMETHODCALLTYPE *LoadLibraryFromItem)( 37518 IShellLibrary* This, 37519 IShellItem *psiLibrary, 37520 DWORD grfMode); 37521 37522 HRESULT (STDMETHODCALLTYPE *LoadLibraryFromKnownFolder)( 37523 IShellLibrary* This, 37524 REFKNOWNFOLDERID kfidLibrary, 37525 DWORD grfMode); 37526 37527 HRESULT (STDMETHODCALLTYPE *AddFolder)( 37528 IShellLibrary* This, 37529 IShellItem *psiLocation); 37530 37531 HRESULT (STDMETHODCALLTYPE *RemoveFolder)( 37532 IShellLibrary* This, 37533 IShellItem *psiLocation); 37534 37535 HRESULT (STDMETHODCALLTYPE *GetFolders)( 37536 IShellLibrary* This, 37537 LIBRARYFOLDERFILTER lff, 37538 REFIID riid, 37539 void **ppv); 37540 37541 HRESULT (STDMETHODCALLTYPE *ResolveFolder)( 37542 IShellLibrary* This, 37543 IShellItem *psiFolderToResolve, 37544 DWORD dwTimeout, 37545 REFIID riid, 37546 void **ppv); 37547 37548 HRESULT (STDMETHODCALLTYPE *GetDefaultSaveFolder)( 37549 IShellLibrary* This, 37550 DEFAULTSAVEFOLDERTYPE dsft, 37551 REFIID riid, 37552 void **ppv); 37553 37554 HRESULT (STDMETHODCALLTYPE *SetDefaultSaveFolder)( 37555 IShellLibrary* This, 37556 DEFAULTSAVEFOLDERTYPE dsft, 37557 IShellItem *psi); 37558 37559 HRESULT (STDMETHODCALLTYPE *GetOptions)( 37560 IShellLibrary* This, 37561 LIBRARYOPTIONFLAGS *plofOptions); 37562 37563 HRESULT (STDMETHODCALLTYPE *SetOptions)( 37564 IShellLibrary* This, 37565 LIBRARYOPTIONFLAGS lofMask, 37566 LIBRARYOPTIONFLAGS lofOptions); 37567 37568 HRESULT (STDMETHODCALLTYPE *GetFolderType)( 37569 IShellLibrary* This, 37570 FOLDERTYPEID *pftid); 37571 37572 HRESULT (STDMETHODCALLTYPE *SetFolderType)( 37573 IShellLibrary* This, 37574 REFFOLDERTYPEID ftid); 37575 37576 HRESULT (STDMETHODCALLTYPE *GetIcon)( 37577 IShellLibrary* This, 37578 LPWSTR *ppszIcon); 37579 37580 HRESULT (STDMETHODCALLTYPE *SetIcon)( 37581 IShellLibrary* This, 37582 LPCWSTR pszIcon); 37583 37584 HRESULT (STDMETHODCALLTYPE *Commit)( 37585 IShellLibrary* This); 37586 37587 HRESULT (STDMETHODCALLTYPE *Save)( 37588 IShellLibrary* This, 37589 IShellItem *psiFolderToSaveIn, 37590 LPCWSTR pszLibraryName, 37591 LIBRARYSAVEFLAGS lsf, 37592 IShellItem **ppsiSavedTo); 37593 37594 HRESULT (STDMETHODCALLTYPE *SaveInKnownFolder)( 37595 IShellLibrary* This, 37596 REFKNOWNFOLDERID kfidToSaveIn, 37597 LPCWSTR pszLibraryName, 37598 LIBRARYSAVEFLAGS lsf, 37599 IShellItem **ppsiSavedTo); 37600 37601 END_INTERFACE 37602 } IShellLibraryVtbl; 37603 interface IShellLibrary { 37604 CONST_VTBL IShellLibraryVtbl* lpVtbl; 37605 }; 37606 37607 #ifdef COBJMACROS 37608 #ifndef WIDL_C_INLINE_WRAPPERS 37609 /*** IUnknown methods ***/ 37610 #define IShellLibrary_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 37611 #define IShellLibrary_AddRef(This) (This)->lpVtbl->AddRef(This) 37612 #define IShellLibrary_Release(This) (This)->lpVtbl->Release(This) 37613 /*** IShellLibrary methods ***/ 37614 #define IShellLibrary_LoadLibraryFromItem(This,psiLibrary,grfMode) (This)->lpVtbl->LoadLibraryFromItem(This,psiLibrary,grfMode) 37615 #define IShellLibrary_LoadLibraryFromKnownFolder(This,kfidLibrary,grfMode) (This)->lpVtbl->LoadLibraryFromKnownFolder(This,kfidLibrary,grfMode) 37616 #define IShellLibrary_AddFolder(This,psiLocation) (This)->lpVtbl->AddFolder(This,psiLocation) 37617 #define IShellLibrary_RemoveFolder(This,psiLocation) (This)->lpVtbl->RemoveFolder(This,psiLocation) 37618 #define IShellLibrary_GetFolders(This,lff,riid,ppv) (This)->lpVtbl->GetFolders(This,lff,riid,ppv) 37619 #define IShellLibrary_ResolveFolder(This,psiFolderToResolve,dwTimeout,riid,ppv) (This)->lpVtbl->ResolveFolder(This,psiFolderToResolve,dwTimeout,riid,ppv) 37620 #define IShellLibrary_GetDefaultSaveFolder(This,dsft,riid,ppv) (This)->lpVtbl->GetDefaultSaveFolder(This,dsft,riid,ppv) 37621 #define IShellLibrary_SetDefaultSaveFolder(This,dsft,psi) (This)->lpVtbl->SetDefaultSaveFolder(This,dsft,psi) 37622 #define IShellLibrary_GetOptions(This,plofOptions) (This)->lpVtbl->GetOptions(This,plofOptions) 37623 #define IShellLibrary_SetOptions(This,lofMask,lofOptions) (This)->lpVtbl->SetOptions(This,lofMask,lofOptions) 37624 #define IShellLibrary_GetFolderType(This,pftid) (This)->lpVtbl->GetFolderType(This,pftid) 37625 #define IShellLibrary_SetFolderType(This,ftid) (This)->lpVtbl->SetFolderType(This,ftid) 37626 #define IShellLibrary_GetIcon(This,ppszIcon) (This)->lpVtbl->GetIcon(This,ppszIcon) 37627 #define IShellLibrary_SetIcon(This,pszIcon) (This)->lpVtbl->SetIcon(This,pszIcon) 37628 #define IShellLibrary_Commit(This) (This)->lpVtbl->Commit(This) 37629 #define IShellLibrary_Save(This,psiFolderToSaveIn,pszLibraryName,lsf,ppsiSavedTo) (This)->lpVtbl->Save(This,psiFolderToSaveIn,pszLibraryName,lsf,ppsiSavedTo) 37630 #define IShellLibrary_SaveInKnownFolder(This,kfidToSaveIn,pszLibraryName,lsf,ppsiSavedTo) (This)->lpVtbl->SaveInKnownFolder(This,kfidToSaveIn,pszLibraryName,lsf,ppsiSavedTo) 37631 #else 37632 /*** IUnknown methods ***/ 37633 static FORCEINLINE HRESULT IShellLibrary_QueryInterface(IShellLibrary* This,REFIID riid,void **ppvObject) { 37634 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 37635 } 37636 static FORCEINLINE ULONG IShellLibrary_AddRef(IShellLibrary* This) { 37637 return This->lpVtbl->AddRef(This); 37638 } 37639 static FORCEINLINE ULONG IShellLibrary_Release(IShellLibrary* This) { 37640 return This->lpVtbl->Release(This); 37641 } 37642 /*** IShellLibrary methods ***/ 37643 static FORCEINLINE HRESULT IShellLibrary_LoadLibraryFromItem(IShellLibrary* This,IShellItem *psiLibrary,DWORD grfMode) { 37644 return This->lpVtbl->LoadLibraryFromItem(This,psiLibrary,grfMode); 37645 } 37646 static FORCEINLINE HRESULT IShellLibrary_LoadLibraryFromKnownFolder(IShellLibrary* This,REFKNOWNFOLDERID kfidLibrary,DWORD grfMode) { 37647 return This->lpVtbl->LoadLibraryFromKnownFolder(This,kfidLibrary,grfMode); 37648 } 37649 static FORCEINLINE HRESULT IShellLibrary_AddFolder(IShellLibrary* This,IShellItem *psiLocation) { 37650 return This->lpVtbl->AddFolder(This,psiLocation); 37651 } 37652 static FORCEINLINE HRESULT IShellLibrary_RemoveFolder(IShellLibrary* This,IShellItem *psiLocation) { 37653 return This->lpVtbl->RemoveFolder(This,psiLocation); 37654 } 37655 static FORCEINLINE HRESULT IShellLibrary_GetFolders(IShellLibrary* This,LIBRARYFOLDERFILTER lff,REFIID riid,void **ppv) { 37656 return This->lpVtbl->GetFolders(This,lff,riid,ppv); 37657 } 37658 static FORCEINLINE HRESULT IShellLibrary_ResolveFolder(IShellLibrary* This,IShellItem *psiFolderToResolve,DWORD dwTimeout,REFIID riid,void **ppv) { 37659 return This->lpVtbl->ResolveFolder(This,psiFolderToResolve,dwTimeout,riid,ppv); 37660 } 37661 static FORCEINLINE HRESULT IShellLibrary_GetDefaultSaveFolder(IShellLibrary* This,DEFAULTSAVEFOLDERTYPE dsft,REFIID riid,void **ppv) { 37662 return This->lpVtbl->GetDefaultSaveFolder(This,dsft,riid,ppv); 37663 } 37664 static FORCEINLINE HRESULT IShellLibrary_SetDefaultSaveFolder(IShellLibrary* This,DEFAULTSAVEFOLDERTYPE dsft,IShellItem *psi) { 37665 return This->lpVtbl->SetDefaultSaveFolder(This,dsft,psi); 37666 } 37667 static FORCEINLINE HRESULT IShellLibrary_GetOptions(IShellLibrary* This,LIBRARYOPTIONFLAGS *plofOptions) { 37668 return This->lpVtbl->GetOptions(This,plofOptions); 37669 } 37670 static FORCEINLINE HRESULT IShellLibrary_SetOptions(IShellLibrary* This,LIBRARYOPTIONFLAGS lofMask,LIBRARYOPTIONFLAGS lofOptions) { 37671 return This->lpVtbl->SetOptions(This,lofMask,lofOptions); 37672 } 37673 static FORCEINLINE HRESULT IShellLibrary_GetFolderType(IShellLibrary* This,FOLDERTYPEID *pftid) { 37674 return This->lpVtbl->GetFolderType(This,pftid); 37675 } 37676 static FORCEINLINE HRESULT IShellLibrary_SetFolderType(IShellLibrary* This,REFFOLDERTYPEID ftid) { 37677 return This->lpVtbl->SetFolderType(This,ftid); 37678 } 37679 static FORCEINLINE HRESULT IShellLibrary_GetIcon(IShellLibrary* This,LPWSTR *ppszIcon) { 37680 return This->lpVtbl->GetIcon(This,ppszIcon); 37681 } 37682 static FORCEINLINE HRESULT IShellLibrary_SetIcon(IShellLibrary* This,LPCWSTR pszIcon) { 37683 return This->lpVtbl->SetIcon(This,pszIcon); 37684 } 37685 static FORCEINLINE HRESULT IShellLibrary_Commit(IShellLibrary* This) { 37686 return This->lpVtbl->Commit(This); 37687 } 37688 static FORCEINLINE HRESULT IShellLibrary_Save(IShellLibrary* This,IShellItem *psiFolderToSaveIn,LPCWSTR pszLibraryName,LIBRARYSAVEFLAGS lsf,IShellItem **ppsiSavedTo) { 37689 return This->lpVtbl->Save(This,psiFolderToSaveIn,pszLibraryName,lsf,ppsiSavedTo); 37690 } 37691 static FORCEINLINE HRESULT IShellLibrary_SaveInKnownFolder(IShellLibrary* This,REFKNOWNFOLDERID kfidToSaveIn,LPCWSTR pszLibraryName,LIBRARYSAVEFLAGS lsf,IShellItem **ppsiSavedTo) { 37692 return This->lpVtbl->SaveInKnownFolder(This,kfidToSaveIn,pszLibraryName,lsf,ppsiSavedTo); 37693 } 37694 #endif 37695 #endif 37696 37697 #endif 37698 37699 HRESULT STDMETHODCALLTYPE IShellLibrary_LoadLibraryFromItem_Proxy( 37700 IShellLibrary* This, 37701 IShellItem *psiLibrary, 37702 DWORD grfMode); 37703 void __RPC_STUB IShellLibrary_LoadLibraryFromItem_Stub( 37704 IRpcStubBuffer* This, 37705 IRpcChannelBuffer* pRpcChannelBuffer, 37706 PRPC_MESSAGE pRpcMessage, 37707 DWORD* pdwStubPhase); 37708 HRESULT STDMETHODCALLTYPE IShellLibrary_LoadLibraryFromKnownFolder_Proxy( 37709 IShellLibrary* This, 37710 REFKNOWNFOLDERID kfidLibrary, 37711 DWORD grfMode); 37712 void __RPC_STUB IShellLibrary_LoadLibraryFromKnownFolder_Stub( 37713 IRpcStubBuffer* This, 37714 IRpcChannelBuffer* pRpcChannelBuffer, 37715 PRPC_MESSAGE pRpcMessage, 37716 DWORD* pdwStubPhase); 37717 HRESULT STDMETHODCALLTYPE IShellLibrary_AddFolder_Proxy( 37718 IShellLibrary* This, 37719 IShellItem *psiLocation); 37720 void __RPC_STUB IShellLibrary_AddFolder_Stub( 37721 IRpcStubBuffer* This, 37722 IRpcChannelBuffer* pRpcChannelBuffer, 37723 PRPC_MESSAGE pRpcMessage, 37724 DWORD* pdwStubPhase); 37725 HRESULT STDMETHODCALLTYPE IShellLibrary_RemoveFolder_Proxy( 37726 IShellLibrary* This, 37727 IShellItem *psiLocation); 37728 void __RPC_STUB IShellLibrary_RemoveFolder_Stub( 37729 IRpcStubBuffer* This, 37730 IRpcChannelBuffer* pRpcChannelBuffer, 37731 PRPC_MESSAGE pRpcMessage, 37732 DWORD* pdwStubPhase); 37733 HRESULT STDMETHODCALLTYPE IShellLibrary_GetFolders_Proxy( 37734 IShellLibrary* This, 37735 LIBRARYFOLDERFILTER lff, 37736 REFIID riid, 37737 void **ppv); 37738 void __RPC_STUB IShellLibrary_GetFolders_Stub( 37739 IRpcStubBuffer* This, 37740 IRpcChannelBuffer* pRpcChannelBuffer, 37741 PRPC_MESSAGE pRpcMessage, 37742 DWORD* pdwStubPhase); 37743 HRESULT STDMETHODCALLTYPE IShellLibrary_ResolveFolder_Proxy( 37744 IShellLibrary* This, 37745 IShellItem *psiFolderToResolve, 37746 DWORD dwTimeout, 37747 REFIID riid, 37748 void **ppv); 37749 void __RPC_STUB IShellLibrary_ResolveFolder_Stub( 37750 IRpcStubBuffer* This, 37751 IRpcChannelBuffer* pRpcChannelBuffer, 37752 PRPC_MESSAGE pRpcMessage, 37753 DWORD* pdwStubPhase); 37754 HRESULT STDMETHODCALLTYPE IShellLibrary_GetDefaultSaveFolder_Proxy( 37755 IShellLibrary* This, 37756 DEFAULTSAVEFOLDERTYPE dsft, 37757 REFIID riid, 37758 void **ppv); 37759 void __RPC_STUB IShellLibrary_GetDefaultSaveFolder_Stub( 37760 IRpcStubBuffer* This, 37761 IRpcChannelBuffer* pRpcChannelBuffer, 37762 PRPC_MESSAGE pRpcMessage, 37763 DWORD* pdwStubPhase); 37764 HRESULT STDMETHODCALLTYPE IShellLibrary_SetDefaultSaveFolder_Proxy( 37765 IShellLibrary* This, 37766 DEFAULTSAVEFOLDERTYPE dsft, 37767 IShellItem *psi); 37768 void __RPC_STUB IShellLibrary_SetDefaultSaveFolder_Stub( 37769 IRpcStubBuffer* This, 37770 IRpcChannelBuffer* pRpcChannelBuffer, 37771 PRPC_MESSAGE pRpcMessage, 37772 DWORD* pdwStubPhase); 37773 HRESULT STDMETHODCALLTYPE IShellLibrary_GetOptions_Proxy( 37774 IShellLibrary* This, 37775 LIBRARYOPTIONFLAGS *plofOptions); 37776 void __RPC_STUB IShellLibrary_GetOptions_Stub( 37777 IRpcStubBuffer* This, 37778 IRpcChannelBuffer* pRpcChannelBuffer, 37779 PRPC_MESSAGE pRpcMessage, 37780 DWORD* pdwStubPhase); 37781 HRESULT STDMETHODCALLTYPE IShellLibrary_SetOptions_Proxy( 37782 IShellLibrary* This, 37783 LIBRARYOPTIONFLAGS lofMask, 37784 LIBRARYOPTIONFLAGS lofOptions); 37785 void __RPC_STUB IShellLibrary_SetOptions_Stub( 37786 IRpcStubBuffer* This, 37787 IRpcChannelBuffer* pRpcChannelBuffer, 37788 PRPC_MESSAGE pRpcMessage, 37789 DWORD* pdwStubPhase); 37790 HRESULT STDMETHODCALLTYPE IShellLibrary_GetFolderType_Proxy( 37791 IShellLibrary* This, 37792 FOLDERTYPEID *pftid); 37793 void __RPC_STUB IShellLibrary_GetFolderType_Stub( 37794 IRpcStubBuffer* This, 37795 IRpcChannelBuffer* pRpcChannelBuffer, 37796 PRPC_MESSAGE pRpcMessage, 37797 DWORD* pdwStubPhase); 37798 HRESULT STDMETHODCALLTYPE IShellLibrary_SetFolderType_Proxy( 37799 IShellLibrary* This, 37800 REFFOLDERTYPEID ftid); 37801 void __RPC_STUB IShellLibrary_SetFolderType_Stub( 37802 IRpcStubBuffer* This, 37803 IRpcChannelBuffer* pRpcChannelBuffer, 37804 PRPC_MESSAGE pRpcMessage, 37805 DWORD* pdwStubPhase); 37806 HRESULT STDMETHODCALLTYPE IShellLibrary_GetIcon_Proxy( 37807 IShellLibrary* This, 37808 LPWSTR *ppszIcon); 37809 void __RPC_STUB IShellLibrary_GetIcon_Stub( 37810 IRpcStubBuffer* This, 37811 IRpcChannelBuffer* pRpcChannelBuffer, 37812 PRPC_MESSAGE pRpcMessage, 37813 DWORD* pdwStubPhase); 37814 HRESULT STDMETHODCALLTYPE IShellLibrary_SetIcon_Proxy( 37815 IShellLibrary* This, 37816 LPCWSTR pszIcon); 37817 void __RPC_STUB IShellLibrary_SetIcon_Stub( 37818 IRpcStubBuffer* This, 37819 IRpcChannelBuffer* pRpcChannelBuffer, 37820 PRPC_MESSAGE pRpcMessage, 37821 DWORD* pdwStubPhase); 37822 HRESULT STDMETHODCALLTYPE IShellLibrary_Commit_Proxy( 37823 IShellLibrary* This); 37824 void __RPC_STUB IShellLibrary_Commit_Stub( 37825 IRpcStubBuffer* This, 37826 IRpcChannelBuffer* pRpcChannelBuffer, 37827 PRPC_MESSAGE pRpcMessage, 37828 DWORD* pdwStubPhase); 37829 HRESULT STDMETHODCALLTYPE IShellLibrary_Save_Proxy( 37830 IShellLibrary* This, 37831 IShellItem *psiFolderToSaveIn, 37832 LPCWSTR pszLibraryName, 37833 LIBRARYSAVEFLAGS lsf, 37834 IShellItem **ppsiSavedTo); 37835 void __RPC_STUB IShellLibrary_Save_Stub( 37836 IRpcStubBuffer* This, 37837 IRpcChannelBuffer* pRpcChannelBuffer, 37838 PRPC_MESSAGE pRpcMessage, 37839 DWORD* pdwStubPhase); 37840 HRESULT STDMETHODCALLTYPE IShellLibrary_SaveInKnownFolder_Proxy( 37841 IShellLibrary* This, 37842 REFKNOWNFOLDERID kfidToSaveIn, 37843 LPCWSTR pszLibraryName, 37844 LIBRARYSAVEFLAGS lsf, 37845 IShellItem **ppsiSavedTo); 37846 void __RPC_STUB IShellLibrary_SaveInKnownFolder_Stub( 37847 IRpcStubBuffer* This, 37848 IRpcChannelBuffer* pRpcChannelBuffer, 37849 PRPC_MESSAGE pRpcMessage, 37850 DWORD* pdwStubPhase); 37851 37852 #endif /* __IShellLibrary_INTERFACE_DEFINED__ */ 37853 37854 37855 typedef enum PBM_EVENT { 37856 PE_DUCKSESSION = 1, 37857 PE_UNDUCKSESSION = 2 37858 } PBM_EVENT; 37859 37860 /***************************************************************************** 37861 * IPlaybackManagerEvents interface 37862 */ 37863 #ifndef __IPlaybackManagerEvents_INTERFACE_DEFINED__ 37864 #define __IPlaybackManagerEvents_INTERFACE_DEFINED__ 37865 37866 DEFINE_GUID(IID_IPlaybackManagerEvents, 0x385cfb7d, 0x4e0c, 0x4106, 0x91,0x2e, 0x8c,0xfb,0x4c,0x19,0x1f,0x45); 37867 #if defined(__cplusplus) && !defined(CINTERFACE) 37868 MIDL_INTERFACE("385cfb7d-4e0c-4106-912e-8cfb4c191f45") 37869 IPlaybackManagerEvents : public IUnknown 37870 { 37871 virtual HRESULT STDMETHODCALLTYPE OnPlaybackManagerEvent( 37872 DWORD dwSessionId, 37873 PBM_EVENT mediaEvent) = 0; 37874 37875 }; 37876 #ifdef __CRT_UUID_DECL 37877 __CRT_UUID_DECL(IPlaybackManagerEvents, 0x385cfb7d, 0x4e0c, 0x4106, 0x91,0x2e, 0x8c,0xfb,0x4c,0x19,0x1f,0x45) 37878 #endif 37879 #else 37880 typedef struct IPlaybackManagerEventsVtbl { 37881 BEGIN_INTERFACE 37882 37883 /*** IUnknown methods ***/ 37884 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 37885 IPlaybackManagerEvents* This, 37886 REFIID riid, 37887 void **ppvObject); 37888 37889 ULONG (STDMETHODCALLTYPE *AddRef)( 37890 IPlaybackManagerEvents* This); 37891 37892 ULONG (STDMETHODCALLTYPE *Release)( 37893 IPlaybackManagerEvents* This); 37894 37895 /*** IPlaybackManagerEvents methods ***/ 37896 HRESULT (STDMETHODCALLTYPE *OnPlaybackManagerEvent)( 37897 IPlaybackManagerEvents* This, 37898 DWORD dwSessionId, 37899 PBM_EVENT mediaEvent); 37900 37901 END_INTERFACE 37902 } IPlaybackManagerEventsVtbl; 37903 interface IPlaybackManagerEvents { 37904 CONST_VTBL IPlaybackManagerEventsVtbl* lpVtbl; 37905 }; 37906 37907 #ifdef COBJMACROS 37908 #ifndef WIDL_C_INLINE_WRAPPERS 37909 /*** IUnknown methods ***/ 37910 #define IPlaybackManagerEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 37911 #define IPlaybackManagerEvents_AddRef(This) (This)->lpVtbl->AddRef(This) 37912 #define IPlaybackManagerEvents_Release(This) (This)->lpVtbl->Release(This) 37913 /*** IPlaybackManagerEvents methods ***/ 37914 #define IPlaybackManagerEvents_OnPlaybackManagerEvent(This,dwSessionId,mediaEvent) (This)->lpVtbl->OnPlaybackManagerEvent(This,dwSessionId,mediaEvent) 37915 #else 37916 /*** IUnknown methods ***/ 37917 static FORCEINLINE HRESULT IPlaybackManagerEvents_QueryInterface(IPlaybackManagerEvents* This,REFIID riid,void **ppvObject) { 37918 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 37919 } 37920 static FORCEINLINE ULONG IPlaybackManagerEvents_AddRef(IPlaybackManagerEvents* This) { 37921 return This->lpVtbl->AddRef(This); 37922 } 37923 static FORCEINLINE ULONG IPlaybackManagerEvents_Release(IPlaybackManagerEvents* This) { 37924 return This->lpVtbl->Release(This); 37925 } 37926 /*** IPlaybackManagerEvents methods ***/ 37927 static FORCEINLINE HRESULT IPlaybackManagerEvents_OnPlaybackManagerEvent(IPlaybackManagerEvents* This,DWORD dwSessionId,PBM_EVENT mediaEvent) { 37928 return This->lpVtbl->OnPlaybackManagerEvent(This,dwSessionId,mediaEvent); 37929 } 37930 #endif 37931 #endif 37932 37933 #endif 37934 37935 HRESULT STDMETHODCALLTYPE IPlaybackManagerEvents_OnPlaybackManagerEvent_Proxy( 37936 IPlaybackManagerEvents* This, 37937 DWORD dwSessionId, 37938 PBM_EVENT mediaEvent); 37939 void __RPC_STUB IPlaybackManagerEvents_OnPlaybackManagerEvent_Stub( 37940 IRpcStubBuffer* This, 37941 IRpcChannelBuffer* pRpcChannelBuffer, 37942 PRPC_MESSAGE pRpcMessage, 37943 DWORD* pdwStubPhase); 37944 37945 #endif /* __IPlaybackManagerEvents_INTERFACE_DEFINED__ */ 37946 37947 37948 typedef enum PBM_SESSION_TYPE { 37949 ST_COMMUNICATION = 1, 37950 ST_MEDIA = 2 37951 } PBM_SESSION_TYPE; 37952 37953 typedef enum PBM_PLAY_STATE { 37954 PS_PLAYING = 1, 37955 PS_PAUSED = 2, 37956 PS_STOPPED = 3 37957 } PBM_PLAY_STATE; 37958 37959 typedef enum PBM_MUTE_STATE { 37960 MS_MUTED = 1, 37961 MS_UNMUTED = 2 37962 } PBM_MUTE_STATE; 37963 37964 /***************************************************************************** 37965 * IPlaybackManager interface 37966 */ 37967 #ifndef __IPlaybackManager_INTERFACE_DEFINED__ 37968 #define __IPlaybackManager_INTERFACE_DEFINED__ 37969 37970 DEFINE_GUID(IID_IPlaybackManager, 0x0f3c1b01, 0x8199, 0x4173, 0xba,0x78, 0x98,0x58,0x82,0x26,0x6f,0x7a); 37971 #if defined(__cplusplus) && !defined(CINTERFACE) 37972 MIDL_INTERFACE("0f3c1b01-8199-4173-ba78-985882266f7a") 37973 IPlaybackManager : public IUnknown 37974 { 37975 virtual HRESULT STDMETHODCALLTYPE Advise( 37976 PBM_SESSION_TYPE type, 37977 IPlaybackManagerEvents *pEvents, 37978 DWORD *pdwSessionId) = 0; 37979 37980 virtual HRESULT STDMETHODCALLTYPE Unadvise( 37981 DWORD dwSessionId) = 0; 37982 37983 virtual HRESULT STDMETHODCALLTYPE ChangeSessionState( 37984 DWORD dwSessionId, 37985 PBM_PLAY_STATE state, 37986 PBM_MUTE_STATE mute) = 0; 37987 37988 }; 37989 #ifdef __CRT_UUID_DECL 37990 __CRT_UUID_DECL(IPlaybackManager, 0x0f3c1b01, 0x8199, 0x4173, 0xba,0x78, 0x98,0x58,0x82,0x26,0x6f,0x7a) 37991 #endif 37992 #else 37993 typedef struct IPlaybackManagerVtbl { 37994 BEGIN_INTERFACE 37995 37996 /*** IUnknown methods ***/ 37997 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 37998 IPlaybackManager* This, 37999 REFIID riid, 38000 void **ppvObject); 38001 38002 ULONG (STDMETHODCALLTYPE *AddRef)( 38003 IPlaybackManager* This); 38004 38005 ULONG (STDMETHODCALLTYPE *Release)( 38006 IPlaybackManager* This); 38007 38008 /*** IPlaybackManager methods ***/ 38009 HRESULT (STDMETHODCALLTYPE *Advise)( 38010 IPlaybackManager* This, 38011 PBM_SESSION_TYPE type, 38012 IPlaybackManagerEvents *pEvents, 38013 DWORD *pdwSessionId); 38014 38015 HRESULT (STDMETHODCALLTYPE *Unadvise)( 38016 IPlaybackManager* This, 38017 DWORD dwSessionId); 38018 38019 HRESULT (STDMETHODCALLTYPE *ChangeSessionState)( 38020 IPlaybackManager* This, 38021 DWORD dwSessionId, 38022 PBM_PLAY_STATE state, 38023 PBM_MUTE_STATE mute); 38024 38025 END_INTERFACE 38026 } IPlaybackManagerVtbl; 38027 interface IPlaybackManager { 38028 CONST_VTBL IPlaybackManagerVtbl* lpVtbl; 38029 }; 38030 38031 #ifdef COBJMACROS 38032 #ifndef WIDL_C_INLINE_WRAPPERS 38033 /*** IUnknown methods ***/ 38034 #define IPlaybackManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 38035 #define IPlaybackManager_AddRef(This) (This)->lpVtbl->AddRef(This) 38036 #define IPlaybackManager_Release(This) (This)->lpVtbl->Release(This) 38037 /*** IPlaybackManager methods ***/ 38038 #define IPlaybackManager_Advise(This,type,pEvents,pdwSessionId) (This)->lpVtbl->Advise(This,type,pEvents,pdwSessionId) 38039 #define IPlaybackManager_Unadvise(This,dwSessionId) (This)->lpVtbl->Unadvise(This,dwSessionId) 38040 #define IPlaybackManager_ChangeSessionState(This,dwSessionId,state,mute) (This)->lpVtbl->ChangeSessionState(This,dwSessionId,state,mute) 38041 #else 38042 /*** IUnknown methods ***/ 38043 static FORCEINLINE HRESULT IPlaybackManager_QueryInterface(IPlaybackManager* This,REFIID riid,void **ppvObject) { 38044 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 38045 } 38046 static FORCEINLINE ULONG IPlaybackManager_AddRef(IPlaybackManager* This) { 38047 return This->lpVtbl->AddRef(This); 38048 } 38049 static FORCEINLINE ULONG IPlaybackManager_Release(IPlaybackManager* This) { 38050 return This->lpVtbl->Release(This); 38051 } 38052 /*** IPlaybackManager methods ***/ 38053 static FORCEINLINE HRESULT IPlaybackManager_Advise(IPlaybackManager* This,PBM_SESSION_TYPE type,IPlaybackManagerEvents *pEvents,DWORD *pdwSessionId) { 38054 return This->lpVtbl->Advise(This,type,pEvents,pdwSessionId); 38055 } 38056 static FORCEINLINE HRESULT IPlaybackManager_Unadvise(IPlaybackManager* This,DWORD dwSessionId) { 38057 return This->lpVtbl->Unadvise(This,dwSessionId); 38058 } 38059 static FORCEINLINE HRESULT IPlaybackManager_ChangeSessionState(IPlaybackManager* This,DWORD dwSessionId,PBM_PLAY_STATE state,PBM_MUTE_STATE mute) { 38060 return This->lpVtbl->ChangeSessionState(This,dwSessionId,state,mute); 38061 } 38062 #endif 38063 #endif 38064 38065 #endif 38066 38067 HRESULT STDMETHODCALLTYPE IPlaybackManager_Advise_Proxy( 38068 IPlaybackManager* This, 38069 PBM_SESSION_TYPE type, 38070 IPlaybackManagerEvents *pEvents, 38071 DWORD *pdwSessionId); 38072 void __RPC_STUB IPlaybackManager_Advise_Stub( 38073 IRpcStubBuffer* This, 38074 IRpcChannelBuffer* pRpcChannelBuffer, 38075 PRPC_MESSAGE pRpcMessage, 38076 DWORD* pdwStubPhase); 38077 HRESULT STDMETHODCALLTYPE IPlaybackManager_Unadvise_Proxy( 38078 IPlaybackManager* This, 38079 DWORD dwSessionId); 38080 void __RPC_STUB IPlaybackManager_Unadvise_Stub( 38081 IRpcStubBuffer* This, 38082 IRpcChannelBuffer* pRpcChannelBuffer, 38083 PRPC_MESSAGE pRpcMessage, 38084 DWORD* pdwStubPhase); 38085 HRESULT STDMETHODCALLTYPE IPlaybackManager_ChangeSessionState_Proxy( 38086 IPlaybackManager* This, 38087 DWORD dwSessionId, 38088 PBM_PLAY_STATE state, 38089 PBM_MUTE_STATE mute); 38090 void __RPC_STUB IPlaybackManager_ChangeSessionState_Stub( 38091 IRpcStubBuffer* This, 38092 IRpcChannelBuffer* pRpcChannelBuffer, 38093 PRPC_MESSAGE pRpcMessage, 38094 DWORD* pdwStubPhase); 38095 38096 #endif /* __IPlaybackManager_INTERFACE_DEFINED__ */ 38097 38098 38099 typedef enum DEFAULT_FOLDER_MENU_RESTRICTIONS { 38100 DFMR_DEFAULT = 0x0, 38101 DFMR_NO_STATIC_VERBS = 0x8, 38102 DFMR_STATIC_VERBS_ONLY = 0x10, 38103 DFMR_NO_RESOURCE_VERBS = 0x20, 38104 DFMR_OPTIN_HANDLERS_ONLY = 0x40, 38105 DFMR_RESOURCE_AND_FOLDER_VERBS_ONLY = 0x80, 38106 DFMR_USE_SPECIFIED_HANDLERS = 0x100, 38107 DFMR_USE_SPECIFIED_VERBS = 0x200, 38108 DFMR_NO_ASYNC_VERBS = 0x400 38109 } DEFAULT_FOLDER_MENU_RESTRICTIONS; 38110 38111 DEFINE_ENUM_FLAG_OPERATORS(DEFAULT_FOLDER_MENU_RESTRICTIONS) 38112 38113 /***************************************************************************** 38114 * IDefaultFolderMenuInitialize interface 38115 */ 38116 #ifndef __IDefaultFolderMenuInitialize_INTERFACE_DEFINED__ 38117 #define __IDefaultFolderMenuInitialize_INTERFACE_DEFINED__ 38118 38119 DEFINE_GUID(IID_IDefaultFolderMenuInitialize, 0x7690aa79, 0xf8fc, 0x4615, 0xa3,0x27, 0x36,0xf7,0xd1,0x8f,0x5d,0x91); 38120 #if defined(__cplusplus) && !defined(CINTERFACE) 38121 MIDL_INTERFACE("7690aa79-f8fc-4615-a327-36f7d18f5d91") 38122 IDefaultFolderMenuInitialize : public IUnknown 38123 { 38124 virtual HRESULT STDMETHODCALLTYPE Initialize( 38125 HWND hwnd, 38126 IContextMenuCB *pcmcb, 38127 PCIDLIST_ABSOLUTE pidlFolder, 38128 IShellFolder *psf, 38129 UINT cidl, 38130 PCUITEMID_CHILD_ARRAY apidl, 38131 IUnknown *punkAssociation, 38132 UINT cKeys, 38133 const HKEY *aKeys) = 0; 38134 38135 virtual HRESULT STDMETHODCALLTYPE SetMenuRestrictions( 38136 DEFAULT_FOLDER_MENU_RESTRICTIONS dfmrValues) = 0; 38137 38138 virtual HRESULT STDMETHODCALLTYPE GetMenuRestrictions( 38139 DEFAULT_FOLDER_MENU_RESTRICTIONS dfmrMask, 38140 DEFAULT_FOLDER_MENU_RESTRICTIONS *pdfmrValues) = 0; 38141 38142 virtual HRESULT STDMETHODCALLTYPE SetHandlerClsid( 38143 REFCLSID rclsid) = 0; 38144 38145 }; 38146 #ifdef __CRT_UUID_DECL 38147 __CRT_UUID_DECL(IDefaultFolderMenuInitialize, 0x7690aa79, 0xf8fc, 0x4615, 0xa3,0x27, 0x36,0xf7,0xd1,0x8f,0x5d,0x91) 38148 #endif 38149 #else 38150 typedef struct IDefaultFolderMenuInitializeVtbl { 38151 BEGIN_INTERFACE 38152 38153 /*** IUnknown methods ***/ 38154 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 38155 IDefaultFolderMenuInitialize* This, 38156 REFIID riid, 38157 void **ppvObject); 38158 38159 ULONG (STDMETHODCALLTYPE *AddRef)( 38160 IDefaultFolderMenuInitialize* This); 38161 38162 ULONG (STDMETHODCALLTYPE *Release)( 38163 IDefaultFolderMenuInitialize* This); 38164 38165 /*** IDefaultFolderMenuInitialize methods ***/ 38166 HRESULT (STDMETHODCALLTYPE *Initialize)( 38167 IDefaultFolderMenuInitialize* This, 38168 HWND hwnd, 38169 IContextMenuCB *pcmcb, 38170 PCIDLIST_ABSOLUTE pidlFolder, 38171 IShellFolder *psf, 38172 UINT cidl, 38173 PCUITEMID_CHILD_ARRAY apidl, 38174 IUnknown *punkAssociation, 38175 UINT cKeys, 38176 const HKEY *aKeys); 38177 38178 HRESULT (STDMETHODCALLTYPE *SetMenuRestrictions)( 38179 IDefaultFolderMenuInitialize* This, 38180 DEFAULT_FOLDER_MENU_RESTRICTIONS dfmrValues); 38181 38182 HRESULT (STDMETHODCALLTYPE *GetMenuRestrictions)( 38183 IDefaultFolderMenuInitialize* This, 38184 DEFAULT_FOLDER_MENU_RESTRICTIONS dfmrMask, 38185 DEFAULT_FOLDER_MENU_RESTRICTIONS *pdfmrValues); 38186 38187 HRESULT (STDMETHODCALLTYPE *SetHandlerClsid)( 38188 IDefaultFolderMenuInitialize* This, 38189 REFCLSID rclsid); 38190 38191 END_INTERFACE 38192 } IDefaultFolderMenuInitializeVtbl; 38193 interface IDefaultFolderMenuInitialize { 38194 CONST_VTBL IDefaultFolderMenuInitializeVtbl* lpVtbl; 38195 }; 38196 38197 #ifdef COBJMACROS 38198 #ifndef WIDL_C_INLINE_WRAPPERS 38199 /*** IUnknown methods ***/ 38200 #define IDefaultFolderMenuInitialize_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 38201 #define IDefaultFolderMenuInitialize_AddRef(This) (This)->lpVtbl->AddRef(This) 38202 #define IDefaultFolderMenuInitialize_Release(This) (This)->lpVtbl->Release(This) 38203 /*** IDefaultFolderMenuInitialize methods ***/ 38204 #define IDefaultFolderMenuInitialize_Initialize(This,hwnd,pcmcb,pidlFolder,psf,cidl,apidl,punkAssociation,cKeys,aKeys) (This)->lpVtbl->Initialize(This,hwnd,pcmcb,pidlFolder,psf,cidl,apidl,punkAssociation,cKeys,aKeys) 38205 #define IDefaultFolderMenuInitialize_SetMenuRestrictions(This,dfmrValues) (This)->lpVtbl->SetMenuRestrictions(This,dfmrValues) 38206 #define IDefaultFolderMenuInitialize_GetMenuRestrictions(This,dfmrMask,pdfmrValues) (This)->lpVtbl->GetMenuRestrictions(This,dfmrMask,pdfmrValues) 38207 #define IDefaultFolderMenuInitialize_SetHandlerClsid(This,rclsid) (This)->lpVtbl->SetHandlerClsid(This,rclsid) 38208 #else 38209 /*** IUnknown methods ***/ 38210 static FORCEINLINE HRESULT IDefaultFolderMenuInitialize_QueryInterface(IDefaultFolderMenuInitialize* This,REFIID riid,void **ppvObject) { 38211 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 38212 } 38213 static FORCEINLINE ULONG IDefaultFolderMenuInitialize_AddRef(IDefaultFolderMenuInitialize* This) { 38214 return This->lpVtbl->AddRef(This); 38215 } 38216 static FORCEINLINE ULONG IDefaultFolderMenuInitialize_Release(IDefaultFolderMenuInitialize* This) { 38217 return This->lpVtbl->Release(This); 38218 } 38219 /*** IDefaultFolderMenuInitialize methods ***/ 38220 static FORCEINLINE HRESULT IDefaultFolderMenuInitialize_Initialize(IDefaultFolderMenuInitialize* This,HWND hwnd,IContextMenuCB *pcmcb,PCIDLIST_ABSOLUTE pidlFolder,IShellFolder *psf,UINT cidl,PCUITEMID_CHILD_ARRAY apidl,IUnknown *punkAssociation,UINT cKeys,const HKEY *aKeys) { 38221 return This->lpVtbl->Initialize(This,hwnd,pcmcb,pidlFolder,psf,cidl,apidl,punkAssociation,cKeys,aKeys); 38222 } 38223 static FORCEINLINE HRESULT IDefaultFolderMenuInitialize_SetMenuRestrictions(IDefaultFolderMenuInitialize* This,DEFAULT_FOLDER_MENU_RESTRICTIONS dfmrValues) { 38224 return This->lpVtbl->SetMenuRestrictions(This,dfmrValues); 38225 } 38226 static FORCEINLINE HRESULT IDefaultFolderMenuInitialize_GetMenuRestrictions(IDefaultFolderMenuInitialize* This,DEFAULT_FOLDER_MENU_RESTRICTIONS dfmrMask,DEFAULT_FOLDER_MENU_RESTRICTIONS *pdfmrValues) { 38227 return This->lpVtbl->GetMenuRestrictions(This,dfmrMask,pdfmrValues); 38228 } 38229 static FORCEINLINE HRESULT IDefaultFolderMenuInitialize_SetHandlerClsid(IDefaultFolderMenuInitialize* This,REFCLSID rclsid) { 38230 return This->lpVtbl->SetHandlerClsid(This,rclsid); 38231 } 38232 #endif 38233 #endif 38234 38235 #endif 38236 38237 HRESULT STDMETHODCALLTYPE IDefaultFolderMenuInitialize_Initialize_Proxy( 38238 IDefaultFolderMenuInitialize* This, 38239 HWND hwnd, 38240 IContextMenuCB *pcmcb, 38241 PCIDLIST_ABSOLUTE pidlFolder, 38242 IShellFolder *psf, 38243 UINT cidl, 38244 PCUITEMID_CHILD_ARRAY apidl, 38245 IUnknown *punkAssociation, 38246 UINT cKeys, 38247 const HKEY *aKeys); 38248 void __RPC_STUB IDefaultFolderMenuInitialize_Initialize_Stub( 38249 IRpcStubBuffer* This, 38250 IRpcChannelBuffer* pRpcChannelBuffer, 38251 PRPC_MESSAGE pRpcMessage, 38252 DWORD* pdwStubPhase); 38253 HRESULT STDMETHODCALLTYPE IDefaultFolderMenuInitialize_SetMenuRestrictions_Proxy( 38254 IDefaultFolderMenuInitialize* This, 38255 DEFAULT_FOLDER_MENU_RESTRICTIONS dfmrValues); 38256 void __RPC_STUB IDefaultFolderMenuInitialize_SetMenuRestrictions_Stub( 38257 IRpcStubBuffer* This, 38258 IRpcChannelBuffer* pRpcChannelBuffer, 38259 PRPC_MESSAGE pRpcMessage, 38260 DWORD* pdwStubPhase); 38261 HRESULT STDMETHODCALLTYPE IDefaultFolderMenuInitialize_GetMenuRestrictions_Proxy( 38262 IDefaultFolderMenuInitialize* This, 38263 DEFAULT_FOLDER_MENU_RESTRICTIONS dfmrMask, 38264 DEFAULT_FOLDER_MENU_RESTRICTIONS *pdfmrValues); 38265 void __RPC_STUB IDefaultFolderMenuInitialize_GetMenuRestrictions_Stub( 38266 IRpcStubBuffer* This, 38267 IRpcChannelBuffer* pRpcChannelBuffer, 38268 PRPC_MESSAGE pRpcMessage, 38269 DWORD* pdwStubPhase); 38270 HRESULT STDMETHODCALLTYPE IDefaultFolderMenuInitialize_SetHandlerClsid_Proxy( 38271 IDefaultFolderMenuInitialize* This, 38272 REFCLSID rclsid); 38273 void __RPC_STUB IDefaultFolderMenuInitialize_SetHandlerClsid_Stub( 38274 IRpcStubBuffer* This, 38275 IRpcChannelBuffer* pRpcChannelBuffer, 38276 PRPC_MESSAGE pRpcMessage, 38277 DWORD* pdwStubPhase); 38278 38279 #endif /* __IDefaultFolderMenuInitialize_INTERFACE_DEFINED__ */ 38280 38281 38282 #if NTDDI_VERSION >= NTDDI_WIN8 38283 typedef enum ACTIVATEOPTIONS { 38284 AO_NONE = 0x0, 38285 AO_DESIGNMODE = 0x1, 38286 AO_NOERRORUI = 0x2, 38287 AO_NOSPLASHSCREEN = 0x4 38288 } ACTIVATEOPTIONS; 38289 38290 DEFINE_ENUM_FLAG_OPERATORS(ACTIVATEOPTIONS) 38291 38292 /***************************************************************************** 38293 * IApplicationActivationManager interface 38294 */ 38295 #ifndef __IApplicationActivationManager_INTERFACE_DEFINED__ 38296 #define __IApplicationActivationManager_INTERFACE_DEFINED__ 38297 38298 DEFINE_GUID(IID_IApplicationActivationManager, 0x2e941141, 0x7f97, 0x4756, 0xba,0x1d, 0x9d,0xec,0xde,0x89,0x4a,0x3d); 38299 #if defined(__cplusplus) && !defined(CINTERFACE) 38300 MIDL_INTERFACE("2e941141-7f97-4756-ba1d-9decde894a3d") 38301 IApplicationActivationManager : public IUnknown 38302 { 38303 virtual HRESULT STDMETHODCALLTYPE ActivateApplication( 38304 LPCWSTR appUserModelId, 38305 LPCWSTR arguments, 38306 ACTIVATEOPTIONS options, 38307 DWORD *processId) = 0; 38308 38309 virtual HRESULT STDMETHODCALLTYPE ActivateForFile( 38310 LPCWSTR appUserModelId, 38311 IShellItemArray *itemArray, 38312 LPCWSTR verb, 38313 DWORD *processId) = 0; 38314 38315 virtual HRESULT STDMETHODCALLTYPE ActivateForProtocol( 38316 LPCWSTR appUserModelId, 38317 IShellItemArray *itemArray, 38318 DWORD *processId) = 0; 38319 38320 }; 38321 #ifdef __CRT_UUID_DECL 38322 __CRT_UUID_DECL(IApplicationActivationManager, 0x2e941141, 0x7f97, 0x4756, 0xba,0x1d, 0x9d,0xec,0xde,0x89,0x4a,0x3d) 38323 #endif 38324 #else 38325 typedef struct IApplicationActivationManagerVtbl { 38326 BEGIN_INTERFACE 38327 38328 /*** IUnknown methods ***/ 38329 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 38330 IApplicationActivationManager* This, 38331 REFIID riid, 38332 void **ppvObject); 38333 38334 ULONG (STDMETHODCALLTYPE *AddRef)( 38335 IApplicationActivationManager* This); 38336 38337 ULONG (STDMETHODCALLTYPE *Release)( 38338 IApplicationActivationManager* This); 38339 38340 /*** IApplicationActivationManager methods ***/ 38341 HRESULT (STDMETHODCALLTYPE *ActivateApplication)( 38342 IApplicationActivationManager* This, 38343 LPCWSTR appUserModelId, 38344 LPCWSTR arguments, 38345 ACTIVATEOPTIONS options, 38346 DWORD *processId); 38347 38348 HRESULT (STDMETHODCALLTYPE *ActivateForFile)( 38349 IApplicationActivationManager* This, 38350 LPCWSTR appUserModelId, 38351 IShellItemArray *itemArray, 38352 LPCWSTR verb, 38353 DWORD *processId); 38354 38355 HRESULT (STDMETHODCALLTYPE *ActivateForProtocol)( 38356 IApplicationActivationManager* This, 38357 LPCWSTR appUserModelId, 38358 IShellItemArray *itemArray, 38359 DWORD *processId); 38360 38361 END_INTERFACE 38362 } IApplicationActivationManagerVtbl; 38363 interface IApplicationActivationManager { 38364 CONST_VTBL IApplicationActivationManagerVtbl* lpVtbl; 38365 }; 38366 38367 #ifdef COBJMACROS 38368 #ifndef WIDL_C_INLINE_WRAPPERS 38369 /*** IUnknown methods ***/ 38370 #define IApplicationActivationManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 38371 #define IApplicationActivationManager_AddRef(This) (This)->lpVtbl->AddRef(This) 38372 #define IApplicationActivationManager_Release(This) (This)->lpVtbl->Release(This) 38373 /*** IApplicationActivationManager methods ***/ 38374 #define IApplicationActivationManager_ActivateApplication(This,appUserModelId,arguments,options,processId) (This)->lpVtbl->ActivateApplication(This,appUserModelId,arguments,options,processId) 38375 #define IApplicationActivationManager_ActivateForFile(This,appUserModelId,itemArray,verb,processId) (This)->lpVtbl->ActivateForFile(This,appUserModelId,itemArray,verb,processId) 38376 #define IApplicationActivationManager_ActivateForProtocol(This,appUserModelId,itemArray,processId) (This)->lpVtbl->ActivateForProtocol(This,appUserModelId,itemArray,processId) 38377 #else 38378 /*** IUnknown methods ***/ 38379 static FORCEINLINE HRESULT IApplicationActivationManager_QueryInterface(IApplicationActivationManager* This,REFIID riid,void **ppvObject) { 38380 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 38381 } 38382 static FORCEINLINE ULONG IApplicationActivationManager_AddRef(IApplicationActivationManager* This) { 38383 return This->lpVtbl->AddRef(This); 38384 } 38385 static FORCEINLINE ULONG IApplicationActivationManager_Release(IApplicationActivationManager* This) { 38386 return This->lpVtbl->Release(This); 38387 } 38388 /*** IApplicationActivationManager methods ***/ 38389 static FORCEINLINE HRESULT IApplicationActivationManager_ActivateApplication(IApplicationActivationManager* This,LPCWSTR appUserModelId,LPCWSTR arguments,ACTIVATEOPTIONS options,DWORD *processId) { 38390 return This->lpVtbl->ActivateApplication(This,appUserModelId,arguments,options,processId); 38391 } 38392 static FORCEINLINE HRESULT IApplicationActivationManager_ActivateForFile(IApplicationActivationManager* This,LPCWSTR appUserModelId,IShellItemArray *itemArray,LPCWSTR verb,DWORD *processId) { 38393 return This->lpVtbl->ActivateForFile(This,appUserModelId,itemArray,verb,processId); 38394 } 38395 static FORCEINLINE HRESULT IApplicationActivationManager_ActivateForProtocol(IApplicationActivationManager* This,LPCWSTR appUserModelId,IShellItemArray *itemArray,DWORD *processId) { 38396 return This->lpVtbl->ActivateForProtocol(This,appUserModelId,itemArray,processId); 38397 } 38398 #endif 38399 #endif 38400 38401 #endif 38402 38403 HRESULT STDMETHODCALLTYPE IApplicationActivationManager_ActivateApplication_Proxy( 38404 IApplicationActivationManager* This, 38405 LPCWSTR appUserModelId, 38406 LPCWSTR arguments, 38407 ACTIVATEOPTIONS options, 38408 DWORD *processId); 38409 void __RPC_STUB IApplicationActivationManager_ActivateApplication_Stub( 38410 IRpcStubBuffer* This, 38411 IRpcChannelBuffer* pRpcChannelBuffer, 38412 PRPC_MESSAGE pRpcMessage, 38413 DWORD* pdwStubPhase); 38414 HRESULT STDMETHODCALLTYPE IApplicationActivationManager_ActivateForFile_Proxy( 38415 IApplicationActivationManager* This, 38416 LPCWSTR appUserModelId, 38417 IShellItemArray *itemArray, 38418 LPCWSTR verb, 38419 DWORD *processId); 38420 void __RPC_STUB IApplicationActivationManager_ActivateForFile_Stub( 38421 IRpcStubBuffer* This, 38422 IRpcChannelBuffer* pRpcChannelBuffer, 38423 PRPC_MESSAGE pRpcMessage, 38424 DWORD* pdwStubPhase); 38425 HRESULT STDMETHODCALLTYPE IApplicationActivationManager_ActivateForProtocol_Proxy( 38426 IApplicationActivationManager* This, 38427 LPCWSTR appUserModelId, 38428 IShellItemArray *itemArray, 38429 DWORD *processId); 38430 void __RPC_STUB IApplicationActivationManager_ActivateForProtocol_Stub( 38431 IRpcStubBuffer* This, 38432 IRpcChannelBuffer* pRpcChannelBuffer, 38433 PRPC_MESSAGE pRpcMessage, 38434 DWORD* pdwStubPhase); 38435 38436 #endif /* __IApplicationActivationManager_INTERFACE_DEFINED__ */ 38437 38438 #endif 38439 38440 38441 DEFINE_GUID(LIBID_ShellObjects, 0x50a7e9b1, 0x70ef, 0x11d1, 0xb7,0x5a, 0x00,0xa0,0xc9,0x05,0x64,0xfe); 38442 38443 /***************************************************************************** 38444 * DesktopWallpaper coclass 38445 */ 38446 38447 DEFINE_GUID(CLSID_DesktopWallpaper, 0xc2cf3110, 0x460e, 0x4fc1, 0xb9,0xd0, 0x8a,0x1c,0x0c,0x9c,0xc4,0xbd); 38448 38449 #ifdef __cplusplus 38450 class DECLSPEC_UUID("c2cf3110-460e-4fc1-b9d0-8a1c0c9cc4bd") DesktopWallpaper; 38451 #ifdef __CRT_UUID_DECL 38452 __CRT_UUID_DECL(DesktopWallpaper, 0xc2cf3110, 0x460e, 0x4fc1, 0xb9,0xd0, 0x8a,0x1c,0x0c,0x9c,0xc4,0xbd) 38453 #endif 38454 #endif 38455 38456 /***************************************************************************** 38457 * ShellDesktop coclass 38458 */ 38459 38460 DEFINE_GUID(CLSID_ShellDesktop, 0x00021400, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 38461 38462 #ifdef __cplusplus 38463 class DECLSPEC_UUID("00021400-0000-0000-c000-000000000046") ShellDesktop; 38464 #ifdef __CRT_UUID_DECL 38465 __CRT_UUID_DECL(ShellDesktop, 0x00021400, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 38466 #endif 38467 #endif 38468 38469 /***************************************************************************** 38470 * ShellFSFolder coclass 38471 */ 38472 38473 DEFINE_GUID(CLSID_ShellFSFolder, 0xf3364ba0, 0x65b9, 0x11ce, 0xa9,0xba, 0x00,0xaa,0x00,0x4a,0xe8,0x37); 38474 38475 #ifdef __cplusplus 38476 class DECLSPEC_UUID("f3364ba0-65b9-11ce-a9ba-00aa004ae837") ShellFSFolder; 38477 #ifdef __CRT_UUID_DECL 38478 __CRT_UUID_DECL(ShellFSFolder, 0xf3364ba0, 0x65b9, 0x11ce, 0xa9,0xba, 0x00,0xaa,0x00,0x4a,0xe8,0x37) 38479 #endif 38480 #endif 38481 38482 /***************************************************************************** 38483 * NetworkPlaces coclass 38484 */ 38485 38486 DEFINE_GUID(CLSID_NetworkPlaces, 0x208d2c60, 0x3aea, 0x1069, 0xa2,0xd7, 0x08,0x00,0x2b,0x30,0x30,0x9d); 38487 38488 #ifdef __cplusplus 38489 class DECLSPEC_UUID("208d2c60-3aea-1069-a2d7-08002b30309d") NetworkPlaces; 38490 #ifdef __CRT_UUID_DECL 38491 __CRT_UUID_DECL(NetworkPlaces, 0x208d2c60, 0x3aea, 0x1069, 0xa2,0xd7, 0x08,0x00,0x2b,0x30,0x30,0x9d) 38492 #endif 38493 #endif 38494 38495 /***************************************************************************** 38496 * ShellLink coclass 38497 */ 38498 38499 DEFINE_GUID(CLSID_ShellLink, 0x00021401, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); 38500 38501 #ifdef __cplusplus 38502 class DECLSPEC_UUID("00021401-0000-0000-c000-000000000046") ShellLink; 38503 #ifdef __CRT_UUID_DECL 38504 __CRT_UUID_DECL(ShellLink, 0x00021401, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) 38505 #endif 38506 #endif 38507 38508 /***************************************************************************** 38509 * QueryCancelAutoPlay coclass 38510 */ 38511 38512 DEFINE_GUID(CLSID_QueryCancelAutoPlay, 0x331f1768, 0x05a9, 0x4ddd, 0xb8,0x6e, 0xda,0xe3,0x4d,0xdc,0x99,0x8a); 38513 38514 #ifdef __cplusplus 38515 class DECLSPEC_UUID("331f1768-05a9-4ddd-b86e-dae34ddc998a") QueryCancelAutoPlay; 38516 #ifdef __CRT_UUID_DECL 38517 __CRT_UUID_DECL(QueryCancelAutoPlay, 0x331f1768, 0x05a9, 0x4ddd, 0xb8,0x6e, 0xda,0xe3,0x4d,0xdc,0x99,0x8a) 38518 #endif 38519 #endif 38520 38521 /***************************************************************************** 38522 * DriveSizeCategorizer coclass 38523 */ 38524 38525 DEFINE_GUID(CLSID_DriveSizeCategorizer, 0x94357b53, 0xca29, 0x4b78, 0x83,0xae, 0xe8,0xfe,0x74,0x09,0x13,0x4f); 38526 38527 #ifdef __cplusplus 38528 class DECLSPEC_UUID("94357b53-ca29-4b78-83ae-e8fe7409134f") DriveSizeCategorizer; 38529 #ifdef __CRT_UUID_DECL 38530 __CRT_UUID_DECL(DriveSizeCategorizer, 0x94357b53, 0xca29, 0x4b78, 0x83,0xae, 0xe8,0xfe,0x74,0x09,0x13,0x4f) 38531 #endif 38532 #endif 38533 38534 /***************************************************************************** 38535 * DriveTypeCategorizer coclass 38536 */ 38537 38538 DEFINE_GUID(CLSID_DriveTypeCategorizer, 0xb0a8f3cf, 0x4333, 0x4bab, 0x88,0x73, 0x1c,0xcb,0x1c,0xad,0xa4,0x8b); 38539 38540 #ifdef __cplusplus 38541 class DECLSPEC_UUID("b0a8f3cf-4333-4bab-8873-1ccb1cada48b") DriveTypeCategorizer; 38542 #ifdef __CRT_UUID_DECL 38543 __CRT_UUID_DECL(DriveTypeCategorizer, 0xb0a8f3cf, 0x4333, 0x4bab, 0x88,0x73, 0x1c,0xcb,0x1c,0xad,0xa4,0x8b) 38544 #endif 38545 #endif 38546 38547 /***************************************************************************** 38548 * FreeSpaceCategorizer coclass 38549 */ 38550 38551 DEFINE_GUID(CLSID_FreeSpaceCategorizer, 0xb5607793, 0x24ac, 0x44c7, 0x82,0xe2, 0x83,0x17,0x26,0xaa,0x6c,0xb7); 38552 38553 #ifdef __cplusplus 38554 class DECLSPEC_UUID("b5607793-24ac-44c7-82e2-831726aa6cb7") FreeSpaceCategorizer; 38555 #ifdef __CRT_UUID_DECL 38556 __CRT_UUID_DECL(FreeSpaceCategorizer, 0xb5607793, 0x24ac, 0x44c7, 0x82,0xe2, 0x83,0x17,0x26,0xaa,0x6c,0xb7) 38557 #endif 38558 #endif 38559 38560 /***************************************************************************** 38561 * TimeCategorizer coclass 38562 */ 38563 38564 DEFINE_GUID(CLSID_TimeCategorizer, 0x3bb4118f, 0xddfd, 0x4d30, 0xa3,0x48, 0x9f,0xb5,0xd6,0xbf,0x1a,0xfe); 38565 38566 #ifdef __cplusplus 38567 class DECLSPEC_UUID("3bb4118f-ddfd-4d30-a348-9fb5d6bf1afe") TimeCategorizer; 38568 #ifdef __CRT_UUID_DECL 38569 __CRT_UUID_DECL(TimeCategorizer, 0x3bb4118f, 0xddfd, 0x4d30, 0xa3,0x48, 0x9f,0xb5,0xd6,0xbf,0x1a,0xfe) 38570 #endif 38571 #endif 38572 38573 /***************************************************************************** 38574 * SizeCategorizer coclass 38575 */ 38576 38577 DEFINE_GUID(CLSID_SizeCategorizer, 0x55d7b852, 0xf6d1, 0x42f2, 0xaa,0x75, 0x87,0x28,0xa1,0xb2,0xd2,0x64); 38578 38579 #ifdef __cplusplus 38580 class DECLSPEC_UUID("55d7b852-f6d1-42f2-aa75-8728a1b2d264") SizeCategorizer; 38581 #ifdef __CRT_UUID_DECL 38582 __CRT_UUID_DECL(SizeCategorizer, 0x55d7b852, 0xf6d1, 0x42f2, 0xaa,0x75, 0x87,0x28,0xa1,0xb2,0xd2,0x64) 38583 #endif 38584 #endif 38585 38586 /***************************************************************************** 38587 * AlphabeticalCategorizer coclass 38588 */ 38589 38590 DEFINE_GUID(CLSID_AlphabeticalCategorizer, 0x3c2654c6, 0x7372, 0x4f6b, 0xb3,0x10, 0x55,0xd6,0x12,0x8f,0x49,0xd2); 38591 38592 #ifdef __cplusplus 38593 class DECLSPEC_UUID("3c2654c6-7372-4f6b-b310-55d6128f49d2") AlphabeticalCategorizer; 38594 #ifdef __CRT_UUID_DECL 38595 __CRT_UUID_DECL(AlphabeticalCategorizer, 0x3c2654c6, 0x7372, 0x4f6b, 0xb3,0x10, 0x55,0xd6,0x12,0x8f,0x49,0xd2) 38596 #endif 38597 #endif 38598 38599 /***************************************************************************** 38600 * MergedCategorizer coclass 38601 */ 38602 38603 DEFINE_GUID(CLSID_MergedCategorizer, 0x8e827c11, 0x33e7, 0x4bc1, 0xb2,0x42, 0x8c,0xd9,0xa1,0xc2,0xb3,0x04); 38604 38605 #ifdef __cplusplus 38606 class DECLSPEC_UUID("8e827c11-33e7-4bc1-b242-8cd9a1c2b304") MergedCategorizer; 38607 #ifdef __CRT_UUID_DECL 38608 __CRT_UUID_DECL(MergedCategorizer, 0x8e827c11, 0x33e7, 0x4bc1, 0xb2,0x42, 0x8c,0xd9,0xa1,0xc2,0xb3,0x04) 38609 #endif 38610 #endif 38611 38612 /***************************************************************************** 38613 * ImageProperties coclass 38614 */ 38615 38616 DEFINE_GUID(CLSID_ImageProperties, 0x7ab770c7, 0x0e23, 0x4d7a, 0x8a,0xa2, 0x19,0xbf,0xad,0x47,0x98,0x29); 38617 38618 #ifdef __cplusplus 38619 class DECLSPEC_UUID("7ab770c7-0e23-4d7a-8aa2-19bfad479829") ImageProperties; 38620 #ifdef __CRT_UUID_DECL 38621 __CRT_UUID_DECL(ImageProperties, 0x7ab770c7, 0x0e23, 0x4d7a, 0x8a,0xa2, 0x19,0xbf,0xad,0x47,0x98,0x29) 38622 #endif 38623 #endif 38624 38625 /***************************************************************************** 38626 * PropertiesUI coclass 38627 */ 38628 38629 DEFINE_GUID(CLSID_PropertiesUI, 0xd912f8cf, 0x0396, 0x4915, 0x88,0x4e, 0xfb,0x42,0x5d,0x32,0x94,0x3b); 38630 38631 #ifdef __cplusplus 38632 class DECLSPEC_UUID("d912f8cf-0396-4915-884e-fb425d32943b") PropertiesUI; 38633 #ifdef __CRT_UUID_DECL 38634 __CRT_UUID_DECL(PropertiesUI, 0xd912f8cf, 0x0396, 0x4915, 0x88,0x4e, 0xfb,0x42,0x5d,0x32,0x94,0x3b) 38635 #endif 38636 #endif 38637 38638 /***************************************************************************** 38639 * UserNotification coclass 38640 */ 38641 38642 DEFINE_GUID(CLSID_UserNotification, 0x0010890e, 0x8789, 0x413c, 0xad,0xbc, 0x48,0xf5,0xb5,0x11,0xb3,0xaf); 38643 38644 #ifdef __cplusplus 38645 class DECLSPEC_UUID("0010890e-8789-413c-adbc-48f5b511b3af") UserNotification; 38646 #ifdef __CRT_UUID_DECL 38647 __CRT_UUID_DECL(UserNotification, 0x0010890e, 0x8789, 0x413c, 0xad,0xbc, 0x48,0xf5,0xb5,0x11,0xb3,0xaf) 38648 #endif 38649 #endif 38650 38651 /***************************************************************************** 38652 * CDBurn coclass 38653 */ 38654 38655 DEFINE_GUID(CLSID_CDBurn, 0xfbeb8a05, 0xbeee, 0x4442, 0x80,0x4e, 0x40,0x9d,0x6c,0x45,0x15,0xe9); 38656 38657 #ifdef __cplusplus 38658 class DECLSPEC_UUID("fbeb8a05-beee-4442-804e-409d6c4515e9") CDBurn; 38659 #ifdef __CRT_UUID_DECL 38660 __CRT_UUID_DECL(CDBurn, 0xfbeb8a05, 0xbeee, 0x4442, 0x80,0x4e, 0x40,0x9d,0x6c,0x45,0x15,0xe9) 38661 #endif 38662 #endif 38663 38664 /***************************************************************************** 38665 * TaskbarList coclass 38666 */ 38667 38668 DEFINE_GUID(CLSID_TaskbarList, 0x56fdf344, 0xfd6d, 0x11d0, 0x95,0x8a, 0x00,0x60,0x97,0xc9,0xa0,0x90); 38669 38670 #ifdef __cplusplus 38671 class DECLSPEC_UUID("56fdf344-fd6d-11d0-958a-006097c9a090") TaskbarList; 38672 #ifdef __CRT_UUID_DECL 38673 __CRT_UUID_DECL(TaskbarList, 0x56fdf344, 0xfd6d, 0x11d0, 0x95,0x8a, 0x00,0x60,0x97,0xc9,0xa0,0x90) 38674 #endif 38675 #endif 38676 38677 /***************************************************************************** 38678 * StartMenuPin coclass 38679 */ 38680 38681 DEFINE_GUID(CLSID_StartMenuPin, 0xa2a9545d, 0xa0c2, 0x42b4, 0x97,0x08, 0xa0,0xb2,0xba,0xdd,0x77,0xc8); 38682 38683 #ifdef __cplusplus 38684 class DECLSPEC_UUID("a2a9545d-a0c2-42b4-9708-a0b2badd77c8") StartMenuPin; 38685 #ifdef __CRT_UUID_DECL 38686 __CRT_UUID_DECL(StartMenuPin, 0xa2a9545d, 0xa0c2, 0x42b4, 0x97,0x08, 0xa0,0xb2,0xba,0xdd,0x77,0xc8) 38687 #endif 38688 #endif 38689 38690 /***************************************************************************** 38691 * WebWizardHost coclass 38692 */ 38693 38694 DEFINE_GUID(CLSID_WebWizardHost, 0xc827f149, 0x55c1, 0x4d28, 0x93,0x5e, 0x57,0xe4,0x7c,0xae,0xd9,0x73); 38695 38696 #ifdef __cplusplus 38697 class DECLSPEC_UUID("c827f149-55c1-4d28-935e-57e47caed973") WebWizardHost; 38698 #ifdef __CRT_UUID_DECL 38699 __CRT_UUID_DECL(WebWizardHost, 0xc827f149, 0x55c1, 0x4d28, 0x93,0x5e, 0x57,0xe4,0x7c,0xae,0xd9,0x73) 38700 #endif 38701 #endif 38702 38703 /***************************************************************************** 38704 * PublishDropTarget coclass 38705 */ 38706 38707 DEFINE_GUID(CLSID_PublishDropTarget, 0xcc6eeffb, 0x43f6, 0x46c5, 0x96,0x19, 0x51,0xd5,0x71,0x96,0x7f,0x7d); 38708 38709 #ifdef __cplusplus 38710 class DECLSPEC_UUID("cc6eeffb-43f6-46c5-9619-51d571967f7d") PublishDropTarget; 38711 #ifdef __CRT_UUID_DECL 38712 __CRT_UUID_DECL(PublishDropTarget, 0xcc6eeffb, 0x43f6, 0x46c5, 0x96,0x19, 0x51,0xd5,0x71,0x96,0x7f,0x7d) 38713 #endif 38714 #endif 38715 38716 /***************************************************************************** 38717 * PublishingWizard coclass 38718 */ 38719 38720 DEFINE_GUID(CLSID_PublishingWizard, 0x6b33163c, 0x76a5, 0x4b6c, 0xbf,0x21, 0x45,0xde,0x9c,0xd5,0x03,0xa1); 38721 38722 #ifdef __cplusplus 38723 class DECLSPEC_UUID("6b33163c-76a5-4b6c-bf21-45de9cd503a1") PublishingWizard; 38724 #ifdef __CRT_UUID_DECL 38725 __CRT_UUID_DECL(PublishingWizard, 0x6b33163c, 0x76a5, 0x4b6c, 0xbf,0x21, 0x45,0xde,0x9c,0xd5,0x03,0xa1) 38726 #endif 38727 #endif 38728 38729 #define SID_PublishingWizard CLSID_PublishingWizard 38730 /***************************************************************************** 38731 * InternetPrintOrdering coclass 38732 */ 38733 38734 DEFINE_GUID(CLSID_InternetPrintOrdering, 0xadd36aa8, 0x751a, 0x4579, 0xa2,0x66, 0xd6,0x6f,0x52,0x02,0xcc,0xbb); 38735 38736 #ifdef __cplusplus 38737 class DECLSPEC_UUID("add36aa8-751a-4579-a266-d66f5202ccbb") InternetPrintOrdering; 38738 #ifdef __CRT_UUID_DECL 38739 __CRT_UUID_DECL(InternetPrintOrdering, 0xadd36aa8, 0x751a, 0x4579, 0xa2,0x66, 0xd6,0x6f,0x52,0x02,0xcc,0xbb) 38740 #endif 38741 #endif 38742 38743 /***************************************************************************** 38744 * FolderViewHost coclass 38745 */ 38746 38747 DEFINE_GUID(CLSID_FolderViewHost, 0x20b1cb23, 0x6968, 0x4eb9, 0xb7,0xd4, 0xa6,0x6d,0x00,0xd0,0x7c,0xee); 38748 38749 #ifdef __cplusplus 38750 class DECLSPEC_UUID("20b1cb23-6968-4eb9-b7d4-a66d00d07cee") FolderViewHost; 38751 #ifdef __CRT_UUID_DECL 38752 __CRT_UUID_DECL(FolderViewHost, 0x20b1cb23, 0x6968, 0x4eb9, 0xb7,0xd4, 0xa6,0x6d,0x00,0xd0,0x7c,0xee) 38753 #endif 38754 #endif 38755 38756 /***************************************************************************** 38757 * ExplorerBrowser coclass 38758 */ 38759 38760 DEFINE_GUID(CLSID_ExplorerBrowser, 0x71f96385, 0xddd6, 0x48d3, 0xa0,0xc1, 0xae,0x06,0xe8,0xb0,0x55,0xfb); 38761 38762 #ifdef __cplusplus 38763 class DECLSPEC_UUID("71f96385-ddd6-48d3-a0c1-ae06e8b055fb") ExplorerBrowser; 38764 #ifdef __CRT_UUID_DECL 38765 __CRT_UUID_DECL(ExplorerBrowser, 0x71f96385, 0xddd6, 0x48d3, 0xa0,0xc1, 0xae,0x06,0xe8,0xb0,0x55,0xfb) 38766 #endif 38767 #endif 38768 38769 /***************************************************************************** 38770 * ImageRecompress coclass 38771 */ 38772 38773 DEFINE_GUID(CLSID_ImageRecompress, 0x6e33091c, 0xd2f8, 0x4740, 0xb5,0x5e, 0x2e,0x11,0xd1,0x47,0x7a,0x2c); 38774 38775 #ifdef __cplusplus 38776 class DECLSPEC_UUID("6e33091c-d2f8-4740-b55e-2e11d1477a2c") ImageRecompress; 38777 #ifdef __CRT_UUID_DECL 38778 __CRT_UUID_DECL(ImageRecompress, 0x6e33091c, 0xd2f8, 0x4740, 0xb5,0x5e, 0x2e,0x11,0xd1,0x47,0x7a,0x2c) 38779 #endif 38780 #endif 38781 38782 /***************************************************************************** 38783 * TrayBandSiteService coclass 38784 */ 38785 38786 DEFINE_GUID(CLSID_TrayBandSiteService, 0xf60ad0a0, 0xe5e1, 0x45cb, 0xb5,0x1a, 0xe1,0x5b,0x9f,0x8b,0x29,0x34); 38787 38788 #ifdef __cplusplus 38789 class DECLSPEC_UUID("f60ad0a0-e5e1-45cb-b51a-e15b9f8b2934") TrayBandSiteService; 38790 #ifdef __CRT_UUID_DECL 38791 __CRT_UUID_DECL(TrayBandSiteService, 0xf60ad0a0, 0xe5e1, 0x45cb, 0xb5,0x1a, 0xe1,0x5b,0x9f,0x8b,0x29,0x34) 38792 #endif 38793 #endif 38794 38795 /***************************************************************************** 38796 * TrayDeskBand coclass 38797 */ 38798 38799 DEFINE_GUID(CLSID_TrayDeskBand, 0xe6442437, 0x6c68, 0x4f52, 0x94,0xdd, 0x2c,0xfe,0xd2,0x67,0xef,0xb9); 38800 38801 #ifdef __cplusplus 38802 class DECLSPEC_UUID("e6442437-6c68-4f52-94dd-2cfed267efb9") TrayDeskBand; 38803 #ifdef __CRT_UUID_DECL 38804 __CRT_UUID_DECL(TrayDeskBand, 0xe6442437, 0x6c68, 0x4f52, 0x94,0xdd, 0x2c,0xfe,0xd2,0x67,0xef,0xb9) 38805 #endif 38806 #endif 38807 38808 /***************************************************************************** 38809 * AttachmentServices coclass 38810 */ 38811 38812 DEFINE_GUID(CLSID_AttachmentServices, 0x4125dd96, 0xe03a, 0x4103, 0x8f,0x70, 0xe0,0x59,0x7d,0x80,0x3b,0x9c); 38813 38814 #ifdef __cplusplus 38815 class DECLSPEC_UUID("4125dd96-e03a-4103-8f70-e0597d803b9c") AttachmentServices; 38816 #ifdef __CRT_UUID_DECL 38817 __CRT_UUID_DECL(AttachmentServices, 0x4125dd96, 0xe03a, 0x4103, 0x8f,0x70, 0xe0,0x59,0x7d,0x80,0x3b,0x9c) 38818 #endif 38819 #endif 38820 38821 /***************************************************************************** 38822 * DocPropShellExtension coclass 38823 */ 38824 38825 DEFINE_GUID(CLSID_DocPropShellExtension, 0x883373c3, 0xbf89, 0x11d1, 0xbe,0x35, 0x08,0x00,0x36,0xb1,0x1a,0x03); 38826 38827 #ifdef __cplusplus 38828 class DECLSPEC_UUID("883373c3-bf89-11d1-be35-080036b11a03") DocPropShellExtension; 38829 #ifdef __CRT_UUID_DECL 38830 __CRT_UUID_DECL(DocPropShellExtension, 0x883373c3, 0xbf89, 0x11d1, 0xbe,0x35, 0x08,0x00,0x36,0xb1,0x1a,0x03) 38831 #endif 38832 #endif 38833 38834 /***************************************************************************** 38835 * ShellItem coclass 38836 */ 38837 38838 DEFINE_GUID(CLSID_ShellItem, 0x9ac9fbe1, 0xe0a2, 0x4ad6, 0xb4,0xee, 0xe2,0x12,0x01,0x3e,0xa9,0x17); 38839 38840 #ifdef __cplusplus 38841 class DECLSPEC_UUID("9ac9fbe1-e0a2-4ad6-b4ee-e212013ea917") ShellItem; 38842 #ifdef __CRT_UUID_DECL 38843 __CRT_UUID_DECL(ShellItem, 0x9ac9fbe1, 0xe0a2, 0x4ad6, 0xb4,0xee, 0xe2,0x12,0x01,0x3e,0xa9,0x17) 38844 #endif 38845 #endif 38846 38847 /***************************************************************************** 38848 * NamespaceWalker coclass 38849 */ 38850 38851 DEFINE_GUID(CLSID_NamespaceWalker, 0x72eb61e0, 0x8672, 0x4303, 0x91,0x75, 0xf2,0xe4,0xc6,0x8b,0x2e,0x7c); 38852 38853 #ifdef __cplusplus 38854 class DECLSPEC_UUID("72eb61e0-8672-4303-9175-f2e4c68b2e7c") NamespaceWalker; 38855 #ifdef __CRT_UUID_DECL 38856 __CRT_UUID_DECL(NamespaceWalker, 0x72eb61e0, 0x8672, 0x4303, 0x91,0x75, 0xf2,0xe4,0xc6,0x8b,0x2e,0x7c) 38857 #endif 38858 #endif 38859 38860 /***************************************************************************** 38861 * FileOperation coclass 38862 */ 38863 38864 DEFINE_GUID(CLSID_FileOperation, 0x3ad05575, 0x8857, 0x4850, 0x92,0x77, 0x11,0xb8,0x5b,0xdb,0x8e,0x09); 38865 38866 #ifdef __cplusplus 38867 class DECLSPEC_UUID("3ad05575-8857-4850-9277-11b85bdb8e09") FileOperation; 38868 #ifdef __CRT_UUID_DECL 38869 __CRT_UUID_DECL(FileOperation, 0x3ad05575, 0x8857, 0x4850, 0x92,0x77, 0x11,0xb8,0x5b,0xdb,0x8e,0x09) 38870 #endif 38871 #endif 38872 38873 /***************************************************************************** 38874 * FileOpenDialog coclass 38875 */ 38876 38877 DEFINE_GUID(CLSID_FileOpenDialog, 0xdc1c5a9c, 0xe88a, 0x4dde, 0xa5,0xa1, 0x60,0xf8,0x2a,0x20,0xae,0xf7); 38878 38879 #ifdef __cplusplus 38880 class DECLSPEC_UUID("dc1c5a9c-e88a-4dde-a5a1-60f82a20aef7") FileOpenDialog; 38881 #ifdef __CRT_UUID_DECL 38882 __CRT_UUID_DECL(FileOpenDialog, 0xdc1c5a9c, 0xe88a, 0x4dde, 0xa5,0xa1, 0x60,0xf8,0x2a,0x20,0xae,0xf7) 38883 #endif 38884 #endif 38885 38886 /***************************************************************************** 38887 * FileSaveDialog coclass 38888 */ 38889 38890 DEFINE_GUID(CLSID_FileSaveDialog, 0xc0b4e2f3, 0xba21, 0x4773, 0x8d,0xba, 0x33,0x5e,0xc9,0x46,0xeb,0x8b); 38891 38892 #ifdef __cplusplus 38893 class DECLSPEC_UUID("c0b4e2f3-ba21-4773-8dba-335ec946eb8b") FileSaveDialog; 38894 #ifdef __CRT_UUID_DECL 38895 __CRT_UUID_DECL(FileSaveDialog, 0xc0b4e2f3, 0xba21, 0x4773, 0x8d,0xba, 0x33,0x5e,0xc9,0x46,0xeb,0x8b) 38896 #endif 38897 #endif 38898 38899 /***************************************************************************** 38900 * KnownFolderManager coclass 38901 */ 38902 38903 DEFINE_GUID(CLSID_KnownFolderManager, 0x4df0c730, 0xdf9d, 0x4ae3, 0x91,0x53, 0xaa,0x6b,0x82,0xe9,0x79,0x5a); 38904 38905 #ifdef __cplusplus 38906 class DECLSPEC_UUID("4df0c730-df9d-4ae3-9153-aa6b82e9795a") KnownFolderManager; 38907 #ifdef __CRT_UUID_DECL 38908 __CRT_UUID_DECL(KnownFolderManager, 0x4df0c730, 0xdf9d, 0x4ae3, 0x91,0x53, 0xaa,0x6b,0x82,0xe9,0x79,0x5a) 38909 #endif 38910 #endif 38911 38912 /***************************************************************************** 38913 * FSCopyHandler coclass 38914 */ 38915 38916 DEFINE_GUID(CLSID_FSCopyHandler, 0xd197380a, 0x0a79, 0x4dc8, 0xa0,0x33, 0xed,0x88,0x2c,0x2f,0xa1,0x4b); 38917 38918 #ifdef __cplusplus 38919 class DECLSPEC_UUID("d197380a-0a79-4dc8-a033-ed882c2fa14b") FSCopyHandler; 38920 #ifdef __CRT_UUID_DECL 38921 __CRT_UUID_DECL(FSCopyHandler, 0xd197380a, 0x0a79, 0x4dc8, 0xa0,0x33, 0xed,0x88,0x2c,0x2f,0xa1,0x4b) 38922 #endif 38923 #endif 38924 38925 /***************************************************************************** 38926 * SharingConfigurationManager coclass 38927 */ 38928 38929 DEFINE_GUID(CLSID_SharingConfigurationManager, 0x49f371e1, 0x8c5c, 0x4d9c, 0x9a,0x3b, 0x54,0xa6,0x82,0x7f,0x51,0x3c); 38930 38931 #ifdef __cplusplus 38932 class DECLSPEC_UUID("49f371e1-8c5c-4d9c-9a3b-54a6827f513c") SharingConfigurationManager; 38933 #ifdef __CRT_UUID_DECL 38934 __CRT_UUID_DECL(SharingConfigurationManager, 0x49f371e1, 0x8c5c, 0x4d9c, 0x9a,0x3b, 0x54,0xa6,0x82,0x7f,0x51,0x3c) 38935 #endif 38936 #endif 38937 38938 /***************************************************************************** 38939 * PreviousVersions coclass 38940 */ 38941 38942 DEFINE_GUID(CLSID_PreviousVersions, 0x596ab062, 0xb4d2, 0x4215, 0x9f,0x74, 0xe9,0x10,0x9b,0x0a,0x81,0x53); 38943 38944 #ifdef __cplusplus 38945 class DECLSPEC_UUID("596ab062-b4d2-4215-9f74-e9109b0a8153") PreviousVersions; 38946 #ifdef __CRT_UUID_DECL 38947 __CRT_UUID_DECL(PreviousVersions, 0x596ab062, 0xb4d2, 0x4215, 0x9f,0x74, 0xe9,0x10,0x9b,0x0a,0x81,0x53) 38948 #endif 38949 #endif 38950 38951 /***************************************************************************** 38952 * NetworkConnections coclass 38953 */ 38954 38955 DEFINE_GUID(CLSID_NetworkConnections, 0x7007acc7, 0x3202, 0x11d1, 0xaa,0xd2, 0x00,0x80,0x5f,0xc1,0x27,0x0e); 38956 38957 #ifdef __cplusplus 38958 class DECLSPEC_UUID("7007acc7-3202-11d1-aad2-00805fc1270e") NetworkConnections; 38959 #ifdef __CRT_UUID_DECL 38960 __CRT_UUID_DECL(NetworkConnections, 0x7007acc7, 0x3202, 0x11d1, 0xaa,0xd2, 0x00,0x80,0x5f,0xc1,0x27,0x0e) 38961 #endif 38962 #endif 38963 38964 /***************************************************************************** 38965 * NamespaceTreeControl coclass 38966 */ 38967 38968 DEFINE_GUID(CLSID_NamespaceTreeControl, 0xae054212, 0x3535, 0x4430, 0x83,0xed, 0xd5,0x01,0xaa,0x66,0x80,0xe6); 38969 38970 #ifdef __cplusplus 38971 class DECLSPEC_UUID("ae054212-3535-4430-83ed-d501aa6680e6") NamespaceTreeControl; 38972 #ifdef __CRT_UUID_DECL 38973 __CRT_UUID_DECL(NamespaceTreeControl, 0xae054212, 0x3535, 0x4430, 0x83,0xed, 0xd5,0x01,0xaa,0x66,0x80,0xe6) 38974 #endif 38975 #endif 38976 38977 /***************************************************************************** 38978 * IENamespaceTreeControl coclass 38979 */ 38980 38981 DEFINE_GUID(CLSID_IENamespaceTreeControl, 0xace52d03, 0xe5cd, 0x4b20, 0x82,0xff, 0xe7,0x1b,0x11,0xbe,0xae,0x1d); 38982 38983 #ifdef __cplusplus 38984 class DECLSPEC_UUID("ace52d03-e5cd-4b20-82ff-e71b11beae1d") IENamespaceTreeControl; 38985 #ifdef __CRT_UUID_DECL 38986 __CRT_UUID_DECL(IENamespaceTreeControl, 0xace52d03, 0xe5cd, 0x4b20, 0x82,0xff, 0xe7,0x1b,0x11,0xbe,0xae,0x1d) 38987 #endif 38988 #endif 38989 38990 /***************************************************************************** 38991 * ScheduledTasks coclass 38992 */ 38993 38994 DEFINE_GUID(CLSID_ScheduledTasks, 0xd6277990, 0x4c6a, 0x11cf, 0x8d,0x87, 0x00,0xaa,0x00,0x60,0xf5,0xbf); 38995 38996 #ifdef __cplusplus 38997 class DECLSPEC_UUID("d6277990-4c6a-11cf-8d87-00aa0060f5bf") ScheduledTasks; 38998 #ifdef __CRT_UUID_DECL 38999 __CRT_UUID_DECL(ScheduledTasks, 0xd6277990, 0x4c6a, 0x11cf, 0x8d,0x87, 0x00,0xaa,0x00,0x60,0xf5,0xbf) 39000 #endif 39001 #endif 39002 39003 /***************************************************************************** 39004 * ApplicationAssociationRegistration coclass 39005 */ 39006 39007 DEFINE_GUID(CLSID_ApplicationAssociationRegistration, 0x591209c7, 0x767b, 0x42b2, 0x9f,0xba, 0x44,0xee,0x46,0x15,0xf2,0xc7); 39008 39009 #ifdef __cplusplus 39010 class DECLSPEC_UUID("591209c7-767b-42b2-9fba-44ee4615f2c7") ApplicationAssociationRegistration; 39011 #ifdef __CRT_UUID_DECL 39012 __CRT_UUID_DECL(ApplicationAssociationRegistration, 0x591209c7, 0x767b, 0x42b2, 0x9f,0xba, 0x44,0xee,0x46,0x15,0xf2,0xc7) 39013 #endif 39014 #endif 39015 39016 /***************************************************************************** 39017 * ApplicationAssociationRegistrationUI coclass 39018 */ 39019 39020 DEFINE_GUID(CLSID_ApplicationAssociationRegistrationUI, 0x1968106d, 0xf3b5, 0x44cf, 0x89,0x0e, 0x11,0x6f,0xcb,0x9e,0xce,0xf1); 39021 39022 #ifdef __cplusplus 39023 class DECLSPEC_UUID("1968106d-f3b5-44cf-890e-116fcb9ecef1") ApplicationAssociationRegistrationUI; 39024 #ifdef __CRT_UUID_DECL 39025 __CRT_UUID_DECL(ApplicationAssociationRegistrationUI, 0x1968106d, 0xf3b5, 0x44cf, 0x89,0x0e, 0x11,0x6f,0xcb,0x9e,0xce,0xf1) 39026 #endif 39027 #endif 39028 39029 /***************************************************************************** 39030 * SearchFolderItemFactory coclass 39031 */ 39032 39033 DEFINE_GUID(CLSID_SearchFolderItemFactory, 0x14010e02, 0xbbbd, 0x41f0, 0x88,0xe3, 0xed,0xa3,0x71,0x21,0x65,0x84); 39034 39035 #ifdef __cplusplus 39036 class DECLSPEC_UUID("14010e02-bbbd-41f0-88e3-eda371216584") SearchFolderItemFactory; 39037 #ifdef __CRT_UUID_DECL 39038 __CRT_UUID_DECL(SearchFolderItemFactory, 0x14010e02, 0xbbbd, 0x41f0, 0x88,0xe3, 0xed,0xa3,0x71,0x21,0x65,0x84) 39039 #endif 39040 #endif 39041 39042 /***************************************************************************** 39043 * OpenControlPanel coclass 39044 */ 39045 39046 DEFINE_GUID(CLSID_OpenControlPanel, 0x06622d85, 0x6856, 0x4460, 0x8d,0xe1, 0xa8,0x19,0x21,0xb4,0x1c,0x4b); 39047 39048 #ifdef __cplusplus 39049 class DECLSPEC_UUID("06622d85-6856-4460-8de1-a81921b41c4b") OpenControlPanel; 39050 #ifdef __CRT_UUID_DECL 39051 __CRT_UUID_DECL(OpenControlPanel, 0x06622d85, 0x6856, 0x4460, 0x8d,0xe1, 0xa8,0x19,0x21,0xb4,0x1c,0x4b) 39052 #endif 39053 #endif 39054 39055 /***************************************************************************** 39056 * MailRecipient coclass 39057 */ 39058 39059 DEFINE_GUID(CLSID_MailRecipient, 0x9e56be60, 0xc50f, 0x11cf, 0x9a,0x2c, 0x00,0xa0,0xc9,0x0a,0x90,0xce); 39060 39061 #ifdef __cplusplus 39062 class DECLSPEC_UUID("9e56be60-c50f-11cf-9a2c-00a0c90a90ce") MailRecipient; 39063 #ifdef __CRT_UUID_DECL 39064 __CRT_UUID_DECL(MailRecipient, 0x9e56be60, 0xc50f, 0x11cf, 0x9a,0x2c, 0x00,0xa0,0xc9,0x0a,0x90,0xce) 39065 #endif 39066 #endif 39067 39068 /***************************************************************************** 39069 * NetworkExplorerFolder coclass 39070 */ 39071 39072 DEFINE_GUID(CLSID_NetworkExplorerFolder, 0xf02c1a0d, 0xbe21, 0x4350, 0x88,0xb0, 0x73,0x67,0xfc,0x96,0xef,0x3c); 39073 39074 #ifdef __cplusplus 39075 class DECLSPEC_UUID("f02c1a0d-be21-4350-88b0-7367fc96ef3c") NetworkExplorerFolder; 39076 #ifdef __CRT_UUID_DECL 39077 __CRT_UUID_DECL(NetworkExplorerFolder, 0xf02c1a0d, 0xbe21, 0x4350, 0x88,0xb0, 0x73,0x67,0xfc,0x96,0xef,0x3c) 39078 #endif 39079 #endif 39080 39081 /***************************************************************************** 39082 * DestinationList coclass 39083 */ 39084 39085 DEFINE_GUID(CLSID_DestinationList, 0x77f10cf0, 0x3db5, 0x4966, 0xb5,0x20, 0xb7,0xc5,0x4f,0xd3,0x5e,0xd6); 39086 39087 #ifdef __cplusplus 39088 class DECLSPEC_UUID("77f10cf0-3db5-4966-b520-b7c54fd35ed6") DestinationList; 39089 #ifdef __CRT_UUID_DECL 39090 __CRT_UUID_DECL(DestinationList, 0x77f10cf0, 0x3db5, 0x4966, 0xb5,0x20, 0xb7,0xc5,0x4f,0xd3,0x5e,0xd6) 39091 #endif 39092 #endif 39093 39094 /***************************************************************************** 39095 * ApplicationDestinations coclass 39096 */ 39097 39098 DEFINE_GUID(CLSID_ApplicationDestinations, 0x86c14003, 0x4d6b, 0x4ef3, 0xa7,0xb4, 0x05,0x06,0x66,0x3b,0x2e,0x68); 39099 39100 #ifdef __cplusplus 39101 class DECLSPEC_UUID("86c14003-4d6b-4ef3-a7b4-0506663b2e68") ApplicationDestinations; 39102 #ifdef __CRT_UUID_DECL 39103 __CRT_UUID_DECL(ApplicationDestinations, 0x86c14003, 0x4d6b, 0x4ef3, 0xa7,0xb4, 0x05,0x06,0x66,0x3b,0x2e,0x68) 39104 #endif 39105 #endif 39106 39107 /***************************************************************************** 39108 * ApplicationDocumentLists coclass 39109 */ 39110 39111 DEFINE_GUID(CLSID_ApplicationDocumentLists, 0x86bec222, 0x30f2, 0x47e0, 0x9f,0x25, 0x60,0xd1,0x1c,0xd7,0x5c,0x28); 39112 39113 #ifdef __cplusplus 39114 class DECLSPEC_UUID("86bec222-30f2-47e0-9f25-60d11cd75c28") ApplicationDocumentLists; 39115 #ifdef __CRT_UUID_DECL 39116 __CRT_UUID_DECL(ApplicationDocumentLists, 0x86bec222, 0x30f2, 0x47e0, 0x9f,0x25, 0x60,0xd1,0x1c,0xd7,0x5c,0x28) 39117 #endif 39118 #endif 39119 39120 /***************************************************************************** 39121 * HomeGroup coclass 39122 */ 39123 39124 DEFINE_GUID(CLSID_HomeGroup, 0xde77ba04, 0x3c92, 0x4d11, 0xa1,0xa5, 0x42,0x35,0x2a,0x53,0xe0,0xe3); 39125 39126 #ifdef __cplusplus 39127 class DECLSPEC_UUID("de77ba04-3c92-4d11-a1a5-42352a53e0e3") HomeGroup; 39128 #ifdef __CRT_UUID_DECL 39129 __CRT_UUID_DECL(HomeGroup, 0xde77ba04, 0x3c92, 0x4d11, 0xa1,0xa5, 0x42,0x35,0x2a,0x53,0xe0,0xe3) 39130 #endif 39131 #endif 39132 39133 /***************************************************************************** 39134 * ShellLibrary coclass 39135 */ 39136 39137 DEFINE_GUID(CLSID_ShellLibrary, 0xd9b3211d, 0xe57f, 0x4426, 0xaa,0xef, 0x30,0xa8,0x06,0xad,0xd3,0x97); 39138 39139 #ifdef __cplusplus 39140 class DECLSPEC_UUID("d9b3211d-e57f-4426-aaef-30a806add397") ShellLibrary; 39141 #ifdef __CRT_UUID_DECL 39142 __CRT_UUID_DECL(ShellLibrary, 0xd9b3211d, 0xe57f, 0x4426, 0xaa,0xef, 0x30,0xa8,0x06,0xad,0xd3,0x97) 39143 #endif 39144 #endif 39145 39146 /***************************************************************************** 39147 * AppStartupLink coclass 39148 */ 39149 39150 DEFINE_GUID(CLSID_AppStartupLink, 0x273eb5e7, 0x88b0, 0x4843, 0xbf,0xef, 0xe2,0xc8,0x1d,0x43,0xaa,0xe5); 39151 39152 #ifdef __cplusplus 39153 class DECLSPEC_UUID("273eb5e7-88b0-4843-bfef-e2c81d43aae5") AppStartupLink; 39154 #ifdef __CRT_UUID_DECL 39155 __CRT_UUID_DECL(AppStartupLink, 0x273eb5e7, 0x88b0, 0x4843, 0xbf,0xef, 0xe2,0xc8,0x1d,0x43,0xaa,0xe5) 39156 #endif 39157 #endif 39158 39159 /***************************************************************************** 39160 * EnumerableObjectCollection coclass 39161 */ 39162 39163 DEFINE_GUID(CLSID_EnumerableObjectCollection, 0x2d3468c1, 0x36a7, 0x43b6, 0xac,0x24, 0xd3,0xf0,0x2f,0xd9,0x60,0x7a); 39164 39165 #ifdef __cplusplus 39166 class DECLSPEC_UUID("2d3468c1-36a7-43b6-ac24-d3f02fd9607a") EnumerableObjectCollection; 39167 #ifdef __CRT_UUID_DECL 39168 __CRT_UUID_DECL(EnumerableObjectCollection, 0x2d3468c1, 0x36a7, 0x43b6, 0xac,0x24, 0xd3,0xf0,0x2f,0xd9,0x60,0x7a) 39169 #endif 39170 #endif 39171 39172 /***************************************************************************** 39173 * DesktopGadget coclass 39174 */ 39175 39176 DEFINE_GUID(CLSID_DesktopGadget, 0x924ccc1b, 0x6562, 0x4c85, 0x86,0x57, 0xd1,0x77,0x92,0x52,0x22,0xb6); 39177 39178 #ifdef __cplusplus 39179 class DECLSPEC_UUID("924ccc1b-6562-4c85-8657-d177925222b6") DesktopGadget; 39180 #ifdef __CRT_UUID_DECL 39181 __CRT_UUID_DECL(DesktopGadget, 0x924ccc1b, 0x6562, 0x4c85, 0x86,0x57, 0xd1,0x77,0x92,0x52,0x22,0xb6) 39182 #endif 39183 #endif 39184 39185 /***************************************************************************** 39186 * PlaybackManager coclass 39187 */ 39188 39189 DEFINE_GUID(CLSID_PlaybackManager, 0x29dfa654, 0xa97f, 0x47f0, 0xbf,0x26, 0x9e,0x41,0xfb,0x94,0x88,0xd9); 39190 39191 #ifdef __cplusplus 39192 class DECLSPEC_UUID("29dfa654-a97f-47f0-bf26-9e41fb9488d9") PlaybackManager; 39193 #ifdef __CRT_UUID_DECL 39194 __CRT_UUID_DECL(PlaybackManager, 0x29dfa654, 0xa97f, 0x47f0, 0xbf,0x26, 0x9e,0x41,0xfb,0x94,0x88,0xd9) 39195 #endif 39196 #endif 39197 39198 /***************************************************************************** 39199 * AccessibilityDockingService coclass 39200 */ 39201 39202 DEFINE_GUID(CLSID_AccessibilityDockingService, 0x29ce1d46, 0xb481, 0x4aa0, 0xa0,0x8a, 0xd3,0xeb,0xc8,0xac,0xa4,0x02); 39203 39204 #ifdef __cplusplus 39205 class DECLSPEC_UUID("29ce1d46-b481-4aa0-a08a-d3ebc8aca402") AccessibilityDockingService; 39206 #ifdef __CRT_UUID_DECL 39207 __CRT_UUID_DECL(AccessibilityDockingService, 0x29ce1d46, 0xb481, 0x4aa0, 0xa0,0x8a, 0xd3,0xeb,0xc8,0xac,0xa4,0x02) 39208 #endif 39209 #endif 39210 39211 /***************************************************************************** 39212 * FrameworkInputPane coclass 39213 */ 39214 39215 DEFINE_GUID(CLSID_FrameworkInputPane, 0xd5120aa3, 0x46ba, 0x44c5, 0x82,0x2d, 0xca,0x80,0x92,0xc1,0xfc,0x72); 39216 39217 #ifdef __cplusplus 39218 class DECLSPEC_UUID("d5120aa3-46ba-44c5-822d-ca8092c1fc72") FrameworkInputPane; 39219 #ifdef __CRT_UUID_DECL 39220 __CRT_UUID_DECL(FrameworkInputPane, 0xd5120aa3, 0x46ba, 0x44c5, 0x82,0x2d, 0xca,0x80,0x92,0xc1,0xfc,0x72) 39221 #endif 39222 #endif 39223 39224 /***************************************************************************** 39225 * DefFolderMenu coclass 39226 */ 39227 39228 DEFINE_GUID(CLSID_DefFolderMenu, 0xc63382be, 0x7933, 0x48d0, 0x9a,0xc8, 0x85,0xfb,0x46,0xbe,0x2f,0xdd); 39229 39230 #ifdef __cplusplus 39231 class DECLSPEC_UUID("c63382be-7933-48d0-9ac8-85fb46be2fdd") DefFolderMenu; 39232 #ifdef __CRT_UUID_DECL 39233 __CRT_UUID_DECL(DefFolderMenu, 0xc63382be, 0x7933, 0x48d0, 0x9a,0xc8, 0x85,0xfb,0x46,0xbe,0x2f,0xdd) 39234 #endif 39235 #endif 39236 39237 /***************************************************************************** 39238 * AppVisibility coclass 39239 */ 39240 39241 DEFINE_GUID(CLSID_AppVisibility, 0x7e5fe3d9, 0x985f, 0x4908, 0x91,0xf9, 0xee,0x19,0xf9,0xfd,0x15,0x14); 39242 39243 #ifdef __cplusplus 39244 class DECLSPEC_UUID("7e5fe3d9-985f-4908-91f9-ee19f9fd1514") AppVisibility; 39245 #ifdef __CRT_UUID_DECL 39246 __CRT_UUID_DECL(AppVisibility, 0x7e5fe3d9, 0x985f, 0x4908, 0x91,0xf9, 0xee,0x19,0xf9,0xfd,0x15,0x14) 39247 #endif 39248 #endif 39249 39250 /***************************************************************************** 39251 * AppShellVerbHandler coclass 39252 */ 39253 39254 DEFINE_GUID(CLSID_AppShellVerbHandler, 0x4ed3a719, 0xcea8, 0x4bd9, 0x91,0x0d, 0xe2,0x52,0xf9,0x97,0xaf,0xc2); 39255 39256 #ifdef __cplusplus 39257 class DECLSPEC_UUID("4ed3a719-cea8-4bd9-910d-e252f997afc2") AppShellVerbHandler; 39258 #ifdef __CRT_UUID_DECL 39259 __CRT_UUID_DECL(AppShellVerbHandler, 0x4ed3a719, 0xcea8, 0x4bd9, 0x91,0x0d, 0xe2,0x52,0xf9,0x97,0xaf,0xc2) 39260 #endif 39261 #endif 39262 39263 /***************************************************************************** 39264 * ExecuteUnknown coclass 39265 */ 39266 39267 DEFINE_GUID(CLSID_ExecuteUnknown, 0xe44e9428, 0xbdbc, 0x4987, 0xa0,0x99, 0x40,0xdc,0x8f,0xd2,0x55,0xe7); 39268 39269 #ifdef __cplusplus 39270 class DECLSPEC_UUID("e44e9428-bdbc-4987-a099-40dc8fd255e7") ExecuteUnknown; 39271 #ifdef __CRT_UUID_DECL 39272 __CRT_UUID_DECL(ExecuteUnknown, 0xe44e9428, 0xbdbc, 0x4987, 0xa0,0x99, 0x40,0xdc,0x8f,0xd2,0x55,0xe7) 39273 #endif 39274 #endif 39275 39276 /***************************************************************************** 39277 * PackageDebugSettings coclass 39278 */ 39279 39280 DEFINE_GUID(CLSID_PackageDebugSettings, 0xb1aec16f, 0x2383, 0x4852, 0xb0,0xe9, 0x8f,0x0b,0x1d,0xc6,0x6b,0x4d); 39281 39282 #ifdef __cplusplus 39283 class DECLSPEC_UUID("b1aec16f-2383-4852-b0e9-8f0b1dc66b4d") PackageDebugSettings; 39284 #ifdef __CRT_UUID_DECL 39285 __CRT_UUID_DECL(PackageDebugSettings, 0xb1aec16f, 0x2383, 0x4852, 0xb0,0xe9, 0x8f,0x0b,0x1d,0xc6,0x6b,0x4d) 39286 #endif 39287 #endif 39288 39289 /***************************************************************************** 39290 * ApplicationActivationManager coclass 39291 */ 39292 39293 DEFINE_GUID(CLSID_ApplicationActivationManager, 0x45ba127d, 0x10a8, 0x46ea, 0x8a,0xb7, 0x56,0xea,0x90,0x78,0x94,0x3c); 39294 39295 #ifdef __cplusplus 39296 class DECLSPEC_UUID("45ba127d-10a8-46ea-8ab7-56ea9078943c") ApplicationActivationManager; 39297 #ifdef __CRT_UUID_DECL 39298 __CRT_UUID_DECL(ApplicationActivationManager, 0x45ba127d, 0x10a8, 0x46ea, 0x8a,0xb7, 0x56,0xea,0x90,0x78,0x94,0x3c) 39299 #endif 39300 #endif 39301 39302 /***************************************************************************** 39303 * ApplicationDesignModeSettings coclass 39304 */ 39305 39306 DEFINE_GUID(CLSID_ApplicationDesignModeSettings, 0x958a6fb5, 0xdcb2, 0x4faf, 0xaa,0xfd, 0x7f,0xb0,0x54,0xad,0x1a,0x3b); 39307 39308 #ifdef __cplusplus 39309 class DECLSPEC_UUID("958a6fb5-dcb2-4faf-aafd-7fb054ad1a3b") ApplicationDesignModeSettings; 39310 #ifdef __CRT_UUID_DECL 39311 __CRT_UUID_DECL(ApplicationDesignModeSettings, 0x958a6fb5, 0xdcb2, 0x4faf, 0xaa,0xfd, 0x7f,0xb0,0x54,0xad,0x1a,0x3b) 39312 #endif 39313 #endif 39314 39315 /***************************************************************************** 39316 * ExecuteFolder coclass 39317 */ 39318 39319 DEFINE_GUID(CLSID_ExecuteFolder, 0x11dbb47c, 0xa525, 0x400b, 0x9e,0x80, 0xa5,0x46,0x15,0xa0,0x90,0xc0); 39320 39321 #ifdef __cplusplus 39322 class DECLSPEC_UUID("11dbb47c-a525-400b-9e80-a54615a090c0") ExecuteFolder; 39323 #ifdef __CRT_UUID_DECL 39324 __CRT_UUID_DECL(ExecuteFolder, 0x11dbb47c, 0xa525, 0x400b, 0x9e,0x80, 0xa5,0x46,0x15,0xa0,0x90,0xc0) 39325 #endif 39326 #endif 39327 39328 39329 #if NTDDI_VERSION >= NTDDI_VISTA 39330 SHSTDAPI SHGetTemporaryPropertyForItem(IShellItem *psi, REFPROPERTYKEY propkey, PROPVARIANT *ppropvar); 39331 SHSTDAPI SHSetTemporaryPropertyForItem(IShellItem *psi, REFPROPERTYKEY propkey, REFPROPVARIANT propvar); 39332 #endif 39333 39334 #if NTDDI_VERSION >= NTDDI_WIN7 39335 #if _WIN32_IE >= _WIN32_IE_IE70 39336 typedef enum LIBRARYMANAGEDIALOGOPTIONS { 39337 LMD_DEFAULT = 0x0, 39338 LMD_ALLOWUNINDEXABLENETWORKLOCATIONS = 0x1 39339 } LIBRARYMANAGEDIALOGOPTIONS; 39340 39341 DEFINE_ENUM_FLAG_OPERATORS(LIBRARYMANAGEDIALOGOPTIONS) 39342 39343 SHSTDAPI SHShowManageLibraryUI(IShellItem *psiLibrary, HWND hwndOwner, LPCWSTR pszTitle, LPCWSTR pszInstruction, LIBRARYMANAGEDIALOGOPTIONS lmdOptions); 39344 SHSTDAPI SHResolveLibrary(IShellItem *psiLibrary); 39345 #if defined(__cplusplus) && !defined(CINTERFACE) SHCreateLibrary(REFIID riid,void ** ppv)39346 __forceinline HRESULT SHCreateLibrary(REFIID riid, void **ppv) { 39347 return CoCreateInstance(CLSID_ShellLibrary, NULL, CLSCTX_INPROC_SERVER, riid, ppv); 39348 } 39349 SHLoadLibraryFromItem(IShellItem * psiLibrary,DWORD grfMode,REFIID riid,void ** ppv)39350 __forceinline HRESULT SHLoadLibraryFromItem(IShellItem *psiLibrary, DWORD grfMode, REFIID riid, void **ppv) { 39351 IShellLibrary *plib; 39352 HRESULT hr; 39353 39354 *ppv = NULL; 39355 hr = CoCreateInstance(CLSID_ShellLibrary, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&plib)); 39356 if (SUCCEEDED(hr)) { 39357 hr = plib->LoadLibraryFromItem(psiLibrary, grfMode); 39358 if (SUCCEEDED(hr)) 39359 hr = plib->QueryInterface(riid, ppv); 39360 plib->Release(); 39361 } 39362 return hr; 39363 } 39364 SHLoadLibraryFromKnownFolder(REFKNOWNFOLDERID kfidLibrary,DWORD grfMode,REFIID riid,void ** ppv)39365 __forceinline HRESULT SHLoadLibraryFromKnownFolder(REFKNOWNFOLDERID kfidLibrary, DWORD grfMode, REFIID riid, void **ppv) { 39366 IShellLibrary *plib; 39367 HRESULT hr; 39368 39369 *ppv = NULL; 39370 hr = CoCreateInstance(CLSID_ShellLibrary, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&plib)); 39371 if (SUCCEEDED(hr)) { 39372 hr = plib->LoadLibraryFromKnownFolder(kfidLibrary, grfMode); 39373 if (SUCCEEDED(hr)) 39374 hr = plib->QueryInterface(riid, ppv); 39375 plib->Release(); 39376 } 39377 return hr; 39378 } 39379 SHLoadLibraryFromParsingName(PCWSTR pszParsingName,DWORD grfMode,REFIID riid,void ** ppv)39380 __forceinline HRESULT SHLoadLibraryFromParsingName(PCWSTR pszParsingName, DWORD grfMode, REFIID riid, void **ppv) { 39381 IShellItem *psiLibrary; 39382 HRESULT hr; 39383 39384 *ppv = NULL; 39385 hr = SHCreateItemFromParsingName(pszParsingName, NULL, IID_PPV_ARGS(&psiLibrary)); 39386 if (SUCCEEDED(hr)) { 39387 hr = SHLoadLibraryFromItem(psiLibrary, grfMode, riid, ppv); 39388 psiLibrary->Release(); 39389 } 39390 return hr; 39391 } 39392 SHAddFolderPathToLibrary(IShellLibrary * plib,PCWSTR pszFolderPath)39393 __forceinline HRESULT SHAddFolderPathToLibrary(IShellLibrary *plib, PCWSTR pszFolderPath) { 39394 IShellItem *psiFolder; 39395 HRESULT hr = SHCreateItemFromParsingName(pszFolderPath, NULL, IID_PPV_ARGS(&psiFolder)); 39396 39397 if (SUCCEEDED(hr)) { 39398 hr = plib->AddFolder(psiFolder); 39399 psiFolder->Release(); 39400 } 39401 return hr; 39402 } 39403 SHRemoveFolderPathFromLibrary(IShellLibrary * plib,PCWSTR pszFolderPath)39404 __forceinline HRESULT SHRemoveFolderPathFromLibrary(IShellLibrary *plib, PCWSTR pszFolderPath) { 39405 PIDLIST_ABSOLUTE pidlFolder = SHSimpleIDListFromPath(pszFolderPath); 39406 HRESULT hr = pidlFolder ? S_OK : E_INVALIDARG; 39407 39408 if (SUCCEEDED(hr)) { 39409 IShellItem *psiFolder; 39410 39411 hr = SHCreateItemFromIDList(pidlFolder, IID_PPV_ARGS(&psiFolder)); 39412 if (SUCCEEDED(hr)) { 39413 hr = plib->RemoveFolder(psiFolder); 39414 psiFolder->Release(); 39415 } 39416 CoTaskMemFree(pidlFolder); 39417 } 39418 return hr; 39419 } 39420 SHResolveFolderPathInLibrary(IShellLibrary * plib,PCWSTR pszFolderPath,DWORD dwTimeout,PWSTR * ppszResolvedPath)39421 __forceinline HRESULT SHResolveFolderPathInLibrary(IShellLibrary *plib, PCWSTR pszFolderPath, DWORD dwTimeout, PWSTR *ppszResolvedPath) { 39422 *ppszResolvedPath = NULL; 39423 PIDLIST_ABSOLUTE pidlFolder = SHSimpleIDListFromPath(pszFolderPath); 39424 HRESULT hr = pidlFolder ? S_OK : E_INVALIDARG; 39425 if (SUCCEEDED(hr)) { 39426 IShellItem *psiFolder; 39427 39428 hr = SHCreateItemFromIDList(pidlFolder, IID_PPV_ARGS(&psiFolder)); 39429 if (SUCCEEDED(hr)) { 39430 IShellItem *psiResolved; 39431 39432 hr = plib->ResolveFolder(psiFolder, dwTimeout, IID_PPV_ARGS(&psiResolved)); 39433 if (SUCCEEDED(hr)) { 39434 hr = psiResolved->GetDisplayName(SIGDN_DESKTOPABSOLUTEPARSING, ppszResolvedPath); 39435 psiResolved->Release(); 39436 } 39437 psiFolder->Release(); 39438 } 39439 CoTaskMemFree(pidlFolder); 39440 } 39441 return hr; 39442 } 39443 SHSaveLibraryInFolderPath(IShellLibrary * plib,PCWSTR pszFolderPath,PCWSTR pszLibraryName,LIBRARYSAVEFLAGS lsf,PWSTR * ppszSavedToPath)39444 __forceinline HRESULT SHSaveLibraryInFolderPath(IShellLibrary *plib, PCWSTR pszFolderPath, PCWSTR pszLibraryName, LIBRARYSAVEFLAGS lsf, PWSTR *ppszSavedToPath) { 39445 IShellItem *psiFolder; 39446 HRESULT hr; 39447 39448 if (ppszSavedToPath) 39449 *ppszSavedToPath = NULL; 39450 hr = SHCreateItemFromParsingName(pszFolderPath, NULL, IID_PPV_ARGS(&psiFolder)); 39451 if (SUCCEEDED(hr)) { 39452 IShellItem *psiSavedTo; 39453 39454 hr = plib->Save(psiFolder, pszLibraryName, lsf, &psiSavedTo); 39455 if (SUCCEEDED(hr)) { 39456 if (ppszSavedToPath) 39457 hr = psiSavedTo->GetDisplayName(SIGDN_DESKTOPABSOLUTEPARSING, ppszSavedToPath); 39458 psiSavedTo->Release(); 39459 } 39460 psiFolder->Release(); 39461 } 39462 return hr; 39463 } 39464 #endif 39465 #endif 39466 #endif 39467 39468 #if NTDDI_VERSION >= NTDDI_VISTA 39469 /***************************************************************************** 39470 * IAssocHandlerInvoker interface 39471 */ 39472 #ifndef __IAssocHandlerInvoker_INTERFACE_DEFINED__ 39473 #define __IAssocHandlerInvoker_INTERFACE_DEFINED__ 39474 39475 DEFINE_GUID(IID_IAssocHandlerInvoker, 0x92218cab, 0xecaa, 0x4335, 0x81,0x33, 0x80,0x7f,0xd2,0x34,0xc2,0xee); 39476 #if defined(__cplusplus) && !defined(CINTERFACE) 39477 MIDL_INTERFACE("92218cab-ecaa-4335-8133-807fd234c2ee") 39478 IAssocHandlerInvoker : public IUnknown 39479 { 39480 virtual HRESULT STDMETHODCALLTYPE SupportsSelection( 39481 ) = 0; 39482 39483 virtual HRESULT STDMETHODCALLTYPE Invoke( 39484 ) = 0; 39485 39486 }; 39487 #ifdef __CRT_UUID_DECL 39488 __CRT_UUID_DECL(IAssocHandlerInvoker, 0x92218cab, 0xecaa, 0x4335, 0x81,0x33, 0x80,0x7f,0xd2,0x34,0xc2,0xee) 39489 #endif 39490 #else 39491 typedef struct IAssocHandlerInvokerVtbl { 39492 BEGIN_INTERFACE 39493 39494 /*** IUnknown methods ***/ 39495 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 39496 IAssocHandlerInvoker* This, 39497 REFIID riid, 39498 void **ppvObject); 39499 39500 ULONG (STDMETHODCALLTYPE *AddRef)( 39501 IAssocHandlerInvoker* This); 39502 39503 ULONG (STDMETHODCALLTYPE *Release)( 39504 IAssocHandlerInvoker* This); 39505 39506 /*** IAssocHandlerInvoker methods ***/ 39507 HRESULT (STDMETHODCALLTYPE *SupportsSelection)( 39508 IAssocHandlerInvoker* This); 39509 39510 HRESULT (STDMETHODCALLTYPE *Invoke)( 39511 IAssocHandlerInvoker* This); 39512 39513 END_INTERFACE 39514 } IAssocHandlerInvokerVtbl; 39515 interface IAssocHandlerInvoker { 39516 CONST_VTBL IAssocHandlerInvokerVtbl* lpVtbl; 39517 }; 39518 39519 #ifdef COBJMACROS 39520 #ifndef WIDL_C_INLINE_WRAPPERS 39521 /*** IUnknown methods ***/ 39522 #define IAssocHandlerInvoker_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 39523 #define IAssocHandlerInvoker_AddRef(This) (This)->lpVtbl->AddRef(This) 39524 #define IAssocHandlerInvoker_Release(This) (This)->lpVtbl->Release(This) 39525 /*** IAssocHandlerInvoker methods ***/ 39526 #define IAssocHandlerInvoker_SupportsSelection(This) (This)->lpVtbl->SupportsSelection(This) 39527 #define IAssocHandlerInvoker_Invoke(This) (This)->lpVtbl->Invoke(This) 39528 #else 39529 /*** IUnknown methods ***/ 39530 static FORCEINLINE HRESULT IAssocHandlerInvoker_QueryInterface(IAssocHandlerInvoker* This,REFIID riid,void **ppvObject) { 39531 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 39532 } 39533 static FORCEINLINE ULONG IAssocHandlerInvoker_AddRef(IAssocHandlerInvoker* This) { 39534 return This->lpVtbl->AddRef(This); 39535 } 39536 static FORCEINLINE ULONG IAssocHandlerInvoker_Release(IAssocHandlerInvoker* This) { 39537 return This->lpVtbl->Release(This); 39538 } 39539 /*** IAssocHandlerInvoker methods ***/ 39540 static FORCEINLINE HRESULT IAssocHandlerInvoker_SupportsSelection(IAssocHandlerInvoker* This) { 39541 return This->lpVtbl->SupportsSelection(This); 39542 } 39543 static FORCEINLINE HRESULT IAssocHandlerInvoker_Invoke(IAssocHandlerInvoker* This) { 39544 return This->lpVtbl->Invoke(This); 39545 } 39546 #endif 39547 #endif 39548 39549 #endif 39550 39551 HRESULT STDMETHODCALLTYPE IAssocHandlerInvoker_SupportsSelection_Proxy( 39552 IAssocHandlerInvoker* This); 39553 void __RPC_STUB IAssocHandlerInvoker_SupportsSelection_Stub( 39554 IRpcStubBuffer* This, 39555 IRpcChannelBuffer* pRpcChannelBuffer, 39556 PRPC_MESSAGE pRpcMessage, 39557 DWORD* pdwStubPhase); 39558 HRESULT STDMETHODCALLTYPE IAssocHandlerInvoker_Invoke_Proxy( 39559 IAssocHandlerInvoker* This); 39560 void __RPC_STUB IAssocHandlerInvoker_Invoke_Stub( 39561 IRpcStubBuffer* This, 39562 IRpcChannelBuffer* pRpcChannelBuffer, 39563 PRPC_MESSAGE pRpcMessage, 39564 DWORD* pdwStubPhase); 39565 39566 #endif /* __IAssocHandlerInvoker_INTERFACE_DEFINED__ */ 39567 39568 39569 /***************************************************************************** 39570 * IAssocHandler interface 39571 */ 39572 #ifndef __IAssocHandler_INTERFACE_DEFINED__ 39573 #define __IAssocHandler_INTERFACE_DEFINED__ 39574 39575 DEFINE_GUID(IID_IAssocHandler, 0xf04061ac, 0x1659, 0x4a3f, 0xa9,0x54, 0x77,0x5a,0xa5,0x7f,0xc0,0x83); 39576 #if defined(__cplusplus) && !defined(CINTERFACE) 39577 MIDL_INTERFACE("f04061ac-1659-4a3f-a954-775aa57fc083") 39578 IAssocHandler : public IUnknown 39579 { 39580 virtual HRESULT STDMETHODCALLTYPE GetName( 39581 LPWSTR *ppsz) = 0; 39582 39583 virtual HRESULT STDMETHODCALLTYPE GetUIName( 39584 LPWSTR *ppsz) = 0; 39585 39586 virtual HRESULT STDMETHODCALLTYPE GetIconLocation( 39587 LPWSTR *ppszPath, 39588 int *pIndex) = 0; 39589 39590 virtual HRESULT STDMETHODCALLTYPE IsRecommended( 39591 ) = 0; 39592 39593 virtual HRESULT STDMETHODCALLTYPE MakeDefault( 39594 LPCWSTR pszDescription) = 0; 39595 39596 virtual HRESULT STDMETHODCALLTYPE Invoke( 39597 IDataObject *pdo) = 0; 39598 39599 virtual HRESULT STDMETHODCALLTYPE CreateInvoker( 39600 IDataObject *pdo, 39601 IAssocHandlerInvoker **ppInvoker) = 0; 39602 39603 }; 39604 #ifdef __CRT_UUID_DECL 39605 __CRT_UUID_DECL(IAssocHandler, 0xf04061ac, 0x1659, 0x4a3f, 0xa9,0x54, 0x77,0x5a,0xa5,0x7f,0xc0,0x83) 39606 #endif 39607 #else 39608 typedef struct IAssocHandlerVtbl { 39609 BEGIN_INTERFACE 39610 39611 /*** IUnknown methods ***/ 39612 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 39613 IAssocHandler* This, 39614 REFIID riid, 39615 void **ppvObject); 39616 39617 ULONG (STDMETHODCALLTYPE *AddRef)( 39618 IAssocHandler* This); 39619 39620 ULONG (STDMETHODCALLTYPE *Release)( 39621 IAssocHandler* This); 39622 39623 /*** IAssocHandler methods ***/ 39624 HRESULT (STDMETHODCALLTYPE *GetName)( 39625 IAssocHandler* This, 39626 LPWSTR *ppsz); 39627 39628 HRESULT (STDMETHODCALLTYPE *GetUIName)( 39629 IAssocHandler* This, 39630 LPWSTR *ppsz); 39631 39632 HRESULT (STDMETHODCALLTYPE *GetIconLocation)( 39633 IAssocHandler* This, 39634 LPWSTR *ppszPath, 39635 int *pIndex); 39636 39637 HRESULT (STDMETHODCALLTYPE *IsRecommended)( 39638 IAssocHandler* This); 39639 39640 HRESULT (STDMETHODCALLTYPE *MakeDefault)( 39641 IAssocHandler* This, 39642 LPCWSTR pszDescription); 39643 39644 HRESULT (STDMETHODCALLTYPE *Invoke)( 39645 IAssocHandler* This, 39646 IDataObject *pdo); 39647 39648 HRESULT (STDMETHODCALLTYPE *CreateInvoker)( 39649 IAssocHandler* This, 39650 IDataObject *pdo, 39651 IAssocHandlerInvoker **ppInvoker); 39652 39653 END_INTERFACE 39654 } IAssocHandlerVtbl; 39655 interface IAssocHandler { 39656 CONST_VTBL IAssocHandlerVtbl* lpVtbl; 39657 }; 39658 39659 #ifdef COBJMACROS 39660 #ifndef WIDL_C_INLINE_WRAPPERS 39661 /*** IUnknown methods ***/ 39662 #define IAssocHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 39663 #define IAssocHandler_AddRef(This) (This)->lpVtbl->AddRef(This) 39664 #define IAssocHandler_Release(This) (This)->lpVtbl->Release(This) 39665 /*** IAssocHandler methods ***/ 39666 #define IAssocHandler_GetName(This,ppsz) (This)->lpVtbl->GetName(This,ppsz) 39667 #define IAssocHandler_GetUIName(This,ppsz) (This)->lpVtbl->GetUIName(This,ppsz) 39668 #define IAssocHandler_GetIconLocation(This,ppszPath,pIndex) (This)->lpVtbl->GetIconLocation(This,ppszPath,pIndex) 39669 #define IAssocHandler_IsRecommended(This) (This)->lpVtbl->IsRecommended(This) 39670 #define IAssocHandler_MakeDefault(This,pszDescription) (This)->lpVtbl->MakeDefault(This,pszDescription) 39671 #define IAssocHandler_Invoke(This,pdo) (This)->lpVtbl->Invoke(This,pdo) 39672 #define IAssocHandler_CreateInvoker(This,pdo,ppInvoker) (This)->lpVtbl->CreateInvoker(This,pdo,ppInvoker) 39673 #else 39674 /*** IUnknown methods ***/ 39675 static FORCEINLINE HRESULT IAssocHandler_QueryInterface(IAssocHandler* This,REFIID riid,void **ppvObject) { 39676 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 39677 } 39678 static FORCEINLINE ULONG IAssocHandler_AddRef(IAssocHandler* This) { 39679 return This->lpVtbl->AddRef(This); 39680 } 39681 static FORCEINLINE ULONG IAssocHandler_Release(IAssocHandler* This) { 39682 return This->lpVtbl->Release(This); 39683 } 39684 /*** IAssocHandler methods ***/ 39685 static FORCEINLINE HRESULT IAssocHandler_GetName(IAssocHandler* This,LPWSTR *ppsz) { 39686 return This->lpVtbl->GetName(This,ppsz); 39687 } 39688 static FORCEINLINE HRESULT IAssocHandler_GetUIName(IAssocHandler* This,LPWSTR *ppsz) { 39689 return This->lpVtbl->GetUIName(This,ppsz); 39690 } 39691 static FORCEINLINE HRESULT IAssocHandler_GetIconLocation(IAssocHandler* This,LPWSTR *ppszPath,int *pIndex) { 39692 return This->lpVtbl->GetIconLocation(This,ppszPath,pIndex); 39693 } 39694 static FORCEINLINE HRESULT IAssocHandler_IsRecommended(IAssocHandler* This) { 39695 return This->lpVtbl->IsRecommended(This); 39696 } 39697 static FORCEINLINE HRESULT IAssocHandler_MakeDefault(IAssocHandler* This,LPCWSTR pszDescription) { 39698 return This->lpVtbl->MakeDefault(This,pszDescription); 39699 } 39700 static FORCEINLINE HRESULT IAssocHandler_Invoke(IAssocHandler* This,IDataObject *pdo) { 39701 return This->lpVtbl->Invoke(This,pdo); 39702 } 39703 static FORCEINLINE HRESULT IAssocHandler_CreateInvoker(IAssocHandler* This,IDataObject *pdo,IAssocHandlerInvoker **ppInvoker) { 39704 return This->lpVtbl->CreateInvoker(This,pdo,ppInvoker); 39705 } 39706 #endif 39707 #endif 39708 39709 #endif 39710 39711 HRESULT STDMETHODCALLTYPE IAssocHandler_GetName_Proxy( 39712 IAssocHandler* This, 39713 LPWSTR *ppsz); 39714 void __RPC_STUB IAssocHandler_GetName_Stub( 39715 IRpcStubBuffer* This, 39716 IRpcChannelBuffer* pRpcChannelBuffer, 39717 PRPC_MESSAGE pRpcMessage, 39718 DWORD* pdwStubPhase); 39719 HRESULT STDMETHODCALLTYPE IAssocHandler_GetUIName_Proxy( 39720 IAssocHandler* This, 39721 LPWSTR *ppsz); 39722 void __RPC_STUB IAssocHandler_GetUIName_Stub( 39723 IRpcStubBuffer* This, 39724 IRpcChannelBuffer* pRpcChannelBuffer, 39725 PRPC_MESSAGE pRpcMessage, 39726 DWORD* pdwStubPhase); 39727 HRESULT STDMETHODCALLTYPE IAssocHandler_GetIconLocation_Proxy( 39728 IAssocHandler* This, 39729 LPWSTR *ppszPath, 39730 int *pIndex); 39731 void __RPC_STUB IAssocHandler_GetIconLocation_Stub( 39732 IRpcStubBuffer* This, 39733 IRpcChannelBuffer* pRpcChannelBuffer, 39734 PRPC_MESSAGE pRpcMessage, 39735 DWORD* pdwStubPhase); 39736 HRESULT STDMETHODCALLTYPE IAssocHandler_IsRecommended_Proxy( 39737 IAssocHandler* This); 39738 void __RPC_STUB IAssocHandler_IsRecommended_Stub( 39739 IRpcStubBuffer* This, 39740 IRpcChannelBuffer* pRpcChannelBuffer, 39741 PRPC_MESSAGE pRpcMessage, 39742 DWORD* pdwStubPhase); 39743 HRESULT STDMETHODCALLTYPE IAssocHandler_MakeDefault_Proxy( 39744 IAssocHandler* This, 39745 LPCWSTR pszDescription); 39746 void __RPC_STUB IAssocHandler_MakeDefault_Stub( 39747 IRpcStubBuffer* This, 39748 IRpcChannelBuffer* pRpcChannelBuffer, 39749 PRPC_MESSAGE pRpcMessage, 39750 DWORD* pdwStubPhase); 39751 HRESULT STDMETHODCALLTYPE IAssocHandler_Invoke_Proxy( 39752 IAssocHandler* This, 39753 IDataObject *pdo); 39754 void __RPC_STUB IAssocHandler_Invoke_Stub( 39755 IRpcStubBuffer* This, 39756 IRpcChannelBuffer* pRpcChannelBuffer, 39757 PRPC_MESSAGE pRpcMessage, 39758 DWORD* pdwStubPhase); 39759 HRESULT STDMETHODCALLTYPE IAssocHandler_CreateInvoker_Proxy( 39760 IAssocHandler* This, 39761 IDataObject *pdo, 39762 IAssocHandlerInvoker **ppInvoker); 39763 void __RPC_STUB IAssocHandler_CreateInvoker_Stub( 39764 IRpcStubBuffer* This, 39765 IRpcChannelBuffer* pRpcChannelBuffer, 39766 PRPC_MESSAGE pRpcMessage, 39767 DWORD* pdwStubPhase); 39768 39769 #endif /* __IAssocHandler_INTERFACE_DEFINED__ */ 39770 39771 39772 /***************************************************************************** 39773 * IEnumAssocHandlers interface 39774 */ 39775 #ifndef __IEnumAssocHandlers_INTERFACE_DEFINED__ 39776 #define __IEnumAssocHandlers_INTERFACE_DEFINED__ 39777 39778 DEFINE_GUID(IID_IEnumAssocHandlers, 0x973810ae, 0x9599, 0x4b88, 0x9e,0x4d, 0x6e,0xe9,0x8c,0x95,0x52,0xda); 39779 #if defined(__cplusplus) && !defined(CINTERFACE) 39780 MIDL_INTERFACE("973810ae-9599-4b88-9e4d-6ee98c9552da") 39781 IEnumAssocHandlers : public IUnknown 39782 { 39783 virtual HRESULT STDMETHODCALLTYPE Next( 39784 ULONG celt, 39785 IAssocHandler **rgelt, 39786 ULONG *pceltFetched) = 0; 39787 39788 }; 39789 #ifdef __CRT_UUID_DECL 39790 __CRT_UUID_DECL(IEnumAssocHandlers, 0x973810ae, 0x9599, 0x4b88, 0x9e,0x4d, 0x6e,0xe9,0x8c,0x95,0x52,0xda) 39791 #endif 39792 #else 39793 typedef struct IEnumAssocHandlersVtbl { 39794 BEGIN_INTERFACE 39795 39796 /*** IUnknown methods ***/ 39797 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 39798 IEnumAssocHandlers* This, 39799 REFIID riid, 39800 void **ppvObject); 39801 39802 ULONG (STDMETHODCALLTYPE *AddRef)( 39803 IEnumAssocHandlers* This); 39804 39805 ULONG (STDMETHODCALLTYPE *Release)( 39806 IEnumAssocHandlers* This); 39807 39808 /*** IEnumAssocHandlers methods ***/ 39809 HRESULT (STDMETHODCALLTYPE *Next)( 39810 IEnumAssocHandlers* This, 39811 ULONG celt, 39812 IAssocHandler **rgelt, 39813 ULONG *pceltFetched); 39814 39815 END_INTERFACE 39816 } IEnumAssocHandlersVtbl; 39817 interface IEnumAssocHandlers { 39818 CONST_VTBL IEnumAssocHandlersVtbl* lpVtbl; 39819 }; 39820 39821 #ifdef COBJMACROS 39822 #ifndef WIDL_C_INLINE_WRAPPERS 39823 /*** IUnknown methods ***/ 39824 #define IEnumAssocHandlers_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 39825 #define IEnumAssocHandlers_AddRef(This) (This)->lpVtbl->AddRef(This) 39826 #define IEnumAssocHandlers_Release(This) (This)->lpVtbl->Release(This) 39827 /*** IEnumAssocHandlers methods ***/ 39828 #define IEnumAssocHandlers_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) 39829 #else 39830 /*** IUnknown methods ***/ 39831 static FORCEINLINE HRESULT IEnumAssocHandlers_QueryInterface(IEnumAssocHandlers* This,REFIID riid,void **ppvObject) { 39832 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 39833 } 39834 static FORCEINLINE ULONG IEnumAssocHandlers_AddRef(IEnumAssocHandlers* This) { 39835 return This->lpVtbl->AddRef(This); 39836 } 39837 static FORCEINLINE ULONG IEnumAssocHandlers_Release(IEnumAssocHandlers* This) { 39838 return This->lpVtbl->Release(This); 39839 } 39840 /*** IEnumAssocHandlers methods ***/ 39841 static FORCEINLINE HRESULT IEnumAssocHandlers_Next(IEnumAssocHandlers* This,ULONG celt,IAssocHandler **rgelt,ULONG *pceltFetched) { 39842 return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); 39843 } 39844 #endif 39845 #endif 39846 39847 #endif 39848 39849 HRESULT STDMETHODCALLTYPE IEnumAssocHandlers_Next_Proxy( 39850 IEnumAssocHandlers* This, 39851 ULONG celt, 39852 IAssocHandler **rgelt, 39853 ULONG *pceltFetched); 39854 void __RPC_STUB IEnumAssocHandlers_Next_Stub( 39855 IRpcStubBuffer* This, 39856 IRpcChannelBuffer* pRpcChannelBuffer, 39857 PRPC_MESSAGE pRpcMessage, 39858 DWORD* pdwStubPhase); 39859 39860 #endif /* __IEnumAssocHandlers_INTERFACE_DEFINED__ */ 39861 39862 39863 typedef enum ASSOC_FILTER { 39864 ASSOC_FILTER_NONE = 0x0, 39865 ASSOC_FILTER_RECOMMENDED = 0x1 39866 } ASSOC_FILTER; 39867 39868 DEFINE_ENUM_FLAG_OPERATORS(ASSOC_FILTER) 39869 39870 SHSTDAPI SHAssocEnumHandlers(PCWSTR pszExtra, ASSOC_FILTER afFilter, IEnumAssocHandlers **ppEnumHandler); 39871 #endif 39872 39873 #if NTDDI_VERSION >= NTDDI_WIN7 39874 SHSTDAPI SHAssocEnumHandlersForProtocolByApplication(PCWSTR protocol, REFIID riid, void **enumHandlers); 39875 #endif 39876 39877 #if NTDDI_VERSION >= NTDDI_WIN8 39878 /***************************************************************************** 39879 * IDataObjectProvider interface 39880 */ 39881 #ifndef __IDataObjectProvider_INTERFACE_DEFINED__ 39882 #define __IDataObjectProvider_INTERFACE_DEFINED__ 39883 39884 DEFINE_GUID(IID_IDataObjectProvider, 0x3d25f6d6, 0x4b2a, 0x433c, 0x91,0x84, 0x7c,0x33,0xad,0x35,0xd0,0x01); 39885 #if defined(__cplusplus) && !defined(CINTERFACE) 39886 MIDL_INTERFACE("3d25f6d6-4b2a-433c-9184-7c33ad35d001") 39887 IDataObjectProvider : public IUnknown 39888 { 39889 virtual HRESULT STDMETHODCALLTYPE GetDataObject( 39890 IDataObject **dataObject) = 0; 39891 39892 virtual HRESULT STDMETHODCALLTYPE SetDataObject( 39893 IDataObject *dataObject) = 0; 39894 39895 }; 39896 #ifdef __CRT_UUID_DECL 39897 __CRT_UUID_DECL(IDataObjectProvider, 0x3d25f6d6, 0x4b2a, 0x433c, 0x91,0x84, 0x7c,0x33,0xad,0x35,0xd0,0x01) 39898 #endif 39899 #else 39900 typedef struct IDataObjectProviderVtbl { 39901 BEGIN_INTERFACE 39902 39903 /*** IUnknown methods ***/ 39904 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 39905 IDataObjectProvider* This, 39906 REFIID riid, 39907 void **ppvObject); 39908 39909 ULONG (STDMETHODCALLTYPE *AddRef)( 39910 IDataObjectProvider* This); 39911 39912 ULONG (STDMETHODCALLTYPE *Release)( 39913 IDataObjectProvider* This); 39914 39915 /*** IDataObjectProvider methods ***/ 39916 HRESULT (STDMETHODCALLTYPE *GetDataObject)( 39917 IDataObjectProvider* This, 39918 IDataObject **dataObject); 39919 39920 HRESULT (STDMETHODCALLTYPE *SetDataObject)( 39921 IDataObjectProvider* This, 39922 IDataObject *dataObject); 39923 39924 END_INTERFACE 39925 } IDataObjectProviderVtbl; 39926 interface IDataObjectProvider { 39927 CONST_VTBL IDataObjectProviderVtbl* lpVtbl; 39928 }; 39929 39930 #ifdef COBJMACROS 39931 #ifndef WIDL_C_INLINE_WRAPPERS 39932 /*** IUnknown methods ***/ 39933 #define IDataObjectProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 39934 #define IDataObjectProvider_AddRef(This) (This)->lpVtbl->AddRef(This) 39935 #define IDataObjectProvider_Release(This) (This)->lpVtbl->Release(This) 39936 /*** IDataObjectProvider methods ***/ 39937 #define IDataObjectProvider_GetDataObject(This,dataObject) (This)->lpVtbl->GetDataObject(This,dataObject) 39938 #define IDataObjectProvider_SetDataObject(This,dataObject) (This)->lpVtbl->SetDataObject(This,dataObject) 39939 #else 39940 /*** IUnknown methods ***/ 39941 static FORCEINLINE HRESULT IDataObjectProvider_QueryInterface(IDataObjectProvider* This,REFIID riid,void **ppvObject) { 39942 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 39943 } 39944 static FORCEINLINE ULONG IDataObjectProvider_AddRef(IDataObjectProvider* This) { 39945 return This->lpVtbl->AddRef(This); 39946 } 39947 static FORCEINLINE ULONG IDataObjectProvider_Release(IDataObjectProvider* This) { 39948 return This->lpVtbl->Release(This); 39949 } 39950 /*** IDataObjectProvider methods ***/ 39951 static FORCEINLINE HRESULT IDataObjectProvider_GetDataObject(IDataObjectProvider* This,IDataObject **dataObject) { 39952 return This->lpVtbl->GetDataObject(This,dataObject); 39953 } 39954 static FORCEINLINE HRESULT IDataObjectProvider_SetDataObject(IDataObjectProvider* This,IDataObject *dataObject) { 39955 return This->lpVtbl->SetDataObject(This,dataObject); 39956 } 39957 #endif 39958 #endif 39959 39960 #endif 39961 39962 HRESULT STDMETHODCALLTYPE IDataObjectProvider_GetDataObject_Proxy( 39963 IDataObjectProvider* This, 39964 IDataObject **dataObject); 39965 void __RPC_STUB IDataObjectProvider_GetDataObject_Stub( 39966 IRpcStubBuffer* This, 39967 IRpcChannelBuffer* pRpcChannelBuffer, 39968 PRPC_MESSAGE pRpcMessage, 39969 DWORD* pdwStubPhase); 39970 39971 #endif /* __IDataObjectProvider_INTERFACE_DEFINED__ */ 39972 39973 39974 /***************************************************************************** 39975 * IDataTransferManagerInterop interface 39976 */ 39977 #ifndef __IDataTransferManagerInterop_INTERFACE_DEFINED__ 39978 #define __IDataTransferManagerInterop_INTERFACE_DEFINED__ 39979 39980 DEFINE_GUID(IID_IDataTransferManagerInterop, 0x3a3dcd6c, 0x3eab, 0x43dc, 0xbc,0xde, 0x45,0x67,0x1c,0xe8,0x00,0xc8); 39981 #if defined(__cplusplus) && !defined(CINTERFACE) 39982 MIDL_INTERFACE("3a3dcd6c-3eab-43dc-bcde-45671ce800c8") 39983 IDataTransferManagerInterop : public IUnknown 39984 { 39985 virtual HRESULT STDMETHODCALLTYPE GetForWindow( 39986 HWND appWindow, 39987 REFIID riid, 39988 void **dataTransferManager) = 0; 39989 39990 virtual HRESULT STDMETHODCALLTYPE ShowShareUIForWindow( 39991 HWND appWindow) = 0; 39992 39993 }; 39994 #ifdef __CRT_UUID_DECL 39995 __CRT_UUID_DECL(IDataTransferManagerInterop, 0x3a3dcd6c, 0x3eab, 0x43dc, 0xbc,0xde, 0x45,0x67,0x1c,0xe8,0x00,0xc8) 39996 #endif 39997 #else 39998 typedef struct IDataTransferManagerInteropVtbl { 39999 BEGIN_INTERFACE 40000 40001 /*** IUnknown methods ***/ 40002 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 40003 IDataTransferManagerInterop* This, 40004 REFIID riid, 40005 void **ppvObject); 40006 40007 ULONG (STDMETHODCALLTYPE *AddRef)( 40008 IDataTransferManagerInterop* This); 40009 40010 ULONG (STDMETHODCALLTYPE *Release)( 40011 IDataTransferManagerInterop* This); 40012 40013 /*** IDataTransferManagerInterop methods ***/ 40014 HRESULT (STDMETHODCALLTYPE *GetForWindow)( 40015 IDataTransferManagerInterop* This, 40016 HWND appWindow, 40017 REFIID riid, 40018 void **dataTransferManager); 40019 40020 HRESULT (STDMETHODCALLTYPE *ShowShareUIForWindow)( 40021 IDataTransferManagerInterop* This, 40022 HWND appWindow); 40023 40024 END_INTERFACE 40025 } IDataTransferManagerInteropVtbl; 40026 interface IDataTransferManagerInterop { 40027 CONST_VTBL IDataTransferManagerInteropVtbl* lpVtbl; 40028 }; 40029 40030 #ifdef COBJMACROS 40031 #ifndef WIDL_C_INLINE_WRAPPERS 40032 /*** IUnknown methods ***/ 40033 #define IDataTransferManagerInterop_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 40034 #define IDataTransferManagerInterop_AddRef(This) (This)->lpVtbl->AddRef(This) 40035 #define IDataTransferManagerInterop_Release(This) (This)->lpVtbl->Release(This) 40036 /*** IDataTransferManagerInterop methods ***/ 40037 #define IDataTransferManagerInterop_GetForWindow(This,appWindow,riid,dataTransferManager) (This)->lpVtbl->GetForWindow(This,appWindow,riid,dataTransferManager) 40038 #define IDataTransferManagerInterop_ShowShareUIForWindow(This,appWindow) (This)->lpVtbl->ShowShareUIForWindow(This,appWindow) 40039 #else 40040 /*** IUnknown methods ***/ 40041 static FORCEINLINE HRESULT IDataTransferManagerInterop_QueryInterface(IDataTransferManagerInterop* This,REFIID riid,void **ppvObject) { 40042 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 40043 } 40044 static FORCEINLINE ULONG IDataTransferManagerInterop_AddRef(IDataTransferManagerInterop* This) { 40045 return This->lpVtbl->AddRef(This); 40046 } 40047 static FORCEINLINE ULONG IDataTransferManagerInterop_Release(IDataTransferManagerInterop* This) { 40048 return This->lpVtbl->Release(This); 40049 } 40050 /*** IDataTransferManagerInterop methods ***/ 40051 static FORCEINLINE HRESULT IDataTransferManagerInterop_GetForWindow(IDataTransferManagerInterop* This,HWND appWindow,REFIID riid,void **dataTransferManager) { 40052 return This->lpVtbl->GetForWindow(This,appWindow,riid,dataTransferManager); 40053 } 40054 static FORCEINLINE HRESULT IDataTransferManagerInterop_ShowShareUIForWindow(IDataTransferManagerInterop* This,HWND appWindow) { 40055 return This->lpVtbl->ShowShareUIForWindow(This,appWindow); 40056 } 40057 #endif 40058 #endif 40059 40060 #endif 40061 40062 HRESULT STDMETHODCALLTYPE IDataTransferManagerInterop_GetForWindow_Proxy( 40063 IDataTransferManagerInterop* This, 40064 HWND appWindow, 40065 REFIID riid, 40066 void **dataTransferManager); 40067 void __RPC_STUB IDataTransferManagerInterop_GetForWindow_Stub( 40068 IRpcStubBuffer* This, 40069 IRpcChannelBuffer* pRpcChannelBuffer, 40070 PRPC_MESSAGE pRpcMessage, 40071 DWORD* pdwStubPhase); 40072 HRESULT STDMETHODCALLTYPE IDataTransferManagerInterop_ShowShareUIForWindow_Proxy( 40073 IDataTransferManagerInterop* This, 40074 HWND appWindow); 40075 void __RPC_STUB IDataTransferManagerInterop_ShowShareUIForWindow_Stub( 40076 IRpcStubBuffer* This, 40077 IRpcChannelBuffer* pRpcChannelBuffer, 40078 PRPC_MESSAGE pRpcMessage, 40079 DWORD* pdwStubPhase); 40080 40081 #endif /* __IDataTransferManagerInterop_INTERFACE_DEFINED__ */ 40082 40083 40084 /***************************************************************************** 40085 * IFrameworkInputPaneHandler interface 40086 */ 40087 #ifndef __IFrameworkInputPaneHandler_INTERFACE_DEFINED__ 40088 #define __IFrameworkInputPaneHandler_INTERFACE_DEFINED__ 40089 40090 DEFINE_GUID(IID_IFrameworkInputPaneHandler, 0x226c537b, 0x1e76, 0x4d9e, 0xa7,0x60, 0x33,0xdb,0x29,0x92,0x2f,0x18); 40091 #if defined(__cplusplus) && !defined(CINTERFACE) 40092 MIDL_INTERFACE("226c537b-1e76-4d9e-a760-33db29922f18") 40093 IFrameworkInputPaneHandler : public IUnknown 40094 { 40095 virtual HRESULT STDMETHODCALLTYPE Showing( 40096 RECT *prcInputPaneScreenLocation, 40097 WINBOOL fEnsureFocusedElementInView) = 0; 40098 40099 virtual HRESULT STDMETHODCALLTYPE Hiding( 40100 WINBOOL fEnsureFocusedElementInView) = 0; 40101 40102 }; 40103 #ifdef __CRT_UUID_DECL 40104 __CRT_UUID_DECL(IFrameworkInputPaneHandler, 0x226c537b, 0x1e76, 0x4d9e, 0xa7,0x60, 0x33,0xdb,0x29,0x92,0x2f,0x18) 40105 #endif 40106 #else 40107 typedef struct IFrameworkInputPaneHandlerVtbl { 40108 BEGIN_INTERFACE 40109 40110 /*** IUnknown methods ***/ 40111 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 40112 IFrameworkInputPaneHandler* This, 40113 REFIID riid, 40114 void **ppvObject); 40115 40116 ULONG (STDMETHODCALLTYPE *AddRef)( 40117 IFrameworkInputPaneHandler* This); 40118 40119 ULONG (STDMETHODCALLTYPE *Release)( 40120 IFrameworkInputPaneHandler* This); 40121 40122 /*** IFrameworkInputPaneHandler methods ***/ 40123 HRESULT (STDMETHODCALLTYPE *Showing)( 40124 IFrameworkInputPaneHandler* This, 40125 RECT *prcInputPaneScreenLocation, 40126 WINBOOL fEnsureFocusedElementInView); 40127 40128 HRESULT (STDMETHODCALLTYPE *Hiding)( 40129 IFrameworkInputPaneHandler* This, 40130 WINBOOL fEnsureFocusedElementInView); 40131 40132 END_INTERFACE 40133 } IFrameworkInputPaneHandlerVtbl; 40134 interface IFrameworkInputPaneHandler { 40135 CONST_VTBL IFrameworkInputPaneHandlerVtbl* lpVtbl; 40136 }; 40137 40138 #ifdef COBJMACROS 40139 #ifndef WIDL_C_INLINE_WRAPPERS 40140 /*** IUnknown methods ***/ 40141 #define IFrameworkInputPaneHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 40142 #define IFrameworkInputPaneHandler_AddRef(This) (This)->lpVtbl->AddRef(This) 40143 #define IFrameworkInputPaneHandler_Release(This) (This)->lpVtbl->Release(This) 40144 /*** IFrameworkInputPaneHandler methods ***/ 40145 #define IFrameworkInputPaneHandler_Showing(This,prcInputPaneScreenLocation,fEnsureFocusedElementInView) (This)->lpVtbl->Showing(This,prcInputPaneScreenLocation,fEnsureFocusedElementInView) 40146 #define IFrameworkInputPaneHandler_Hiding(This,fEnsureFocusedElementInView) (This)->lpVtbl->Hiding(This,fEnsureFocusedElementInView) 40147 #else 40148 /*** IUnknown methods ***/ 40149 static FORCEINLINE HRESULT IFrameworkInputPaneHandler_QueryInterface(IFrameworkInputPaneHandler* This,REFIID riid,void **ppvObject) { 40150 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 40151 } 40152 static FORCEINLINE ULONG IFrameworkInputPaneHandler_AddRef(IFrameworkInputPaneHandler* This) { 40153 return This->lpVtbl->AddRef(This); 40154 } 40155 static FORCEINLINE ULONG IFrameworkInputPaneHandler_Release(IFrameworkInputPaneHandler* This) { 40156 return This->lpVtbl->Release(This); 40157 } 40158 /*** IFrameworkInputPaneHandler methods ***/ 40159 static FORCEINLINE HRESULT IFrameworkInputPaneHandler_Showing(IFrameworkInputPaneHandler* This,RECT *prcInputPaneScreenLocation,WINBOOL fEnsureFocusedElementInView) { 40160 return This->lpVtbl->Showing(This,prcInputPaneScreenLocation,fEnsureFocusedElementInView); 40161 } 40162 static FORCEINLINE HRESULT IFrameworkInputPaneHandler_Hiding(IFrameworkInputPaneHandler* This,WINBOOL fEnsureFocusedElementInView) { 40163 return This->lpVtbl->Hiding(This,fEnsureFocusedElementInView); 40164 } 40165 #endif 40166 #endif 40167 40168 #endif 40169 40170 HRESULT STDMETHODCALLTYPE IFrameworkInputPaneHandler_Showing_Proxy( 40171 IFrameworkInputPaneHandler* This, 40172 RECT *prcInputPaneScreenLocation, 40173 WINBOOL fEnsureFocusedElementInView); 40174 void __RPC_STUB IFrameworkInputPaneHandler_Showing_Stub( 40175 IRpcStubBuffer* This, 40176 IRpcChannelBuffer* pRpcChannelBuffer, 40177 PRPC_MESSAGE pRpcMessage, 40178 DWORD* pdwStubPhase); 40179 HRESULT STDMETHODCALLTYPE IFrameworkInputPaneHandler_Hiding_Proxy( 40180 IFrameworkInputPaneHandler* This, 40181 WINBOOL fEnsureFocusedElementInView); 40182 void __RPC_STUB IFrameworkInputPaneHandler_Hiding_Stub( 40183 IRpcStubBuffer* This, 40184 IRpcChannelBuffer* pRpcChannelBuffer, 40185 PRPC_MESSAGE pRpcMessage, 40186 DWORD* pdwStubPhase); 40187 40188 #endif /* __IFrameworkInputPaneHandler_INTERFACE_DEFINED__ */ 40189 40190 40191 /***************************************************************************** 40192 * IFrameworkInputPane interface 40193 */ 40194 #ifndef __IFrameworkInputPane_INTERFACE_DEFINED__ 40195 #define __IFrameworkInputPane_INTERFACE_DEFINED__ 40196 40197 DEFINE_GUID(IID_IFrameworkInputPane, 0x5752238b, 0x24f0, 0x495a, 0x82,0xf1, 0x2f,0xd5,0x93,0x05,0x67,0x96); 40198 #if defined(__cplusplus) && !defined(CINTERFACE) 40199 MIDL_INTERFACE("5752238b-24f0-495a-82f1-2fd593056796") 40200 IFrameworkInputPane : public IUnknown 40201 { 40202 virtual HRESULT STDMETHODCALLTYPE Advise( 40203 IUnknown *pWindow, 40204 IFrameworkInputPaneHandler *pHandler, 40205 DWORD *pdwCookie) = 0; 40206 40207 virtual HRESULT STDMETHODCALLTYPE AdviseWithHWND( 40208 HWND hwnd, 40209 IFrameworkInputPaneHandler *pHandler, 40210 DWORD *pdwCookie) = 0; 40211 40212 virtual HRESULT STDMETHODCALLTYPE Unadvise( 40213 DWORD dwCookie) = 0; 40214 40215 virtual HRESULT STDMETHODCALLTYPE Location( 40216 RECT *prcInputPaneScreenLocation) = 0; 40217 40218 }; 40219 #ifdef __CRT_UUID_DECL 40220 __CRT_UUID_DECL(IFrameworkInputPane, 0x5752238b, 0x24f0, 0x495a, 0x82,0xf1, 0x2f,0xd5,0x93,0x05,0x67,0x96) 40221 #endif 40222 #else 40223 typedef struct IFrameworkInputPaneVtbl { 40224 BEGIN_INTERFACE 40225 40226 /*** IUnknown methods ***/ 40227 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 40228 IFrameworkInputPane* This, 40229 REFIID riid, 40230 void **ppvObject); 40231 40232 ULONG (STDMETHODCALLTYPE *AddRef)( 40233 IFrameworkInputPane* This); 40234 40235 ULONG (STDMETHODCALLTYPE *Release)( 40236 IFrameworkInputPane* This); 40237 40238 /*** IFrameworkInputPane methods ***/ 40239 HRESULT (STDMETHODCALLTYPE *Advise)( 40240 IFrameworkInputPane* This, 40241 IUnknown *pWindow, 40242 IFrameworkInputPaneHandler *pHandler, 40243 DWORD *pdwCookie); 40244 40245 HRESULT (STDMETHODCALLTYPE *AdviseWithHWND)( 40246 IFrameworkInputPane* This, 40247 HWND hwnd, 40248 IFrameworkInputPaneHandler *pHandler, 40249 DWORD *pdwCookie); 40250 40251 HRESULT (STDMETHODCALLTYPE *Unadvise)( 40252 IFrameworkInputPane* This, 40253 DWORD dwCookie); 40254 40255 HRESULT (STDMETHODCALLTYPE *Location)( 40256 IFrameworkInputPane* This, 40257 RECT *prcInputPaneScreenLocation); 40258 40259 END_INTERFACE 40260 } IFrameworkInputPaneVtbl; 40261 interface IFrameworkInputPane { 40262 CONST_VTBL IFrameworkInputPaneVtbl* lpVtbl; 40263 }; 40264 40265 #ifdef COBJMACROS 40266 #ifndef WIDL_C_INLINE_WRAPPERS 40267 /*** IUnknown methods ***/ 40268 #define IFrameworkInputPane_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 40269 #define IFrameworkInputPane_AddRef(This) (This)->lpVtbl->AddRef(This) 40270 #define IFrameworkInputPane_Release(This) (This)->lpVtbl->Release(This) 40271 /*** IFrameworkInputPane methods ***/ 40272 #define IFrameworkInputPane_Advise(This,pWindow,pHandler,pdwCookie) (This)->lpVtbl->Advise(This,pWindow,pHandler,pdwCookie) 40273 #define IFrameworkInputPane_AdviseWithHWND(This,hwnd,pHandler,pdwCookie) (This)->lpVtbl->AdviseWithHWND(This,hwnd,pHandler,pdwCookie) 40274 #define IFrameworkInputPane_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) 40275 #define IFrameworkInputPane_Location(This,prcInputPaneScreenLocation) (This)->lpVtbl->Location(This,prcInputPaneScreenLocation) 40276 #else 40277 /*** IUnknown methods ***/ 40278 static FORCEINLINE HRESULT IFrameworkInputPane_QueryInterface(IFrameworkInputPane* This,REFIID riid,void **ppvObject) { 40279 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 40280 } 40281 static FORCEINLINE ULONG IFrameworkInputPane_AddRef(IFrameworkInputPane* This) { 40282 return This->lpVtbl->AddRef(This); 40283 } 40284 static FORCEINLINE ULONG IFrameworkInputPane_Release(IFrameworkInputPane* This) { 40285 return This->lpVtbl->Release(This); 40286 } 40287 /*** IFrameworkInputPane methods ***/ 40288 static FORCEINLINE HRESULT IFrameworkInputPane_Advise(IFrameworkInputPane* This,IUnknown *pWindow,IFrameworkInputPaneHandler *pHandler,DWORD *pdwCookie) { 40289 return This->lpVtbl->Advise(This,pWindow,pHandler,pdwCookie); 40290 } 40291 static FORCEINLINE HRESULT IFrameworkInputPane_AdviseWithHWND(IFrameworkInputPane* This,HWND hwnd,IFrameworkInputPaneHandler *pHandler,DWORD *pdwCookie) { 40292 return This->lpVtbl->AdviseWithHWND(This,hwnd,pHandler,pdwCookie); 40293 } 40294 static FORCEINLINE HRESULT IFrameworkInputPane_Unadvise(IFrameworkInputPane* This,DWORD dwCookie) { 40295 return This->lpVtbl->Unadvise(This,dwCookie); 40296 } 40297 static FORCEINLINE HRESULT IFrameworkInputPane_Location(IFrameworkInputPane* This,RECT *prcInputPaneScreenLocation) { 40298 return This->lpVtbl->Location(This,prcInputPaneScreenLocation); 40299 } 40300 #endif 40301 #endif 40302 40303 #endif 40304 40305 HRESULT STDMETHODCALLTYPE IFrameworkInputPane_Advise_Proxy( 40306 IFrameworkInputPane* This, 40307 IUnknown *pWindow, 40308 IFrameworkInputPaneHandler *pHandler, 40309 DWORD *pdwCookie); 40310 void __RPC_STUB IFrameworkInputPane_Advise_Stub( 40311 IRpcStubBuffer* This, 40312 IRpcChannelBuffer* pRpcChannelBuffer, 40313 PRPC_MESSAGE pRpcMessage, 40314 DWORD* pdwStubPhase); 40315 HRESULT STDMETHODCALLTYPE IFrameworkInputPane_AdviseWithHWND_Proxy( 40316 IFrameworkInputPane* This, 40317 HWND hwnd, 40318 IFrameworkInputPaneHandler *pHandler, 40319 DWORD *pdwCookie); 40320 void __RPC_STUB IFrameworkInputPane_AdviseWithHWND_Stub( 40321 IRpcStubBuffer* This, 40322 IRpcChannelBuffer* pRpcChannelBuffer, 40323 PRPC_MESSAGE pRpcMessage, 40324 DWORD* pdwStubPhase); 40325 HRESULT STDMETHODCALLTYPE IFrameworkInputPane_Unadvise_Proxy( 40326 IFrameworkInputPane* This, 40327 DWORD dwCookie); 40328 void __RPC_STUB IFrameworkInputPane_Unadvise_Stub( 40329 IRpcStubBuffer* This, 40330 IRpcChannelBuffer* pRpcChannelBuffer, 40331 PRPC_MESSAGE pRpcMessage, 40332 DWORD* pdwStubPhase); 40333 HRESULT STDMETHODCALLTYPE IFrameworkInputPane_Location_Proxy( 40334 IFrameworkInputPane* This, 40335 RECT *prcInputPaneScreenLocation); 40336 void __RPC_STUB IFrameworkInputPane_Location_Stub( 40337 IRpcStubBuffer* This, 40338 IRpcChannelBuffer* pRpcChannelBuffer, 40339 PRPC_MESSAGE pRpcMessage, 40340 DWORD* pdwStubPhase); 40341 40342 #endif /* __IFrameworkInputPane_INTERFACE_DEFINED__ */ 40343 40344 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 40345 40346 #ifndef PROP_CONTRACT_DELEGATE 40347 #define PROP_CONTRACT_DELEGATE L"ContractDelegate" 40348 #endif 40349 SetContractDelegateWindow(HWND hwndSource,HWND hwndDelegate)40350 __forceinline void SetContractDelegateWindow(HWND hwndSource, HWND hwndDelegate) { 40351 if (hwndDelegate != NULL) 40352 SetPropW (hwndSource, PROP_CONTRACT_DELEGATE, (HANDLE)hwndDelegate); 40353 else 40354 RemovePropW(hwndSource, PROP_CONTRACT_DELEGATE); 40355 } 40356 40357 #ifndef PROP_CONTRACT_DELEGATE 40358 #define PROP_CONTRACT_DELEGATE L"ContractDelegate" 40359 #endif 40360 GetContractDelegateWindow(HWND hwndSource)40361 __forceinline HWND GetContractDelegateWindow(HWND hwndSource) { return (HWND)GetPropW(hwndSource, PROP_CONTRACT_DELEGATE); } 40362 #endif 40363 #endif 40364 40365 #if NTDDI_VERSION >= NTDDI_WIN8 40366 /***************************************************************************** 40367 * ISearchableApplication interface 40368 */ 40369 #ifndef __ISearchableApplication_INTERFACE_DEFINED__ 40370 #define __ISearchableApplication_INTERFACE_DEFINED__ 40371 40372 DEFINE_GUID(IID_ISearchableApplication, 0x08922f8d, 0x243a, 0x49e3, 0xa4,0x95, 0xbd,0x4f,0x9c,0xf8,0xab,0x9e); 40373 #if defined(__cplusplus) && !defined(CINTERFACE) 40374 MIDL_INTERFACE("08922f8d-243a-49e3-a495-bd4f9cf8ab9e") 40375 ISearchableApplication : public IUnknown 40376 { 40377 virtual HRESULT STDMETHODCALLTYPE GetSearchWindow( 40378 HWND *hwnd) = 0; 40379 40380 }; 40381 #ifdef __CRT_UUID_DECL 40382 __CRT_UUID_DECL(ISearchableApplication, 0x08922f8d, 0x243a, 0x49e3, 0xa4,0x95, 0xbd,0x4f,0x9c,0xf8,0xab,0x9e) 40383 #endif 40384 #else 40385 typedef struct ISearchableApplicationVtbl { 40386 BEGIN_INTERFACE 40387 40388 /*** IUnknown methods ***/ 40389 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 40390 ISearchableApplication* This, 40391 REFIID riid, 40392 void **ppvObject); 40393 40394 ULONG (STDMETHODCALLTYPE *AddRef)( 40395 ISearchableApplication* This); 40396 40397 ULONG (STDMETHODCALLTYPE *Release)( 40398 ISearchableApplication* This); 40399 40400 /*** ISearchableApplication methods ***/ 40401 HRESULT (STDMETHODCALLTYPE *GetSearchWindow)( 40402 ISearchableApplication* This, 40403 HWND *hwnd); 40404 40405 END_INTERFACE 40406 } ISearchableApplicationVtbl; 40407 interface ISearchableApplication { 40408 CONST_VTBL ISearchableApplicationVtbl* lpVtbl; 40409 }; 40410 40411 #ifdef COBJMACROS 40412 #ifndef WIDL_C_INLINE_WRAPPERS 40413 /*** IUnknown methods ***/ 40414 #define ISearchableApplication_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 40415 #define ISearchableApplication_AddRef(This) (This)->lpVtbl->AddRef(This) 40416 #define ISearchableApplication_Release(This) (This)->lpVtbl->Release(This) 40417 /*** ISearchableApplication methods ***/ 40418 #define ISearchableApplication_GetSearchWindow(This,hwnd) (This)->lpVtbl->GetSearchWindow(This,hwnd) 40419 #else 40420 /*** IUnknown methods ***/ 40421 static FORCEINLINE HRESULT ISearchableApplication_QueryInterface(ISearchableApplication* This,REFIID riid,void **ppvObject) { 40422 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 40423 } 40424 static FORCEINLINE ULONG ISearchableApplication_AddRef(ISearchableApplication* This) { 40425 return This->lpVtbl->AddRef(This); 40426 } 40427 static FORCEINLINE ULONG ISearchableApplication_Release(ISearchableApplication* This) { 40428 return This->lpVtbl->Release(This); 40429 } 40430 /*** ISearchableApplication methods ***/ 40431 static FORCEINLINE HRESULT ISearchableApplication_GetSearchWindow(ISearchableApplication* This,HWND *hwnd) { 40432 return This->lpVtbl->GetSearchWindow(This,hwnd); 40433 } 40434 #endif 40435 #endif 40436 40437 #endif 40438 40439 HRESULT STDMETHODCALLTYPE ISearchableApplication_GetSearchWindow_Proxy( 40440 ISearchableApplication* This, 40441 HWND *hwnd); 40442 void __RPC_STUB ISearchableApplication_GetSearchWindow_Stub( 40443 IRpcStubBuffer* This, 40444 IRpcChannelBuffer* pRpcChannelBuffer, 40445 PRPC_MESSAGE pRpcMessage, 40446 DWORD* pdwStubPhase); 40447 40448 #endif /* __ISearchableApplication_INTERFACE_DEFINED__ */ 40449 40450 40451 typedef enum UNDOCK_REASON { 40452 UR_RESOLUTION_CHANGE = 0, 40453 UR_MONITOR_DISCONNECT = 1 40454 } UNDOCK_REASON; 40455 40456 /***************************************************************************** 40457 * IAccessibilityDockingServiceCallback interface 40458 */ 40459 #ifndef __IAccessibilityDockingServiceCallback_INTERFACE_DEFINED__ 40460 #define __IAccessibilityDockingServiceCallback_INTERFACE_DEFINED__ 40461 40462 DEFINE_GUID(IID_IAccessibilityDockingServiceCallback, 0x157733fd, 0xa592, 0x42e5, 0xb5,0x94, 0x24,0x84,0x68,0xc5,0xa8,0x1b); 40463 #if defined(__cplusplus) && !defined(CINTERFACE) 40464 MIDL_INTERFACE("157733fd-a592-42e5-b594-248468c5a81b") 40465 IAccessibilityDockingServiceCallback : public IUnknown 40466 { 40467 virtual HRESULT STDMETHODCALLTYPE Undocked( 40468 UNDOCK_REASON undockReason) = 0; 40469 40470 }; 40471 #ifdef __CRT_UUID_DECL 40472 __CRT_UUID_DECL(IAccessibilityDockingServiceCallback, 0x157733fd, 0xa592, 0x42e5, 0xb5,0x94, 0x24,0x84,0x68,0xc5,0xa8,0x1b) 40473 #endif 40474 #else 40475 typedef struct IAccessibilityDockingServiceCallbackVtbl { 40476 BEGIN_INTERFACE 40477 40478 /*** IUnknown methods ***/ 40479 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 40480 IAccessibilityDockingServiceCallback* This, 40481 REFIID riid, 40482 void **ppvObject); 40483 40484 ULONG (STDMETHODCALLTYPE *AddRef)( 40485 IAccessibilityDockingServiceCallback* This); 40486 40487 ULONG (STDMETHODCALLTYPE *Release)( 40488 IAccessibilityDockingServiceCallback* This); 40489 40490 /*** IAccessibilityDockingServiceCallback methods ***/ 40491 HRESULT (STDMETHODCALLTYPE *Undocked)( 40492 IAccessibilityDockingServiceCallback* This, 40493 UNDOCK_REASON undockReason); 40494 40495 END_INTERFACE 40496 } IAccessibilityDockingServiceCallbackVtbl; 40497 interface IAccessibilityDockingServiceCallback { 40498 CONST_VTBL IAccessibilityDockingServiceCallbackVtbl* lpVtbl; 40499 }; 40500 40501 #ifdef COBJMACROS 40502 #ifndef WIDL_C_INLINE_WRAPPERS 40503 /*** IUnknown methods ***/ 40504 #define IAccessibilityDockingServiceCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 40505 #define IAccessibilityDockingServiceCallback_AddRef(This) (This)->lpVtbl->AddRef(This) 40506 #define IAccessibilityDockingServiceCallback_Release(This) (This)->lpVtbl->Release(This) 40507 /*** IAccessibilityDockingServiceCallback methods ***/ 40508 #define IAccessibilityDockingServiceCallback_Undocked(This,undockReason) (This)->lpVtbl->Undocked(This,undockReason) 40509 #else 40510 /*** IUnknown methods ***/ 40511 static FORCEINLINE HRESULT IAccessibilityDockingServiceCallback_QueryInterface(IAccessibilityDockingServiceCallback* This,REFIID riid,void **ppvObject) { 40512 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 40513 } 40514 static FORCEINLINE ULONG IAccessibilityDockingServiceCallback_AddRef(IAccessibilityDockingServiceCallback* This) { 40515 return This->lpVtbl->AddRef(This); 40516 } 40517 static FORCEINLINE ULONG IAccessibilityDockingServiceCallback_Release(IAccessibilityDockingServiceCallback* This) { 40518 return This->lpVtbl->Release(This); 40519 } 40520 /*** IAccessibilityDockingServiceCallback methods ***/ 40521 static FORCEINLINE HRESULT IAccessibilityDockingServiceCallback_Undocked(IAccessibilityDockingServiceCallback* This,UNDOCK_REASON undockReason) { 40522 return This->lpVtbl->Undocked(This,undockReason); 40523 } 40524 #endif 40525 #endif 40526 40527 #endif 40528 40529 HRESULT STDMETHODCALLTYPE IAccessibilityDockingServiceCallback_Undocked_Proxy( 40530 IAccessibilityDockingServiceCallback* This, 40531 UNDOCK_REASON undockReason); 40532 void __RPC_STUB IAccessibilityDockingServiceCallback_Undocked_Stub( 40533 IRpcStubBuffer* This, 40534 IRpcChannelBuffer* pRpcChannelBuffer, 40535 PRPC_MESSAGE pRpcMessage, 40536 DWORD* pdwStubPhase); 40537 40538 #endif /* __IAccessibilityDockingServiceCallback_INTERFACE_DEFINED__ */ 40539 40540 40541 /***************************************************************************** 40542 * IAccessibilityDockingService interface 40543 */ 40544 #ifndef __IAccessibilityDockingService_INTERFACE_DEFINED__ 40545 #define __IAccessibilityDockingService_INTERFACE_DEFINED__ 40546 40547 DEFINE_GUID(IID_IAccessibilityDockingService, 0x8849dc22, 0xcedf, 0x4c95, 0x99,0x8d, 0x05,0x14,0x19,0xdd,0x3f,0x76); 40548 #if defined(__cplusplus) && !defined(CINTERFACE) 40549 MIDL_INTERFACE("8849dc22-cedf-4c95-998d-051419dd3f76") 40550 IAccessibilityDockingService : public IUnknown 40551 { 40552 virtual HRESULT STDMETHODCALLTYPE GetAvailableSize( 40553 HMONITOR hMonitor, 40554 UINT *pcxFixed, 40555 UINT *pcyMax) = 0; 40556 40557 virtual HRESULT STDMETHODCALLTYPE DockWindow( 40558 HWND hwnd, 40559 HMONITOR hMonitor, 40560 UINT cyRequested, 40561 IAccessibilityDockingServiceCallback *pCallback) = 0; 40562 40563 virtual HRESULT STDMETHODCALLTYPE UndockWindow( 40564 HWND hwnd) = 0; 40565 40566 }; 40567 #ifdef __CRT_UUID_DECL 40568 __CRT_UUID_DECL(IAccessibilityDockingService, 0x8849dc22, 0xcedf, 0x4c95, 0x99,0x8d, 0x05,0x14,0x19,0xdd,0x3f,0x76) 40569 #endif 40570 #else 40571 typedef struct IAccessibilityDockingServiceVtbl { 40572 BEGIN_INTERFACE 40573 40574 /*** IUnknown methods ***/ 40575 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 40576 IAccessibilityDockingService* This, 40577 REFIID riid, 40578 void **ppvObject); 40579 40580 ULONG (STDMETHODCALLTYPE *AddRef)( 40581 IAccessibilityDockingService* This); 40582 40583 ULONG (STDMETHODCALLTYPE *Release)( 40584 IAccessibilityDockingService* This); 40585 40586 /*** IAccessibilityDockingService methods ***/ 40587 HRESULT (STDMETHODCALLTYPE *GetAvailableSize)( 40588 IAccessibilityDockingService* This, 40589 HMONITOR hMonitor, 40590 UINT *pcxFixed, 40591 UINT *pcyMax); 40592 40593 HRESULT (STDMETHODCALLTYPE *DockWindow)( 40594 IAccessibilityDockingService* This, 40595 HWND hwnd, 40596 HMONITOR hMonitor, 40597 UINT cyRequested, 40598 IAccessibilityDockingServiceCallback *pCallback); 40599 40600 HRESULT (STDMETHODCALLTYPE *UndockWindow)( 40601 IAccessibilityDockingService* This, 40602 HWND hwnd); 40603 40604 END_INTERFACE 40605 } IAccessibilityDockingServiceVtbl; 40606 interface IAccessibilityDockingService { 40607 CONST_VTBL IAccessibilityDockingServiceVtbl* lpVtbl; 40608 }; 40609 40610 #ifdef COBJMACROS 40611 #ifndef WIDL_C_INLINE_WRAPPERS 40612 /*** IUnknown methods ***/ 40613 #define IAccessibilityDockingService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 40614 #define IAccessibilityDockingService_AddRef(This) (This)->lpVtbl->AddRef(This) 40615 #define IAccessibilityDockingService_Release(This) (This)->lpVtbl->Release(This) 40616 /*** IAccessibilityDockingService methods ***/ 40617 #define IAccessibilityDockingService_GetAvailableSize(This,hMonitor,pcxFixed,pcyMax) (This)->lpVtbl->GetAvailableSize(This,hMonitor,pcxFixed,pcyMax) 40618 #define IAccessibilityDockingService_DockWindow(This,hwnd,hMonitor,cyRequested,pCallback) (This)->lpVtbl->DockWindow(This,hwnd,hMonitor,cyRequested,pCallback) 40619 #define IAccessibilityDockingService_UndockWindow(This,hwnd) (This)->lpVtbl->UndockWindow(This,hwnd) 40620 #else 40621 /*** IUnknown methods ***/ 40622 static FORCEINLINE HRESULT IAccessibilityDockingService_QueryInterface(IAccessibilityDockingService* This,REFIID riid,void **ppvObject) { 40623 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 40624 } 40625 static FORCEINLINE ULONG IAccessibilityDockingService_AddRef(IAccessibilityDockingService* This) { 40626 return This->lpVtbl->AddRef(This); 40627 } 40628 static FORCEINLINE ULONG IAccessibilityDockingService_Release(IAccessibilityDockingService* This) { 40629 return This->lpVtbl->Release(This); 40630 } 40631 /*** IAccessibilityDockingService methods ***/ 40632 static FORCEINLINE HRESULT IAccessibilityDockingService_GetAvailableSize(IAccessibilityDockingService* This,HMONITOR hMonitor,UINT *pcxFixed,UINT *pcyMax) { 40633 return This->lpVtbl->GetAvailableSize(This,hMonitor,pcxFixed,pcyMax); 40634 } 40635 static FORCEINLINE HRESULT IAccessibilityDockingService_DockWindow(IAccessibilityDockingService* This,HWND hwnd,HMONITOR hMonitor,UINT cyRequested,IAccessibilityDockingServiceCallback *pCallback) { 40636 return This->lpVtbl->DockWindow(This,hwnd,hMonitor,cyRequested,pCallback); 40637 } 40638 static FORCEINLINE HRESULT IAccessibilityDockingService_UndockWindow(IAccessibilityDockingService* This,HWND hwnd) { 40639 return This->lpVtbl->UndockWindow(This,hwnd); 40640 } 40641 #endif 40642 #endif 40643 40644 #endif 40645 40646 HRESULT STDMETHODCALLTYPE IAccessibilityDockingService_GetAvailableSize_Proxy( 40647 IAccessibilityDockingService* This, 40648 HMONITOR hMonitor, 40649 UINT *pcxFixed, 40650 UINT *pcyMax); 40651 void __RPC_STUB IAccessibilityDockingService_GetAvailableSize_Stub( 40652 IRpcStubBuffer* This, 40653 IRpcChannelBuffer* pRpcChannelBuffer, 40654 PRPC_MESSAGE pRpcMessage, 40655 DWORD* pdwStubPhase); 40656 HRESULT STDMETHODCALLTYPE IAccessibilityDockingService_DockWindow_Proxy( 40657 IAccessibilityDockingService* This, 40658 HWND hwnd, 40659 HMONITOR hMonitor, 40660 UINT cyRequested, 40661 IAccessibilityDockingServiceCallback *pCallback); 40662 void __RPC_STUB IAccessibilityDockingService_DockWindow_Stub( 40663 IRpcStubBuffer* This, 40664 IRpcChannelBuffer* pRpcChannelBuffer, 40665 PRPC_MESSAGE pRpcMessage, 40666 DWORD* pdwStubPhase); 40667 HRESULT STDMETHODCALLTYPE IAccessibilityDockingService_UndockWindow_Proxy( 40668 IAccessibilityDockingService* This, 40669 HWND hwnd); 40670 void __RPC_STUB IAccessibilityDockingService_UndockWindow_Stub( 40671 IRpcStubBuffer* This, 40672 IRpcChannelBuffer* pRpcChannelBuffer, 40673 PRPC_MESSAGE pRpcMessage, 40674 DWORD* pdwStubPhase); 40675 40676 #endif /* __IAccessibilityDockingService_INTERFACE_DEFINED__ */ 40677 40678 40679 typedef enum MONITOR_APP_VISIBILITY { 40680 MAV_UNKNOWN = 0, 40681 MAV_NO_APP_VISIBLE = 1, 40682 MAV_APP_VISIBLE = 2 40683 } MONITOR_APP_VISIBILITY; 40684 40685 /***************************************************************************** 40686 * IAppVisibilityEvents interface 40687 */ 40688 #ifndef __IAppVisibilityEvents_INTERFACE_DEFINED__ 40689 #define __IAppVisibilityEvents_INTERFACE_DEFINED__ 40690 40691 DEFINE_GUID(IID_IAppVisibilityEvents, 0x6584ce6b, 0x7d82, 0x49c2, 0x89,0xc9, 0xc6,0xbc,0x02,0xba,0x8c,0x38); 40692 #if defined(__cplusplus) && !defined(CINTERFACE) 40693 MIDL_INTERFACE("6584ce6b-7d82-49c2-89c9-c6bc02ba8c38") 40694 IAppVisibilityEvents : public IUnknown 40695 { 40696 virtual HRESULT STDMETHODCALLTYPE AppVisibilityOnMonitorChanged( 40697 HMONITOR hMonitor, 40698 MONITOR_APP_VISIBILITY previousMode, 40699 MONITOR_APP_VISIBILITY currentMode) = 0; 40700 40701 virtual HRESULT STDMETHODCALLTYPE LauncherVisibilityChange( 40702 WINBOOL currentVisibleState) = 0; 40703 40704 }; 40705 #ifdef __CRT_UUID_DECL 40706 __CRT_UUID_DECL(IAppVisibilityEvents, 0x6584ce6b, 0x7d82, 0x49c2, 0x89,0xc9, 0xc6,0xbc,0x02,0xba,0x8c,0x38) 40707 #endif 40708 #else 40709 typedef struct IAppVisibilityEventsVtbl { 40710 BEGIN_INTERFACE 40711 40712 /*** IUnknown methods ***/ 40713 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 40714 IAppVisibilityEvents* This, 40715 REFIID riid, 40716 void **ppvObject); 40717 40718 ULONG (STDMETHODCALLTYPE *AddRef)( 40719 IAppVisibilityEvents* This); 40720 40721 ULONG (STDMETHODCALLTYPE *Release)( 40722 IAppVisibilityEvents* This); 40723 40724 /*** IAppVisibilityEvents methods ***/ 40725 HRESULT (STDMETHODCALLTYPE *AppVisibilityOnMonitorChanged)( 40726 IAppVisibilityEvents* This, 40727 HMONITOR hMonitor, 40728 MONITOR_APP_VISIBILITY previousMode, 40729 MONITOR_APP_VISIBILITY currentMode); 40730 40731 HRESULT (STDMETHODCALLTYPE *LauncherVisibilityChange)( 40732 IAppVisibilityEvents* This, 40733 WINBOOL currentVisibleState); 40734 40735 END_INTERFACE 40736 } IAppVisibilityEventsVtbl; 40737 interface IAppVisibilityEvents { 40738 CONST_VTBL IAppVisibilityEventsVtbl* lpVtbl; 40739 }; 40740 40741 #ifdef COBJMACROS 40742 #ifndef WIDL_C_INLINE_WRAPPERS 40743 /*** IUnknown methods ***/ 40744 #define IAppVisibilityEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 40745 #define IAppVisibilityEvents_AddRef(This) (This)->lpVtbl->AddRef(This) 40746 #define IAppVisibilityEvents_Release(This) (This)->lpVtbl->Release(This) 40747 /*** IAppVisibilityEvents methods ***/ 40748 #define IAppVisibilityEvents_AppVisibilityOnMonitorChanged(This,hMonitor,previousMode,currentMode) (This)->lpVtbl->AppVisibilityOnMonitorChanged(This,hMonitor,previousMode,currentMode) 40749 #define IAppVisibilityEvents_LauncherVisibilityChange(This,currentVisibleState) (This)->lpVtbl->LauncherVisibilityChange(This,currentVisibleState) 40750 #else 40751 /*** IUnknown methods ***/ 40752 static FORCEINLINE HRESULT IAppVisibilityEvents_QueryInterface(IAppVisibilityEvents* This,REFIID riid,void **ppvObject) { 40753 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 40754 } 40755 static FORCEINLINE ULONG IAppVisibilityEvents_AddRef(IAppVisibilityEvents* This) { 40756 return This->lpVtbl->AddRef(This); 40757 } 40758 static FORCEINLINE ULONG IAppVisibilityEvents_Release(IAppVisibilityEvents* This) { 40759 return This->lpVtbl->Release(This); 40760 } 40761 /*** IAppVisibilityEvents methods ***/ 40762 static FORCEINLINE HRESULT IAppVisibilityEvents_AppVisibilityOnMonitorChanged(IAppVisibilityEvents* This,HMONITOR hMonitor,MONITOR_APP_VISIBILITY previousMode,MONITOR_APP_VISIBILITY currentMode) { 40763 return This->lpVtbl->AppVisibilityOnMonitorChanged(This,hMonitor,previousMode,currentMode); 40764 } 40765 static FORCEINLINE HRESULT IAppVisibilityEvents_LauncherVisibilityChange(IAppVisibilityEvents* This,WINBOOL currentVisibleState) { 40766 return This->lpVtbl->LauncherVisibilityChange(This,currentVisibleState); 40767 } 40768 #endif 40769 #endif 40770 40771 #endif 40772 40773 HRESULT STDMETHODCALLTYPE IAppVisibilityEvents_AppVisibilityOnMonitorChanged_Proxy( 40774 IAppVisibilityEvents* This, 40775 HMONITOR hMonitor, 40776 MONITOR_APP_VISIBILITY previousMode, 40777 MONITOR_APP_VISIBILITY currentMode); 40778 void __RPC_STUB IAppVisibilityEvents_AppVisibilityOnMonitorChanged_Stub( 40779 IRpcStubBuffer* This, 40780 IRpcChannelBuffer* pRpcChannelBuffer, 40781 PRPC_MESSAGE pRpcMessage, 40782 DWORD* pdwStubPhase); 40783 HRESULT STDMETHODCALLTYPE IAppVisibilityEvents_LauncherVisibilityChange_Proxy( 40784 IAppVisibilityEvents* This, 40785 WINBOOL currentVisibleState); 40786 void __RPC_STUB IAppVisibilityEvents_LauncherVisibilityChange_Stub( 40787 IRpcStubBuffer* This, 40788 IRpcChannelBuffer* pRpcChannelBuffer, 40789 PRPC_MESSAGE pRpcMessage, 40790 DWORD* pdwStubPhase); 40791 40792 #endif /* __IAppVisibilityEvents_INTERFACE_DEFINED__ */ 40793 40794 40795 /***************************************************************************** 40796 * IAppVisibility interface 40797 */ 40798 #ifndef __IAppVisibility_INTERFACE_DEFINED__ 40799 #define __IAppVisibility_INTERFACE_DEFINED__ 40800 40801 DEFINE_GUID(IID_IAppVisibility, 0x2246ea2d, 0xcaea, 0x4444, 0xa3,0xc4, 0x6d,0xe8,0x27,0xe4,0x43,0x13); 40802 #if defined(__cplusplus) && !defined(CINTERFACE) 40803 MIDL_INTERFACE("2246ea2d-caea-4444-a3c4-6de827e44313") 40804 IAppVisibility : public IUnknown 40805 { 40806 virtual HRESULT STDMETHODCALLTYPE GetAppVisibilityOnMonitor( 40807 HMONITOR hMonitor, 40808 MONITOR_APP_VISIBILITY *pMode) = 0; 40809 40810 virtual HRESULT STDMETHODCALLTYPE IsLauncherVisible( 40811 WINBOOL *pfVisible) = 0; 40812 40813 virtual HRESULT STDMETHODCALLTYPE Advise( 40814 IAppVisibilityEvents *pCallback, 40815 DWORD *pdwCookie) = 0; 40816 40817 virtual HRESULT STDMETHODCALLTYPE Unadvise( 40818 DWORD dwCookie) = 0; 40819 40820 }; 40821 #ifdef __CRT_UUID_DECL 40822 __CRT_UUID_DECL(IAppVisibility, 0x2246ea2d, 0xcaea, 0x4444, 0xa3,0xc4, 0x6d,0xe8,0x27,0xe4,0x43,0x13) 40823 #endif 40824 #else 40825 typedef struct IAppVisibilityVtbl { 40826 BEGIN_INTERFACE 40827 40828 /*** IUnknown methods ***/ 40829 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 40830 IAppVisibility* This, 40831 REFIID riid, 40832 void **ppvObject); 40833 40834 ULONG (STDMETHODCALLTYPE *AddRef)( 40835 IAppVisibility* This); 40836 40837 ULONG (STDMETHODCALLTYPE *Release)( 40838 IAppVisibility* This); 40839 40840 /*** IAppVisibility methods ***/ 40841 HRESULT (STDMETHODCALLTYPE *GetAppVisibilityOnMonitor)( 40842 IAppVisibility* This, 40843 HMONITOR hMonitor, 40844 MONITOR_APP_VISIBILITY *pMode); 40845 40846 HRESULT (STDMETHODCALLTYPE *IsLauncherVisible)( 40847 IAppVisibility* This, 40848 WINBOOL *pfVisible); 40849 40850 HRESULT (STDMETHODCALLTYPE *Advise)( 40851 IAppVisibility* This, 40852 IAppVisibilityEvents *pCallback, 40853 DWORD *pdwCookie); 40854 40855 HRESULT (STDMETHODCALLTYPE *Unadvise)( 40856 IAppVisibility* This, 40857 DWORD dwCookie); 40858 40859 END_INTERFACE 40860 } IAppVisibilityVtbl; 40861 interface IAppVisibility { 40862 CONST_VTBL IAppVisibilityVtbl* lpVtbl; 40863 }; 40864 40865 #ifdef COBJMACROS 40866 #ifndef WIDL_C_INLINE_WRAPPERS 40867 /*** IUnknown methods ***/ 40868 #define IAppVisibility_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 40869 #define IAppVisibility_AddRef(This) (This)->lpVtbl->AddRef(This) 40870 #define IAppVisibility_Release(This) (This)->lpVtbl->Release(This) 40871 /*** IAppVisibility methods ***/ 40872 #define IAppVisibility_GetAppVisibilityOnMonitor(This,hMonitor,pMode) (This)->lpVtbl->GetAppVisibilityOnMonitor(This,hMonitor,pMode) 40873 #define IAppVisibility_IsLauncherVisible(This,pfVisible) (This)->lpVtbl->IsLauncherVisible(This,pfVisible) 40874 #define IAppVisibility_Advise(This,pCallback,pdwCookie) (This)->lpVtbl->Advise(This,pCallback,pdwCookie) 40875 #define IAppVisibility_Unadvise(This,dwCookie) (This)->lpVtbl->Unadvise(This,dwCookie) 40876 #else 40877 /*** IUnknown methods ***/ 40878 static FORCEINLINE HRESULT IAppVisibility_QueryInterface(IAppVisibility* This,REFIID riid,void **ppvObject) { 40879 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 40880 } 40881 static FORCEINLINE ULONG IAppVisibility_AddRef(IAppVisibility* This) { 40882 return This->lpVtbl->AddRef(This); 40883 } 40884 static FORCEINLINE ULONG IAppVisibility_Release(IAppVisibility* This) { 40885 return This->lpVtbl->Release(This); 40886 } 40887 /*** IAppVisibility methods ***/ 40888 static FORCEINLINE HRESULT IAppVisibility_GetAppVisibilityOnMonitor(IAppVisibility* This,HMONITOR hMonitor,MONITOR_APP_VISIBILITY *pMode) { 40889 return This->lpVtbl->GetAppVisibilityOnMonitor(This,hMonitor,pMode); 40890 } 40891 static FORCEINLINE HRESULT IAppVisibility_IsLauncherVisible(IAppVisibility* This,WINBOOL *pfVisible) { 40892 return This->lpVtbl->IsLauncherVisible(This,pfVisible); 40893 } 40894 static FORCEINLINE HRESULT IAppVisibility_Advise(IAppVisibility* This,IAppVisibilityEvents *pCallback,DWORD *pdwCookie) { 40895 return This->lpVtbl->Advise(This,pCallback,pdwCookie); 40896 } 40897 static FORCEINLINE HRESULT IAppVisibility_Unadvise(IAppVisibility* This,DWORD dwCookie) { 40898 return This->lpVtbl->Unadvise(This,dwCookie); 40899 } 40900 #endif 40901 #endif 40902 40903 #endif 40904 40905 HRESULT STDMETHODCALLTYPE IAppVisibility_GetAppVisibilityOnMonitor_Proxy( 40906 IAppVisibility* This, 40907 HMONITOR hMonitor, 40908 MONITOR_APP_VISIBILITY *pMode); 40909 void __RPC_STUB IAppVisibility_GetAppVisibilityOnMonitor_Stub( 40910 IRpcStubBuffer* This, 40911 IRpcChannelBuffer* pRpcChannelBuffer, 40912 PRPC_MESSAGE pRpcMessage, 40913 DWORD* pdwStubPhase); 40914 HRESULT STDMETHODCALLTYPE IAppVisibility_IsLauncherVisible_Proxy( 40915 IAppVisibility* This, 40916 WINBOOL *pfVisible); 40917 void __RPC_STUB IAppVisibility_IsLauncherVisible_Stub( 40918 IRpcStubBuffer* This, 40919 IRpcChannelBuffer* pRpcChannelBuffer, 40920 PRPC_MESSAGE pRpcMessage, 40921 DWORD* pdwStubPhase); 40922 HRESULT STDMETHODCALLTYPE IAppVisibility_Advise_Proxy( 40923 IAppVisibility* This, 40924 IAppVisibilityEvents *pCallback, 40925 DWORD *pdwCookie); 40926 void __RPC_STUB IAppVisibility_Advise_Stub( 40927 IRpcStubBuffer* This, 40928 IRpcChannelBuffer* pRpcChannelBuffer, 40929 PRPC_MESSAGE pRpcMessage, 40930 DWORD* pdwStubPhase); 40931 HRESULT STDMETHODCALLTYPE IAppVisibility_Unadvise_Proxy( 40932 IAppVisibility* This, 40933 DWORD dwCookie); 40934 void __RPC_STUB IAppVisibility_Unadvise_Stub( 40935 IRpcStubBuffer* This, 40936 IRpcChannelBuffer* pRpcChannelBuffer, 40937 PRPC_MESSAGE pRpcMessage, 40938 DWORD* pdwStubPhase); 40939 40940 #endif /* __IAppVisibility_INTERFACE_DEFINED__ */ 40941 40942 40943 #if 0 40944 typedef WCHAR *PZZWSTR; 40945 #endif 40946 40947 typedef enum PACKAGE_EXECUTION_STATE { 40948 PES_UNKNOWN = 0, 40949 PES_RUNNING = 1, 40950 PES_SUSPENDING = 2, 40951 PES_SUSPENDED = 3, 40952 PES_TERMINATED = 4 40953 } PACKAGE_EXECUTION_STATE; 40954 40955 /***************************************************************************** 40956 * IPackageExecutionStateChangeNotification interface 40957 */ 40958 #ifndef __IPackageExecutionStateChangeNotification_INTERFACE_DEFINED__ 40959 #define __IPackageExecutionStateChangeNotification_INTERFACE_DEFINED__ 40960 40961 DEFINE_GUID(IID_IPackageExecutionStateChangeNotification, 0x1bb12a62, 0x2ad8, 0x432b, 0x8c,0xcf, 0x0c,0x2c,0x52,0xaf,0xcd,0x5b); 40962 #if defined(__cplusplus) && !defined(CINTERFACE) 40963 MIDL_INTERFACE("1bb12a62-2ad8-432b-8ccf-0c2c52afcd5b") 40964 IPackageExecutionStateChangeNotification : public IUnknown 40965 { 40966 virtual HRESULT STDMETHODCALLTYPE OnStateChanged( 40967 LPCWSTR pszPackageFullName, 40968 PACKAGE_EXECUTION_STATE pesNewState) = 0; 40969 40970 }; 40971 #ifdef __CRT_UUID_DECL 40972 __CRT_UUID_DECL(IPackageExecutionStateChangeNotification, 0x1bb12a62, 0x2ad8, 0x432b, 0x8c,0xcf, 0x0c,0x2c,0x52,0xaf,0xcd,0x5b) 40973 #endif 40974 #else 40975 typedef struct IPackageExecutionStateChangeNotificationVtbl { 40976 BEGIN_INTERFACE 40977 40978 /*** IUnknown methods ***/ 40979 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 40980 IPackageExecutionStateChangeNotification* This, 40981 REFIID riid, 40982 void **ppvObject); 40983 40984 ULONG (STDMETHODCALLTYPE *AddRef)( 40985 IPackageExecutionStateChangeNotification* This); 40986 40987 ULONG (STDMETHODCALLTYPE *Release)( 40988 IPackageExecutionStateChangeNotification* This); 40989 40990 /*** IPackageExecutionStateChangeNotification methods ***/ 40991 HRESULT (STDMETHODCALLTYPE *OnStateChanged)( 40992 IPackageExecutionStateChangeNotification* This, 40993 LPCWSTR pszPackageFullName, 40994 PACKAGE_EXECUTION_STATE pesNewState); 40995 40996 END_INTERFACE 40997 } IPackageExecutionStateChangeNotificationVtbl; 40998 interface IPackageExecutionStateChangeNotification { 40999 CONST_VTBL IPackageExecutionStateChangeNotificationVtbl* lpVtbl; 41000 }; 41001 41002 #ifdef COBJMACROS 41003 #ifndef WIDL_C_INLINE_WRAPPERS 41004 /*** IUnknown methods ***/ 41005 #define IPackageExecutionStateChangeNotification_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 41006 #define IPackageExecutionStateChangeNotification_AddRef(This) (This)->lpVtbl->AddRef(This) 41007 #define IPackageExecutionStateChangeNotification_Release(This) (This)->lpVtbl->Release(This) 41008 /*** IPackageExecutionStateChangeNotification methods ***/ 41009 #define IPackageExecutionStateChangeNotification_OnStateChanged(This,pszPackageFullName,pesNewState) (This)->lpVtbl->OnStateChanged(This,pszPackageFullName,pesNewState) 41010 #else 41011 /*** IUnknown methods ***/ 41012 static FORCEINLINE HRESULT IPackageExecutionStateChangeNotification_QueryInterface(IPackageExecutionStateChangeNotification* This,REFIID riid,void **ppvObject) { 41013 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 41014 } 41015 static FORCEINLINE ULONG IPackageExecutionStateChangeNotification_AddRef(IPackageExecutionStateChangeNotification* This) { 41016 return This->lpVtbl->AddRef(This); 41017 } 41018 static FORCEINLINE ULONG IPackageExecutionStateChangeNotification_Release(IPackageExecutionStateChangeNotification* This) { 41019 return This->lpVtbl->Release(This); 41020 } 41021 /*** IPackageExecutionStateChangeNotification methods ***/ 41022 static FORCEINLINE HRESULT IPackageExecutionStateChangeNotification_OnStateChanged(IPackageExecutionStateChangeNotification* This,LPCWSTR pszPackageFullName,PACKAGE_EXECUTION_STATE pesNewState) { 41023 return This->lpVtbl->OnStateChanged(This,pszPackageFullName,pesNewState); 41024 } 41025 #endif 41026 #endif 41027 41028 #endif 41029 41030 HRESULT STDMETHODCALLTYPE IPackageExecutionStateChangeNotification_OnStateChanged_Proxy( 41031 IPackageExecutionStateChangeNotification* This, 41032 LPCWSTR pszPackageFullName, 41033 PACKAGE_EXECUTION_STATE pesNewState); 41034 void __RPC_STUB IPackageExecutionStateChangeNotification_OnStateChanged_Stub( 41035 IRpcStubBuffer* This, 41036 IRpcChannelBuffer* pRpcChannelBuffer, 41037 PRPC_MESSAGE pRpcMessage, 41038 DWORD* pdwStubPhase); 41039 41040 #endif /* __IPackageExecutionStateChangeNotification_INTERFACE_DEFINED__ */ 41041 41042 41043 /***************************************************************************** 41044 * IPackageDebugSettings interface 41045 */ 41046 #ifndef __IPackageDebugSettings_INTERFACE_DEFINED__ 41047 #define __IPackageDebugSettings_INTERFACE_DEFINED__ 41048 41049 DEFINE_GUID(IID_IPackageDebugSettings, 0xf27c3930, 0x8029, 0x4ad1, 0x94,0xe3, 0x3d,0xba,0x41,0x78,0x10,0xc1); 41050 #if defined(__cplusplus) && !defined(CINTERFACE) 41051 MIDL_INTERFACE("f27c3930-8029-4ad1-94e3-3dba417810c1") 41052 IPackageDebugSettings : public IUnknown 41053 { 41054 virtual HRESULT STDMETHODCALLTYPE EnableDebugging( 41055 LPCWSTR packageFullName, 41056 LPCWSTR debuggerCommandLine, 41057 PZZWSTR environment) = 0; 41058 41059 virtual HRESULT STDMETHODCALLTYPE DisableDebugging( 41060 LPCWSTR packageFullName) = 0; 41061 41062 virtual HRESULT STDMETHODCALLTYPE Suspend( 41063 LPCWSTR packageFullName) = 0; 41064 41065 virtual HRESULT STDMETHODCALLTYPE Resume( 41066 LPCWSTR packageFullName) = 0; 41067 41068 virtual HRESULT STDMETHODCALLTYPE TerminateAllProcesses( 41069 LPCWSTR packageFullName) = 0; 41070 41071 virtual HRESULT STDMETHODCALLTYPE SetTargetSessionId( 41072 ULONG sessionId) = 0; 41073 41074 virtual HRESULT STDMETHODCALLTYPE EnumerateBackgroundTasks( 41075 LPCWSTR packageFullName, 41076 ULONG *taskCount, 41077 LPCGUID *taskIds, 41078 LPCWSTR **taskNames) = 0; 41079 41080 virtual HRESULT STDMETHODCALLTYPE ActivateBackgroundTask( 41081 LPCGUID taskId) = 0; 41082 41083 virtual HRESULT STDMETHODCALLTYPE StartServicing( 41084 LPCWSTR packageFullName) = 0; 41085 41086 virtual HRESULT STDMETHODCALLTYPE StopServicing( 41087 LPCWSTR packageFullName) = 0; 41088 41089 virtual HRESULT STDMETHODCALLTYPE StartSessionRedirection( 41090 LPCWSTR packageFullName, 41091 ULONG sessionId) = 0; 41092 41093 virtual HRESULT STDMETHODCALLTYPE StopSessionRedirection( 41094 LPCWSTR packageFullName) = 0; 41095 41096 virtual HRESULT STDMETHODCALLTYPE GetPackageExecutionState( 41097 LPCWSTR packageFullName, 41098 PACKAGE_EXECUTION_STATE *packageExecutionState) = 0; 41099 41100 virtual HRESULT STDMETHODCALLTYPE RegisterForPackageStateChanges( 41101 LPCWSTR packageFullName, 41102 IPackageExecutionStateChangeNotification *pPackageExecutionStateChangeNotification, 41103 DWORD *pdwCookie) = 0; 41104 41105 virtual HRESULT STDMETHODCALLTYPE UnregisterForPackageStateChanges( 41106 DWORD dwCookie) = 0; 41107 41108 }; 41109 #ifdef __CRT_UUID_DECL 41110 __CRT_UUID_DECL(IPackageDebugSettings, 0xf27c3930, 0x8029, 0x4ad1, 0x94,0xe3, 0x3d,0xba,0x41,0x78,0x10,0xc1) 41111 #endif 41112 #else 41113 typedef struct IPackageDebugSettingsVtbl { 41114 BEGIN_INTERFACE 41115 41116 /*** IUnknown methods ***/ 41117 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 41118 IPackageDebugSettings* This, 41119 REFIID riid, 41120 void **ppvObject); 41121 41122 ULONG (STDMETHODCALLTYPE *AddRef)( 41123 IPackageDebugSettings* This); 41124 41125 ULONG (STDMETHODCALLTYPE *Release)( 41126 IPackageDebugSettings* This); 41127 41128 /*** IPackageDebugSettings methods ***/ 41129 HRESULT (STDMETHODCALLTYPE *EnableDebugging)( 41130 IPackageDebugSettings* This, 41131 LPCWSTR packageFullName, 41132 LPCWSTR debuggerCommandLine, 41133 PZZWSTR environment); 41134 41135 HRESULT (STDMETHODCALLTYPE *DisableDebugging)( 41136 IPackageDebugSettings* This, 41137 LPCWSTR packageFullName); 41138 41139 HRESULT (STDMETHODCALLTYPE *Suspend)( 41140 IPackageDebugSettings* This, 41141 LPCWSTR packageFullName); 41142 41143 HRESULT (STDMETHODCALLTYPE *Resume)( 41144 IPackageDebugSettings* This, 41145 LPCWSTR packageFullName); 41146 41147 HRESULT (STDMETHODCALLTYPE *TerminateAllProcesses)( 41148 IPackageDebugSettings* This, 41149 LPCWSTR packageFullName); 41150 41151 HRESULT (STDMETHODCALLTYPE *SetTargetSessionId)( 41152 IPackageDebugSettings* This, 41153 ULONG sessionId); 41154 41155 HRESULT (STDMETHODCALLTYPE *EnumerateBackgroundTasks)( 41156 IPackageDebugSettings* This, 41157 LPCWSTR packageFullName, 41158 ULONG *taskCount, 41159 LPCGUID *taskIds, 41160 LPCWSTR **taskNames); 41161 41162 HRESULT (STDMETHODCALLTYPE *ActivateBackgroundTask)( 41163 IPackageDebugSettings* This, 41164 LPCGUID taskId); 41165 41166 HRESULT (STDMETHODCALLTYPE *StartServicing)( 41167 IPackageDebugSettings* This, 41168 LPCWSTR packageFullName); 41169 41170 HRESULT (STDMETHODCALLTYPE *StopServicing)( 41171 IPackageDebugSettings* This, 41172 LPCWSTR packageFullName); 41173 41174 HRESULT (STDMETHODCALLTYPE *StartSessionRedirection)( 41175 IPackageDebugSettings* This, 41176 LPCWSTR packageFullName, 41177 ULONG sessionId); 41178 41179 HRESULT (STDMETHODCALLTYPE *StopSessionRedirection)( 41180 IPackageDebugSettings* This, 41181 LPCWSTR packageFullName); 41182 41183 HRESULT (STDMETHODCALLTYPE *GetPackageExecutionState)( 41184 IPackageDebugSettings* This, 41185 LPCWSTR packageFullName, 41186 PACKAGE_EXECUTION_STATE *packageExecutionState); 41187 41188 HRESULT (STDMETHODCALLTYPE *RegisterForPackageStateChanges)( 41189 IPackageDebugSettings* This, 41190 LPCWSTR packageFullName, 41191 IPackageExecutionStateChangeNotification *pPackageExecutionStateChangeNotification, 41192 DWORD *pdwCookie); 41193 41194 HRESULT (STDMETHODCALLTYPE *UnregisterForPackageStateChanges)( 41195 IPackageDebugSettings* This, 41196 DWORD dwCookie); 41197 41198 END_INTERFACE 41199 } IPackageDebugSettingsVtbl; 41200 interface IPackageDebugSettings { 41201 CONST_VTBL IPackageDebugSettingsVtbl* lpVtbl; 41202 }; 41203 41204 #ifdef COBJMACROS 41205 #ifndef WIDL_C_INLINE_WRAPPERS 41206 /*** IUnknown methods ***/ 41207 #define IPackageDebugSettings_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 41208 #define IPackageDebugSettings_AddRef(This) (This)->lpVtbl->AddRef(This) 41209 #define IPackageDebugSettings_Release(This) (This)->lpVtbl->Release(This) 41210 /*** IPackageDebugSettings methods ***/ 41211 #define IPackageDebugSettings_EnableDebugging(This,packageFullName,debuggerCommandLine,environment) (This)->lpVtbl->EnableDebugging(This,packageFullName,debuggerCommandLine,environment) 41212 #define IPackageDebugSettings_DisableDebugging(This,packageFullName) (This)->lpVtbl->DisableDebugging(This,packageFullName) 41213 #define IPackageDebugSettings_Suspend(This,packageFullName) (This)->lpVtbl->Suspend(This,packageFullName) 41214 #define IPackageDebugSettings_Resume(This,packageFullName) (This)->lpVtbl->Resume(This,packageFullName) 41215 #define IPackageDebugSettings_TerminateAllProcesses(This,packageFullName) (This)->lpVtbl->TerminateAllProcesses(This,packageFullName) 41216 #define IPackageDebugSettings_SetTargetSessionId(This,sessionId) (This)->lpVtbl->SetTargetSessionId(This,sessionId) 41217 #define IPackageDebugSettings_EnumerateBackgroundTasks(This,packageFullName,taskCount,taskIds,taskNames) (This)->lpVtbl->EnumerateBackgroundTasks(This,packageFullName,taskCount,taskIds,taskNames) 41218 #define IPackageDebugSettings_ActivateBackgroundTask(This,taskId) (This)->lpVtbl->ActivateBackgroundTask(This,taskId) 41219 #define IPackageDebugSettings_StartServicing(This,packageFullName) (This)->lpVtbl->StartServicing(This,packageFullName) 41220 #define IPackageDebugSettings_StopServicing(This,packageFullName) (This)->lpVtbl->StopServicing(This,packageFullName) 41221 #define IPackageDebugSettings_StartSessionRedirection(This,packageFullName,sessionId) (This)->lpVtbl->StartSessionRedirection(This,packageFullName,sessionId) 41222 #define IPackageDebugSettings_StopSessionRedirection(This,packageFullName) (This)->lpVtbl->StopSessionRedirection(This,packageFullName) 41223 #define IPackageDebugSettings_GetPackageExecutionState(This,packageFullName,packageExecutionState) (This)->lpVtbl->GetPackageExecutionState(This,packageFullName,packageExecutionState) 41224 #define IPackageDebugSettings_RegisterForPackageStateChanges(This,packageFullName,pPackageExecutionStateChangeNotification,pdwCookie) (This)->lpVtbl->RegisterForPackageStateChanges(This,packageFullName,pPackageExecutionStateChangeNotification,pdwCookie) 41225 #define IPackageDebugSettings_UnregisterForPackageStateChanges(This,dwCookie) (This)->lpVtbl->UnregisterForPackageStateChanges(This,dwCookie) 41226 #else 41227 /*** IUnknown methods ***/ 41228 static FORCEINLINE HRESULT IPackageDebugSettings_QueryInterface(IPackageDebugSettings* This,REFIID riid,void **ppvObject) { 41229 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 41230 } 41231 static FORCEINLINE ULONG IPackageDebugSettings_AddRef(IPackageDebugSettings* This) { 41232 return This->lpVtbl->AddRef(This); 41233 } 41234 static FORCEINLINE ULONG IPackageDebugSettings_Release(IPackageDebugSettings* This) { 41235 return This->lpVtbl->Release(This); 41236 } 41237 /*** IPackageDebugSettings methods ***/ 41238 static FORCEINLINE HRESULT IPackageDebugSettings_EnableDebugging(IPackageDebugSettings* This,LPCWSTR packageFullName,LPCWSTR debuggerCommandLine,PZZWSTR environment) { 41239 return This->lpVtbl->EnableDebugging(This,packageFullName,debuggerCommandLine,environment); 41240 } 41241 static FORCEINLINE HRESULT IPackageDebugSettings_DisableDebugging(IPackageDebugSettings* This,LPCWSTR packageFullName) { 41242 return This->lpVtbl->DisableDebugging(This,packageFullName); 41243 } 41244 static FORCEINLINE HRESULT IPackageDebugSettings_Suspend(IPackageDebugSettings* This,LPCWSTR packageFullName) { 41245 return This->lpVtbl->Suspend(This,packageFullName); 41246 } 41247 static FORCEINLINE HRESULT IPackageDebugSettings_Resume(IPackageDebugSettings* This,LPCWSTR packageFullName) { 41248 return This->lpVtbl->Resume(This,packageFullName); 41249 } 41250 static FORCEINLINE HRESULT IPackageDebugSettings_TerminateAllProcesses(IPackageDebugSettings* This,LPCWSTR packageFullName) { 41251 return This->lpVtbl->TerminateAllProcesses(This,packageFullName); 41252 } 41253 static FORCEINLINE HRESULT IPackageDebugSettings_SetTargetSessionId(IPackageDebugSettings* This,ULONG sessionId) { 41254 return This->lpVtbl->SetTargetSessionId(This,sessionId); 41255 } 41256 static FORCEINLINE HRESULT IPackageDebugSettings_EnumerateBackgroundTasks(IPackageDebugSettings* This,LPCWSTR packageFullName,ULONG *taskCount,LPCGUID *taskIds,LPCWSTR **taskNames) { 41257 return This->lpVtbl->EnumerateBackgroundTasks(This,packageFullName,taskCount,taskIds,taskNames); 41258 } 41259 static FORCEINLINE HRESULT IPackageDebugSettings_ActivateBackgroundTask(IPackageDebugSettings* This,LPCGUID taskId) { 41260 return This->lpVtbl->ActivateBackgroundTask(This,taskId); 41261 } 41262 static FORCEINLINE HRESULT IPackageDebugSettings_StartServicing(IPackageDebugSettings* This,LPCWSTR packageFullName) { 41263 return This->lpVtbl->StartServicing(This,packageFullName); 41264 } 41265 static FORCEINLINE HRESULT IPackageDebugSettings_StopServicing(IPackageDebugSettings* This,LPCWSTR packageFullName) { 41266 return This->lpVtbl->StopServicing(This,packageFullName); 41267 } 41268 static FORCEINLINE HRESULT IPackageDebugSettings_StartSessionRedirection(IPackageDebugSettings* This,LPCWSTR packageFullName,ULONG sessionId) { 41269 return This->lpVtbl->StartSessionRedirection(This,packageFullName,sessionId); 41270 } 41271 static FORCEINLINE HRESULT IPackageDebugSettings_StopSessionRedirection(IPackageDebugSettings* This,LPCWSTR packageFullName) { 41272 return This->lpVtbl->StopSessionRedirection(This,packageFullName); 41273 } 41274 static FORCEINLINE HRESULT IPackageDebugSettings_GetPackageExecutionState(IPackageDebugSettings* This,LPCWSTR packageFullName,PACKAGE_EXECUTION_STATE *packageExecutionState) { 41275 return This->lpVtbl->GetPackageExecutionState(This,packageFullName,packageExecutionState); 41276 } 41277 static FORCEINLINE HRESULT IPackageDebugSettings_RegisterForPackageStateChanges(IPackageDebugSettings* This,LPCWSTR packageFullName,IPackageExecutionStateChangeNotification *pPackageExecutionStateChangeNotification,DWORD *pdwCookie) { 41278 return This->lpVtbl->RegisterForPackageStateChanges(This,packageFullName,pPackageExecutionStateChangeNotification,pdwCookie); 41279 } 41280 static FORCEINLINE HRESULT IPackageDebugSettings_UnregisterForPackageStateChanges(IPackageDebugSettings* This,DWORD dwCookie) { 41281 return This->lpVtbl->UnregisterForPackageStateChanges(This,dwCookie); 41282 } 41283 #endif 41284 #endif 41285 41286 #endif 41287 41288 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_EnableDebugging_Proxy( 41289 IPackageDebugSettings* This, 41290 LPCWSTR packageFullName, 41291 LPCWSTR debuggerCommandLine, 41292 PZZWSTR environment); 41293 void __RPC_STUB IPackageDebugSettings_EnableDebugging_Stub( 41294 IRpcStubBuffer* This, 41295 IRpcChannelBuffer* pRpcChannelBuffer, 41296 PRPC_MESSAGE pRpcMessage, 41297 DWORD* pdwStubPhase); 41298 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_DisableDebugging_Proxy( 41299 IPackageDebugSettings* This, 41300 LPCWSTR packageFullName); 41301 void __RPC_STUB IPackageDebugSettings_DisableDebugging_Stub( 41302 IRpcStubBuffer* This, 41303 IRpcChannelBuffer* pRpcChannelBuffer, 41304 PRPC_MESSAGE pRpcMessage, 41305 DWORD* pdwStubPhase); 41306 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_Suspend_Proxy( 41307 IPackageDebugSettings* This, 41308 LPCWSTR packageFullName); 41309 void __RPC_STUB IPackageDebugSettings_Suspend_Stub( 41310 IRpcStubBuffer* This, 41311 IRpcChannelBuffer* pRpcChannelBuffer, 41312 PRPC_MESSAGE pRpcMessage, 41313 DWORD* pdwStubPhase); 41314 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_Resume_Proxy( 41315 IPackageDebugSettings* This, 41316 LPCWSTR packageFullName); 41317 void __RPC_STUB IPackageDebugSettings_Resume_Stub( 41318 IRpcStubBuffer* This, 41319 IRpcChannelBuffer* pRpcChannelBuffer, 41320 PRPC_MESSAGE pRpcMessage, 41321 DWORD* pdwStubPhase); 41322 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_TerminateAllProcesses_Proxy( 41323 IPackageDebugSettings* This, 41324 LPCWSTR packageFullName); 41325 void __RPC_STUB IPackageDebugSettings_TerminateAllProcesses_Stub( 41326 IRpcStubBuffer* This, 41327 IRpcChannelBuffer* pRpcChannelBuffer, 41328 PRPC_MESSAGE pRpcMessage, 41329 DWORD* pdwStubPhase); 41330 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_SetTargetSessionId_Proxy( 41331 IPackageDebugSettings* This, 41332 ULONG sessionId); 41333 void __RPC_STUB IPackageDebugSettings_SetTargetSessionId_Stub( 41334 IRpcStubBuffer* This, 41335 IRpcChannelBuffer* pRpcChannelBuffer, 41336 PRPC_MESSAGE pRpcMessage, 41337 DWORD* pdwStubPhase); 41338 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_EnumerateBackgroundTasks_Proxy( 41339 IPackageDebugSettings* This, 41340 LPCWSTR packageFullName, 41341 ULONG *taskCount, 41342 LPCGUID *taskIds, 41343 LPCWSTR **taskNames); 41344 void __RPC_STUB IPackageDebugSettings_EnumerateBackgroundTasks_Stub( 41345 IRpcStubBuffer* This, 41346 IRpcChannelBuffer* pRpcChannelBuffer, 41347 PRPC_MESSAGE pRpcMessage, 41348 DWORD* pdwStubPhase); 41349 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_ActivateBackgroundTask_Proxy( 41350 IPackageDebugSettings* This, 41351 LPCGUID taskId); 41352 void __RPC_STUB IPackageDebugSettings_ActivateBackgroundTask_Stub( 41353 IRpcStubBuffer* This, 41354 IRpcChannelBuffer* pRpcChannelBuffer, 41355 PRPC_MESSAGE pRpcMessage, 41356 DWORD* pdwStubPhase); 41357 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_StartServicing_Proxy( 41358 IPackageDebugSettings* This, 41359 LPCWSTR packageFullName); 41360 void __RPC_STUB IPackageDebugSettings_StartServicing_Stub( 41361 IRpcStubBuffer* This, 41362 IRpcChannelBuffer* pRpcChannelBuffer, 41363 PRPC_MESSAGE pRpcMessage, 41364 DWORD* pdwStubPhase); 41365 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_StopServicing_Proxy( 41366 IPackageDebugSettings* This, 41367 LPCWSTR packageFullName); 41368 void __RPC_STUB IPackageDebugSettings_StopServicing_Stub( 41369 IRpcStubBuffer* This, 41370 IRpcChannelBuffer* pRpcChannelBuffer, 41371 PRPC_MESSAGE pRpcMessage, 41372 DWORD* pdwStubPhase); 41373 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_StartSessionRedirection_Proxy( 41374 IPackageDebugSettings* This, 41375 LPCWSTR packageFullName, 41376 ULONG sessionId); 41377 void __RPC_STUB IPackageDebugSettings_StartSessionRedirection_Stub( 41378 IRpcStubBuffer* This, 41379 IRpcChannelBuffer* pRpcChannelBuffer, 41380 PRPC_MESSAGE pRpcMessage, 41381 DWORD* pdwStubPhase); 41382 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_StopSessionRedirection_Proxy( 41383 IPackageDebugSettings* This, 41384 LPCWSTR packageFullName); 41385 void __RPC_STUB IPackageDebugSettings_StopSessionRedirection_Stub( 41386 IRpcStubBuffer* This, 41387 IRpcChannelBuffer* pRpcChannelBuffer, 41388 PRPC_MESSAGE pRpcMessage, 41389 DWORD* pdwStubPhase); 41390 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_GetPackageExecutionState_Proxy( 41391 IPackageDebugSettings* This, 41392 LPCWSTR packageFullName, 41393 PACKAGE_EXECUTION_STATE *packageExecutionState); 41394 void __RPC_STUB IPackageDebugSettings_GetPackageExecutionState_Stub( 41395 IRpcStubBuffer* This, 41396 IRpcChannelBuffer* pRpcChannelBuffer, 41397 PRPC_MESSAGE pRpcMessage, 41398 DWORD* pdwStubPhase); 41399 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_RegisterForPackageStateChanges_Proxy( 41400 IPackageDebugSettings* This, 41401 LPCWSTR packageFullName, 41402 IPackageExecutionStateChangeNotification *pPackageExecutionStateChangeNotification, 41403 DWORD *pdwCookie); 41404 void __RPC_STUB IPackageDebugSettings_RegisterForPackageStateChanges_Stub( 41405 IRpcStubBuffer* This, 41406 IRpcChannelBuffer* pRpcChannelBuffer, 41407 PRPC_MESSAGE pRpcMessage, 41408 DWORD* pdwStubPhase); 41409 HRESULT STDMETHODCALLTYPE IPackageDebugSettings_UnregisterForPackageStateChanges_Proxy( 41410 IPackageDebugSettings* This, 41411 DWORD dwCookie); 41412 void __RPC_STUB IPackageDebugSettings_UnregisterForPackageStateChanges_Stub( 41413 IRpcStubBuffer* This, 41414 IRpcChannelBuffer* pRpcChannelBuffer, 41415 PRPC_MESSAGE pRpcMessage, 41416 DWORD* pdwStubPhase); 41417 41418 #endif /* __IPackageDebugSettings_INTERFACE_DEFINED__ */ 41419 41420 41421 typedef enum AHE_TYPE { 41422 AHE_DESKTOP = 0, 41423 AHE_IMMERSIVE = 1 41424 } AHE_TYPE; 41425 41426 /***************************************************************************** 41427 * IExecuteCommandApplicationHostEnvironment interface 41428 */ 41429 #ifndef __IExecuteCommandApplicationHostEnvironment_INTERFACE_DEFINED__ 41430 #define __IExecuteCommandApplicationHostEnvironment_INTERFACE_DEFINED__ 41431 41432 DEFINE_GUID(IID_IExecuteCommandApplicationHostEnvironment, 0x18b21aa9, 0xe184, 0x4ff0, 0x9f,0x5e, 0xf8,0x82,0xd0,0x37,0x71,0xb3); 41433 #if defined(__cplusplus) && !defined(CINTERFACE) 41434 MIDL_INTERFACE("18b21aa9-e184-4ff0-9f5e-f882d03771b3") 41435 IExecuteCommandApplicationHostEnvironment : public IUnknown 41436 { 41437 virtual HRESULT STDMETHODCALLTYPE GetValue( 41438 AHE_TYPE *pahe) = 0; 41439 41440 }; 41441 #ifdef __CRT_UUID_DECL 41442 __CRT_UUID_DECL(IExecuteCommandApplicationHostEnvironment, 0x18b21aa9, 0xe184, 0x4ff0, 0x9f,0x5e, 0xf8,0x82,0xd0,0x37,0x71,0xb3) 41443 #endif 41444 #else 41445 typedef struct IExecuteCommandApplicationHostEnvironmentVtbl { 41446 BEGIN_INTERFACE 41447 41448 /*** IUnknown methods ***/ 41449 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 41450 IExecuteCommandApplicationHostEnvironment* This, 41451 REFIID riid, 41452 void **ppvObject); 41453 41454 ULONG (STDMETHODCALLTYPE *AddRef)( 41455 IExecuteCommandApplicationHostEnvironment* This); 41456 41457 ULONG (STDMETHODCALLTYPE *Release)( 41458 IExecuteCommandApplicationHostEnvironment* This); 41459 41460 /*** IExecuteCommandApplicationHostEnvironment methods ***/ 41461 HRESULT (STDMETHODCALLTYPE *GetValue)( 41462 IExecuteCommandApplicationHostEnvironment* This, 41463 AHE_TYPE *pahe); 41464 41465 END_INTERFACE 41466 } IExecuteCommandApplicationHostEnvironmentVtbl; 41467 interface IExecuteCommandApplicationHostEnvironment { 41468 CONST_VTBL IExecuteCommandApplicationHostEnvironmentVtbl* lpVtbl; 41469 }; 41470 41471 #ifdef COBJMACROS 41472 #ifndef WIDL_C_INLINE_WRAPPERS 41473 /*** IUnknown methods ***/ 41474 #define IExecuteCommandApplicationHostEnvironment_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 41475 #define IExecuteCommandApplicationHostEnvironment_AddRef(This) (This)->lpVtbl->AddRef(This) 41476 #define IExecuteCommandApplicationHostEnvironment_Release(This) (This)->lpVtbl->Release(This) 41477 /*** IExecuteCommandApplicationHostEnvironment methods ***/ 41478 #define IExecuteCommandApplicationHostEnvironment_GetValue(This,pahe) (This)->lpVtbl->GetValue(This,pahe) 41479 #else 41480 /*** IUnknown methods ***/ 41481 static FORCEINLINE HRESULT IExecuteCommandApplicationHostEnvironment_QueryInterface(IExecuteCommandApplicationHostEnvironment* This,REFIID riid,void **ppvObject) { 41482 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 41483 } 41484 static FORCEINLINE ULONG IExecuteCommandApplicationHostEnvironment_AddRef(IExecuteCommandApplicationHostEnvironment* This) { 41485 return This->lpVtbl->AddRef(This); 41486 } 41487 static FORCEINLINE ULONG IExecuteCommandApplicationHostEnvironment_Release(IExecuteCommandApplicationHostEnvironment* This) { 41488 return This->lpVtbl->Release(This); 41489 } 41490 /*** IExecuteCommandApplicationHostEnvironment methods ***/ 41491 static FORCEINLINE HRESULT IExecuteCommandApplicationHostEnvironment_GetValue(IExecuteCommandApplicationHostEnvironment* This,AHE_TYPE *pahe) { 41492 return This->lpVtbl->GetValue(This,pahe); 41493 } 41494 #endif 41495 #endif 41496 41497 #endif 41498 41499 HRESULT STDMETHODCALLTYPE IExecuteCommandApplicationHostEnvironment_GetValue_Proxy( 41500 IExecuteCommandApplicationHostEnvironment* This, 41501 AHE_TYPE *pahe); 41502 void __RPC_STUB IExecuteCommandApplicationHostEnvironment_GetValue_Stub( 41503 IRpcStubBuffer* This, 41504 IRpcChannelBuffer* pRpcChannelBuffer, 41505 PRPC_MESSAGE pRpcMessage, 41506 DWORD* pdwStubPhase); 41507 41508 #endif /* __IExecuteCommandApplicationHostEnvironment_INTERFACE_DEFINED__ */ 41509 41510 41511 typedef enum EC_HOST_UI_MODE { 41512 ECHUIM_DESKTOP = 0, 41513 ECHUIM_IMMERSIVE = 1, 41514 ECHUIM_SYSTEM_LAUNCHER = 2 41515 } EC_HOST_UI_MODE; 41516 41517 /***************************************************************************** 41518 * IExecuteCommandHost interface 41519 */ 41520 #ifndef __IExecuteCommandHost_INTERFACE_DEFINED__ 41521 #define __IExecuteCommandHost_INTERFACE_DEFINED__ 41522 41523 DEFINE_GUID(IID_IExecuteCommandHost, 0x4b6832a2, 0x5f04, 0x4c9d, 0xb8,0x9d, 0x72,0x7a,0x15,0xd1,0x03,0xe7); 41524 #if defined(__cplusplus) && !defined(CINTERFACE) 41525 MIDL_INTERFACE("4b6832a2-5f04-4c9d-b89d-727a15d103e7") 41526 IExecuteCommandHost : public IUnknown 41527 { 41528 virtual HRESULT STDMETHODCALLTYPE GetUIMode( 41529 EC_HOST_UI_MODE *pUIMode) = 0; 41530 41531 }; 41532 #ifdef __CRT_UUID_DECL 41533 __CRT_UUID_DECL(IExecuteCommandHost, 0x4b6832a2, 0x5f04, 0x4c9d, 0xb8,0x9d, 0x72,0x7a,0x15,0xd1,0x03,0xe7) 41534 #endif 41535 #else 41536 typedef struct IExecuteCommandHostVtbl { 41537 BEGIN_INTERFACE 41538 41539 /*** IUnknown methods ***/ 41540 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 41541 IExecuteCommandHost* This, 41542 REFIID riid, 41543 void **ppvObject); 41544 41545 ULONG (STDMETHODCALLTYPE *AddRef)( 41546 IExecuteCommandHost* This); 41547 41548 ULONG (STDMETHODCALLTYPE *Release)( 41549 IExecuteCommandHost* This); 41550 41551 /*** IExecuteCommandHost methods ***/ 41552 HRESULT (STDMETHODCALLTYPE *GetUIMode)( 41553 IExecuteCommandHost* This, 41554 EC_HOST_UI_MODE *pUIMode); 41555 41556 END_INTERFACE 41557 } IExecuteCommandHostVtbl; 41558 interface IExecuteCommandHost { 41559 CONST_VTBL IExecuteCommandHostVtbl* lpVtbl; 41560 }; 41561 41562 #ifdef COBJMACROS 41563 #ifndef WIDL_C_INLINE_WRAPPERS 41564 /*** IUnknown methods ***/ 41565 #define IExecuteCommandHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 41566 #define IExecuteCommandHost_AddRef(This) (This)->lpVtbl->AddRef(This) 41567 #define IExecuteCommandHost_Release(This) (This)->lpVtbl->Release(This) 41568 /*** IExecuteCommandHost methods ***/ 41569 #define IExecuteCommandHost_GetUIMode(This,pUIMode) (This)->lpVtbl->GetUIMode(This,pUIMode) 41570 #else 41571 /*** IUnknown methods ***/ 41572 static FORCEINLINE HRESULT IExecuteCommandHost_QueryInterface(IExecuteCommandHost* This,REFIID riid,void **ppvObject) { 41573 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 41574 } 41575 static FORCEINLINE ULONG IExecuteCommandHost_AddRef(IExecuteCommandHost* This) { 41576 return This->lpVtbl->AddRef(This); 41577 } 41578 static FORCEINLINE ULONG IExecuteCommandHost_Release(IExecuteCommandHost* This) { 41579 return This->lpVtbl->Release(This); 41580 } 41581 /*** IExecuteCommandHost methods ***/ 41582 static FORCEINLINE HRESULT IExecuteCommandHost_GetUIMode(IExecuteCommandHost* This,EC_HOST_UI_MODE *pUIMode) { 41583 return This->lpVtbl->GetUIMode(This,pUIMode); 41584 } 41585 #endif 41586 #endif 41587 41588 #endif 41589 41590 HRESULT STDMETHODCALLTYPE IExecuteCommandHost_GetUIMode_Proxy( 41591 IExecuteCommandHost* This, 41592 EC_HOST_UI_MODE *pUIMode); 41593 void __RPC_STUB IExecuteCommandHost_GetUIMode_Stub( 41594 IRpcStubBuffer* This, 41595 IRpcChannelBuffer* pRpcChannelBuffer, 41596 PRPC_MESSAGE pRpcMessage, 41597 DWORD* pdwStubPhase); 41598 41599 #endif /* __IExecuteCommandHost_INTERFACE_DEFINED__ */ 41600 41601 41602 #define SID_ExecuteCommandHost IID_IExecuteCommandHost 41603 41604 typedef enum APPLICATION_VIEW_STATE { 41605 AVS_FULLSCREEN_LANDSCAPE = 0, 41606 AVS_FILLED = 1, 41607 AVS_SNAPPED = 2, 41608 AVS_FULLSCREEN_PORTRAIT = 3 41609 } APPLICATION_VIEW_STATE; 41610 41611 typedef enum EDGE_GESTURE_KIND { 41612 EGK_TOUCH = 0, 41613 EGK_KEYBOARD = 1, 41614 EGK_MOUSE = 2 41615 } EDGE_GESTURE_KIND; 41616 41617 /***************************************************************************** 41618 * IApplicationDesignModeSettings interface 41619 */ 41620 #ifndef __IApplicationDesignModeSettings_INTERFACE_DEFINED__ 41621 #define __IApplicationDesignModeSettings_INTERFACE_DEFINED__ 41622 41623 DEFINE_GUID(IID_IApplicationDesignModeSettings, 0x2a3dee9a, 0xe31d, 0x46d6, 0x85,0x08, 0xbc,0xc5,0x97,0xdb,0x35,0x57); 41624 #if defined(__cplusplus) && !defined(CINTERFACE) 41625 MIDL_INTERFACE("2a3dee9a-e31d-46d6-8508-bcc597db3557") 41626 IApplicationDesignModeSettings : public IUnknown 41627 { 41628 virtual HRESULT STDMETHODCALLTYPE SetNativeDisplaySize( 41629 SIZE sizeNativeDisplay) = 0; 41630 41631 virtual HRESULT STDMETHODCALLTYPE SetScaleFactor( 41632 DEVICE_SCALE_FACTOR scaleFactor) = 0; 41633 41634 virtual HRESULT STDMETHODCALLTYPE SetApplicationViewState( 41635 APPLICATION_VIEW_STATE viewState) = 0; 41636 41637 virtual HRESULT STDMETHODCALLTYPE ComputeApplicationSize( 41638 SIZE *psizeApplication) = 0; 41639 41640 virtual HRESULT STDMETHODCALLTYPE IsApplicationViewStateSupported( 41641 APPLICATION_VIEW_STATE viewState, 41642 SIZE sizeNativeDisplay, 41643 DEVICE_SCALE_FACTOR scaleFactor, 41644 WINBOOL *pfSupported) = 0; 41645 41646 virtual HRESULT STDMETHODCALLTYPE TriggerEdgeGesture( 41647 EDGE_GESTURE_KIND edgeGestureKind) = 0; 41648 41649 }; 41650 #ifdef __CRT_UUID_DECL 41651 __CRT_UUID_DECL(IApplicationDesignModeSettings, 0x2a3dee9a, 0xe31d, 0x46d6, 0x85,0x08, 0xbc,0xc5,0x97,0xdb,0x35,0x57) 41652 #endif 41653 #else 41654 typedef struct IApplicationDesignModeSettingsVtbl { 41655 BEGIN_INTERFACE 41656 41657 /*** IUnknown methods ***/ 41658 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 41659 IApplicationDesignModeSettings* This, 41660 REFIID riid, 41661 void **ppvObject); 41662 41663 ULONG (STDMETHODCALLTYPE *AddRef)( 41664 IApplicationDesignModeSettings* This); 41665 41666 ULONG (STDMETHODCALLTYPE *Release)( 41667 IApplicationDesignModeSettings* This); 41668 41669 /*** IApplicationDesignModeSettings methods ***/ 41670 HRESULT (STDMETHODCALLTYPE *SetNativeDisplaySize)( 41671 IApplicationDesignModeSettings* This, 41672 SIZE sizeNativeDisplay); 41673 41674 HRESULT (STDMETHODCALLTYPE *SetScaleFactor)( 41675 IApplicationDesignModeSettings* This, 41676 DEVICE_SCALE_FACTOR scaleFactor); 41677 41678 HRESULT (STDMETHODCALLTYPE *SetApplicationViewState)( 41679 IApplicationDesignModeSettings* This, 41680 APPLICATION_VIEW_STATE viewState); 41681 41682 HRESULT (STDMETHODCALLTYPE *ComputeApplicationSize)( 41683 IApplicationDesignModeSettings* This, 41684 SIZE *psizeApplication); 41685 41686 HRESULT (STDMETHODCALLTYPE *IsApplicationViewStateSupported)( 41687 IApplicationDesignModeSettings* This, 41688 APPLICATION_VIEW_STATE viewState, 41689 SIZE sizeNativeDisplay, 41690 DEVICE_SCALE_FACTOR scaleFactor, 41691 WINBOOL *pfSupported); 41692 41693 HRESULT (STDMETHODCALLTYPE *TriggerEdgeGesture)( 41694 IApplicationDesignModeSettings* This, 41695 EDGE_GESTURE_KIND edgeGestureKind); 41696 41697 END_INTERFACE 41698 } IApplicationDesignModeSettingsVtbl; 41699 interface IApplicationDesignModeSettings { 41700 CONST_VTBL IApplicationDesignModeSettingsVtbl* lpVtbl; 41701 }; 41702 41703 #ifdef COBJMACROS 41704 #ifndef WIDL_C_INLINE_WRAPPERS 41705 /*** IUnknown methods ***/ 41706 #define IApplicationDesignModeSettings_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 41707 #define IApplicationDesignModeSettings_AddRef(This) (This)->lpVtbl->AddRef(This) 41708 #define IApplicationDesignModeSettings_Release(This) (This)->lpVtbl->Release(This) 41709 /*** IApplicationDesignModeSettings methods ***/ 41710 #define IApplicationDesignModeSettings_SetNativeDisplaySize(This,sizeNativeDisplay) (This)->lpVtbl->SetNativeDisplaySize(This,sizeNativeDisplay) 41711 #define IApplicationDesignModeSettings_SetScaleFactor(This,scaleFactor) (This)->lpVtbl->SetScaleFactor(This,scaleFactor) 41712 #define IApplicationDesignModeSettings_SetApplicationViewState(This,viewState) (This)->lpVtbl->SetApplicationViewState(This,viewState) 41713 #define IApplicationDesignModeSettings_ComputeApplicationSize(This,psizeApplication) (This)->lpVtbl->ComputeApplicationSize(This,psizeApplication) 41714 #define IApplicationDesignModeSettings_IsApplicationViewStateSupported(This,viewState,sizeNativeDisplay,scaleFactor,pfSupported) (This)->lpVtbl->IsApplicationViewStateSupported(This,viewState,sizeNativeDisplay,scaleFactor,pfSupported) 41715 #define IApplicationDesignModeSettings_TriggerEdgeGesture(This,edgeGestureKind) (This)->lpVtbl->TriggerEdgeGesture(This,edgeGestureKind) 41716 #else 41717 /*** IUnknown methods ***/ 41718 static FORCEINLINE HRESULT IApplicationDesignModeSettings_QueryInterface(IApplicationDesignModeSettings* This,REFIID riid,void **ppvObject) { 41719 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 41720 } 41721 static FORCEINLINE ULONG IApplicationDesignModeSettings_AddRef(IApplicationDesignModeSettings* This) { 41722 return This->lpVtbl->AddRef(This); 41723 } 41724 static FORCEINLINE ULONG IApplicationDesignModeSettings_Release(IApplicationDesignModeSettings* This) { 41725 return This->lpVtbl->Release(This); 41726 } 41727 /*** IApplicationDesignModeSettings methods ***/ 41728 static FORCEINLINE HRESULT IApplicationDesignModeSettings_SetNativeDisplaySize(IApplicationDesignModeSettings* This,SIZE sizeNativeDisplay) { 41729 return This->lpVtbl->SetNativeDisplaySize(This,sizeNativeDisplay); 41730 } 41731 static FORCEINLINE HRESULT IApplicationDesignModeSettings_SetScaleFactor(IApplicationDesignModeSettings* This,DEVICE_SCALE_FACTOR scaleFactor) { 41732 return This->lpVtbl->SetScaleFactor(This,scaleFactor); 41733 } 41734 static FORCEINLINE HRESULT IApplicationDesignModeSettings_SetApplicationViewState(IApplicationDesignModeSettings* This,APPLICATION_VIEW_STATE viewState) { 41735 return This->lpVtbl->SetApplicationViewState(This,viewState); 41736 } 41737 static FORCEINLINE HRESULT IApplicationDesignModeSettings_ComputeApplicationSize(IApplicationDesignModeSettings* This,SIZE *psizeApplication) { 41738 return This->lpVtbl->ComputeApplicationSize(This,psizeApplication); 41739 } 41740 static FORCEINLINE HRESULT IApplicationDesignModeSettings_IsApplicationViewStateSupported(IApplicationDesignModeSettings* This,APPLICATION_VIEW_STATE viewState,SIZE sizeNativeDisplay,DEVICE_SCALE_FACTOR scaleFactor,WINBOOL *pfSupported) { 41741 return This->lpVtbl->IsApplicationViewStateSupported(This,viewState,sizeNativeDisplay,scaleFactor,pfSupported); 41742 } 41743 static FORCEINLINE HRESULT IApplicationDesignModeSettings_TriggerEdgeGesture(IApplicationDesignModeSettings* This,EDGE_GESTURE_KIND edgeGestureKind) { 41744 return This->lpVtbl->TriggerEdgeGesture(This,edgeGestureKind); 41745 } 41746 #endif 41747 #endif 41748 41749 #endif 41750 41751 HRESULT STDMETHODCALLTYPE IApplicationDesignModeSettings_SetNativeDisplaySize_Proxy( 41752 IApplicationDesignModeSettings* This, 41753 SIZE sizeNativeDisplay); 41754 void __RPC_STUB IApplicationDesignModeSettings_SetNativeDisplaySize_Stub( 41755 IRpcStubBuffer* This, 41756 IRpcChannelBuffer* pRpcChannelBuffer, 41757 PRPC_MESSAGE pRpcMessage, 41758 DWORD* pdwStubPhase); 41759 HRESULT STDMETHODCALLTYPE IApplicationDesignModeSettings_SetScaleFactor_Proxy( 41760 IApplicationDesignModeSettings* This, 41761 DEVICE_SCALE_FACTOR scaleFactor); 41762 void __RPC_STUB IApplicationDesignModeSettings_SetScaleFactor_Stub( 41763 IRpcStubBuffer* This, 41764 IRpcChannelBuffer* pRpcChannelBuffer, 41765 PRPC_MESSAGE pRpcMessage, 41766 DWORD* pdwStubPhase); 41767 HRESULT STDMETHODCALLTYPE IApplicationDesignModeSettings_SetApplicationViewState_Proxy( 41768 IApplicationDesignModeSettings* This, 41769 APPLICATION_VIEW_STATE viewState); 41770 void __RPC_STUB IApplicationDesignModeSettings_SetApplicationViewState_Stub( 41771 IRpcStubBuffer* This, 41772 IRpcChannelBuffer* pRpcChannelBuffer, 41773 PRPC_MESSAGE pRpcMessage, 41774 DWORD* pdwStubPhase); 41775 HRESULT STDMETHODCALLTYPE IApplicationDesignModeSettings_ComputeApplicationSize_Proxy( 41776 IApplicationDesignModeSettings* This, 41777 SIZE *psizeApplication); 41778 void __RPC_STUB IApplicationDesignModeSettings_ComputeApplicationSize_Stub( 41779 IRpcStubBuffer* This, 41780 IRpcChannelBuffer* pRpcChannelBuffer, 41781 PRPC_MESSAGE pRpcMessage, 41782 DWORD* pdwStubPhase); 41783 HRESULT STDMETHODCALLTYPE IApplicationDesignModeSettings_IsApplicationViewStateSupported_Proxy( 41784 IApplicationDesignModeSettings* This, 41785 APPLICATION_VIEW_STATE viewState, 41786 SIZE sizeNativeDisplay, 41787 DEVICE_SCALE_FACTOR scaleFactor, 41788 WINBOOL *pfSupported); 41789 void __RPC_STUB IApplicationDesignModeSettings_IsApplicationViewStateSupported_Stub( 41790 IRpcStubBuffer* This, 41791 IRpcChannelBuffer* pRpcChannelBuffer, 41792 PRPC_MESSAGE pRpcMessage, 41793 DWORD* pdwStubPhase); 41794 HRESULT STDMETHODCALLTYPE IApplicationDesignModeSettings_TriggerEdgeGesture_Proxy( 41795 IApplicationDesignModeSettings* This, 41796 EDGE_GESTURE_KIND edgeGestureKind); 41797 void __RPC_STUB IApplicationDesignModeSettings_TriggerEdgeGesture_Stub( 41798 IRpcStubBuffer* This, 41799 IRpcChannelBuffer* pRpcChannelBuffer, 41800 PRPC_MESSAGE pRpcMessage, 41801 DWORD* pdwStubPhase); 41802 41803 #endif /* __IApplicationDesignModeSettings_INTERFACE_DEFINED__ */ 41804 41805 41806 /***************************************************************************** 41807 * IInitializeWithWindow interface 41808 */ 41809 #ifndef __IInitializeWithWindow_INTERFACE_DEFINED__ 41810 #define __IInitializeWithWindow_INTERFACE_DEFINED__ 41811 41812 DEFINE_GUID(IID_IInitializeWithWindow, 0x3e68d4bd, 0x7135, 0x4d10, 0x80,0x18, 0x9f,0xb6,0xd9,0xf3,0x3f,0xa1); 41813 #if defined(__cplusplus) && !defined(CINTERFACE) 41814 MIDL_INTERFACE("3e68d4bd-7135-4d10-8018-9fb6d9f33fa1") 41815 IInitializeWithWindow : public IUnknown 41816 { 41817 virtual HRESULT STDMETHODCALLTYPE Initialize( 41818 HWND hwnd) = 0; 41819 41820 }; 41821 #ifdef __CRT_UUID_DECL 41822 __CRT_UUID_DECL(IInitializeWithWindow, 0x3e68d4bd, 0x7135, 0x4d10, 0x80,0x18, 0x9f,0xb6,0xd9,0xf3,0x3f,0xa1) 41823 #endif 41824 #else 41825 typedef struct IInitializeWithWindowVtbl { 41826 BEGIN_INTERFACE 41827 41828 /*** IUnknown methods ***/ 41829 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 41830 IInitializeWithWindow* This, 41831 REFIID riid, 41832 void **ppvObject); 41833 41834 ULONG (STDMETHODCALLTYPE *AddRef)( 41835 IInitializeWithWindow* This); 41836 41837 ULONG (STDMETHODCALLTYPE *Release)( 41838 IInitializeWithWindow* This); 41839 41840 /*** IInitializeWithWindow methods ***/ 41841 HRESULT (STDMETHODCALLTYPE *Initialize)( 41842 IInitializeWithWindow* This, 41843 HWND hwnd); 41844 41845 END_INTERFACE 41846 } IInitializeWithWindowVtbl; 41847 interface IInitializeWithWindow { 41848 CONST_VTBL IInitializeWithWindowVtbl* lpVtbl; 41849 }; 41850 41851 #ifdef COBJMACROS 41852 #ifndef WIDL_C_INLINE_WRAPPERS 41853 /*** IUnknown methods ***/ 41854 #define IInitializeWithWindow_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 41855 #define IInitializeWithWindow_AddRef(This) (This)->lpVtbl->AddRef(This) 41856 #define IInitializeWithWindow_Release(This) (This)->lpVtbl->Release(This) 41857 /*** IInitializeWithWindow methods ***/ 41858 #define IInitializeWithWindow_Initialize(This,hwnd) (This)->lpVtbl->Initialize(This,hwnd) 41859 #else 41860 /*** IUnknown methods ***/ 41861 static FORCEINLINE HRESULT IInitializeWithWindow_QueryInterface(IInitializeWithWindow* This,REFIID riid,void **ppvObject) { 41862 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 41863 } 41864 static FORCEINLINE ULONG IInitializeWithWindow_AddRef(IInitializeWithWindow* This) { 41865 return This->lpVtbl->AddRef(This); 41866 } 41867 static FORCEINLINE ULONG IInitializeWithWindow_Release(IInitializeWithWindow* This) { 41868 return This->lpVtbl->Release(This); 41869 } 41870 /*** IInitializeWithWindow methods ***/ 41871 static FORCEINLINE HRESULT IInitializeWithWindow_Initialize(IInitializeWithWindow* This,HWND hwnd) { 41872 return This->lpVtbl->Initialize(This,hwnd); 41873 } 41874 #endif 41875 #endif 41876 41877 #endif 41878 41879 HRESULT STDMETHODCALLTYPE IInitializeWithWindow_Initialize_Proxy( 41880 IInitializeWithWindow* This, 41881 HWND hwnd); 41882 void __RPC_STUB IInitializeWithWindow_Initialize_Stub( 41883 IRpcStubBuffer* This, 41884 IRpcChannelBuffer* pRpcChannelBuffer, 41885 PRPC_MESSAGE pRpcMessage, 41886 DWORD* pdwStubPhase); 41887 41888 #endif /* __IInitializeWithWindow_INTERFACE_DEFINED__ */ 41889 41890 41891 /***************************************************************************** 41892 * IHandlerInfo interface 41893 */ 41894 #ifndef __IHandlerInfo_INTERFACE_DEFINED__ 41895 #define __IHandlerInfo_INTERFACE_DEFINED__ 41896 41897 DEFINE_GUID(IID_IHandlerInfo, 0x997706ef, 0xf880, 0x453b, 0x81,0x18, 0x39,0xe1,0xa2,0xd2,0x65,0x5a); 41898 #if defined(__cplusplus) && !defined(CINTERFACE) 41899 MIDL_INTERFACE("997706ef-f880-453b-8118-39e1a2d2655a") 41900 IHandlerInfo : public IUnknown 41901 { 41902 virtual HRESULT STDMETHODCALLTYPE GetApplicationDisplayName( 41903 LPWSTR *value) = 0; 41904 41905 virtual HRESULT STDMETHODCALLTYPE GetApplicationPublisher( 41906 LPWSTR *value) = 0; 41907 41908 virtual HRESULT STDMETHODCALLTYPE GetApplicationIconReference( 41909 LPWSTR *value) = 0; 41910 41911 }; 41912 #ifdef __CRT_UUID_DECL 41913 __CRT_UUID_DECL(IHandlerInfo, 0x997706ef, 0xf880, 0x453b, 0x81,0x18, 0x39,0xe1,0xa2,0xd2,0x65,0x5a) 41914 #endif 41915 #else 41916 typedef struct IHandlerInfoVtbl { 41917 BEGIN_INTERFACE 41918 41919 /*** IUnknown methods ***/ 41920 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 41921 IHandlerInfo* This, 41922 REFIID riid, 41923 void **ppvObject); 41924 41925 ULONG (STDMETHODCALLTYPE *AddRef)( 41926 IHandlerInfo* This); 41927 41928 ULONG (STDMETHODCALLTYPE *Release)( 41929 IHandlerInfo* This); 41930 41931 /*** IHandlerInfo methods ***/ 41932 HRESULT (STDMETHODCALLTYPE *GetApplicationDisplayName)( 41933 IHandlerInfo* This, 41934 LPWSTR *value); 41935 41936 HRESULT (STDMETHODCALLTYPE *GetApplicationPublisher)( 41937 IHandlerInfo* This, 41938 LPWSTR *value); 41939 41940 HRESULT (STDMETHODCALLTYPE *GetApplicationIconReference)( 41941 IHandlerInfo* This, 41942 LPWSTR *value); 41943 41944 END_INTERFACE 41945 } IHandlerInfoVtbl; 41946 interface IHandlerInfo { 41947 CONST_VTBL IHandlerInfoVtbl* lpVtbl; 41948 }; 41949 41950 #ifdef COBJMACROS 41951 #ifndef WIDL_C_INLINE_WRAPPERS 41952 /*** IUnknown methods ***/ 41953 #define IHandlerInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 41954 #define IHandlerInfo_AddRef(This) (This)->lpVtbl->AddRef(This) 41955 #define IHandlerInfo_Release(This) (This)->lpVtbl->Release(This) 41956 /*** IHandlerInfo methods ***/ 41957 #define IHandlerInfo_GetApplicationDisplayName(This,value) (This)->lpVtbl->GetApplicationDisplayName(This,value) 41958 #define IHandlerInfo_GetApplicationPublisher(This,value) (This)->lpVtbl->GetApplicationPublisher(This,value) 41959 #define IHandlerInfo_GetApplicationIconReference(This,value) (This)->lpVtbl->GetApplicationIconReference(This,value) 41960 #else 41961 /*** IUnknown methods ***/ 41962 static FORCEINLINE HRESULT IHandlerInfo_QueryInterface(IHandlerInfo* This,REFIID riid,void **ppvObject) { 41963 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 41964 } 41965 static FORCEINLINE ULONG IHandlerInfo_AddRef(IHandlerInfo* This) { 41966 return This->lpVtbl->AddRef(This); 41967 } 41968 static FORCEINLINE ULONG IHandlerInfo_Release(IHandlerInfo* This) { 41969 return This->lpVtbl->Release(This); 41970 } 41971 /*** IHandlerInfo methods ***/ 41972 static FORCEINLINE HRESULT IHandlerInfo_GetApplicationDisplayName(IHandlerInfo* This,LPWSTR *value) { 41973 return This->lpVtbl->GetApplicationDisplayName(This,value); 41974 } 41975 static FORCEINLINE HRESULT IHandlerInfo_GetApplicationPublisher(IHandlerInfo* This,LPWSTR *value) { 41976 return This->lpVtbl->GetApplicationPublisher(This,value); 41977 } 41978 static FORCEINLINE HRESULT IHandlerInfo_GetApplicationIconReference(IHandlerInfo* This,LPWSTR *value) { 41979 return This->lpVtbl->GetApplicationIconReference(This,value); 41980 } 41981 #endif 41982 #endif 41983 41984 #endif 41985 41986 HRESULT STDMETHODCALLTYPE IHandlerInfo_GetApplicationDisplayName_Proxy( 41987 IHandlerInfo* This, 41988 LPWSTR *value); 41989 void __RPC_STUB IHandlerInfo_GetApplicationDisplayName_Stub( 41990 IRpcStubBuffer* This, 41991 IRpcChannelBuffer* pRpcChannelBuffer, 41992 PRPC_MESSAGE pRpcMessage, 41993 DWORD* pdwStubPhase); 41994 HRESULT STDMETHODCALLTYPE IHandlerInfo_GetApplicationPublisher_Proxy( 41995 IHandlerInfo* This, 41996 LPWSTR *value); 41997 void __RPC_STUB IHandlerInfo_GetApplicationPublisher_Stub( 41998 IRpcStubBuffer* This, 41999 IRpcChannelBuffer* pRpcChannelBuffer, 42000 PRPC_MESSAGE pRpcMessage, 42001 DWORD* pdwStubPhase); 42002 HRESULT STDMETHODCALLTYPE IHandlerInfo_GetApplicationIconReference_Proxy( 42003 IHandlerInfo* This, 42004 LPWSTR *value); 42005 void __RPC_STUB IHandlerInfo_GetApplicationIconReference_Stub( 42006 IRpcStubBuffer* This, 42007 IRpcChannelBuffer* pRpcChannelBuffer, 42008 PRPC_MESSAGE pRpcMessage, 42009 DWORD* pdwStubPhase); 42010 42011 #endif /* __IHandlerInfo_INTERFACE_DEFINED__ */ 42012 42013 42014 /***************************************************************************** 42015 * IHandlerActivationHost interface 42016 */ 42017 #ifndef __IHandlerActivationHost_INTERFACE_DEFINED__ 42018 #define __IHandlerActivationHost_INTERFACE_DEFINED__ 42019 42020 DEFINE_GUID(IID_IHandlerActivationHost, 0x35094a87, 0x8bb1, 0x4237, 0x96,0xc6, 0xc4,0x17,0xee,0xbd,0xb0,0x78); 42021 #if defined(__cplusplus) && !defined(CINTERFACE) 42022 MIDL_INTERFACE("35094a87-8bb1-4237-96c6-c417eebdb078") 42023 IHandlerActivationHost : public IUnknown 42024 { 42025 virtual HRESULT STDMETHODCALLTYPE BeforeCoCreateInstance( 42026 REFCLSID clsidHandler, 42027 IShellItemArray *itemsBeingActivated, 42028 IHandlerInfo *handlerInfo) = 0; 42029 42030 virtual HRESULT STDMETHODCALLTYPE BeforeCreateProcess( 42031 LPCWSTR applicationPath, 42032 LPCWSTR commandLine, 42033 IHandlerInfo *handlerInfo) = 0; 42034 42035 }; 42036 #ifdef __CRT_UUID_DECL 42037 __CRT_UUID_DECL(IHandlerActivationHost, 0x35094a87, 0x8bb1, 0x4237, 0x96,0xc6, 0xc4,0x17,0xee,0xbd,0xb0,0x78) 42038 #endif 42039 #else 42040 typedef struct IHandlerActivationHostVtbl { 42041 BEGIN_INTERFACE 42042 42043 /*** IUnknown methods ***/ 42044 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 42045 IHandlerActivationHost* This, 42046 REFIID riid, 42047 void **ppvObject); 42048 42049 ULONG (STDMETHODCALLTYPE *AddRef)( 42050 IHandlerActivationHost* This); 42051 42052 ULONG (STDMETHODCALLTYPE *Release)( 42053 IHandlerActivationHost* This); 42054 42055 /*** IHandlerActivationHost methods ***/ 42056 HRESULT (STDMETHODCALLTYPE *BeforeCoCreateInstance)( 42057 IHandlerActivationHost* This, 42058 REFCLSID clsidHandler, 42059 IShellItemArray *itemsBeingActivated, 42060 IHandlerInfo *handlerInfo); 42061 42062 HRESULT (STDMETHODCALLTYPE *BeforeCreateProcess)( 42063 IHandlerActivationHost* This, 42064 LPCWSTR applicationPath, 42065 LPCWSTR commandLine, 42066 IHandlerInfo *handlerInfo); 42067 42068 END_INTERFACE 42069 } IHandlerActivationHostVtbl; 42070 interface IHandlerActivationHost { 42071 CONST_VTBL IHandlerActivationHostVtbl* lpVtbl; 42072 }; 42073 42074 #ifdef COBJMACROS 42075 #ifndef WIDL_C_INLINE_WRAPPERS 42076 /*** IUnknown methods ***/ 42077 #define IHandlerActivationHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 42078 #define IHandlerActivationHost_AddRef(This) (This)->lpVtbl->AddRef(This) 42079 #define IHandlerActivationHost_Release(This) (This)->lpVtbl->Release(This) 42080 /*** IHandlerActivationHost methods ***/ 42081 #define IHandlerActivationHost_BeforeCoCreateInstance(This,clsidHandler,itemsBeingActivated,handlerInfo) (This)->lpVtbl->BeforeCoCreateInstance(This,clsidHandler,itemsBeingActivated,handlerInfo) 42082 #define IHandlerActivationHost_BeforeCreateProcess(This,applicationPath,commandLine,handlerInfo) (This)->lpVtbl->BeforeCreateProcess(This,applicationPath,commandLine,handlerInfo) 42083 #else 42084 /*** IUnknown methods ***/ 42085 static FORCEINLINE HRESULT IHandlerActivationHost_QueryInterface(IHandlerActivationHost* This,REFIID riid,void **ppvObject) { 42086 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 42087 } 42088 static FORCEINLINE ULONG IHandlerActivationHost_AddRef(IHandlerActivationHost* This) { 42089 return This->lpVtbl->AddRef(This); 42090 } 42091 static FORCEINLINE ULONG IHandlerActivationHost_Release(IHandlerActivationHost* This) { 42092 return This->lpVtbl->Release(This); 42093 } 42094 /*** IHandlerActivationHost methods ***/ 42095 static FORCEINLINE HRESULT IHandlerActivationHost_BeforeCoCreateInstance(IHandlerActivationHost* This,REFCLSID clsidHandler,IShellItemArray *itemsBeingActivated,IHandlerInfo *handlerInfo) { 42096 return This->lpVtbl->BeforeCoCreateInstance(This,clsidHandler,itemsBeingActivated,handlerInfo); 42097 } 42098 static FORCEINLINE HRESULT IHandlerActivationHost_BeforeCreateProcess(IHandlerActivationHost* This,LPCWSTR applicationPath,LPCWSTR commandLine,IHandlerInfo *handlerInfo) { 42099 return This->lpVtbl->BeforeCreateProcess(This,applicationPath,commandLine,handlerInfo); 42100 } 42101 #endif 42102 #endif 42103 42104 #endif 42105 42106 HRESULT STDMETHODCALLTYPE IHandlerActivationHost_BeforeCoCreateInstance_Proxy( 42107 IHandlerActivationHost* This, 42108 REFCLSID clsidHandler, 42109 IShellItemArray *itemsBeingActivated, 42110 IHandlerInfo *handlerInfo); 42111 void __RPC_STUB IHandlerActivationHost_BeforeCoCreateInstance_Stub( 42112 IRpcStubBuffer* This, 42113 IRpcChannelBuffer* pRpcChannelBuffer, 42114 PRPC_MESSAGE pRpcMessage, 42115 DWORD* pdwStubPhase); 42116 HRESULT STDMETHODCALLTYPE IHandlerActivationHost_BeforeCreateProcess_Proxy( 42117 IHandlerActivationHost* This, 42118 LPCWSTR applicationPath, 42119 LPCWSTR commandLine, 42120 IHandlerInfo *handlerInfo); 42121 void __RPC_STUB IHandlerActivationHost_BeforeCreateProcess_Stub( 42122 IRpcStubBuffer* This, 42123 IRpcChannelBuffer* pRpcChannelBuffer, 42124 PRPC_MESSAGE pRpcMessage, 42125 DWORD* pdwStubPhase); 42126 42127 #endif /* __IHandlerActivationHost_INTERFACE_DEFINED__ */ 42128 42129 42130 #define SID_SHandlerActivationHost IID_IHandlerActivationHost 42131 42132 DEFINE_GUID(SID_ShellExecuteNamedPropertyStore, 0xeb84ada2, 0x00ff, 0x4992, 0x83, 0x24, 0xed, 0x5c, 0xe0, 0x61, 0xcb, 0x29); 42133 #endif 42134 42135 #endif 42136 /* Begin additional prototypes for all interfaces */ 42137 42138 ULONG __RPC_USER PCIDLIST_ABSOLUTE_UserSize (ULONG *, ULONG, PCIDLIST_ABSOLUTE *); 42139 unsigned char * __RPC_USER PCIDLIST_ABSOLUTE_UserMarshal (ULONG *, unsigned char *, PCIDLIST_ABSOLUTE *); 42140 unsigned char * __RPC_USER PCIDLIST_ABSOLUTE_UserUnmarshal(ULONG *, unsigned char *, PCIDLIST_ABSOLUTE *); 42141 void __RPC_USER PCIDLIST_ABSOLUTE_UserFree (ULONG *, PCIDLIST_ABSOLUTE *); 42142 ULONG __RPC_USER PIDLIST_ABSOLUTE_UserSize (ULONG *, ULONG, PIDLIST_ABSOLUTE *); 42143 unsigned char * __RPC_USER PIDLIST_ABSOLUTE_UserMarshal (ULONG *, unsigned char *, PIDLIST_ABSOLUTE *); 42144 unsigned char * __RPC_USER PIDLIST_ABSOLUTE_UserUnmarshal(ULONG *, unsigned char *, PIDLIST_ABSOLUTE *); 42145 void __RPC_USER PIDLIST_ABSOLUTE_UserFree (ULONG *, PIDLIST_ABSOLUTE *); 42146 ULONG __RPC_USER PITEMID_CHILD_UserSize (ULONG *, ULONG, PITEMID_CHILD *); 42147 unsigned char * __RPC_USER PITEMID_CHILD_UserMarshal (ULONG *, unsigned char *, PITEMID_CHILD *); 42148 unsigned char * __RPC_USER PITEMID_CHILD_UserUnmarshal(ULONG *, unsigned char *, PITEMID_CHILD *); 42149 void __RPC_USER PITEMID_CHILD_UserFree (ULONG *, PITEMID_CHILD *); 42150 ULONG __RPC_USER HWND_UserSize (ULONG *, ULONG, HWND *); 42151 unsigned char * __RPC_USER HWND_UserMarshal (ULONG *, unsigned char *, HWND *); 42152 unsigned char * __RPC_USER HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *); 42153 void __RPC_USER HWND_UserFree (ULONG *, HWND *); 42154 ULONG __RPC_USER PIDLIST_RELATIVE_UserSize (ULONG *, ULONG, PIDLIST_RELATIVE *); 42155 unsigned char * __RPC_USER PIDLIST_RELATIVE_UserMarshal (ULONG *, unsigned char *, PIDLIST_RELATIVE *); 42156 unsigned char * __RPC_USER PIDLIST_RELATIVE_UserUnmarshal(ULONG *, unsigned char *, PIDLIST_RELATIVE *); 42157 void __RPC_USER PIDLIST_RELATIVE_UserFree (ULONG *, PIDLIST_RELATIVE *); 42158 ULONG __RPC_USER PCUIDLIST_RELATIVE_UserSize (ULONG *, ULONG, PCUIDLIST_RELATIVE *); 42159 unsigned char * __RPC_USER PCUIDLIST_RELATIVE_UserMarshal (ULONG *, unsigned char *, PCUIDLIST_RELATIVE *); 42160 unsigned char * __RPC_USER PCUIDLIST_RELATIVE_UserUnmarshal(ULONG *, unsigned char *, PCUIDLIST_RELATIVE *); 42161 void __RPC_USER PCUIDLIST_RELATIVE_UserFree (ULONG *, PCUIDLIST_RELATIVE *); 42162 ULONG __RPC_USER PCUITEMID_CHILD_UserSize (ULONG *, ULONG, PCUITEMID_CHILD *); 42163 unsigned char * __RPC_USER PCUITEMID_CHILD_UserMarshal (ULONG *, unsigned char *, PCUITEMID_CHILD *); 42164 unsigned char * __RPC_USER PCUITEMID_CHILD_UserUnmarshal(ULONG *, unsigned char *, PCUITEMID_CHILD *); 42165 void __RPC_USER PCUITEMID_CHILD_UserFree (ULONG *, PCUITEMID_CHILD *); 42166 ULONG __RPC_USER VARIANT_UserSize (ULONG *, ULONG, VARIANT *); 42167 unsigned char * __RPC_USER VARIANT_UserMarshal (ULONG *, unsigned char *, VARIANT *); 42168 unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *); 42169 void __RPC_USER VARIANT_UserFree (ULONG *, VARIANT *); 42170 ULONG __RPC_USER BSTR_UserSize (ULONG *, ULONG, BSTR *); 42171 unsigned char * __RPC_USER BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *); 42172 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *); 42173 void __RPC_USER BSTR_UserFree (ULONG *, BSTR *); 42174 ULONG __RPC_USER LPSAFEARRAY_UserSize (ULONG *, ULONG, LPSAFEARRAY *); 42175 unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal (ULONG *, unsigned char *, LPSAFEARRAY *); 42176 unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(ULONG *, unsigned char *, LPSAFEARRAY *); 42177 void __RPC_USER LPSAFEARRAY_UserFree (ULONG *, LPSAFEARRAY *); 42178 ULONG __RPC_USER HBITMAP_UserSize (ULONG *, ULONG, HBITMAP *); 42179 unsigned char * __RPC_USER HBITMAP_UserMarshal (ULONG *, unsigned char *, HBITMAP *); 42180 unsigned char * __RPC_USER HBITMAP_UserUnmarshal(ULONG *, unsigned char *, HBITMAP *); 42181 void __RPC_USER HBITMAP_UserFree (ULONG *, HBITMAP *); 42182 ULONG __RPC_USER HMENU_UserSize (ULONG *, ULONG, HMENU *); 42183 unsigned char * __RPC_USER HMENU_UserMarshal (ULONG *, unsigned char *, HMENU *); 42184 unsigned char * __RPC_USER HMENU_UserUnmarshal(ULONG *, unsigned char *, HMENU *); 42185 void __RPC_USER HMENU_UserFree (ULONG *, HMENU *); 42186 ULONG __RPC_USER HGLOBAL_UserSize (ULONG *, ULONG, HGLOBAL *); 42187 unsigned char * __RPC_USER HGLOBAL_UserMarshal (ULONG *, unsigned char *, HGLOBAL *); 42188 unsigned char * __RPC_USER HGLOBAL_UserUnmarshal(ULONG *, unsigned char *, HGLOBAL *); 42189 void __RPC_USER HGLOBAL_UserFree (ULONG *, HGLOBAL *); 42190 ULONG __RPC_USER HICON_UserSize (ULONG *, ULONG, HICON *); 42191 unsigned char * __RPC_USER HICON_UserMarshal (ULONG *, unsigned char *, HICON *); 42192 unsigned char * __RPC_USER HICON_UserUnmarshal(ULONG *, unsigned char *, HICON *); 42193 void __RPC_USER HICON_UserFree (ULONG *, HICON *); 42194 ULONG __RPC_USER HACCEL_UserSize (ULONG *, ULONG, HACCEL *); 42195 unsigned char * __RPC_USER HACCEL_UserMarshal (ULONG *, unsigned char *, HACCEL *); 42196 unsigned char * __RPC_USER HACCEL_UserUnmarshal(ULONG *, unsigned char *, HACCEL *); 42197 void __RPC_USER HACCEL_UserFree (ULONG *, HACCEL *); 42198 ULONG __RPC_USER HMONITOR_UserSize (ULONG *, ULONG, HMONITOR *); 42199 unsigned char * __RPC_USER HMONITOR_UserMarshal (ULONG *, unsigned char *, HMONITOR *); 42200 unsigned char * __RPC_USER HMONITOR_UserUnmarshal(ULONG *, unsigned char *, HMONITOR *); 42201 void __RPC_USER HMONITOR_UserFree (ULONG *, HMONITOR *); 42202 42203 /* End additional prototypes */ 42204 42205 #ifdef __cplusplus 42206 } 42207 #endif 42208 42209 #endif /* __shobjidl_h__ */ 42210