1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
#include "idl_types.h"
/*
initshutdown interface definition
*/
import "lsa.idl";
[
uuid("894de0c0-0d55-11d3-a322-00c04fa321a1"),
version(1.0),
endpoint("ncacn_np:[\\pipe\\InitShutdown]"),
pointer_default(unique),
helpstring("Init shutdown service")
] interface initshutdown
{
typedef [v1_enum] enum {
SHTDN_REASON_MAJOR_OTHER = 0x00000000,
SHTDN_REASON_MAJOR_HARDWARE = 0x00010000,
SHTDN_REASON_MAJOR_OPERATINGSYSTEM = 0x00020000,
SHTDN_REASON_MAJOR_SOFTWARE = 0x00030000,
SHTDN_REASON_MAJOR_APPLICATION = 0x00040000,
SHTDN_REASON_MAJOR_SYSTEM = 0x00050000,
SHTDN_REASON_MAJOR_POWER = 0x00060000,
SHTDN_REASON_MAJOR_LEGACY_API = 0x00070000
} initshutdown_ReasonMajor;
typedef [v1_enum] enum {
SHTDN_REASON_MINOR_OTHER = 0x00000000,
SHTDN_REASON_MINOR_MAINTENANCE = 0x00000001,
SHTDN_REASON_MINOR_INSTALLATION = 0x00000002,
SHTDN_REASON_MINOR_UPGRADE = 0x00000003,
SHTDN_REASON_MINOR_RECONFIG = 0x00000004,
SHTDN_REASON_MINOR_HUNG = 0x00000005,
SHTDN_REASON_MINOR_UNSTABLE = 0x00000006,
SHTDN_REASON_MINOR_DISK = 0x00000007,
SHTDN_REASON_MINOR_PROCESSOR = 0x00000008,
SHTDN_REASON_MINOR_NETWORKCARD = 0x00000009,
SHTDN_REASON_MINOR_POWER_SUPPLY = 0x0000000a,
SHTDN_REASON_MINOR_CORDUNPLUGGED = 0x0000000b,
SHTDN_REASON_MINOR_ENVIRONMENT = 0x0000000c,
SHTDN_REASON_MINOR_HARDWARE_DRIVER = 0x0000000d,
SHTDN_REASON_MINOR_OTHERDRIVER = 0x0000000e,
SHTDN_REASON_MINOR_BLUESCREEN = 0x0000000f,
SHTDN_REASON_MINOR_SERVICEPACK = 0x00000010,
SHTDN_REASON_MINOR_HOTFIX = 0x00000011,
SHTDN_REASON_MINOR_SECURITYFIX = 0x00000012,
SHTDN_REASON_MINOR_SECURITY = 0x00000013,
SHTDN_REASON_MINOR_NETWORK_CONNECTIVITY = 0x00000014,
SHTDN_REASON_MINOR_WMI = 0x00000015,
SHTDN_REASON_MINOR_SERVICEPACK_UNINSTALL= 0x00000016,
SHTDN_REASON_MINOR_HOTFIX_UNINSTALL = 0x00000017,
SHTDN_REASON_MINOR_SECURITYFIX_UNINSTALL= 0x00000018,
SHTDN_REASON_MINOR_MMC = 0x00000019,
SHTDN_REASON_MINOR_TERMSRV = 0x00000020
} initshutdown_ReasonMinor;
typedef [bitmap32bit] bitmap {
SHTDN_REASON_FLAG_USER_DEFINED = 0x40000000,
SHTDN_REASON_FLAG_PLANNED = 0x80000000
} initshutdown_ReasonFlags;
WERROR initshutdown_Init(
[in,unique] uint16 *hostname,
/*
* Note: lsa_String and winreg_String both result
* in WERR_INVALID_PARAM
*/
[in,unique] lsa_StringLarge *message,
[in] uint32 timeout,
[in] uint8 force_apps,
[in] uint8 do_reboot
);
WERROR initshutdown_Abort(
[in,unique] uint16 *server
);
WERROR initshutdown_InitEx(
[in,unique] uint16 *hostname,
/*
* Note: lsa_String and winreg_String both result
* in WERR_INVALID_PARAM
*/
[in,unique] lsa_StringLarge *message,
[in] uint32 timeout,
[in] uint8 force_apps,
[in] uint8 do_reboot,
[in] uint32 reason
);
}
|