msi: Implement and test MsiEnumComponentCostsA/W.
[wine] / include / reason.h
1 /*
2  * ExitWindowsEx() reason codes
3  *
4  * Copyright (C) the Wine project
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19  */
20
21 #ifndef __WINE_REASON_H
22 #define __WINE_REASON_H
23
24
25 #define SHTDN_REASON_FLAG_USER_DEFINED            0x40000000
26 #define SHTDN_REASON_FLAG_PLANNED                 0x80000000
27
28 #define SHTDN_REASON_MAJOR_OTHER                  0x00000000
29 #define SHTDN_REASON_MAJOR_NONE                   0x00000000
30 #define SHTDN_REASON_MAJOR_HARDWARE               0x00010000
31 #define SHTDN_REASON_MAJOR_OPERATINGSYSTEM        0x00020000
32 #define SHTDN_REASON_MAJOR_SOFTWARE               0x00030000
33 #define SHTDN_REASON_MAJOR_APPLICATION            0x00040000
34 #define SHTDN_REASON_MAJOR_SYSTEM                 0x00050000
35 #define SHTDN_REASON_MAJOR_POWER                  0x00060000
36 #define SHTDN_REASON_MAJOR_LEGACY_API             0x00070000
37
38 #define SHTDN_REASON_MINOR_OTHER                  0x00000000
39 #define SHTDN_REASON_MINOR_MAINTENANCE            0x00000001
40 #define SHTDN_REASON_MINOR_INSTALLATION           0x00000002
41 #define SHTDN_REASON_MINOR_UPGRADE                0x00000003
42 #define SHTDN_REASON_MINOR_RECONFIG               0x00000004
43 #define SHTDN_REASON_MINOR_HUNG                   0x00000005
44 #define SHTDN_REASON_MINOR_UNSTABLE               0x00000006
45 #define SHTDN_REASON_MINOR_DISK                   0x00000007
46 #define SHTDN_REASON_MINOR_PROCESSOR              0x00000008
47 #define SHTDN_REASON_MINOR_NETWORKCARD            0x00000009
48 #define SHTDN_REASON_MINOR_POWER_SUPPLY           0x0000000a
49 #define SHTDN_REASON_MINOR_CORDUNPLUGGED          0x0000000b
50 #define SHTDN_REASON_MINOR_ENVIRONMENT            0x0000000c
51 #define SHTDN_REASON_MINOR_HARDWARE_DRIVER        0x0000000d
52 #define SHTDN_REASON_MINOR_OTHERDRIVER            0x0000000e
53 #define SHTDN_REASON_MINOR_BLUESCREEN             0x0000000f
54 #define SHTDN_REASON_MINOR_SERVICEPACK            0x00000010
55 #define SHTDN_REASON_MINOR_HOTFIX                 0x00000011
56 #define SHTDN_REASON_MINOR_SECURITYFIX            0x00000012
57 #define SHTDN_REASON_MINOR_SECURITY               0x00000013
58 #define SHTDN_REASON_MINOR_NETWORK_CONNECTIVITY   0x00000014
59 #define SHTDN_REASON_MINOR_WMI                    0x00000015
60 #define SHTDN_REASON_MINOR_SERVICEPACK_UNINSTALL  0x00000016
61 #define SHTDN_REASON_MINOR_HOTFIX_UNINSTALL       0x00000017
62 #define SHTDN_REASON_MINOR_SECURITYFIX_UNINSTALL  0x00000018
63 #define SHTDN_REASON_MINOR_MMC                    0x00000019
64 #define SHTDN_REASON_MINOR_SYSTEMRESTORE          0x0000001a
65 #define SHTDN_REASON_MINOR_TERMSRV                0x00000020
66 #define SHTDN_REASON_MINOR_DC_PROMOTION           0x00000021
67 #define SHTDN_REASON_MINOR_DC_DEMOTION            0x00000022
68 #define SHTDN_REASON_MINOR_NONE                   0x000000ff
69
70 #define SHTDN_REASON_VALID_BIT_MASK               0xc0ffffff
71
72 #define SHTDN_REASON_UNKNOWN                      SHTDN_REASON_MINOR_NONE
73 #define SHTDN_REASON_LEGACY_API                   (SHTDN_REASON_MAJOR_LEGACY_API | SHTDN_REASON_FLAG_PLANNED)
74
75 #endif