/*
* Copyright 2008 Hans Leidekker for CodeWeavers
*
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
/*
* Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
* other than GPL or LGPL is available it will apply instead, Oracle elects to use only
* the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
* a choice of LGPL license versions is made available with the language indicating
* that LGPLv2 or any later version may be used, or where a choice of which version
* of the LGPL is applied is otherwise unspecified.
*/
import "oaidl.idl";
[
helpstring("WUAPI 2.0 Type Library"),
version(2.0)
]
importlib("stdole2.tlb");
interface ICategoryCollection;
interface IStringCollection;
interface IUpdateCollection;
interface IUpdateDownloader;
interface IUpdateInstaller;
interface IUpdateSearcher;
typedef [public] enum tagDownloadPriority
{
dpLow = 1,
dpNormal = 2,
dpHigh = 3,
typedef [public] enum tagServerSelection
{
ssDefault = 0,
ssManagedServer = 1,
ssWindowsUpdate = 2,
ssOthers = 3,
typedef [public] enum tagAutomaticUpdatesNotificationLevel
{
typedef [public] enum tagAutomaticUpdatesScheduledInstallationDay
{
typedef [public] enum tagDownloadPhase
{
typedef [public] enum tagOperationResultCode
{
typedef [public] enum tagUpdateExceptionContext
{
uecGeneral = 1,
typedef [public] enum tagInstallationImpact
{
typedef [public] enum tagInstallationRebootBehavior
{
typedef [public] enum tagUpdateType
{
utSoftware = 1,
} UpdateType;
typedef [public] enum tagUpdateOperation
{
uoInstallation = 1,
typedef [public] enum tagDeploymentAction
{
[
dual,
]
interface IAutomaticUpdatesSettings : IDispatch
{
[id(0x60020006)]
[id(0x60020007)]
}
[
dual,
]
interface IAutomaticUpdates : IDispatch
{
[propget]
[propget]
}
[
dual,
]
{
[id(0x60020006)]
[id(0x60020007)]
}
[
dual,
]
interface IUpdateSession : IDispatch
{
[propget]
[propput]
[propget]
[propget]
[propput]
}
[
dual,
]
interface IImageInformation : IDispatch
{
}
[
dual,
]
{
}
[
dual,
]
interface ICategoryCollection : IDispatch
{
}
[
dual,
]
interface IStringCollection : IDispatch
{
[id(0x60020003)]
[id(0x60020004)]
[id(0x60020005)]
[id(0x60020006)]
[id(0x60020007)]
}
[
dual,
]
interface IUpdateException : IDispatch
{
}
[
dual,
]
interface IUpdateExceptionCollection : IDispatch
{
}
[
dual,
]
interface IUpdateIdentity : IDispatch
{
}
[
,
dual,
]
interface IInstallationBehavior : IDispatch
{
}
[
dual,
]
interface IUpdateDownloadContent : IDispatch
{
}
[
dual,
]
interface IUpdateDownloadContentCollection : IDispatch
{
}
[
dual,
]
{
[id(0x60020027)]
[id(0x6002002a)]
}
[
dual,
]
interface IUpdateCollection : IDispatch
{
[id(0x60020003)]
[id(0x60020004)]
[id(0x60020005)]
[id(0x60020006)]
[id(0x60020007)]
}
[
dual,
]
interface ISearchJob : IDispatch
{
[id(0x60020003)]
[id(0x60020004)]
}
[
dual,
]
interface ISearchResult : IDispatch
{
}
[
dual,
]
interface IUpdateHistoryEntry : IDispatch
{
}
[
dual,
]
interface IUpdateHistoryEntryCollection : IDispatch
{
}
[
dual,
]
interface IUpdateSearcher : IDispatch
{
[propget]
[propput]
[propget]
[propput]
[propget]
[propput]
[propget]
[propput]
[propget]
[propput]
[propget]
[propput]
}
[
dual,
]
interface IUpdateDownloadResult : IDispatch
{
}
[
dual,
]
interface IDownloadProgress : IDispatch
{
[id(0x60020007)]
}
[
dual,
]
interface IDownloadJob : IDispatch
{
[id(0x60020004)]
[id(0x60020005)]
[id(0x60020006)]
}
[
dual,
]
interface IDownloadResult : IDispatch
{
[id(0x60020003)]
}
[
dual,
]
interface IUpdateDownloader : IDispatch
{
[propget]
[propput]
[propget]
[propput]
[propget]
[propput]
[propget]
[propput]
}
[
dual,
]
interface IUpdateInstallationResult : IDispatch
{
}
[
dual,
]
interface IInstallationProgress : IDispatch
{
[id(0x60020004)]
}
[
dual,
]
interface IInstallationJob : IDispatch
{
[id(0x60020004)]
[id(0x60020005)]
[id(0x60020006)]
}
[
dual,
]
interface IInstallationResult : IDispatch
{
[id(0x60020004)]
}
[
dual,
]
interface IUpdateInstaller : IDispatch
{
[propget]
[propput]
[propget]
[propput]
[propput]
[propget]
[propget]
[propput]
[propget]
[propget]
[propput]
[propget]
}
[
dual,
]
interface ISystemInformation : IDispatch
{
[propget]
[propget]
}
[
helpstring("AutomaticUpdates Class"),
progid("Microsoft.Update.AutoUpdate.1"),
vi_progid("Microsoft.Update.AutoUpdate"),
]
[
helpstring("UpdateSession Class"),
progid("Microsoft.Update.Session.1"),
vi_progid("Microsoft.Update.Session"),
]
[
helpstring("SystemInformation Class"),
progid("Microsoft.Update.SystemInfo.1"),
vi_progid("Microsoft.Update.SystemInfo"),
]
} /* WUApiLib */