Release 1.3.26.
[wine/gsoc-2012-control.git] / include / wuapi.idl
blob1989cd40bd69a98c18a415ef13aac59db222b6ce
1 /*
2 * Copyright 2008 Hans Leidekker for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 import "oaidl.idl";
21 #ifndef __WIDL__
22 #define threading(model)
23 #define progid(str)
24 #define vi_progid(str)
25 #endif
28 helpstring("WUAPI 2.0 Type Library"),
29 uuid(b596cc9f-56e5-419e-a622-e01bb457431e),
30 version(2.0)
32 library WUApiLib {
34 importlib("stdole2.tlb");
36 interface ICategoryCollection;
37 interface IStringCollection;
38 interface IUpdateCollection;
39 interface IUpdateDownloader;
40 interface IUpdateInstaller;
41 interface IUpdateSearcher;
43 typedef [public] enum tagDownloadPriority
45 dpLow = 1,
46 dpNormal = 2,
47 dpHigh = 3,
48 } DownloadPriority;
50 typedef [public] enum tagServerSelection
52 ssDefault = 0,
53 ssManagedServer = 1,
54 ssWindowsUpdate = 2,
55 ssOthers = 3,
56 } ServerSelection;
58 typedef [public] enum tagAutomaticUpdatesNotificationLevel
60 aunlNotConfigured,
61 aunlDisabled,
62 aunlNotifyBeforeDownload,
63 aunlNotifyBeforeInstallation,
64 aunlScheduledInstallation,
65 } AutomaticUpdatesNotificationLevel;
67 typedef [public] enum tagAutomaticUpdatesScheduledInstallationDay
69 ausidEveryDay,
70 ausidEverySunday,
71 ausidEveryMonday,
72 ausidEveryTuesday,
73 ausidEveryWednesday,
74 ausidEveryThursday,
75 ausidEveryFriday,
76 ausidEverySaturday,
77 } AutomaticUpdatesScheduledInstallationDay;
79 typedef [public] enum tagDownloadPhase
81 dphInitializing,
82 dphDownloading,
83 dphVerifying,
84 } DownloadPhase;
86 typedef [public] enum tagOperationResultCode
88 orcNotStarted,
89 orcInProgress,
90 orcSucceeded,
91 orcSucceededWithErrors,
92 orcFailed,
93 orcAborted,
94 } OperationResultCode;
96 typedef [public] enum tagUpdateExceptionContext
98 uecGeneral = 1,
99 uecWindowsDriver,
100 uecWindowsInstaller
101 } UpdateExceptionContext;
103 typedef [public] enum tagInstallationImpact
105 iiNormal,
106 iiMinor,
107 iiRequiresExclusiveHandling
108 } InstallationImpact;
110 typedef [public] enum tagInstallationRebootBehavior
112 irbNeverReboots,
113 irbAlwaysRequiresReboot,
114 irbCanRequestReboot
115 } InstallationRebootBehavior;
117 typedef [public] enum tagUpdateType
119 utSoftware = 1,
120 utDriver
121 } UpdateType;
123 typedef [public] enum tagUpdateOperation
125 uoInstallation = 1,
126 uoUninstallation
127 } UpdateOperation;
129 typedef [public] enum tagDeploymentAction
131 daNone,
132 daInstallation,
133 daUninstallation,
134 daDetection
135 } DeploymentAction;
138 object,
139 oleautomation,
140 dual,
141 nonextensible,
142 uuid(2ee48f22-af3c-405f-8970-f71be12ee9a2),
143 pointer_default(unique)
145 interface IAutomaticUpdatesSettings : IDispatch
147 [propget, id(0x60020001)]
148 HRESULT NotificationLevel( [out, retval] AutomaticUpdatesNotificationLevel *retval );
150 [propput, id(0x60020001)]
151 HRESULT NotificationLevel( [in] AutomaticUpdatesNotificationLevel value );
153 [propget, id(0x60020002)]
154 HRESULT ReadOnly( [out, retval] VARIANT_BOOL *retval );
156 [propget, id(0x60020003)]
157 HRESULT Required( [out, retval] VARIANT_BOOL *retval );
159 [propget, id(0x60020004)]
160 HRESULT ScheduledInstallationDay( [out, retval] AutomaticUpdatesScheduledInstallationDay *retval );
162 [propput, id(0x60020004)]
163 HRESULT ScheduledInstallationDay( [in] AutomaticUpdatesScheduledInstallationDay value );
165 [propget, id(0x60020005)]
166 HRESULT ScheduledInstallationTime( [out, retval] LONG *retval );
168 [propput, id(0x60020005)]
169 HRESULT ScheduledInstallationTime( [in] LONG value );
171 [id(0x60020006)]
172 HRESULT Refresh();
174 [id(0x60020007)]
175 HRESULT Save();
179 object,
180 uuid(673425bf-c082-4c7c-bdfd-569464b8e0ce),
181 oleautomation,
182 dual,
183 nonextensible,
184 pointer_default(unique),
185 hidden
187 interface IAutomaticUpdates : IDispatch
189 HRESULT DetectNow();
190 HRESULT Pause();
191 HRESULT Resume();
192 HRESULT ShowSettingsDialog();
194 [propget]
195 HRESULT Settings(
196 [out, retval] IAutomaticUpdatesSettings **retval);
198 [propget]
199 HRESULT ServiceEnabled(
200 [out, retval] VARIANT_BOOL *retval);
202 HRESULT EnableService();
206 object,
207 oleautomation,
208 dual,
209 nonextensible,
210 uuid(174c81fe-aecd-4dae-b8a0-2c6318dd86a8),
211 pointer_default(unique),
213 interface IWebProxy : IDispatch
215 [propget, id(0x60020001)]
216 HRESULT Address( [out, retval] BSTR *retval );
218 [propput, id(0x60020001)]
219 HRESULT Address( [in] BSTR value );
221 [propget, id(0x60020002)]
222 HRESULT BypassList( [out, retval] IStringCollection **retval );
224 [propput, id(0x60020002)]
225 HRESULT BypassList( [in] IStringCollection *value );
227 [propget, id(0x60020003)]
228 HRESULT BypassProxyOnLocal( [out, retval] VARIANT_BOOL *retval );
230 [propput, id(0x60020003)]
231 HRESULT BypassProxyOnLocal( [in] VARIANT_BOOL value );
233 [propget, id(0x60020004)]
234 HRESULT ReadOnly( [out, retval] VARIANT_BOOL *retval );
236 [propget, id(0x60020005)]
237 HRESULT UserName( [out, retval] BSTR *retval );
239 [propput, id(0x60020005)]
240 HRESULT UserName( [in] BSTR value );
242 [id(0x60020006)]
243 HRESULT SetPassword( [in] BSTR value );
245 [id(0x60020007)]
246 HRESULT PromptForCredentials( [in, unique] IUnknown *parentWindow,
247 [in] BSTR title );
249 [restricted, id(0x60020008)]
250 HRESULT PromptForCredentialsFromHwnd( [in, unique] HWND parentWindow,
251 [in] BSTR title );
253 [propget, id(0x60020009)]
254 HRESULT AutoDetect( [out, retval] VARIANT_BOOL *retval );
256 [propput, id(0x60020009)]
257 HRESULT AutoDetect( [in] VARIANT_BOOL value );
261 object,
262 uuid(816858a4-260d-4260-933a-2585f1abc76b),
263 oleautomation,
264 dual,
265 nonextensible,
266 pointer_default(unique),
268 interface IUpdateSession : IDispatch
270 [propget]
271 HRESULT ClientApplicationID(
272 [out, retval] BSTR *retval);
274 [propput]
275 HRESULT ClientApplicationID(
276 [in] BSTR value);
278 [propget]
279 HRESULT ReadOnly(
280 [out, retval] VARIANT_BOOL *retval);
282 [propget]
283 HRESULT WebProxy(
284 [out, retval] IWebProxy **retval);
286 [propput]
287 HRESULT WebProxy(
288 [in, unique] IWebProxy *value);
290 HRESULT CreateUpdateSearcher(
291 [out, retval] IUpdateSearcher **retval);
293 HRESULT CreateUpdateDownloader(
294 [out, retval] IUpdateDownloader **retval);
296 HRESULT CreateUpdateInstaller(
297 [out, retval] IUpdateInstaller **retval);
301 object,
302 oleautomation,
303 dual,
304 nonextensible,
305 uuid(7c907864-346c-4aeb-8f3f-57da289f969f),
306 pointer_default(unique),
308 interface IImageInformation : IDispatch
310 [propget, id(0x60020001)]
311 HRESULT AltText( [out, retval] BSTR *retval );
313 [propget, id(0x60020002)]
314 HRESULT Height( [out, retval] LONG *retval );
316 [propget, id(0x60020003)]
317 HRESULT Source( [out, retval] BSTR *retval );
319 [propget, id(0x60020004)]
320 HRESULT Width( [out, retval] LONG *retval );
324 object,
325 oleautomation,
326 dual,
327 nonextensible,
328 uuid(81ddc1b8-9d35-47a6-b471-5b80f519223b),
329 pointer_default(unique),
331 interface ICategory : IDispatch
333 [propget, id(DISPID_VALUE)]
334 HRESULT Name( [out, retval] BSTR *retval );
336 [propget, id(0x60020001)]
337 HRESULT CategoryID( [out, retval] BSTR *retval );
339 [propget, id(0x60020002)]
340 HRESULT Children( [out, retval] ICategoryCollection **retval );
342 [propget, id(0x60020003)]
343 HRESULT Description( [out, retval] BSTR *retval );
345 [propget, id(0x60020004)]
346 HRESULT Image( [out, retval] IImageInformation **retval );
348 [propget, id(0x60020005)]
349 HRESULT Order( [out, retval] LONG *retval );
351 [propget, id(0x60020006)]
352 HRESULT Parent( [out, retval] ICategory **retval );
354 [propget, id(0x60020007)]
355 HRESULT Type( [out, retval] BSTR *retval );
357 [propget, id(0x60020008)]
358 HRESULT Updates( [out, retval] IUpdateCollection **retval );
362 object,
363 oleautomation,
364 dual,
365 nonextensible,
366 uuid(3a56bfb8-576c-43f7-9335-fe4838fd7e37),
367 pointer_default(unique),
369 interface ICategoryCollection : IDispatch
371 [propget, id(DISPID_VALUE)]
372 HRESULT Item( [in] LONG index,
373 [out, retval] ICategory **retval );
375 [propget, id(DISPID_NEWENUM)]
376 HRESULT _NewEnum( [out, retval] IUnknown **retval );
378 [propget, id(0x60020001)]
379 HRESULT Count( [out, retval] LONG *retval );
383 object,
384 oleautomation,
385 dual,
386 nonextensible,
387 uuid(eff90582-2ddc-480f-a06d-60f3fbc362c3),
388 pointer_default(unique),
389 hidden
391 interface IStringCollection : IDispatch
393 [propget, id(DISPID_VALUE)]
394 HRESULT Item( [in] LONG index,
395 [out, retval] BSTR *retval );
397 [propput, id(DISPID_VALUE)]
398 HRESULT Item( [in] LONG index,
399 [in] BSTR value );
401 [propget, id(DISPID_NEWENUM)]
402 HRESULT _NewEnum( [out, retval] IUnknown **retval );
404 [propget, id(0x60020001)]
405 HRESULT Count( [out, retval] LONG *retval );
407 [propget, id(0x60020002)]
408 HRESULT ReadOnly( [out, retval] VARIANT_BOOL *retval );
410 [id(0x60020003)]
411 HRESULT Add( [in] BSTR value,
412 [out, retval] LONG *retval );
414 [id(0x60020004)]
415 HRESULT Clear();
417 [id(0x60020005)]
418 HRESULT Copy( [out, retval] IStringCollection **retval );
420 [id(0x60020006)]
421 HRESULT Insert( [in] LONG index,
422 [in] BSTR value );
424 [id(0x60020007)]
425 HRESULT RemoveAt( [in] LONG index );
429 object,
430 oleautomation,
431 dual,
432 nonextensible,
433 uuid(a376dd5e-09d4-427f-af7c-fed5b6e1c1d6),
434 pointer_default(unique),
436 interface IUpdateException : IDispatch
438 [propget, id(DISPID_VALUE)]
439 HRESULT Message( [out, retval] BSTR *retval );
441 [propget, id(0x60020001)]
442 HRESULT HResult( [out, retval] LONG *retval );
444 [propget, id(0x60020002)]
445 HRESULT Context( [out, retval] UpdateExceptionContext *retval );
449 object,
450 oleautomation,
451 dual,
452 nonextensible,
453 uuid(503626a3-8e14-4729-9355-0fe664bd2321),
454 pointer_default(unique),
456 interface IUpdateExceptionCollection : IDispatch
458 [propget, id(DISPID_VALUE)]
459 HRESULT Item( [in] LONG index,
460 [out, retval] IUpdateException **retval );
462 [propget, id(DISPID_NEWENUM)]
463 HRESULT _NewEnum( [out, retval] IUnknown **retval );
465 [propget, id(0x60020001)]
466 HRESULT Count( [out, retval] LONG *retval );
470 object,
471 oleautomation,
472 dual,
473 nonextensible,
474 uuid(46297823-9940-4c09-aed9-cd3ea6d05968),
475 pointer_default(unique)
477 interface IUpdateIdentity : IDispatch
479 [propget, id(0x60020002)]
480 HRESULT RevisionNumber( [out, retval] LONG *retval );
482 [propget, id(0x60020003)]
483 HRESULT UpdateID( [out, retval] BSTR *retval );
488 object,
489 oleautomation,
490 dual,
491 nonextensible,
492 uuid(d9a59339-e245-4dbd-9686-4d5763e39624),
493 pointer_default(unique),
495 interface IInstallationBehavior : IDispatch
497 [propget, id(0x60020001)]
498 HRESULT CanRequestUserInput( [out, retval] VARIANT_BOOL *retval );
500 [propget, id(0x60020002)]
501 HRESULT Impact( [out, retval] InstallationImpact *retval );
503 [propget, id(0x60020003)]
504 HRESULT RebootBehavior( [out, retval] InstallationRebootBehavior *retval );
506 [propget, id(0x60020004)]
507 HRESULT RequiresNetworkConnectivity( [out, retval] VARIANT_BOOL *retval );
511 object,
512 oleautomation,
513 dual,
514 nonextensible,
515 uuid(54a2cb2d-9a0c-48b6-8a50-9abb69ee2d02),
516 pointer_default(unique),
518 interface IUpdateDownloadContent : IDispatch
520 [propget, id(0x60020001)]
521 HRESULT DownloadUrl( [out, retval] BSTR *retval );
525 object,
526 oleautomation,
527 dual,
528 nonextensible,
529 uuid(bc5513c8-b3b8-4bf7-a4d4-361c0d8c88ba),
530 pointer_default(unique),
532 interface IUpdateDownloadContentCollection : IDispatch
534 [propget, id(DISPID_VALUE)]
535 HRESULT Item( [in] LONG index,
536 [out, retval] IUpdateDownloadContent **retval );
538 [propget, id(DISPID_NEWENUM)]
539 HRESULT _NewEnum( [out, retval] IUnknown **retval );
541 [propget, id(0x60020001)]
542 HRESULT Count( [out, retval] LONG *retval );
547 object,
548 oleautomation,
549 dual,
550 nonextensible,
551 uuid(6a92b07a-d821-4682-b423-5c805022cc4d),
552 pointer_default(unique),
554 interface IUpdate : IDispatch
556 [propget, id(DISPID_VALUE)]
557 HRESULT Title( [out, retval] BSTR *retval );
559 [propget, id(0x60020001)]
560 HRESULT AutoSelectOnWebSites( [out, retval] VARIANT_BOOL *retval );
562 [propget, id(0x60020002)]
563 HRESULT BundledUpdates( [out, retval] IUpdateCollection **retval );
565 [propget, id(0x60020003)]
566 HRESULT CanRequireSource( [out, retval] VARIANT_BOOL *retval );
568 [propget, id(0x60020004)]
569 HRESULT Categories( [out, retval] ICategoryCollection **retval );
571 [propget, id(0x60020005)]
572 HRESULT Deadline( [out, retval] VARIANT *retval );
574 [propget, id(0x60020006)]
575 HRESULT DeltaCompressedContentAvailable( [out, retval] VARIANT_BOOL *retval );
577 [propget, id(0x60020007)]
578 HRESULT DeltaCompressedContentPreferred( [out, retval] VARIANT_BOOL *retval );
580 [propget, id(0x60020008)]
581 HRESULT Description( [out, retval] BSTR *retval );
583 [propget, id(0x60020009)]
584 HRESULT EulaAccepted( [out, retval] VARIANT_BOOL *retval );
586 [propget, id(0x6002000a)]
587 HRESULT EulaText( [out, retval] BSTR *retval );
589 [propget, id(0x6002000b)]
590 HRESULT HandlerID( [out, retval] BSTR *retval );
592 [propget, id(0x6002000c)]
593 HRESULT Identity( [out, retval] IUpdateIdentity **retval );
595 [propget, id(0x6002000d)]
596 HRESULT Image( [out, retval] IImageInformation **retval );
598 [propget, id(0x6002000e)]
599 HRESULT InstallationBehavior( [out, retval] IInstallationBehavior **retval );
601 [propget, id(0x6002000f)]
602 HRESULT IsBeta( [out, retval] VARIANT_BOOL *retval );
604 [propget, id(0x60020010)]
605 HRESULT IsDownloaded( [out, retval] VARIANT_BOOL *retval );
607 [propget, id(0x60020011)]
608 HRESULT IsHidden( [out, retval] VARIANT_BOOL *retval );
610 [propput, id(0x60020011)]
611 HRESULT IsHidden( [in] VARIANT_BOOL value );
613 [propget, id(0x60020012)]
614 HRESULT IsInstalled( [out, retval] VARIANT_BOOL *retval );
616 [propget, id(0x60020013)]
617 HRESULT IsMandatory( [out, retval] VARIANT_BOOL *retval );
619 [propget, id(0x60020014)]
620 HRESULT IsUninstallable( [out, retval] VARIANT_BOOL *retval );
622 [propget, id(0x60020015)]
623 HRESULT Languages( [out, retval] IStringCollection **retval );
625 [propget, id(0x60020016)]
626 HRESULT LastDeploymentChangeTime( [out, retval] DATE *retval );
628 [propget, id(0x60020017)]
629 HRESULT MaxDownloadSize( [out, retval] DECIMAL *retval );
631 [propget, id(0x60020018)]
632 HRESULT MinDownloadSize( [out, retval] DECIMAL *retval );
634 [propget, id(0x60020019)]
635 HRESULT MoreInfoUrls( [out, retval] IStringCollection **retval );
637 [propget, id(0x6002001a)]
638 HRESULT MsrcSeverity( [out, retval] BSTR *retval );
640 [propget, id(0x6002001b)]
641 HRESULT RecommendedCpuSpeed( [out, retval] LONG *retval );
643 [propget, id(0x6002001c)]
644 HRESULT RecommendedHardDiskSpace( [out, retval] LONG *retval );
646 [propget, id(0x6002001d)]
647 HRESULT RecommendedMemory( [out, retval] LONG *retval );
649 [propget, id(0x6002001e)]
650 HRESULT ReleaseNotes( [out, retval] BSTR *retval );
652 [propget, id(0x6002001f)]
653 HRESULT SecurityBulletinIDs( [out, retval] IStringCollection **retval );
655 [propget, id(0x60020021)]
656 HRESULT SupersededUpdateIDs( [out, retval] IStringCollection **retval );
658 [propget, id(0x60020022)]
659 HRESULT SupportUrl( [out, retval] BSTR *retval );
661 [propget, id(0x60020023)]
662 HRESULT Type( [out, retval] UpdateType *retval );
664 [propget, id(0x60020024)]
665 HRESULT UninstallationNotes( [out, retval] BSTR *retval );
667 [propget, id(0x60020025)]
668 HRESULT UninstallationBehavior( [out, retval] IInstallationBehavior **retval );
670 [propget, id(0x60020026)]
671 HRESULT UninstallationSteps( [out, retval] IStringCollection **retval );
673 [propget, id(0x60020028)]
674 HRESULT KBArticleIDs( [out, retval] IStringCollection **retval );
676 [id(0x60020027)]
677 HRESULT AcceptEula();
679 [propget, id(0x60020029)]
680 HRESULT DeploymentAction( [out, retval] DeploymentAction *retval );
682 [id(0x6002002a)]
683 HRESULT CopyFromCache( [in, ref] BSTR path,
684 [in] VARIANT_BOOL toExtractCabFiles );
686 [propget, id(0x6002002b)]
687 HRESULT DownloadPriority( [out, retval] DownloadPriority *retval );
689 [propget, id(0x6002002c)]
690 HRESULT DownloadContents( [out, retval] IUpdateDownloadContentCollection **retval );
695 object,
696 oleautomation,
697 dual,
698 nonextensible,
699 uuid(07f7438c-7709-4ca5-b518-91279288134e),
700 pointer_default(unique),
701 hidden
703 interface IUpdateCollection : IDispatch
705 [propget, id(DISPID_VALUE)]
706 HRESULT Item( [in] LONG index,
707 [out, retval] IUpdate **retval );
709 [propput, id(DISPID_VALUE)]
710 HRESULT Item( [in] LONG index,
711 [in] IUpdate *value );
713 [propget, id(DISPID_NEWENUM)]
714 HRESULT _NewEnum( [out, retval] IUnknown **retval );
716 [propget, id(0x60020001)]
717 HRESULT Count( [out, retval] LONG *retval );
719 [propget, id(0x60020002)]
720 HRESULT ReadOnly( [out, retval] VARIANT_BOOL *retval );
722 [id(0x60020003)]
723 HRESULT Add( [in] IUpdate *value,
724 [out, retval] LONG *retval );
726 [id(0x60020004)]
727 HRESULT Clear();
729 [id(0x60020005)]
730 HRESULT Copy( [out, retval] IUpdateCollection **retval );
732 [id(0x60020006)]
733 HRESULT Insert( [in] LONG index,
734 [in] IUpdate *value );
736 [id(0x60020007)]
737 HRESULT RemoveAt( [in] LONG index );
741 object,
742 oleautomation,
743 dual,
744 nonextensible,
745 uuid(7366ea16-7a1a-4ea2-b042-973d3e9cd99b),
746 pointer_default(unique),
748 interface ISearchJob : IDispatch
750 [propget, id(0x60020001)]
751 HRESULT AsyncState( [out, retval] VARIANT *retval );
753 [propget, id(0x60020002)]
754 HRESULT IsCompleted( [out, retval] VARIANT_BOOL *retval );
756 [id(0x60020003)]
757 HRESULT CleanUp();
759 [id(0x60020004)]
760 HRESULT RequestAbort();
764 object,
765 oleautomation,
766 dual,
767 nonextensible,
768 uuid(d40cff62-e08c-4498-941a-01e25f0fd33c),
769 pointer_default(unique),
771 interface ISearchResult : IDispatch
773 [propget, id(0x60020001)]
774 HRESULT ResultCode( [out, retval] OperationResultCode *retval );
776 [propget, id(0x60020002)]
777 HRESULT RootCategories( [out, retval] ICategoryCollection **retval );
779 [propget, id(0x60020003)]
780 HRESULT Updates( [out, retval] IUpdateCollection **retval );
782 [propget, id(0x60020004)]
783 HRESULT Warnings( [out, retval] IUpdateExceptionCollection **retval );
787 object,
788 oleautomation,
789 dual,
790 nonextensible,
791 uuid(be56a644-af0e-4e0e-a311-c1d8e695cbff),
792 pointer_default(unique),
794 interface IUpdateHistoryEntry : IDispatch
796 [propget, id(0x60020001)]
797 HRESULT Operation( [out, retval] UpdateOperation *retval );
799 [propget, id(0x60020002)]
800 HRESULT ResultCode( [out, retval] OperationResultCode *retval );
802 [propget, id(0x60020003)]
803 HRESULT HResult( [out, retval] LONG *retval );
805 [propget, id(0x60020004)]
806 HRESULT Date( [out, retval] DATE *retval );
808 [propget, id(0x60020005)]
809 HRESULT UpdateIdentity( [out, retval] IUpdateIdentity **retval );
811 [propget, id(0x60020006)]
812 HRESULT Title( [out, retval] BSTR *retval );
814 [propget, id(0x60020007)]
815 HRESULT Description( [out, retval] BSTR *retval );
817 [propget, id(0x60020008)]
818 HRESULT UnmappedResultCode( [out, retval] LONG *retval );
820 [propget, id(0x60020009)]
821 HRESULT ClientApplicationID( [out, retval] BSTR *retval );
823 [propget, id(0x6002000a)]
824 HRESULT ServerSelection( [out, retval] ServerSelection *retval );
826 [propget, id(0x6002000b)]
827 HRESULT ServiceID( [out, retval] BSTR *retval );
829 [propget, id(0x6002000c)]
830 HRESULT UninstallationSteps( [out, retval] IStringCollection **retval );
832 [propget, id(0x6002000d)]
833 HRESULT UninstallationNotes( [out, retval] BSTR *retval );
835 [propget, id(0x6002000e)]
836 HRESULT SupportUrl( [out, retval] BSTR *retval );
840 object,
841 oleautomation,
842 dual,
843 nonextensible,
844 uuid(a7f04f3c-a290-435b-aadf-a116c3357a5c),
845 pointer_default(unique),
847 interface IUpdateHistoryEntryCollection : IDispatch
849 [propget, id(DISPID_VALUE)]
850 HRESULT Item( [in] LONG index,
851 [out, retval] IUpdateHistoryEntry **retval );
853 [propget, id(DISPID_NEWENUM)]
854 HRESULT _NewEnum( [out, retval] IUnknown **retval );
856 [propget, id(0x60020001)]
857 HRESULT Count( [out, retval] LONG *retval );
861 object,
862 uuid(8f45abf1-f9ae-4b95-a933-f0f66e5056ea),
863 oleautomation,
864 dual,
865 nonextensible,
866 pointer_default(unique),
868 interface IUpdateSearcher : IDispatch
870 [propget]
871 HRESULT CanAutomaticallyUpgradeService(
872 [out, retval] VARIANT_BOOL *retval);
874 [propput]
875 HRESULT CanAutomaticallyUpgradeService(
876 [in] VARIANT_BOOL value);
878 [propget]
879 HRESULT ClientApplicationID(
880 [out, retval] BSTR *retval);
882 [propput]
883 HRESULT ClientApplicationID(
884 [in] BSTR value);
886 [propget]
887 HRESULT IncludePotentiallySupersededUpdates(
888 [out, retval] VARIANT_BOOL *retval);
890 [propput]
891 HRESULT IncludePotentiallySupersededUpdates(
892 [in] VARIANT_BOOL value);
894 [propget]
895 HRESULT ServerSelection(
896 [out, retval] ServerSelection *retval);
898 [propput]
899 HRESULT ServerSelection(
900 [in] ServerSelection value);
902 HRESULT BeginSearch(
903 [in] BSTR criteria,
904 [in] IUnknown *onCompleted,
905 [in] VARIANT state,
906 [out, retval] ISearchJob **retval);
908 HRESULT EndSearch(
909 [in] ISearchJob *searchJob,
910 [out, retval] ISearchResult **retval);
912 HRESULT EscapeString(
913 [in] BSTR unescaped,
914 [out, retval] BSTR *retval);
916 HRESULT QueryHistory(
917 [in] LONG startIndex,
918 [in] LONG count,
919 [out, retval] IUpdateHistoryEntryCollection **retval);
921 HRESULT Search(
922 [in] BSTR criteria,
923 [out, retval] ISearchResult **retval);
925 [propget]
926 HRESULT Online(
927 [out, retval] VARIANT_BOOL *retval);
929 [propput]
930 HRESULT Online(
931 [in] VARIANT_BOOL value);
933 HRESULT GetTotalHistoryCount(
934 [out, retval] LONG *retval);
936 [propget]
937 HRESULT ServiceID(
938 [out, retval] BSTR *retval);
940 [propput]
941 HRESULT ServiceID(
942 [in] BSTR value);
946 object,
947 oleautomation,
948 dual,
949 nonextensible,
950 uuid(bf99af76-b575-42ad-8aa4-33cbb5477af1),
951 pointer_default(unique),
953 interface IUpdateDownloadResult : IDispatch
955 [propget, id(0x60020001)]
956 HRESULT HResult( [out, retval] LONG *retval );
958 [propget, id(0x60020002)]
959 HRESULT ResultCode( [out, retval] OperationResultCode *retval );
963 object,
964 oleautomation,
965 dual,
966 nonextensible,
967 uuid(d31a5bac-f719-4178-9dbb-5e2cb47fd18a),
968 pointer_default(unique),
970 interface IDownloadProgress : IDispatch
972 [propget, id(0x60020001)]
973 HRESULT CurrentUpdateBytesDownloaded( [out, retval] DECIMAL *retval );
975 [propget, id(0x60020002)]
976 HRESULT CurrentUpdateBytesToDownload( [out, retval] DECIMAL *retval );
978 [propget, id(0x60020003)]
979 HRESULT CurrentUpdateIndex( [out, retval] LONG *retval );
981 [propget, id(0x60020004)]
982 HRESULT PercentComplete( [out, retval] LONG *retval );
984 [propget, id(0x60020005)]
985 HRESULT TotalBytesDownloaded( [out, retval] DECIMAL *retval );
987 [propget, id(0x60020006)]
988 HRESULT TotalBytesToDownload( [out, retval] DECIMAL *retval );
990 [id(0x60020007)]
991 HRESULT GetUpdateResult( [in] LONG updateIndex,
992 [out, retval] IUpdateDownloadResult **retval );
995 [propget, id(0x60020008)]
996 HRESULT CurrentUpdateDownloadPhase( [out, retval] DownloadPhase *retval );
998 [propget, id(0x60020009)]
999 HRESULT CurrentUpdatePercentComplete( [out, retval] LONG *retval );
1003 object,
1004 oleautomation,
1005 dual,
1006 nonextensible,
1007 uuid(c574de85-7358-43f6-aae8-8697e62d8ba7),
1008 pointer_default(unique),
1010 interface IDownloadJob : IDispatch
1012 [propget, id(0x60020001)]
1013 HRESULT AsyncState( [out, retval] VARIANT *retval );
1015 [propget, id(0x60020002)]
1016 HRESULT IsCompleted( [out, retval] VARIANT_BOOL *retval );
1018 [propget, id(0x60020003)]
1019 HRESULT Updates( [out, retval] IUpdateCollection **retval );
1021 [id(0x60020004)]
1022 HRESULT CleanUp();
1024 [id(0x60020005)]
1025 HRESULT GetProgress( [out, retval] IDownloadProgress **retval );
1027 [id(0x60020006)]
1028 HRESULT RequestAbort();
1032 object,
1033 oleautomation,
1034 dual,
1035 nonextensible,
1036 uuid(daa4fdd0-4727-4dbe-a1e7-745dca317144),
1037 pointer_default(unique),
1039 interface IDownloadResult : IDispatch
1041 [propget, id(0x60020001)]
1042 HRESULT HResult( [out, retval] LONG *retval );
1044 [propget, id(0x60020002)]
1045 HRESULT ResultCode( [out, retval] OperationResultCode *retval );
1047 [id(0x60020003)]
1048 HRESULT GetUpdateResult( [in] LONG updateIndex,
1049 [out, retval] IUpdateDownloadResult **retval );
1053 object,
1054 uuid(68f1c6f9-7ecc-4666-a464-247fe12496c3),
1055 oleautomation,
1056 dual,
1057 nonextensible,
1058 pointer_default(unique),
1059 hidden
1061 interface IUpdateDownloader : IDispatch
1063 [propget]
1064 HRESULT ClientApplicationID(
1065 [out, retval] BSTR *retval);
1067 [propput]
1068 HRESULT ClientApplicationID(
1069 [in] BSTR value);
1071 [propget]
1072 HRESULT IsForced(
1073 [out, retval] VARIANT_BOOL *retval);
1075 [propput]
1076 HRESULT IsForced(
1077 [in] VARIANT_BOOL value);
1079 [propget]
1080 HRESULT Priority(
1081 [out, retval] DownloadPriority *retval);
1083 [propput]
1084 HRESULT Priority(
1085 [in] DownloadPriority value);
1087 [propget]
1088 HRESULT Updates(
1089 [out, retval] IUpdateCollection **retval);
1091 [propput]
1092 HRESULT Updates(
1093 [in] IUpdateCollection *value);
1095 HRESULT BeginDownload(
1096 [in] IUnknown *onProgressChanged,
1097 [in] IUnknown *onCompleted,
1098 [in] VARIANT state,
1099 [out, retval] IDownloadJob **retval);
1101 HRESULT Download(
1102 [out, retval] IDownloadResult **retval);
1104 HRESULT EndDownload(
1105 [in] IDownloadJob *value,
1106 [out, retval] IDownloadResult **retval);
1110 object,
1111 oleautomation,
1112 dual,
1113 nonextensible,
1114 uuid(d940f0f8-3cbb-4fd0-993f-471e7f2328ad),
1115 pointer_default(unique),
1117 interface IUpdateInstallationResult : IDispatch
1119 [propget, id(0x60020001)]
1120 HRESULT HResult( [out, retval] LONG *retval );
1122 [propget, id(0x60020002)]
1123 HRESULT RebootRequired( [out, retval] VARIANT_BOOL *retval );
1125 [propget, id(0x60020003)]
1126 HRESULT ResultCode( [out, retval] OperationResultCode *retval );
1130 object,
1131 oleautomation,
1132 dual,
1133 nonextensible,
1134 uuid(345c8244-43a3-4e32-a368-65f073b76f36),
1135 pointer_default(unique),
1137 interface IInstallationProgress : IDispatch
1139 [propget, id(0x60020001)]
1140 HRESULT CurrentUpdateIndex( [out, retval] LONG *retval );
1142 [propget, id(0x60020002)]
1143 HRESULT CurrentUpdatePercentComplete( [out, retval] LONG *retval );
1145 [propget, id(0x60020003)]
1146 HRESULT PercentComplete( [out, retval] LONG *retval );
1148 [id(0x60020004)]
1149 HRESULT GetUpdateResult( [in] LONG updateIndex,
1150 [out, retval] IUpdateInstallationResult **retval );
1154 object,
1155 oleautomation,
1156 dual,
1157 nonextensible,
1158 uuid(5c209f0b-bad5-432a-9556-4699bed2638a),
1159 pointer_default(unique),
1161 interface IInstallationJob : IDispatch
1163 [propget, id(0x60020001)]
1164 HRESULT AsyncState( [out, retval] VARIANT *retval );
1166 [propget, id(0x60020002)]
1167 HRESULT IsCompleted( [out, retval] VARIANT_BOOL *retval );
1169 [propget, id(0x60020003)]
1170 HRESULT Updates( [out, retval] IUpdateCollection **retval );
1172 [id(0x60020004)]
1173 HRESULT CleanUp();
1175 [id(0x60020005)]
1176 HRESULT GetProgress( [out, retval] IInstallationProgress **retval );
1178 [id(0x60020006)]
1179 HRESULT RequestAbort();
1183 object,
1184 oleautomation,
1185 dual,
1186 nonextensible,
1187 uuid(a43c56d6-7451-48d4-af96-b6cd2d0d9b7a),
1188 pointer_default(unique),
1190 interface IInstallationResult : IDispatch
1192 [propget, id(0x60020001)]
1193 HRESULT HResult( [out, retval] LONG *retval );
1195 [propget, id(0x60020002)]
1196 HRESULT RebootRequired( [out, retval] VARIANT_BOOL *retval );
1198 [propget, id(0x60020003)]
1199 HRESULT ResultCode( [out, retval] OperationResultCode *retval );
1201 [id(0x60020004)]
1202 HRESULT GetUpdateResult( [in] LONG updateIndex,
1203 [out, retval] IUpdateInstallationResult **retval );
1207 object,
1208 uuid(7b929c68-ccdc-4226-96b1-8724600b54c2),
1209 oleautomation,
1210 dual,
1211 nonextensible,
1212 pointer_default(unique),
1214 interface IUpdateInstaller : IDispatch
1216 [propget]
1217 HRESULT ClientApplicationID(
1218 [out, retval] BSTR *retval);
1220 [propput]
1221 HRESULT ClientApplicationID(
1222 [in] BSTR value);
1224 [propget]
1225 HRESULT IsForced(
1226 [out, retval] VARIANT_BOOL *retval);
1228 [propput]
1229 HRESULT IsForced(
1230 [in] VARIANT_BOOL value);
1232 [propget, restricted]
1233 HRESULT ParentHwnd(
1234 [out, retval] HWND *retval);
1236 [propput, restricted]
1237 HRESULT ParentHwnd(
1238 [in, unique] HWND value);
1240 [propput]
1241 HRESULT ParentWindow(
1242 [in, unique] IUnknown *value);
1244 [propget]
1245 HRESULT ParentWindow(
1246 [out, retval] IUnknown **retval);
1248 [propget]
1249 HRESULT Updates(
1250 [out, retval] IUpdateCollection **retval);
1252 [propput]
1253 HRESULT Updates(
1254 [in] IUpdateCollection *value);
1256 HRESULT BeginInstall(
1257 [in] IUnknown *onProgressChanged,
1258 [in] IUnknown *onCompleted,
1259 [in] VARIANT state,
1260 [out, retval] IInstallationJob **retval);
1262 HRESULT BeginUninstall(
1263 [in] IUnknown *onProgressChanged,
1264 [in] IUnknown *onCompleted,
1265 [in] VARIANT state,
1266 [out, retval] IInstallationJob **retval);
1268 HRESULT EndInstall(
1269 [in] IInstallationJob *value,
1270 [out, retval] IInstallationResult **retval);
1272 HRESULT EndUninstall(
1273 [in] IInstallationJob *value,
1274 [out, retval] IInstallationResult **retval);
1276 HRESULT Install(
1277 [out, retval] IInstallationResult **retval);
1279 HRESULT RunWizard(
1280 [in, defaultvalue("")] BSTR dialogTitle,
1281 [out, retval] IInstallationResult **retval);
1283 [propget]
1284 HRESULT IsBusy(
1285 [out, retval] VARIANT_BOOL *retval);
1287 HRESULT Uninstall(
1288 [out, retval] IInstallationResult **retval);
1290 [propget]
1291 HRESULT AllowSourcePrompts(
1292 [out, retval] VARIANT_BOOL *retval);
1294 [propput]
1295 HRESULT AllowSourcePrompts(
1296 [in] VARIANT_BOOL value);
1298 [propget]
1299 HRESULT RebootRequiredBeforeInstallation(
1300 [out, retval] VARIANT_BOOL *retval);
1304 helpstring("AutomaticUpdates Class"),
1305 threading(both),
1306 progid("Microsoft.Update.AutoUpdate.1"),
1307 vi_progid("Microsoft.Update.AutoUpdate"),
1308 uuid(bfe18e9c-6d87-4450-b37c-e02f0b373803)
1310 coclass AutomaticUpdates { interface IAutomaticUpdates; }
1313 helpstring("UpdateSession Class"),
1314 threading(both),
1315 progid("Microsoft.Update.Session.1"),
1316 vi_progid("Microsoft.Update.Session"),
1317 uuid(4cb43d7f-7eee-4906-8698-60da1c38f2fe)
1319 coclass UpdateSession { interface IUpdateSession; }
1321 } /* WUApiLib */