124 lines
3.0 KiB
Plaintext
124 lines
3.0 KiB
Plaintext
// LegacyUpdate.idl : IDL source for LegacyUpdate
|
|
//
|
|
|
|
// This file will be processed by the MIDL tool to
|
|
// produce the type library (LegacyUpdate.tlb) and marshalling code.
|
|
|
|
#include <olectl.h>
|
|
#include <idispids.h>
|
|
import "oaidl.idl";
|
|
import "ocidl.idl";
|
|
|
|
typedef enum {
|
|
e_majorVer = 0,
|
|
e_minorVer = 1,
|
|
e_buildNumber = 2,
|
|
e_platform = 3,
|
|
e_SPMajor = 4,
|
|
e_SPMinor = 5,
|
|
e_productSuite = 6,
|
|
e_productType = 7,
|
|
e_systemMetric = 8,
|
|
e_SPVersionString = 9,
|
|
e_controlVersionString = 10,
|
|
e_VistaProductType = 11,
|
|
e_productName = 12,
|
|
e_displayVersion = 13,
|
|
e_maxOSVersionFieldValue = 13
|
|
} OSVersionField;
|
|
|
|
typedef enum {
|
|
e_nonAdmin = 0,
|
|
e_admin = 2,
|
|
e_elevated = 3
|
|
} UserType;
|
|
|
|
[
|
|
object,
|
|
uuid(C33085BB-C3E1-4D27-A214-AF01953DF5E5),
|
|
dual,
|
|
nonextensible,
|
|
helpstring("ILegacyUpdateCtrl Interface"),
|
|
pointer_default(unique)
|
|
]
|
|
interface ILegacyUpdateCtrl : IDispatch {
|
|
[id(1)] HRESULT CheckControl([out, retval] VARIANT_BOOL *retval);
|
|
[id(2)] HRESULT MessageForHresult(LONG inHresult, [out, retval] BSTR *retval);
|
|
[id(3)] HRESULT GetOSVersionInfo(OSVersionField osField, LONG systemMetric, [out, retval] VARIANT *retval);
|
|
[id(14)] HRESULT RequestElevation(void);
|
|
[id(4)] HRESULT CreateObject(BSTR progID, [out, retval] IDispatch **retval);
|
|
[id(5)] HRESULT GetUserType([out, retval] UserType *retval);
|
|
[id(8)] HRESULT RebootIfRequired(void);
|
|
[id(9)] HRESULT ViewWindowsUpdateLog(void);
|
|
[id(13)] HRESULT OpenWindowsUpdateSettings(void);
|
|
|
|
[id(6), propget] HRESULT IsRebootRequired([out, retval] VARIANT_BOOL *retval);
|
|
[id(7), propget] HRESULT IsWindowsUpdateDisabled([out, retval] VARIANT_BOOL *retval);
|
|
[id(10), propget] HRESULT IsUsingWsusServer([out, retval] VARIANT_BOOL *retval);
|
|
[id(11), propget] HRESULT WsusServerUrl([out, retval] BSTR *retval);
|
|
[id(12), propget] HRESULT WsusStatusServerUrl([out, retval] BSTR *retval);
|
|
};
|
|
|
|
[
|
|
object,
|
|
uuid(4524BFBF-70BD-4EAC-AD33-6BADA4FB0638),
|
|
dual,
|
|
nonextensible,
|
|
pointer_default(unique)
|
|
]
|
|
interface IProgressBarControl : IDispatch
|
|
{
|
|
[id(1), propget] HRESULT Value([out, retval] SHORT *retval);
|
|
[id(1), propput] HRESULT Value([in] SHORT newVal);
|
|
};
|
|
|
|
[
|
|
object,
|
|
uuid(3236E684-0E4B-4780-9F31-F1983F5AB78D),
|
|
dual,
|
|
nonextensible,
|
|
pointer_default(unique),
|
|
oleautomation
|
|
]
|
|
interface IElevationHelper : IDispatch
|
|
{
|
|
[id(1)] HRESULT CreateObject(BSTR progID, [out, retval] IDispatch **retval);
|
|
};
|
|
|
|
[
|
|
uuid(05D22F33-C7C3-4C90-BDD9-CEDC86EA8FBE),
|
|
version(1.0),
|
|
helpstring("Legacy Update Control")
|
|
]
|
|
library LegacyUpdateLib {
|
|
importlib(STDOLE_TLB);
|
|
|
|
[
|
|
uuid(AD28E0DF-5F5A-40B5-9432-85EFD97D1F9F),
|
|
control,
|
|
helpstring("LegacyUpdateCtrl Class")
|
|
]
|
|
coclass LegacyUpdateCtrl {
|
|
[default] interface ILegacyUpdateCtrl;
|
|
};
|
|
|
|
[
|
|
uuid(7B875A2F-2DFB-4D38-91F5-5C0BFB74C377),
|
|
control,
|
|
helpstring("ProgressBarControl Class")
|
|
]
|
|
coclass ProgressBarControl
|
|
{
|
|
[default] interface IProgressBarControl;
|
|
};
|
|
|
|
[
|
|
uuid(84F517AD-6438-478F-BEA8-F0B808DC257F),
|
|
helpstring("ElevationHelper Class")
|
|
]
|
|
coclass ElevationHelper
|
|
{
|
|
[default] interface IElevationHelper;
|
|
};
|
|
};
|