]> git.proxmox.com Git - rustc.git/blame - vendor/windows-sys/src/Windows/Win32/System/RestartManager/mod.rs
New upstream version 1.63.0+dfsg1
[rustc.git] / vendor / windows-sys / src / Windows / Win32 / System / RestartManager / mod.rs
CommitLineData
5e7ed085
FG
1#[link(name = "windows")]
2extern "system" {
04454e1e 3 #[doc = "*Required features: `\"Win32_System_RestartManager\"`, `\"Win32_Foundation\"`*"]
5e7ed085 4 #[cfg(feature = "Win32_Foundation")]
04454e1e
FG
5 pub fn RmAddFilter(dwsessionhandle: u32, strmodulename: ::windows_sys::core::PCWSTR, pprocess: *const RM_UNIQUE_PROCESS, strserviceshortname: ::windows_sys::core::PCWSTR, filteraction: RM_FILTER_ACTION) -> u32;
6 #[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 7 pub fn RmCancelCurrentTask(dwsessionhandle: u32) -> u32;
04454e1e 8 #[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 9 pub fn RmEndSession(dwsessionhandle: u32) -> u32;
04454e1e 10 #[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 11 pub fn RmGetFilterList(dwsessionhandle: u32, pbfilterbuf: *mut u8, cbfilterbuf: u32, cbfilterbufneeded: *mut u32) -> u32;
04454e1e 12 #[doc = "*Required features: `\"Win32_System_RestartManager\"`, `\"Win32_Foundation\"`*"]
5e7ed085
FG
13 #[cfg(feature = "Win32_Foundation")]
14 pub fn RmGetList(dwsessionhandle: u32, pnprocinfoneeded: *mut u32, pnprocinfo: *mut u32, rgaffectedapps: *mut RM_PROCESS_INFO, lpdwrebootreasons: *mut u32) -> u32;
04454e1e
FG
15 #[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
16 pub fn RmJoinSession(psessionhandle: *mut u32, strsessionkey: ::windows_sys::core::PCWSTR) -> u32;
17 #[doc = "*Required features: `\"Win32_System_RestartManager\"`, `\"Win32_Foundation\"`*"]
5e7ed085 18 #[cfg(feature = "Win32_Foundation")]
04454e1e
FG
19 pub fn RmRegisterResources(dwsessionhandle: u32, nfiles: u32, rgsfilenames: *const ::windows_sys::core::PWSTR, napplications: u32, rgapplications: *const RM_UNIQUE_PROCESS, nservices: u32, rgsservicenames: *const ::windows_sys::core::PWSTR) -> u32;
20 #[doc = "*Required features: `\"Win32_System_RestartManager\"`, `\"Win32_Foundation\"`*"]
5e7ed085 21 #[cfg(feature = "Win32_Foundation")]
04454e1e
FG
22 pub fn RmRemoveFilter(dwsessionhandle: u32, strmodulename: ::windows_sys::core::PCWSTR, pprocess: *const RM_UNIQUE_PROCESS, strserviceshortname: ::windows_sys::core::PCWSTR) -> u32;
23 #[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 24 pub fn RmRestart(dwsessionhandle: u32, dwrestartflags: u32, fnstatus: RM_WRITE_STATUS_CALLBACK) -> u32;
04454e1e 25 #[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 26 pub fn RmShutdown(dwsessionhandle: u32, lactionflags: u32, fnstatus: RM_WRITE_STATUS_CALLBACK) -> u32;
04454e1e
FG
27 #[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
28 pub fn RmStartSession(psessionhandle: *mut u32, dwsessionflags: u32, strsessionkey: ::windows_sys::core::PWSTR) -> u32;
5e7ed085 29}
04454e1e 30#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 31pub const CCH_RM_MAX_APP_NAME: u32 = 255u32;
04454e1e 32#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 33pub const CCH_RM_MAX_SVC_NAME: u32 = 63u32;
04454e1e 34#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 35pub const CCH_RM_SESSION_KEY: u32 = 32u32;
04454e1e 36#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 37pub type RM_APP_STATUS = i32;
04454e1e 38#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 39pub const RmStatusUnknown: RM_APP_STATUS = 0i32;
04454e1e 40#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 41pub const RmStatusRunning: RM_APP_STATUS = 1i32;
04454e1e 42#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 43pub const RmStatusStopped: RM_APP_STATUS = 2i32;
04454e1e 44#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 45pub const RmStatusStoppedOther: RM_APP_STATUS = 4i32;
04454e1e 46#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 47pub const RmStatusRestarted: RM_APP_STATUS = 8i32;
04454e1e 48#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 49pub const RmStatusErrorOnStop: RM_APP_STATUS = 16i32;
04454e1e 50#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 51pub const RmStatusErrorOnRestart: RM_APP_STATUS = 32i32;
04454e1e 52#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 53pub const RmStatusShutdownMasked: RM_APP_STATUS = 64i32;
04454e1e 54#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 55pub const RmStatusRestartMasked: RM_APP_STATUS = 128i32;
04454e1e 56#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 57pub type RM_APP_TYPE = i32;
04454e1e 58#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 59pub const RmUnknownApp: RM_APP_TYPE = 0i32;
04454e1e 60#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 61pub const RmMainWindow: RM_APP_TYPE = 1i32;
04454e1e 62#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 63pub const RmOtherWindow: RM_APP_TYPE = 2i32;
04454e1e 64#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 65pub const RmService: RM_APP_TYPE = 3i32;
04454e1e 66#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 67pub const RmExplorer: RM_APP_TYPE = 4i32;
04454e1e 68#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 69pub const RmConsole: RM_APP_TYPE = 5i32;
04454e1e 70#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 71pub const RmCritical: RM_APP_TYPE = 1000i32;
04454e1e 72#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 73pub type RM_FILTER_ACTION = i32;
04454e1e 74#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 75pub const RmInvalidFilterAction: RM_FILTER_ACTION = 0i32;
04454e1e 76#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 77pub const RmNoRestart: RM_FILTER_ACTION = 1i32;
04454e1e 78#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085
FG
79pub const RmNoShutdown: RM_FILTER_ACTION = 2i32;
80#[repr(C)]
04454e1e 81#[doc = "*Required features: `\"Win32_System_RestartManager\"`, `\"Win32_Foundation\"`*"]
5e7ed085
FG
82#[cfg(feature = "Win32_Foundation")]
83pub struct RM_FILTER_INFO {
84 pub FilterAction: RM_FILTER_ACTION,
85 pub FilterTrigger: RM_FILTER_TRIGGER,
86 pub cbNextOffset: u32,
87 pub Anonymous: RM_FILTER_INFO_0,
88}
89#[cfg(feature = "Win32_Foundation")]
90impl ::core::marker::Copy for RM_FILTER_INFO {}
91#[cfg(feature = "Win32_Foundation")]
92impl ::core::clone::Clone for RM_FILTER_INFO {
93 fn clone(&self) -> Self {
94 *self
95 }
96}
97#[repr(C)]
04454e1e 98#[doc = "*Required features: `\"Win32_System_RestartManager\"`, `\"Win32_Foundation\"`*"]
5e7ed085
FG
99#[cfg(feature = "Win32_Foundation")]
100pub union RM_FILTER_INFO_0 {
04454e1e 101 pub strFilename: ::windows_sys::core::PWSTR,
5e7ed085 102 pub Process: RM_UNIQUE_PROCESS,
04454e1e 103 pub strServiceShortName: ::windows_sys::core::PWSTR,
5e7ed085
FG
104}
105#[cfg(feature = "Win32_Foundation")]
106impl ::core::marker::Copy for RM_FILTER_INFO_0 {}
107#[cfg(feature = "Win32_Foundation")]
108impl ::core::clone::Clone for RM_FILTER_INFO_0 {
109 fn clone(&self) -> Self {
110 *self
111 }
112}
04454e1e 113#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 114pub type RM_FILTER_TRIGGER = i32;
04454e1e 115#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 116pub const RmFilterTriggerInvalid: RM_FILTER_TRIGGER = 0i32;
04454e1e 117#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 118pub const RmFilterTriggerFile: RM_FILTER_TRIGGER = 1i32;
04454e1e 119#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 120pub const RmFilterTriggerProcess: RM_FILTER_TRIGGER = 2i32;
04454e1e 121#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 122pub const RmFilterTriggerService: RM_FILTER_TRIGGER = 3i32;
04454e1e 123#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 124pub const RM_INVALID_PROCESS: i32 = -1i32;
04454e1e 125#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085
FG
126pub const RM_INVALID_TS_SESSION: i32 = -1i32;
127#[repr(C)]
04454e1e 128#[doc = "*Required features: `\"Win32_System_RestartManager\"`, `\"Win32_Foundation\"`*"]
5e7ed085
FG
129#[cfg(feature = "Win32_Foundation")]
130pub struct RM_PROCESS_INFO {
131 pub Process: RM_UNIQUE_PROCESS,
132 pub strAppName: [u16; 256],
133 pub strServiceShortName: [u16; 64],
134 pub ApplicationType: RM_APP_TYPE,
135 pub AppStatus: u32,
136 pub TSSessionId: u32,
137 pub bRestartable: super::super::Foundation::BOOL,
138}
139#[cfg(feature = "Win32_Foundation")]
140impl ::core::marker::Copy for RM_PROCESS_INFO {}
141#[cfg(feature = "Win32_Foundation")]
142impl ::core::clone::Clone for RM_PROCESS_INFO {
143 fn clone(&self) -> Self {
144 *self
145 }
146}
04454e1e 147#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 148pub type RM_REBOOT_REASON = i32;
04454e1e 149#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 150pub const RmRebootReasonNone: RM_REBOOT_REASON = 0i32;
04454e1e 151#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 152pub const RmRebootReasonPermissionDenied: RM_REBOOT_REASON = 1i32;
04454e1e 153#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 154pub const RmRebootReasonSessionMismatch: RM_REBOOT_REASON = 2i32;
04454e1e 155#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 156pub const RmRebootReasonCriticalProcess: RM_REBOOT_REASON = 4i32;
04454e1e 157#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 158pub const RmRebootReasonCriticalService: RM_REBOOT_REASON = 8i32;
04454e1e 159#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 160pub const RmRebootReasonDetectedSelf: RM_REBOOT_REASON = 16i32;
04454e1e 161#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 162pub type RM_SHUTDOWN_TYPE = i32;
04454e1e 163#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 164pub const RmForceShutdown: RM_SHUTDOWN_TYPE = 1i32;
04454e1e 165#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085
FG
166pub const RmShutdownOnlyRegistered: RM_SHUTDOWN_TYPE = 16i32;
167#[repr(C)]
04454e1e 168#[doc = "*Required features: `\"Win32_System_RestartManager\"`, `\"Win32_Foundation\"`*"]
5e7ed085
FG
169#[cfg(feature = "Win32_Foundation")]
170pub struct RM_UNIQUE_PROCESS {
171 pub dwProcessId: u32,
172 pub ProcessStartTime: super::super::Foundation::FILETIME,
173}
174#[cfg(feature = "Win32_Foundation")]
175impl ::core::marker::Copy for RM_UNIQUE_PROCESS {}
176#[cfg(feature = "Win32_Foundation")]
177impl ::core::clone::Clone for RM_UNIQUE_PROCESS {
178 fn clone(&self) -> Self {
179 *self
180 }
181}
04454e1e 182#[doc = "*Required features: `\"Win32_System_RestartManager\"`*"]
5e7ed085 183pub type RM_WRITE_STATUS_CALLBACK = ::core::option::Option<unsafe extern "system" fn(npercentcomplete: u32)>;