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