diff --git a/crates/libs/metadata/default/Windows.Win32.Interop.winmd b/crates/libs/metadata/default/Windows.Win32.Interop.winmd index eb5966eda6..ba5dad0d7e 100644 Binary files a/crates/libs/metadata/default/Windows.Win32.Interop.winmd and b/crates/libs/metadata/default/Windows.Win32.Interop.winmd differ diff --git a/crates/libs/metadata/default/Windows.Win32.winmd b/crates/libs/metadata/default/Windows.Win32.winmd index 0721622029..3fa01ad065 100644 Binary files a/crates/libs/metadata/default/Windows.Win32.winmd and b/crates/libs/metadata/default/Windows.Win32.winmd differ diff --git a/crates/libs/metadata/default/readme.md b/crates/libs/metadata/default/readme.md index d477140b93..1434d72e57 100644 --- a/crates/libs/metadata/default/readme.md +++ b/crates/libs/metadata/default/readme.md @@ -4,7 +4,7 @@ dependent crate or workspace has an empty or non-existent `.windows/winmd` direc ## Windows.Win32.winmd - Source: https://www.nuget.org/packages/Microsoft.Windows.SDK.Win32Metadata/ -- Version: 24.0.1-preview +- Version: 30.0.12-preview ## Windows.winmd - Source: https://www.nuget.org/packages/Microsoft.Windows.SDK.Contracts diff --git a/crates/libs/metadata/src/reader/mod.rs b/crates/libs/metadata/src/reader/mod.rs index 16cab25e0c..363145619b 100644 --- a/crates/libs/metadata/src/reader/mod.rs +++ b/crates/libs/metadata/src/reader/mod.rs @@ -586,29 +586,31 @@ impl<'a> Reader<'a> { Signature { def: row, params, return_type } } pub fn method_def_size(&self, method: MethodDef) -> usize { - fn type_size(reader: &Reader, ty: &Type) -> usize { - match ty { - Type::I8 | Type::U8 => 1, - Type::I16 | Type::U16 => 2, - Type::I64 | Type::U64 | Type::F64 => 8, - Type::GUID => 16, - Type::TypeDef((def, _)) => type_def_size(reader, *def), - _ => 4, - } - } - fn type_def_size(reader: &Reader, def: TypeDef) -> usize { - if reader.type_def_kind(def) == TypeKind::Struct { - if reader.type_def_flags(def).explicit_layout() { - reader.type_def_fields(def).map(|field| type_size(reader, &reader.field_type(field, Some(def)))).max().unwrap_or(1) + let signature = self.method_def_signature(method, &[]); + signature.params.iter().fold(0, |sum, param| sum + std::cmp::max(4, self.type_size(¶m.ty))) + } + pub fn type_def_size(&self, def: TypeDef) -> usize { + match self.type_def_kind(def) { + TypeKind::Struct => { + if self.type_def_flags(def).explicit_layout() { + self.type_def_fields(def).map(|field| self.type_size(&self.field_type(field, Some(def)))).max().unwrap_or(1) } else { - reader.type_def_fields(def).fold(0, |sum, field| sum + type_size(reader, &reader.field_type(field, Some(def)))) + self.type_def_fields(def).fold(0, |sum, field| sum + self.type_size(&self.field_type(field, Some(def)))) } - } else { - 4 } + TypeKind::Enum => self.type_size(&self.type_def_underlying_type(def)), + _ => 4, + } + } + pub fn type_size(&self, ty: &Type) -> usize { + match ty { + Type::I8 | Type::U8 => 1, + Type::I16 | Type::U16 => 2, + Type::I64 | Type::U64 | Type::F64 => 8, + Type::GUID => 16, + Type::TypeDef((def, _)) => self.type_def_size(*def), + _ => 4, } - let signature = self.method_def_signature(method, &[]); - signature.params.iter().fold(0, |sum, param| sum + std::cmp::max(4, type_size(self, ¶m.ty))) } // diff --git a/crates/libs/sys/src/Windows/Win32/AI/MachineLearning/WinML/mod.rs b/crates/libs/sys/src/Windows/Win32/AI/MachineLearning/WinML/mod.rs index 59aa595a79..a9de1945c4 100644 --- a/crates/libs/sys/src/Windows/Win32/AI/MachineLearning/WinML/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/AI/MachineLearning/WinML/mod.rs @@ -26,7 +26,7 @@ pub type IWinMLRuntimeFactory = *mut ::core::ffi::c_void; pub struct MLOperatorAttribute { pub name: ::windows_sys::core::PCSTR, pub r#type: MLOperatorAttributeType, - pub required: bool, + pub required: u8, } impl ::core::marker::Copy for MLOperatorAttribute {} impl ::core::clone::Clone for MLOperatorAttribute { diff --git a/crates/libs/sys/src/Windows/Win32/Data/HtmlHelp/mod.rs b/crates/libs/sys/src/Windows/Win32/Data/HtmlHelp/mod.rs index 3116512b23..9b1c1e4698 100644 --- a/crates/libs/sys/src/Windows/Win32/Data/HtmlHelp/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Data/HtmlHelp/mod.rs @@ -554,8 +554,8 @@ pub struct HH_POPUP { pub idString: u32, pub pszText: *mut i8, pub pt: super::super::Foundation::POINT, - pub clrForeground: u32, - pub clrBackground: u32, + pub clrForeground: super::super::Foundation::COLORREF, + pub clrBackground: super::super::Foundation::COLORREF, pub rcMargins: super::super::Foundation::RECT, pub pszFont: *mut i8, } diff --git a/crates/libs/sys/src/Windows/Win32/Devices/DeviceAndDriverInstallation/mod.rs b/crates/libs/sys/src/Windows/Win32/Devices/DeviceAndDriverInstallation/mod.rs index a1bd7e26f9..c97915a751 100644 --- a/crates/libs/sys/src/Windows/Win32/Devices/DeviceAndDriverInstallation/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Devices/DeviceAndDriverInstallation/mod.rs @@ -27,13 +27,13 @@ extern "system" { #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] pub fn CM_Connect_MachineW(uncservername: ::windows_sys::core::PCWSTR, phmachine: *mut isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Create_DevNodeA(pdndevinst: *mut u32, pdeviceid: *const i8, dnparent: u32, ulflags: u32) -> CONFIGRET; + pub fn CM_Create_DevNodeA(pdndevinst: *mut u32, pdeviceid: ::windows_sys::core::PCSTR, dnparent: u32, ulflags: u32) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Create_DevNodeW(pdndevinst: *mut u32, pdeviceid: *const u16, dnparent: u32, ulflags: u32) -> CONFIGRET; + pub fn CM_Create_DevNodeW(pdndevinst: *mut u32, pdeviceid: ::windows_sys::core::PCWSTR, dnparent: u32, ulflags: u32) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Create_DevNode_ExA(pdndevinst: *mut u32, pdeviceid: *const i8, dnparent: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + pub fn CM_Create_DevNode_ExA(pdndevinst: *mut u32, pdeviceid: ::windows_sys::core::PCSTR, dnparent: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Create_DevNode_ExW(pdndevinst: *mut u32, pdeviceid: *const u16, dnparent: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + pub fn CM_Create_DevNode_ExW(pdndevinst: *mut u32, pdeviceid: ::windows_sys::core::PCWSTR, dnparent: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] pub fn CM_Create_Range_List(prlh: *mut usize, ulflags: u32) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] @@ -213,21 +213,21 @@ extern "system" { #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] pub fn CM_Get_Device_Interface_Alias_ExW(pszdeviceinterface: ::windows_sys::core::PCWSTR, aliasinterfaceguid: *const ::windows_sys::core::GUID, pszaliasdeviceinterface: ::windows_sys::core::PWSTR, pullength: *mut u32, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Get_Device_Interface_ListA(interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: *const i8, buffer: ::windows_sys::core::PSTR, bufferlen: u32, ulflags: u32) -> CONFIGRET; + pub fn CM_Get_Device_Interface_ListA(interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: ::windows_sys::core::PCSTR, buffer: ::windows_sys::core::PSTR, bufferlen: u32, ulflags: u32) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Get_Device_Interface_ListW(interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: *const u16, buffer: ::windows_sys::core::PWSTR, bufferlen: u32, ulflags: u32) -> CONFIGRET; + pub fn CM_Get_Device_Interface_ListW(interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: ::windows_sys::core::PCWSTR, buffer: ::windows_sys::core::PWSTR, bufferlen: u32, ulflags: u32) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Get_Device_Interface_List_ExA(interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: *const i8, buffer: ::windows_sys::core::PSTR, bufferlen: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + pub fn CM_Get_Device_Interface_List_ExA(interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: ::windows_sys::core::PCSTR, buffer: ::windows_sys::core::PSTR, bufferlen: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Get_Device_Interface_List_ExW(interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: *const u16, buffer: ::windows_sys::core::PWSTR, bufferlen: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + pub fn CM_Get_Device_Interface_List_ExW(interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: ::windows_sys::core::PCWSTR, buffer: ::windows_sys::core::PWSTR, bufferlen: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Get_Device_Interface_List_SizeA(pullen: *mut u32, interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: *const i8, ulflags: u32) -> CONFIGRET; + pub fn CM_Get_Device_Interface_List_SizeA(pullen: *mut u32, interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: ::windows_sys::core::PCSTR, ulflags: u32) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Get_Device_Interface_List_SizeW(pullen: *mut u32, interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: *const u16, ulflags: u32) -> CONFIGRET; + pub fn CM_Get_Device_Interface_List_SizeW(pullen: *mut u32, interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: ::windows_sys::core::PCWSTR, ulflags: u32) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Get_Device_Interface_List_Size_ExA(pullen: *mut u32, interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: *const i8, ulflags: u32, hmachine: isize) -> CONFIGRET; + pub fn CM_Get_Device_Interface_List_Size_ExA(pullen: *mut u32, interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: ::windows_sys::core::PCSTR, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Get_Device_Interface_List_Size_ExW(pullen: *mut u32, interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: *const u16, ulflags: u32, hmachine: isize) -> CONFIGRET; + pub fn CM_Get_Device_Interface_List_Size_ExW(pullen: *mut u32, interfaceclassguid: *const ::windows_sys::core::GUID, pdeviceid: ::windows_sys::core::PCWSTR, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`, `\"Win32_Devices_Properties\"`*"] #[cfg(feature = "Win32_Devices_Properties")] pub fn CM_Get_Device_Interface_PropertyW(pszdeviceinterface: ::windows_sys::core::PCWSTR, propertykey: *const super::Properties::DEVPROPKEY, propertytype: *mut u32, propertybuffer: *mut u8, propertybuffersize: *mut u32, ulflags: u32) -> CONFIGRET; @@ -249,13 +249,13 @@ extern "system" { #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] pub fn CM_Get_Global_State_Ex(pulstate: *mut u32, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Get_HW_Prof_FlagsA(pdeviceid: *const i8, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32) -> CONFIGRET; + pub fn CM_Get_HW_Prof_FlagsA(pdeviceid: ::windows_sys::core::PCSTR, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Get_HW_Prof_FlagsW(pdeviceid: *const u16, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32) -> CONFIGRET; + pub fn CM_Get_HW_Prof_FlagsW(pdeviceid: ::windows_sys::core::PCWSTR, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Get_HW_Prof_Flags_ExA(pdeviceid: *const i8, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + pub fn CM_Get_HW_Prof_Flags_ExA(pdeviceid: ::windows_sys::core::PCSTR, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Get_HW_Prof_Flags_ExW(pdeviceid: *const u16, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + pub fn CM_Get_HW_Prof_Flags_ExW(pdeviceid: ::windows_sys::core::PCWSTR, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn CM_Get_Hardware_Profile_InfoA(ulindex: u32, phwprofileinfo: *mut HWProfileInfo_sA, ulflags: u32) -> CONFIGRET; @@ -322,13 +322,13 @@ extern "system" { #[cfg(feature = "Win32_Foundation")] pub fn CM_Is_Version_Available_Ex(wversion: u16, hmachine: isize) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Locate_DevNodeA(pdndevinst: *mut u32, pdeviceid: *const i8, ulflags: u32) -> CONFIGRET; + pub fn CM_Locate_DevNodeA(pdndevinst: *mut u32, pdeviceid: ::windows_sys::core::PCSTR, ulflags: u32) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Locate_DevNodeW(pdndevinst: *mut u32, pdeviceid: *const u16, ulflags: u32) -> CONFIGRET; + pub fn CM_Locate_DevNodeW(pdndevinst: *mut u32, pdeviceid: ::windows_sys::core::PCWSTR, ulflags: u32) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Locate_DevNode_ExA(pdndevinst: *mut u32, pdeviceid: *const i8, ulflags: u32, hmachine: isize) -> CONFIGRET; + pub fn CM_Locate_DevNode_ExA(pdndevinst: *mut u32, pdeviceid: ::windows_sys::core::PCSTR, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Locate_DevNode_ExW(pdndevinst: *mut u32, pdeviceid: *const u16, ulflags: u32, hmachine: isize) -> CONFIGRET; + pub fn CM_Locate_DevNode_ExW(pdndevinst: *mut u32, pdeviceid: ::windows_sys::core::PCWSTR, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] pub fn CM_MapCrToWin32Err(cmreturncode: CONFIGRET, defaulterr: u32) -> u32; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] @@ -473,13 +473,13 @@ extern "system" { #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] pub fn CM_Set_HW_Prof_Ex(ulhardwareprofile: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Set_HW_Prof_FlagsA(pdeviceid: *const i8, ulconfig: u32, ulvalue: u32, ulflags: u32) -> CONFIGRET; + pub fn CM_Set_HW_Prof_FlagsA(pdeviceid: ::windows_sys::core::PCSTR, ulconfig: u32, ulvalue: u32, ulflags: u32) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Set_HW_Prof_FlagsW(pdeviceid: *const u16, ulconfig: u32, ulvalue: u32, ulflags: u32) -> CONFIGRET; + pub fn CM_Set_HW_Prof_FlagsW(pdeviceid: ::windows_sys::core::PCWSTR, ulconfig: u32, ulvalue: u32, ulflags: u32) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Set_HW_Prof_Flags_ExA(pdeviceid: *const i8, ulconfig: u32, ulvalue: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + pub fn CM_Set_HW_Prof_Flags_ExA(pdeviceid: ::windows_sys::core::PCSTR, ulconfig: u32, ulvalue: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] - pub fn CM_Set_HW_Prof_Flags_ExW(pdeviceid: *const u16, ulconfig: u32, ulvalue: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + pub fn CM_Set_HW_Prof_Flags_ExW(pdeviceid: ::windows_sys::core::PCWSTR, ulconfig: u32, ulvalue: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] pub fn CM_Setup_DevNode(dndevinst: u32, ulflags: u32) -> CONFIGRET; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] diff --git a/crates/libs/sys/src/Windows/Win32/Devices/Fax/mod.rs b/crates/libs/sys/src/Windows/Win32/Devices/Fax/mod.rs index 002ce43316..71ef884e40 100644 --- a/crates/libs/sys/src/Windows/Win32/Devices/Fax/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Devices/Fax/mod.rs @@ -1570,8 +1570,6 @@ pub const IS_DIGITAL_CAMERA_STR: &str = "IsDigitalCamera"; pub const IS_DIGITAL_CAMERA_VAL: u32 = 1u32; pub type IStiDevice = *mut ::core::ffi::c_void; pub type IStiDeviceControl = *mut ::core::ffi::c_void; -#[repr(C)] -pub struct IStiDeviceW(pub u8); pub type IStiUSD = *mut ::core::ffi::c_void; pub type IStillImageW = *mut ::core::ffi::c_void; #[doc = "*Required features: `\"Win32_Devices_Fax\"`*"] diff --git a/crates/libs/sys/src/Windows/Win32/Devices/ImageAcquisition/mod.rs b/crates/libs/sys/src/Windows/Win32/Devices/ImageAcquisition/mod.rs index a9d425bdfe..48fea1b6ad 100644 --- a/crates/libs/sys/src/Windows/Win32/Devices/ImageAcquisition/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Devices/ImageAcquisition/mod.rs @@ -2715,24 +2715,24 @@ impl ::core::clone::Clone for WIA_PROPERTY_CONTEXT { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO { pub lAccessFlags: u32, - pub vt: u16, + pub vt: super::super::System::Com::VARENUM, pub ValidVal: WIA_PROPERTY_INFO_0, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub union WIA_PROPERTY_INFO_0 { pub Range: WIA_PROPERTY_INFO_0_7, pub RangeFloat: WIA_PROPERTY_INFO_0_6, @@ -2743,136 +2743,136 @@ pub union WIA_PROPERTY_INFO_0 { pub Flag: WIA_PROPERTY_INFO_0_0, pub None: WIA_PROPERTY_INFO_0_5, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0 { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_0 { pub Nom: i32, pub ValidBits: i32, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_0 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_0 { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_1 { pub cNumList: i32, pub Nom: super::super::Foundation::BSTR, pub pList: *mut super::super::Foundation::BSTR, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_1 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_1 { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_2 { pub cNumList: i32, pub Nom: f64, pub pList: *mut u8, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_2 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_2 { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_3 { pub cNumList: i32, pub Nom: ::windows_sys::core::GUID, pub pList: *mut ::windows_sys::core::GUID, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_3 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_3 { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_4 { pub cNumList: i32, pub Nom: i32, pub pList: *mut u8, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_4 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_4 { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_5 { pub Dummy: i32, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_5 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_5 { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_6 { pub Min: f64, pub Nom: f64, pub Max: f64, pub Inc: f64, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_6 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_6 { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_7 { pub Min: i32, pub Nom: i32, pub Max: i32, pub Inc: i32, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_7 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_7 { fn clone(&self) -> Self { *self diff --git a/crates/libs/sys/src/Windows/Win32/Foundation/mod.rs b/crates/libs/sys/src/Windows/Win32/Foundation/mod.rs index abbdfac89f..648169ff47 100644 --- a/crates/libs/sys/src/Windows/Win32/Foundation/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Foundation/mod.rs @@ -422,6 +422,7 @@ pub const CLIPBRD_E_LAST: i32 = -2147221025i32; pub const CLIPBRD_S_FIRST: i32 = 262608i32; #[doc = "*Required features: `\"Win32_Foundation\"`*"] pub const CLIPBRD_S_LAST: i32 = 262623i32; +pub type COLORREF = u32; #[doc = "*Required features: `\"Win32_Foundation\"`*"] pub const COMADMIN_E_ALREADYINSTALLED: ::windows_sys::core::HRESULT = -2146368508i32; #[doc = "*Required features: `\"Win32_Foundation\"`*"] @@ -12952,7 +12953,7 @@ pub const WAIT_ABANDONED: WIN32_ERROR = 128u32; #[doc = "*Required features: `\"Win32_Foundation\"`*"] pub const WAIT_ABANDONED_0: WIN32_ERROR = 128u32; #[doc = "*Required features: `\"Win32_Foundation\"`*"] -pub const WAIT_IO_COMPLETION: WIN32_ERROR = 129u32; +pub const WAIT_IO_COMPLETION: WIN32_ERROR = 192u32; #[doc = "*Required features: `\"Win32_Foundation\"`*"] pub const WAIT_TIMEOUT: WIN32_ERROR = 258u32; #[doc = "*Required features: `\"Win32_Foundation\"`*"] diff --git a/crates/libs/sys/src/Windows/Win32/Globalization/mod.rs b/crates/libs/sys/src/Windows/Win32/Globalization/mod.rs index 6243662b53..a3ecafedc6 100644 --- a/crates/libs/sys/src/Windows/Win32/Globalization/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Globalization/mod.rs @@ -3371,30 +3371,6 @@ pub type IEnumCodePage = *mut ::core::ffi::c_void; pub type IEnumRfc1766 = *mut ::core::ffi::c_void; pub type IEnumScript = *mut ::core::ffi::c_void; pub type IEnumSpellingError = *mut ::core::ffi::c_void; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_ALPHANUMERIC: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_CHARCODE: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_CHINESE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_FULLSHAPE: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_HANGUL: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_HANJACONVERT: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_JAPANESE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_KATAKANA: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_LANGUAGE: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_NATIVE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_NATIVESYMBOL: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_ROMAN: u32 = 16u32; pub type IMLangCodePages = *mut ::core::ffi::c_void; pub type IMLangConvertCharset = *mut ::core::ffi::c_void; pub type IMLangFontLink = *mut ::core::ffi::c_void; diff --git a/crates/libs/sys/src/Windows/Win32/Graphics/Direct2D/mod.rs b/crates/libs/sys/src/Windows/Win32/Graphics/Direct2D/mod.rs index bc25003e53..41b7c1a53e 100644 --- a/crates/libs/sys/src/Windows/Win32/Graphics/Direct2D/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Graphics/Direct2D/mod.rs @@ -3013,7 +3013,7 @@ pub type ID2D1VertexBuffer = *mut ::core::ffi::c_void; #[doc = "*Required features: `\"Win32_Graphics_Direct2D\"`, `\"Win32_Graphics_Direct2D_Common\"`*"] #[cfg(feature = "Win32_Graphics_Direct2D_Common")] pub struct Matrix4x3F { - pub __AnonymousBase_d2d1_1helper_L45_C31: Common::D2D_MATRIX_4X3_F, + pub Base: Common::D2D_MATRIX_4X3_F, } #[cfg(feature = "Win32_Graphics_Direct2D_Common")] impl ::core::marker::Copy for Matrix4x3F {} @@ -3027,7 +3027,7 @@ impl ::core::clone::Clone for Matrix4x3F { #[doc = "*Required features: `\"Win32_Graphics_Direct2D\"`, `\"Win32_Graphics_Direct2D_Common\"`*"] #[cfg(feature = "Win32_Graphics_Direct2D_Common")] pub struct Matrix4x4F { - pub __AnonymousBase_d2d1_1helper_L97_C31: Common::D2D_MATRIX_4X4_F, + pub Base: Common::D2D_MATRIX_4X4_F, } #[cfg(feature = "Win32_Graphics_Direct2D_Common")] impl ::core::marker::Copy for Matrix4x4F {} @@ -3041,7 +3041,7 @@ impl ::core::clone::Clone for Matrix4x4F { #[doc = "*Required features: `\"Win32_Graphics_Direct2D\"`, `\"Win32_Graphics_Direct2D_Common\"`*"] #[cfg(feature = "Win32_Graphics_Direct2D_Common")] pub struct Matrix5x4F { - pub __AnonymousBase_d2d1_1helper_L472_C31: Common::D2D_MATRIX_5X4_F, + pub Base: Common::D2D_MATRIX_5X4_F, } #[cfg(feature = "Win32_Graphics_Direct2D_Common")] impl ::core::marker::Copy for Matrix5x4F {} diff --git a/crates/libs/sys/src/Windows/Win32/Graphics/Direct3D11/mod.rs b/crates/libs/sys/src/Windows/Win32/Graphics/Direct3D11/mod.rs index e5c38b2c36..0da9a586bd 100644 --- a/crates/libs/sys/src/Windows/Win32/Graphics/Direct3D11/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Graphics/Direct3D11/mod.rs @@ -713,9 +713,9 @@ pub const D3D11_BUFFEREX_SRV_FLAG_RAW: D3D11_BUFFEREX_SRV_FLAG = 1i32; pub struct D3D11_BUFFER_DESC { pub ByteWidth: u32, pub Usage: D3D11_USAGE, - pub BindFlags: u32, - pub CPUAccessFlags: u32, - pub MiscFlags: u32, + pub BindFlags: D3D11_BIND_FLAG, + pub CPUAccessFlags: D3D11_CPU_ACCESS_FLAG, + pub MiscFlags: D3D11_RESOURCE_MISC_FLAG, pub StructureByteStride: u32, } impl ::core::marker::Copy for D3D11_BUFFER_DESC {} @@ -6935,9 +6935,9 @@ pub struct D3D11_TEXTURE1D_DESC { pub ArraySize: u32, pub Format: super::Dxgi::Common::DXGI_FORMAT, pub Usage: D3D11_USAGE, - pub BindFlags: u32, - pub CPUAccessFlags: u32, - pub MiscFlags: u32, + pub BindFlags: D3D11_BIND_FLAG, + pub CPUAccessFlags: D3D11_CPU_ACCESS_FLAG, + pub MiscFlags: D3D11_RESOURCE_MISC_FLAG, } #[cfg(feature = "Win32_Graphics_Dxgi_Common")] impl ::core::marker::Copy for D3D11_TEXTURE1D_DESC {} @@ -6981,9 +6981,9 @@ pub struct D3D11_TEXTURE2D_DESC1 { pub Format: super::Dxgi::Common::DXGI_FORMAT, pub SampleDesc: super::Dxgi::Common::DXGI_SAMPLE_DESC, pub Usage: D3D11_USAGE, - pub BindFlags: u32, - pub CPUAccessFlags: u32, - pub MiscFlags: u32, + pub BindFlags: D3D11_BIND_FLAG, + pub CPUAccessFlags: D3D11_CPU_ACCESS_FLAG, + pub MiscFlags: D3D11_RESOURCE_MISC_FLAG, pub TextureLayout: D3D11_TEXTURE_LAYOUT, } #[cfg(feature = "Win32_Graphics_Dxgi_Common")] @@ -7004,9 +7004,9 @@ pub struct D3D11_TEXTURE3D_DESC { pub MipLevels: u32, pub Format: super::Dxgi::Common::DXGI_FORMAT, pub Usage: D3D11_USAGE, - pub BindFlags: u32, - pub CPUAccessFlags: u32, - pub MiscFlags: u32, + pub BindFlags: D3D11_BIND_FLAG, + pub CPUAccessFlags: D3D11_CPU_ACCESS_FLAG, + pub MiscFlags: D3D11_RESOURCE_MISC_FLAG, } #[cfg(feature = "Win32_Graphics_Dxgi_Common")] impl ::core::marker::Copy for D3D11_TEXTURE3D_DESC {} @@ -7026,9 +7026,9 @@ pub struct D3D11_TEXTURE3D_DESC1 { pub MipLevels: u32, pub Format: super::Dxgi::Common::DXGI_FORMAT, pub Usage: D3D11_USAGE, - pub BindFlags: u32, - pub CPUAccessFlags: u32, - pub MiscFlags: u32, + pub BindFlags: D3D11_BIND_FLAG, + pub CPUAccessFlags: D3D11_CPU_ACCESS_FLAG, + pub MiscFlags: D3D11_RESOURCE_MISC_FLAG, pub TextureLayout: D3D11_TEXTURE_LAYOUT, } #[cfg(feature = "Win32_Graphics_Dxgi_Common")] diff --git a/crates/libs/sys/src/Windows/Win32/Graphics/Direct3D9/mod.rs b/crates/libs/sys/src/Windows/Win32/Graphics/Direct3D9/mod.rs index 1803f67dd6..2d7ec77c5e 100644 --- a/crates/libs/sys/src/Windows/Win32/Graphics/Direct3D9/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Graphics/Direct3D9/mod.rs @@ -3114,6 +3114,14 @@ pub const D3DTS_TEXTURE6: D3DTRANSFORMSTATETYPE = 22i32; pub const D3DTS_TEXTURE7: D3DTRANSFORMSTATETYPE = 23i32; #[doc = "*Required features: `\"Win32_Graphics_Direct3D9\"`*"] pub const D3DTS_FORCE_DWORD: D3DTRANSFORMSTATETYPE = 2147483647i32; +#[doc = "*Required features: `\"Win32_Graphics_Direct3D9\"`*"] +pub const D3DTS_WORLD: D3DTRANSFORMSTATETYPE = 256i32; +#[doc = "*Required features: `\"Win32_Graphics_Direct3D9\"`*"] +pub const D3DTS_WORLD1: D3DTRANSFORMSTATETYPE = 257i32; +#[doc = "*Required features: `\"Win32_Graphics_Direct3D9\"`*"] +pub const D3DTS_WORLD2: D3DTRANSFORMSTATETYPE = 258i32; +#[doc = "*Required features: `\"Win32_Graphics_Direct3D9\"`*"] +pub const D3DTS_WORLD3: D3DTRANSFORMSTATETYPE = 259i32; #[repr(C)] #[doc = "*Required features: `\"Win32_Graphics_Direct3D9\"`*"] pub struct D3DTRIPATCH_INFO { diff --git a/crates/libs/sys/src/Windows/Win32/Graphics/DirectWrite/mod.rs b/crates/libs/sys/src/Windows/Win32/Graphics/DirectWrite/mod.rs index 9d1f80b88d..40f54a59bd 100644 --- a/crates/libs/sys/src/Windows/Win32/Graphics/DirectWrite/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Graphics/DirectWrite/mod.rs @@ -461,7 +461,7 @@ impl ::core::clone::Clone for DWRITE_FONT_METRICS { #[doc = "*Required features: `\"Win32_Graphics_DirectWrite\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct DWRITE_FONT_METRICS1 { - pub __AnonymousBase_DWrite_1_L627_C38: DWRITE_FONT_METRICS, + pub Base: DWRITE_FONT_METRICS, pub glyphBoxLeft: i16, pub glyphBoxTop: i16, pub glyphBoxRight: i16, diff --git a/crates/libs/sys/src/Windows/Win32/Graphics/Gdi/mod.rs b/crates/libs/sys/src/Windows/Win32/Graphics/Gdi/mod.rs index 90bd08dfa5..559cfe4ee7 100644 --- a/crates/libs/sys/src/Windows/Win32/Graphics/Gdi/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Graphics/Gdi/mod.rs @@ -67,7 +67,7 @@ extern "system" { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn CloseMetaFile(hdc: HDC) -> HMETAFILE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn CombineRgn(hrgndst: HRGN, hrgnsrc1: HRGN, hrgnsrc2: HRGN, imode: RGN_COMBINE_MODE) -> i32; + pub fn CombineRgn(hrgndst: HRGN, hrgnsrc1: HRGN, hrgnsrc2: HRGN, imode: RGN_COMBINE_MODE) -> GDI_REGION_TYPE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn CombineTransform(lpxfout: *mut XFORM, lpxf1: *const XFORM, lpxf2: *const XFORM) -> super::super::Foundation::BOOL; @@ -86,7 +86,8 @@ extern "system" { pub fn CreateBitmap(nwidth: i32, nheight: i32, nplanes: u32, nbitcount: u32, lpbits: *const ::core::ffi::c_void) -> HBITMAP; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn CreateBitmapIndirect(pbm: *const BITMAP) -> HBITMAP; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub fn CreateBrushIndirect(plbrush: *const LOGBRUSH) -> HBRUSH; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn CreateCompatibleBitmap(hdc: HDC, cx: i32, cy: i32) -> HBITMAP; @@ -138,8 +139,9 @@ extern "system" { pub fn CreateFontW(cheight: i32, cwidth: i32, cescapement: i32, corientation: i32, cweight: i32, bitalic: u32, bunderline: u32, bstrikeout: u32, icharset: u32, ioutprecision: FONT_OUTPUT_PRECISION, iclipprecision: FONT_CLIP_PRECISION, iquality: FONT_QUALITY, ipitchandfamily: FONT_PITCH_AND_FAMILY, pszfacename: ::windows_sys::core::PCWSTR) -> HFONT; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn CreateHalftonePalette(hdc: HDC) -> HPALETTE; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn CreateHatchBrush(ihatch: HATCH_BRUSH_STYLE, color: u32) -> HBRUSH; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn CreateHatchBrush(ihatch: HATCH_BRUSH_STYLE, color: super::super::Foundation::COLORREF) -> HBRUSH; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn CreateICA(pszdriver: ::windows_sys::core::PCSTR, pszdevice: ::windows_sys::core::PCSTR, pszport: ::windows_sys::core::PCSTR, pdm: *const DEVMODEA) -> CreatedHDC; @@ -154,8 +156,9 @@ extern "system" { pub fn CreatePalette(plpal: *const LOGPALETTE) -> HPALETTE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn CreatePatternBrush(hbm: HBITMAP) -> HBRUSH; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn CreatePen(istyle: PEN_STYLE, cwidth: i32, color: u32) -> HPEN; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn CreatePen(istyle: PEN_STYLE, cwidth: i32, color: super::super::Foundation::COLORREF) -> HPEN; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn CreatePenIndirect(plpen: *const LOGPEN) -> HPEN; @@ -178,8 +181,9 @@ extern "system" { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn CreateScalableFontResourceW(fdwhidden: u32, lpszfont: ::windows_sys::core::PCWSTR, lpszfile: ::windows_sys::core::PCWSTR, lpszpath: ::windows_sys::core::PCWSTR) -> super::super::Foundation::BOOL; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn CreateSolidBrush(color: u32) -> HBRUSH; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn CreateSolidBrush(color: super::super::Foundation::COLORREF) -> HBRUSH; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn DPtoLP(hdc: HDC, lppt: *mut super::super::Foundation::POINT, c: i32) -> super::super::Foundation::BOOL; @@ -220,7 +224,7 @@ extern "system" { pub fn DrawStateW(hdc: HDC, hbrfore: HBRUSH, qfncallback: DRAWSTATEPROC, ldata: super::super::Foundation::LPARAM, wdata: super::super::Foundation::WPARAM, x: i32, y: i32, cx: i32, cy: i32, uflags: DRAWSTATE_FLAGS) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn DrawTextA(hdc: HDC, lpchtext: ::windows_sys::core::PCSTR, cchtext: i32, lprc: *mut super::super::Foundation::RECT, format: DRAW_TEXT_FORMAT) -> i32; + pub fn DrawTextA(hdc: HDC, lpchtext: ::windows_sys::core::PSTR, cchtext: i32, lprc: *mut super::super::Foundation::RECT, format: DRAW_TEXT_FORMAT) -> i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn DrawTextExA(hdc: HDC, lpchtext: ::windows_sys::core::PSTR, cchtext: i32, lprc: *mut super::super::Foundation::RECT, format: DRAW_TEXT_FORMAT, lpdtp: *const DRAWTEXTPARAMS) -> i32; @@ -229,7 +233,7 @@ extern "system" { pub fn DrawTextExW(hdc: HDC, lpchtext: ::windows_sys::core::PWSTR, cchtext: i32, lprc: *mut super::super::Foundation::RECT, format: DRAW_TEXT_FORMAT, lpdtp: *const DRAWTEXTPARAMS) -> i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn DrawTextW(hdc: HDC, lpchtext: ::windows_sys::core::PCWSTR, cchtext: i32, lprc: *mut super::super::Foundation::RECT, format: DRAW_TEXT_FORMAT) -> i32; + pub fn DrawTextW(hdc: HDC, lpchtext: ::windows_sys::core::PWSTR, cchtext: i32, lprc: *mut super::super::Foundation::RECT, format: DRAW_TEXT_FORMAT) -> i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn Ellipse(hdc: HDC, left: i32, top: i32, right: i32, bottom: i32) -> super::super::Foundation::BOOL; @@ -294,20 +298,21 @@ extern "system" { #[cfg(feature = "Win32_Foundation")] pub fn EqualRgn(hrgn1: HRGN, hrgn2: HRGN) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn ExcludeClipRect(hdc: HDC, left: i32, top: i32, right: i32, bottom: i32) -> i32; + pub fn ExcludeClipRect(hdc: HDC, left: i32, top: i32, right: i32, bottom: i32) -> GDI_REGION_TYPE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn ExcludeUpdateRgn(hdc: HDC, hwnd: super::super::Foundation::HWND) -> i32; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub fn ExtCreatePen(ipenstyle: PEN_STYLE, cwidth: u32, plbrush: *const LOGBRUSH, cstyle: u32, pstyle: *const u32) -> HPEN; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn ExtCreateRegion(lpx: *const XFORM, ncount: u32, lpdata: *const RGNDATA) -> HRGN; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn ExtFloodFill(hdc: HDC, x: i32, y: i32, color: u32, r#type: EXT_FLOOD_FILL_TYPE) -> super::super::Foundation::BOOL; + pub fn ExtFloodFill(hdc: HDC, x: i32, y: i32, color: super::super::Foundation::COLORREF, r#type: EXT_FLOOD_FILL_TYPE) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn ExtSelectClipRgn(hdc: HDC, hrgn: HRGN, mode: RGN_COMBINE_MODE) -> i32; + pub fn ExtSelectClipRgn(hdc: HDC, hrgn: HRGN, mode: RGN_COMBINE_MODE) -> GDI_REGION_TYPE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn ExtTextOutA(hdc: HDC, x: i32, y: i32, options: ETO_OPTIONS, lprect: *const super::super::Foundation::RECT, lpstring: ::windows_sys::core::PCSTR, c: u32, lpdx: *const i32) -> super::super::Foundation::BOOL; @@ -331,7 +336,7 @@ extern "system" { pub fn FlattenPath(hdc: HDC) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn FloodFill(hdc: HDC, x: i32, y: i32, color: u32) -> super::super::Foundation::BOOL; + pub fn FloodFill(hdc: HDC, x: i32, y: i32, color: super::super::Foundation::COLORREF) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn FrameRect(hdc: HDC, lprc: *const super::super::Foundation::RECT, hbr: HBRUSH) -> i32; @@ -367,10 +372,11 @@ extern "system" { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn GetBitmapDimensionEx(hbit: HBITMAP, lpsize: *mut super::super::Foundation::SIZE) -> super::super::Foundation::BOOL; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn GetBkColor(hdc: HDC) -> super::super::Foundation::COLORREF; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn GetBkColor(hdc: HDC) -> u32; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn GetBkMode(hdc: HDC) -> i32; + pub fn GetBkMode(hdc: HDC) -> BACKGROUND_MODE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn GetBoundsRect(hdc: HDC, lprect: *mut super::super::Foundation::RECT, flags: u32) -> u32; @@ -419,7 +425,7 @@ extern "system" { pub fn GetCharacterPlacementW(hdc: HDC, lpstring: ::windows_sys::core::PCWSTR, ncount: i32, nmexextent: i32, lpresults: *mut GCP_RESULTSW, dwflags: GET_CHARACTER_PLACEMENT_FLAGS) -> u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn GetClipBox(hdc: HDC, lprect: *mut super::super::Foundation::RECT) -> i32; + pub fn GetClipBox(hdc: HDC, lprect: *mut super::super::Foundation::RECT) -> GDI_REGION_TYPE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn GetClipRgn(hdc: HDC, hrgn: HRGN) -> i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] @@ -433,16 +439,18 @@ extern "system" { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn GetDC(hwnd: super::super::Foundation::HWND) -> HDC; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn GetDCBrushColor(hdc: HDC) -> u32; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn GetDCBrushColor(hdc: HDC) -> super::super::Foundation::COLORREF; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn GetDCEx(hwnd: super::super::Foundation::HWND, hrgnclip: HRGN, flags: GET_DCX_FLAGS) -> HDC; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn GetDCOrgEx(hdc: HDC, lppt: *mut super::super::Foundation::POINT) -> super::super::Foundation::BOOL; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn GetDCPenColor(hdc: HDC) -> u32; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn GetDCPenColor(hdc: HDC) -> super::super::Foundation::COLORREF; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn GetDIBColorTable(hdc: HDC, istart: u32, centries: u32, prgbq: *mut RGBQUAD) -> u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] @@ -489,7 +497,7 @@ extern "system" { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn GetLayout(hdc: HDC) -> u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn GetMapMode(hdc: HDC) -> i32; + pub fn GetMapMode(hdc: HDC) -> HDC_MAP_MODE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn GetMetaFileA(lpname: ::windows_sys::core::PCSTR) -> HMETAFILE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] @@ -507,10 +515,12 @@ extern "system" { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn GetMonitorInfoW(hmonitor: HMONITOR, lpmi: *mut MONITORINFO) -> super::super::Foundation::BOOL; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn GetNearestColor(hdc: HDC, color: u32) -> u32; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn GetNearestPaletteIndex(h: HPALETTE, color: u32) -> u32; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn GetNearestColor(hdc: HDC, color: super::super::Foundation::COLORREF) -> super::super::Foundation::COLORREF; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn GetNearestPaletteIndex(h: HPALETTE, color: super::super::Foundation::COLORREF) -> u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn GetObjectA(h: HGDIOBJ, c: i32, pv: *mut ::core::ffi::c_void) -> i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] @@ -528,12 +538,13 @@ extern "system" { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn GetPath(hdc: HDC, apt: *mut super::super::Foundation::POINT, aj: *mut u8, cpt: i32) -> i32; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn GetPixel(hdc: HDC, x: i32, y: i32) -> u32; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn GetPixel(hdc: HDC, x: i32, y: i32) -> super::super::Foundation::COLORREF; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn GetPolyFillMode(hdc: HDC) -> i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn GetROP2(hdc: HDC) -> i32; + pub fn GetROP2(hdc: HDC) -> R2_MODE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn GetRandomRgn(hdc: HDC, hrgn: HRGN, i: i32) -> i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] @@ -544,7 +555,7 @@ extern "system" { pub fn GetRegionData(hrgn: HRGN, ncount: u32, lprgndata: *mut RGNDATA) -> u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn GetRgnBox(hrgn: HRGN, lprc: *mut super::super::Foundation::RECT) -> i32; + pub fn GetRgnBox(hrgn: HRGN, lprc: *mut super::super::Foundation::RECT) -> GDI_REGION_TYPE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn GetStockObject(i: GET_STOCK_OBJECT_FLAGS) -> HGDIOBJ; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] @@ -560,11 +571,12 @@ extern "system" { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn GetTabbedTextExtentW(hdc: HDC, lpstring: ::windows_sys::core::PCWSTR, chcount: i32, ntabpositions: i32, lpntabstoppositions: *const i32) -> u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn GetTextAlign(hdc: HDC) -> u32; + pub fn GetTextAlign(hdc: HDC) -> TEXT_ALIGN_OPTIONS; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn GetTextCharacterExtra(hdc: HDC) -> i32; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn GetTextColor(hdc: HDC) -> u32; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn GetTextColor(hdc: HDC) -> super::super::Foundation::COLORREF; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn GetTextExtentExPointA(hdc: HDC, lpszstring: ::windows_sys::core::PCSTR, cchstring: i32, nmaxextent: i32, lpnfit: *mut i32, lpndx: *mut i32, lpsize: *mut super::super::Foundation::SIZE) -> super::super::Foundation::BOOL; @@ -644,7 +656,7 @@ extern "system" { #[cfg(feature = "Win32_Foundation")] pub fn InflateRect(lprc: *mut super::super::Foundation::RECT, dx: i32, dy: i32) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn IntersectClipRect(hdc: HDC, left: i32, top: i32, right: i32, bottom: i32) -> i32; + pub fn IntersectClipRect(hdc: HDC, left: i32, top: i32, right: i32, bottom: i32) -> GDI_REGION_TYPE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn IntersectRect(lprcdst: *mut super::super::Foundation::RECT, lprcsrc1: *const super::super::Foundation::RECT, lprcsrc2: *const super::super::Foundation::RECT) -> super::super::Foundation::BOOL; @@ -705,12 +717,12 @@ extern "system" { #[cfg(feature = "Win32_Foundation")] pub fn MoveToEx(hdc: HDC, x: i32, y: i32, lppt: *mut super::super::Foundation::POINT) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn OffsetClipRgn(hdc: HDC, x: i32, y: i32) -> i32; + pub fn OffsetClipRgn(hdc: HDC, x: i32, y: i32) -> GDI_REGION_TYPE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn OffsetRect(lprc: *mut super::super::Foundation::RECT, dx: i32, dy: i32) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn OffsetRgn(hrgn: HRGN, x: i32, y: i32) -> i32; + pub fn OffsetRgn(hrgn: HRGN, x: i32, y: i32) -> GDI_REGION_TYPE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn OffsetViewportOrgEx(hdc: HDC, x: i32, y: i32, lppt: *mut super::super::Foundation::POINT) -> super::super::Foundation::BOOL; @@ -847,7 +859,7 @@ extern "system" { #[cfg(feature = "Win32_Foundation")] pub fn SelectClipPath(hdc: HDC, mode: RGN_COMBINE_MODE) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn SelectClipRgn(hdc: HDC, hrgn: HRGN) -> i32; + pub fn SelectClipRgn(hdc: HDC, hrgn: HRGN) -> GDI_REGION_TYPE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn SelectObject(hdc: HDC, h: HGDIOBJ) -> HGDIOBJ; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] @@ -860,8 +872,9 @@ extern "system" { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn SetBitmapDimensionEx(hbm: HBITMAP, w: i32, h: i32, lpsz: *mut super::super::Foundation::SIZE) -> super::super::Foundation::BOOL; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn SetBkColor(hdc: HDC, color: u32) -> u32; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn SetBkColor(hdc: HDC, color: super::super::Foundation::COLORREF) -> super::super::Foundation::COLORREF; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn SetBkMode(hdc: HDC, mode: BACKGROUND_MODE) -> i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] @@ -873,10 +886,12 @@ extern "system" { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn SetColorAdjustment(hdc: HDC, lpca: *const COLORADJUSTMENT) -> super::super::Foundation::BOOL; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn SetDCBrushColor(hdc: HDC, color: u32) -> u32; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn SetDCPenColor(hdc: HDC, color: u32) -> u32; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn SetDCBrushColor(hdc: HDC, color: super::super::Foundation::COLORREF) -> super::super::Foundation::COLORREF; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn SetDCPenColor(hdc: HDC, color: super::super::Foundation::COLORREF) -> super::super::Foundation::COLORREF; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn SetDIBColorTable(hdc: HDC, istart: u32, centries: u32, prgbq: *const RGBQUAD) -> u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] @@ -896,17 +911,18 @@ extern "system" { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn SetMetaFileBitsEx(cbbuffer: u32, lpdata: *const u8) -> HMETAFILE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn SetMetaRgn(hdc: HDC) -> i32; + pub fn SetMetaRgn(hdc: HDC) -> GDI_REGION_TYPE; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn SetMiterLimit(hdc: HDC, limit: f32, old: *mut f32) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn SetPaletteEntries(hpal: HPALETTE, istart: u32, centries: u32, ppalentries: *const PALETTEENTRY) -> u32; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn SetPixel(hdc: HDC, x: i32, y: i32, color: u32) -> u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn SetPixelV(hdc: HDC, x: i32, y: i32, color: u32) -> super::super::Foundation::BOOL; + pub fn SetPixel(hdc: HDC, x: i32, y: i32, color: super::super::Foundation::COLORREF) -> super::super::Foundation::COLORREF; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn SetPixelV(hdc: HDC, x: i32, y: i32, color: super::super::Foundation::COLORREF) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn SetPolyFillMode(hdc: HDC, mode: CREATE_POLYGON_RGN_MODE) -> i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] @@ -928,8 +944,9 @@ extern "system" { pub fn SetTextAlign(hdc: HDC, align: TEXT_ALIGN_OPTIONS) -> u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub fn SetTextCharacterExtra(hdc: HDC, extra: i32) -> i32; - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - pub fn SetTextColor(hdc: HDC, color: u32) -> u32; + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn SetTextColor(hdc: HDC, color: super::super::Foundation::COLORREF) -> super::super::Foundation::COLORREF; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn SetTextJustification(hdc: HDC, extra: i32, count: i32) -> super::super::Foundation::BOOL; @@ -1085,10 +1102,6 @@ pub const AC_SRC_ALPHA: u32 = 1u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const AC_SRC_OVER: u32 = 0u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const ANSI_CHARSET: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const ARABIC_CHARSET: u32 = 178u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub type ARC_DIRECTION = u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const AD_COUNTERCLOCKWISE: ARC_DIRECTION = 1u32; @@ -1155,8 +1168,6 @@ pub const OPAQUE: BACKGROUND_MODE = 2u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const TRANSPARENT: BACKGROUND_MODE = 1u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BALTIC_CHARSET: u32 = 186u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const BANDINFO: u32 = 24u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const BEGIN_PATH: u32 = 4096u32; @@ -1239,7 +1250,7 @@ pub struct BITMAPINFOHEADER { pub biHeight: i32, pub biPlanes: u16, pub biBitCount: u16, - pub biCompression: u32, + pub biCompression: BI_COMPRESSION, pub biSizeImage: u32, pub biXPelsPerMeter: i32, pub biYPelsPerMeter: i32, @@ -1260,7 +1271,7 @@ pub struct BITMAPV4HEADER { pub bV4Height: i32, pub bV4Planes: u16, pub bV4BitCount: u16, - pub bV4V4Compression: u32, + pub bV4V4Compression: BI_COMPRESSION, pub bV4SizeImage: u32, pub bV4XPelsPerMeter: i32, pub bV4YPelsPerMeter: i32, @@ -1290,7 +1301,7 @@ pub struct BITMAPV5HEADER { pub bV5Height: i32, pub bV5Planes: u16, pub bV5BitCount: u16, - pub bV5Compression: u32, + pub bV5Compression: BI_COMPRESSION, pub bV5SizeImage: u32, pub bV5XPelsPerMeter: i32, pub bV5YPelsPerMeter: i32, @@ -1317,17 +1328,19 @@ impl ::core::clone::Clone for BITMAPV5HEADER { } } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BI_BITFIELDS: i32 = 3i32; +pub type BI_COMPRESSION = i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BI_JPEG: i32 = 4i32; +pub const BI_RGB: BI_COMPRESSION = 0i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BI_PNG: i32 = 5i32; +pub const BI_RLE8: BI_COMPRESSION = 1i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BI_RGB: i32 = 0i32; +pub const BI_RLE4: BI_COMPRESSION = 2i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BI_RLE4: i32 = 2i32; +pub const BI_BITFIELDS: BI_COMPRESSION = 3i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BI_RLE8: i32 = 1i32; +pub const BI_JPEG: BI_COMPRESSION = 4i32; +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const BI_PNG: BI_COMPRESSION = 5i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const BKMODE_LAST: u32 = 2u32; #[repr(C)] @@ -1345,27 +1358,29 @@ impl ::core::clone::Clone for BLENDFUNCTION { } } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_DIBPATTERN: u32 = 5u32; +pub type BRUSH_STYLE = u32; +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const BS_SOLID: BRUSH_STYLE = 0u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_DIBPATTERN8X8: u32 = 8u32; +pub const BS_NULL: BRUSH_STYLE = 1u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_DIBPATTERNPT: u32 = 6u32; +pub const BS_HOLLOW: BRUSH_STYLE = 1u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_HATCHED: u32 = 2u32; +pub const BS_HATCHED: BRUSH_STYLE = 2u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_HOLLOW: u32 = 1u32; +pub const BS_PATTERN: BRUSH_STYLE = 3u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_INDEXED: u32 = 4u32; +pub const BS_INDEXED: BRUSH_STYLE = 4u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_MONOPATTERN: u32 = 9u32; +pub const BS_DIBPATTERN: BRUSH_STYLE = 5u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_NULL: u32 = 1u32; +pub const BS_DIBPATTERNPT: BRUSH_STYLE = 6u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_PATTERN: u32 = 3u32; +pub const BS_PATTERN8X8: BRUSH_STYLE = 7u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_PATTERN8X8: u32 = 7u32; +pub const BS_DIBPATTERN8X8: BRUSH_STYLE = 8u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_SOLID: u32 = 0u32; +pub const BS_MONOPATTERN: BRUSH_STYLE = 9u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const CA_LOG_FILTER: u32 = 2u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] @@ -1432,8 +1447,6 @@ pub const CHARSET_GLYPHIDX: u32 = 3u32; pub const CHECKJPEGFORMAT: u32 = 4119u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const CHECKPNGFORMAT: u32 = 4120u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const CHINESEBIG5_CHARSET: u32 = 136u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub struct CIEXYZ { @@ -1536,8 +1549,6 @@ impl ::core::clone::Clone for COLORMATCHTOTARGET { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const COLORMATCHTOTARGET_EMBEDED: u32 = 1u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const COMPLEXREGION: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const CP_NONE: u32 = 0u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const CP_RECTANGLE: u32 = 1u32; @@ -1607,8 +1618,6 @@ pub const DC_MANUFACTURER: u32 = 23u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const DC_MODEL: u32 = 24u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const DEFAULT_CHARSET: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const DEFAULT_PITCH: u32 = 0u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] @@ -2713,8 +2722,6 @@ pub const DT_RASDISPLAY: u32 = 1u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const DT_RASPRINTER: u32 = 2u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const EASTEUROPE_CHARSET: u32 = 238u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const ELF_CULTURE_LATIN: u32 = 0u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const ELF_VENDOR_SIZE: u32 = 4u32; @@ -2762,7 +2769,7 @@ pub struct EMRALPHABLEND { pub xSrc: i32, pub ySrc: i32, pub xformSrc: XFORM, - pub crBkColorSrc: u32, + pub crBkColorSrc: super::super::Foundation::COLORREF, pub iUsageSrc: u32, pub offBmiSrc: u32, pub cbBmiSrc: u32, @@ -2828,7 +2835,7 @@ pub struct EMRBITBLT { pub xSrc: i32, pub ySrc: i32, pub xformSrc: XFORM, - pub crBkColorSrc: u32, + pub crBkColorSrc: super::super::Foundation::COLORREF, pub iUsageSrc: u32, pub offBmiSrc: u32, pub cbBmiSrc: u32, @@ -2844,13 +2851,16 @@ impl ::core::clone::Clone for EMRBITBLT { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct EMRCREATEBRUSHINDIRECT { pub emr: EMR, pub ihBrush: u32, pub lb: LOGBRUSH32, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for EMRCREATEBRUSHINDIRECT {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for EMRCREATEBRUSHINDIRECT { fn clone(&self) -> Self { *self @@ -2977,7 +2987,8 @@ impl ::core::clone::Clone for EMREXTCREATEFONTINDIRECTW { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct EMREXTCREATEPEN { pub emr: EMR, pub ihPen: u32, @@ -2987,7 +2998,9 @@ pub struct EMREXTCREATEPEN { pub cbBits: u32, pub elp: EXTLOGPEN32, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for EMREXTCREATEPEN {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for EMREXTCREATEPEN { fn clone(&self) -> Self { *self @@ -3013,7 +3026,7 @@ impl ::core::clone::Clone for EMREXTESCAPE { pub struct EMREXTFLOODFILL { pub emr: EMR, pub ptlStart: super::super::Foundation::POINTL, - pub crColor: u32, + pub crColor: super::super::Foundation::COLORREF, pub iMode: u32, } #[cfg(feature = "Win32_Foundation")] @@ -3029,7 +3042,7 @@ impl ::core::clone::Clone for EMREXTFLOODFILL { pub struct EMREXTSELECTCLIPRGN { pub emr: EMR, pub cbRgnData: u32, - pub iMode: u32, + pub iMode: RGN_COMBINE_MODE, pub RgnData: [u8; 1], } impl ::core::marker::Copy for EMREXTSELECTCLIPRGN {} @@ -3231,7 +3244,7 @@ pub struct EMRMASKBLT { pub xSrc: i32, pub ySrc: i32, pub xformSrc: XFORM, - pub crBkColorSrc: u32, + pub crBkColorSrc: super::super::Foundation::COLORREF, pub iUsageSrc: u32, pub offBmiSrc: u32, pub cbBmiSrc: u32, @@ -3258,7 +3271,7 @@ impl ::core::clone::Clone for EMRMASKBLT { pub struct EMRMODIFYWORLDTRANSFORM { pub emr: EMR, pub xform: XFORM, - pub iMode: u32, + pub iMode: MODIFY_WORLD_TRANSFORM_MODE, } impl ::core::marker::Copy for EMRMODIFYWORLDTRANSFORM {} impl ::core::clone::Clone for EMRMODIFYWORLDTRANSFORM { @@ -3308,7 +3321,7 @@ pub struct EMRPLGBLT { pub cxSrc: i32, pub cySrc: i32, pub xformSrc: XFORM, - pub crBkColorSrc: u32, + pub crBkColorSrc: super::super::Foundation::COLORREF, pub iUsageSrc: u32, pub offBmiSrc: u32, pub cbBmiSrc: u32, @@ -3674,7 +3687,7 @@ impl ::core::clone::Clone for EMRSETPALETTEENTRIES { pub struct EMRSETPIXELV { pub emr: EMR, pub ptlPixel: super::super::Foundation::POINTL, - pub crColor: u32, + pub crColor: super::super::Foundation::COLORREF, } #[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for EMRSETPIXELV {} @@ -3685,12 +3698,15 @@ impl ::core::clone::Clone for EMRSETPIXELV { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct EMRSETTEXTCOLOR { pub emr: EMR, - pub crColor: u32, + pub crColor: super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for EMRSETTEXTCOLOR {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for EMRSETTEXTCOLOR { fn clone(&self) -> Self { *self @@ -3752,7 +3768,7 @@ pub struct EMRSTRETCHBLT { pub xSrc: i32, pub ySrc: i32, pub xformSrc: XFORM, - pub crBkColorSrc: u32, + pub crBkColorSrc: super::super::Foundation::COLORREF, pub iUsageSrc: u32, pub offBmiSrc: u32, pub cbBmiSrc: u32, @@ -3831,7 +3847,7 @@ pub struct EMRTRANSPARENTBLT { pub xSrc: i32, pub ySrc: i32, pub xformSrc: XFORM, - pub crBkColorSrc: u32, + pub crBkColorSrc: super::super::Foundation::COLORREF, pub iUsageSrc: u32, pub offBmiSrc: u32, pub cbBmiSrc: u32, @@ -4260,7 +4276,7 @@ pub const EPSPRINTING: u32 = 33u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const EPS_SIGNATURE: u32 = 1179865157u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const ERROR: u32 = 0u32; +pub const ERROR: i32 = 0i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const ERR_FORMAT: u32 = 1006u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] @@ -4469,34 +4485,40 @@ impl ::core::clone::Clone for EXTLOGFONTW { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct EXTLOGPEN { - pub elpPenStyle: u32, + pub elpPenStyle: PEN_STYLE, pub elpWidth: u32, pub elpBrushStyle: u32, - pub elpColor: u32, + pub elpColor: super::super::Foundation::COLORREF, pub elpHatch: usize, pub elpNumEntries: u32, pub elpStyleEntry: [u32; 1], } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for EXTLOGPEN {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for EXTLOGPEN { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct EXTLOGPEN32 { - pub elpPenStyle: u32, + pub elpPenStyle: PEN_STYLE, pub elpWidth: u32, pub elpBrushStyle: u32, - pub elpColor: u32, + pub elpColor: super::super::Foundation::COLORREF, pub elpHatch: u32, pub elpNumEntries: u32, pub elpStyleEntry: [u32; 1], } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for EXTLOGPEN32 {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for EXTLOGPEN32 { fn clone(&self) -> Self { *self @@ -4673,6 +4695,48 @@ pub type FONTENUMPROCW = ::core::option::Option super::super::Foundation::BOOL>; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const GREEK_CHARSET: u32 = 161u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const GS_8BIT_INDICES: u32 = 1u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] @@ -5258,10 +5330,6 @@ impl ::core::clone::Clone for HANDLETABLE { } } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const HANGEUL_CHARSET: u32 = 129u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const HANGUL_CHARSET: u32 = 129u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub type HATCH_BRUSH_STYLE = u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const HS_BDIAGONAL: HATCH_BRUSH_STYLE = 3u32; @@ -5296,8 +5364,6 @@ pub const MM_LOMETRIC: HDC_MAP_MODE = 2u32; pub const MM_TEXT: HDC_MAP_MODE = 1u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const MM_TWIPS: HDC_MAP_MODE = 6u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const HEBREW_CHARSET: u32 = 177u32; pub type HENHMETAFILE = isize; pub type HFONT = isize; pub type HGDIOBJ = isize; @@ -5338,8 +5404,6 @@ pub const ILLUMINANT_MAX_INDEX: u32 = 8u32; pub const ILLUMINANT_NTSC: u32 = 3u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const ILLUMINANT_TUNGSTEN: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const JOHAB_CHARSET: u32 = 130u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub struct KERNINGPAIR { @@ -5391,26 +5455,32 @@ pub const LF_FULLFACESIZE: u32 = 64u32; #[cfg(feature = "Win32_Foundation")] pub type LINEDDAPROC = ::core::option::Option; #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct LOGBRUSH { - pub lbStyle: u32, - pub lbColor: u32, + pub lbStyle: BRUSH_STYLE, + pub lbColor: super::super::Foundation::COLORREF, pub lbHatch: usize, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for LOGBRUSH {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for LOGBRUSH { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct LOGBRUSH32 { - pub lbStyle: u32, - pub lbColor: u32, + pub lbStyle: BRUSH_STYLE, + pub lbColor: super::super::Foundation::COLORREF, pub lbHatch: u32, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for LOGBRUSH32 {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for LOGBRUSH32 { fn clone(&self) -> Self { *self @@ -5424,15 +5494,15 @@ pub struct LOGFONTA { pub lfWidth: i32, pub lfEscapement: i32, pub lfOrientation: i32, - pub lfWeight: i32, + pub lfWeight: FONT_WEIGHT, pub lfItalic: u8, pub lfUnderline: u8, pub lfStrikeOut: u8, pub lfCharSet: u8, - pub lfOutPrecision: u8, - pub lfClipPrecision: u8, - pub lfQuality: u8, - pub lfPitchAndFamily: u8, + pub lfOutPrecision: FONT_OUTPUT_PRECISION, + pub lfClipPrecision: FONT_CLIP_PRECISION, + pub lfQuality: FONT_QUALITY, + pub lfPitchAndFamily: FONT_PITCH_AND_FAMILY, pub lfFaceName: [super::super::Foundation::CHAR; 32], } #[cfg(feature = "Win32_Foundation")] @@ -5450,15 +5520,15 @@ pub struct LOGFONTW { pub lfWidth: i32, pub lfEscapement: i32, pub lfOrientation: i32, - pub lfWeight: i32, + pub lfWeight: FONT_WEIGHT, pub lfItalic: u8, pub lfUnderline: u8, pub lfStrikeOut: u8, - pub lfCharSet: u8, - pub lfOutPrecision: u8, - pub lfClipPrecision: u8, - pub lfQuality: u8, - pub lfPitchAndFamily: u8, + pub lfCharSet: FONT_CHARSET, + pub lfOutPrecision: FONT_OUTPUT_PRECISION, + pub lfClipPrecision: FONT_CLIP_PRECISION, + pub lfQuality: FONT_QUALITY, + pub lfPitchAndFamily: FONT_PITCH_AND_FAMILY, pub lfFaceName: [u16; 32], } impl ::core::marker::Copy for LOGFONTW {} @@ -5484,9 +5554,9 @@ impl ::core::clone::Clone for LOGPALETTE { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct LOGPEN { - pub lopnStyle: u32, + pub lopnStyle: PEN_STYLE, pub lopnWidth: super::super::Foundation::POINT, - pub lopnColor: u32, + pub lopnColor: super::super::Foundation::COLORREF, } #[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for LOGPEN {} @@ -5526,8 +5596,6 @@ pub type LPFNDEVCAPS = ::core::option::Option u32>; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const MAC_CHARSET: u32 = 77u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub struct MAT2 { @@ -5820,7 +5888,7 @@ pub struct NEWTEXTMETRICA { pub tmItalic: u8, pub tmUnderlined: u8, pub tmStruckOut: u8, - pub tmPitchAndFamily: u8, + pub tmPitchAndFamily: TMPF_FLAGS, pub tmCharSet: u8, pub ntmFlags: u32, pub ntmSizeEM: u32, @@ -5854,7 +5922,7 @@ pub struct NEWTEXTMETRICW { pub tmItalic: u8, pub tmUnderlined: u8, pub tmStruckOut: u8, - pub tmPitchAndFamily: u8, + pub tmPitchAndFamily: TMPF_FLAGS, pub tmCharSet: u8, pub ntmFlags: u32, pub ntmSizeEM: u32, @@ -5890,8 +5958,6 @@ pub const NTM_TT_OPENTYPE: u32 = 262144u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const NTM_TYPE1: u32 = 1048576u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const NULLREGION: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub type OBJ_TYPE = i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const OBJ_PEN: OBJ_TYPE = 1i32; @@ -5922,8 +5988,6 @@ pub const OBJ_ENHMETAFILE: OBJ_TYPE = 13i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const OBJ_COLORSPACE: OBJ_TYPE = 14i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const OEM_CHARSET: u32 = 255u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const OPENCHANNEL: u32 = 4110u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] @@ -6691,8 +6755,6 @@ pub const RGN_MIN: RGN_COMBINE_MODE = 1i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const RGN_MAX: RGN_COMBINE_MODE = 5i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const RGN_ERROR: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub type ROP_CODE = u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const BLACKNESS: ROP_CODE = 66u32; @@ -6729,8 +6791,6 @@ pub const CAPTUREBLT: ROP_CODE = 1073741824u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const NOMIRRORBITMAP: ROP_CODE = 2147483648u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const RUSSIAN_CHARSET: u32 = 204u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const SAVE_CTM: u32 = 4101u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const SB_CONST_ALPHA: u32 = 1u32; @@ -6831,10 +6891,6 @@ pub const SET_SCREEN_ANGLE: u32 = 4105u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const SET_SPREAD: u32 = 4106u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const SHIFTJIS_CHARSET: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const SIMPLEREGION: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const SPCLPASSTHROUGH2: u32 = 4568u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const SP_APPABORT: i32 = -2i32; @@ -6873,8 +6929,6 @@ pub const STRETCH_ORSCANS: STRETCH_BLT_MODE = 2u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const WHITEONBLACK: STRETCH_BLT_MODE = 2u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const SYMBOL_CHARSET: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const SYSPAL_ERROR: u32 = 0u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const SYSRGN: u32 = 4u32; @@ -6941,7 +6995,7 @@ pub struct TEXTMETRICA { pub tmItalic: u8, pub tmUnderlined: u8, pub tmStruckOut: u8, - pub tmPitchAndFamily: u8, + pub tmPitchAndFamily: TMPF_FLAGS, pub tmCharSet: u8, } impl ::core::marker::Copy for TEXTMETRICA {} @@ -6971,7 +7025,7 @@ pub struct TEXTMETRICW { pub tmItalic: u8, pub tmUnderlined: u8, pub tmStruckOut: u8, - pub tmPitchAndFamily: u8, + pub tmPitchAndFamily: TMPF_FLAGS, pub tmCharSet: u8, } impl ::core::marker::Copy for TEXTMETRICW {} @@ -7015,15 +7069,15 @@ pub const VTA_BOTTOM: TEXT_ALIGN_OPTIONS = 2u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const VTA_TOP: TEXT_ALIGN_OPTIONS = 0u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const THAI_CHARSET: u32 = 222u32; +pub type TMPF_FLAGS = u8; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const TMPF_DEVICE: u32 = 8u32; +pub const TMPF_FIXED_PITCH: TMPF_FLAGS = 1u8; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const TMPF_FIXED_PITCH: u32 = 1u32; +pub const TMPF_VECTOR: TMPF_FLAGS = 2u8; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const TMPF_TRUETYPE: u32 = 4u32; +pub const TMPF_DEVICE: TMPF_FLAGS = 8u8; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const TMPF_VECTOR: u32 = 2u32; +pub const TMPF_TRUETYPE: TMPF_FLAGS = 4u8; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const TRANSFORM_CTM: u32 = 4107u32; #[repr(C)] @@ -7207,11 +7261,7 @@ pub const TT_PRIM_LINE: u32 = 1u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const TT_PRIM_QSPLINE: u32 = 2u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const TURKISH_CHARSET: u32 = 162u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const VARIABLE_PITCH: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const VIETNAMESE_CHARSET: u32 = 163u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub struct WCRANGE { diff --git a/crates/libs/sys/src/Windows/Win32/Graphics/OpenGL/mod.rs b/crates/libs/sys/src/Windows/Win32/Graphics/OpenGL/mod.rs index 62e7b96c41..d95ea8940b 100644 --- a/crates/libs/sys/src/Windows/Win32/Graphics/OpenGL/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Graphics/OpenGL/mod.rs @@ -814,9 +814,9 @@ extern "system" { #[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] pub fn wglGetCurrentDC() -> super::Gdi::HDC; - #[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`, `\"Win32_Graphics_Gdi\"`*"] - #[cfg(feature = "Win32_Graphics_Gdi")] - pub fn wglGetLayerPaletteEntries(param0: super::Gdi::HDC, param1: i32, param2: i32, param3: i32, param4: *mut u32) -> i32; + #[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] + pub fn wglGetLayerPaletteEntries(param0: super::Gdi::HDC, param1: i32, param2: i32, param3: i32, param4: *mut super::super::Foundation::COLORREF) -> i32; #[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn wglGetProcAddress(param0: ::windows_sys::core::PCSTR) -> super::super::Foundation::PROC; @@ -826,9 +826,9 @@ extern "system" { #[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub fn wglRealizeLayerPalette(param0: super::Gdi::HDC, param1: i32, param2: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL; - #[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`, `\"Win32_Graphics_Gdi\"`*"] - #[cfg(feature = "Win32_Graphics_Gdi")] - pub fn wglSetLayerPaletteEntries(param0: super::Gdi::HDC, param1: i32, param2: i32, param3: i32, param4: *const u32) -> i32; + #[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] + pub fn wglSetLayerPaletteEntries(param0: super::Gdi::HDC, param1: i32, param2: i32, param3: i32, param4: *const super::super::Foundation::COLORREF) -> i32; #[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn wglShareLists(param0: HGLRC, param1: HGLRC) -> super::super::Foundation::BOOL; @@ -2320,7 +2320,8 @@ pub const GL_ZOOM_X: u32 = 3350u32; pub const GL_ZOOM_Y: u32 = 3351u32; pub type HGLRC = isize; #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct LAYERPLANEDESCRIPTOR { pub nSize: u16, pub nVersion: u16, @@ -2345,9 +2346,11 @@ pub struct LAYERPLANEDESCRIPTOR { pub cAuxBuffers: u8, pub iLayerPlane: u8, pub bReserved: u8, - pub crTransparent: u32, + pub crTransparent: super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for LAYERPLANEDESCRIPTOR {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for LAYERPLANEDESCRIPTOR { fn clone(&self) -> Self { *self diff --git a/crates/libs/sys/src/Windows/Win32/Graphics/Printing/mod.rs b/crates/libs/sys/src/Windows/Win32/Graphics/Printing/mod.rs index 71e3134899..9d2d46ab61 100644 --- a/crates/libs/sys/src/Windows/Win32/Graphics/Printing/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Graphics/Printing/mod.rs @@ -546,13 +546,13 @@ extern "system" { pub fn SetFormW(hprinter: super::super::Foundation::HANDLE, pformname: ::windows_sys::core::PCWSTR, level: u32, pform: *const u8) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Graphics_Printing\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn SetJobA(hprinter: super::super::Foundation::HANDLE, jobid: u32, level: u32, pjob: *mut u8, command: u32) -> super::super::Foundation::BOOL; + pub fn SetJobA(hprinter: super::super::Foundation::HANDLE, jobid: u32, level: u32, pjob: *const u8, command: u32) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Graphics_Printing\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn SetJobNamedProperty(hprinter: super::super::Foundation::HANDLE, jobid: u32, pproperty: *const PrintNamedProperty) -> u32; #[doc = "*Required features: `\"Win32_Graphics_Printing\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn SetJobW(hprinter: super::super::Foundation::HANDLE, jobid: u32, level: u32, pjob: *mut u8, command: u32) -> super::super::Foundation::BOOL; + pub fn SetJobW(hprinter: super::super::Foundation::HANDLE, jobid: u32, level: u32, pjob: *const u8, command: u32) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Graphics_Printing\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn SetPortA(pname: ::windows_sys::core::PCSTR, pportname: ::windows_sys::core::PCSTR, dwlevel: u32, pportinfo: *const u8) -> super::super::Foundation::BOOL; diff --git a/crates/libs/sys/src/Windows/Win32/Media/Audio/mod.rs b/crates/libs/sys/src/Windows/Win32/Media/Audio/mod.rs index f0f62360a9..11e0585154 100644 --- a/crates/libs/sys/src/Windows/Win32/Media/Audio/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Media/Audio/mod.rs @@ -33,10 +33,10 @@ extern "system" { pub fn CreateRenderAudioStateMonitorForCategoryAndDeviceRole(category: AUDIO_STREAM_CATEGORY, role: ERole, audiostatemonitor: *mut IAudioStateMonitor) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_Media_Audio\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn PlaySoundA(pszsound: ::windows_sys::core::PCSTR, hmod: super::super::Foundation::HINSTANCE, fdwsound: u32) -> super::super::Foundation::BOOL; + pub fn PlaySoundA(pszsound: ::windows_sys::core::PCSTR, hmod: super::super::Foundation::HINSTANCE, fdwsound: SND_FLAGS) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Media_Audio\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn PlaySoundW(pszsound: ::windows_sys::core::PCWSTR, hmod: super::super::Foundation::HINSTANCE, fdwsound: u32) -> super::super::Foundation::BOOL; + pub fn PlaySoundW(pszsound: ::windows_sys::core::PCWSTR, hmod: super::super::Foundation::HINSTANCE, fdwsound: SND_FLAGS) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Media_Audio\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn acmDriverAddA(phadid: *mut isize, hinstmodule: super::super::Foundation::HINSTANCE, lparam: super::super::Foundation::LPARAM, dwpriority: u32, fdwadd: u32) -> u32; @@ -2967,6 +2967,38 @@ pub const Subunit: PartType = 1i32; #[doc = "*Required features: `\"Win32_Media_Audio\"`*"] pub const SND_ALIAS_START: u32 = 0u32; #[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub type SND_FLAGS = u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_APPLICATION: SND_FLAGS = 128u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_ALIAS: SND_FLAGS = 65536u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_ALIAS_ID: SND_FLAGS = 1114112u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_FILENAME: SND_FLAGS = 131072u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_RESOURCE: SND_FLAGS = 262148u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_ASYNC: SND_FLAGS = 1u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_NODEFAULT: SND_FLAGS = 2u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_LOOP: SND_FLAGS = 8u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_MEMORY: SND_FLAGS = 4u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_NOSTOP: SND_FLAGS = 16u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_NOWAIT: SND_FLAGS = 8192u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_PURGE: SND_FLAGS = 64u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_SENTRY: SND_FLAGS = 524288u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_SYNC: SND_FLAGS = 0u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_SYSTEM: SND_FLAGS = 2097152u32; +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] pub const SND_RING: i32 = 1048576i32; #[doc = "*Required features: `\"Win32_Media_Audio\"`*"] pub const SPATIAL_AUDIO_POSITION: u32 = 200u32; diff --git a/crates/libs/sys/src/Windows/Win32/Media/DirectShow/mod.rs b/crates/libs/sys/src/Windows/Win32/Media/DirectShow/mod.rs index 2713a3c025..ba2596b652 100644 --- a/crates/libs/sys/src/Windows/Win32/Media/DirectShow/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Media/DirectShow/mod.rs @@ -859,6 +859,26 @@ pub const AM_GRAPH_CONFIG_RECONNECT_DIRECTCONNECT: AM_GRAPH_CONFIG_RECONNECT_FLA pub const AM_GRAPH_CONFIG_RECONNECT_CACHE_REMOVED_FILTERS: AM_GRAPH_CONFIG_RECONNECT_FLAGS = 2i32; #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] pub const AM_GRAPH_CONFIG_RECONNECT_USE_ONLY_CACHED_FILTERS: AM_GRAPH_CONFIG_RECONNECT_FLAGS = 4i32; +pub const AM_INTERFACESETID_Standard: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 445081248, data2: 25294, data3: 4559, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; +pub const AM_KSCATEGORY_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1771351300, data2: 37871, data3: 4560, data4: [163, 204, 0, 160, 201, 34, 49, 150] }; +pub const AM_KSCATEGORY_CAPTURE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1709733693, data2: 36694, data3: 4560, data4: [163, 185, 0, 160, 201, 34, 49, 150] }; +pub const AM_KSCATEGORY_CROSSBAR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2811865089, data2: 42093, data3: 4560, data4: [161, 140, 0, 160, 36, 1, 220, 212] }; +pub const AM_KSCATEGORY_DATACOMPRESSOR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 512018688, data2: 32368, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; +pub const AM_KSCATEGORY_RENDER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1709733694, data2: 36694, data3: 4560, data4: [163, 185, 0, 160, 201, 34, 49, 150] }; +pub const AM_KSCATEGORY_SPLITTER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 172118688, data2: 32368, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; +pub const AM_KSCATEGORY_TVAUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2811865090, data2: 42093, data3: 4560, data4: [161, 140, 0, 160, 36, 1, 220, 212] }; +pub const AM_KSCATEGORY_TVTUNER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2811865088, data2: 42093, data3: 4560, data4: [161, 140, 0, 160, 36, 1, 220, 212] }; +pub const AM_KSCATEGORY_VBICODEC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 131782240, data2: 8945, data3: 4561, data4: [169, 244, 0, 192, 79, 187, 222, 143] }; +pub const AM_KSCATEGORY_VBICODEC_MI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2619648375, data2: 2385, data3: 17690, data4: [128, 6, 14, 73, 189, 40, 205, 95] }; +pub const AM_KSCATEGORY_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1771351301, data2: 37871, data3: 4560, data4: [163, 204, 0, 160, 201, 34, 49, 150] }; +pub const AM_KSPROPSETID_AC3: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3215714080, data2: 28191, data3: 4560, data4: [188, 242, 68, 69, 83, 84, 0, 0] }; +pub const AM_KSPROPSETID_CopyProt: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 243927616, data2: 27375, data3: 4560, data4: [158, 208, 0, 160, 36, 202, 25, 179] }; +pub const AM_KSPROPSETID_DVD_RateChange: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 897051401, data2: 38274, data3: 18303, data4: [178, 156, 176, 196, 82, 164, 255, 154] }; +pub const AM_KSPROPSETID_DvdKaraoke: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2923897006, data2: 43633, data3: 17112, data4: [184, 42, 255, 253, 245, 139, 118, 253] }; +pub const AM_KSPROPSETID_DvdSubPic: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2889417824, data2: 17327, data3: 4560, data4: [189, 106, 0, 53, 5, 193, 3, 169] }; +pub const AM_KSPROPSETID_FrameStep: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3358633149, data2: 43783, data3: 18735, data4: [136, 82, 69, 182, 152, 124, 41, 121] }; +pub const AM_KSPROPSETID_MPEG4_MediaType_Attributes: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4285287418, data2: 1961, data3: 19579, data4: [162, 55, 103, 47, 157, 104, 6, 95] }; +pub const AM_KSPROPSETID_TSRateChange: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2768487872, data2: 7453, data3: 4561, data4: [173, 128, 68, 69, 83, 84, 0, 0] }; #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] pub type AM_LINE21_CCLEVEL = i32; #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] @@ -3018,14 +3038,17 @@ pub const CLSID_PTFilter: ::windows_sys::core::GUID = ::windows_sys::core::GUID pub const CLSID_XDSCodecProperties: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3301229699, data2: 73, data3: 20011, data4: [152, 251, 149, 55, 246, 206, 81, 109] }; pub const CLSID_XDSCodecTagProperties: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3301229715, data2: 73, data3: 20011, data4: [152, 251, 149, 55, 246, 206, 81, 109] }; #[repr(C)] -#[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] +#[doc = "*Required features: `\"Win32_Media_DirectShow\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct COLORKEY { pub KeyType: u32, pub PaletteIndex: u32, - pub LowColorValue: u32, - pub HighColorValue: u32, + pub LowColorValue: super::super::Foundation::COLORREF, + pub HighColorValue: super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for COLORKEY {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for COLORKEY { fn clone(&self) -> Self { *self @@ -6255,6 +6278,15 @@ pub const State_Paused: FILTER_STATE = 1i32; pub const State_Running: FILTER_STATE = 2i32; pub const FORMATTYPE_CPFilters_Processed: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1731834735, data2: 7519, data3: 19138, data4: [129, 146, 40, 187, 14, 115, 209, 106] }; pub const FORMATTYPE_ETDTFilter_Tagged: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3301229777, data2: 73, data3: 20011, data4: [152, 251, 149, 55, 246, 206, 81, 109] }; +pub const FORMAT_DVD_LPCMAudio: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272806, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const FORMAT_DolbyAC3: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272804, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const FORMAT_Image: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1764729721, data2: 54248, data3: 18001, data4: [181, 180, 11, 148, 176, 19, 238, 175] }; +pub const FORMAT_JPEGImage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1764729721, data2: 54248, data3: 18001, data4: [181, 180, 11, 148, 176, 19, 238, 175] }; +pub const FORMAT_MPEG2Audio: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272805, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const FORMAT_MPEG2Video: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272803, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const FORMAT_MPEG2_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272803, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const FORMAT_UVCH264Video: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 538426885, data2: 26153, data3: 16968, data4: [170, 237, 126, 26, 71, 188, 155, 156] }; +pub const FORMAT_VIDEOINFO2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4146755232, data2: 60170, data3: 4560, data4: [172, 228, 0, 0, 192, 204, 22, 186] }; pub const FilgraphManager: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804531, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] pub type FormatNotSupportedEvents = i32; @@ -8188,9 +8220,37 @@ pub const MAX_FILTER_NAME: u32 = 128u32; pub const MAX_PIN_NAME: u32 = 128u32; #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] pub const MAX_SIZE_MPEG1_SEQUENCE_INFO: u32 = 140u32; +pub const MEDIASUBTYPE_ATSC_SI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3016178044, data2: 54019, data3: 16717, data4: [179, 60, 78, 210, 201, 210, 151, 51] }; pub const MEDIASUBTYPE_CPFilters_Processed: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1185791272, data2: 28624, data3: 18326, data4: [147, 178, 21, 92, 81, 220, 4, 141] }; +pub const MEDIASUBTYPE_DOLBY_AC3: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272620, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const MEDIASUBTYPE_DTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272627, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const MEDIASUBTYPE_DVB_SI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3923587491, data2: 8733, data3: 19163, data4: [133, 50, 154, 243, 9, 193, 164, 8] }; +pub const MEDIASUBTYPE_DVD_LPCM_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272626, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const MEDIASUBTYPE_DVD_NAVIGATION_DSI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272624, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const MEDIASUBTYPE_DVD_NAVIGATION_PCI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272623, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const MEDIASUBTYPE_DVD_NAVIGATION_PROVIDER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272625, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const MEDIASUBTYPE_DVD_SUBPICTURE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272621, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; pub const MEDIASUBTYPE_ETDTFilter_Tagged: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3301229776, data2: 73, data3: 20011, data4: [152, 251, 149, 55, 246, 206, 81, 109] }; +pub const MEDIASUBTYPE_ISDB_SI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3902460568, data2: 13825, data3: 19206, data4: [170, 236, 157, 222, 237, 204, 91, 208] }; +pub const MEDIASUBTYPE_MPEG2DATA: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3365070171, data2: 9517, data3: 17077, data4: [163, 22, 217, 151, 231, 165, 217, 149] }; +pub const MEDIASUBTYPE_MPEG2_AUDIO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272619, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const MEDIASUBTYPE_MPEG2_PBDA_TRANSPORT_PROCESSED: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2943651284, data2: 3456, data3: 4571, data4: [151, 5, 0, 80, 86, 192, 0, 8] }; +pub const MEDIASUBTYPE_MPEG2_PBDA_TRANSPORT_RAW: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 226159938, data2: 52122, data3: 4571, data4: [151, 5, 0, 80, 86, 192, 0, 8] }; +pub const MEDIASUBTYPE_MPEG2_PROGRAM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272610, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const MEDIASUBTYPE_MPEG2_TRANSPORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272611, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const MEDIASUBTYPE_MPEG2_TRANSPORT_STRIDE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 327854500, data2: 7906, data3: 19547, data4: [152, 142, 25, 171, 253, 188, 138, 17] }; +pub const MEDIASUBTYPE_MPEG2_UDCR_TRANSPORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 415155434, data2: 18038, data3: 17678, data4: [180, 120, 12, 216, 76, 84, 179, 39] }; +pub const MEDIASUBTYPE_MPEG2_VERSIONED_TABLES: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 517572784, data2: 16380, data3: 17699, data4: [135, 37, 52, 123, 238, 193, 168, 160] }; +pub const MEDIASUBTYPE_MPEG2_VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272614, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const MEDIASUBTYPE_MPEG2_WMDRM_TRANSPORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 415155434, data2: 18038, data3: 17678, data4: [180, 120, 12, 216, 76, 84, 179, 39] }; +pub const MEDIASUBTYPE_SDDS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272628, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const MEDIASUBTYPE_TIF_SI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3961728690, data2: 52118, data3: 16785, data4: [178, 38, 14, 161, 41, 243, 130, 80] }; +pub const MEDIATYPE_CONTROL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272609, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const MEDIATYPE_DVD_ENCRYPTED_PACK: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3976958314, data2: 1101, data3: 4561, data4: [170, 120, 0, 192, 79, 195, 29, 96] }; +pub const MEDIATYPE_DVD_NAVIGATION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272622, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; pub const MEDIATYPE_MPEG2_PACK: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 911358739, data2: 36581, data3: 4561, data4: [140, 163, 0, 96, 176, 87, 102, 74] }; +pub const MEDIATYPE_MPEG2_PES: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3765272608, data2: 56134, data3: 4559, data4: [180, 209, 0, 128, 95, 108, 187, 234] }; +pub const MEDIATYPE_MPEG2_SECTIONS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1163859820, data2: 19206, data3: 18382, data4: [154, 239, 140, 174, 247, 61, 247, 181] }; #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] pub type MEDIA_SAMPLE_CONTENT = i32; #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] @@ -8888,6 +8948,7 @@ pub const MSDRI_S_PENDING: ::windows_sys::core::HRESULT = 1i32; pub const MSEventBinder: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1467984408, data2: 17688, data3: 17502, data4: [143, 112, 20, 115, 248, 207, 75, 164] }; pub const MSPID_PrimaryAudio: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2740974955, data2: 40922, data3: 4560, data4: [143, 223, 0, 192, 79, 217, 24, 157] }; pub const MSPID_PrimaryVideo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2740974954, data2: 40922, data3: 4560, data4: [143, 223, 0, 192, 79, 217, 24, 157] }; +pub const MSTapeDeviceGUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2349820658, data2: 3803, data3: 17601, data4: [138, 235, 89, 4, 11, 216, 48, 237] }; pub const MSVidAnalogCaptureToCCA: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2485877001, data2: 41614, data3: 18849, data4: [162, 7, 52, 235, 203, 203, 75, 59] }; pub const MSVidAnalogCaptureToDataServices: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3312463062, data2: 39801, data3: 4563, data4: [182, 84, 0, 192, 79, 121, 73, 142] }; pub const MSVidAnalogCaptureToOverlayMixer: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3783980890, data2: 2223, data3: 4563, data4: [182, 74, 0, 192, 79, 121, 73, 142] }; @@ -11541,7 +11602,7 @@ pub struct VMR9AlphaBitmap { pub rSrc: super::super::Foundation::RECT, pub rDest: VMR9NormalizedRect, pub fAlpha: f32, - pub clrSrcKey: u32, + pub clrSrcKey: super::super::Foundation::COLORREF, pub dwFilterMode: u32, } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct3D9", feature = "Win32_Graphics_Gdi"))] @@ -11901,7 +11962,7 @@ pub struct VMRALPHABITMAP { pub rSrc: super::super::Foundation::RECT, pub rDest: NORMALIZEDRECT, pub fAlpha: f32, - pub clrSrcKey: u32, + pub clrSrcKey: super::super::Foundation::COLORREF, } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_DirectDraw", feature = "Win32_Graphics_Gdi"))] impl ::core::marker::Copy for VMRALPHABITMAP {} diff --git a/crates/libs/sys/src/Windows/Win32/Media/KernelStreaming/mod.rs b/crates/libs/sys/src/Windows/Win32/Media/KernelStreaming/mod.rs index dd2b688af0..661b0407e5 100644 --- a/crates/libs/sys/src/Windows/Win32/Media/KernelStreaming/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Media/KernelStreaming/mod.rs @@ -192,13 +192,6 @@ impl ::core::clone::Clone for CC_HW_FIELD { pub const CC_MAX_HW_DECODE_LINES: u32 = 12u32; pub const CLSID_KsIBasicAudioInterfaceHandler: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3120081982, data2: 3953, data3: 4562, data4: [183, 44, 0, 192, 79, 182, 189, 61] }; pub const CLSID_Proxy: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 399288091, data2: 60631, data3: 4560, data4: [185, 8, 0, 160, 201, 34, 49, 150] }; -pub const CODECAPI_ALLSETTINGS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1784118930, data2: 33761, data3: 16659, data4: [173, 194, 79, 206, 195, 47, 131, 161] }; -pub const CODECAPI_AUDIO_ENCODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3117521470, data2: 63639, data3: 17052, data4: [188, 70, 129, 56, 183, 39, 43, 45] }; -pub const CODECAPI_CHANGELISTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1655777999, data2: 63152, data3: 18393, data4: [148, 86, 150, 242, 44, 78, 11, 157] }; -pub const CODECAPI_CURRENTCHANGELIST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 481382019, data2: 32114, data3: 18007, data4: [131, 253, 71, 162, 197, 185, 209, 61] }; -pub const CODECAPI_SETALLDEFAULTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1818126972, data2: 44280, data3: 20309, data4: [169, 153, 26, 98, 129, 9, 5, 27] }; -pub const CODECAPI_SUPPORTSEVENTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 92385175, data2: 30355, data3: 19901, data4: [157, 202, 63, 158, 189, 101, 133, 161] }; -pub const CODECAPI_VIDEO_ENCODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1897064673, data2: 15619, data3: 18415, data4: [142, 96, 3, 241, 207, 83, 115, 1] }; #[doc = "*Required features: `\"Win32_Media_KernelStreaming\"`*"] pub type CONSTRICTOR_OPTION = i32; #[doc = "*Required features: `\"Win32_Media_KernelStreaming\"`*"] @@ -296,9 +289,6 @@ impl ::core::clone::Clone for DS3DVECTOR_2 { *self } } -pub const ENCAPIPARAM_BITRATE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1238125635, data2: 51843, data3: 19156, data4: [169, 175, 243, 105, 106, 246, 102, 223] }; -pub const ENCAPIPARAM_BITRATE_MODE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3999248988, data2: 50963, data3: 16593, data4: [157, 88, 192, 215, 36, 30, 37, 15] }; -pub const ENCAPIPARAM_PEAK_BITRATE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1883182761, data2: 15688, data3: 17569, data4: [176, 119, 1, 141, 255, 145, 93, 25] }; #[doc = "*Required features: `\"Win32_Media_KernelStreaming\"`*"] pub type EPcxConnectionType = i32; #[doc = "*Required features: `\"Win32_Media_KernelStreaming\"`*"] diff --git a/crates/libs/sys/src/Windows/Win32/Media/MediaFoundation/mod.rs b/crates/libs/sys/src/Windows/Win32/Media/MediaFoundation/mod.rs index afe1ca2d1b..13717cc6f6 100644 --- a/crates/libs/sys/src/Windows/Win32/Media/MediaFoundation/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Media/MediaFoundation/mod.rs @@ -579,6 +579,7 @@ pub const AEC_VAD_FOR_AGC: AEC_VAD_MODE = 2i32; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub const AEC_VAD_FOR_SILENCE_SUPPRESSION: AEC_VAD_MODE = 3i32; pub const ALawCodecWrapper: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 919301644, data2: 30913, data3: 17074, data4: [153, 67, 132, 98, 98, 243, 23, 134] }; +pub const AMPROPSETID_Pin: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2600530177, data2: 5479, data3: 4561, data4: [179, 241, 0, 170, 0, 55, 97, 197] }; #[repr(C)] #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -715,6 +716,10 @@ impl ::core::clone::Clone for AecQualityMetrics_Struct { } } pub const CAC3DecMediaObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 64473090, data2: 60666, data3: 18393, data4: [178, 104, 95, 179, 227, 16, 222, 228] }; +pub const CAPTION_FORMAT_ATSC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1054460721, data2: 64784, data3: 19166, data4: [188, 204, 251, 145, 5, 210, 243, 239] }; +pub const CAPTION_FORMAT_DIRECTV: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3922336999, data2: 37214, data3: 18366, data4: [155, 185, 191, 29, 138, 19, 165, 236] }; +pub const CAPTION_FORMAT_DVB: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 304287156, data2: 65322, data3: 17534, data4: [187, 136, 104, 65, 196, 22, 208, 104] }; +pub const CAPTION_FORMAT_ECHOSTAR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3954287202, data2: 4440, data3: 19353, data4: [174, 128, 146, 172, 119, 105, 82, 196] }; pub const CClusterDetectorDmo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 921182404, data2: 5722, data3: 17697, data4: [134, 60, 97, 158, 17, 96, 212, 212] }; pub const CColorControlDmo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2038454768, data2: 35274, data3: 16736, data4: [179, 37, 174, 180, 142, 254, 79, 154] }; pub const CColorConvertDMO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2552431985, data2: 135, data3: 16900, data4: [176, 32, 50, 130, 83, 142, 87, 211] }; @@ -727,20 +732,103 @@ pub const CDeColorConvMediaObject: ::windows_sys::core::GUID = ::windows_sys::co pub const CFrameInterpDMO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 175963675, data2: 27317, data3: 17204, data4: [158, 216, 63, 151, 203, 55, 218, 161] }; pub const CFrameRateConvertDmo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 32730338, data2: 2311, data3: 19851, data4: [151, 157, 241, 81, 190, 145, 200, 131] }; pub const CInterlaceMediaObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3047726208, data2: 18689, data3: 16507, data4: [154, 188, 144, 217, 166, 68, 187, 70] }; +pub const CLSID_ACMWrapper: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1778962304, data2: 3608, data3: 4559, data4: [162, 77, 0, 32, 175, 215, 151, 103] }; +pub const CLSID_ATSCNetworkPropertyPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3812904214, data2: 23236, data3: 17286, data4: [136, 223, 19, 253, 35, 14, 29, 218] }; +pub const CLSID_ATSCNetworkProvider: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 229453789, data2: 24535, data3: 4563, data4: [143, 80, 0, 192, 79, 121, 113, 226] }; +pub const CLSID_AVICo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3614320672, data2: 5475, data3: 4559, data4: [172, 152, 0, 170, 0, 76, 15, 169] }; +pub const CLSID_AVIDec: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3477722336, data2: 4373, data3: 4558, data4: [176, 58, 0, 32, 175, 11, 167, 112] }; +pub const CLSID_AVIDoc: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3545795248, data2: 1921, data3: 4558, data4: [176, 58, 0, 32, 175, 11, 167, 112] }; +pub const CLSID_AVIDraw: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2827542368, data2: 7824, data3: 4559, data4: [172, 152, 0, 170, 0, 76, 15, 169] }; +pub const CLSID_AVIMIDIRender: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 129389408, data2: 50245, data3: 4558, data4: [175, 222, 0, 170, 0, 108, 20, 244] }; +pub const CLSID_ActiveMovieCategories: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3662560672, data2: 53373, data3: 4560, data4: [189, 80, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_AllocPresenter: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2580893539, data2: 6761, data3: 16814, data4: [170, 77, 201, 118, 235, 63, 7, 19] }; +pub const CLSID_AllocPresenterDDXclMode: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1145351326, data2: 9262, data3: 18203, data4: [163, 199, 69, 220, 212, 99, 82, 188] }; +pub const CLSID_AnalogVideoDecoderPropertyPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1912169574, data2: 30963, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; +pub const CLSID_AsyncReader: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804533, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const CLSID_AudioCompressorCategory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 869902177, data2: 37064, data3: 4560, data4: [189, 67, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_AudioInputDeviceCategory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 869902178, data2: 37064, data3: 4560, data4: [189, 67, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_AudioInputMixerProperties: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 749259346, data2: 15423, data3: 4562, data4: [183, 61, 0, 192, 79, 182, 189, 61] }; +pub const CLSID_AudioProperties: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 89694127, data2: 50006, data3: 4558, data4: [191, 1, 0, 170, 0, 85, 89, 90] }; +pub const CLSID_AudioRecord: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3808831954, data2: 10213, data3: 4558, data4: [135, 93, 0, 96, 140, 183, 128, 102] }; +pub const CLSID_AudioRender: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3808831953, data2: 10213, data3: 4558, data4: [135, 93, 0, 96, 140, 183, 128, 102] }; +pub const CLSID_AudioRendererAdvancedProperties: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 938027666, data2: 55722, data3: 4562, data4: [191, 132, 142, 242, 177, 85, 90, 237] }; +pub const CLSID_AudioRendererCategory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3773913313, data2: 51972, data3: 4560, data4: [189, 78, 0, 160, 201, 17, 206, 134] }; pub const CLSID_AudioResamplerMediaObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4098340510, data2: 6276, data3: 19070, data4: [128, 85, 52, 111, 116, 214, 237, 179] }; +pub const CLSID_AviDest: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3796961648, data2: 61751, data3: 4558, data4: [139, 103, 0, 170, 0, 163, 241, 166] }; +pub const CLSID_AviMuxProptyPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3326588352, data2: 5500, data3: 4560, data4: [189, 35, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_AviMuxProptyPage1: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 177924368, data2: 34240, data3: 4560, data4: [189, 66, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_AviReader: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 458509345, data2: 64779, data3: 4558, data4: [140, 99, 0, 170, 0, 68, 181, 30] }; +pub const CLSID_AviSplitter: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 458509344, data2: 64779, data3: 4558, data4: [140, 99, 0, 170, 0, 68, 181, 30] }; +pub const CLSID_CAcmCoClassManager: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 869902177, data2: 37064, data3: 4560, data4: [189, 67, 0, 160, 201, 17, 206, 134] }; pub const CLSID_CAsfTocParser: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2608316658, data2: 34613, data3: 18117, data4: [185, 15, 95, 11, 48, 62, 246, 171] }; pub const CLSID_CAviTocParser: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 987555276, data2: 5064, data3: 17779, data4: [179, 40, 237, 67, 142, 182, 148, 249] }; +pub const CLSID_CCAFilter: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1023911225, data2: 13770, data3: 17532, data4: [155, 5, 141, 133, 206, 146, 79, 158] }; pub const CLSID_CClusterDetectorEx: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1194673298, data2: 33406, data3: 19338, data4: [179, 24, 200, 14, 186, 19, 129, 240] }; +pub const CLSID_CDeviceMoniker: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1125504055, data2: 23436, data3: 4560, data4: [189, 59, 0, 160, 201, 17, 206, 134] }; pub const CLSID_CFileClient: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3217871253, data2: 4676, data3: 18496, data4: [171, 68, 72, 9, 117, 196, 255, 228] }; pub const CLSID_CFileIo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 295252373, data2: 4676, data3: 18496, data4: [171, 68, 72, 9, 117, 196, 255, 228] }; +pub const CLSID_CIcmCoClassManager: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 869902176, data2: 37064, data3: 4560, data4: [189, 67, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_CMidiOutClassManager: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1325278290, data2: 5770, data3: 4561, data4: [188, 118, 0, 192, 79, 185, 69, 59] }; +pub const CLSID_CMpegAudioCodec: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1243776736, data2: 31727, data3: 4558, data4: [155, 217, 0, 0, 226, 2, 89, 156] }; +pub const CLSID_CMpegVideoCodec: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4273276736, data2: 31727, data3: 4558, data4: [155, 217, 0, 0, 226, 2, 89, 156] }; +pub const CLSID_CQzFilterClassManager: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 137913329, data2: 28894, data3: 4560, data4: [189, 64, 0, 160, 201, 17, 206, 134] }; pub const CLSID_CToc: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1340228757, data2: 10446, data3: 18720, data4: [164, 196, 229, 86, 225, 240, 223, 42] }; pub const CLSID_CTocCollection: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1347954989, data2: 41540, data3: 18496, data4: [171, 68, 72, 9, 117, 196, 255, 228] }; pub const CLSID_CTocEntry: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4063190533, data2: 22620, data3: 19951, data4: [133, 35, 101, 85, 207, 188, 12, 179] }; pub const CLSID_CTocEntryList: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 982305980, data2: 3837, data3: 17315, data4: [184, 56, 243, 138, 85, 43, 162, 55] }; pub const CLSID_CTocParser: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1235136234, data2: 10039, data3: 18505, data4: [139, 182, 71, 241, 7, 234, 243, 88] }; +pub const CLSID_CVidCapClassManager: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2248913680, data2: 23809, data3: 4560, data4: [189, 59, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_CWaveOutClassManager: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3773913313, data2: 51972, data3: 4560, data4: [189, 78, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_CWaveinClassManager: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 869902178, data2: 37064, data3: 4560, data4: [189, 67, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_CameraControlPropertyPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1912169573, data2: 30963, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; +pub const CLSID_CaptionsFilter: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 796845238, data2: 28661, data3: 20148, data4: [178, 74, 43, 252, 65, 17, 113, 113] }; +pub const CLSID_CaptureGraphBuilder: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3213342432, data2: 35879, data3: 4560, data4: [179, 240, 0, 170, 0, 55, 97, 197] }; +pub const CLSID_CaptureGraphBuilder2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3213342433, data2: 35879, data3: 4560, data4: [179, 240, 0, 170, 0, 55, 97, 197] }; +pub const CLSID_CaptureProperties: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 458509346, data2: 64779, data3: 4558, data4: [140, 99, 0, 170, 0, 68, 181, 31] }; +pub const CLSID_Colour: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 373547392, data2: 37109, data3: 4558, data4: [151, 213, 0, 170, 0, 85, 89, 90] }; pub const CLSID_CreateMediaExtensionObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4016416077, data2: 1928, data3: 17848, data4: [139, 20, 188, 15, 106, 107, 81, 55] }; +pub const CLSID_CrossbarFilterPropertyPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1912169569, data2: 30963, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; +pub const CLSID_DShowTVEFilter: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 89129600, data2: 64165, data3: 19961, data4: [130, 70, 191, 194, 58, 197, 206, 168] }; +pub const CLSID_DSoundRender: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2033674272, data2: 2000, data3: 4559, data4: [162, 77, 0, 32, 175, 215, 151, 103] }; +pub const CLSID_DVBCNetworkProvider: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3691778023, data2: 1157, data3: 16998, data4: [185, 63, 104, 251, 248, 14, 216, 52] }; +pub const CLSID_DVBSNetworkProvider: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4199233370, data2: 17844, data3: 19781, data4: [132, 64, 38, 57, 87, 177, 22, 35] }; +pub const CLSID_DVBTNetworkProvider: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 560751327, data2: 28031, data3: 20122, data4: [133, 113, 5, 241, 78, 219, 118, 106] }; +pub const CLSID_DVDHWDecodersCategory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 656518688, data2: 32368, data3: 4560, data4: [165, 214, 40, 219, 4, 193, 0, 0] }; +pub const CLSID_DVDNavigator: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2609661472, data2: 11290, data3: 4560, data4: [132, 147, 0, 160, 36, 56, 173, 72] }; +pub const CLSID_DVDState: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4184065487, data2: 42585, data3: 19091, data4: [150, 56, 202, 243, 205, 39, 125, 19] }; +pub const CLSID_DVDecPropertiesPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 269587392, data2: 3070, data3: 4560, data4: [175, 145, 0, 170, 0, 182, 122, 66] }; +pub const CLSID_DVEncPropertiesPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1095823440, data2: 47983, data3: 4560, data4: [175, 185, 0, 170, 0, 182, 122, 66] }; +pub const CLSID_DVMux: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 312311360, data2: 49421, data3: 4560, data4: [175, 185, 0, 170, 0, 182, 122, 66] }; +pub const CLSID_DVMuxPropertyPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1303937248, data2: 49421, data3: 4560, data4: [175, 185, 0, 170, 0, 182, 122, 66] }; +pub const CLSID_DVSplitter: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1320359536, data2: 40902, data3: 4559, data4: [175, 110, 0, 170, 0, 182, 122, 66] }; +pub const CLSID_DVVideoCodec: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2981592064, data2: 50148, data3: 4559, data4: [175, 121, 0, 170, 0, 182, 122, 66] }; +pub const CLSID_DVVideoEnc: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 329922128, data2: 47983, data3: 4560, data4: [175, 185, 0, 170, 0, 182, 122, 66] }; +pub const CLSID_DeviceControlCategory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3430677318, data2: 61813, data3: 4561, data4: [163, 146, 0, 224, 41, 31, 57, 89] }; +pub const CLSID_DirectDrawProperties: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2488093696, data2: 56658, data3: 4558, data4: [191, 14, 0, 170, 0, 85, 89, 90] }; +pub const CLSID_DirectShowPluginControl: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2255537974, data2: 62996, data3: 17019, data4: [138, 218, 187, 173, 197, 135, 25, 75] }; +pub const CLSID_Dither: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 497059072, data2: 40668, data3: 4559, data4: [188, 16, 0, 170, 0, 172, 116, 246] }; +pub const CLSID_DtvCcFilter: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4211436448, data2: 9474, data3: 17849, data4: [142, 134, 43, 64, 222, 132, 173, 41] }; +pub const CLSID_DvdGraphBuilder: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4240528055, data2: 62322, data3: 4560, data4: [142, 0, 0, 192, 79, 215, 192, 139] }; +pub const CLSID_EVRPlaybackPipelineOptimizer: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1644663140, data2: 9019, data3: 16888, data4: [168, 15, 240, 23, 5, 245, 20, 168] }; +pub const CLSID_EVRTearlessWindowPresenter9: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2695341435, data2: 22962, data3: 18713, data4: [166, 148, 173, 208, 165, 38, 195, 115] }; +pub const CLSID_EnhancedVideoRenderer: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4195382380, data2: 39779, data3: 19308, data4: [188, 73, 252, 48, 14, 165, 242, 86] }; +pub const CLSID_FGControl: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804532, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const CLSID_FileSource: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1880564448, data2: 35555, data3: 4558, data4: [168, 92, 0, 170, 0, 47, 234, 181] }; +pub const CLSID_FileWriter: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2241258992, data2: 3493, data3: 4560, data4: [189, 33, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_FilterGraph: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804531, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const CLSID_FilterGraphNoThread: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804536, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const CLSID_FilterGraphPrivateThread: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2750200897, data2: 22554, data3: 17526, data4: [182, 147, 166, 51, 64, 70, 45, 139] }; +pub const CLSID_FilterMapper: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804530, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const CLSID_FilterMapper2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3450085888, data2: 48520, data3: 4560, data4: [189, 78, 0, 160, 201, 17, 206, 134] }; pub const CLSID_FrameServerNetworkCameraSource: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2048998055, data2: 34415, data3: 16714, data4: [140, 26, 39, 92, 114, 131, 163, 149] }; pub const CLSID_HttpSchemePlugin: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1154171947, data2: 40361, data3: 18911, data4: [179, 253, 2, 55, 119, 177, 110, 80] }; +pub const CLSID_ICodecAPIProxy: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2146474362, data2: 6553, data3: 17030, data4: [167, 60, 98, 43, 136, 20, 231, 235] }; +pub const CLSID_IVideoEncoderCodecAPIProxy: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2958928857, data2: 22245, data3: 20444, data4: [175, 164, 138, 71, 233, 31, 28, 156] }; +pub const CLSID_IVideoEncoderProxy: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3023851244, data2: 35890, data3: 18321, data4: [145, 2, 80, 138, 218, 94, 232, 231] }; +pub const CLSID_InfTee: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4164454976, data2: 54715, data3: 4560, data4: [190, 90, 0, 128, 199, 6, 86, 142] }; +pub const CLSID_LegacyAmFilterCategory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 137913329, data2: 28894, data3: 4560, data4: [189, 64, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_Line21Decoder: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1854753312, data2: 12556, data3: 4560, data4: [183, 154, 0, 170, 0, 55, 103, 167] }; +pub const CLSID_Line21Decoder2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3827328050, data2: 417, data3: 19438, data4: [179, 225, 55, 2, 200, 237, 197, 116] }; pub const CLSID_MFByteStreamProxyClassFactory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1997442679, data2: 18710, data3: 17436, data4: [169, 167, 179, 66, 208, 238, 188, 113] }; pub const CLSID_MFCaptureEngine: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4023269587, data2: 35092, data3: 18036, data4: [167, 223, 174, 27, 61, 101, 75, 138] }; pub const CLSID_MFCaptureEngineClassFactory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4023269587, data2: 35092, data3: 18036, data4: [167, 223, 174, 27, 61, 101, 75, 138] }; @@ -751,9 +839,19 @@ pub const CLSID_MFReadWriteClassFactory: ::windows_sys::core::GUID = ::windows_s pub const CLSID_MFSinkWriter: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2747005719, data2: 33395, data3: 20050, data4: [158, 14, 151, 57, 220, 136, 121, 144] }; pub const CLSID_MFSourceReader: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 393679676, data2: 2177, data3: 16667, data4: [165, 119, 173, 84, 95, 7, 20, 196] }; pub const CLSID_MFSourceResolver: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2431301135, data2: 58426, data3: 16776, data4: [188, 196, 228, 127, 223, 4, 134, 140] }; +pub const CLSID_MFVideoMixer9: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3832864858, data2: 43877, data3: 20330, data4: [130, 124, 33, 139, 27, 170, 243, 31] }; +pub const CLSID_MFVideoPresenter9: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2554680673, data2: 20790, data3: 19752, data4: [171, 8, 76, 238, 64, 234, 39, 129] }; +pub const CLSID_MJPGEnc: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3087708320, data2: 29718, data3: 4562, data4: [158, 235, 0, 96, 8, 3, 158, 55] }; +pub const CLSID_MMSPLITTER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 988310304, data2: 31720, data3: 4561, data4: [171, 230, 0, 160, 201, 5, 243, 117] }; +pub const CLSID_MOVReader: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1146636288, data2: 63726, data3: 4558, data4: [178, 212, 0, 221, 1, 16, 27, 133] }; pub const CLSID_MP3DecMediaObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3152980033, data2: 2659, data3: 20306, data4: [167, 171, 169, 179, 168, 78, 211, 138] }; +pub const CLSID_MPEG1Doc: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3837514080, data2: 17001, data3: 4558, data4: [131, 141, 0, 170, 0, 85, 89, 90] }; +pub const CLSID_MPEG1PacketPlayer: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 650271040, data2: 19625, data3: 4558, data4: [168, 40, 0, 170, 0, 47, 234, 181] }; +pub const CLSID_MPEG1Splitter: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 862221776, data2: 37930, data3: 4558, data4: [168, 112, 0, 170, 0, 47, 234, 181] }; pub const CLSID_MPEG2ByteStreamPlugin: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1082596441, data2: 43840, data3: 18207, data4: [141, 195, 31, 37, 157, 134, 36, 121] }; pub const CLSID_MPEG2DLNASink: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4200589253, data2: 27165, data3: 19217, data4: [180, 31, 249, 89, 214, 199, 101, 0] }; +pub const CLSID_MPEG2Demultiplexer: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2947990144, data2: 11329, data3: 4563, data4: [138, 96, 0, 0, 248, 30, 14, 74] }; +pub const CLSID_MPEG2Demultiplexer_NoClock: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1753035623, data2: 13892, data3: 18042, data4: [173, 254, 108, 215, 168, 92, 74, 44] }; pub const CLSID_MSAACDecMFT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 852592295, data2: 8591, data3: 19573, data4: [136, 118, 221, 119, 39, 58, 137, 153] }; pub const CLSID_MSDDPlusDecMFT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 394005246, data2: 36875, data3: 18644, data4: [158, 76, 87, 173, 210, 80, 179, 212] }; pub const CLSID_MSH264DecoderMFT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1657699954, data2: 19569, data3: 19744, data4: [177, 93, 69, 40, 49, 168, 125, 157] }; @@ -763,13 +861,70 @@ pub const CLSID_MSMPEGAudDecMFT: ::windows_sys::core::GUID = ::windows_sys::core pub const CLSID_MSMPEGDecoderMFT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 762355282, data2: 4671, data3: 18869, data4: [156, 188, 154, 245, 205, 226, 143, 185] }; pub const CLSID_MSOpusDecoder: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1675721744, data2: 11587, data3: 19522, data4: [143, 227, 141, 139, 99, 228, 106, 106] }; pub const CLSID_MSVPxDecoder: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3819631944, data2: 51620, data3: 19566, data4: [35, 77, 90, 218, 55, 75, 0, 0] }; +pub const CLSID_MediaEncoderCategory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2099439904, data2: 23721, data3: 18311, data4: [140, 43, 166, 119, 155, 209, 23, 129] }; +pub const CLSID_MediaMultiplexerCategory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 594318681, data2: 44494, data3: 18230, data4: [191, 114, 186, 179, 78, 57, 33, 150] }; +pub const CLSID_MediaPropertyBag: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3451751680, data2: 49555, data3: 4560, data4: [189, 78, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_MemoryAllocator: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 509942976, data2: 45465, data3: 4560, data4: [130, 18, 0, 192, 79, 195, 44, 69] }; +pub const CLSID_MidiRendererCategory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1325278290, data2: 5770, data3: 4561, data4: [188, 118, 0, 192, 79, 185, 69, 59] }; +pub const CLSID_MjpegDec: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 806377168, data2: 28159, data3: 4562, data4: [158, 235, 0, 96, 8, 3, 158, 55] }; +pub const CLSID_ModexRenderer: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 118912613, data2: 20497, data3: 4559, data4: [191, 51, 0, 170, 0, 85, 89, 90] }; +pub const CLSID_Mpeg2VideoStreamAnalyzer: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1828378465, data2: 29533, data3: 19109, data4: [138, 252, 175, 145, 167, 214, 30, 186] }; pub const CLSID_NetSchemePlugin: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3925142443, data2: 55675, data3: 17982, data4: [162, 177, 197, 78, 227, 249, 65, 77] }; +pub const CLSID_NetworkProvider: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3002312316, data2: 10714, data3: 19576, data4: [136, 49, 9, 30, 213, 9, 164, 117] }; +pub const CLSID_OverlayMixer: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3448193953, data2: 14134, data3: 4560, data4: [158, 105, 0, 192, 79, 215, 193, 91] }; +pub const CLSID_PerformanceProperties: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1506699392, data2: 44280, data3: 4559, data4: [181, 110, 0, 128, 199, 196, 182, 138] }; +pub const CLSID_PersistMonikerPID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804535, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; pub const CLSID_PlayToSourceClassFactory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3658961818, data2: 15811, data3: 17089, data4: [167, 73, 161, 131, 181, 31, 8, 94] }; +pub const CLSID_ProtoFilterGraph: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804528, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const CLSID_QTDec: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4261320321, data2: 29859, data3: 4560, data4: [175, 167, 0, 170, 0, 182, 122, 66] }; +pub const CLSID_QualityProperties: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1099627376, data2: 63672, data3: 4558, data4: [170, 198, 0, 32, 175, 11, 153, 163] }; +pub const CLSID_QuickTimeParser: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3575371168, data2: 30024, data3: 4559, data4: [165, 32, 0, 128, 199, 126, 245, 138] }; +pub const CLSID_SBE2File: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2476774615, data2: 20968, data3: 18523, data4: [144, 74, 141, 107, 151, 220, 107, 57] }; +pub const CLSID_SBE2FileScan: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1044742199, data2: 3238, data3: 16810, data4: [165, 148, 42, 166, 192, 45, 112, 155] }; +pub const CLSID_SBE2MediaTypeProfile: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 522626562, data2: 11100, data3: 19299, data4: [184, 232, 158, 165, 193, 167, 220, 46] }; +pub const CLSID_SBE2Sink: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3796141320, data2: 38362, data3: 16901, data4: [154, 39, 126, 200, 30, 114, 59, 26] }; +pub const CLSID_SeekingPassThru: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 101381996, data2: 26845, data3: 4560, data4: [143, 193, 0, 192, 79, 217, 24, 157] }; +pub const CLSID_SmartTee: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3428377216, data2: 35489, data3: 4561, data4: [179, 241, 0, 170, 0, 55, 97, 197] }; +pub const CLSID_StreamBufferComposeRecording: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3598894266, data2: 43274, data3: 17150, data4: [185, 225, 3, 16, 152, 73, 196, 35] }; +pub const CLSID_StreamBufferConfig: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4203374770, data2: 51300, data3: 19362, data4: [173, 83, 211, 135, 106, 135, 73, 75] }; +pub const CLSID_StreamBufferPropertyHandler: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3816453112, data2: 64257, data3: 17372, data4: [145, 78, 170, 238, 118, 9, 90, 185] }; +pub const CLSID_StreamBufferRecordingAttributes: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3433718700, data2: 4183, data3: 18296, data4: [174, 146, 18, 6, 171, 154, 206, 230] }; +pub const CLSID_StreamBufferSink: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 766802661, data2: 53049, data3: 17346, data4: [180, 214, 12, 216, 217, 9, 70, 244] }; +pub const CLSID_StreamBufferSource: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3388341762, data2: 63569, data3: 20149, data4: [153, 238, 173, 96, 42, 241, 230, 25] }; +pub const CLSID_StreamBufferThumbnailHandler: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1899466990, data2: 24289, data3: 17850, data4: [128, 112, 161, 51, 125, 39, 98, 250] }; +pub const CLSID_SubtitlesFilter: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2669858794, data2: 52743, data3: 16811, data4: [139, 160, 199, 54, 74, 249, 10, 249] }; +pub const CLSID_SystemClock: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804529, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const CLSID_SystemDeviceEnum: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1656642832, data2: 24811, data3: 4560, data4: [189, 59, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_TVAudioFilterPropertyPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1912169571, data2: 30963, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; +pub const CLSID_TVEFilterCCProperties: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 89129602, data2: 64165, data3: 19961, data4: [130, 70, 191, 194, 58, 197, 206, 168] }; +pub const CLSID_TVEFilterStatsProperties: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 89129603, data2: 64165, data3: 19961, data4: [130, 70, 191, 194, 58, 197, 206, 168] }; +pub const CLSID_TVEFilterTuneProperties: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 89129601, data2: 64165, data3: 19961, data4: [130, 70, 191, 194, 58, 197, 206, 168] }; +pub const CLSID_TVTunerFilterPropertyPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 644804161, data2: 27747, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const CLSID_TextRender: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3808831955, data2: 10213, data3: 4558, data4: [135, 93, 0, 96, 140, 183, 128, 102] }; +pub const CLSID_TransmitCategory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3430677313, data2: 61813, data3: 4561, data4: [163, 146, 0, 224, 41, 31, 57, 89] }; +pub const CLSID_URLReader: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804534, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; pub const CLSID_UrlmonSchemePlugin: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2663691513, data2: 12329, data3: 17837, data4: [148, 123, 52, 77, 226, 162, 73, 226] }; +pub const CLSID_VBISurfaces: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2169214976, data2: 7304, data3: 4561, data4: [186, 217, 0, 96, 151, 68, 17, 26] }; +pub const CLSID_VPObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3458803809, data2: 64648, data3: 4560, data4: [158, 105, 0, 192, 79, 215, 193, 91] }; +pub const CLSID_VPVBIObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2169214977, data2: 7304, data3: 4561, data4: [186, 217, 0, 96, 151, 68, 17, 26] }; +pub const CLSID_VfwCapture: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 458509346, data2: 64779, data3: 4558, data4: [140, 99, 0, 170, 0, 68, 181, 30] }; +pub const CLSID_VideoCompressorCategory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 869902176, data2: 37064, data3: 4560, data4: [189, 67, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_VideoInputDeviceCategory: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2248913680, data2: 23809, data3: 4560, data4: [189, 59, 0, 160, 201, 17, 206, 134] }; +pub const CLSID_VideoMixingRenderer: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3095128955, data2: 36137, data3: 16959, data4: [174, 77, 101, 130, 193, 1, 117, 172] }; +pub const CLSID_VideoMixingRenderer9: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1370794995, data2: 29839, data3: 20027, data4: [162, 118, 200, 40, 51, 14, 146, 106] }; +pub const CLSID_VideoPortManager: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1864804045, data2: 38523, data3: 18429, data4: [135, 74, 122, 237, 44, 157, 37, 162] }; +pub const CLSID_VideoProcAmpPropertyPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1912169572, data2: 30963, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; pub const CLSID_VideoProcessorMFT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2289384230, data2: 23332, data3: 18877, data4: [178, 231, 12, 68, 92, 120, 201, 130] }; +pub const CLSID_VideoRenderer: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1893794480, data2: 21846, data3: 4558, data4: [151, 192, 0, 170, 0, 85, 89, 90] }; +pub const CLSID_VideoRendererDefault: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1807863802, data2: 36801, data3: 16993, data4: [172, 34, 207, 180, 204, 56, 219, 80] }; +pub const CLSID_VideoStreamConfigPropertyPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1912169575, data2: 30963, data3: 4560, data4: [161, 140, 0, 160, 201, 17, 137, 86] }; pub const CLSID_WMADecMediaObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 787172063, data2: 17784, data3: 19728, data4: [188, 167, 187, 149, 95, 86, 50, 10] }; +pub const CLSID_WMAsfReader: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 410280864, data2: 23479, data3: 4563, data4: [172, 190, 0, 128, 199, 94, 36, 110] }; +pub const CLSID_WMAsfWriter: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2082677262, data2: 21947, data3: 4563, data4: [139, 22, 0, 192, 79, 182, 189, 61] }; pub const CLSID_WMDRMSystemID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2303245090, data2: 4541, data3: 18326, data4: [147, 227, 151, 77, 27, 87, 86, 120] }; pub const CLSID_WMVDecoderMFT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2194887647, data2: 37053, data3: 17282, data4: [139, 194, 63, 97, 146, 183, 110, 52] }; +pub const CLSID_WSTDecoder: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1891370720, data2: 22118, data3: 4563, data4: [161, 132, 0, 16, 90, 239, 159, 51] }; +pub const CLSID_WstDecoderPropertyPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 81952640, data2: 37348, data3: 4563, data4: [161, 132, 0, 16, 90, 239, 159, 51] }; pub const CMP3DecMediaObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3152980033, data2: 2659, data3: 20306, data4: [167, 171, 169, 179, 168, 78, 211, 138] }; pub const CMPEG2AudDecoderDS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3790708920, data2: 48878, data3: 18701, data4: [186, 124, 6, 108, 64, 181, 226, 185] }; pub const CMPEG2AudioEncoderMFT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1185209692, data2: 29688, data3: 17156, data4: [148, 223, 48, 143, 118, 9, 116, 244] }; @@ -809,6 +964,8 @@ pub const CMpeg4sDecMediaObject: ::windows_sys::core::GUID = ::windows_sys::core pub const CMpeg4sEncMediaObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1858447294, data2: 55326, data3: 20382, data4: [173, 163, 205, 27, 242, 98, 182, 216] }; pub const CNokiaAACCCDecMediaObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3938417263, data2: 52410, data3: 19808, data4: [134, 32, 177, 82, 204, 151, 114, 99] }; pub const CNokiaAACDecMediaObject: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1018346980, data2: 20009, data3: 19524, data4: [167, 62, 45, 124, 44, 70, 214, 236] }; +pub const CODECAPI_ALLSETTINGS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1784118930, data2: 33761, data3: 16659, data4: [173, 194, 79, 206, 195, 47, 131, 161] }; +pub const CODECAPI_AUDIO_ENCODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3117521470, data2: 63639, data3: 17052, data4: [188, 70, 129, 56, 183, 39, 43, 45] }; pub const CODECAPI_AVAudioChannelConfig: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 402169011, data2: 50061, data3: 17256, data4: [158, 222, 99, 185, 77, 23, 127, 159] }; pub const CODECAPI_AVAudioChannelCount: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 490046404, data2: 5507, data3: 18254, data4: [183, 26, 94, 228, 99, 193, 152, 228] }; pub const CODECAPI_AVAudioSampleRate: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2535270179, data2: 6859, data3: 17127, data4: [133, 92, 82, 10, 75, 112, 165, 242] }; @@ -829,6 +986,7 @@ pub const CODECAPI_AVDecDDOperationalMode: ::windows_sys::core::GUID = ::windows pub const CODECAPI_AVDecDDStereoDownMixMode: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1826886188, data2: 16105, data3: 16770, data4: [180, 174, 193, 15, 192, 136, 100, 157] }; pub const CODECAPI_AVDecDisableVideoPostProcessing: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4168389011, data2: 26234, data3: 20268, data4: [169, 232, 93, 74, 249, 36, 240, 143] }; pub const CODECAPI_AVDecHEAACDynamicRangeControl: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 679250622, data2: 27044, data3: 19769, data4: [128, 128, 211, 217, 113, 33, 120, 160] }; +pub const CODECAPI_AVDecMmcssClass: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3769452584, data2: 57190, data3: 18579, data4: [159, 51, 120, 138, 164, 236, 64, 130] }; pub const CODECAPI_AVDecNumWorkerThreads: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2506212328, data2: 60062, data3: 17461, data4: [155, 30, 169, 62, 105, 24, 148, 216] }; pub const CODECAPI_AVDecSoftwareDynamicFormatChange: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2251173642, data2: 20603, data3: 18431, data4: [175, 71, 1, 226, 98, 66, 152, 183] }; pub const CODECAPI_AVDecVideoAcceleration_H264: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4158360111, data2: 20296, data3: 20200, data4: [174, 49, 139, 110, 190, 85, 138, 226] }; @@ -1073,6 +1231,8 @@ pub const CODECAPI_AVLowLatencyMode: ::windows_sys::core::GUID = ::windows_sys:: pub const CODECAPI_AVPriorityControl: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1421491656, data2: 48606, data3: 17193, data4: [177, 135, 32, 24, 188, 92, 43, 161] }; pub const CODECAPI_AVRealtimeControl: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1866729010, data2: 50349, data3: 19447, data4: [158, 82, 69, 105, 66, 180, 84, 176] }; pub const CODECAPI_AVScenarioInfo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2995416676, data2: 16377, data3: 17514, data4: [138, 75, 13, 122, 83, 65, 50, 54] }; +pub const CODECAPI_CHANGELISTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1655777999, data2: 63152, data3: 18393, data4: [148, 86, 150, 242, 44, 78, 11, 157] }; +pub const CODECAPI_CURRENTCHANGELIST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 481382019, data2: 32114, data3: 18007, data4: [131, 253, 71, 162, 197, 185, 209, 61] }; pub const CODECAPI_GUID_AVDecAudioInputAAC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2548004904, data2: 47434, data3: 18402, data4: [164, 188, 81, 25, 77, 178, 42, 77] }; pub const CODECAPI_GUID_AVDecAudioInputDTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1611382986, data2: 27167, data3: 20113, data4: [178, 65, 27, 190, 177, 203, 25, 224] }; pub const CODECAPI_GUID_AVDecAudioInputDolby: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2386700448, data2: 61440, data3: 19979, data4: [143, 84, 171, 141, 36, 173, 97, 162] }; @@ -1119,7 +1279,10 @@ pub const CODECAPI_GUID_AVEncWMAVoice: ::windows_sys::core::GUID = ::windows_sys pub const CODECAPI_GUID_AVEncWMV: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1309667227, data2: 7491, data3: 16829, data4: [184, 189, 77, 123, 247, 69, 122, 42] }; pub const CODECAPI_GUID_AVEndMPEG4Video: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3711414570, data2: 38147, data3: 20363, data4: [184, 208, 50, 74, 0, 192, 161, 207] }; pub const CODECAPI_GetOPMContext: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 788753413, data2: 19476, data3: 18057, data4: [136, 57, 41, 76, 109, 115, 224, 83] }; +pub const CODECAPI_SETALLDEFAULTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1818126972, data2: 44280, data3: 20309, data4: [169, 153, 26, 98, 129, 9, 5, 27] }; +pub const CODECAPI_SUPPORTSEVENTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 92385175, data2: 30355, data3: 19901, data4: [157, 202, 63, 158, 189, 101, 133, 161] }; pub const CODECAPI_SetHDCPManagerContext: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1831673800, data2: 15817, data3: 18411, data4: [161, 162, 71, 28, 128, 205, 96, 208] }; +pub const CODECAPI_VIDEO_ENCODER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1897064673, data2: 15619, data3: 18415, data4: [142, 96, 3, 241, 207, 83, 115, 1] }; pub const CODECAPI_VideoEncoderDisplayContentType: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2042170151, data2: 62641, data3: 17116, data4: [157, 215, 205, 175, 129, 53, 196, 0] }; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub const COPP_ProtectionType_ACP: i32 = 2i32; @@ -4320,6 +4483,15 @@ impl ::core::clone::Clone for DIRTYRECT_INFO { *self } } +pub const DSATTRIB_CAPTURE_STREAMTIME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 203052564, data2: 12493, data3: 20288, data4: [188, 191, 208, 62, 82, 48, 98, 7] }; +pub const DSATTRIB_CC_CONTAINER_INFO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3890237691, data2: 56669, data3: 16605, data4: [153, 21, 53, 220, 184, 27, 220, 138] }; +pub const DSATTRIB_DSHOW_STREAM_DESC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1605723963, data2: 2602, data3: 17765, data4: [130, 123, 104, 83, 253, 117, 230, 17] }; +pub const DSATTRIB_OptionalVideoAttributes: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1516177610, data2: 21954, data3: 16435, data4: [146, 171, 85, 219, 143, 120, 18, 38] }; +pub const DSATTRIB_PBDATAG_ATTRIBUTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3769984633, data2: 4793, data3: 17356, data4: [183, 223, 87, 140, 170, 90, 123, 99] }; +pub const DSATTRIB_PicSampleSeq: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 794537474, data2: 31631, data3: 20320, data4: [130, 214, 228, 234, 47, 31, 76, 153] }; +pub const DSATTRIB_SAMPLE_LIVE_STREAM_TIME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2301415697, data2: 29427, data3: 16669, data4: [139, 145, 169, 233, 18, 58, 194, 154] }; +pub const DSATTRIB_TRANSPORT_PROPERTIES: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3055744530, data2: 18349, data3: 18033, data4: [173, 108, 5, 169, 142, 101, 222, 58] }; +pub const DSATTRIB_UDCRTag: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3950524106, data2: 5375, data3: 18713, data4: [188, 231, 58, 241, 35, 25, 229, 12] }; #[repr(C)] #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub struct DXVA2_AES_CTR_IV { @@ -6623,6 +6795,15 @@ pub const eAllocationTypeRT: EAllocationType = 1i32; pub const eAllocationTypePageable: EAllocationType = 2i32; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub const eAllocationTypeIgnore: EAllocationType = 3i32; +pub const ENCAPIPARAM_BITRATE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1238125635, data2: 51843, data3: 19156, data4: [169, 175, 243, 105, 106, 246, 102, 223] }; +pub const ENCAPIPARAM_BITRATE_MODE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3999248988, data2: 50963, data3: 16593, data4: [157, 88, 192, 215, 36, 30, 37, 15] }; +pub const ENCAPIPARAM_PEAK_BITRATE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1883182761, data2: 15688, data3: 17569, data4: [176, 119, 1, 141, 255, 145, 93, 25] }; +pub const ENCAPIPARAM_SAP_MODE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 201421275, data2: 65276, data3: 19191, data4: [153, 145, 165, 101, 124, 25, 28, 209] }; +pub const EVRConfig_ForceBatching: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3829915401, data2: 4298, data3: 19735, data4: [177, 126, 106, 132, 15, 138, 58, 76] }; +pub const EVRConfig_ForceBob: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3829915393, data2: 4298, data3: 19735, data4: [177, 126, 106, 132, 15, 138, 58, 76] }; +pub const EVRConfig_ForceHalfInterlace: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3829915397, data2: 4298, data3: 19735, data4: [177, 126, 106, 132, 15, 138, 58, 76] }; +pub const EVRConfig_ForceScaling: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3829915399, data2: 4298, data3: 19735, data4: [177, 126, 106, 132, 15, 138, 58, 76] }; +pub const EVRConfig_ForceThrottle: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3829915395, data2: 4298, data3: 19735, data4: [177, 126, 106, 132, 15, 138, 58, 76] }; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub type EVRFilterConfigPrefs = i32; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] @@ -6659,7 +6840,19 @@ pub const OPENMODE_RESET_IF_EXIST: FILE_OPENMODE = 2i32; pub const OPENMODE_APPEND_IF_EXIST: FILE_OPENMODE = 3i32; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub const OPENMODE_DELETE_IF_EXIST: FILE_OPENMODE = 4i32; +pub const FORMAT_525WSS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3354193997, data2: 17794, data3: 18537, data4: [154, 187, 191, 181, 35, 182, 46, 223] }; +pub const FORMAT_AnalogVideo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685344, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const FORMAT_CAPTIONED_H264VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2767175716, data2: 34622, data3: 19875, data4: [137, 139, 71, 77, 219, 215, 159, 208] }; +pub const FORMAT_CAPTIONED_MPEG2VIDEO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2058530210, data2: 33206, data3: 20244, data4: [179, 200, 208, 196, 134, 57, 59, 103] }; +pub const FORMAT_CC_CONTAINER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1352235594, data2: 58632, data3: 16468, data4: [162, 178, 16, 255, 10, 193, 166, 154] }; +pub const FORMAT_DvInfo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 89694084, data2: 50006, data3: 4558, data4: [191, 1, 0, 170, 0, 85, 89, 90] }; pub const FORMAT_MFVideoFormat: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2933173037, data2: 29478, data3: 17355, data4: [148, 100, 200, 121, 202, 185, 196, 61] }; +pub const FORMAT_MPEGStreams: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 89694083, data2: 50006, data3: 4558, data4: [191, 1, 0, 170, 0, 85, 89, 90] }; +pub const FORMAT_MPEGVideo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 89694082, data2: 50006, data3: 4558, data4: [191, 1, 0, 170, 0, 85, 89, 90] }; +pub const FORMAT_None: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 258217942, data2: 49944, data3: 4560, data4: [164, 63, 0, 160, 201, 34, 49, 150] }; +pub const FORMAT_VideoInfo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 89694080, data2: 50006, data3: 4558, data4: [191, 1, 0, 170, 0, 85, 89, 90] }; +pub const FORMAT_VideoInfo2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4146755232, data2: 60170, data3: 4560, data4: [172, 228, 0, 0, 192, 204, 22, 186] }; +pub const FORMAT_WaveFormatEx: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 89694081, data2: 50006, data3: 4558, data4: [191, 1, 0, 170, 0, 85, 89, 90] }; pub const GUID_NativeDeviceService: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4017218876, data2: 21236, data3: 17349, data4: [184, 106, 173, 108, 178, 22, 166, 30] }; pub const GUID_PlayToService: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4138270621, data2: 40468, data3: 16841, data4: [191, 15, 18, 10, 43, 60, 225, 32] }; pub type IAdvancedMediaCapture = *mut ::core::ffi::c_void; @@ -7029,6 +7222,8 @@ pub const KSMETHOD_OPMVIDEOOUTPUT_GETINFORMATION: KSMETHOD_OPMVIDEOOUTPUT = 2i32 pub const KSPROPSETID_OPMVideoOutput: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 116659387, data2: 62522, data3: 20450, data4: [165, 102, 119, 75, 76, 129, 240, 219] }; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub const LOCAL_D3DFMT_DEFINES: u32 = 1u32; +pub const LOOK_DOWNSTREAM_ONLY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2893646817, data2: 39139, data3: 4561, data4: [179, 241, 0, 170, 0, 55, 97, 197] }; +pub const LOOK_UPSTREAM_ONLY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2893646816, data2: 39139, data3: 4561, data4: [179, 241, 0, 170, 0, 55, 97, 197] }; #[repr(C)] #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub struct MACROBLOCK_DATA { @@ -7069,18 +7264,90 @@ pub const MEDIASINK_FIXED_STREAMS: u32 = 1u32; pub const MEDIASINK_RATELESS: u32 = 4u32; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub const MEDIASINK_REQUIRE_REFERENCE_MEDIATYPE: u32 = 32u32; +pub const MEDIASUBTYPE_420O: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1328558644, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_708_608Data: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 183768252, data2: 20178, data3: 17502, data4: [152, 57, 143, 9, 85, 104, 171, 60] }; +pub const MEDIASUBTYPE_A2B10G10R10: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1466923155, data2: 48630, data3: 18628, data4: [135, 95, 174, 123, 129, 131, 69, 103] }; +pub const MEDIASUBTYPE_A2R10G10B10: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 797685613, data2: 46660, data3: 17744, data4: [172, 243, 211, 12, 170, 101, 213, 197] }; +pub const MEDIASUBTYPE_AI44: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 875841857, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_AIFF: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804493, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_ARGB1555: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 696014255, data2: 57865, data3: 19635, data4: [183, 87, 199, 109, 107, 156, 136, 168] }; +pub const MEDIASUBTYPE_ARGB1555_D3D_DX7_RT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 892420407, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_ARGB1555_D3D_DX9_RT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 892420409, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_ARGB32: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2000460480, data2: 12916, data3: 4560, data4: [183, 36, 0, 170, 0, 108, 26, 1] }; +pub const MEDIASUBTYPE_ARGB32_D3D_DX7_RT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 943210807, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_ARGB32_D3D_DX9_RT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 943210809, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_ARGB4444: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1852052966, data2: 23588, data3: 16991, data4: [147, 205, 128, 16, 43, 61, 28, 202] }; +pub const MEDIASUBTYPE_ARGB4444_D3D_DX7_RT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 875839799, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_ARGB4444_D3D_DX9_RT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 875839801, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_AU: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804492, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; pub const MEDIASUBTYPE_AVC1: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 826496577, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_AYUV: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1448433985, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_AnalogVideo_NTSC_M: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685346, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_PAL_B: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685349, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_PAL_D: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685350, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_PAL_G: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685351, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_PAL_H: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685352, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_PAL_I: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685353, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_PAL_M: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685354, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_PAL_N: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685355, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_PAL_N_COMBO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685356, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_SECAM_B: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685360, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_SECAM_D: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685361, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_SECAM_G: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685362, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_SECAM_H: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685363, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_SECAM_K: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685364, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_SECAM_K1: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685365, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_AnalogVideo_SECAM_L: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685366, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIASUBTYPE_Asf: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1035472784, data2: 37906, data3: 4561, data4: [173, 237, 0, 0, 248, 117, 75, 153] }; +pub const MEDIASUBTYPE_Avi: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804488, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_CC_CONTAINER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2124818139, data2: 21722, data3: 17275, data4: [190, 159, 247, 48, 115, 173, 250, 60] }; +pub const MEDIASUBTYPE_CFCC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1128482371, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_CLJR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1380600899, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_CLPL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1280330819, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_CPLA: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1095520323, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_DOLBY_AC3_SPDIF: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 146, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_DOLBY_DDPLUS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2818279343, data2: 11522, data3: 17147, data4: [164, 212, 5, 205, 147, 132, 59, 221] }; pub const MEDIASUBTYPE_DOLBY_TRUEHD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3945254596, data2: 5694, data3: 19619, data4: [139, 116, 142, 37, 249, 27, 81, 126] }; +pub const MEDIASUBTYPE_DRM_Audio: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 9, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_DTS2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 8193, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_DTS_HD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2732953271, data2: 4009, data3: 18619, data4: [164, 12, 250, 14, 21, 109, 6, 69] }; pub const MEDIASUBTYPE_DTS_HD_HRA: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2786771812, data2: 44302, data3: 18244, data4: [137, 255, 33, 60, 224, 223, 136, 4] }; +pub const MEDIASUBTYPE_DVB_SUBTITLES: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 889179075, data2: 54707, data3: 16753, data4: [144, 2, 212, 198, 3, 1, 105, 127] }; +pub const MEDIASUBTYPE_DVCS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1396921924, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_DVM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 8192, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_DVSD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1146312260, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_DssAudio: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2695843714, data2: 57699, data3: 4560, data4: [186, 217, 0, 96, 151, 68, 17, 26] }; +pub const MEDIASUBTYPE_DssVideo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2695843713, data2: 57699, data3: 4560, data4: [186, 217, 0, 96, 151, 68, 17, 26] }; +pub const MEDIASUBTYPE_DtvCcData: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4113227178, data2: 14064, data3: 17397, data4: [149, 234, 109, 134, 100, 132, 38, 42] }; +pub const MEDIASUBTYPE_H264: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 875967048, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_I420: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 808596553, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_IA44: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 875839817, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_IEEE_FLOAT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_IF09: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 959465033, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_IJPG: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1196444233, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_IMC1: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 826494281, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_IMC2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 843271497, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_IMC3: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 860048713, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_IMC4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 876825929, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_ISDB_CAPTIONS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 94230141, data2: 11861, data3: 19777, data4: [141, 27, 1, 245, 228, 245, 6, 7] }; +pub const MEDIASUBTYPE_ISDB_SUPERIMPOSE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 920415528, data2: 61862, data3: 16918, data4: [144, 72, 156, 252, 239, 235, 94, 186] }; +pub const MEDIASUBTYPE_IYUV: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1448433993, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_Line21_BytePair: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1854753314, data2: 12556, data3: 4560, data4: [183, 154, 0, 170, 0, 55, 103, 167] }; +pub const MEDIASUBTYPE_Line21_GOPPacket: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1854753315, data2: 12556, data3: 4560, data4: [183, 154, 0, 170, 0, 55, 103, 167] }; +pub const MEDIASUBTYPE_Line21_VBIRawData: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1854753316, data2: 12556, data3: 4560, data4: [183, 154, 0, 170, 0, 55, 103, 167] }; pub const MEDIASUBTYPE_M4S2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 844313677, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_MDVF: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1180058701, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_MJPG: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1196444237, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_MP42: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 842289229, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_MP43: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 859066445, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_MP4S: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1395937357, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_MPEG1Audio: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804487, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_MPEG1AudioPayload: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 80, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_MPEG1Packet: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804480, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_MPEG1Payload: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804481, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_MPEG1System: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804484, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_MPEG1Video: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804486, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_MPEG1VideoCD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804485, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; pub const MEDIASUBTYPE_MPEG_ADTS_AAC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 5632, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_MPEG_HEAAC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 5648, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_MPEG_LOAS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 5634, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; @@ -7092,12 +7359,53 @@ pub const MEDIASUBTYPE_MSS2: ::windows_sys::core::GUID = ::windows_sys::core::GU pub const MEDIASUBTYPE_NOKIA_MPEG_ADTS_AAC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 5640, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_NOKIA_MPEG_RAW_AAC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 5641, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_NV11: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 825316942, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_NV12: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 842094158, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_NV24: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 875714126, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_None: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804494, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_Overlay: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804479, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_P010: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 808530000, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_P016: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 909193296, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_P208: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 942682704, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_P210: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 808530512, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_P216: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 909193808, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_P408: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 942683216, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_PCM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_PCMAudio_Obsolete: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804490, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_Plum: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1836411984, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_QTJpeg: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1734701162, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_QTMovie: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804489, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_QTRle: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 543517810, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_QTRpza: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1635414130, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_QTSmc: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 543386995, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_RAW_AAC1: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 255, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_RAW_SPORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 576, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_RGB1: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804472, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_RGB16_D3D_DX7_RT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 909201975, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_RGB16_D3D_DX9_RT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 909201977, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_RGB24: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804477, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_RGB32: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804478, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_RGB32_D3D_DX7_RT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 842224183, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_RGB32_D3D_DX9_RT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 842224185, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_RGB4: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804473, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_RGB555: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804476, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_RGB565: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804475, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_RGB8: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804474, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIASUBTYPE_S340: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 808727379, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_S342: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 842281811, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_SPDIF_TAG_241h: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 577, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_TELETEXT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4146755299, data2: 60170, data3: 4560, data4: [172, 228, 0, 0, 192, 204, 22, 186] }; +pub const MEDIASUBTYPE_TVMJ: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1246582356, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_UYVY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1498831189, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_V216: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 909193814, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_V410: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 808531030, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_VBI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1715315772, data2: 1000, data3: 20122, data4: [156, 213, 191, 17, 237, 13, 239, 118] }; pub const MEDIASUBTYPE_VODAFONE_MPEG_ADTS_AAC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 5642, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_VODAFONE_MPEG_RAW_AAC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 5643, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_VPS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2712925728, data2: 38802, data3: 19853, data4: [129, 164, 134, 175, 37, 119, 32, 144] }; +pub const MEDIASUBTYPE_VPVBI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1520134721, data2: 6690, data3: 4561, data4: [186, 217, 0, 96, 151, 68, 17, 26] }; +pub const MEDIASUBTYPE_VPVideo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1520134720, data2: 6690, data3: 4561, data4: [186, 217, 0, 96, 151, 68, 17, 26] }; +pub const MEDIASUBTYPE_WAKE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1162559831, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_WAVE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804491, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; pub const MEDIASUBTYPE_WMASPDIF: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 356, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_WMAUDIO2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 353, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_WMAUDIO3: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 354, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; @@ -7110,11 +7418,29 @@ pub const MEDIASUBTYPE_WMVA: ::windows_sys::core::GUID = ::windows_sys::core::GU pub const MEDIASUBTYPE_WMVB: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1112952151, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_WMVP: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1347833175, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_WMVR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1381387607, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_WSS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 663868790, data2: 36474, data3: 18031, data4: [158, 144, 93, 63, 48, 131, 115, 139] }; pub const MEDIASUBTYPE_WVC1: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 826496599, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_WVP2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 844125783, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_X264: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 875967064, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_XDS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 30045155, data2: 56550, data3: 17781, data4: [175, 225, 43, 241, 201, 2, 202, 243] }; +pub const MEDIASUBTYPE_Y210: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 808530521, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_Y211: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 825307737, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_Y216: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 909193817, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_Y411: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 825308249, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_Y41P: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1345401945, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_Y41T: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1412510809, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_Y42T: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1412576345, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_YUY2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 844715353, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_YUYV: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1448695129, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_YV12: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 842094169, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_YVU9: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 961893977, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_YVYU: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1431918169, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_dv25: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 892499556, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_dv50: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 808810084, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_dvh1: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 828929636, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_dvhd: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1684567652, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_dvsd: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1685288548, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIASUBTYPE_dvsl: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1819506276, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_h264: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 875967080, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_m4s2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 846410861, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_mp42: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 842297453, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; @@ -7132,6 +7458,26 @@ pub const MEDIASUBTYPE_wmvr: ::windows_sys::core::GUID = ::windows_sys::core::GU pub const MEDIASUBTYPE_wvc1: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 828601975, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_wvp2: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 846231159, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; pub const MEDIASUBTYPE_x264: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 875967096, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIATYPE_AUXLine21Data: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1728768640, data2: 14978, data3: 4560, data4: [183, 155, 0, 170, 0, 55, 103, 167] }; +pub const MEDIATYPE_AUXTeletextPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 287722187, data2: 14302, data3: 20154, data4: [140, 53, 127, 4, 161, 166, 131, 50] }; +pub const MEDIATYPE_AnalogAudio: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685601, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIATYPE_AnalogVideo: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685345, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIATYPE_Audio: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1935963489, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIATYPE_CC_CONTAINER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2930971369, data2: 13143, data3: 17354, data4: [183, 1, 151, 236, 25, 142, 43, 98] }; +pub const MEDIATYPE_DTVCCData: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218937682, data2: 21426, data3: 18844, data4: [180, 107, 80, 159, 195, 62, 223, 215] }; +pub const MEDIATYPE_File: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1701603686, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIATYPE_Interleaved: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1937138025, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIATYPE_LMRT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1953655917, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIATYPE_MPEG1SystemStream: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804482, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIATYPE_MSTVCaption: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3096152713, data2: 45129, data3: 19584, data4: [173, 207, 88, 152, 152, 94, 34, 193] }; +pub const MEDIATYPE_Midi: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1935960429, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIATYPE_ScriptCommand: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1935895908, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIATYPE_Stream: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3828804483, data2: 21071, data3: 4558, data4: [159, 83, 0, 32, 175, 11, 167, 112] }; +pub const MEDIATYPE_Text: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1937012852, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIATYPE_Timecode: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 75685603, data2: 30743, data3: 4559, data4: [138, 3, 0, 170, 0, 110, 203, 101] }; +pub const MEDIATYPE_URL_STREAM: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1936487029, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; +pub const MEDIATYPE_VBI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4146755297, data2: 60170, data3: 4560, data4: [172, 228, 0, 0, 192, 204, 22, 186] }; +pub const MEDIATYPE_Video: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1935960438, data2: 0, data3: 16, data4: [128, 0, 0, 170, 0, 56, 155, 113] }; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub type MEDIA_EVENT_GENERATOR_GET_EVENT_FLAGS = u32; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] @@ -9020,7 +9366,7 @@ pub const MFVideoAlphaBitmap_BitMask: MFVideoAlphaBitmapFlags = 63i32; #[cfg(feature = "Win32_Foundation")] pub struct MFVideoAlphaBitmapParams { pub dwFlags: u32, - pub clrSrcKey: u32, + pub clrSrcKey: super::super::Foundation::COLORREF, pub rcSrc: super::super::Foundation::RECT, pub nrcDest: MFVideoNormalizedRect, pub fAlpha: f32, @@ -12971,6 +13317,18 @@ pub type PDXVAHDSW_VideoProcessBltHD = ::core::option::Option ::windows_sys::core::HRESULT>; +pub const PIN_CATEGORY_ANALOGVIDEOIN: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176131, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; +pub const PIN_CATEGORY_CAPTURE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176129, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; +pub const PIN_CATEGORY_CC: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176137, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; +pub const PIN_CATEGORY_EDS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176135, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; +pub const PIN_CATEGORY_NABTS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176134, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; +pub const PIN_CATEGORY_PREVIEW: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176130, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; +pub const PIN_CATEGORY_STILL: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176138, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; +pub const PIN_CATEGORY_TELETEXT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176136, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; +pub const PIN_CATEGORY_TIMECODE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176139, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; +pub const PIN_CATEGORY_VBI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176132, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; +pub const PIN_CATEGORY_VIDEOPORT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176133, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; +pub const PIN_CATEGORY_VIDEOPORT_VBI: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4218176140, data2: 851, data3: 4561, data4: [144, 95, 0, 0, 192, 204, 22, 186] }; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub type PLAYTO_SOURCE_CREATEFLAGS = i32; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] @@ -13061,6 +13419,12 @@ pub const SYSFXUI_DONOTSHOW_ROOMCORRECTION: u32 = 2u32; pub const SYSFXUI_DONOTSHOW_SPEAKERFILLING: u32 = 64u32; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub const SYSFXUI_DONOTSHOW_VIRTUALSURROUND: u32 = 32u32; +pub const TIME_FORMAT_BYTE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2071483761, data2: 35970, data3: 4559, data4: [188, 12, 0, 170, 0, 172, 116, 246] }; +pub const TIME_FORMAT_FIELD: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2071483763, data2: 35970, data3: 4559, data4: [188, 12, 0, 170, 0, 172, 116, 246] }; +pub const TIME_FORMAT_FRAME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2071483760, data2: 35970, data3: 4559, data4: [188, 12, 0, 170, 0, 172, 116, 246] }; +pub const TIME_FORMAT_MEDIA_TIME: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2071483764, data2: 35970, data3: 4559, data4: [188, 12, 0, 170, 0, 172, 116, 246] }; +pub const TIME_FORMAT_NONE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 0, data2: 0, data3: 0, data4: [0, 0, 0, 0, 0, 0, 0, 0] }; +pub const TIME_FORMAT_SAMPLE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2071483762, data2: 35970, data3: 4559, data4: [188, 12, 0, 170, 0, 172, 116, 246] }; #[repr(C)] #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub struct TOC_DESCRIPTOR { @@ -13100,6 +13464,8 @@ pub type TOC_POS_TYPE = i32; pub const TOC_POS_INHEADER: TOC_POS_TYPE = 0i32; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub const TOC_POS_TOPLEVELOBJECT: TOC_POS_TYPE = 1i32; +pub const UUID_UdriTagTables: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3787033972, data2: 38776, data3: 18552, data4: [182, 100, 235, 32, 32, 54, 77, 136] }; +pub const UUID_WMDRMTagTables: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1573720321, data2: 37475, data3: 17851, data4: [164, 213, 196, 21, 171, 140, 88, 156] }; #[repr(C)] #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] diff --git a/crates/libs/sys/src/Windows/Win32/Media/Speech/mod.rs b/crates/libs/sys/src/Windows/Win32/Media/Speech/mod.rs index d8b1b9a14f..88bf23d3ad 100644 --- a/crates/libs/sys/src/Windows/Win32/Media/Speech/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Media/Speech/mod.rs @@ -1505,7 +1505,7 @@ pub const SPPS_SuppressWord: SPPARTOFSPEECH = 61440i32; #[doc = "*Required features: `\"Win32_Media_Speech\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))] pub struct SPPHRASE { - pub __AnonymousBase_sapi53_L5821_C34: SPPHRASE_50, + pub Base: SPPHRASE_50, pub pSML: ::windows_sys::core::PWSTR, pub pSemanticErrorInfo: *mut SPSEMANTICERRORINFO, } diff --git a/crates/libs/sys/src/Windows/Win32/Networking/ActiveDirectory/mod.rs b/crates/libs/sys/src/Windows/Win32/Networking/ActiveDirectory/mod.rs index 9acd3d62df..d75a920991 100644 --- a/crates/libs/sys/src/Windows/Win32/Networking/ActiveDirectory/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Networking/ActiveDirectory/mod.rs @@ -1294,6 +1294,7 @@ pub const ADS_SEARCHPREF_SECURITY_MASK: ADS_SEARCHPREF_ENUM = 16i32; pub const ADS_SEARCHPREF_DIRSYNC_FLAG: ADS_SEARCHPREF_ENUM = 17i32; #[doc = "*Required features: `\"Win32_Networking_ActiveDirectory\"`*"] pub const ADS_SEARCHPREF_EXTENDED_DN: ADS_SEARCHPREF_ENUM = 18i32; +pub type ADS_SEARCH_HANDLE = isize; #[doc = "*Required features: `\"Win32_Networking_ActiveDirectory\"`*"] pub type ADS_SECURITY_INFO_ENUM = i32; #[doc = "*Required features: `\"Win32_Networking_ActiveDirectory\"`*"] diff --git a/crates/libs/sys/src/Windows/Win32/Networking/Clustering/mod.rs b/crates/libs/sys/src/Windows/Win32/Networking/Clustering/mod.rs index 6dfe431924..a061b7605d 100644 --- a/crates/libs/sys/src/Windows/Win32/Networking/Clustering/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Networking/Clustering/mod.rs @@ -2299,7 +2299,7 @@ pub const CLUSGRP_STATUS_WAITING_TO_START: u64 = 16u64; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_BINARY { - pub __AnonymousBase_clusapi_L5129_C41: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub rgb: [u8; 1], } impl ::core::marker::Copy for CLUSPROP_BINARY {} @@ -2352,7 +2352,7 @@ impl ::core::clone::Clone for CLUSPROP_BUFFER_HELPER { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_DWORD { - pub __AnonymousBase_clusapi_L5149_C40: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub dw: u32, } impl ::core::marker::Copy for CLUSPROP_DWORD {} @@ -2365,7 +2365,7 @@ impl ::core::clone::Clone for CLUSPROP_DWORD { #[doc = "*Required features: `\"Win32_Networking_Clustering\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct CLUSPROP_FILETIME { - pub __AnonymousBase_clusapi_L5225_C14: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub ft: super::super::Foundation::FILETIME, } #[cfg(feature = "Win32_Foundation")] @@ -2379,8 +2379,8 @@ impl ::core::clone::Clone for CLUSPROP_FILETIME { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_FTSET_INFO { - pub __AnonymousBase_clusapi_L5555_C14: CLUSPROP_VALUE, - pub __AnonymousBase_clusapi_L5556_C14: CLUS_FTSET_INFO, + pub Base: CLUSPROP_VALUE, + pub Base2: CLUS_FTSET_INFO, } impl ::core::marker::Copy for CLUSPROP_FTSET_INFO {} impl ::core::clone::Clone for CLUSPROP_FTSET_INFO { @@ -2399,7 +2399,7 @@ pub const CLUSPROP_IPADDR_ENABLENETBIOS_TRACK_NIC: CLUSPROP_IPADDR_ENABLENETBIOS #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_LARGE_INTEGER { - pub __AnonymousBase_clusapi_L5199_C14: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub li: i64, } impl ::core::marker::Copy for CLUSPROP_LARGE_INTEGER {} @@ -2423,7 +2423,7 @@ impl ::core::clone::Clone for CLUSPROP_LIST { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_LONG { - pub __AnonymousBase_clusapi_L5159_C39: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub l: i32, } impl ::core::marker::Copy for CLUSPROP_LONG {} @@ -2435,8 +2435,8 @@ impl ::core::clone::Clone for CLUSPROP_LONG { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_PARTITION_INFO { - pub __AnonymousBase_clusapi_L5507_C14: CLUSPROP_VALUE, - pub __AnonymousBase_clusapi_L5508_C14: CLUS_PARTITION_INFO, + pub Base: CLUSPROP_VALUE, + pub Base2: CLUS_PARTITION_INFO, } impl ::core::marker::Copy for CLUSPROP_PARTITION_INFO {} impl ::core::clone::Clone for CLUSPROP_PARTITION_INFO { @@ -2447,8 +2447,8 @@ impl ::core::clone::Clone for CLUSPROP_PARTITION_INFO { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_PARTITION_INFO_EX { - pub __AnonymousBase_clusapi_L5519_C14: CLUSPROP_VALUE, - pub __AnonymousBase_clusapi_L5520_C14: CLUS_PARTITION_INFO_EX, + pub Base: CLUSPROP_VALUE, + pub Base2: CLUS_PARTITION_INFO_EX, } impl ::core::marker::Copy for CLUSPROP_PARTITION_INFO_EX {} impl ::core::clone::Clone for CLUSPROP_PARTITION_INFO_EX { @@ -2459,8 +2459,8 @@ impl ::core::clone::Clone for CLUSPROP_PARTITION_INFO_EX { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_PARTITION_INFO_EX2 { - pub __AnonymousBase_clusapi_L5533_C14: CLUSPROP_PARTITION_INFO_EX, - pub __AnonymousBase_clusapi_L5534_C14: CLUS_PARTITION_INFO_EX2, + pub Base: CLUSPROP_PARTITION_INFO_EX, + pub Base2: CLUS_PARTITION_INFO_EX2, } impl ::core::marker::Copy for CLUSPROP_PARTITION_INFO_EX2 {} impl ::core::clone::Clone for CLUSPROP_PARTITION_INFO_EX2 { @@ -2502,7 +2502,7 @@ impl ::core::clone::Clone for CLUSPROP_REQUIRED_DEPENDENCY { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_RESOURCE_CLASS { - pub __AnonymousBase_clusapi_L5250_C14: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub rc: CLUSTER_RESOURCE_CLASS, } impl ::core::marker::Copy for CLUSPROP_RESOURCE_CLASS {} @@ -2514,8 +2514,8 @@ impl ::core::clone::Clone for CLUSPROP_RESOURCE_CLASS { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_RESOURCE_CLASS_INFO { - pub __AnonymousBase_clusapi_L5261_C14: CLUSPROP_VALUE, - pub __AnonymousBase_clusapi_L5262_C14: CLUS_RESOURCE_CLASS_INFO, + pub Base: CLUSPROP_VALUE, + pub Base2: CLUS_RESOURCE_CLASS_INFO, } impl ::core::marker::Copy for CLUSPROP_RESOURCE_CLASS_INFO {} impl ::core::clone::Clone for CLUSPROP_RESOURCE_CLASS_INFO { @@ -2526,8 +2526,8 @@ impl ::core::clone::Clone for CLUSPROP_RESOURCE_CLASS_INFO { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_SCSI_ADDRESS { - pub __AnonymousBase_clusapi_L5583_C14: CLUSPROP_VALUE, - pub __AnonymousBase_clusapi_L5584_C14: CLUS_SCSI_ADDRESS, + pub Base: CLUSPROP_VALUE, + pub Base2: CLUS_SCSI_ADDRESS, } impl ::core::marker::Copy for CLUSPROP_SCSI_ADDRESS {} impl ::core::clone::Clone for CLUSPROP_SCSI_ADDRESS { @@ -2539,7 +2539,7 @@ impl ::core::clone::Clone for CLUSPROP_SCSI_ADDRESS { #[doc = "*Required features: `\"Win32_Networking_Clustering\"`, `\"Win32_System_SystemServices\"`*"] #[cfg(feature = "Win32_System_SystemServices")] pub struct CLUSPROP_SECURITY_DESCRIPTOR { - pub __AnonymousBase_clusapi_L5211_C54: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub Anonymous: CLUSPROP_SECURITY_DESCRIPTOR_0, } #[cfg(feature = "Win32_System_SystemServices")] @@ -2592,7 +2592,7 @@ impl ::core::clone::Clone for CLUSPROP_SYNTAX_0 { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_SZ { - pub __AnonymousBase_clusapi_L5169_C37: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub sz: [u16; 1], } impl ::core::marker::Copy for CLUSPROP_SZ {} @@ -2604,7 +2604,7 @@ impl ::core::clone::Clone for CLUSPROP_SZ { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_ULARGE_INTEGER { - pub __AnonymousBase_clusapi_L5186_C14: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub li: u64, } impl ::core::marker::Copy for CLUSPROP_ULARGE_INTEGER {} @@ -2628,7 +2628,7 @@ impl ::core::clone::Clone for CLUSPROP_VALUE { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_WORD { - pub __AnonymousBase_clusapi_L5139_C39: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub w: u16, } impl ::core::marker::Copy for CLUSPROP_WORD {} @@ -4581,8 +4581,8 @@ pub const VolumeBackupInProgress: CLUSTER_SHARED_VOLUME_BACKUP_STATE = 1i32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSTER_SHARED_VOLUME_RENAME_GUID_INPUT { - pub __AnonymousBase_clusapi_L5475_C14: CLUSTER_SHARED_VOLUME_RENAME_INPUT_VOLUME, - pub __AnonymousBase_clusapi_L5476_C14: CLUSTER_SHARED_VOLUME_RENAME_INPUT_GUID_NAME, + pub Base: CLUSTER_SHARED_VOLUME_RENAME_INPUT_VOLUME, + pub Base2: CLUSTER_SHARED_VOLUME_RENAME_INPUT_GUID_NAME, } impl ::core::marker::Copy for CLUSTER_SHARED_VOLUME_RENAME_GUID_INPUT {} impl ::core::clone::Clone for CLUSTER_SHARED_VOLUME_RENAME_GUID_INPUT { @@ -4593,8 +4593,8 @@ impl ::core::clone::Clone for CLUSTER_SHARED_VOLUME_RENAME_GUID_INPUT { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSTER_SHARED_VOLUME_RENAME_INPUT { - pub __AnonymousBase_clusapi_L5464_C14: CLUSTER_SHARED_VOLUME_RENAME_INPUT_VOLUME, - pub __AnonymousBase_clusapi_L5465_C14: CLUSTER_SHARED_VOLUME_RENAME_INPUT_NAME, + pub Base: CLUSTER_SHARED_VOLUME_RENAME_INPUT_VOLUME, + pub Base2: CLUSTER_SHARED_VOLUME_RENAME_INPUT_NAME, } impl ::core::marker::Copy for CLUSTER_SHARED_VOLUME_RENAME_INPUT {} impl ::core::clone::Clone for CLUSTER_SHARED_VOLUME_RENAME_INPUT { diff --git a/crates/libs/sys/src/Windows/Win32/Networking/HttpServer/mod.rs b/crates/libs/sys/src/Windows/Win32/Networking/HttpServer/mod.rs index 893bcc2142..3f999282e3 100644 --- a/crates/libs/sys/src/Windows/Win32/Networking/HttpServer/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Networking/HttpServer/mod.rs @@ -1358,7 +1358,7 @@ impl ::core::clone::Clone for HTTP_REQUEST_V1 { #[doc = "*Required features: `\"Win32_Networking_HttpServer\"`, `\"Win32_Foundation\"`, `\"Win32_Networking_WinSock\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Networking_WinSock"))] pub struct HTTP_REQUEST_V2 { - pub __AnonymousBase_http_L1861_C35: HTTP_REQUEST_V1, + pub Base: HTTP_REQUEST_V1, pub RequestInfoCount: u16, pub pRequestInfo: *mut HTTP_REQUEST_INFO, } @@ -1439,7 +1439,7 @@ impl ::core::clone::Clone for HTTP_RESPONSE_V1 { #[doc = "*Required features: `\"Win32_Networking_HttpServer\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct HTTP_RESPONSE_V2 { - pub __AnonymousBase_http_L2050_C36: HTTP_RESPONSE_V1, + pub Base: HTTP_RESPONSE_V1, pub ResponseInfoCount: u16, pub pResponseInfo: *mut HTTP_RESPONSE_INFO, } diff --git a/crates/libs/sys/src/Windows/Win32/Networking/WinSock/mod.rs b/crates/libs/sys/src/Windows/Win32/Networking/WinSock/mod.rs index a9be6a7a58..1418defcb6 100644 --- a/crates/libs/sys/src/Windows/Win32/Networking/WinSock/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Networking/WinSock/mod.rs @@ -9,19 +9,19 @@ extern "system" { pub fn EnumProtocolsW(lpiprotocols: *const i32, lpprotocolbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: *mut u32) -> i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn FreeAddrInfoEx(paddrinfoex: *const addrinfoexA); + pub fn FreeAddrInfoEx(paddrinfoex: *const ADDRINFOEXA); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn FreeAddrInfoExW(paddrinfoex: *const addrinfoexW); + pub fn FreeAddrInfoExW(paddrinfoex: *const ADDRINFOEXW); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn FreeAddrInfoW(paddrinfo: *const addrinfoW); + pub fn FreeAddrInfoW(paddrinfo: *const ADDRINFOW); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn GetAcceptExSockaddrs(lpoutputbuffer: *const ::core::ffi::c_void, dwreceivedatalength: u32, dwlocaladdresslength: u32, dwremoteaddresslength: u32, localsockaddr: *mut *mut SOCKADDR, localsockaddrlength: *mut i32, remotesockaddr: *mut *mut SOCKADDR, remotesockaddrlength: *mut i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] - pub fn GetAddrInfoExA(pname: ::windows_sys::core::PCSTR, pservicename: ::windows_sys::core::PCSTR, dwnamespace: u32, lpnspid: *const ::windows_sys::core::GUID, hints: *const addrinfoexA, ppresult: *mut *mut addrinfoexA, timeout: *const timeval, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpcompletionroutine: LPLOOKUPSERVICE_COMPLETION_ROUTINE, lpnamehandle: *mut super::super::Foundation::HANDLE) -> i32; + pub fn GetAddrInfoExA(pname: ::windows_sys::core::PCSTR, pservicename: ::windows_sys::core::PCSTR, dwnamespace: u32, lpnspid: *const ::windows_sys::core::GUID, hints: *const ADDRINFOEXA, ppresult: *mut *mut ADDRINFOEXA, timeout: *const timeval, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpcompletionroutine: LPLOOKUPSERVICE_COMPLETION_ROUTINE, lpnamehandle: *mut super::super::Foundation::HANDLE) -> i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn GetAddrInfoExCancel(lphandle: *const super::super::Foundation::HANDLE) -> i32; @@ -30,10 +30,10 @@ extern "system" { pub fn GetAddrInfoExOverlappedResult(lpoverlapped: *const super::super::System::IO::OVERLAPPED) -> i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] - pub fn GetAddrInfoExW(pname: ::windows_sys::core::PCWSTR, pservicename: ::windows_sys::core::PCWSTR, dwnamespace: u32, lpnspid: *const ::windows_sys::core::GUID, hints: *const addrinfoexW, ppresult: *mut *mut addrinfoexW, timeout: *const timeval, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpcompletionroutine: LPLOOKUPSERVICE_COMPLETION_ROUTINE, lphandle: *mut super::super::Foundation::HANDLE) -> i32; + pub fn GetAddrInfoExW(pname: ::windows_sys::core::PCWSTR, pservicename: ::windows_sys::core::PCWSTR, dwnamespace: u32, lpnspid: *const ::windows_sys::core::GUID, hints: *const ADDRINFOEXW, ppresult: *mut *mut ADDRINFOEXW, timeout: *const timeval, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpcompletionroutine: LPLOOKUPSERVICE_COMPLETION_ROUTINE, lphandle: *mut super::super::Foundation::HANDLE) -> i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn GetAddrInfoW(pnodename: ::windows_sys::core::PCWSTR, pservicename: ::windows_sys::core::PCWSTR, phints: *const addrinfoW, ppresult: *mut *mut addrinfoW) -> i32; + pub fn GetAddrInfoW(pnodename: ::windows_sys::core::PCWSTR, pservicename: ::windows_sys::core::PCWSTR, phints: *const ADDRINFOW, ppresult: *mut *mut ADDRINFOW) -> i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn GetAddressByNameA(dwnamespace: u32, lpservicetype: *const ::windows_sys::core::GUID, lpservicename: ::windows_sys::core::PCSTR, lpiprotocols: *const i32, dwresolution: u32, lpserviceasyncinfo: *const SERVICE_ASYNC_INFO, lpcsaddrbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: *mut u32, lpaliasbuffer: ::windows_sys::core::PSTR, lpdwaliasbufferlength: *mut u32) -> i32; @@ -621,6 +621,222 @@ impl ::core::clone::Clone for ADDRINFOA { *self } } +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEX2A { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows_sys::core::PSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows_sys::core::GUID, + pub ai_next: *mut ADDRINFOEX2A, + pub ai_version: i32, + pub ai_fqdn: ::windows_sys::core::PSTR, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEX2A {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEX2A { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEX2W { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows_sys::core::PWSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows_sys::core::GUID, + pub ai_next: *mut ADDRINFOEX2W, + pub ai_version: i32, + pub ai_fqdn: ::windows_sys::core::PWSTR, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEX2W {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEX2W { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEX3 { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows_sys::core::PWSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows_sys::core::GUID, + pub ai_next: *mut ADDRINFOEX3, + pub ai_version: i32, + pub ai_fqdn: ::windows_sys::core::PWSTR, + pub ai_interfaceindex: i32, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEX3 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEX3 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEX4 { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows_sys::core::PWSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows_sys::core::GUID, + pub ai_next: *mut ADDRINFOEX4, + pub ai_version: i32, + pub ai_fqdn: ::windows_sys::core::PWSTR, + pub ai_interfaceindex: i32, + pub ai_resolutionhandle: super::super::Foundation::HANDLE, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEX4 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEX4 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEX5 { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows_sys::core::PWSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows_sys::core::GUID, + pub ai_next: *mut ADDRINFOEX5, + pub ai_version: i32, + pub ai_fqdn: ::windows_sys::core::PWSTR, + pub ai_interfaceindex: i32, + pub ai_resolutionhandle: super::super::Foundation::HANDLE, + pub ai_ttl: u32, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEX5 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEX5 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEX6 { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows_sys::core::PWSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows_sys::core::GUID, + pub ai_next: *mut ADDRINFOEX5, + pub ai_version: i32, + pub ai_fqdn: ::windows_sys::core::PWSTR, + pub ai_interfaceindex: i32, + pub ai_resolutionhandle: super::super::Foundation::HANDLE, + pub ai_ttl: u32, + pub ai_numservers: u32, + pub ai_servers: *mut addrinfo_dns_server, + pub ai_responseflags: u64, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEX6 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEX6 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEXA { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows_sys::core::PSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows_sys::core::GUID, + pub ai_next: *mut ADDRINFOEXA, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEXA {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEXA { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEXW { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows_sys::core::PWSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows_sys::core::GUID, + pub ai_next: *mut ADDRINFOEXW, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEXW {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEXW { + fn clone(&self) -> Self { + *self + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] pub const ADDRINFOEX_VERSION_2: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] @@ -632,6 +848,27 @@ pub const ADDRINFOEX_VERSION_5: u32 = 5u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] pub const ADDRINFOEX_VERSION_6: u32 = 6u32; #[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOW { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows_sys::core::PWSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_next: *mut ADDRINFOW, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOW {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOW { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] pub struct AFPROTOCOLS { pub iAddressFamily: i32, @@ -2081,6 +2318,18 @@ impl ::core::clone::Clone for IN6_PKTINFO { *self } } +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct IN6_PKTINFO_EX { + pub pkt_info: IN6_PKTINFO, + pub scope_id: SCOPE_ID, +} +impl ::core::marker::Copy for IN6_PKTINFO_EX {} +impl ::core::clone::Clone for IN6_PKTINFO_EX { + fn clone(&self) -> Self { + *self + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] pub const INADDR_LOOPBACK: u32 = 2130706433u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] @@ -3960,22 +4209,218 @@ pub const ND_NA_FLAG_OVERRIDE: u32 = 536870912u32; pub const ND_NA_FLAG_ROUTER: u32 = 2147483648u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] pub const ND_NA_FLAG_SOLICITED: u32 = 1073741824u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type ND_OPTION_TYPE = i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_SOURCE_LINKADDR: ND_OPTION_TYPE = 1i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_TARGET_LINKADDR: ND_OPTION_TYPE = 2i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_PREFIX_INFORMATION: ND_OPTION_TYPE = 3i32; +pub struct ND_NEIGHBOR_ADVERT_HEADER { + pub nd_na_hdr: ICMP_MESSAGE, + pub nd_na_target: IN6_ADDR, +} +impl ::core::marker::Copy for ND_NEIGHBOR_ADVERT_HEADER {} +impl ::core::clone::Clone for ND_NEIGHBOR_ADVERT_HEADER { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_REDIRECTED_HEADER: ND_OPTION_TYPE = 4i32; +pub struct ND_NEIGHBOR_SOLICIT_HEADER { + pub nd_ns_hdr: ICMP_MESSAGE, + pub nd_ns_target: IN6_ADDR, +} +impl ::core::marker::Copy for ND_NEIGHBOR_SOLICIT_HEADER {} +impl ::core::clone::Clone for ND_NEIGHBOR_SOLICIT_HEADER { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_MTU: ND_OPTION_TYPE = 5i32; +pub struct ND_OPTION_DNSSL { + pub nd_opt_dnssl_type: u8, + pub nd_opt_dnssl_len: u8, + pub nd_opt_dnssl_reserved: u16, + pub nd_opt_dnssl_lifetime: u32, +} +impl ::core::marker::Copy for ND_OPTION_DNSSL {} +impl ::core::clone::Clone for ND_OPTION_DNSSL { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_NBMA_SHORTCUT_LIMIT: ND_OPTION_TYPE = 6i32; +pub struct ND_OPTION_HDR { + pub nd_opt_type: u8, + pub nd_opt_len: u8, +} +impl ::core::marker::Copy for ND_OPTION_HDR {} +impl ::core::clone::Clone for ND_OPTION_HDR { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_ADVERTISEMENT_INTERVAL: ND_OPTION_TYPE = 7i32; +pub struct ND_OPTION_MTU { + pub nd_opt_mtu_type: u8, + pub nd_opt_mtu_len: u8, + pub nd_opt_mtu_reserved: u16, + pub nd_opt_mtu_mtu: u32, +} +impl ::core::marker::Copy for ND_OPTION_MTU {} +impl ::core::clone::Clone for ND_OPTION_MTU { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ND_OPTION_PREFIX_INFO { + pub nd_opt_pi_type: u8, + pub nd_opt_pi_len: u8, + pub nd_opt_pi_prefix_len: u8, + pub Anonymous1: ND_OPTION_PREFIX_INFO_0, + pub nd_opt_pi_valid_time: u32, + pub nd_opt_pi_preferred_time: u32, + pub Anonymous2: ND_OPTION_PREFIX_INFO_1, + pub nd_opt_pi_prefix: IN6_ADDR, +} +impl ::core::marker::Copy for ND_OPTION_PREFIX_INFO {} +impl ::core::clone::Clone for ND_OPTION_PREFIX_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub union ND_OPTION_PREFIX_INFO_0 { + pub nd_opt_pi_flags_reserved: u8, + pub Flags: ND_OPTION_PREFIX_INFO_0_0, +} +impl ::core::marker::Copy for ND_OPTION_PREFIX_INFO_0 {} +impl ::core::clone::Clone for ND_OPTION_PREFIX_INFO_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ND_OPTION_PREFIX_INFO_0_0 { + pub _bitfield: u8, +} +impl ::core::marker::Copy for ND_OPTION_PREFIX_INFO_0_0 {} +impl ::core::clone::Clone for ND_OPTION_PREFIX_INFO_0_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub union ND_OPTION_PREFIX_INFO_1 { + pub nd_opt_pi_reserved2: u32, + pub Anonymous: ND_OPTION_PREFIX_INFO_1_0, +} +impl ::core::marker::Copy for ND_OPTION_PREFIX_INFO_1 {} +impl ::core::clone::Clone for ND_OPTION_PREFIX_INFO_1 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ND_OPTION_PREFIX_INFO_1_0 { + pub nd_opt_pi_reserved3: [u8; 3], + pub nd_opt_pi_site_prefix_len: u8, +} +impl ::core::marker::Copy for ND_OPTION_PREFIX_INFO_1_0 {} +impl ::core::clone::Clone for ND_OPTION_PREFIX_INFO_1_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ND_OPTION_RDNSS { + pub nd_opt_rdnss_type: u8, + pub nd_opt_rdnss_len: u8, + pub nd_opt_rdnss_reserved: u16, + pub nd_opt_rdnss_lifetime: u32, +} +impl ::core::marker::Copy for ND_OPTION_RDNSS {} +impl ::core::clone::Clone for ND_OPTION_RDNSS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ND_OPTION_RD_HDR { + pub nd_opt_rh_type: u8, + pub nd_opt_rh_len: u8, + pub nd_opt_rh_reserved1: u16, + pub nd_opt_rh_reserved2: u32, +} +impl ::core::marker::Copy for ND_OPTION_RD_HDR {} +impl ::core::clone::Clone for ND_OPTION_RD_HDR { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ND_OPTION_ROUTE_INFO { + pub nd_opt_ri_type: u8, + pub nd_opt_ri_len: u8, + pub nd_opt_ri_prefix_len: u8, + pub Anonymous: ND_OPTION_ROUTE_INFO_0, + pub nd_opt_ri_route_lifetime: u32, + pub nd_opt_ri_prefix: IN6_ADDR, +} +impl ::core::marker::Copy for ND_OPTION_ROUTE_INFO {} +impl ::core::clone::Clone for ND_OPTION_ROUTE_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub union ND_OPTION_ROUTE_INFO_0 { + pub nd_opt_ri_flags_reserved: u8, + pub Flags: ND_OPTION_ROUTE_INFO_0_0, +} +impl ::core::marker::Copy for ND_OPTION_ROUTE_INFO_0 {} +impl ::core::clone::Clone for ND_OPTION_ROUTE_INFO_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ND_OPTION_ROUTE_INFO_0_0 { + pub _bitfield: u8, +} +impl ::core::marker::Copy for ND_OPTION_ROUTE_INFO_0_0 {} +impl ::core::clone::Clone for ND_OPTION_ROUTE_INFO_0_0 { + fn clone(&self) -> Self { + *self + } +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type ND_OPTION_TYPE = i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_SOURCE_LINKADDR: ND_OPTION_TYPE = 1i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_TARGET_LINKADDR: ND_OPTION_TYPE = 2i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_PREFIX_INFORMATION: ND_OPTION_TYPE = 3i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_REDIRECTED_HEADER: ND_OPTION_TYPE = 4i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_MTU: ND_OPTION_TYPE = 5i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_NBMA_SHORTCUT_LIMIT: ND_OPTION_TYPE = 6i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_ADVERTISEMENT_INTERVAL: ND_OPTION_TYPE = 7i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] pub const ND_OPT_HOME_AGENT_INFORMATION: ND_OPTION_TYPE = 8i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] @@ -4012,6 +4457,32 @@ pub const ND_RA_FLAG_MANAGED: u32 = 128u32; pub const ND_RA_FLAG_OTHER: u32 = 64u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] pub const ND_RA_FLAG_PREFERENCE: u32 = 24u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ND_REDIRECT_HEADER { + pub nd_rd_hdr: ICMP_MESSAGE, + pub nd_rd_target: IN6_ADDR, + pub nd_rd_dst: IN6_ADDR, +} +impl ::core::marker::Copy for ND_REDIRECT_HEADER {} +impl ::core::clone::Clone for ND_REDIRECT_HEADER { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ND_ROUTER_ADVERT_HEADER { + pub nd_ra_hdr: ICMP_MESSAGE, + pub nd_ra_reachable: u32, + pub nd_ra_retransmit: u32, +} +impl ::core::marker::Copy for ND_ROUTER_ADVERT_HEADER {} +impl ::core::clone::Clone for ND_ROUTER_ADVERT_HEADER { + fn clone(&self) -> Self { + *self + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] pub const NETBIOS_GROUP_NAME: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] @@ -7786,7 +8257,7 @@ pub const WSA_OPERATION_ABORTED: WSA_ERROR = 995i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] pub const WSA_WAIT_EVENT_0: WSA_ERROR = 0i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_WAIT_IO_COMPLETION: WSA_ERROR = 129i32; +pub const WSA_WAIT_IO_COMPLETION: WSA_ERROR = 192i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] pub const WSABASEERR: WSA_ERROR = 10000i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] @@ -8180,27 +8651,6 @@ pub const _SS_MAXSIZE: u32 = 128u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct addrinfoW { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows_sys::core::PWSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_next: *mut addrinfoW, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoW {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoW { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] pub struct addrinfo_dns_server { pub ai_servertype: u32, pub ai_flags: u64, @@ -8231,284 +8681,56 @@ impl ::core::clone::Clone for addrinfo_dns_server_0 { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfoex2A { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows_sys::core::PSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows_sys::core::GUID, - pub ai_next: *mut addrinfoex2A, - pub ai_version: i32, - pub ai_fqdn: ::windows_sys::core::PSTR, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct cmsghdr { + pub cmsg_len: usize, + pub cmsg_level: i32, + pub cmsg_type: i32, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoex2A {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoex2A { +impl ::core::marker::Copy for cmsghdr {} +impl ::core::clone::Clone for cmsghdr { fn clone(&self) -> Self { *self } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type eWINDOW_ADVANCE_METHOD = i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const E_WINDOW_ADVANCE_BY_TIME: eWINDOW_ADVANCE_METHOD = 1i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const E_WINDOW_USE_AS_DATA_CACHE: eWINDOW_ADVANCE_METHOD = 2i32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfoex2W { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows_sys::core::PWSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows_sys::core::GUID, - pub ai_next: *mut addrinfoex2W, - pub ai_version: i32, - pub ai_fqdn: ::windows_sys::core::PWSTR, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct fd_set { + pub fd_count: u32, + pub fd_array: [SOCKET; 64], } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoex2W {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoex2W { +impl ::core::marker::Copy for fd_set {} +impl ::core::clone::Clone for fd_set { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfoex3 { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows_sys::core::PWSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows_sys::core::GUID, - pub ai_next: *mut addrinfoex3, - pub ai_version: i32, - pub ai_fqdn: ::windows_sys::core::PWSTR, - pub ai_interfaceindex: i32, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct hostent { + pub h_name: ::windows_sys::core::PSTR, + pub h_aliases: *mut *mut i8, + pub h_addrtype: i16, + pub h_length: i16, + pub h_addr_list: *mut *mut i8, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoex3 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoex3 { +impl ::core::marker::Copy for hostent {} +impl ::core::clone::Clone for hostent { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfoex4 { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows_sys::core::PWSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows_sys::core::GUID, - pub ai_next: *mut addrinfoex4, - pub ai_version: i32, - pub ai_fqdn: ::windows_sys::core::PWSTR, - pub ai_interfaceindex: i32, - pub ai_resolutionhandle: super::super::Foundation::HANDLE, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoex4 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoex4 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfoex5 { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows_sys::core::PWSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows_sys::core::GUID, - pub ai_next: *mut addrinfoex5, - pub ai_version: i32, - pub ai_fqdn: ::windows_sys::core::PWSTR, - pub ai_interfaceindex: i32, - pub ai_resolutionhandle: super::super::Foundation::HANDLE, - pub ai_ttl: u32, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoex5 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoex5 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfoex6 { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows_sys::core::PWSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows_sys::core::GUID, - pub ai_next: *mut addrinfoex5, - pub ai_version: i32, - pub ai_fqdn: ::windows_sys::core::PWSTR, - pub ai_interfaceindex: i32, - pub ai_resolutionhandle: super::super::Foundation::HANDLE, - pub ai_ttl: u32, - pub ai_numservers: u32, - pub ai_servers: *mut addrinfo_dns_server, - pub ai_responseflags: u64, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoex6 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoex6 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfoexA { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows_sys::core::PSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows_sys::core::GUID, - pub ai_next: *mut addrinfoexA, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoexA {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoexA { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfoexW { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows_sys::core::PWSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows_sys::core::GUID, - pub ai_next: *mut addrinfoexW, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoexW {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoexW { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct cmsghdr { - pub cmsg_len: usize, - pub cmsg_level: i32, - pub cmsg_type: i32, -} -impl ::core::marker::Copy for cmsghdr {} -impl ::core::clone::Clone for cmsghdr { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type eWINDOW_ADVANCE_METHOD = i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const E_WINDOW_ADVANCE_BY_TIME: eWINDOW_ADVANCE_METHOD = 1i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const E_WINDOW_USE_AS_DATA_CACHE: eWINDOW_ADVANCE_METHOD = 2i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct fd_set { - pub fd_count: u32, - pub fd_array: [SOCKET; 64], -} -impl ::core::marker::Copy for fd_set {} -impl ::core::clone::Clone for fd_set { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct hostent { - pub h_name: ::windows_sys::core::PSTR, - pub h_aliases: *mut *mut i8, - pub h_addrtype: i16, - pub h_length: i16, - pub h_addr_list: *mut *mut i8, -} -impl ::core::marker::Copy for hostent {} -impl ::core::clone::Clone for hostent { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct in6_pktinfo_ex { - pub pkt_info: IN6_PKTINFO, - pub scope_id: SCOPE_ID, -} -impl ::core::marker::Copy for in6_pktinfo_ex {} -impl ::core::clone::Clone for in6_pktinfo_ex { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct linger { - pub l_onoff: u16, - pub l_linger: u16, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct linger { + pub l_onoff: u16, + pub l_linger: u16, } impl ::core::marker::Copy for linger {} impl ::core::clone::Clone for linger { @@ -8518,228 +8740,6 @@ impl ::core::clone::Clone for linger { } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_neighbor_advert { - pub nd_na_hdr: ICMP_MESSAGE, - pub nd_na_target: IN6_ADDR, -} -impl ::core::marker::Copy for nd_neighbor_advert {} -impl ::core::clone::Clone for nd_neighbor_advert { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_neighbor_solicit { - pub nd_ns_hdr: ICMP_MESSAGE, - pub nd_ns_target: IN6_ADDR, -} -impl ::core::marker::Copy for nd_neighbor_solicit {} -impl ::core::clone::Clone for nd_neighbor_solicit { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_dnssl { - pub nd_opt_dnssl_type: u8, - pub nd_opt_dnssl_len: u8, - pub nd_opt_dnssl_reserved: u16, - pub nd_opt_dnssl_lifetime: u32, -} -impl ::core::marker::Copy for nd_opt_dnssl {} -impl ::core::clone::Clone for nd_opt_dnssl { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_hdr { - pub nd_opt_type: u8, - pub nd_opt_len: u8, -} -impl ::core::marker::Copy for nd_opt_hdr {} -impl ::core::clone::Clone for nd_opt_hdr { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_mtu { - pub nd_opt_mtu_type: u8, - pub nd_opt_mtu_len: u8, - pub nd_opt_mtu_reserved: u16, - pub nd_opt_mtu_mtu: u32, -} -impl ::core::marker::Copy for nd_opt_mtu {} -impl ::core::clone::Clone for nd_opt_mtu { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_prefix_info { - pub nd_opt_pi_type: u8, - pub nd_opt_pi_len: u8, - pub nd_opt_pi_prefix_len: u8, - pub Anonymous1: nd_opt_prefix_info_0, - pub nd_opt_pi_valid_time: u32, - pub nd_opt_pi_preferred_time: u32, - pub Anonymous2: nd_opt_prefix_info_1, - pub nd_opt_pi_prefix: IN6_ADDR, -} -impl ::core::marker::Copy for nd_opt_prefix_info {} -impl ::core::clone::Clone for nd_opt_prefix_info { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union nd_opt_prefix_info_0 { - pub nd_opt_pi_flags_reserved: u8, - pub Flags: nd_opt_prefix_info_0_0, -} -impl ::core::marker::Copy for nd_opt_prefix_info_0 {} -impl ::core::clone::Clone for nd_opt_prefix_info_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_prefix_info_0_0 { - pub _bitfield: u8, -} -impl ::core::marker::Copy for nd_opt_prefix_info_0_0 {} -impl ::core::clone::Clone for nd_opt_prefix_info_0_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union nd_opt_prefix_info_1 { - pub nd_opt_pi_reserved2: u32, - pub Anonymous: nd_opt_prefix_info_1_0, -} -impl ::core::marker::Copy for nd_opt_prefix_info_1 {} -impl ::core::clone::Clone for nd_opt_prefix_info_1 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_prefix_info_1_0 { - pub nd_opt_pi_reserved3: [u8; 3], - pub nd_opt_pi_site_prefix_len: u8, -} -impl ::core::marker::Copy for nd_opt_prefix_info_1_0 {} -impl ::core::clone::Clone for nd_opt_prefix_info_1_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_rd_hdr { - pub nd_opt_rh_type: u8, - pub nd_opt_rh_len: u8, - pub nd_opt_rh_reserved1: u16, - pub nd_opt_rh_reserved2: u32, -} -impl ::core::marker::Copy for nd_opt_rd_hdr {} -impl ::core::clone::Clone for nd_opt_rd_hdr { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_rdnss { - pub nd_opt_rdnss_type: u8, - pub nd_opt_rdnss_len: u8, - pub nd_opt_rdnss_reserved: u16, - pub nd_opt_rdnss_lifetime: u32, -} -impl ::core::marker::Copy for nd_opt_rdnss {} -impl ::core::clone::Clone for nd_opt_rdnss { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_route_info { - pub nd_opt_ri_type: u8, - pub nd_opt_ri_len: u8, - pub nd_opt_ri_prefix_len: u8, - pub Anonymous: nd_opt_route_info_0, - pub nd_opt_ri_route_lifetime: u32, - pub nd_opt_ri_prefix: IN6_ADDR, -} -impl ::core::marker::Copy for nd_opt_route_info {} -impl ::core::clone::Clone for nd_opt_route_info { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union nd_opt_route_info_0 { - pub nd_opt_ri_flags_reserved: u8, - pub Flags: nd_opt_route_info_0_0, -} -impl ::core::marker::Copy for nd_opt_route_info_0 {} -impl ::core::clone::Clone for nd_opt_route_info_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_route_info_0_0 { - pub _bitfield: u8, -} -impl ::core::marker::Copy for nd_opt_route_info_0_0 {} -impl ::core::clone::Clone for nd_opt_route_info_0_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_redirect { - pub nd_rd_hdr: ICMP_MESSAGE, - pub nd_rd_target: IN6_ADDR, - pub nd_rd_dst: IN6_ADDR, -} -impl ::core::marker::Copy for nd_redirect {} -impl ::core::clone::Clone for nd_redirect { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_router_advert { - pub nd_ra_hdr: ICMP_MESSAGE, - pub nd_ra_reachable: u32, - pub nd_ra_retransmit: u32, -} -impl ::core::marker::Copy for nd_router_advert {} -impl ::core::clone::Clone for nd_router_advert { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] pub struct nd_router_solicit { pub nd_rs_hdr: ICMP_MESSAGE, } diff --git a/crates/libs/sys/src/Windows/Win32/Security/Authentication/Identity/mod.rs b/crates/libs/sys/src/Windows/Win32/Security/Authentication/Identity/mod.rs index aa9cf9fefb..cde45763f7 100644 --- a/crates/libs/sys/src/Windows/Win32/Security/Authentication/Identity/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Security/Authentication/Identity/mod.rs @@ -4,7 +4,7 @@ pub mod Provider; extern "system" { #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] - pub fn AcceptSecurityContext(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, pinput: *const SecBufferDesc, fcontextreq: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ, targetdatarep: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows_sys::core::HRESULT; + pub fn AcceptSecurityContext(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, pinput: *const SecBufferDesc, fcontextreq: ASC_REQ_FLAGS, targetdatarep: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] pub fn AcquireCredentialsHandleA(pszprincipal: ::windows_sys::core::PCSTR, pszpackage: ::windows_sys::core::PCSTR, fcredentialuse: SECPKG_CRED, pvlogonid: *const ::core::ffi::c_void, pauthdata: *const ::core::ffi::c_void, pgetkeyfn: SEC_GET_KEY_FN, pvgetkeyargument: *const ::core::ffi::c_void, phcredential: *mut super::super::Credentials::SecHandle, ptsexpiry: *mut i64) -> ::windows_sys::core::HRESULT; @@ -158,10 +158,10 @@ extern "system" { pub fn InitSecurityInterfaceW() -> *mut SecurityFunctionTableW; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] - pub fn InitializeSecurityContextA(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: *const i8, fcontextreq: u32, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows_sys::core::HRESULT; + pub fn InitializeSecurityContextA(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: *const i8, fcontextreq: ISC_REQ_FLAGS, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] - pub fn InitializeSecurityContextW(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: *const u16, fcontextreq: u32, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows_sys::core::HRESULT; + pub fn InitializeSecurityContextW(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: *const u16, fcontextreq: ISC_REQ_FLAGS, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn LsaAddAccountRights(policyhandle: *const ::core::ffi::c_void, accountsid: super::super::super::Foundation::PSID, userrights: *const super::super::super::Foundation::UNICODE_STRING, countofrights: u32) -> super::super::super::Foundation::NTSTATUS; @@ -408,7 +408,7 @@ extern "system" { pub fn SLUnregisterEvent(hslc: *const ::core::ffi::c_void, pwszeventid: ::windows_sys::core::PCWSTR, papplicationid: *const ::windows_sys::core::GUID, hevent: super::super::super::Foundation::HANDLE) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] - pub fn SaslAcceptSecurityContext(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, pinput: *const SecBufferDesc, fcontextreq: u32, targetdatarep: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows_sys::core::HRESULT; + pub fn SaslAcceptSecurityContext(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, pinput: *const SecBufferDesc, fcontextreq: ASC_REQ_FLAGS, targetdatarep: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] pub fn SaslEnumerateProfilesA(profilelist: *mut ::windows_sys::core::PSTR, profilecount: *mut u32) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] @@ -426,10 +426,10 @@ extern "system" { pub fn SaslIdentifyPackageW(pinput: *const SecBufferDesc, packageinfo: *mut *mut SecPkgInfoW) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] - pub fn SaslInitializeSecurityContextA(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: ::windows_sys::core::PCSTR, fcontextreq: u32, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows_sys::core::HRESULT; + pub fn SaslInitializeSecurityContextA(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: ::windows_sys::core::PCSTR, fcontextreq: ISC_REQ_FLAGS, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] - pub fn SaslInitializeSecurityContextW(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: ::windows_sys::core::PCWSTR, fcontextreq: u32, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows_sys::core::HRESULT; + pub fn SaslInitializeSecurityContextW(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: ::windows_sys::core::PCWSTR, fcontextreq: ISC_REQ_FLAGS, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] pub fn SaslSetContextOption(contexthandle: *const super::super::Credentials::SecHandle, option: u32, value: *const ::core::ffi::c_void, size: u32) -> ::windows_sys::core::HRESULT; @@ -551,22 +551,6 @@ extern "system" { #[cfg(feature = "Win32_Security_Credentials")] pub fn VerifySignature(phcontext: *const super::super::Credentials::SecHandle, pmessage: *const SecBufferDesc, messageseqno: u32, pfqop: *mut u32) -> ::windows_sys::core::HRESULT; } -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub type ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_ALLOCATE_MEMORY: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = 256u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_CONNECTION: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = 2048u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_DELEGATE: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = 1u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_EXTENDED_ERROR: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = 32768u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_REPLAY_DETECT: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = 4u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_SEQUENCE_DETECT: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = 8u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_STREAM: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = 65536u32; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] pub type ACCEPT_SECURITY_CONTEXT_FN = ::core::option::Option ::windows_sys::core::HRESULT>; @@ -594,43 +578,59 @@ pub type ADD_CREDENTIALS_FN_W = ::core::option::Option ::windows_sys::core::HRESULT>; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_ALLOW_CONTEXT_REPLAY: u32 = 4194304u32; +pub type ASC_REQ_FLAGS = u64; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_DELEGATE: ASC_REQ_FLAGS = 1u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_ALLOW_MISSING_BINDINGS: u32 = 268435456u32; +pub const ASC_REQ_MUTUAL_AUTH: ASC_REQ_FLAGS = 2u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_ALLOW_NON_USER_LOGONS: u32 = 2097152u32; +pub const ASC_REQ_REPLAY_DETECT: ASC_REQ_FLAGS = 4u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_ALLOW_NULL_SESSION: u32 = 1048576u32; +pub const ASC_REQ_SEQUENCE_DETECT: ASC_REQ_FLAGS = 8u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_CALL_LEVEL: u32 = 4096u32; +pub const ASC_REQ_CONFIDENTIALITY: ASC_REQ_FLAGS = 16u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_CONFIDENTIALITY: u32 = 16u32; +pub const ASC_REQ_USE_SESSION_KEY: ASC_REQ_FLAGS = 32u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_DATAGRAM: u32 = 1024u32; +pub const ASC_REQ_SESSION_TICKET: ASC_REQ_FLAGS = 64u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_FRAGMENT_SUPPLIED: u32 = 8192u32; +pub const ASC_REQ_ALLOCATE_MEMORY: ASC_REQ_FLAGS = 256u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_FRAGMENT_TO_FIT: u32 = 8388608u32; +pub const ASC_REQ_USE_DCE_STYLE: ASC_REQ_FLAGS = 512u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_IDENTIFY: u32 = 524288u32; +pub const ASC_REQ_DATAGRAM: ASC_REQ_FLAGS = 1024u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_INTEGRITY: u32 = 131072u32; +pub const ASC_REQ_CONNECTION: ASC_REQ_FLAGS = 2048u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_LICENSING: u32 = 262144u32; +pub const ASC_REQ_CALL_LEVEL: ASC_REQ_FLAGS = 4096u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_MESSAGES: u64 = 4294967296u64; +pub const ASC_REQ_FRAGMENT_SUPPLIED: ASC_REQ_FLAGS = 8192u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_MUTUAL_AUTH: u32 = 2u32; +pub const ASC_REQ_EXTENDED_ERROR: ASC_REQ_FLAGS = 32768u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_NO_TOKEN: u32 = 16777216u32; +pub const ASC_REQ_STREAM: ASC_REQ_FLAGS = 65536u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_PROXY_BINDINGS: u32 = 67108864u32; +pub const ASC_REQ_INTEGRITY: ASC_REQ_FLAGS = 131072u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_SESSION_TICKET: u32 = 64u32; +pub const ASC_REQ_LICENSING: ASC_REQ_FLAGS = 262144u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_USE_DCE_STYLE: u32 = 512u32; +pub const ASC_REQ_IDENTIFY: ASC_REQ_FLAGS = 524288u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_USE_SESSION_KEY: u32 = 32u32; +pub const ASC_REQ_ALLOW_NULL_SESSION: ASC_REQ_FLAGS = 1048576u64; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_ALLOW_NON_USER_LOGONS: ASC_REQ_FLAGS = 2097152u64; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_ALLOW_CONTEXT_REPLAY: ASC_REQ_FLAGS = 4194304u64; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_FRAGMENT_TO_FIT: ASC_REQ_FLAGS = 8388608u64; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_NO_TOKEN: ASC_REQ_FLAGS = 16777216u64; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_PROXY_BINDINGS: ASC_REQ_FLAGS = 67108864u64; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_ALLOW_MISSING_BINDINGS: ASC_REQ_FLAGS = 268435456u64; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_MESSAGES: ASC_REQ_FLAGS = 4294967296u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] pub const ASC_RET_ALLOCATED_MEMORY: u32 = 256u32; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] @@ -1061,63 +1061,65 @@ pub type INIT_SECURITY_INTERFACE_A = ::core::option::Option *mut SecurityFunctionTableW>; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_ALLOCATE_MEMORY: u32 = 256u32; +pub type ISC_REQ_FLAGS = u64; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ISC_REQ_DELEGATE: ISC_REQ_FLAGS = 1u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_CALL_LEVEL: u32 = 4096u32; +pub const ISC_REQ_MUTUAL_AUTH: ISC_REQ_FLAGS = 2u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_CONFIDENTIALITY: u32 = 16u32; +pub const ISC_REQ_REPLAY_DETECT: ISC_REQ_FLAGS = 4u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_CONFIDENTIALITY_ONLY: u32 = 1073741824u32; +pub const ISC_REQ_SEQUENCE_DETECT: ISC_REQ_FLAGS = 8u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_CONNECTION: u32 = 2048u32; +pub const ISC_REQ_CONFIDENTIALITY: ISC_REQ_FLAGS = 16u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_DATAGRAM: u32 = 1024u32; +pub const ISC_REQ_USE_SESSION_KEY: ISC_REQ_FLAGS = 32u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_DEFERRED_CRED_VALIDATION: u64 = 8589934592u64; +pub const ISC_REQ_PROMPT_FOR_CREDS: ISC_REQ_FLAGS = 64u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_DELEGATE: u32 = 1u32; +pub const ISC_REQ_USE_SUPPLIED_CREDS: ISC_REQ_FLAGS = 128u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_EXTENDED_ERROR: u32 = 16384u32; +pub const ISC_REQ_ALLOCATE_MEMORY: ISC_REQ_FLAGS = 256u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_FORWARD_CREDENTIALS: u32 = 4194304u32; +pub const ISC_REQ_USE_DCE_STYLE: ISC_REQ_FLAGS = 512u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_FRAGMENT_SUPPLIED: u32 = 8192u32; +pub const ISC_REQ_DATAGRAM: ISC_REQ_FLAGS = 1024u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_FRAGMENT_TO_FIT: u32 = 2097152u32; +pub const ISC_REQ_CONNECTION: ISC_REQ_FLAGS = 2048u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_IDENTIFY: u32 = 131072u32; +pub const ISC_REQ_CALL_LEVEL: ISC_REQ_FLAGS = 4096u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_INTEGRITY: u32 = 65536u32; +pub const ISC_REQ_FRAGMENT_SUPPLIED: ISC_REQ_FLAGS = 8192u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_MANUAL_CRED_VALIDATION: u32 = 524288u32; +pub const ISC_REQ_EXTENDED_ERROR: ISC_REQ_FLAGS = 16384u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_MESSAGES: u64 = 4294967296u64; +pub const ISC_REQ_STREAM: ISC_REQ_FLAGS = 32768u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_MUTUAL_AUTH: u32 = 2u32; +pub const ISC_REQ_INTEGRITY: ISC_REQ_FLAGS = 65536u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_NO_INTEGRITY: u32 = 8388608u32; +pub const ISC_REQ_IDENTIFY: ISC_REQ_FLAGS = 131072u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_NULL_SESSION: u32 = 262144u32; +pub const ISC_REQ_NULL_SESSION: ISC_REQ_FLAGS = 262144u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_PROMPT_FOR_CREDS: u32 = 64u32; +pub const ISC_REQ_MANUAL_CRED_VALIDATION: ISC_REQ_FLAGS = 524288u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_REPLAY_DETECT: u32 = 4u32; +pub const ISC_REQ_RESERVED1: ISC_REQ_FLAGS = 1048576u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_RESERVED1: u32 = 1048576u32; +pub const ISC_REQ_FRAGMENT_TO_FIT: ISC_REQ_FLAGS = 2097152u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_SEQUENCE_DETECT: u32 = 8u32; +pub const ISC_REQ_FORWARD_CREDENTIALS: ISC_REQ_FLAGS = 4194304u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_STREAM: u32 = 32768u32; +pub const ISC_REQ_NO_INTEGRITY: ISC_REQ_FLAGS = 8388608u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_UNVERIFIED_TARGET_NAME: u32 = 536870912u32; +pub const ISC_REQ_USE_HTTP_STYLE: ISC_REQ_FLAGS = 16777216u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_USE_DCE_STYLE: u32 = 512u32; +pub const ISC_REQ_UNVERIFIED_TARGET_NAME: ISC_REQ_FLAGS = 536870912u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_USE_HTTP_STYLE: u32 = 16777216u32; +pub const ISC_REQ_CONFIDENTIALITY_ONLY: ISC_REQ_FLAGS = 1073741824u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_USE_SESSION_KEY: u32 = 32u32; +pub const ISC_REQ_MESSAGES: ISC_REQ_FLAGS = 4294967296u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_USE_SUPPLIED_CREDS: u32 = 128u32; +pub const ISC_REQ_DEFERRED_CRED_VALIDATION: ISC_REQ_FLAGS = 8589934592u64; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] pub const ISC_RET_ALLOCATED_MEMORY: u32 = 256u32; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] diff --git a/crates/libs/sys/src/Windows/Win32/Security/Authorization/mod.rs b/crates/libs/sys/src/Windows/Win32/Security/Authorization/mod.rs index 5420d2a219..a266103ee5 100644 --- a/crates/libs/sys/src/Windows/Win32/Security/Authorization/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Security/Authorization/mod.rs @@ -7,7 +7,7 @@ extern "system" { pub fn AuthzAccessCheck(flags: AUTHZ_ACCESS_CHECK_FLAGS, hauthzclientcontext: AUTHZ_CLIENT_CONTEXT_HANDLE, prequest: *const AUTHZ_ACCESS_REQUEST, hauditevent: AUTHZ_AUDIT_EVENT_HANDLE, psecuritydescriptor: super::PSECURITY_DESCRIPTOR, optionalsecuritydescriptorarray: *const super::PSECURITY_DESCRIPTOR, optionalsecuritydescriptorcount: u32, preply: *mut AUTHZ_ACCESS_REPLY, phaccesscheckresults: *mut isize) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Security_Authorization\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn AuthzAddSidsToContext(hauthzclientcontext: AUTHZ_CLIENT_CONTEXT_HANDLE, sids: *const super::SID_AND_ATTRIBUTES, sidcount: u32, restrictedsids: *const super::SID_AND_ATTRIBUTES, restrictedsidcount: u32, phnewauthzclientcontext: *mut isize) -> super::super::Foundation::BOOL; + pub fn AuthzAddSidsToContext(hauthzclientcontext: AUTHZ_CLIENT_CONTEXT_HANDLE, sids: *const super::SID_AND_ATTRIBUTES, sidcount: u32, restrictedsids: *const super::SID_AND_ATTRIBUTES, restrictedsidcount: u32, phnewauthzclientcontext: *mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Security_Authorization\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn AuthzCachedAccessCheck(flags: u32, haccesscheckresults: AUTHZ_ACCESS_CHECK_RESULTS_HANDLE, prequest: *const AUTHZ_ACCESS_REQUEST, hauditevent: AUTHZ_AUDIT_EVENT_HANDLE, preply: *mut AUTHZ_ACCESS_REPLY) -> super::super::Foundation::BOOL; @@ -37,16 +37,16 @@ extern "system" { pub fn AuthzGetInformationFromContext(hauthzclientcontext: AUTHZ_CLIENT_CONTEXT_HANDLE, infoclass: AUTHZ_CONTEXT_INFORMATION_CLASS, buffersize: u32, psizerequired: *mut u32, buffer: *mut ::core::ffi::c_void) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Security_Authorization\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn AuthzInitializeCompoundContext(usercontext: AUTHZ_CLIENT_CONTEXT_HANDLE, devicecontext: AUTHZ_CLIENT_CONTEXT_HANDLE, phcompoundcontext: *mut isize) -> super::super::Foundation::BOOL; + pub fn AuthzInitializeCompoundContext(usercontext: AUTHZ_CLIENT_CONTEXT_HANDLE, devicecontext: AUTHZ_CLIENT_CONTEXT_HANDLE, phcompoundcontext: *mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Security_Authorization\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn AuthzInitializeContextFromAuthzContext(flags: u32, hauthzclientcontext: AUTHZ_CLIENT_CONTEXT_HANDLE, pexpirationtime: *const i64, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phnewauthzclientcontext: *mut isize) -> super::super::Foundation::BOOL; + pub fn AuthzInitializeContextFromAuthzContext(flags: u32, hauthzclientcontext: AUTHZ_CLIENT_CONTEXT_HANDLE, pexpirationtime: *const i64, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phnewauthzclientcontext: *mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Security_Authorization\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn AuthzInitializeContextFromSid(flags: u32, usersid: super::super::Foundation::PSID, hauthzresourcemanager: AUTHZ_RESOURCE_MANAGER_HANDLE, pexpirationtime: *const i64, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phauthzclientcontext: *mut isize) -> super::super::Foundation::BOOL; + pub fn AuthzInitializeContextFromSid(flags: u32, usersid: super::super::Foundation::PSID, hauthzresourcemanager: AUTHZ_RESOURCE_MANAGER_HANDLE, pexpirationtime: *const i64, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phauthzclientcontext: *mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Security_Authorization\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn AuthzInitializeContextFromToken(flags: u32, tokenhandle: super::super::Foundation::HANDLE, hauthzresourcemanager: AUTHZ_RESOURCE_MANAGER_HANDLE, pexpirationtime: *const i64, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phauthzclientcontext: *mut isize) -> super::super::Foundation::BOOL; + pub fn AuthzInitializeContextFromToken(flags: u32, tokenhandle: super::super::Foundation::HANDLE, hauthzresourcemanager: AUTHZ_RESOURCE_MANAGER_HANDLE, pexpirationtime: *const i64, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phauthzclientcontext: *mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Security_Authorization\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn AuthzInitializeObjectAccessAuditEvent(flags: AUTHZ_INITIALIZE_OBJECT_ACCESS_AUDIT_EVENT_FLAGS, hauditeventtype: AUTHZ_AUDIT_EVENT_TYPE_HANDLE, szoperationtype: ::windows_sys::core::PCWSTR, szobjecttype: ::windows_sys::core::PCWSTR, szobjectname: ::windows_sys::core::PCWSTR, szadditionalinfo: ::windows_sys::core::PCWSTR, phauditevent: *mut isize, dwadditionalparametercount: u32) -> super::super::Foundation::BOOL; diff --git a/crates/libs/sys/src/Windows/Win32/Security/Credentials/mod.rs b/crates/libs/sys/src/Windows/Win32/Security/Credentials/mod.rs index 3eb0555914..11be03b9b6 100644 --- a/crates/libs/sys/src/Windows/Win32/Security/Credentials/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Security/Credentials/mod.rs @@ -603,10 +603,14 @@ impl ::core::clone::Clone for CREDUI_INFOW { #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CREDUI_MAX_CAPTION_LENGTH: u32 = 128u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] +pub const CREDUI_MAX_DOMAIN_TARGET_LENGTH: u32 = 337u32; +#[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CREDUI_MAX_GENERIC_TARGET_LENGTH: u32 = 32767u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CREDUI_MAX_MESSAGE_LENGTH: u32 = 1024u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] +pub const CREDUI_MAX_USERNAME_LENGTH: u32 = 513u32; +#[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CRED_ALLOW_NAME_RESOLUTION: u32 = 1u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CRED_CACHE_TARGET_INFORMATION: u32 = 1u32; @@ -653,6 +657,10 @@ pub const BinaryBlobForSystem: CRED_MARSHAL_TYPE = 5i32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CRED_MAX_ATTRIBUTES: u32 = 64u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] +pub const CRED_MAX_CREDENTIAL_BLOB_SIZE: u32 = 2560u32; +#[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] +pub const CRED_MAX_DOMAIN_TARGET_NAME_LENGTH: u32 = 337u32; +#[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CRED_MAX_GENERIC_TARGET_NAME_LENGTH: u32 = 32767u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CRED_MAX_STRING_LENGTH: u32 = 256u32; @@ -661,6 +669,8 @@ pub const CRED_MAX_TARGETNAME_ATTRIBUTE_LENGTH: u32 = 256u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CRED_MAX_TARGETNAME_NAMESPACE_LENGTH: u32 = 256u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] +pub const CRED_MAX_USERNAME_LENGTH: u32 = 513u32; +#[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CRED_MAX_VALUE_SIZE: u32 = 256u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub type CRED_PACK_FLAGS = u32; diff --git a/crates/libs/sys/src/Windows/Win32/Security/Cryptography/mod.rs b/crates/libs/sys/src/Windows/Win32/Security/Cryptography/mod.rs index 802dd9567e..cb88f7c67f 100644 --- a/crates/libs/sys/src/Windows/Win32/Security/Cryptography/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Security/Cryptography/mod.rs @@ -25,10 +25,10 @@ extern "system" { pub fn BCryptCreateContext(dwtable: BCRYPT_TABLE, pszcontext: ::windows_sys::core::PCWSTR, pconfig: *const CRYPT_CONTEXT_CONFIG) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BCryptCreateHash(halgorithm: BCRYPT_ALG_HANDLE, phhash: *mut *mut ::core::ffi::c_void, pbhashobject: *mut u8, cbhashobject: u32, pbsecret: *const u8, cbsecret: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + pub fn BCryptCreateHash(halgorithm: BCRYPT_ALG_HANDLE, phhash: *mut BCRYPT_HASH_HANDLE, pbhashobject: *mut u8, cbhashobject: u32, pbsecret: *const u8, cbsecret: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BCryptCreateMultiHash(halgorithm: BCRYPT_ALG_HANDLE, phhash: *mut *mut ::core::ffi::c_void, nhashes: u32, pbhashobject: *mut u8, cbhashobject: u32, pbsecret: *const u8, cbsecret: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + pub fn BCryptCreateMultiHash(halgorithm: BCRYPT_ALG_HANDLE, phhash: *mut BCRYPT_HASH_HANDLE, nhashes: u32, pbhashobject: *mut u8, cbhashobject: u32, pbsecret: *const u8, cbsecret: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BCryptDecrypt(hkey: BCRYPT_KEY_HANDLE, pbinput: *const u8, cbinput: u32, ppaddinginfo: *const ::core::ffi::c_void, pbiv: *mut u8, cbiv: u32, pboutput: *mut u8, cboutput: u32, pcbresult: *mut u32, dwflags: NCRYPT_FLAGS) -> super::super::Foundation::NTSTATUS; @@ -37,25 +37,25 @@ extern "system" { pub fn BCryptDeleteContext(dwtable: BCRYPT_TABLE, pszcontext: ::windows_sys::core::PCWSTR) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BCryptDeriveKey(hsharedsecret: *const ::core::ffi::c_void, pwszkdf: ::windows_sys::core::PCWSTR, pparameterlist: *const BCryptBufferDesc, pbderivedkey: *mut u8, cbderivedkey: u32, pcbresult: *mut u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + pub fn BCryptDeriveKey(hsharedsecret: BCRYPT_SECRET_HANDLE, pwszkdf: ::windows_sys::core::PCWSTR, pparameterlist: *const BCryptBufferDesc, pbderivedkey: *mut u8, cbderivedkey: u32, pcbresult: *mut u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BCryptDeriveKeyCapi(hhash: *const ::core::ffi::c_void, htargetalg: BCRYPT_ALG_HANDLE, pbderivedkey: *mut u8, cbderivedkey: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + pub fn BCryptDeriveKeyCapi(hhash: BCRYPT_HASH_HANDLE, htargetalg: BCRYPT_ALG_HANDLE, pbderivedkey: *mut u8, cbderivedkey: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BCryptDeriveKeyPBKDF2(hprf: BCRYPT_ALG_HANDLE, pbpassword: *const u8, cbpassword: u32, pbsalt: *const u8, cbsalt: u32, citerations: u64, pbderivedkey: *mut u8, cbderivedkey: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BCryptDestroyHash(hhash: *mut ::core::ffi::c_void) -> super::super::Foundation::NTSTATUS; + pub fn BCryptDestroyHash(hhash: BCRYPT_HASH_HANDLE) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BCryptDestroyKey(hkey: BCRYPT_KEY_HANDLE) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BCryptDestroySecret(hsecret: *mut ::core::ffi::c_void) -> super::super::Foundation::NTSTATUS; + pub fn BCryptDestroySecret(hsecret: BCRYPT_SECRET_HANDLE) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BCryptDuplicateHash(hhash: *const ::core::ffi::c_void, phnewhash: *mut *mut ::core::ffi::c_void, pbhashobject: *mut u8, cbhashobject: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + pub fn BCryptDuplicateHash(hhash: BCRYPT_HASH_HANDLE, phnewhash: *mut BCRYPT_HASH_HANDLE, pbhashobject: *mut u8, cbhashobject: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BCryptDuplicateKey(hkey: BCRYPT_KEY_HANDLE, phnewkey: *mut BCRYPT_KEY_HANDLE, pbkeyobject: *mut u8, cbkeyobject: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; @@ -88,7 +88,7 @@ extern "system" { pub fn BCryptFinalizeKeyPair(hkey: BCRYPT_KEY_HANDLE, dwflags: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BCryptFinishHash(hhash: *mut ::core::ffi::c_void, pboutput: *mut u8, cboutput: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + pub fn BCryptFinishHash(hhash: BCRYPT_HASH_HANDLE, pboutput: *mut u8, cboutput: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] pub fn BCryptFreeBuffer(pvbuffer: *const ::core::ffi::c_void); #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] @@ -105,13 +105,13 @@ extern "system" { pub fn BCryptGetFipsAlgorithmMode(pfenabled: *mut u8) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BCryptGetProperty(hobject: *const ::core::ffi::c_void, pszproperty: ::windows_sys::core::PCWSTR, pboutput: *mut u8, cboutput: u32, pcbresult: *mut u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + pub fn BCryptGetProperty(hobject: BCRYPT_HANDLE, pszproperty: ::windows_sys::core::PCWSTR, pboutput: *mut u8, cboutput: u32, pcbresult: *mut u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BCryptHash(halgorithm: BCRYPT_ALG_HANDLE, pbsecret: *const u8, cbsecret: u32, pbinput: *const u8, cbinput: u32, pboutput: *mut u8, cboutput: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BCryptHashData(hhash: *mut ::core::ffi::c_void, pbinput: *const u8, cbinput: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + pub fn BCryptHashData(hhash: BCRYPT_HASH_HANDLE, pbinput: *const u8, cbinput: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BCryptImportKey(halgorithm: BCRYPT_ALG_HANDLE, himportkey: BCRYPT_KEY_HANDLE, pszblobtype: ::windows_sys::core::PCWSTR, phkey: *mut BCRYPT_KEY_HANDLE, pbkeyobject: *mut u8, cbkeyobject: u32, pbinput: *const u8, cbinput: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; @@ -126,7 +126,7 @@ extern "system" { pub fn BCryptOpenAlgorithmProvider(phalgorithm: *mut BCRYPT_ALG_HANDLE, pszalgid: ::windows_sys::core::PCWSTR, pszimplementation: ::windows_sys::core::PCWSTR, dwflags: BCRYPT_OPEN_ALGORITHM_PROVIDER_FLAGS) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BCryptProcessMultiOperations(hobject: *mut ::core::ffi::c_void, operationtype: BCRYPT_MULTI_OPERATION_TYPE, poperations: *const ::core::ffi::c_void, cboperations: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + pub fn BCryptProcessMultiOperations(hobject: BCRYPT_HANDLE, operationtype: BCRYPT_MULTI_OPERATION_TYPE, poperations: *const ::core::ffi::c_void, cboperations: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BCryptQueryContextConfiguration(dwtable: BCRYPT_TABLE, pszcontext: ::windows_sys::core::PCWSTR, pcbbuffer: *mut u32, ppbuffer: *mut *mut CRYPT_CONTEXT_CONFIG) -> super::super::Foundation::NTSTATUS; @@ -150,13 +150,13 @@ extern "system" { pub fn BCryptResolveProviders(pszcontext: ::windows_sys::core::PCWSTR, dwinterface: u32, pszfunction: ::windows_sys::core::PCWSTR, pszprovider: ::windows_sys::core::PCWSTR, dwmode: BCRYPT_QUERY_PROVIDER_MODE, dwflags: BCRYPT_RESOLVE_PROVIDERS_FLAGS, pcbbuffer: *mut u32, ppbuffer: *mut *mut CRYPT_PROVIDER_REFS) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BCryptSecretAgreement(hprivkey: BCRYPT_KEY_HANDLE, hpubkey: BCRYPT_KEY_HANDLE, phagreedsecret: *mut *mut ::core::ffi::c_void, dwflags: u32) -> super::super::Foundation::NTSTATUS; + pub fn BCryptSecretAgreement(hprivkey: BCRYPT_KEY_HANDLE, hpubkey: BCRYPT_KEY_HANDLE, phagreedsecret: *mut BCRYPT_SECRET_HANDLE, dwflags: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BCryptSetContextFunctionProperty(dwtable: BCRYPT_TABLE, pszcontext: ::windows_sys::core::PCWSTR, dwinterface: BCRYPT_INTERFACE, pszfunction: ::windows_sys::core::PCWSTR, pszproperty: ::windows_sys::core::PCWSTR, cbvalue: u32, pbvalue: *const u8) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BCryptSetProperty(hobject: *mut ::core::ffi::c_void, pszproperty: ::windows_sys::core::PCWSTR, pbinput: *const u8, cbinput: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + pub fn BCryptSetProperty(hobject: BCRYPT_HANDLE, pszproperty: ::windows_sys::core::PCWSTR, pbinput: *const u8, cbinput: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BCryptSignHash(hkey: BCRYPT_KEY_HANDLE, ppaddinginfo: *const ::core::ffi::c_void, pbinput: *const u8, cbinput: u32, pboutput: *mut u8, cboutput: u32, pcbresult: *mut u32, dwflags: NCRYPT_FLAGS) -> super::super::Foundation::NTSTATUS; @@ -1812,8 +1812,10 @@ pub const BCRYPT_EXTENDED_KEYSIZE: u32 = 128u32; pub const BCRYPT_GENERATE_IV: u32 = 32u32; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] pub const BCRYPT_GLOBAL_PARAMETERS: &str = "SecretAgreementParam"; +pub type BCRYPT_HANDLE = isize; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] pub const BCRYPT_HASH_BLOCK_LENGTH: &str = "HashBlockLength"; +pub type BCRYPT_HASH_HANDLE = isize; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] pub const BCRYPT_HASH_INTERFACE_MAJORVERSION_2: u32 = 2u32; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] @@ -2217,6 +2219,7 @@ pub const BCRYPT_RSA_ALG_HANDLE: BCRYPT_ALG_HANDLE = 225u32 as _; pub const BCRYPT_RSA_SIGN_ALGORITHM: &str = "RSA_SIGN"; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] pub const BCRYPT_RSA_SIGN_ALG_HANDLE: BCRYPT_ALG_HANDLE = 785u32 as _; +pub type BCRYPT_SECRET_HANDLE = isize; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] pub const BCRYPT_SHA1_ALGORITHM: &str = "SHA1"; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] diff --git a/crates/libs/sys/src/Windows/Win32/Security/EnterpriseData/mod.rs b/crates/libs/sys/src/Windows/Win32/Security/EnterpriseData/mod.rs index 3d493c76c7..a67747c68c 100644 --- a/crates/libs/sys/src/Windows/Win32/Security/EnterpriseData/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Security/EnterpriseData/mod.rs @@ -47,7 +47,7 @@ pub const ENTERPRISE_POLICY_EXEMPT: ENTERPRISE_DATA_POLICIES = 4u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Security_EnterpriseData\"`*"] pub struct FILE_UNPROTECT_OPTIONS { - pub audit: bool, + pub audit: u8, } impl ::core::marker::Copy for FILE_UNPROTECT_OPTIONS {} impl ::core::clone::Clone for FILE_UNPROTECT_OPTIONS { diff --git a/crates/libs/sys/src/Windows/Win32/Storage/CloudFilters/mod.rs b/crates/libs/sys/src/Windows/Win32/Storage/CloudFilters/mod.rs index b4125cfd2e..c6236bded7 100644 --- a/crates/libs/sys/src/Windows/Win32/Storage/CloudFilters/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Storage/CloudFilters/mod.rs @@ -470,7 +470,7 @@ pub type CF_CALLBACK_VALIDATE_DATA_FLAGS = u32; pub const CF_CALLBACK_VALIDATE_DATA_FLAG_NONE: CF_CALLBACK_VALIDATE_DATA_FLAGS = 0u32; #[doc = "*Required features: `\"Win32_Storage_CloudFilters\"`*"] pub const CF_CALLBACK_VALIDATE_DATA_FLAG_EXPLICIT_HYDRATION: CF_CALLBACK_VALIDATE_DATA_FLAGS = 2u32; -pub type CF_CONNECTION_KEY = isize; +pub type CF_CONNECTION_KEY = i64; #[doc = "*Required features: `\"Win32_Storage_CloudFilters\"`*"] pub type CF_CONNECT_FLAGS = u32; #[doc = "*Required features: `\"Win32_Storage_CloudFilters\"`*"] diff --git a/crates/libs/sys/src/Windows/Win32/Storage/FileSystem/mod.rs b/crates/libs/sys/src/Windows/Win32/Storage/FileSystem/mod.rs index 22cedcdd91..7cd3d4f03d 100644 --- a/crates/libs/sys/src/Windows/Win32/Storage/FileSystem/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/Storage/FileSystem/mod.rs @@ -319,7 +319,7 @@ extern "system" { pub fn FindNextFileNameW(hfindstream: FindFileNameHandle, stringlength: *mut u32, linkname: ::windows_sys::core::PWSTR) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Storage_FileSystem\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn FindNextFileW(hfindfile: super::super::Foundation::HANDLE, lpfindfiledata: *mut WIN32_FIND_DATAW) -> super::super::Foundation::BOOL; + pub fn FindNextFileW(hfindfile: FindFileHandle, lpfindfiledata: *mut WIN32_FIND_DATAW) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Storage_FileSystem\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn FindNextStreamW(hfindstream: FindStreamHandle, lpfindstreamdata: *mut ::core::ffi::c_void) -> super::super::Foundation::BOOL; @@ -2422,8 +2422,14 @@ pub const FILE_READ_ATTRIBUTES: FILE_ACCESS_FLAGS = 128u32; #[doc = "*Required features: `\"Win32_Storage_FileSystem\"`*"] pub const FILE_WRITE_ATTRIBUTES: FILE_ACCESS_FLAGS = 256u32; #[doc = "*Required features: `\"Win32_Storage_FileSystem\"`*"] +pub const DELETE: FILE_ACCESS_FLAGS = 65536u32; +#[doc = "*Required features: `\"Win32_Storage_FileSystem\"`*"] pub const READ_CONTROL: FILE_ACCESS_FLAGS = 131072u32; #[doc = "*Required features: `\"Win32_Storage_FileSystem\"`*"] +pub const WRITE_DAC: FILE_ACCESS_FLAGS = 262144u32; +#[doc = "*Required features: `\"Win32_Storage_FileSystem\"`*"] +pub const WRITE_OWNER: FILE_ACCESS_FLAGS = 524288u32; +#[doc = "*Required features: `\"Win32_Storage_FileSystem\"`*"] pub const SYNCHRONIZE: FILE_ACCESS_FLAGS = 1048576u32; #[doc = "*Required features: `\"Win32_Storage_FileSystem\"`*"] pub const STANDARD_RIGHTS_REQUIRED: FILE_ACCESS_FLAGS = 983040u32; @@ -2548,7 +2554,7 @@ pub const FILE_DEVICE_DVD: FILE_DEVICE_TYPE = 51u32; #[doc = "*Required features: `\"Win32_Storage_FileSystem\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct FILE_DISPOSITION_INFO { - pub DeleteFileA: super::super::Foundation::BOOLEAN, + pub DeleteFile: super::super::Foundation::BOOLEAN, } #[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for FILE_DISPOSITION_INFO {} diff --git a/crates/libs/sys/src/Windows/Win32/System/ApplicationInstallationAndServicing/mod.rs b/crates/libs/sys/src/Windows/Win32/System/ApplicationInstallationAndServicing/mod.rs index ffd8014251..1d97c1f46a 100644 --- a/crates/libs/sys/src/Windows/Win32/System/ApplicationInstallationAndServicing/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/System/ApplicationInstallationAndServicing/mod.rs @@ -846,7 +846,7 @@ impl ::core::clone::Clone for ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION { #[doc = "*Required features: `\"Win32_System_ApplicationInstallationAndServicing\"`*"] pub struct ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION { pub ElementCount: u32, - pub Elements: [COMPATIBILITY_CONTEXT_ELEMENT; 1], + pub Elements: *mut COMPATIBILITY_CONTEXT_ELEMENT, } impl ::core::marker::Copy for ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION {} impl ::core::clone::Clone for ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION { diff --git a/crates/libs/sys/src/Windows/Win32/System/Com/StructuredStorage/mod.rs b/crates/libs/sys/src/Windows/Win32/System/Com/StructuredStorage/mod.rs index cc3f58bbbc..325ef04611 100644 --- a/crates/libs/sys/src/Windows/Win32/System/Com/StructuredStorage/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/System/Com/StructuredStorage/mod.rs @@ -27,12 +27,12 @@ extern "system" { pub fn OleConvertIStorageToOLESTREAM(pstg: IStorage, lpolestream: *mut OLESTREAM) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] - pub fn OleConvertIStorageToOLESTREAMEx(pstg: IStorage, cfformat: u16, lwidth: i32, lheight: i32, dwsize: u32, pmedium: *mut super::STGMEDIUM, polestm: *mut OLESTREAM) -> ::windows_sys::core::HRESULT; + pub fn OleConvertIStorageToOLESTREAMEx(pstg: IStorage, cfformat: u16, lwidth: i32, lheight: i32, dwsize: u32, pmedium: *const super::STGMEDIUM, polestm: *mut OLESTREAM) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] - pub fn OleConvertOLESTREAMToIStorage(lpolestream: *mut OLESTREAM, pstg: IStorage, ptd: *const super::DVTARGETDEVICE) -> ::windows_sys::core::HRESULT; + pub fn OleConvertOLESTREAMToIStorage(lpolestream: *const OLESTREAM, pstg: IStorage, ptd: *const super::DVTARGETDEVICE) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] - pub fn OleConvertOLESTREAMToIStorageEx(polestm: *mut OLESTREAM, pstg: IStorage, pcfformat: *mut u16, plwwidth: *mut i32, plheight: *mut i32, pdwsize: *mut u32, pmedium: *mut super::STGMEDIUM) -> ::windows_sys::core::HRESULT; + pub fn OleConvertOLESTREAMToIStorageEx(polestm: *const OLESTREAM, pstg: IStorage, pcfformat: *mut u16, plwwidth: *mut i32, plheight: *mut i32, pdwsize: *mut u32, pmedium: *mut super::STGMEDIUM) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] pub fn PropStgNameToFmtId(oszname: ::windows_sys::core::PCWSTR, pfmtid: *mut ::windows_sys::core::GUID) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] @@ -591,7 +591,7 @@ pub struct PMemoryAllocator(pub u8); #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] pub struct PROPBAG2 { pub dwType: u32, - pub vt: u16, + pub vt: super::VARENUM, pub cfType: u16, pub dwHint: u32, pub pstrName: ::windows_sys::core::PWSTR, @@ -680,7 +680,7 @@ impl ::core::clone::Clone for PROPVARIANT_0 { #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct PROPVARIANT_0_0 { - pub vt: u16, + pub vt: super::VARENUM, pub wReserved1: u16, pub wReserved2: u16, pub wReserved3: u16, @@ -840,7 +840,7 @@ impl ::core::clone::Clone for STATPROPSETSTG { pub struct STATPROPSTG { pub lpwstrName: ::windows_sys::core::PWSTR, pub propid: u32, - pub vt: u16, + pub vt: super::VARENUM, } impl ::core::marker::Copy for STATPROPSTG {} impl ::core::clone::Clone for STATPROPSTG { diff --git a/crates/libs/sys/src/Windows/Win32/System/Com/mod.rs b/crates/libs/sys/src/Windows/Win32/System/Com/mod.rs index 2359e616ee..dd936ff4a3 100644 --- a/crates/libs/sys/src/Windows/Win32/System/Com/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/System/Com/mod.rs @@ -426,7 +426,7 @@ impl ::core::clone::Clone for BIND_OPTS { #[repr(C)] #[doc = "*Required features: `\"Win32_System_Com\"`*"] pub struct BIND_OPTS2 { - pub __AnonymousBase_objidl_L9017_C36: BIND_OPTS, + pub Base: BIND_OPTS, pub dwTrackFlags: u32, pub dwClassContext: u32, pub locale: u32, @@ -442,7 +442,7 @@ impl ::core::clone::Clone for BIND_OPTS2 { #[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct BIND_OPTS3 { - pub __AnonymousBase_objidl_L9041_C36: BIND_OPTS2, + pub Base: BIND_OPTS2, pub hwnd: super::super::Foundation::HWND, } #[cfg(feature = "Win32_Foundation")] @@ -1961,7 +1961,7 @@ impl ::core::clone::Clone for TYPEATTR { #[cfg(feature = "Win32_System_Ole")] pub struct TYPEDESC { pub Anonymous: TYPEDESC_0, - pub vt: u16, + pub vt: VARENUM, } #[cfg(feature = "Win32_System_Ole")] impl ::core::marker::Copy for TYPEDESC {} @@ -2143,6 +2143,112 @@ impl ::core::clone::Clone for VARDESC_0 { *self } } +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub type VARENUM = u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_EMPTY: VARENUM = 0u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_NULL: VARENUM = 1u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_I2: VARENUM = 2u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_I4: VARENUM = 3u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_R4: VARENUM = 4u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_R8: VARENUM = 5u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_CY: VARENUM = 6u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_DATE: VARENUM = 7u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_BSTR: VARENUM = 8u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_DISPATCH: VARENUM = 9u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_ERROR: VARENUM = 10u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_BOOL: VARENUM = 11u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_VARIANT: VARENUM = 12u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_UNKNOWN: VARENUM = 13u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_DECIMAL: VARENUM = 14u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_I1: VARENUM = 16u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_UI1: VARENUM = 17u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_UI2: VARENUM = 18u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_UI4: VARENUM = 19u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_I8: VARENUM = 20u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_UI8: VARENUM = 21u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_INT: VARENUM = 22u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_UINT: VARENUM = 23u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_VOID: VARENUM = 24u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_HRESULT: VARENUM = 25u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_PTR: VARENUM = 26u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_SAFEARRAY: VARENUM = 27u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_CARRAY: VARENUM = 28u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_USERDEFINED: VARENUM = 29u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_LPSTR: VARENUM = 30u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_LPWSTR: VARENUM = 31u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_RECORD: VARENUM = 36u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_INT_PTR: VARENUM = 37u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_UINT_PTR: VARENUM = 38u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_FILETIME: VARENUM = 64u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_BLOB: VARENUM = 65u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_STREAM: VARENUM = 66u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_STORAGE: VARENUM = 67u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_STREAMED_OBJECT: VARENUM = 68u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_STORED_OBJECT: VARENUM = 69u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_BLOB_OBJECT: VARENUM = 70u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_CF: VARENUM = 71u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_CLSID: VARENUM = 72u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_VERSIONED_STREAM: VARENUM = 73u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_BSTR_BLOB: VARENUM = 4095u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_VECTOR: VARENUM = 4096u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_ARRAY: VARENUM = 8192u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_BYREF: VARENUM = 16384u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_RESERVED: VARENUM = 32768u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_ILLEGAL: VARENUM = 65535u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_ILLEGALMASKED: VARENUM = 4095u16; +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_TYPEMASK: VARENUM = 4095u16; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))] @@ -2176,7 +2282,7 @@ impl ::core::clone::Clone for VARIANT_0 { #[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))] pub struct VARIANT_0_0 { - pub vt: u16, + pub vt: VARENUM, pub wReserved1: u16, pub wReserved2: u16, pub wReserved3: u16, diff --git a/crates/libs/sys/src/Windows/Win32/System/Console/mod.rs b/crates/libs/sys/src/Windows/Win32/System/Console/mod.rs index b84ea83fd2..987f11a2a0 100644 --- a/crates/libs/sys/src/Windows/Win32/System/Console/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/System/Console/mod.rs @@ -211,7 +211,7 @@ extern "system" { pub fn SetConsoleScreenBufferSize(hconsoleoutput: super::super::Foundation::HANDLE, dwsize: COORD) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_System_Console\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn SetConsoleTextAttribute(hconsoleoutput: super::super::Foundation::HANDLE, wattributes: u16) -> super::super::Foundation::BOOL; + pub fn SetConsoleTextAttribute(hconsoleoutput: super::super::Foundation::HANDLE, wattributes: CONSOLE_CHARACTER_ATTRIBUTES) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_System_Console\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn SetConsoleTitleA(lpconsoletitle: ::windows_sys::core::PCSTR) -> super::super::Foundation::BOOL; @@ -263,14 +263,6 @@ pub const ALTNUMPAD_BIT: u32 = 67108864u32; #[doc = "*Required features: `\"Win32_System_Console\"`*"] pub const ATTACH_PARENT_PROCESS: u32 = 4294967295u32; #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const BACKGROUND_BLUE: u32 = 16u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const BACKGROUND_GREEN: u32 = 32u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const BACKGROUND_INTENSITY: u32 = 128u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const BACKGROUND_RED: u32 = 64u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] pub const CAPSLOCK_ON: u32 = 128u32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Console\"`, `\"Win32_Foundation\"`*"] @@ -303,21 +295,39 @@ impl ::core::clone::Clone for CHAR_INFO_0 { } } #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_GRID_HORIZONTAL: u32 = 1024u32; +pub type CONSOLE_CHARACTER_ATTRIBUTES = u16; +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const FOREGROUND_BLUE: CONSOLE_CHARACTER_ATTRIBUTES = 1u16; +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const FOREGROUND_GREEN: CONSOLE_CHARACTER_ATTRIBUTES = 2u16; +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const FOREGROUND_RED: CONSOLE_CHARACTER_ATTRIBUTES = 4u16; +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const FOREGROUND_INTENSITY: CONSOLE_CHARACTER_ATTRIBUTES = 8u16; +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const BACKGROUND_BLUE: CONSOLE_CHARACTER_ATTRIBUTES = 16u16; #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_GRID_LVERTICAL: u32 = 2048u32; +pub const BACKGROUND_GREEN: CONSOLE_CHARACTER_ATTRIBUTES = 32u16; #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_GRID_RVERTICAL: u32 = 4096u32; +pub const BACKGROUND_RED: CONSOLE_CHARACTER_ATTRIBUTES = 64u16; #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_LEADING_BYTE: u32 = 256u32; +pub const BACKGROUND_INTENSITY: CONSOLE_CHARACTER_ATTRIBUTES = 128u16; #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_REVERSE_VIDEO: u32 = 16384u32; +pub const COMMON_LVB_LEADING_BYTE: CONSOLE_CHARACTER_ATTRIBUTES = 256u16; #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_SBCSDBCS: u32 = 768u32; +pub const COMMON_LVB_TRAILING_BYTE: CONSOLE_CHARACTER_ATTRIBUTES = 512u16; #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_TRAILING_BYTE: u32 = 512u32; +pub const COMMON_LVB_GRID_HORIZONTAL: CONSOLE_CHARACTER_ATTRIBUTES = 1024u16; #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_UNDERSCORE: u32 = 32768u32; +pub const COMMON_LVB_GRID_LVERTICAL: CONSOLE_CHARACTER_ATTRIBUTES = 2048u16; +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const COMMON_LVB_GRID_RVERTICAL: CONSOLE_CHARACTER_ATTRIBUTES = 4096u16; +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const COMMON_LVB_REVERSE_VIDEO: CONSOLE_CHARACTER_ATTRIBUTES = 16384u16; +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const COMMON_LVB_UNDERSCORE: CONSOLE_CHARACTER_ATTRIBUTES = 32768u16; +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const COMMON_LVB_SBCSDBCS: CONSOLE_CHARACTER_ATTRIBUTES = 768u16; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Console\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -438,7 +448,7 @@ impl ::core::clone::Clone for CONSOLE_READCONSOLE_CONTROL { pub struct CONSOLE_SCREEN_BUFFER_INFO { pub dwSize: COORD, pub dwCursorPosition: COORD, - pub wAttributes: u16, + pub wAttributes: CONSOLE_CHARACTER_ATTRIBUTES, pub srWindow: SMALL_RECT, pub dwMaximumWindowSize: COORD, } @@ -455,12 +465,12 @@ pub struct CONSOLE_SCREEN_BUFFER_INFOEX { pub cbSize: u32, pub dwSize: COORD, pub dwCursorPosition: COORD, - pub wAttributes: u16, + pub wAttributes: CONSOLE_CHARACTER_ATTRIBUTES, pub srWindow: SMALL_RECT, pub dwMaximumWindowSize: COORD, pub wPopupAttributes: u16, pub bFullscreenSupported: super::super::Foundation::BOOL, - pub ColorTable: [u32; 16], + pub ColorTable: [super::super::Foundation::COLORREF; 16], } #[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for CONSOLE_SCREEN_BUFFER_INFOEX {} @@ -534,14 +544,6 @@ impl ::core::clone::Clone for FOCUS_EVENT_RECORD { } } #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const FOREGROUND_BLUE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const FOREGROUND_GREEN: u32 = 2u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const FOREGROUND_INTENSITY: u32 = 8u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const FOREGROUND_RED: u32 = 4u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] pub const FROM_LEFT_1ST_BUTTON_PRESSED: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_Console\"`*"] pub const FROM_LEFT_2ND_BUTTON_PRESSED: u32 = 4u32; diff --git a/crates/libs/sys/src/Windows/Win32/System/Diagnostics/Debug/mod.rs b/crates/libs/sys/src/Windows/Win32/System/Diagnostics/Debug/mod.rs index e1cbd93aa2..29abc942cd 100644 --- a/crates/libs/sys/src/Windows/Win32/System/Diagnostics/Debug/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/System/Diagnostics/Debug/mod.rs @@ -13236,7 +13236,7 @@ impl ::core::clone::Clone for ScriptDebugEventInformation_0_0 { #[repr(C)] #[doc = "*Required features: `\"Win32_System_Diagnostics_Debug\"`*"] pub struct ScriptDebugEventInformation_0_1 { - pub IsUncaught: bool, + pub IsUncaught: u8, } impl ::core::marker::Copy for ScriptDebugEventInformation_0_1 {} impl ::core::clone::Clone for ScriptDebugEventInformation_0_1 { diff --git a/crates/libs/sys/src/Windows/Win32/System/Diagnostics/Etw/mod.rs b/crates/libs/sys/src/Windows/Win32/System/Diagnostics/Etw/mod.rs index 7ca4de1a0c..c7a474905b 100644 --- a/crates/libs/sys/src/Windows/Win32/System/Diagnostics/Etw/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/System/Diagnostics/Etw/mod.rs @@ -1,29 +1,34 @@ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] - pub fn CloseTrace(tracehandle: u64) -> u32; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn ControlTraceA(tracehandle: u64, instancename: ::windows_sys::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES, controlcode: EVENT_TRACE_CONTROL) -> u32; + pub fn CloseTrace(tracehandle: PROCESSTRACE_HANDLE) -> super::super::super::Foundation::WIN32_ERROR; + #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn ControlTraceA(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows_sys::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES, controlcode: EVENT_TRACE_CONTROL) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn ControlTraceW(tracehandle: u64, instancename: ::windows_sys::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES, controlcode: EVENT_TRACE_CONTROL) -> u32; + pub fn ControlTraceW(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows_sys::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES, controlcode: EVENT_TRACE_CONTROL) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn CreateTraceInstanceId(reghandle: super::super::super::Foundation::HANDLE, instinfo: *mut EVENT_INSTANCE_INFO) -> u32; + pub fn CreateTraceInstanceId(reghandle: super::super::super::Foundation::HANDLE, instinfo: *mut EVENT_INSTANCE_INFO) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub fn CveEventWrite(cveid: ::windows_sys::core::PCWSTR, additionaldetails: ::windows_sys::core::PCWSTR) -> i32; - #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] - pub fn EnableTrace(enable: u32, enableflag: u32, enablelevel: u32, controlguid: *const ::windows_sys::core::GUID, tracehandle: u64) -> u32; - #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] - pub fn EnableTraceEx(providerid: *const ::windows_sys::core::GUID, sourceid: *const ::windows_sys::core::GUID, tracehandle: u64, isenabled: u32, level: u8, matchanykeyword: u64, matchallkeyword: u64, enableproperty: u32, enablefilterdesc: *const EVENT_FILTER_DESCRIPTOR) -> u32; - #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] - pub fn EnableTraceEx2(tracehandle: u64, providerid: *const ::windows_sys::core::GUID, controlcode: u32, level: u8, matchanykeyword: u64, matchallkeyword: u64, timeout: u32, enableparameters: *const ENABLE_TRACE_PARAMETERS) -> u32; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn EnumerateTraceGuids(guidpropertiesarray: *mut *mut TRACE_GUID_PROPERTIES, propertyarraycount: u32, guidcount: *mut u32) -> u32; - #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] - pub fn EnumerateTraceGuidsEx(tracequeryinfoclass: TRACE_QUERY_INFO_CLASS, inbuffer: *const ::core::ffi::c_void, inbuffersize: u32, outbuffer: *mut ::core::ffi::c_void, outbuffersize: u32, returnlength: *mut u32) -> u32; + pub fn EnableTrace(enable: u32, enableflag: u32, enablelevel: u32, controlguid: *const ::windows_sys::core::GUID, tracehandle: CONTROLTRACE_HANDLE) -> super::super::super::Foundation::WIN32_ERROR; + #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn EnableTraceEx(providerid: *const ::windows_sys::core::GUID, sourceid: *const ::windows_sys::core::GUID, tracehandle: CONTROLTRACE_HANDLE, isenabled: u32, level: u8, matchanykeyword: u64, matchallkeyword: u64, enableproperty: u32, enablefilterdesc: *const EVENT_FILTER_DESCRIPTOR) -> super::super::super::Foundation::WIN32_ERROR; + #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn EnableTraceEx2(tracehandle: CONTROLTRACE_HANDLE, providerid: *const ::windows_sys::core::GUID, controlcode: u32, level: u8, matchanykeyword: u64, matchallkeyword: u64, timeout: u32, enableparameters: *const ENABLE_TRACE_PARAMETERS) -> super::super::super::Foundation::WIN32_ERROR; + #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn EnumerateTraceGuids(guidpropertiesarray: *mut *mut TRACE_GUID_PROPERTIES, propertyarraycount: u32, guidcount: *mut u32) -> super::super::super::Foundation::WIN32_ERROR; + #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn EnumerateTraceGuidsEx(tracequeryinfoclass: TRACE_QUERY_INFO_CLASS, inbuffer: *const ::core::ffi::c_void, inbuffersize: u32, outbuffer: *mut ::core::ffi::c_void, outbuffersize: u32, returnlength: *mut u32) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn EventAccessControl(guid: *const ::windows_sys::core::GUID, operation: u32, sid: super::super::super::Foundation::PSID, rights: u32, allowordeny: super::super::super::Foundation::BOOLEAN) -> u32; @@ -56,10 +61,10 @@ extern "system" { pub fn EventWriteTransfer(reghandle: u64, eventdescriptor: *const EVENT_DESCRIPTOR, activityid: *const ::windows_sys::core::GUID, relatedactivityid: *const ::windows_sys::core::GUID, userdatacount: u32, userdata: *const EVENT_DATA_DESCRIPTOR) -> u32; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn FlushTraceA(tracehandle: u64, instancename: ::windows_sys::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + pub fn FlushTraceA(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows_sys::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn FlushTraceW(tracehandle: u64, instancename: ::windows_sys::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + pub fn FlushTraceW(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows_sys::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub fn GetTraceEnableFlags(tracehandle: u64) -> u32; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] @@ -68,49 +73,52 @@ extern "system" { pub fn GetTraceLoggerHandle(buffer: *const ::core::ffi::c_void) -> u64; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`, `\"Win32_System_Time\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Time"))] - pub fn OpenTraceA(logfile: *mut EVENT_TRACE_LOGFILEA) -> u64; + pub fn OpenTraceA(logfile: *mut EVENT_TRACE_LOGFILEA) -> PROCESSTRACE_HANDLE; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`, `\"Win32_System_Time\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Time"))] - pub fn OpenTraceW(logfile: *mut EVENT_TRACE_LOGFILEW) -> u64; + pub fn OpenTraceW(logfile: *mut EVENT_TRACE_LOGFILEW) -> PROCESSTRACE_HANDLE; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn ProcessTrace(handlearray: *const u64, handlecount: u32, starttime: *const super::super::super::Foundation::FILETIME, endtime: *const super::super::super::Foundation::FILETIME) -> u32; + pub fn ProcessTrace(handlearray: *const PROCESSTRACE_HANDLE, handlecount: u32, starttime: *const super::super::super::Foundation::FILETIME, endtime: *const super::super::super::Foundation::FILETIME) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn QueryAllTracesA(propertyarray: *mut *mut EVENT_TRACE_PROPERTIES, propertyarraycount: u32, loggercount: *mut u32) -> u32; + pub fn QueryAllTracesA(propertyarray: *mut *mut EVENT_TRACE_PROPERTIES, propertyarraycount: u32, loggercount: *mut u32) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn QueryAllTracesW(propertyarray: *mut *mut EVENT_TRACE_PROPERTIES, propertyarraycount: u32, loggercount: *mut u32) -> u32; + pub fn QueryAllTracesW(propertyarray: *mut *mut EVENT_TRACE_PROPERTIES, propertyarraycount: u32, loggercount: *mut u32) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn QueryTraceA(tracehandle: u64, instancename: ::windows_sys::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; - #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] - pub fn QueryTraceProcessingHandle(processinghandle: u64, informationclass: ETW_PROCESS_HANDLE_INFO_TYPE, inbuffer: *const ::core::ffi::c_void, inbuffersize: u32, outbuffer: *mut ::core::ffi::c_void, outbuffersize: u32, returnlength: *mut u32) -> u32; + pub fn QueryTraceA(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows_sys::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; + #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn QueryTraceProcessingHandle(processinghandle: PROCESSTRACE_HANDLE, informationclass: ETW_PROCESS_HANDLE_INFO_TYPE, inbuffer: *const ::core::ffi::c_void, inbuffersize: u32, outbuffer: *mut ::core::ffi::c_void, outbuffersize: u32, returnlength: *mut u32) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn QueryTraceW(tracehandle: u64, instancename: ::windows_sys::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + pub fn QueryTraceW(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows_sys::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn RegisterTraceGuidsA(requestaddress: WMIDPREQUEST, requestcontext: *const ::core::ffi::c_void, controlguid: *const ::windows_sys::core::GUID, guidcount: u32, traceguidreg: *const TRACE_GUID_REGISTRATION, mofimagepath: ::windows_sys::core::PCSTR, mofresourcename: ::windows_sys::core::PCSTR, registrationhandle: *mut u64) -> u32; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn RegisterTraceGuidsW(requestaddress: WMIDPREQUEST, requestcontext: *const ::core::ffi::c_void, controlguid: *const ::windows_sys::core::GUID, guidcount: u32, traceguidreg: *const TRACE_GUID_REGISTRATION, mofimagepath: ::windows_sys::core::PCWSTR, mofresourcename: ::windows_sys::core::PCWSTR, registrationhandle: *mut u64) -> u32; - #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] - pub fn RemoveTraceCallback(pguid: *const ::windows_sys::core::GUID) -> u32; - #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] - pub fn SetTraceCallback(pguid: *const ::windows_sys::core::GUID, eventcallback: PEVENT_CALLBACK) -> u32; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn StartTraceA(tracehandle: *mut u64, instancename: ::windows_sys::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + pub fn RemoveTraceCallback(pguid: *const ::windows_sys::core::GUID) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn StartTraceW(tracehandle: *mut u64, instancename: ::windows_sys::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + pub fn SetTraceCallback(pguid: *const ::windows_sys::core::GUID, eventcallback: PEVENT_CALLBACK) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn StopTraceA(tracehandle: u64, instancename: ::windows_sys::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + pub fn StartTraceA(tracehandle: *mut CONTROLTRACE_HANDLE, instancename: ::windows_sys::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn StopTraceW(tracehandle: u64, instancename: ::windows_sys::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + pub fn StartTraceW(tracehandle: *mut CONTROLTRACE_HANDLE, instancename: ::windows_sys::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; + #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn StopTraceA(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows_sys::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; + #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn StopTraceW(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows_sys::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn TdhAggregatePayloadFilters(payloadfiltercount: u32, payloadfilterptrs: *const *const ::core::ffi::c_void, eventmatchallflags: *const super::super::super::Foundation::BOOLEAN, eventfilterdescriptor: *mut EVENT_FILTER_DESCRIPTOR) -> u32; @@ -167,28 +175,34 @@ extern "system" { pub fn TdhUnloadManifest(manifest: ::windows_sys::core::PCWSTR) -> u32; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub fn TdhUnloadManifestFromMemory(pdata: *const ::core::ffi::c_void, cbdata: u32) -> u32; - #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] - pub fn TraceEvent(tracehandle: u64, eventtrace: *const EVENT_TRACE_HEADER) -> u32; + #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn TraceEvent(tracehandle: u64, eventtrace: *const EVENT_TRACE_HEADER) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn TraceEventInstance(tracehandle: u64, eventtrace: *const EVENT_INSTANCE_HEADER, instinfo: *const EVENT_INSTANCE_INFO, parentinstinfo: *const EVENT_INSTANCE_INFO) -> u32; - #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] - pub fn TraceMessage(loggerhandle: u64, messageflags: TRACE_MESSAGE_FLAGS, messageguid: *const ::windows_sys::core::GUID, messagenumber: u16) -> u32; - #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] - pub fn TraceMessageVa(loggerhandle: u64, messageflags: TRACE_MESSAGE_FLAGS, messageguid: *const ::windows_sys::core::GUID, messagenumber: u16, messagearglist: *const i8) -> u32; - #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] - pub fn TraceQueryInformation(sessionhandle: u64, informationclass: TRACE_QUERY_INFO_CLASS, traceinformation: *mut ::core::ffi::c_void, informationlength: u32, returnlength: *mut u32) -> u32; - #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] - pub fn TraceSetInformation(sessionhandle: u64, informationclass: TRACE_QUERY_INFO_CLASS, traceinformation: *const ::core::ffi::c_void, informationlength: u32) -> u32; + #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn TraceMessage(loggerhandle: u64, messageflags: TRACE_MESSAGE_FLAGS, messageguid: *const ::windows_sys::core::GUID, messagenumber: u16) -> super::super::super::Foundation::WIN32_ERROR; + #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn TraceMessageVa(loggerhandle: u64, messageflags: TRACE_MESSAGE_FLAGS, messageguid: *const ::windows_sys::core::GUID, messagenumber: u16, messagearglist: *const i8) -> super::super::super::Foundation::WIN32_ERROR; + #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn TraceQueryInformation(sessionhandle: CONTROLTRACE_HANDLE, informationclass: TRACE_QUERY_INFO_CLASS, traceinformation: *mut ::core::ffi::c_void, informationlength: u32, returnlength: *mut u32) -> super::super::super::Foundation::WIN32_ERROR; + #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn TraceSetInformation(sessionhandle: CONTROLTRACE_HANDLE, informationclass: TRACE_QUERY_INFO_CLASS, traceinformation: *const ::core::ffi::c_void, informationlength: u32) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub fn UnregisterTraceGuids(registrationhandle: u64) -> u32; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn UpdateTraceA(tracehandle: u64, instancename: ::windows_sys::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + pub fn UpdateTraceA(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows_sys::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn UpdateTraceW(tracehandle: u64, instancename: ::windows_sys::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + pub fn UpdateTraceW(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows_sys::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; } +pub const ALPCGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1171836109, data2: 21407, data3: 19314, data4: [168, 183, 92, 104, 49, 66, 96, 154] }; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub struct CLASSIC_EVENT_ID { @@ -203,6 +217,7 @@ impl ::core::clone::Clone for CLASSIC_EVENT_ID { } } pub const CLSID_TraceRelogger: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2067822893, data2: 1535, data3: 17604, data4: [144, 88, 244, 64, 199, 31, 23, 212] }; +pub type CONTROLTRACE_HANDLE = u64; pub const CTraceRelogger: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2067822893, data2: 1535, data3: 17604, data4: [144, 88, 244, 64, 199, 31, 23, 212] }; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub type DECODING_SOURCE = i32; @@ -221,6 +236,7 @@ pub const DIAG_LOGGER_NAMEA: &str = "DiagLog"; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub const DIAG_LOGGER_NAMEW: &str = "DiagLog"; pub const DefaultTraceSecurityGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 135381423, data2: 31239, data3: 18950, data4: [130, 237, 134, 148, 85, 205, 247, 19] }; +pub const DiskIoGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1030727892, data2: 65029, data3: 4560, data4: [157, 218, 0, 192, 79, 215, 186, 124] }; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub type ENABLECALLBACK_ENABLED_STATE = u32; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] @@ -2062,6 +2078,7 @@ pub const EVENT_WRITE_FLAG_INPRIVATE: u32 = 2u32; pub const EVENT_WRITE_FLAG_NO_FAULTING: u32 = 1u32; pub const EventTraceConfigGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 25508453, data2: 16783, data3: 20278, data4: [174, 252, 220, 15, 29, 47, 210, 53] }; pub const EventTraceGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1761466624, data2: 19006, data3: 4561, data4: [132, 244, 0, 0, 248, 4, 100, 227] }; +pub const FileIoGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2429279289, data2: 19006, data3: 4561, data4: [132, 244, 0, 0, 248, 4, 100, 227] }; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub const GLOBAL_LOGGER_NAME: &str = "GlobalLogger"; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] @@ -2071,6 +2088,7 @@ pub const GLOBAL_LOGGER_NAMEW: &str = "GlobalLogger"; pub type ITraceEvent = *mut ::core::ffi::c_void; pub type ITraceEventCallback = *mut ::core::ffi::c_void; pub type ITraceRelogger = *mut ::core::ffi::c_void; +pub const ImageLoadGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 749821213, data2: 24513, data3: 4562, data4: [171, 225, 0, 160, 201, 17, 245, 24] }; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub const KERNEL_LOGGER_NAME: &str = "NT Kernel Logger"; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] @@ -2197,6 +2215,7 @@ pub type PEVENT_TRACE_BUFFER_CALLBACKA = ::core::option::Option u32>; +pub type PROCESSTRACE_HANDLE = u64; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub const PROCESS_TRACE_MODE_EVENT_RECORD: u32 = 268435456u32; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] @@ -2318,7 +2337,12 @@ impl ::core::clone::Clone for PROVIDER_FILTER_INFO { *self } } +pub const PageFaultGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1030727891, data2: 65029, data3: 4560, data4: [157, 218, 0, 192, 79, 215, 186, 124] }; +pub const PerfInfoGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3458056116, data2: 4990, data3: 19878, data4: [135, 176, 63, 89, 170, 16, 44, 188] }; pub const PrivateLoggerNotificationGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 899001180, data2: 1066, data3: 19598, data4: [185, 66, 45, 5, 155, 254, 177, 177] }; +pub const ProcessGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1030727888, data2: 65029, data3: 4560, data4: [157, 218, 0, 192, 79, 215, 186, 124] }; +pub type RELOGSTREAM_HANDLE = u64; +pub const RegistryGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2924704302, data2: 51299, data3: 4562, data4: [134, 89, 0, 192, 79, 163, 33, 161] }; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub const SYSTEM_ALPC_KW_GENERAL: u64 = 1u64; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] @@ -2509,6 +2533,7 @@ pub const SYSTEM_SYSCALL_KW_GENERAL: u64 = 1u64; pub const SYSTEM_TIMER_KW_CLOCK_TIMER: u64 = 2u64; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub const SYSTEM_TIMER_KW_GENERAL: u64 = 1u64; +pub const SplitIoGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3627534994, data2: 4793, data3: 17573, data4: [173, 106, 58, 101, 179, 87, 138, 168] }; pub const SystemAlpcProviderGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4240030383, data2: 58665, data3: 18816, data4: [146, 233, 206, 209, 166, 170, 223, 223] }; pub const SystemConfigProviderGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4277381302, data2: 12685, data3: 19303, data4: [169, 106, 59, 15, 107, 143, 24, 254] }; pub const SystemCpuProviderGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3334809183, data2: 60136, data3: 18000, data4: [170, 228, 157, 72, 96, 61, 133, 16] }; @@ -3201,6 +3226,9 @@ impl ::core::clone::Clone for TRACE_VERSION_INFO { *self } } +pub const TcpIpGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2586315456, data2: 51424, data3: 4561, data4: [132, 226, 0, 192, 79, 185, 152, 162] }; +pub const ThreadGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1030727889, data2: 65029, data3: 4560, data4: [157, 218, 0, 192, 79, 215, 186, 124] }; +pub const UdpIpGuid: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3208270021, data2: 43465, data3: 18824, data4: [160, 5, 45, 240, 183, 200, 15, 128] }; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub type WMIDPREQUEST = ::core::option::Option u32>; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] diff --git a/crates/libs/sys/src/Windows/Win32/System/MessageQueuing/mod.rs b/crates/libs/sys/src/Windows/Win32/System/MessageQueuing/mod.rs index d3f80bbd30..dc55af0ce4 100644 --- a/crates/libs/sys/src/Windows/Win32/System/MessageQueuing/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/System/MessageQueuing/mod.rs @@ -647,14 +647,10 @@ pub const MQ_PRIV_LEVEL_OPTIONAL: MQPRIVLEVEL = 1i32; #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] pub const MQ_PRIV_LEVEL_BODY: MQPRIVLEVEL = 2i32; #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] -pub const MQSEC_CHANGE_QUEUE_PERMISSIONS: u32 = 262144u32; -#[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] pub const MQSEC_DELETE_JOURNAL_MESSAGE: u32 = 8u32; #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] pub const MQSEC_DELETE_MESSAGE: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] -pub const MQSEC_DELETE_QUEUE: u32 = 65536u32; -#[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] pub const MQSEC_GET_QUEUE_PROPERTIES: u32 = 32u32; #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] pub const MQSEC_PEEK_MESSAGE: u32 = 2u32; @@ -663,8 +659,6 @@ pub const MQSEC_QUEUE_GENERIC_EXECUTE: u32 = 0u32; #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] pub const MQSEC_SET_QUEUE_PROPERTIES: u32 = 16u32; #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] -pub const MQSEC_TAKE_QUEUE_OWNERSHIP: u32 = 524288u32; -#[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] pub const MQSEC_WRITE_MESSAGE: u32 = 4u32; #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] pub type MQSHARE = i32; diff --git a/crates/libs/sys/src/Windows/Win32/System/Ole/mod.rs b/crates/libs/sys/src/Windows/Win32/System/Ole/mod.rs index ac65a48b0a..a6396e496b 100644 --- a/crates/libs/sys/src/Windows/Win32/System/Ole/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/System/Ole/mod.rs @@ -24,13 +24,13 @@ extern "system" { pub fn CreateTypeLib2(syskind: super::Com::SYSKIND, szfile: ::windows_sys::core::PCWSTR, ppctlib: *mut ICreateTypeLib2) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] - pub fn DispCallFunc(pvinstance: *const ::core::ffi::c_void, ovft: usize, cc: super::Com::CALLCONV, vtreturn: u16, cactuals: u32, prgvt: *const u16, prgpvarg: *const *const super::Com::VARIANT, pvargresult: *mut super::Com::VARIANT) -> ::windows_sys::core::HRESULT; + pub fn DispCallFunc(pvinstance: *const ::core::ffi::c_void, ovft: usize, cc: super::Com::CALLCONV, vtreturn: super::Com::VARENUM, cactuals: u32, prgvt: *const u16, prgpvarg: *const *const super::Com::VARIANT, pvargresult: *mut super::Com::VARIANT) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] pub fn DispGetIDsOfNames(ptinfo: super::Com::ITypeInfo, rgsznames: *const ::windows_sys::core::PWSTR, cnames: u32, rgdispid: *mut i32) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] - pub fn DispGetParam(pdispparams: *const super::Com::DISPPARAMS, position: u32, vttarg: u16, pvarresult: *mut super::Com::VARIANT, puargerr: *mut u32) -> ::windows_sys::core::HRESULT; + pub fn DispGetParam(pdispparams: *const super::Com::DISPPARAMS, position: u32, vttarg: super::Com::VARENUM, pvarresult: *mut super::Com::VARIANT, puargerr: *mut u32) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub fn DispInvoke(_this: *mut ::core::ffi::c_void, ptinfo: super::Com::ITypeInfo, dispidmember: i32, wflags: u16, pparams: *mut super::Com::DISPPARAMS, pvarresult: *mut super::Com::VARIANT, pexcepinfo: *mut super::Com::EXCEPINFO, puargerr: *mut u32) -> ::windows_sys::core::HRESULT; @@ -74,7 +74,7 @@ extern "system" { pub fn HRGN_UserUnmarshal64(param0: *const u32, param1: *const u8, param2: *mut super::super::Graphics::Gdi::HRGN) -> *mut u8; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] - pub fn IsAccelerator(haccel: super::super::UI::WindowsAndMessaging::HACCEL, caccelentries: i32, lpmsg: *mut super::super::UI::WindowsAndMessaging::MSG, lpwcmd: *mut u16) -> super::super::Foundation::BOOL; + pub fn IsAccelerator(haccel: super::super::UI::WindowsAndMessaging::HACCEL, caccelentries: i32, lpmsg: *const super::super::UI::WindowsAndMessaging::MSG, lpwcmd: *mut u16) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] pub fn LHashValOfNameSys(syskind: super::Com::SYSKIND, lcid: u32, szname: ::windows_sys::core::PCWSTR) -> u32; @@ -98,7 +98,7 @@ extern "system" { pub fn OleBuildVersion() -> u32; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] - pub fn OleCreate(rclsid: *const ::windows_sys::core::GUID, riid: *const ::windows_sys::core::GUID, renderopt: u32, pformatetc: *mut super::Com::FORMATETC, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; + pub fn OleCreate(rclsid: *const ::windows_sys::core::GUID, riid: *const ::windows_sys::core::GUID, renderopt: u32, pformatetc: *const super::Com::FORMATETC, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`*"] pub fn OleCreateDefaultHandler(clsid: *const ::windows_sys::core::GUID, punkouter: ::windows_sys::core::IUnknown, riid: *const ::windows_sys::core::GUID, lplpobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] @@ -106,43 +106,43 @@ extern "system" { pub fn OleCreateEmbeddingHelper(clsid: *const ::windows_sys::core::GUID, punkouter: ::windows_sys::core::IUnknown, flags: u32, pcf: super::Com::IClassFactory, riid: *const ::windows_sys::core::GUID, lplpobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] - pub fn OleCreateEx(rclsid: *const ::windows_sys::core::GUID, riid: *const ::windows_sys::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *mut u32, rgformatetc: *mut super::Com::FORMATETC, lpadvisesink: super::Com::IAdviseSink, rgdwconnection: *mut u32, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; + pub fn OleCreateEx(rclsid: *const ::windows_sys::core::GUID, riid: *const ::windows_sys::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *const u32, rgformatetc: *const super::Com::FORMATETC, lpadvisesink: super::Com::IAdviseSink, rgdwconnection: *mut u32, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub fn OleCreateFontIndirect(lpfontdesc: *mut FONTDESC, riid: *const ::windows_sys::core::GUID, lplpvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] - pub fn OleCreateFromData(psrcdataobj: super::Com::IDataObject, riid: *const ::windows_sys::core::GUID, renderopt: u32, pformatetc: *mut super::Com::FORMATETC, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; + pub fn OleCreateFromData(psrcdataobj: super::Com::IDataObject, riid: *const ::windows_sys::core::GUID, renderopt: u32, pformatetc: *const super::Com::FORMATETC, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] - pub fn OleCreateFromDataEx(psrcdataobj: super::Com::IDataObject, riid: *const ::windows_sys::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *mut u32, rgformatetc: *mut super::Com::FORMATETC, lpadvisesink: super::Com::IAdviseSink, rgdwconnection: *mut u32, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; + pub fn OleCreateFromDataEx(psrcdataobj: super::Com::IDataObject, riid: *const ::windows_sys::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *const u32, rgformatetc: *const super::Com::FORMATETC, lpadvisesink: super::Com::IAdviseSink, rgdwconnection: *mut u32, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] - pub fn OleCreateFromFile(rclsid: *const ::windows_sys::core::GUID, lpszfilename: ::windows_sys::core::PCWSTR, riid: *const ::windows_sys::core::GUID, renderopt: u32, lpformatetc: *mut super::Com::FORMATETC, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; + pub fn OleCreateFromFile(rclsid: *const ::windows_sys::core::GUID, lpszfilename: ::windows_sys::core::PCWSTR, riid: *const ::windows_sys::core::GUID, renderopt: u32, lpformatetc: *const super::Com::FORMATETC, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] - pub fn OleCreateFromFileEx(rclsid: *const ::windows_sys::core::GUID, lpszfilename: ::windows_sys::core::PCWSTR, riid: *const ::windows_sys::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *mut u32, rgformatetc: *mut super::Com::FORMATETC, lpadvisesink: super::Com::IAdviseSink, rgdwconnection: *mut u32, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; + pub fn OleCreateFromFileEx(rclsid: *const ::windows_sys::core::GUID, lpszfilename: ::windows_sys::core::PCWSTR, riid: *const ::windows_sys::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *const u32, rgformatetc: *const super::Com::FORMATETC, lpadvisesink: super::Com::IAdviseSink, rgdwconnection: *mut u32, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] - pub fn OleCreateLink(pmklinksrc: super::Com::IMoniker, riid: *const ::windows_sys::core::GUID, renderopt: u32, lpformatetc: *mut super::Com::FORMATETC, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; + pub fn OleCreateLink(pmklinksrc: super::Com::IMoniker, riid: *const ::windows_sys::core::GUID, renderopt: u32, lpformatetc: *const super::Com::FORMATETC, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] - pub fn OleCreateLinkEx(pmklinksrc: super::Com::IMoniker, riid: *const ::windows_sys::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *mut u32, rgformatetc: *mut super::Com::FORMATETC, lpadvisesink: super::Com::IAdviseSink, rgdwconnection: *mut u32, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; + pub fn OleCreateLinkEx(pmklinksrc: super::Com::IMoniker, riid: *const ::windows_sys::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *const u32, rgformatetc: *const super::Com::FORMATETC, lpadvisesink: super::Com::IAdviseSink, rgdwconnection: *mut u32, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] - pub fn OleCreateLinkFromData(psrcdataobj: super::Com::IDataObject, riid: *const ::windows_sys::core::GUID, renderopt: u32, pformatetc: *mut super::Com::FORMATETC, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; + pub fn OleCreateLinkFromData(psrcdataobj: super::Com::IDataObject, riid: *const ::windows_sys::core::GUID, renderopt: u32, pformatetc: *const super::Com::FORMATETC, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] - pub fn OleCreateLinkFromDataEx(psrcdataobj: super::Com::IDataObject, riid: *const ::windows_sys::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *mut u32, rgformatetc: *mut super::Com::FORMATETC, lpadvisesink: super::Com::IAdviseSink, rgdwconnection: *mut u32, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; + pub fn OleCreateLinkFromDataEx(psrcdataobj: super::Com::IDataObject, riid: *const ::windows_sys::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *const u32, rgformatetc: *const super::Com::FORMATETC, lpadvisesink: super::Com::IAdviseSink, rgdwconnection: *mut u32, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] - pub fn OleCreateLinkToFile(lpszfilename: ::windows_sys::core::PCWSTR, riid: *const ::windows_sys::core::GUID, renderopt: u32, lpformatetc: *mut super::Com::FORMATETC, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; + pub fn OleCreateLinkToFile(lpszfilename: ::windows_sys::core::PCWSTR, riid: *const ::windows_sys::core::GUID, renderopt: u32, lpformatetc: *const super::Com::FORMATETC, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] - pub fn OleCreateLinkToFileEx(lpszfilename: ::windows_sys::core::PCWSTR, riid: *const ::windows_sys::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *mut u32, rgformatetc: *mut super::Com::FORMATETC, lpadvisesink: super::Com::IAdviseSink, rgdwconnection: *mut u32, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; + pub fn OleCreateLinkToFileEx(lpszfilename: ::windows_sys::core::PCWSTR, riid: *const ::windows_sys::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *const u32, rgformatetc: *const super::Com::FORMATETC, lpadvisesink: super::Com::IAdviseSink, rgdwconnection: *mut u32, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(feature = "Win32_UI_WindowsAndMessaging")] - pub fn OleCreateMenuDescriptor(hmenucombined: super::super::UI::WindowsAndMessaging::HMENU, lpmenuwidths: *mut OleMenuGroupWidths) -> isize; + pub fn OleCreateMenuDescriptor(hmenucombined: super::super::UI::WindowsAndMessaging::HMENU, lpmenuwidths: *const OleMenuGroupWidths) -> isize; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] pub fn OleCreatePictureIndirect(lppictdesc: *mut PICTDESC, riid: *const ::windows_sys::core::GUID, fown: super::super::Foundation::BOOL, lplpvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; @@ -154,7 +154,7 @@ extern "system" { pub fn OleCreatePropertyFrameIndirect(lpparams: *mut OCPFIPARAMS) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] - pub fn OleCreateStaticFromData(psrcdataobj: super::Com::IDataObject, iid: *const ::windows_sys::core::GUID, renderopt: u32, pformatetc: *mut super::Com::FORMATETC, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; + pub fn OleCreateStaticFromData(psrcdataobj: super::Com::IDataObject, iid: *const ::windows_sys::core::GUID, renderopt: u32, pformatetc: *const super::Com::FORMATETC, pclientsite: IOleClientSite, pstg: super::Com::StructuredStorage::IStorage, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`*"] pub fn OleDestroyMenuDescriptor(holemenu: isize) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] @@ -162,7 +162,7 @@ extern "system" { pub fn OleDoAutoConvert(pstg: super::Com::StructuredStorage::IStorage, pclsidnew: *mut ::windows_sys::core::GUID) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] - pub fn OleDraw(punknown: ::windows_sys::core::IUnknown, dwaspect: u32, hdcdraw: super::super::Graphics::Gdi::HDC, lprcbounds: *mut super::super::Foundation::RECT) -> ::windows_sys::core::HRESULT; + pub fn OleDraw(punknown: ::windows_sys::core::IUnknown, dwaspect: u32, hdcdraw: super::super::Graphics::Gdi::HDC, lprcbounds: *const super::super::Foundation::RECT) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn OleDuplicateData(hsrc: super::super::Foundation::HANDLE, cfformat: u16, uiflags: u32) -> super::super::Foundation::HANDLE; @@ -186,7 +186,7 @@ extern "system" { #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] pub fn OleIconToCursor(hinstexe: super::super::Foundation::HINSTANCE, hicon: super::super::UI::WindowsAndMessaging::HICON) -> super::super::UI::WindowsAndMessaging::HCURSOR; #[doc = "*Required features: `\"Win32_System_Ole\"`*"] - pub fn OleInitialize(pvreserved: *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; + pub fn OleInitialize(pvreserved: *const ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] pub fn OleIsCurrentClipboard(pdataobj: super::Com::IDataObject) -> ::windows_sys::core::HRESULT; @@ -261,10 +261,10 @@ extern "system" { pub fn OleSetMenuDescriptor(holemenu: isize, hwndframe: super::super::Foundation::HWND, hwndactiveobject: super::super::Foundation::HWND, lpframe: IOleInPlaceFrame, lpactiveobj: IOleInPlaceActiveObject) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] - pub fn OleTranslateAccelerator(lpframe: IOleInPlaceFrame, lpframeinfo: *mut OIFI, lpmsg: *mut super::super::UI::WindowsAndMessaging::MSG) -> ::windows_sys::core::HRESULT; - #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Graphics_Gdi\"`*"] - #[cfg(feature = "Win32_Graphics_Gdi")] - pub fn OleTranslateColor(clr: u32, hpal: super::super::Graphics::Gdi::HPALETTE, lpcolorref: *mut u32) -> ::windows_sys::core::HRESULT; + pub fn OleTranslateAccelerator(lpframe: IOleInPlaceFrame, lpframeinfo: *const OIFI, lpmsg: *const super::super::UI::WindowsAndMessaging::MSG) -> ::windows_sys::core::HRESULT; + #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] + pub fn OleTranslateColor(clr: u32, hpal: super::super::Graphics::Gdi::HPALETTE, lpcolorref: *mut super::super::Foundation::COLORREF) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] pub fn OleUIAddVerbMenuA(lpoleobj: IOleObject, lpszshorttype: ::windows_sys::core::PCSTR, hmenu: super::super::UI::WindowsAndMessaging::HMENU, upos: u32, uidverbmin: u32, uidverbmax: u32, baddconvert: super::super::Foundation::BOOL, idconvert: u32, lphmenu: *mut super::super::UI::WindowsAndMessaging::HMENU) -> super::super::Foundation::BOOL; @@ -351,7 +351,7 @@ extern "system" { pub fn RegisterTypeLibForUser(ptlib: super::Com::ITypeLib, szfullpath: ::windows_sys::core::PCWSTR, szhelpdir: ::windows_sys::core::PCWSTR) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(all(feature = "Win32_Graphics_Gdi", feature = "Win32_System_Com_StructuredStorage"))] - pub fn ReleaseStgMedium(param0: *mut super::Com::STGMEDIUM); + pub fn ReleaseStgMedium(param0: *const super::Com::STGMEDIUM); #[doc = "*Required features: `\"Win32_System_Ole\"`*"] pub fn RevokeActiveObject(dwregister: u32, pvreserved: *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`*"] @@ -371,7 +371,7 @@ extern "system" { pub fn SafeArrayAllocDescriptor(cdims: u32, ppsaout: *mut *mut super::Com::SAFEARRAY) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] - pub fn SafeArrayAllocDescriptorEx(vt: u16, cdims: u32, ppsaout: *mut *mut super::Com::SAFEARRAY) -> ::windows_sys::core::HRESULT; + pub fn SafeArrayAllocDescriptorEx(vt: super::Com::VARENUM, cdims: u32, ppsaout: *mut *mut super::Com::SAFEARRAY) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] pub fn SafeArrayCopy(psa: *const super::Com::SAFEARRAY, ppsaout: *mut *mut super::Com::SAFEARRAY) -> ::windows_sys::core::HRESULT; @@ -380,16 +380,16 @@ extern "system" { pub fn SafeArrayCopyData(psasource: *const super::Com::SAFEARRAY, psatarget: *const super::Com::SAFEARRAY) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] - pub fn SafeArrayCreate(vt: u16, cdims: u32, rgsabound: *const super::Com::SAFEARRAYBOUND) -> *mut super::Com::SAFEARRAY; + pub fn SafeArrayCreate(vt: super::Com::VARENUM, cdims: u32, rgsabound: *const super::Com::SAFEARRAYBOUND) -> *mut super::Com::SAFEARRAY; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] - pub fn SafeArrayCreateEx(vt: u16, cdims: u32, rgsabound: *const super::Com::SAFEARRAYBOUND, pvextra: *const ::core::ffi::c_void) -> *mut super::Com::SAFEARRAY; + pub fn SafeArrayCreateEx(vt: super::Com::VARENUM, cdims: u32, rgsabound: *const super::Com::SAFEARRAYBOUND, pvextra: *const ::core::ffi::c_void) -> *mut super::Com::SAFEARRAY; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] - pub fn SafeArrayCreateVector(vt: u16, llbound: i32, celements: u32) -> *mut super::Com::SAFEARRAY; + pub fn SafeArrayCreateVector(vt: super::Com::VARENUM, llbound: i32, celements: u32) -> *mut super::Com::SAFEARRAY; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] - pub fn SafeArrayCreateVectorEx(vt: u16, llbound: i32, celements: u32, pvextra: *const ::core::ffi::c_void) -> *mut super::Com::SAFEARRAY; + pub fn SafeArrayCreateVectorEx(vt: super::Com::VARENUM, llbound: i32, celements: u32, pvextra: *const ::core::ffi::c_void) -> *mut super::Com::SAFEARRAY; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] pub fn SafeArrayDestroy(psa: *const super::Com::SAFEARRAY) -> ::windows_sys::core::HRESULT; @@ -1182,10 +1182,10 @@ extern "system" { pub fn VarXor(pvarleft: *const super::Com::VARIANT, pvarright: *const super::Com::VARIANT, pvarresult: *mut super::Com::VARIANT) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] - pub fn VariantChangeType(pvargdest: *mut super::Com::VARIANT, pvarsrc: *const super::Com::VARIANT, wflags: u16, vt: u16) -> ::windows_sys::core::HRESULT; + pub fn VariantChangeType(pvargdest: *mut super::Com::VARIANT, pvarsrc: *const super::Com::VARIANT, wflags: u16, vt: super::Com::VARENUM) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] - pub fn VariantChangeTypeEx(pvargdest: *mut super::Com::VARIANT, pvarsrc: *const super::Com::VARIANT, lcid: u32, wflags: u16, vt: u16) -> ::windows_sys::core::HRESULT; + pub fn VariantChangeTypeEx(pvargdest: *mut super::Com::VARIANT, pvarsrc: *const super::Com::VARIANT, lcid: u32, wflags: u16, vt: super::Com::VARENUM) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub fn VariantClear(pvarg: *mut super::Com::VARIANT) -> ::windows_sys::core::HRESULT; @@ -2369,7 +2369,7 @@ pub struct METHODDATA { pub cc: super::Com::CALLCONV, pub cArgs: u32, pub wFlags: u16, - pub vtReturn: u16, + pub vtReturn: super::Com::VARENUM, } #[cfg(feature = "Win32_System_Com")] impl ::core::marker::Copy for METHODDATA {} @@ -3978,12 +3978,15 @@ impl ::core::clone::Clone for PAGESET { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] +#[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] +#[cfg(feature = "Win32_System_Com")] pub struct PARAMDATA { pub szName: ::windows_sys::core::PWSTR, - pub vt: u16, + pub vt: super::Com::VARENUM, } +#[cfg(feature = "Win32_System_Com")] impl ::core::marker::Copy for PARAMDATA {} +#[cfg(feature = "Win32_System_Com")] impl ::core::clone::Clone for PARAMDATA { fn clone(&self) -> Self { *self @@ -4506,112 +4509,6 @@ pub const VARCMP_LT: u32 = 0u32; #[doc = "*Required features: `\"Win32_System_Ole\"`*"] pub const VARCMP_NULL: u32 = 3u32; #[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub type VARENUM = i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_EMPTY: VARENUM = 0i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_NULL: VARENUM = 1i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_I2: VARENUM = 2i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_I4: VARENUM = 3i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_R4: VARENUM = 4i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_R8: VARENUM = 5i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_CY: VARENUM = 6i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_DATE: VARENUM = 7i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_BSTR: VARENUM = 8i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_DISPATCH: VARENUM = 9i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_ERROR: VARENUM = 10i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_BOOL: VARENUM = 11i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_VARIANT: VARENUM = 12i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_UNKNOWN: VARENUM = 13i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_DECIMAL: VARENUM = 14i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_I1: VARENUM = 16i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_UI1: VARENUM = 17i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_UI2: VARENUM = 18i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_UI4: VARENUM = 19i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_I8: VARENUM = 20i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_UI8: VARENUM = 21i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_INT: VARENUM = 22i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_UINT: VARENUM = 23i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_VOID: VARENUM = 24i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_HRESULT: VARENUM = 25i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_PTR: VARENUM = 26i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_SAFEARRAY: VARENUM = 27i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_CARRAY: VARENUM = 28i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_USERDEFINED: VARENUM = 29i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_LPSTR: VARENUM = 30i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_LPWSTR: VARENUM = 31i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_RECORD: VARENUM = 36i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_INT_PTR: VARENUM = 37i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_UINT_PTR: VARENUM = 38i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_FILETIME: VARENUM = 64i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_BLOB: VARENUM = 65i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_STREAM: VARENUM = 66i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_STORAGE: VARENUM = 67i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_STREAMED_OBJECT: VARENUM = 68i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_STORED_OBJECT: VARENUM = 69i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_BLOB_OBJECT: VARENUM = 70i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_CF: VARENUM = 71i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_CLSID: VARENUM = 72i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_VERSIONED_STREAM: VARENUM = 73i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_BSTR_BLOB: VARENUM = 4095i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_VECTOR: VARENUM = 4096i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_ARRAY: VARENUM = 8192i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_BYREF: VARENUM = 16384i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_RESERVED: VARENUM = 32768i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_ILLEGAL: VARENUM = 65535i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_ILLEGALMASKED: VARENUM = 4095i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_TYPEMASK: VARENUM = 4095i32; -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] pub type VARFLAGS = i32; #[doc = "*Required features: `\"Win32_System_Ole\"`*"] pub const VARFLAG_FREADONLY: VARFLAGS = 1i32; diff --git a/crates/libs/sys/src/Windows/Win32/System/Performance/mod.rs b/crates/libs/sys/src/Windows/Win32/System/Performance/mod.rs index ae7dfb8533..65febaae62 100644 --- a/crates/libs/sys/src/Windows/Win32/System/Performance/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/System/Performance/mod.rs @@ -232,7 +232,7 @@ extern "system" { #[doc = "*Required features: `\"Win32_System_Performance\"`*"] pub fn PdhVerifySQLDBW(szdatasource: ::windows_sys::core::PCWSTR) -> i32; #[doc = "*Required features: `\"Win32_System_Performance\"`*"] - pub fn PerfAddCounters(hquery: PerfQueryHandle, pcounters: *const PERF_COUNTER_IDENTIFIER, cbcounters: u32) -> u32; + pub fn PerfAddCounters(hquery: PerfQueryHandle, pcounters: *mut PERF_COUNTER_IDENTIFIER, cbcounters: u32) -> u32; #[doc = "*Required features: `\"Win32_System_Performance\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn PerfCloseQueryHandle(hquery: super::super::Foundation::HANDLE) -> u32; @@ -245,7 +245,7 @@ extern "system" { #[cfg(feature = "Win32_Foundation")] pub fn PerfDecrementULongLongCounterValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, value: u64) -> u32; #[doc = "*Required features: `\"Win32_System_Performance\"`*"] - pub fn PerfDeleteCounters(hquery: PerfQueryHandle, pcounters: *const PERF_COUNTER_IDENTIFIER, cbcounters: u32) -> u32; + pub fn PerfDeleteCounters(hquery: PerfQueryHandle, pcounters: *mut PERF_COUNTER_IDENTIFIER, cbcounters: u32) -> u32; #[doc = "*Required features: `\"Win32_System_Performance\"`*"] pub fn PerfDeleteInstance(provider: PerfProviderHandle, instanceblock: *const PERF_COUNTERSET_INSTANCE) -> u32; #[doc = "*Required features: `\"Win32_System_Performance\"`*"] diff --git a/crates/libs/sys/src/Windows/Win32/System/Power/mod.rs b/crates/libs/sys/src/Windows/Win32/System/Power/mod.rs index fb0d8423bd..93b0c1dcd0 100644 --- a/crates/libs/sys/src/Windows/Win32/System/Power/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/System/Power/mod.rs @@ -1,7 +1,8 @@ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - #[doc = "*Required features: `\"Win32_System_Power\"`*"] - pub fn CallNtPowerInformation(informationlevel: POWER_INFORMATION_LEVEL, inputbuffer: *const ::core::ffi::c_void, inputbufferlength: u32, outputbuffer: *mut ::core::ffi::c_void, outputbufferlength: u32) -> i32; + #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn CallNtPowerInformation(informationlevel: POWER_INFORMATION_LEVEL, inputbuffer: *const ::core::ffi::c_void, inputbufferlength: u32, outputbuffer: *mut ::core::ffi::c_void, outputbufferlength: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn CanUserWritePwrScheme() -> super::super::Foundation::BOOLEAN; @@ -1042,6 +1043,14 @@ pub const POWER_ATTRIBUTE_HIDE: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_Power\"`*"] pub const POWER_ATTRIBUTE_SHOW_AOAC: u32 = 2u32; #[doc = "*Required features: `\"Win32_System_Power\"`*"] +pub type POWER_COOLING_MODE = u16; +#[doc = "*Required features: `\"Win32_System_Power\"`*"] +pub const PO_TZ_ACTIVE: POWER_COOLING_MODE = 0u16; +#[doc = "*Required features: `\"Win32_System_Power\"`*"] +pub const PO_TZ_PASSIVE: POWER_COOLING_MODE = 1u16; +#[doc = "*Required features: `\"Win32_System_Power\"`*"] +pub const PO_TZ_INVALID_MODE: POWER_COOLING_MODE = 2u16; +#[doc = "*Required features: `\"Win32_System_Power\"`*"] pub type POWER_DATA_ACCESSOR = i32; #[doc = "*Required features: `\"Win32_System_Power\"`*"] pub const ACCESS_AC_POWER_SETTING_INDEX: POWER_DATA_ACCESSOR = 0i32; @@ -1390,6 +1399,22 @@ impl ::core::clone::Clone for PROCESSOR_OBJECT_INFO_EX { } #[repr(C)] #[doc = "*Required features: `\"Win32_System_Power\"`*"] +pub struct PROCESSOR_POWER_INFORMATION { + pub Number: u64, + pub MaxMhz: u64, + pub CurrentMhz: u64, + pub MhzLimit: u64, + pub MaxIdleState: u64, + pub CurrentIdleState: u64, +} +impl ::core::marker::Copy for PROCESSOR_POWER_INFORMATION {} +impl ::core::clone::Clone for PROCESSOR_POWER_INFORMATION { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Power\"`*"] pub struct PROCESSOR_POWER_POLICY { pub Revision: u32, pub DynamicThrottle: u8, @@ -1524,6 +1549,20 @@ pub const PoHot: SYSTEM_POWER_CONDITION = 2i32; #[doc = "*Required features: `\"Win32_System_Power\"`*"] pub const PoConditionMaximum: SYSTEM_POWER_CONDITION = 3i32; #[repr(C)] +#[doc = "*Required features: `\"Win32_System_Power\"`*"] +pub struct SYSTEM_POWER_INFORMATION { + pub MaxIdlenessAllowed: u64, + pub Idleness: u64, + pub TimeRemaining: u64, + pub CoolingMode: POWER_COOLING_MODE, +} +impl ::core::marker::Copy for SYSTEM_POWER_INFORMATION {} +impl ::core::clone::Clone for SYSTEM_POWER_INFORMATION { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct SYSTEM_POWER_LEVEL { diff --git a/crates/libs/sys/src/Windows/Win32/System/RemoteManagement/mod.rs b/crates/libs/sys/src/Windows/Win32/System/RemoteManagement/mod.rs index 6e7f723c5a..077d632853 100644 --- a/crates/libs/sys/src/Windows/Win32/System/RemoteManagement/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/System/RemoteManagement/mod.rs @@ -1657,7 +1657,7 @@ impl ::core::clone::Clone for WSMAN_SHELL_STARTUP_INFO_V10 { #[repr(C)] #[doc = "*Required features: `\"Win32_System_RemoteManagement\"`*"] pub struct WSMAN_SHELL_STARTUP_INFO_V11 { - pub __AnonymousBase_wsman_L665_C48: WSMAN_SHELL_STARTUP_INFO_V10, + pub Base: WSMAN_SHELL_STARTUP_INFO_V10, pub name: ::windows_sys::core::PCWSTR, } impl ::core::marker::Copy for WSMAN_SHELL_STARTUP_INFO_V11 {} diff --git a/crates/libs/sys/src/Windows/Win32/System/Search/mod.rs b/crates/libs/sys/src/Windows/Win32/System/Search/mod.rs index 76ffea5ac1..b44e7f7ad2 100644 --- a/crates/libs/sys/src/Windows/Win32/System/Search/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/System/Search/mod.rs @@ -2907,7 +2907,7 @@ pub struct DBPROPINFO { pub pwszDescription: ::windows_sys::core::PWSTR, pub dwPropertyID: u32, pub dwFlags: u32, - pub vtType: u16, + pub vtType: super::Com::VARENUM, pub vValues: super::Com::VARIANT, } #[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] @@ -2928,7 +2928,7 @@ pub struct DBPROPINFO { pub pwszDescription: ::windows_sys::core::PWSTR, pub dwPropertyID: u32, pub dwFlags: u32, - pub vtType: u16, + pub vtType: super::Com::VARENUM, pub vValues: super::Com::VARIANT, } #[cfg(target_arch = "x86")] @@ -5995,13 +5995,16 @@ pub const KAGPROP_SYSTEMFUNCTIONS: u32 = 21u32; #[doc = "*Required features: `\"Win32_System_Search\"`*"] pub const KAGPROP_TIMEDATEFUNCTIONS: u32 = 22u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_System_Search\"`*"] +#[doc = "*Required features: `\"Win32_System_Search\"`, `\"Win32_System_Com\"`*"] +#[cfg(feature = "Win32_System_Com")] pub struct KAGREQDIAG { pub ulDiagFlags: u32, - pub vt: u16, + pub vt: super::Com::VARENUM, pub sDiagField: i16, } +#[cfg(feature = "Win32_System_Com")] impl ::core::marker::Copy for KAGREQDIAG {} +#[cfg(feature = "Win32_System_Com")] impl ::core::clone::Clone for KAGREQDIAG { fn clone(&self) -> Self { *self diff --git a/crates/libs/sys/src/Windows/Win32/System/SystemServices/mod.rs b/crates/libs/sys/src/Windows/Win32/System/SystemServices/mod.rs index 911e0976a3..48b37a6f44 100644 --- a/crates/libs/sys/src/Windows/Win32/System/SystemServices/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/System/SystemServices/mod.rs @@ -501,26 +501,6 @@ pub const CFG_CALL_TARGET_VALID: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const CFG_CALL_TARGET_VALID_XFG: u32 = 8u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub type CHOOSECOLOR_FLAGS = u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_RGBINIT: CHOOSECOLOR_FLAGS = 1u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_FULLOPEN: CHOOSECOLOR_FLAGS = 2u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_PREVENTFULLOPEN: CHOOSECOLOR_FLAGS = 4u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_SHOWHELP: CHOOSECOLOR_FLAGS = 8u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_ENABLEHOOK: CHOOSECOLOR_FLAGS = 16u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_ENABLETEMPLATE: CHOOSECOLOR_FLAGS = 32u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_ENABLETEMPLATEHANDLE: CHOOSECOLOR_FLAGS = 64u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_SOLIDCOLOR: CHOOSECOLOR_FLAGS = 128u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_ANYCOLOR: CHOOSECOLOR_FLAGS = 256u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const CLAIM_SECURITY_ATTRIBUTES_INFORMATION_VERSION: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const CLAIM_SECURITY_ATTRIBUTES_INFORMATION_VERSION_V1: u32 = 1u32; @@ -1694,8 +1674,6 @@ pub const DDBLT_EXTENDED_PRESENTATION_STRETCHFACTOR: i32 = 16i32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const DEDICATED_MEMORY_CACHE_ELIGIBLE: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const DELETE: u32 = 65536u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const DEVICEFAMILYDEVICEFORM_KEY: &str = "\\Registry\\Machine\\Software\\Microsoft\\Windows NT\\CurrentVersion\\OEM"; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const DEVICEFAMILYDEVICEFORM_VALUE: &str = "DeviceForm"; @@ -2311,8 +2289,6 @@ pub const EVENTLOG_PAIRED_EVENT_INACTIVE: u32 = 16u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const EVENTLOG_START_PAIRED_EVENT: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const EVENT_MODIFY_STATE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const EXCEPTION_COLLIDED_UNWIND: u32 = 64u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const EXCEPTION_EXECUTE_FAULT: u32 = 8u32; @@ -9053,8 +9029,6 @@ pub const SEC_HUGE_PAGES: u32 = 131072u32; pub const SEF_AI_USE_EXTRA_PARAMS: u32 = 2048u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const SEF_FORCE_USER_MODE: u32 = 8192u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SEMAPHORE_MODIFY_STATE: u32 = 2u32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_SystemServices\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -9409,38 +9383,6 @@ pub const SIZE_OF_80387_REGISTERS: u32 = 80u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const SMB_CCF_APP_INSTANCE_EA_NAME: &str = "ClusteredApplicationInstance"; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub type SND_FLAGS = u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_APPLICATION: SND_FLAGS = 128u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_ALIAS: SND_FLAGS = 65536u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_ALIAS_ID: SND_FLAGS = 1114112u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_FILENAME: SND_FLAGS = 131072u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_RESOURCE: SND_FLAGS = 262148u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_ASYNC: SND_FLAGS = 1u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_NODEFAULT: SND_FLAGS = 2u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_LOOP: SND_FLAGS = 8u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_MEMORY: SND_FLAGS = 4u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_NOSTOP: SND_FLAGS = 16u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_NOWAIT: SND_FLAGS = 8192u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_PURGE: SND_FLAGS = 64u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_SENTRY: SND_FLAGS = 524288u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_SYNC: SND_FLAGS = 0u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_SYSTEM: SND_FLAGS = 2097152u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const SORT_CHINESE_BIG5: u32 = 0u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const SORT_CHINESE_BOPOMOFO: u32 = 3u32; @@ -10306,10 +10248,6 @@ pub const THREAD_DYNAMIC_CODE_ALLOW: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const THREAD_PROFILING_FLAG_DISPATCH: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const TIMER_MODIFY_STATE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const TIMER_QUERY_STATE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const TIME_ZONE_ID_DAYLIGHT: u32 = 2u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const TIME_ZONE_ID_STANDARD: u32 = 1u32; @@ -10737,16 +10675,12 @@ pub const WDT_REMOTE_CALL: u32 = 1383359575u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub type WORKERCALLBACKFUNC = ::core::option::Option; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const WRITE_DAC: u32 = 262144u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const WRITE_NV_MEMORY_FLAG_FLUSH: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const WRITE_NV_MEMORY_FLAG_NON_TEMPORAL: u32 = 2u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const WRITE_NV_MEMORY_FLAG_NO_DRAIN: u32 = 256u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const WRITE_OWNER: u32 = 524288u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const WRITE_WATCH_FLAG_RESET: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const WT_EXECUTEDELETEWAIT: u32 = 8u32; diff --git a/crates/libs/sys/src/Windows/Win32/System/Threading/mod.rs b/crates/libs/sys/src/Windows/Win32/System/Threading/mod.rs index 8baaf3fb27..c565e989ed 100644 --- a/crates/libs/sys/src/Windows/Win32/System/Threading/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/System/Threading/mod.rs @@ -516,13 +516,13 @@ extern "system" { pub fn NtSetInformationThread(threadhandle: super::super::Foundation::HANDLE, threadinformationclass: THREADINFOCLASS, threadinformation: *const ::core::ffi::c_void, threadinformationlength: u32) -> super::super::Foundation::NTSTATUS; #[doc = "*Required features: `\"Win32_System_Threading\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn OpenEventA(dwdesiredaccess: u32, binherithandle: super::super::Foundation::BOOL, lpname: ::windows_sys::core::PCSTR) -> super::super::Foundation::HANDLE; + pub fn OpenEventA(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: super::super::Foundation::BOOL, lpname: ::windows_sys::core::PCSTR) -> super::super::Foundation::HANDLE; #[doc = "*Required features: `\"Win32_System_Threading\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn OpenEventW(dwdesiredaccess: u32, binherithandle: super::super::Foundation::BOOL, lpname: ::windows_sys::core::PCWSTR) -> super::super::Foundation::HANDLE; + pub fn OpenEventW(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: super::super::Foundation::BOOL, lpname: ::windows_sys::core::PCWSTR) -> super::super::Foundation::HANDLE; #[doc = "*Required features: `\"Win32_System_Threading\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn OpenMutexW(dwdesiredaccess: u32, binherithandle: super::super::Foundation::BOOL, lpname: ::windows_sys::core::PCWSTR) -> super::super::Foundation::HANDLE; + pub fn OpenMutexW(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: super::super::Foundation::BOOL, lpname: ::windows_sys::core::PCWSTR) -> super::super::Foundation::HANDLE; #[doc = "*Required features: `\"Win32_System_Threading\"`*"] pub fn OpenPrivateNamespaceA(lpboundarydescriptor: *const ::core::ffi::c_void, lpaliasprefix: ::windows_sys::core::PCSTR) -> NamespaceHandle; #[doc = "*Required features: `\"Win32_System_Threading\"`*"] @@ -535,7 +535,7 @@ extern "system" { pub fn OpenProcessToken(processhandle: super::super::Foundation::HANDLE, desiredaccess: super::super::Security::TOKEN_ACCESS_MASK, tokenhandle: *mut super::super::Foundation::HANDLE) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_System_Threading\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn OpenSemaphoreW(dwdesiredaccess: u32, binherithandle: super::super::Foundation::BOOL, lpname: ::windows_sys::core::PCWSTR) -> super::super::Foundation::HANDLE; + pub fn OpenSemaphoreW(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: super::super::Foundation::BOOL, lpname: ::windows_sys::core::PCWSTR) -> super::super::Foundation::HANDLE; #[doc = "*Required features: `\"Win32_System_Threading\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn OpenThread(dwdesiredaccess: THREAD_ACCESS_RIGHTS, binherithandle: super::super::Foundation::BOOL, dwthreadid: u32) -> super::super::Foundation::HANDLE; @@ -544,7 +544,7 @@ extern "system" { pub fn OpenThreadToken(threadhandle: super::super::Foundation::HANDLE, desiredaccess: super::super::Security::TOKEN_ACCESS_MASK, openasself: super::super::Foundation::BOOL, tokenhandle: *mut super::super::Foundation::HANDLE) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_System_Threading\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn OpenWaitableTimerW(dwdesiredaccess: u32, binherithandle: super::super::Foundation::BOOL, lptimername: ::windows_sys::core::PCWSTR) -> super::super::Foundation::HANDLE; + pub fn OpenWaitableTimerW(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: super::super::Foundation::BOOL, lptimername: ::windows_sys::core::PCWSTR) -> super::super::Foundation::HANDLE; #[doc = "*Required features: `\"Win32_System_Threading\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn PulseEvent(hevent: super::super::Foundation::HANDLE) -> super::super::Foundation::BOOL; @@ -951,8 +951,6 @@ impl ::core::clone::Clone for MEMORY_PRIORITY_INFORMATION { *self } } -#[doc = "*Required features: `\"Win32_System_Threading\"`*"] -pub const MUTEX_MODIFY_STATE: u32 = 1u32; pub type NamespaceHandle = isize; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Threading\"`, `\"Win32_Foundation\"`, `\"Win32_System_Kernel\"`*"] @@ -1876,6 +1874,36 @@ pub const STARTF_USESIZE: STARTUPINFOW_FLAGS = 2u32; #[doc = "*Required features: `\"Win32_System_Threading\"`*"] pub const STARTF_USESTDHANDLES: STARTUPINFOW_FLAGS = 256u32; #[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub type SYNCHRONIZATION_ACCESS_RIGHTS = u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const EVENT_ALL_ACCESS: SYNCHRONIZATION_ACCESS_RIGHTS = 2031619u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const EVENT_MODIFY_STATE: SYNCHRONIZATION_ACCESS_RIGHTS = 2u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const MUTEX_ALL_ACCESS: SYNCHRONIZATION_ACCESS_RIGHTS = 2031617u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const MUTEX_MODIFY_STATE: SYNCHRONIZATION_ACCESS_RIGHTS = 1u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const SEMAPHORE_ALL_ACCESS: SYNCHRONIZATION_ACCESS_RIGHTS = 2031619u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const SEMAPHORE_MODIFY_STATE: SYNCHRONIZATION_ACCESS_RIGHTS = 2u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const TIMER_ALL_ACCESS: SYNCHRONIZATION_ACCESS_RIGHTS = 2031619u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const TIMER_MODIFY_STATE: SYNCHRONIZATION_ACCESS_RIGHTS = 2u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const TIMER_QUERY_STATE: SYNCHRONIZATION_ACCESS_RIGHTS = 1u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const SYNCHRONIZATION_DELETE: SYNCHRONIZATION_ACCESS_RIGHTS = 65536u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const SYNCHRONIZATION_READ_CONTROL: SYNCHRONIZATION_ACCESS_RIGHTS = 131072u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const SYNCHRONIZATION_WRITE_DAC: SYNCHRONIZATION_ACCESS_RIGHTS = 262144u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const SYNCHRONIZATION_WRITE_OWNER: SYNCHRONIZATION_ACCESS_RIGHTS = 524288u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const SYNCHRONIZATION_SYNCHRONIZE: SYNCHRONIZATION_ACCESS_RIGHTS = 1048576u32; +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] pub const SYNCHRONIZATION_BARRIER_FLAGS_BLOCK_ONLY: u32 = 2u32; #[doc = "*Required features: `\"Win32_System_Threading\"`*"] pub const SYNCHRONIZATION_BARRIER_FLAGS_NO_DELETE: u32 = 4u32; diff --git a/crates/libs/sys/src/Windows/Win32/UI/ColorSystem/mod.rs b/crates/libs/sys/src/Windows/Win32/UI/ColorSystem/mod.rs index 1d67fe38e5..534056828d 100644 --- a/crates/libs/sys/src/Windows/Win32/UI/ColorSystem/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/UI/ColorSystem/mod.rs @@ -60,7 +60,7 @@ extern "system" { pub fn CMTranslateColors(hcmtransform: isize, lpainputcolors: *const COLOR, ncolors: u32, ctinput: COLORTYPE, lpaoutputcolors: *mut COLOR, ctoutput: COLORTYPE) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_ColorSystem\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn CMTranslateRGB(hcmtransform: isize, colorref: u32, lpcolorref: *mut u32, dwflags: u32) -> super::super::Foundation::BOOL; + pub fn CMTranslateRGB(hcmtransform: isize, colorref: super::super::Foundation::COLORREF, lpcolorref: *mut u32, dwflags: u32) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_ColorSystem\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn CMTranslateRGBs(hcmtransform: isize, lpsrcbits: *const ::core::ffi::c_void, bminput: BMFORMAT, dwwidth: u32, dwheight: u32, dwstride: u32, lpdestbits: *mut ::core::ffi::c_void, bmoutput: BMFORMAT, dwtranslatedirection: u32) -> super::super::Foundation::BOOL; diff --git a/crates/libs/sys/src/Windows/Win32/UI/Controls/Dialogs/mod.rs b/crates/libs/sys/src/Windows/Win32/UI/Controls/Dialogs/mod.rs index 44474cb6c4..351f1529fc 100644 --- a/crates/libs/sys/src/Windows/Win32/UI/Controls/Dialogs/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/UI/Controls/Dialogs/mod.rs @@ -95,9 +95,9 @@ pub struct CHOOSECOLORA { pub lStructSize: u32, pub hwndOwner: super::super::super::Foundation::HWND, pub hInstance: super::super::super::Foundation::HWND, - pub rgbResult: u32, - pub lpCustColors: *mut u32, - pub Flags: u32, + pub rgbResult: super::super::super::Foundation::COLORREF, + pub lpCustColors: *mut super::super::super::Foundation::COLORREF, + pub Flags: CHOOSECOLOR_FLAGS, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCCHOOKPROC, pub lpTemplateName: ::windows_sys::core::PCSTR, @@ -120,9 +120,9 @@ pub struct CHOOSECOLORA { pub lStructSize: u32, pub hwndOwner: super::super::super::Foundation::HWND, pub hInstance: super::super::super::Foundation::HWND, - pub rgbResult: u32, - pub lpCustColors: *mut u32, - pub Flags: u32, + pub rgbResult: super::super::super::Foundation::COLORREF, + pub lpCustColors: *mut super::super::super::Foundation::COLORREF, + pub Flags: CHOOSECOLOR_FLAGS, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCCHOOKPROC, pub lpTemplateName: ::windows_sys::core::PCSTR, @@ -145,9 +145,9 @@ pub struct CHOOSECOLORW { pub lStructSize: u32, pub hwndOwner: super::super::super::Foundation::HWND, pub hInstance: super::super::super::Foundation::HWND, - pub rgbResult: u32, - pub lpCustColors: *mut u32, - pub Flags: u32, + pub rgbResult: super::super::super::Foundation::COLORREF, + pub lpCustColors: *mut super::super::super::Foundation::COLORREF, + pub Flags: CHOOSECOLOR_FLAGS, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCCHOOKPROC, pub lpTemplateName: ::windows_sys::core::PCWSTR, @@ -170,9 +170,9 @@ pub struct CHOOSECOLORW { pub lStructSize: u32, pub hwndOwner: super::super::super::Foundation::HWND, pub hInstance: super::super::super::Foundation::HWND, - pub rgbResult: u32, - pub lpCustColors: *mut u32, - pub Flags: u32, + pub rgbResult: super::super::super::Foundation::COLORREF, + pub lpCustColors: *mut super::super::super::Foundation::COLORREF, + pub Flags: CHOOSECOLOR_FLAGS, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCCHOOKPROC, pub lpTemplateName: ::windows_sys::core::PCWSTR, @@ -187,6 +187,26 @@ impl ::core::clone::Clone for CHOOSECOLORW { *self } } +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub type CHOOSECOLOR_FLAGS = u32; +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_RGBINIT: CHOOSECOLOR_FLAGS = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_FULLOPEN: CHOOSECOLOR_FLAGS = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_PREVENTFULLOPEN: CHOOSECOLOR_FLAGS = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_SHOWHELP: CHOOSECOLOR_FLAGS = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_ENABLEHOOK: CHOOSECOLOR_FLAGS = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_ENABLETEMPLATE: CHOOSECOLOR_FLAGS = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_ENABLETEMPLATEHANDLE: CHOOSECOLOR_FLAGS = 64u32; +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_SOLIDCOLOR: CHOOSECOLOR_FLAGS = 128u32; +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_ANYCOLOR: CHOOSECOLOR_FLAGS = 256u32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] @@ -198,7 +218,7 @@ pub struct CHOOSEFONTA { pub lpLogFont: *mut super::super::super::Graphics::Gdi::LOGFONTA, pub iPointSize: i32, pub Flags: CHOOSEFONT_FLAGS, - pub rgbColors: u32, + pub rgbColors: super::super::super::Foundation::COLORREF, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCFHOOKPROC, pub lpTemplateName: ::windows_sys::core::PCSTR, @@ -230,7 +250,7 @@ pub struct CHOOSEFONTA { pub lpLogFont: *mut super::super::super::Graphics::Gdi::LOGFONTA, pub iPointSize: i32, pub Flags: CHOOSEFONT_FLAGS, - pub rgbColors: u32, + pub rgbColors: super::super::super::Foundation::COLORREF, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCFHOOKPROC, pub lpTemplateName: ::windows_sys::core::PCSTR, @@ -262,7 +282,7 @@ pub struct CHOOSEFONTW { pub lpLogFont: *mut super::super::super::Graphics::Gdi::LOGFONTW, pub iPointSize: i32, pub Flags: CHOOSEFONT_FLAGS, - pub rgbColors: u32, + pub rgbColors: super::super::super::Foundation::COLORREF, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCFHOOKPROC, pub lpTemplateName: ::windows_sys::core::PCWSTR, @@ -294,7 +314,7 @@ pub struct CHOOSEFONTW { pub lpLogFont: *mut super::super::super::Graphics::Gdi::LOGFONTW, pub iPointSize: i32, pub Flags: CHOOSEFONT_FLAGS, - pub rgbColors: u32, + pub rgbColors: super::super::super::Foundation::COLORREF, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCFHOOKPROC, pub lpTemplateName: ::windows_sys::core::PCWSTR, diff --git a/crates/libs/sys/src/Windows/Win32/UI/Controls/RichEdit/mod.rs b/crates/libs/sys/src/Windows/Win32/UI/Controls/RichEdit/mod.rs index bc6c1c418e..ce66810931 100644 --- a/crates/libs/sys/src/Windows/Win32/UI/Controls/RichEdit/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/UI/Controls/RichEdit/mod.rs @@ -270,10 +270,10 @@ pub const CN_NEWREDO: CHANGETYPE = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct CHARFORMAT2A { - pub __AnonymousBase_richedit_L736_C23: CHARFORMATA, + pub Base: CHARFORMATA, pub wWeight: u16, pub sSpacing: i16, - pub crBackColor: u32, + pub crBackColor: super::super::super::Foundation::COLORREF, pub lcid: u32, pub Anonymous: CHARFORMAT2A_0, pub sStyle: i16, @@ -307,12 +307,13 @@ impl ::core::clone::Clone for CHARFORMAT2A_0 { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct CHARFORMAT2W { - pub __AnonymousBase_richedit_L711_C23: CHARFORMATW, + pub Base: CHARFORMATW, pub wWeight: u16, pub sSpacing: i16, - pub crBackColor: u32, + pub crBackColor: super::super::super::Foundation::COLORREF, pub lcid: u32, pub Anonymous: CHARFORMAT2W_0, pub sStyle: i16, @@ -322,19 +323,24 @@ pub struct CHARFORMAT2W { pub bRevAuthor: u8, pub bUnderlineColor: u8, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for CHARFORMAT2W {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for CHARFORMAT2W { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub union CHARFORMAT2W_0 { pub dwReserved: u32, pub dwCookie: u32, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for CHARFORMAT2W_0 {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for CHARFORMAT2W_0 { fn clone(&self) -> Self { *self @@ -349,7 +355,7 @@ pub struct CHARFORMATA { pub dwEffects: CFE_EFFECTS, pub yHeight: i32, pub yOffset: i32, - pub crTextColor: u32, + pub crTextColor: super::super::super::Foundation::COLORREF, pub bCharSet: u8, pub bPitchAndFamily: u8, pub szFaceName: [super::super::super::Foundation::CHAR; 32], @@ -363,19 +369,22 @@ impl ::core::clone::Clone for CHARFORMATA { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct CHARFORMATW { pub cbSize: u32, pub dwMask: CFM_MASK, pub dwEffects: CFE_EFFECTS, pub yHeight: i32, pub yOffset: i32, - pub crTextColor: u32, + pub crTextColor: super::super::super::Foundation::COLORREF, pub bCharSet: u8, pub bPitchAndFamily: u8, pub szFaceName: [u16; 32], } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for CHARFORMATW {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for CHARFORMATW { fn clone(&self) -> Self { *self @@ -409,13 +418,16 @@ impl ::core::clone::Clone for CLIPBOARDFORMAT { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct COMPCOLOR { - pub crText: u32, - pub crBackground: u32, + pub crText: super::super::super::Foundation::COLORREF, + pub crBackground: super::super::super::Foundation::COLORREF, pub dwEffects: u32, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for COMPCOLOR {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for COMPCOLOR { fn clone(&self) -> Self { *self @@ -1451,7 +1463,7 @@ impl ::core::clone::Clone for PARAFORMAT_0 { #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`*"] pub struct PARAFORMAT2 { - pub __AnonymousBase_richedit_L1149_C22: PARAFORMAT, + pub Base: PARAFORMAT, pub dySpaceBefore: i32, pub dySpaceAfter: i32, pub dyLineSpacing: i32, @@ -1998,7 +2010,8 @@ pub const ST_UNICODE: u32 = 8u32; #[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`*"] pub const S_MSG_KEY_IGNORED: ::windows_sys::core::HRESULT = 262657i32; #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct TABLECELLPARMS { pub dxWidth: i32, pub _bitfield: u16, @@ -2007,14 +2020,16 @@ pub struct TABLECELLPARMS { pub dyBrdrTop: i16, pub dxBrdrRight: i16, pub dyBrdrBottom: i16, - pub crBrdrLeft: u32, - pub crBrdrTop: u32, - pub crBrdrRight: u32, - pub crBrdrBottom: u32, - pub crBackPat: u32, - pub crForePat: u32, + pub crBrdrLeft: super::super::super::Foundation::COLORREF, + pub crBrdrTop: super::super::super::Foundation::COLORREF, + pub crBrdrRight: super::super::super::Foundation::COLORREF, + pub crBrdrBottom: super::super::super::Foundation::COLORREF, + pub crBackPat: super::super::super::Foundation::COLORREF, + pub crForePat: super::super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for TABLECELLPARMS {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for TABLECELLPARMS { fn clone(&self) -> Self { *self diff --git a/crates/libs/sys/src/Windows/Win32/UI/Controls/mod.rs b/crates/libs/sys/src/Windows/Win32/UI/Controls/mod.rs index 80047c25e1..641d6837f4 100644 --- a/crates/libs/sys/src/Windows/Win32/UI/Controls/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/UI/Controls/mod.rs @@ -175,7 +175,7 @@ extern "system" { pub fn DrawInsert(handparent: super::super::Foundation::HWND, hlb: super::super::Foundation::HWND, nitem: i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] - pub fn DrawShadowText(hdc: super::super::Graphics::Gdi::HDC, psztext: ::windows_sys::core::PCWSTR, cch: u32, prc: *const super::super::Foundation::RECT, dwflags: u32, crtext: u32, crshadow: u32, ixoffset: i32, iyoffset: i32) -> i32; + pub fn DrawShadowText(hdc: super::super::Graphics::Gdi::HDC, psztext: ::windows_sys::core::PCWSTR, cch: u32, prc: *const super::super::Foundation::RECT, dwflags: u32, crtext: super::super::Foundation::COLORREF, crshadow: super::super::Foundation::COLORREF, ixoffset: i32, iyoffset: i32) -> i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub fn DrawStatusTextA(hdc: super::super::Graphics::Gdi::HDC, lprc: *mut super::super::Foundation::RECT, psztext: ::windows_sys::core::PCSTR, uflags: u32); @@ -290,7 +290,7 @@ extern "system" { #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub fn GetThemeAnimationTransform(htheme: isize, istoryboardid: i32, itargetid: i32, dwtransformindex: u32, ptransform: *mut TA_TRANSFORM, cbsize: u32, pcbsizeout: *mut u32) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] - pub fn GetThemeAppProperties() -> u32; + pub fn GetThemeAppProperties() -> SET_THEME_APP_PROPERTIES_FLAGS; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub fn GetThemeBackgroundContentRect(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, pboundingrect: *const super::super::Foundation::RECT, pcontentrect: *mut super::super::Foundation::RECT) -> ::windows_sys::core::HRESULT; @@ -306,24 +306,25 @@ extern "system" { #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn GetThemeBool(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pfval: *mut super::super::Foundation::BOOL) -> ::windows_sys::core::HRESULT; - #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] - pub fn GetThemeColor(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pcolor: *mut u32) -> ::windows_sys::core::HRESULT; + #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn GetThemeColor(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pcolor: *mut super::super::Foundation::COLORREF) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub fn GetThemeDocumentationProperty(pszthemename: ::windows_sys::core::PCWSTR, pszpropertyname: ::windows_sys::core::PCWSTR, pszvaluebuff: ::windows_sys::core::PWSTR, cchmaxvalchars: i32) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] - pub fn GetThemeEnumValue(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pival: *mut i32) -> ::windows_sys::core::HRESULT; + pub fn GetThemeEnumValue(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pival: *mut i32) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] - pub fn GetThemeFilename(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pszthemefilename: ::windows_sys::core::PWSTR, cchmaxbuffchars: i32) -> ::windows_sys::core::HRESULT; + pub fn GetThemeFilename(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pszthemefilename: ::windows_sys::core::PWSTR, cchmaxbuffchars: i32) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] pub fn GetThemeFont(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, ipropid: i32, pfont: *mut super::super::Graphics::Gdi::LOGFONTW) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] - pub fn GetThemeInt(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pival: *mut i32) -> ::windows_sys::core::HRESULT; + pub fn GetThemeInt(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pival: *mut i32) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] - pub fn GetThemeIntList(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pintlist: *mut INTLIST) -> ::windows_sys::core::HRESULT; + pub fn GetThemeIntList(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pintlist: *mut INTLIST) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] - pub fn GetThemeMargins(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, ipropid: i32, prc: *const super::super::Foundation::RECT, pmargins: *mut MARGINS) -> ::windows_sys::core::HRESULT; + pub fn GetThemeMargins(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, prc: *const super::super::Foundation::RECT, pmargins: *mut MARGINS) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] pub fn GetThemeMetric(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pival: *mut i32) -> ::windows_sys::core::HRESULT; @@ -332,7 +333,7 @@ extern "system" { pub fn GetThemePartSize(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, prc: *const super::super::Foundation::RECT, esize: THEMESIZE, psz: *mut super::super::Foundation::SIZE) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn GetThemePosition(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, ppoint: *mut super::super::Foundation::POINT) -> ::windows_sys::core::HRESULT; + pub fn GetThemePosition(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, ppoint: *mut super::super::Foundation::POINT) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub fn GetThemePropertyOrigin(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, porigin: *mut PROPERTYORIGIN) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] @@ -345,9 +346,10 @@ extern "system" { pub fn GetThemeString(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pszbuff: ::windows_sys::core::PWSTR, cchmaxbuffchars: i32) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn GetThemeSysBool(htheme: isize, iboolid: i32) -> super::super::Foundation::BOOL; - #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] - pub fn GetThemeSysColor(htheme: isize, icolorid: i32) -> u32; + pub fn GetThemeSysBool(htheme: isize, iboolid: THEME_PROPERTY_SYMBOL_ID) -> super::super::Foundation::BOOL; + #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn GetThemeSysColor(htheme: isize, icolorid: i32) -> super::super::Foundation::COLORREF; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] pub fn GetThemeSysColorBrush(htheme: isize, icolorid: THEME_PROPERTY_SYMBOL_ID) -> super::super::Graphics::Gdi::HBRUSH; @@ -355,7 +357,7 @@ extern "system" { #[cfg(feature = "Win32_Graphics_Gdi")] pub fn GetThemeSysFont(htheme: isize, ifontid: THEME_PROPERTY_SYMBOL_ID, plf: *mut super::super::Graphics::Gdi::LOGFONTW) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] - pub fn GetThemeSysInt(htheme: isize, iintid: i32, pivalue: *mut i32) -> ::windows_sys::core::HRESULT; + pub fn GetThemeSysInt(htheme: isize, iintid: THEME_PROPERTY_SYMBOL_ID, pivalue: *mut i32) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub fn GetThemeSysSize(htheme: isize, isizeid: i32) -> i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] @@ -384,9 +386,9 @@ extern "system" { #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] pub fn ImageList_Add(himl: HIMAGELIST, hbmimage: super::super::Graphics::Gdi::HBITMAP, hbmmask: super::super::Graphics::Gdi::HBITMAP) -> i32; - #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] - #[cfg(feature = "Win32_Graphics_Gdi")] - pub fn ImageList_AddMasked(himl: HIMAGELIST, hbmimage: super::super::Graphics::Gdi::HBITMAP, crmask: u32) -> i32; + #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] + pub fn ImageList_AddMasked(himl: HIMAGELIST, hbmimage: super::super::Graphics::Gdi::HBITMAP, crmask: super::super::Foundation::COLORREF) -> i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn ImageList_BeginDrag(himltrack: HIMAGELIST, itrack: i32, dxhotspot: i32, dyhotspot: i32) -> super::super::Foundation::BOOL; @@ -417,7 +419,7 @@ extern "system" { pub fn ImageList_Draw(himl: HIMAGELIST, i: i32, hdcdst: super::super::Graphics::Gdi::HDC, x: i32, y: i32, fstyle: IMAGE_LIST_DRAW_STYLE) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] - pub fn ImageList_DrawEx(himl: HIMAGELIST, i: i32, hdcdst: super::super::Graphics::Gdi::HDC, x: i32, y: i32, dx: i32, dy: i32, rgbbk: u32, rgbfg: u32, fstyle: IMAGE_LIST_DRAW_STYLE) -> super::super::Foundation::BOOL; + pub fn ImageList_DrawEx(himl: HIMAGELIST, i: i32, hdcdst: super::super::Graphics::Gdi::HDC, x: i32, y: i32, dx: i32, dy: i32, rgbbk: super::super::Foundation::COLORREF, rgbfg: super::super::Foundation::COLORREF, fstyle: IMAGE_LIST_DRAW_STYLE) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub fn ImageList_DrawIndirect(pimldp: *const IMAGELISTDRAWPARAMS) -> super::super::Foundation::BOOL; @@ -425,8 +427,9 @@ extern "system" { pub fn ImageList_Duplicate(himl: HIMAGELIST) -> HIMAGELIST; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub fn ImageList_EndDrag(); - #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] - pub fn ImageList_GetBkColor(himl: HIMAGELIST) -> u32; + #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn ImageList_GetBkColor(himl: HIMAGELIST) -> super::super::Foundation::COLORREF; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn ImageList_GetDragImage(ppt: *mut super::super::Foundation::POINT, ppthotspot: *mut super::super::Foundation::POINT) -> HIMAGELIST; @@ -443,10 +446,10 @@ extern "system" { pub fn ImageList_GetImageInfo(himl: HIMAGELIST, i: i32, pimageinfo: *mut IMAGEINFO) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] - pub fn ImageList_LoadImageA(hi: super::super::Foundation::HINSTANCE, lpbmp: ::windows_sys::core::PCSTR, cx: i32, cgrow: i32, crmask: u32, utype: u32, uflags: super::WindowsAndMessaging::IMAGE_FLAGS) -> HIMAGELIST; + pub fn ImageList_LoadImageA(hi: super::super::Foundation::HINSTANCE, lpbmp: ::windows_sys::core::PCSTR, cx: i32, cgrow: i32, crmask: super::super::Foundation::COLORREF, utype: u32, uflags: super::WindowsAndMessaging::IMAGE_FLAGS) -> HIMAGELIST; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] - pub fn ImageList_LoadImageW(hi: super::super::Foundation::HINSTANCE, lpbmp: ::windows_sys::core::PCWSTR, cx: i32, cgrow: i32, crmask: u32, utype: u32, uflags: super::WindowsAndMessaging::IMAGE_FLAGS) -> HIMAGELIST; + pub fn ImageList_LoadImageW(hi: super::super::Foundation::HINSTANCE, lpbmp: ::windows_sys::core::PCWSTR, cx: i32, cgrow: i32, crmask: super::super::Foundation::COLORREF, utype: u32, uflags: super::WindowsAndMessaging::IMAGE_FLAGS) -> HIMAGELIST; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub fn ImageList_Merge(himl1: HIMAGELIST, i1: i32, himl2: HIMAGELIST, i2: i32, dx: i32, dy: i32) -> HIMAGELIST; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_System_Com\"`*"] @@ -464,8 +467,9 @@ extern "system" { #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(feature = "Win32_UI_WindowsAndMessaging")] pub fn ImageList_ReplaceIcon(himl: HIMAGELIST, i: i32, hicon: super::WindowsAndMessaging::HICON) -> i32; - #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] - pub fn ImageList_SetBkColor(himl: HIMAGELIST, clrbk: u32) -> u32; + #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn ImageList_SetBkColor(himl: HIMAGELIST, clrbk: super::super::Foundation::COLORREF) -> super::super::Foundation::COLORREF; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn ImageList_SetDragCursorImage(himldrag: HIMAGELIST, idrag: i32, dxhotspot: i32, dyhotspot: i32) -> super::super::Foundation::BOOL; @@ -564,7 +568,7 @@ extern "system" { #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] pub fn SetScrollRange(hwnd: super::super::Foundation::HWND, nbar: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, nminpos: i32, nmaxpos: i32, bredraw: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] - pub fn SetThemeAppProperties(dwflags: u32); + pub fn SetThemeAppProperties(dwflags: SET_THEME_APP_PROPERTIES_FLAGS); #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn SetWindowFeedbackSetting(hwnd: super::super::Foundation::HWND, feedback: FEEDBACK_TYPE, dwflags: u32, size: u32, configuration: *const ::core::ffi::c_void) -> super::super::Foundation::BOOL; @@ -621,12 +625,130 @@ pub const ACS_TIMER: u32 = 8u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const ACS_TRANSPARENT: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type AEROWIZARDPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const AW_TITLEBAR: AEROWIZARDPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const AW_HEADERAREA: AEROWIZARDPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const AW_CONTENTAREA: AEROWIZARDPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const AW_COMMANDAREA: AEROWIZARDPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const AW_BUTTON: AEROWIZARDPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const ANIMATE_CLASS: &str = "SysAnimate32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const ANIMATE_CLASSA: &str = "SysAnimate32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const ANIMATE_CLASSW: &str = "SysAnimate32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type ARROWBTNSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_UPNORMAL: ARROWBTNSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_UPHOT: ARROWBTNSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_UPPRESSED: ARROWBTNSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_UPDISABLED: ARROWBTNSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_DOWNNORMAL: ARROWBTNSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_DOWNHOT: ARROWBTNSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_DOWNPRESSED: ARROWBTNSTATES = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_DOWNDISABLED: ARROWBTNSTATES = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_LEFTNORMAL: ARROWBTNSTATES = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_LEFTHOT: ARROWBTNSTATES = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_LEFTPRESSED: ARROWBTNSTATES = 11i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_LEFTDISABLED: ARROWBTNSTATES = 12i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_RIGHTNORMAL: ARROWBTNSTATES = 13i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_RIGHTHOT: ARROWBTNSTATES = 14i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_RIGHTPRESSED: ARROWBTNSTATES = 15i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_RIGHTDISABLED: ARROWBTNSTATES = 16i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_UPHOVER: ARROWBTNSTATES = 17i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_DOWNHOVER: ARROWBTNSTATES = 18i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_LEFTHOVER: ARROWBTNSTATES = 19i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ABS_RIGHTHOVER: ARROWBTNSTATES = 20i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type BACKGROUNDSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBS_NORMAL: BACKGROUNDSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBS_HOT: BACKGROUNDSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBS_DISABLED: BACKGROUNDSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBS_FOCUSED: BACKGROUNDSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBS_READONLY: BACKGROUNDSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBS_ASSIST: BACKGROUNDSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type BACKGROUNDWITHBORDERSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBWBS_NORMAL: BACKGROUNDWITHBORDERSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBWBS_HOT: BACKGROUNDWITHBORDERSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBWBS_DISABLED: BACKGROUNDWITHBORDERSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBWBS_FOCUSED: BACKGROUNDWITHBORDERSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type BALLOONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTBS_NORMAL: BALLOONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTBS_LINK: BALLOONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type BALLOONSTEMSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTBSS_POINTINGUPLEFTWALL: BALLOONSTEMSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTBSS_POINTINGUPCENTERED: BALLOONSTEMSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTBSS_POINTINGUPRIGHTWALL: BALLOONSTEMSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTBSS_POINTINGDOWNRIGHTWALL: BALLOONSTEMSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTBSS_POINTINGDOWNCENTERED: BALLOONSTEMSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTBSS_POINTINGDOWNLEFTWALL: BALLOONSTEMSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type BARBACKGROUNDSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MB_ACTIVE: BARBACKGROUNDSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MB_INACTIVE: BARBACKGROUNDSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type BARITEMSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MBI_NORMAL: BARITEMSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MBI_HOT: BARITEMSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MBI_PUSHED: BARITEMSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MBI_DISABLED: BARITEMSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MBI_DISABLEDHOT: BARITEMSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MBI_DISABLEDPUSHED: BARITEMSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const BCM_FIRST: u32 = 5632u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const BCM_GETIDEALSIZE: u32 = 5633u32; @@ -683,6 +805,22 @@ pub const BT_BORDERFILL: BGTYPE = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const BT_NONE: BGTYPE = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type BODYSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FBS_NORMAL: BODYSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FBS_EMPHASIZED: BODYSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type BORDERSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBB_NORMAL: BORDERSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBB_HOT: BORDERSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBB_FOCUSED: BORDERSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBB_DISABLED: BORDERSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type BORDERTYPE = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const BT_RECT: BORDERTYPE = 0i32; @@ -690,6 +828,46 @@ pub const BT_RECT: BORDERTYPE = 0i32; pub const BT_ROUNDRECT: BORDERTYPE = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const BT_ELLIPSE: BORDERTYPE = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type BORDER_HSCROLLSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSH_NORMAL: BORDER_HSCROLLSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSH_FOCUSED: BORDER_HSCROLLSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSH_HOT: BORDER_HSCROLLSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSH_DISABLED: BORDER_HSCROLLSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type BORDER_HVSCROLLSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSHV_NORMAL: BORDER_HVSCROLLSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSHV_FOCUSED: BORDER_HVSCROLLSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSHV_HOT: BORDER_HVSCROLLSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSHV_DISABLED: BORDER_HVSCROLLSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type BORDER_NOSCROLLSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSN_NORMAL: BORDER_NOSCROLLSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSN_FOCUSED: BORDER_NOSCROLLSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSN_HOT: BORDER_NOSCROLLSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSN_DISABLED: BORDER_NOSCROLLSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type BORDER_VSCROLLSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSV_NORMAL: BORDER_VSCROLLSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSV_FOCUSED: BORDER_VSCROLLSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSV_HOT: BORDER_VSCROLLSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSV_DISABLED: BORDER_VSCROLLSTATES = 4i32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub struct BP_ANIMATIONPARAMS { @@ -779,6 +957,30 @@ pub const BTNS_SEP: u32 = 1u32; pub const BTNS_SHOWTEXT: u32 = 64u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const BTNS_WHOLEDROPDOWN: u32 = 128u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type BUTTONPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BP_PUSHBUTTON: BUTTONPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BP_RADIOBUTTON: BUTTONPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BP_CHECKBOX: BUTTONPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BP_GROUPBOX: BUTTONPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BP_USERBUTTON: BUTTONPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BP_COMMANDLINK: BUTTONPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BP_COMMANDLINKGLYPH: BUTTONPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BP_RADIOBUTTON_HCDISABLED: BUTTONPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BP_CHECKBOX_HCDISABLED: BUTTONPARTS = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BP_GROUPBOX_HCDISABLED: BUTTONPARTS = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BP_PUSHBUTTONDROPDOWN: BUTTONPARTS = 11i32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -825,6 +1027,14 @@ impl ::core::clone::Clone for BUTTON_SPLITINFO { } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type CAPTIONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CS_ACTIVE: CAPTIONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CS_INACTIVE: CAPTIONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CS_DISABLED: CAPTIONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const CBEMAXSTRLEN: u32 = 260u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const CBEM_GETCOMBOCONTROL: u32 = 1030u32; @@ -1112,6 +1322,64 @@ pub const CDRF_SKIPDEFAULT: u32 = 4u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const CDRF_SKIPPOSTPAINT: u32 = 256u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type CHECKBOXSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_UNCHECKEDNORMAL: CHECKBOXSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_UNCHECKEDHOT: CHECKBOXSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_UNCHECKEDPRESSED: CHECKBOXSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_UNCHECKEDDISABLED: CHECKBOXSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_CHECKEDNORMAL: CHECKBOXSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_CHECKEDHOT: CHECKBOXSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_CHECKEDPRESSED: CHECKBOXSTATES = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_CHECKEDDISABLED: CHECKBOXSTATES = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_MIXEDNORMAL: CHECKBOXSTATES = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_MIXEDHOT: CHECKBOXSTATES = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_MIXEDPRESSED: CHECKBOXSTATES = 11i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_MIXEDDISABLED: CHECKBOXSTATES = 12i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_IMPLICITNORMAL: CHECKBOXSTATES = 13i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_IMPLICITHOT: CHECKBOXSTATES = 14i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_IMPLICITPRESSED: CHECKBOXSTATES = 15i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_IMPLICITDISABLED: CHECKBOXSTATES = 16i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_EXCLUDEDNORMAL: CHECKBOXSTATES = 17i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_EXCLUDEDHOT: CHECKBOXSTATES = 18i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_EXCLUDEDPRESSED: CHECKBOXSTATES = 19i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_EXCLUDEDDISABLED: CHECKBOXSTATES = 20i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type CHEVRONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CHEVS_NORMAL: CHEVRONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CHEVS_HOT: CHEVRONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CHEVS_PRESSED: CHEVRONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type CHEVRONVERTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CHEVSV_NORMAL: CHEVRONVERTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CHEVSV_HOT: CHEVRONVERTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CHEVSV_PRESSED: CHEVRONVERTSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type CLOCKPARTS = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const CLP_TIME: CLOCKPARTS = 1i32; @@ -1124,6 +1392,24 @@ pub const CLS_HOT: CLOCKSTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const CLS_PRESSED: CLOCKSTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type CLOSEBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_NORMAL: CLOSEBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_HOT: CLOSEBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_PUSHED: CLOSEBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_DISABLED: CLOSEBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type CLOSESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTCS_NORMAL: CLOSESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTCS_HOT: CLOSESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTCS_PRESSED: CLOSESTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const CLR_DEFAULT: i32 = -16777216i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const CLR_HILIGHT: i32 = -16777216i32; @@ -1131,13 +1417,24 @@ pub const CLR_HILIGHT: i32 = -16777216i32; pub const CLR_NONE: i32 = -1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const CMB_MASKED: u32 = 2u32; -#[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type COLLAPSEBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVCB_NORMAL: COLLAPSEBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVCB_HOVER: COLLAPSEBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVCB_PUSHED: COLLAPSEBUTTONSTATES = 3i32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct COLORMAP { - pub from: u32, - pub to: u32, + pub from: super::super::Foundation::COLORREF, + pub to: super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for COLORMAP {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for COLORMAP { fn clone(&self) -> Self { *self @@ -1146,13 +1443,16 @@ impl ::core::clone::Clone for COLORMAP { #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const COLORMGMTDLGORD: u32 = 1551u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct COLORSCHEME { pub dwSize: u32, - pub clrBtnHighlight: u32, - pub clrBtnShadow: u32, + pub clrBtnHighlight: super::super::Foundation::COLORREF, + pub clrBtnShadow: super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for COLORSCHEME {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for COLORSCHEME { fn clone(&self) -> Self { *self @@ -1235,6 +1535,36 @@ pub const STATE_SYSTEM_OFFSCREEN: COMBOBOXINFO_BUTTON_STATE = 65536u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const STATE_SYSTEM_UNAVAILABLE: COMBOBOXINFO_BUTTON_STATE = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type COMBOBOXPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_DROPDOWNBUTTON: COMBOBOXPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_BACKGROUND: COMBOBOXPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_TRANSPARENTBACKGROUND: COMBOBOXPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_BORDER: COMBOBOXPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_READONLY: COMBOBOXPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_DROPDOWNBUTTONRIGHT: COMBOBOXPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_DROPDOWNBUTTONLEFT: COMBOBOXPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_CUEBANNER: COMBOBOXPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_DROPDOWNITEM: COMBOBOXPARTS = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type COMBOBOXSTYLESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBXS_NORMAL: COMBOBOXSTYLESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBXS_HOT: COMBOBOXSTYLESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBXS_PRESSED: COMBOBOXSTYLESTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBXS_DISABLED: COMBOBOXSTYLESTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type COMBOBOX_EX_ITEM_FLAGS = u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const CBEIF_DI_SETITEM: COMBOBOX_EX_ITEM_FLAGS = 268435456u32; @@ -1252,6 +1582,36 @@ pub const CBEIF_SELECTEDIMAGE: COMBOBOX_EX_ITEM_FLAGS = 4u32; pub const CBEIF_TEXT: COMBOBOX_EX_ITEM_FLAGS = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const COMCTL32_VERSION: u32 = 6u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type COMMANDLINKGLYPHSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLGS_NORMAL: COMMANDLINKGLYPHSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLGS_HOT: COMMANDLINKGLYPHSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLGS_PRESSED: COMMANDLINKGLYPHSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLGS_DISABLED: COMMANDLINKGLYPHSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLGS_DEFAULTED: COMMANDLINKGLYPHSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type COMMANDLINKSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLS_NORMAL: COMMANDLINKSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLS_HOT: COMMANDLINKSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLS_PRESSED: COMMANDLINKSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLS_DISABLED: COMMANDLINKSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLS_DEFAULTED: COMMANDLINKSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLS_DEFAULTED_ANIMATING: COMMANDLINKSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type COMMUNICATIONSPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CSST_TAB: COMMUNICATIONSPARTS = 1i32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -1281,6 +1641,118 @@ pub const CA_LEFT: CONTENTALIGNMENT = 0i32; pub const CA_CENTER: CONTENTALIGNMENT = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const CA_RIGHT: CONTENTALIGNMENT = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type CONTENTAREASTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const AW_S_CONTENTAREA_NOMARGIN: CONTENTAREASTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type CONTENTLINKSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPCL_NORMAL: CONTENTLINKSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPCL_HOT: CONTENTLINKSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPCL_PRESSED: CONTENTLINKSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPCL_DISABLED: CONTENTLINKSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type CONTENTPANESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLGCPS_STANDALONE: CONTENTPANESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type CONTROLLABELSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TS_CONTROLLABEL_NORMAL: CONTROLLABELSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TS_CONTROLLABEL_DISABLED: CONTROLLABELSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type CONTROLPANELPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_NAVIGATIONPANE: CONTROLPANELPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_CONTENTPANE: CONTROLPANELPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_NAVIGATIONPANELABEL: CONTROLPANELPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_CONTENTPANELABEL: CONTROLPANELPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_TITLE: CONTROLPANELPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_BODYTEXT: CONTROLPANELPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_HELPLINK: CONTROLPANELPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_TASKLINK: CONTROLPANELPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_GROUPTEXT: CONTROLPANELPARTS = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_CONTENTLINK: CONTROLPANELPARTS = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_SECTIONTITLELINK: CONTROLPANELPARTS = 11i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_LARGECOMMANDAREA: CONTROLPANELPARTS = 12i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_SMALLCOMMANDAREA: CONTROLPANELPARTS = 13i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_BUTTON: CONTROLPANELPARTS = 14i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_MESSAGETEXT: CONTROLPANELPARTS = 15i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_NAVIGATIONPANELINE: CONTROLPANELPARTS = 16i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_CONTENTPANELINE: CONTROLPANELPARTS = 17i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_BANNERAREA: CONTROLPANELPARTS = 18i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_BODYTITLE: CONTROLPANELPARTS = 19i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type COPYSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDCOPY_HIGHLIGHT: COPYSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDCOPY_NOHIGHLIGHT: COPYSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type CREATELINKSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDCREATELINK_HIGHLIGHT: CREATELINKSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDCREATELINK_NOHIGHLIGHT: CREATELINKSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type CUEBANNERSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBCB_NORMAL: CUEBANNERSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBCB_HOT: CUEBANNERSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBCB_PRESSED: CUEBANNERSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBCB_DISABLED: CUEBANNERSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type DATEBORDERSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPDB_NORMAL: DATEBORDERSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPDB_HOT: DATEBORDERSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPDB_FOCUSED: DATEBORDERSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPDB_DISABLED: DATEBORDERSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type DATEPICKERPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DP_DATETEXT: DATEPICKERPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DP_DATEBORDER: DATEPICKERPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DP_SHOWCALENDARBUTTONRIGHT: DATEPICKERPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type DATETEXTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPDT_NORMAL: DATETEXTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPDT_DISABLED: DATETEXTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPDT_SELECTED: DATETEXTSTATES = 3i32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -1367,6 +1839,26 @@ pub const DL_MOVECURSOR: u32 = 3u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const DL_STOPCURSOR: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type DOWNHORZSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DNHZS_NORMAL: DOWNHORZSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DNHZS_HOT: DOWNHORZSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DNHZS_PRESSED: DOWNHORZSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DNHZS_DISABLED: DOWNHORZSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type DOWNSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DNS_NORMAL: DOWNSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DNS_HOT: DOWNSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DNS_PRESSED: DOWNSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DNS_DISABLED: DOWNSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type DPAMM_MESSAGE = u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const DPAMM_MERGE: DPAMM_MESSAGE = 1u32; @@ -1404,6 +1896,24 @@ pub const DPAS_SORTED: u32 = 1u32; pub const DPA_APPEND: u32 = 2147483647u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const DPA_ERR: i32 = -1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type DRAGDROPPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DD_COPY: DRAGDROPPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DD_MOVE: DRAGDROPPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DD_UPDATEMETADATA: DRAGDROPPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DD_CREATELINK: DRAGDROPPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DD_WARNING: DRAGDROPPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DD_NONE: DRAGDROPPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DD_IMAGEBG: DRAGDROPPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DD_TEXTBG: DRAGDROPPARTS = 8i32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -1479,6 +1989,32 @@ pub const DTPB_USECTLCOLORSTATIC: DRAW_THEME_PARENT_BACKGROUND_FLAGS = 2u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const DTPB_USEERASEBKGND: DRAW_THEME_PARENT_BACKGROUND_FLAGS = 4u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type DROPDOWNBUTTONLEFTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBXSL_NORMAL: DROPDOWNBUTTONLEFTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBXSL_HOT: DROPDOWNBUTTONLEFTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBXSL_PRESSED: DROPDOWNBUTTONLEFTSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBXSL_DISABLED: DROPDOWNBUTTONLEFTSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type DROPDOWNBUTTONRIGHTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBXSR_NORMAL: DROPDOWNBUTTONRIGHTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBXSR_HOT: DROPDOWNBUTTONRIGHTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBXSR_PRESSED: DROPDOWNBUTTONRIGHTSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBXSR_DISABLED: DROPDOWNBUTTONRIGHTSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type DROPDOWNITEMSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBDI_NORMAL: DROPDOWNITEMSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBDI_HIGHLIGHTED: DROPDOWNITEMSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const DSA_APPEND: u32 = 2147483647u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const DSA_ERR: i32 = -1i32; @@ -1569,10 +2105,10 @@ pub const DTS_UPDOWN: u32 = 1u32; #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub struct DTTOPTS { pub dwSize: u32, - pub dwFlags: u32, - pub crText: u32, - pub crBorder: u32, - pub crShadow: u32, + pub dwFlags: DTTOPTS_FLAGS, + pub crText: super::super::Foundation::COLORREF, + pub crBorder: super::super::Foundation::COLORREF, + pub crShadow: super::super::Foundation::COLORREF, pub iTextShadowType: i32, pub ptShadowOffset: super::super::Foundation::POINT, pub iBorderSize: i32, @@ -1592,6 +2128,38 @@ impl ::core::clone::Clone for DTTOPTS { *self } } +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type DTTOPTS_FLAGS = u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_TEXTCOLOR: DTTOPTS_FLAGS = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_BORDERCOLOR: DTTOPTS_FLAGS = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_SHADOWCOLOR: DTTOPTS_FLAGS = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_SHADOWTYPE: DTTOPTS_FLAGS = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_SHADOWOFFSET: DTTOPTS_FLAGS = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_BORDERSIZE: DTTOPTS_FLAGS = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_FONTPROP: DTTOPTS_FLAGS = 64u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_COLORPROP: DTTOPTS_FLAGS = 128u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_STATEID: DTTOPTS_FLAGS = 256u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_CALCRECT: DTTOPTS_FLAGS = 512u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_APPLYOVERLAY: DTTOPTS_FLAGS = 1024u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_GLOWSIZE: DTTOPTS_FLAGS = 2048u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_CALLBACK: DTTOPTS_FLAGS = 4096u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_COMPOSITED: DTTOPTS_FLAGS = 8192u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_VALIDBITS: DTTOPTS_FLAGS = 12287u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub type DTT_CALLBACK_PROC = ::core::option::Option i32>; @@ -1648,6 +2216,84 @@ pub const TTI_WARNING_LARGE: EDITBALLOONTIP_ICON = 5u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TTI_ERROR_LARGE: EDITBALLOONTIP_ICON = 6u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type EDITBORDER_HSCROLLSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSH_NORMAL: EDITBORDER_HSCROLLSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSH_HOT: EDITBORDER_HSCROLLSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSH_FOCUSED: EDITBORDER_HSCROLLSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSH_DISABLED: EDITBORDER_HSCROLLSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type EDITBORDER_HVSCROLLSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSHV_NORMAL: EDITBORDER_HVSCROLLSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSHV_HOT: EDITBORDER_HVSCROLLSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSHV_FOCUSED: EDITBORDER_HVSCROLLSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSHV_DISABLED: EDITBORDER_HVSCROLLSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type EDITBORDER_NOSCROLLSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSN_NORMAL: EDITBORDER_NOSCROLLSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSN_HOT: EDITBORDER_NOSCROLLSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSN_FOCUSED: EDITBORDER_NOSCROLLSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSN_DISABLED: EDITBORDER_NOSCROLLSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type EDITBORDER_VSCROLLSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSV_NORMAL: EDITBORDER_VSCROLLSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSV_HOT: EDITBORDER_VSCROLLSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSV_FOCUSED: EDITBORDER_VSCROLLSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSV_DISABLED: EDITBORDER_VSCROLLSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type EDITPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_EDITTEXT: EDITPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_CARET: EDITPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_BACKGROUND: EDITPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_PASSWORD: EDITPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_BACKGROUNDWITHBORDER: EDITPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_EDITBORDER_NOSCROLL: EDITPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_EDITBORDER_HSCROLL: EDITPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_EDITBORDER_VSCROLL: EDITPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_EDITBORDER_HVSCROLL: EDITPARTS = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type EDITTEXTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_NORMAL: EDITTEXTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_HOT: EDITTEXTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_SELECTED: EDITTEXTSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_DISABLED: EDITTEXTSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_FOCUSED: EDITTEXTSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_READONLY: EDITTEXTSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_ASSIST: EDITTEXTSTATES = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_CUEBANNER: EDITTEXTSTATES = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type EDITWORDBREAKPROCA = ::core::option::Option i32>; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type EDITWORDBREAKPROCW = ::core::option::Option i32>; @@ -1812,6 +2458,58 @@ pub const ETDT_USEAEROWIZARDTABTEXTURE: u32 = 8u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const ETDT_USETABTEXTURE: u32 = 4u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type EXPANDBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVEB_NORMAL: EXPANDBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVEB_HOVER: EXPANDBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVEB_PUSHED: EXPANDBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type EXPANDOBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLGEBS_NORMAL: EXPANDOBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLGEBS_HOVER: EXPANDOBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLGEBS_PRESSED: EXPANDOBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLGEBS_EXPANDEDNORMAL: EXPANDOBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLGEBS_EXPANDEDHOVER: EXPANDOBUTTONSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLGEBS_EXPANDEDPRESSED: EXPANDOBUTTONSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLGEBS_NORMALDISABLED: EXPANDOBUTTONSTATES = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLGEBS_EXPANDEDDISABLED: EXPANDOBUTTONSTATES = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type EXPLORERBARPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBP_HEADERBACKGROUND: EXPLORERBARPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBP_HEADERCLOSE: EXPLORERBARPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBP_HEADERPIN: EXPLORERBARPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBP_IEBARMENU: EXPLORERBARPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBP_NORMALGROUPBACKGROUND: EXPLORERBARPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBP_NORMALGROUPCOLLAPSE: EXPLORERBARPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBP_NORMALGROUPEXPAND: EXPLORERBARPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBP_NORMALGROUPHEAD: EXPLORERBARPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBP_SPECIALGROUPBACKGROUND: EXPLORERBARPARTS = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBP_SPECIALGROUPCOLLAPSE: EXPLORERBARPARTS = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBP_SPECIALGROUPEXPAND: EXPLORERBARPARTS = 11i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBP_SPECIALGROUPHEAD: EXPLORERBARPARTS = 12i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type FEEDBACK_TYPE = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const FEEDBACK_TOUCH_CONTACTVISUALIZATION: FEEDBACK_TYPE = 1i32; @@ -1840,6 +2538,16 @@ pub const FEEDBACK_MAX: FEEDBACK_TYPE = -1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const FILEOPENORD: u32 = 1536u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type FILLSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBFS_NORMAL: FILLSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBFS_ERROR: FILLSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBFS_PAUSED: FILLSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBFS_PARTIAL: FILLSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type FILLTYPE = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const FT_SOLID: FILLTYPE = 0i32; @@ -1852,14 +2560,66 @@ pub const FT_RADIALGRADIENT: FILLTYPE = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const FT_TILEIMAGE: FILLTYPE = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type FILLVERTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBFVS_NORMAL: FILLVERTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBFVS_ERROR: FILLVERTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBFVS_PAUSED: FILLVERTSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBFVS_PARTIAL: FILLVERTSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const FINDDLGORD: u32 = 1540u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type FLYOUTPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLYOUT_HEADER: FLYOUTPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLYOUT_BODY: FLYOUTPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLYOUT_LABEL: FLYOUTPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLYOUT_LINK: FLYOUTPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLYOUT_DIVIDER: FLYOUTPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLYOUT_WINDOW: FLYOUTPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLYOUT_LINKAREA: FLYOUTPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLYOUT_LINKHEADER: FLYOUTPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const FONTDLGORD: u32 = 1542u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const FORMATDLGORD30: u32 = 1544u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const FORMATDLGORD31: u32 = 1543u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type FRAMEBOTTOMSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FRB_ACTIVE: FRAMEBOTTOMSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FRB_INACTIVE: FRAMEBOTTOMSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type FRAMELEFTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FRL_ACTIVE: FRAMELEFTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FRL_INACTIVE: FRAMELEFTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type FRAMERIGHTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FRR_ACTIVE: FRAMERIGHTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FRR_INACTIVE: FRAMERIGHTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type FRAMESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FS_ACTIVE: FRAMESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FS_INACTIVE: FRAMESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const FSB_ENCARTA_MODE: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const FSB_FLAT_MODE: u32 = 2u32; @@ -1892,59 +2652,145 @@ pub const GFST_SIZE: GLYPHFONTSIZINGTYPE = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const GFST_DPI: GLYPHFONTSIZINGTYPE = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type GLYPHSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GLPS_CLOSED: GLYPHSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GLPS_OPENED: GLYPHSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type GLYPHTYPE = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const GT_NONE: GLYPHTYPE = 0i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GT_IMAGEGLYPH: GLYPHTYPE = 1i32; +pub const GT_IMAGEGLYPH: GLYPHTYPE = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GT_FONTGLYPH: GLYPHTYPE = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GMR_DAYSTATE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GMR_VISIBLE: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type GRIDCELLBACKGROUNDSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCB_SELECTED: GRIDCELLBACKGROUNDSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCB_HOT: GRIDCELLBACKGROUNDSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCB_SELECTEDHOT: GRIDCELLBACKGROUNDSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCB_SELECTEDNOTFOCUSED: GRIDCELLBACKGROUNDSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCB_TODAY: GRIDCELLBACKGROUNDSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCB_TODAYSELECTED: GRIDCELLBACKGROUNDSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type GRIDCELLSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGC_HOT: GRIDCELLSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGC_HASSTATE: GRIDCELLSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGC_HASSTATEHOT: GRIDCELLSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGC_TODAY: GRIDCELLSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGC_TODAYSELECTED: GRIDCELLSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGC_SELECTED: GRIDCELLSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGC_SELECTEDHOT: GRIDCELLSTATES = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type GRIDCELLUPPERSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCU_HOT: GRIDCELLUPPERSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCU_HASSTATE: GRIDCELLUPPERSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCU_HASSTATEHOT: GRIDCELLUPPERSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCU_SELECTED: GRIDCELLUPPERSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCU_SELECTEDHOT: GRIDCELLUPPERSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type GRIPPERSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TSGS_NORMAL: GRIPPERSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TSGS_CENTERED: GRIPPERSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type GROUPBOXSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GBS_NORMAL: GROUPBOXSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GBS_DISABLED: GROUPBOXSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type GROUPHEADERLINESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPEN: GROUPHEADERLINESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPENHOT: GROUPHEADERLINESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPENSELECTED: GROUPHEADERLINESTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPENSELECTEDHOT: GROUPHEADERLINESTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPENSELECTEDNOTFOCUSED: GROUPHEADERLINESTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPENSELECTEDNOTFOCUSEDHOT: GROUPHEADERLINESTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPENMIXEDSELECTION: GROUPHEADERLINESTATES = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPENMIXEDSELECTIONHOT: GROUPHEADERLINESTATES = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_CLOSE: GROUPHEADERLINESTATES = 9i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GT_FONTGLYPH: GLYPHTYPE = 2i32; +pub const LVGHL_CLOSEHOT: GROUPHEADERLINESTATES = 10i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GMR_DAYSTATE: u32 = 1u32; +pub const LVGHL_CLOSESELECTED: GROUPHEADERLINESTATES = 11i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GMR_VISIBLE: u32 = 0u32; +pub const LVGHL_CLOSESELECTEDHOT: GROUPHEADERLINESTATES = 12i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub type GRIDCELLBACKGROUNDSTATES = i32; +pub const LVGHL_CLOSESELECTEDNOTFOCUSED: GROUPHEADERLINESTATES = 13i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCB_SELECTED: GRIDCELLBACKGROUNDSTATES = 1i32; +pub const LVGHL_CLOSESELECTEDNOTFOCUSEDHOT: GROUPHEADERLINESTATES = 14i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCB_HOT: GRIDCELLBACKGROUNDSTATES = 2i32; +pub const LVGHL_CLOSEMIXEDSELECTION: GROUPHEADERLINESTATES = 15i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCB_SELECTEDHOT: GRIDCELLBACKGROUNDSTATES = 3i32; +pub const LVGHL_CLOSEMIXEDSELECTIONHOT: GROUPHEADERLINESTATES = 16i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCB_SELECTEDNOTFOCUSED: GRIDCELLBACKGROUNDSTATES = 4i32; +pub type GROUPHEADERSTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCB_TODAY: GRIDCELLBACKGROUNDSTATES = 5i32; +pub const LVGH_OPEN: GROUPHEADERSTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCB_TODAYSELECTED: GRIDCELLBACKGROUNDSTATES = 6i32; +pub const LVGH_OPENHOT: GROUPHEADERSTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub type GRIDCELLSTATES = i32; +pub const LVGH_OPENSELECTED: GROUPHEADERSTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGC_HOT: GRIDCELLSTATES = 1i32; +pub const LVGH_OPENSELECTEDHOT: GROUPHEADERSTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGC_HASSTATE: GRIDCELLSTATES = 2i32; +pub const LVGH_OPENSELECTEDNOTFOCUSED: GROUPHEADERSTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGC_HASSTATEHOT: GRIDCELLSTATES = 3i32; +pub const LVGH_OPENSELECTEDNOTFOCUSEDHOT: GROUPHEADERSTATES = 6i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGC_TODAY: GRIDCELLSTATES = 4i32; +pub const LVGH_OPENMIXEDSELECTION: GROUPHEADERSTATES = 7i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGC_TODAYSELECTED: GRIDCELLSTATES = 5i32; +pub const LVGH_OPENMIXEDSELECTIONHOT: GROUPHEADERSTATES = 8i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGC_SELECTED: GRIDCELLSTATES = 6i32; +pub const LVGH_CLOSE: GROUPHEADERSTATES = 9i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGC_SELECTEDHOT: GRIDCELLSTATES = 7i32; +pub const LVGH_CLOSEHOT: GROUPHEADERSTATES = 10i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub type GRIDCELLUPPERSTATES = i32; +pub const LVGH_CLOSESELECTED: GROUPHEADERSTATES = 11i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCU_HOT: GRIDCELLUPPERSTATES = 1i32; +pub const LVGH_CLOSESELECTEDHOT: GROUPHEADERSTATES = 12i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCU_HASSTATE: GRIDCELLUPPERSTATES = 2i32; +pub const LVGH_CLOSESELECTEDNOTFOCUSED: GROUPHEADERSTATES = 13i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCU_HASSTATEHOT: GRIDCELLUPPERSTATES = 3i32; +pub const LVGH_CLOSESELECTEDNOTFOCUSEDHOT: GROUPHEADERSTATES = 14i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCU_SELECTED: GRIDCELLUPPERSTATES = 4i32; +pub const LVGH_CLOSEMIXEDSELECTION: GROUPHEADERSTATES = 15i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCU_SELECTEDHOT: GRIDCELLUPPERSTATES = 5i32; +pub const LVGH_CLOSEMIXEDSELECTIONHOT: GROUPHEADERSTATES = 16i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type HALIGN = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] @@ -2219,6 +3065,124 @@ impl ::core::clone::Clone for HD_TEXTFILTERW { } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HEADERAREASTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const AW_S_HEADERAREA_NOMARGIN: HEADERAREASTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HEADERCLOSESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHC_NORMAL: HEADERCLOSESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHC_HOT: HEADERCLOSESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHC_PRESSED: HEADERCLOSESTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HEADERDROPDOWNFILTERSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDDFS_NORMAL: HEADERDROPDOWNFILTERSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDDFS_SOFTHOT: HEADERDROPDOWNFILTERSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDDFS_HOT: HEADERDROPDOWNFILTERSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HEADERDROPDOWNSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDDS_NORMAL: HEADERDROPDOWNSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDDS_SOFTHOT: HEADERDROPDOWNSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDDS_HOT: HEADERDROPDOWNSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HEADERITEMLEFTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HILS_NORMAL: HEADERITEMLEFTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HILS_HOT: HEADERITEMLEFTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HILS_PRESSED: HEADERITEMLEFTSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HEADERITEMRIGHTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIRS_NORMAL: HEADERITEMRIGHTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIRS_HOT: HEADERITEMRIGHTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIRS_PRESSED: HEADERITEMRIGHTSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HEADERITEMSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_NORMAL: HEADERITEMSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_HOT: HEADERITEMSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_PRESSED: HEADERITEMSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_SORTEDNORMAL: HEADERITEMSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_SORTEDHOT: HEADERITEMSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_SORTEDPRESSED: HEADERITEMSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_ICONNORMAL: HEADERITEMSTATES = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_ICONHOT: HEADERITEMSTATES = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_ICONPRESSED: HEADERITEMSTATES = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_ICONSORTEDNORMAL: HEADERITEMSTATES = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_ICONSORTEDHOT: HEADERITEMSTATES = 11i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_ICONSORTEDPRESSED: HEADERITEMSTATES = 12i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HEADEROVERFLOWSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HOFS_NORMAL: HEADEROVERFLOWSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HOFS_HOT: HEADEROVERFLOWSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HEADERPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HP_HEADERITEM: HEADERPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HP_HEADERITEMLEFT: HEADERPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HP_HEADERITEMRIGHT: HEADERPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HP_HEADERSORTARROW: HEADERPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HP_HEADERDROPDOWN: HEADERPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HP_HEADERDROPDOWNFILTER: HEADERPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HP_HEADEROVERFLOW: HEADERPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HEADERPINSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHP_NORMAL: HEADERPINSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHP_HOT: HEADERPINSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHP_PRESSED: HEADERPINSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHP_SELECTEDNORMAL: HEADERPINSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHP_SELECTEDHOT: HEADERPINSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHP_SELECTEDPRESSED: HEADERPINSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HEADERSORTARROWSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HSAS_SORTEDUP: HEADERSORTARROWSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HSAS_SORTEDDOWN: HEADERSORTARROWSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HEADERSTYLESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HBG_DETAILS: HEADERSTYLESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HBG_ICON: HEADERSTYLESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type HEADER_CONTROL_NOTIFICATION_BUTTON = u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const HEADER_CONTROL_NOTIFICATION_BUTTON_LEFT: HEADER_CONTROL_NOTIFICATION_BUTTON = 0u32; @@ -2227,6 +3191,26 @@ pub const HEADER_CONTROL_NOTIFICATION_BUTTON_RIGHT: HEADER_CONTROL_NOTIFICATION_ #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const HEADER_CONTROL_NOTIFICATION_BUTTON_MIDDLE: HEADER_CONTROL_NOTIFICATION_BUTTON = 2u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HELPBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HBS_NORMAL: HELPBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HBS_HOT: HELPBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HBS_PUSHED: HELPBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HBS_DISABLED: HELPBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HELPLINKSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPHL_NORMAL: HELPLINKSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPHL_HOT: HELPLINKSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPHL_PRESSED: HELPLINKSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPHL_DISABLED: HELPLINKSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const HHT_ABOVE: u32 = 256u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const HHT_BELOW: u32 = 512u32; @@ -2286,6 +3270,32 @@ pub const HKM_SETHOTKEY: u32 = 1025u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const HKM_SETRULES: u32 = 1027u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HORZSCROLLSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HSS_NORMAL: HORZSCROLLSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HSS_HOT: HORZSCROLLSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HSS_PUSHED: HORZSCROLLSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HSS_DISABLED: HORZSCROLLSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HORZTHUMBSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTS_NORMAL: HORZTHUMBSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTS_HOT: HORZTHUMBSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTS_PUSHED: HORZTHUMBSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTS_DISABLED: HORZTHUMBSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HOTGLYPHSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HGLPS_CLOSED: HOTGLYPHSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HGLPS_OPENED: HOTGLYPHSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const HOTKEYF_ALT: u32 = 4u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const HOTKEYF_CONTROL: u32 = 2u32; @@ -2300,6 +3310,14 @@ pub const HOTKEY_CLASSA: &str = "msctls_hotkey32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const HOTKEY_CLASSW: &str = "msctls_hotkey32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HOVERBACKGROUNDSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UTS_NORMAL: HOVERBACKGROUNDSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UTS_HOT: HOVERBACKGROUNDSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UTS_PRESSED: HOVERBACKGROUNDSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const HOVER_DEFAULT: u32 = 4294967295u32; pub type HPROPSHEETPAGE = isize; pub type HSYNTHETICPOINTERDEVICE = isize; @@ -2329,6 +3347,16 @@ pub const HLS_NORMALTEXT: HYPERLINKSTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const HLS_LINKTEXT: HYPERLINKSTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type HYPERLINKTEXTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TS_HYPERLINK_NORMAL: HYPERLINKTEXTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TS_HYPERLINK_HOT: HYPERLINKTEXTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TS_HYPERLINK_PRESSED: HYPERLINKTEXTSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TS_HYPERLINK_DISABLED: HYPERLINKTEXTSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type ICONEFFECT = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const ICE_NONE: ICONEFFECT = 0i32; @@ -2364,6 +3392,14 @@ pub const IDB_VIEW_SMALL_COLOR: u32 = 4u32; pub const IDC_MANAGE_LINK: u32 = 1592u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const ID_PSRESTARTWINDOWS: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type IEBARMENUSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBM_NORMAL: IEBARMENUSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBM_HOT: IEBARMENUSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBM_PRESSED: IEBARMENUSTATES = 3i32; pub type IImageList = *mut ::core::ffi::c_void; pub type IImageList2 = *mut ::core::ffi::c_void; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] @@ -2465,8 +3501,8 @@ pub const IL_VERTICAL: IMAGELAYOUT = 0i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const IL_HORIZONTAL: IMAGELAYOUT = 1i32; #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub struct IMAGELISTDRAWPARAMS { pub cbSize: u32, pub himl: HIMAGELIST, @@ -2478,17 +3514,17 @@ pub struct IMAGELISTDRAWPARAMS { pub cy: i32, pub xBitmap: i32, pub yBitmap: i32, - pub rgbBk: u32, - pub rgbFg: u32, + pub rgbBk: super::super::Foundation::COLORREF, + pub rgbFg: super::super::Foundation::COLORREF, pub fStyle: u32, pub dwRop: u32, pub fState: u32, pub Frame: u32, - pub crEffect: u32, + pub crEffect: super::super::Foundation::COLORREF, } -#[cfg(feature = "Win32_Graphics_Gdi")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl ::core::marker::Copy for IMAGELISTDRAWPARAMS {} -#[cfg(feature = "Win32_Graphics_Gdi")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl ::core::clone::Clone for IMAGELISTDRAWPARAMS { fn clone(&self) -> Self { *self @@ -2647,12 +3683,32 @@ pub const IPM_SETFOCUS: u32 = 1128u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const IPM_SETRANGE: u32 = 1127u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type ITEMSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSI_HOT: ITEMSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSI_HOTSELECTED: ITEMSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSI_SELECTED: ITEMSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSI_SELECTEDNOTFOCUS: ITEMSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const I_IMAGECALLBACK: i32 = -1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const I_IMAGENONE: i32 = -2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const I_INDENTCALLBACK: i32 = -1i32; pub const ImageList: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2085055394, data2: 689, data3: 18676, data4: [128, 72, 178, 70, 25, 221, 192, 88] }; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type LABELSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLS_NORMAL: LABELSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLS_SELECTED: LABELSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLS_EMPHASIZED: LABELSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLS_DISABLED: LABELSTATES = 4i32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -2677,10 +3733,70 @@ pub const LIF_STATE: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const LIF_URL: u32 = 8u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type LINKHEADERSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLH_NORMAL: LINKHEADERSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLH_HOVER: LINKHEADERSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type LINKPARTS = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const LP_HYPERLINK: LINKPARTS = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type LINKSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLYOUTLINK_NORMAL: LINKSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLYOUTLINK_HOVER: LINKSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type LISTBOXPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBCP_BORDER_HSCROLL: LISTBOXPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBCP_BORDER_HVSCROLL: LISTBOXPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBCP_BORDER_NOSCROLL: LISTBOXPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBCP_BORDER_VSCROLL: LISTBOXPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBCP_ITEM: LISTBOXPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type LISTITEMSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LISS_NORMAL: LISTITEMSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LISS_HOT: LISTITEMSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LISS_SELECTED: LISTITEMSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LISS_DISABLED: LISTITEMSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LISS_SELECTEDNOTFOCUS: LISTITEMSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LISS_HOTSELECTED: LISTITEMSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type LISTVIEWPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_LISTITEM: LISTVIEWPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_LISTGROUP: LISTVIEWPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_LISTDETAIL: LISTVIEWPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_LISTSORTEDDETAIL: LISTVIEWPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_EMPTYTEXT: LISTVIEWPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_GROUPHEADER: LISTVIEWPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_GROUPHEADERLINE: LISTVIEWPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_EXPANDBUTTON: LISTVIEWPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_COLLAPSEBUTTON: LISTVIEWPARTS = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_COLUMNDETAIL: LISTVIEWPARTS = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const LIS_DEFAULTCOLORS: u32 = 16u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const LIS_ENABLED: u32 = 2u32; @@ -3089,7 +4205,8 @@ impl ::core::clone::Clone for LVGROUP { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct LVGROUPMETRICS { pub cbSize: u32, pub mask: u32, @@ -3097,14 +4214,16 @@ pub struct LVGROUPMETRICS { pub Top: u32, pub Right: u32, pub Bottom: u32, - pub crLeft: u32, - pub crTop: u32, - pub crRight: u32, - pub crBottom: u32, - pub crHeader: u32, - pub crFooter: u32, + pub crLeft: super::super::Foundation::COLORREF, + pub crTop: super::super::Foundation::COLORREF, + pub crRight: super::super::Foundation::COLORREF, + pub crBottom: super::super::Foundation::COLORREF, + pub crHeader: super::super::Foundation::COLORREF, + pub crFooter: super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for LVGROUPMETRICS {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for LVGROUPMETRICS { fn clone(&self) -> Self { *self @@ -3921,6 +5040,24 @@ pub const EMT_NORMALTEXT: MARKUPTEXTSTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const EMT_LINKTEXT: MARKUPTEXTSTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type MAXBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MAXBS_NORMAL: MAXBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MAXBS_HOT: MAXBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MAXBS_PUSHED: MAXBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MAXBS_DISABLED: MAXBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type MAXCAPTIONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MXCS_ACTIVE: MAXCAPTIONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MXCS_INACTIVE: MAXCAPTIONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MXCS_DISABLED: MAXCAPTIONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MAXPROPPAGES: u32 = 100u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MAX_INTLIST_COUNT: u32 = 402u32; @@ -4126,6 +5263,36 @@ pub const MCS_NOTRAILINGDATES: u32 = 64u32; pub const MCS_SHORTDAYSOFWEEK: u32 = 128u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MCS_WEEKNUMBERS: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type MDICLOSEBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDCL_NORMAL: MDICLOSEBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDCL_HOT: MDICLOSEBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDCL_PUSHED: MDICLOSEBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDCL_DISABLED: MDICLOSEBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type MDIMINBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDMI_NORMAL: MDIMINBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDMI_HOT: MDIMINBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDMI_PUSHED: MDIMINBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDMI_DISABLED: MDIMINBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type MDIRESTOREBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDRE_NORMAL: MDIRESTOREBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDRE_HOT: MDIRESTOREBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDRE_PUSHED: MDIRESTOREBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDRE_DISABLED: MDIRESTOREBUTTONSTATES = 4i32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub struct MEASUREITEMSTRUCT { @@ -4163,6 +5330,66 @@ pub const MDS_CHECKED: MENUBANDSTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MDS_HOTCHECKED: MENUBANDSTATES = 6i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type MENUPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_MENUITEM_TMSCHEMA: MENUPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_MENUDROPDOWN_TMSCHEMA: MENUPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_MENUBARITEM_TMSCHEMA: MENUPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_MENUBARDROPDOWN_TMSCHEMA: MENUPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_CHEVRON_TMSCHEMA: MENUPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_SEPARATOR_TMSCHEMA: MENUPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_BARBACKGROUND: MENUPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_BARITEM: MENUPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPBACKGROUND: MENUPARTS = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPBORDERS: MENUPARTS = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPCHECK: MENUPARTS = 11i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPCHECKBACKGROUND: MENUPARTS = 12i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPGUTTER: MENUPARTS = 13i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPITEM: MENUPARTS = 14i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPSEPARATOR: MENUPARTS = 15i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPSUBMENU: MENUPARTS = 16i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_SYSTEMCLOSE: MENUPARTS = 17i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_SYSTEMMAXIMIZE: MENUPARTS = 18i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_SYSTEMMINIMIZE: MENUPARTS = 19i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_SYSTEMRESTORE: MENUPARTS = 20i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type MINBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MINBS_NORMAL: MINBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MINBS_HOT: MINBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MINBS_PUSHED: MINBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MINBS_DISABLED: MINBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type MINCAPTIONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MNCS_ACTIVE: MINCAPTIONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MNCS_INACTIVE: MINCAPTIONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MNCS_DISABLED: MINCAPTIONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type MONTHCALPARTS = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MC_BACKGROUND: MONTHCALPARTS = 1i32; @@ -4221,6 +5448,12 @@ pub const SPMPT_DISABLED: MOREPROGRAMSTABSTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const SPMPT_FOCUSED: MOREPROGRAMSTABSTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type MOVESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDMOVE_HIGHLIGHT: MOVESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDMOVE_NOHIGHLIGHT: MOVESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MSGF_COMMCTRL_BEGINDRAG: u32 = 16896u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MSGF_COMMCTRL_DRAGSELECT: u32 = 16898u32; @@ -4231,6 +5464,14 @@ pub const MSGF_COMMCTRL_TOOLBARCUST: u32 = 16899u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MULTIFILEOPENORD: u32 = 1537u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type NAVIGATIONPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_BACKBUTTON: NAVIGATIONPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_FORWARDBUTTON: NAVIGATIONPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_MENUBUTTON: NAVIGATIONPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type NAVNEXTSTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MCNN_NORMAL: NAVNEXTSTATES = 1i32; @@ -4251,6 +5492,36 @@ pub const MCNP_PRESSED: NAVPREVSTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MCNP_DISABLED: NAVPREVSTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type NAV_BACKBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_BB_NORMAL: NAV_BACKBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_BB_HOT: NAV_BACKBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_BB_PRESSED: NAV_BACKBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_BB_DISABLED: NAV_BACKBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type NAV_FORWARDBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_FB_NORMAL: NAV_FORWARDBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_FB_HOT: NAV_FORWARDBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_FB_PRESSED: NAV_FORWARDBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_FB_DISABLED: NAV_FORWARDBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type NAV_MENUBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_MB_NORMAL: NAV_MENUBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_MB_HOT: NAV_MENUBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_MB_PRESSED: NAV_MENUBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_MB_DISABLED: NAV_MENUBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const NEWFILEOPENORD: u32 = 1547u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const NEWFILEOPENV2ORD: u32 = 1552u32; @@ -4876,11 +6147,11 @@ impl ::core::clone::Clone for NMLVCACHEHINT { #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub struct NMLVCUSTOMDRAW { pub nmcd: NMCUSTOMDRAW, - pub clrText: u32, - pub clrTextBk: u32, + pub clrText: super::super::Foundation::COLORREF, + pub clrTextBk: super::super::Foundation::COLORREF, pub iSubItem: i32, pub dwItemType: NMLVCUSTOMDRAW_ITEM_TYPE, - pub clrFace: u32, + pub clrFace: super::super::Foundation::COLORREF, pub iIconEffect: i32, pub iIconPhase: i32, pub iPartId: i32, @@ -5375,12 +6646,12 @@ pub struct NMTBCUSTOMDRAW { pub hbrMonoDither: super::super::Graphics::Gdi::HBRUSH, pub hbrLines: super::super::Graphics::Gdi::HBRUSH, pub hpenLines: super::super::Graphics::Gdi::HPEN, - pub clrText: u32, - pub clrMark: u32, - pub clrTextHighlight: u32, - pub clrBtnFace: u32, - pub clrBtnHighlight: u32, - pub clrHighlightHotTrack: u32, + pub clrText: super::super::Foundation::COLORREF, + pub clrMark: super::super::Foundation::COLORREF, + pub clrTextHighlight: super::super::Foundation::COLORREF, + pub clrBtnFace: super::super::Foundation::COLORREF, + pub clrBtnHighlight: super::super::Foundation::COLORREF, + pub clrHighlightHotTrack: super::super::Foundation::COLORREF, pub rcText: super::super::Foundation::RECT, pub nStringBkMode: i32, pub nHLStringBkMode: i32, @@ -5757,8 +7028,8 @@ impl ::core::clone::Clone for NMTVASYNCDRAW { #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub struct NMTVCUSTOMDRAW { pub nmcd: NMCUSTOMDRAW, - pub clrText: u32, - pub clrTextBk: u32, + pub clrText: super::super::Foundation::COLORREF, + pub clrTextBk: super::super::Foundation::COLORREF, pub iLevel: i32, } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] @@ -5950,7 +7221,29 @@ impl ::core::clone::Clone for NMVIEWCHANGE { } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const NM_GETCUSTOMSPLITRECT: u32 = 4294966049u32; +pub const NM_GETCUSTOMSPLITRECT: u32 = 4294966049u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type NONESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDNONE_HIGHLIGHT: NONESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDNONE_NOHIGHLIGHT: NONESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type NORMALGROUPCOLLAPSESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBNGC_NORMAL: NORMALGROUPCOLLAPSESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBNGC_HOT: NORMALGROUPCOLLAPSESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBNGC_PRESSED: NORMALGROUPCOLLAPSESTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type NORMALGROUPEXPANDSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBNGE_NORMAL: NORMALGROUPEXPANDSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBNGE_HOT: NORMALGROUPEXPANDSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBNGE_PRESSED: NORMALGROUPEXPANDSTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const ODT_HEADER: u32 = 100u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] @@ -6269,12 +7562,72 @@ impl ::core::clone::Clone for POINTER_TYPE_INFO_0 { } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type POPUPCHECKBACKGROUNDSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCB_DISABLED: POPUPCHECKBACKGROUNDSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCB_NORMAL: POPUPCHECKBACKGROUNDSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCB_BITMAP: POPUPCHECKBACKGROUNDSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type POPUPCHECKSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MC_CHECKMARKNORMAL: POPUPCHECKSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MC_CHECKMARKDISABLED: POPUPCHECKSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MC_BULLETNORMAL: POPUPCHECKSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MC_BULLETDISABLED: POPUPCHECKSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type POPUPITEMSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MPI_NORMAL: POPUPITEMSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MPI_HOT: POPUPITEMSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MPI_DISABLED: POPUPITEMSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MPI_DISABLEDHOT: POPUPITEMSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type POPUPSUBMENUSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSM_NORMAL: POPUPSUBMENUSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSM_DISABLED: POPUPSUBMENUSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const PRINTDLGEXORD: u32 = 1549u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const PRINTDLGORD: u32 = 1538u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const PRNSETUPDLGORD: u32 = 1539u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type PROGRESSPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_BAR: PROGRESSPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_BARVERT: PROGRESSPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_CHUNK: PROGRESSPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_CHUNKVERT: PROGRESSPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_FILL: PROGRESSPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_FILLVERT: PROGRESSPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_PULSEOVERLAY: PROGRESSPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_MOVEOVERLAY: PROGRESSPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_PULSEOVERLAYVERT: PROGRESSPARTS = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_MOVEOVERLAYVERT: PROGRESSPARTS = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_TRANSPARENTBAR: PROGRESSPARTS = 11i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_TRANSPARENTBARVERT: PROGRESSPARTS = 12i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const PROGRESS_CLASS: &str = "msctls_progress32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const PROGRESS_CLASSA: &str = "msctls_progress32"; @@ -7356,6 +8709,44 @@ pub const PSWIZB_RESTORE: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const PSWIZB_SHOW: u32 = 0u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type PUSHBUTTONDROPDOWNSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBDDS_NORMAL: PUSHBUTTONDROPDOWNSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBDDS_DISABLED: PUSHBUTTONDROPDOWNSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type PUSHBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBS_NORMAL: PUSHBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBS_HOT: PUSHBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBS_PRESSED: PUSHBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBS_DISABLED: PUSHBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBS_DEFAULTED: PUSHBUTTONSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBS_DEFAULTED_ANIMATING: PUSHBUTTONSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type RADIOBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_UNCHECKEDNORMAL: RADIOBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_UNCHECKEDHOT: RADIOBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_UNCHECKEDPRESSED: RADIOBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_UNCHECKEDDISABLED: RADIOBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_CHECKEDNORMAL: RADIOBUTTONSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_CHECKEDHOT: RADIOBUTTONSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_CHECKEDPRESSED: RADIOBUTTONSTATES = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_CHECKEDDISABLED: RADIOBUTTONSTATES = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const RBAB_ADDBAND: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const RBAB_AUTOSIZE: u32 = 1u32; @@ -7555,6 +8946,16 @@ pub const RB_SETWINDOWTHEME: u32 = 8203u32; pub const RB_SHOWBAND: u32 = 1059u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const RB_SIZETORECT: u32 = 1047u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type READONLYSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBRO_NORMAL: READONLYSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBRO_HOT: READONLYSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBRO_PRESSED: READONLYSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBRO_DISABLED: READONLYSTATES = 4i32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] @@ -7562,8 +8963,8 @@ pub struct REBARBANDINFOA { pub cbSize: u32, pub fMask: u32, pub fStyle: u32, - pub clrFore: u32, - pub clrBack: u32, + pub clrFore: super::super::Foundation::COLORREF, + pub clrBack: super::super::Foundation::COLORREF, pub lpText: ::windows_sys::core::PSTR, pub cch: u32, pub iImage: i32, @@ -7597,8 +8998,8 @@ pub struct REBARBANDINFOW { pub cbSize: u32, pub fMask: u32, pub fStyle: u32, - pub clrFore: u32, - pub clrBack: u32, + pub clrFore: super::super::Foundation::COLORREF, + pub clrBack: super::super::Foundation::COLORREF, pub lpText: ::windows_sys::core::PWSTR, pub cch: u32, pub iImage: i32, @@ -7645,8 +9046,36 @@ impl ::core::clone::Clone for REBARINFO { } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type REBARPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RP_GRIPPER: REBARPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RP_GRIPPERVERT: REBARPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RP_BAND: REBARPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RP_CHEVRON: REBARPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RP_CHEVRONVERT: REBARPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RP_BACKGROUND: REBARPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RP_SPLITTER: REBARPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RP_SPLITTERVERT: REBARPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const REPLACEDLGORD: u32 = 1541u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type RESTOREBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_NORMAL: RESTOREBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_HOT: RESTOREBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_PUSHED: RESTOREBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_DISABLED: RESTOREBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const RUNDLGORD: u32 = 1545u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const SBARS_SIZEGRIP: u32 = 256u32; @@ -7717,6 +9146,86 @@ pub const SB_SIMPLE: u32 = 1033u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const SB_SIMPLEID: u32 = 255u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SCROLLBARPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBP_ARROWBTN: SCROLLBARPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBP_THUMBBTNHORZ: SCROLLBARPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBP_THUMBBTNVERT: SCROLLBARPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBP_LOWERTRACKHORZ: SCROLLBARPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBP_UPPERTRACKHORZ: SCROLLBARPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBP_LOWERTRACKVERT: SCROLLBARPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBP_UPPERTRACKVERT: SCROLLBARPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBP_GRIPPERHORZ: SCROLLBARPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBP_GRIPPERVERT: SCROLLBARPARTS = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBP_SIZEBOX: SCROLLBARPARTS = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBP_SIZEBOXBKGND: SCROLLBARPARTS = 11i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SCROLLBARSTYLESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SCRBS_NORMAL: SCROLLBARSTYLESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SCRBS_HOT: SCROLLBARSTYLESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SCRBS_PRESSED: SCROLLBARSTYLESTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SCRBS_DISABLED: SCROLLBARSTYLESTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SCRBS_HOVER: SCROLLBARSTYLESTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SECTIONTITLELINKSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPSTL_NORMAL: SECTIONTITLELINKSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPSTL_HOT: SECTIONTITLELINKSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SET_THEME_APP_PROPERTIES_FLAGS = u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ALLOW_NONCLIENT: SET_THEME_APP_PROPERTIES_FLAGS = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ALLOW_CONTROLS: SET_THEME_APP_PROPERTIES_FLAGS = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ALLOW_WEBCONTENT: SET_THEME_APP_PROPERTIES_FLAGS = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VALIDBITS: SET_THEME_APP_PROPERTIES_FLAGS = 7u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SHOWCALENDARBUTTONRIGHTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPSCBR_NORMAL: SHOWCALENDARBUTTONRIGHTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPSCBR_HOT: SHOWCALENDARBUTTONRIGHTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPSCBR_PRESSED: SHOWCALENDARBUTTONRIGHTSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPSCBR_DISABLED: SHOWCALENDARBUTTONRIGHTSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SIZEBOXSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZB_RIGHTALIGN: SIZEBOXSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZB_LEFTALIGN: SIZEBOXSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZB_TOPRIGHTALIGN: SIZEBOXSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZB_TOPLEFTALIGN: SIZEBOXSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZB_HALFBOTTOMRIGHTALIGN: SIZEBOXSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZB_HALFBOTTOMLEFTALIGN: SIZEBOXSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZB_HALFTOPRIGHTALIGN: SIZEBOXSTATES = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZB_HALFTOPLEFTALIGN: SIZEBOXSTATES = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type SIZINGTYPE = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const ST_TRUESIZE: SIZINGTYPE = 0i32; @@ -7725,6 +9234,42 @@ pub const ST_STRETCH: SIZINGTYPE = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const ST_TILE: SIZINGTYPE = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SMALLCAPTIONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SCS_ACTIVE: SMALLCAPTIONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SCS_INACTIVE: SMALLCAPTIONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SCS_DISABLED: SMALLCAPTIONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SMALLCLOSEBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SCBS_NORMAL: SMALLCLOSEBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SCBS_HOT: SMALLCLOSEBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SCBS_PUSHED: SMALLCLOSEBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SCBS_DISABLED: SMALLCLOSEBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SMALLFRAMEBOTTOMSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SFRB_ACTIVE: SMALLFRAMEBOTTOMSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SFRB_INACTIVE: SMALLFRAMEBOTTOMSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SMALLFRAMELEFTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SFRL_ACTIVE: SMALLFRAMELEFTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SFRL_INACTIVE: SMALLFRAMELEFTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SMALLFRAMERIGHTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SFRR_ACTIVE: SMALLFRAMERIGHTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SFRR_INACTIVE: SMALLFRAMERIGHTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type SOFTWAREEXPLORERSTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const SPSE_NORMAL: SOFTWAREEXPLORERSTATES = 1i32; @@ -7737,93 +9282,263 @@ pub const SPSE_DISABLED: SOFTWAREEXPLORERSTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const SPSE_FOCUSED: SOFTWAREEXPLORERSTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SPECIALGROUPCOLLAPSESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBSGC_NORMAL: SPECIALGROUPCOLLAPSESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBSGC_HOT: SPECIALGROUPCOLLAPSESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBSGC_PRESSED: SPECIALGROUPCOLLAPSESTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SPECIALGROUPEXPANDSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBSGE_NORMAL: SPECIALGROUPEXPANDSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBSGE_HOT: SPECIALGROUPEXPANDSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBSGE_PRESSED: SPECIALGROUPEXPANDSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SPINPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPNP_UP: SPINPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPNP_DOWN: SPINPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPNP_UPHORZ: SPINPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPNP_DOWNHORZ: SPINPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SPLITTERSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPLITS_NORMAL: SPLITTERSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPLITS_HOT: SPLITTERSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPLITS_PRESSED: SPLITTERSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SPLITTERVERTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPLITSV_NORMAL: SPLITTERVERTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPLITSV_HOT: SPLITTERVERTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPLITSV_PRESSED: SPLITTERVERTSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type STANDARDSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTSS_NORMAL: STANDARDSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTSS_LINK: STANDARDSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type STARTPANELPARTS = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_USERPANE: STARTPANELPARTS = 1i32; +pub const SPP_USERPANE: STARTPANELPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_MOREPROGRAMS: STARTPANELPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_MOREPROGRAMSARROW: STARTPANELPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_PROGLIST: STARTPANELPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_PROGLISTSEPARATOR: STARTPANELPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_PLACESLIST: STARTPANELPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_PLACESLISTSEPARATOR: STARTPANELPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_LOGOFF: STARTPANELPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_LOGOFFBUTTONS: STARTPANELPARTS = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_USERPICTURE: STARTPANELPARTS = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_PREVIEW: STARTPANELPARTS = 11i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_MOREPROGRAMSTAB: STARTPANELPARTS = 12i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_NSCHOST: STARTPANELPARTS = 13i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_SOFTWAREEXPLORER: STARTPANELPARTS = 14i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_OPENBOX: STARTPANELPARTS = 15i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_SEARCHVIEW: STARTPANELPARTS = 16i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_MOREPROGRAMSARROWBACK: STARTPANELPARTS = 17i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_TOPMATCH: STARTPANELPARTS = 18i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SPP_LOGOFFSPLITBUTTONDROPDOWN: STARTPANELPARTS = 19i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type STATICPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STAT_TEXT: STATICPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STATUSCLASSNAME: &str = "msctls_statusbar32"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STATUSCLASSNAMEA: &str = "msctls_statusbar32"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STATUSCLASSNAMEW: &str = "msctls_statusbar32"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type STATUSPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SP_PANE: STATUSPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SP_GRIPPERPANE: STATUSPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SP_GRIPPER: STATUSPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_COPY: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_CUT: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_DELETE: u32 = 5u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_FILENEW: u32 = 6u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_FILEOPEN: u32 = 7u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_FILESAVE: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_FIND: u32 = 12u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_HELP: u32 = 11u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_PASTE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_PRINT: u32 = 14u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_PRINTPRE: u32 = 9u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_PROPERTIES: u32 = 10u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_REDOW: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_REPLACE: u32 = 13u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_UNDO: u32 = 3u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SYSBUTTONSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBS_NORMAL: SYSBUTTONSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBS_HOT: SYSBUTTONSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBS_PUSHED: SYSBUTTONSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBS_DISABLED: SYSBUTTONSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SYSTEMCLOSESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSYSC_NORMAL: SYSTEMCLOSESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSYSC_DISABLED: SYSTEMCLOSESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SYSTEMMAXIMIZESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSYSMX_NORMAL: SYSTEMMAXIMIZESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSYSMX_DISABLED: SYSTEMMAXIMIZESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SYSTEMMINIMIZESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSYSMN_NORMAL: SYSTEMMINIMIZESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSYSMN_DISABLED: SYSTEMMINIMIZESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type SYSTEMRESTORESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSYSR_NORMAL: SYSTEMRESTORESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSYSR_DISABLED: SYSTEMRESTORESTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZ_THDOCPROP_AUTHOR: &str = "author"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZ_THDOCPROP_CANONICALNAME: &str = "ThemeName"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_MOREPROGRAMS: STARTPANELPARTS = 2i32; +pub const SZ_THDOCPROP_DISPLAYNAME: &str = "DisplayName"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_MOREPROGRAMSARROW: STARTPANELPARTS = 3i32; +pub const SZ_THDOCPROP_TOOLTIP: &str = "ToolTip"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_PROGLIST: STARTPANELPARTS = 4i32; +pub type TABITEMBOTHEDGESTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_PROGLISTSEPARATOR: STARTPANELPARTS = 5i32; +pub const TIBES_NORMAL: TABITEMBOTHEDGESTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_PLACESLIST: STARTPANELPARTS = 6i32; +pub const TIBES_HOT: TABITEMBOTHEDGESTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_PLACESLISTSEPARATOR: STARTPANELPARTS = 7i32; +pub const TIBES_SELECTED: TABITEMBOTHEDGESTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_LOGOFF: STARTPANELPARTS = 8i32; +pub const TIBES_DISABLED: TABITEMBOTHEDGESTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_LOGOFFBUTTONS: STARTPANELPARTS = 9i32; +pub const TIBES_FOCUSED: TABITEMBOTHEDGESTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_USERPICTURE: STARTPANELPARTS = 10i32; +pub type TABITEMLEFTEDGESTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_PREVIEW: STARTPANELPARTS = 11i32; +pub const TILES_NORMAL: TABITEMLEFTEDGESTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_MOREPROGRAMSTAB: STARTPANELPARTS = 12i32; +pub const TILES_HOT: TABITEMLEFTEDGESTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_NSCHOST: STARTPANELPARTS = 13i32; +pub const TILES_SELECTED: TABITEMLEFTEDGESTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_SOFTWAREEXPLORER: STARTPANELPARTS = 14i32; +pub const TILES_DISABLED: TABITEMLEFTEDGESTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_OPENBOX: STARTPANELPARTS = 15i32; +pub const TILES_FOCUSED: TABITEMLEFTEDGESTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_SEARCHVIEW: STARTPANELPARTS = 16i32; +pub type TABITEMRIGHTEDGESTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_MOREPROGRAMSARROWBACK: STARTPANELPARTS = 17i32; +pub const TIRES_NORMAL: TABITEMRIGHTEDGESTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_TOPMATCH: STARTPANELPARTS = 18i32; +pub const TIRES_HOT: TABITEMRIGHTEDGESTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPP_LOGOFFSPLITBUTTONDROPDOWN: STARTPANELPARTS = 19i32; +pub const TIRES_SELECTED: TABITEMRIGHTEDGESTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub type STATICPARTS = i32; +pub const TIRES_DISABLED: TABITEMRIGHTEDGESTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STAT_TEXT: STATICPARTS = 1i32; +pub const TIRES_FOCUSED: TABITEMRIGHTEDGESTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STATUSCLASSNAME: &str = "msctls_statusbar32"; +pub type TABITEMSTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STATUSCLASSNAMEA: &str = "msctls_statusbar32"; +pub const TIS_NORMAL: TABITEMSTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STATUSCLASSNAMEW: &str = "msctls_statusbar32"; +pub const TIS_HOT: TABITEMSTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_COPY: u32 = 1u32; +pub const TIS_SELECTED: TABITEMSTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_CUT: u32 = 0u32; +pub const TIS_DISABLED: TABITEMSTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_DELETE: u32 = 5u32; +pub const TIS_FOCUSED: TABITEMSTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_FILENEW: u32 = 6u32; +pub type TABPARTS = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_FILEOPEN: u32 = 7u32; +pub const TABP_TABITEM: TABPARTS = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_FILESAVE: u32 = 8u32; +pub const TABP_TABITEMLEFTEDGE: TABPARTS = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_FIND: u32 = 12u32; +pub const TABP_TABITEMRIGHTEDGE: TABPARTS = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_HELP: u32 = 11u32; +pub const TABP_TABITEMBOTHEDGE: TABPARTS = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_PASTE: u32 = 2u32; +pub const TABP_TOPTABITEM: TABPARTS = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_PRINT: u32 = 14u32; +pub const TABP_TOPTABITEMLEFTEDGE: TABPARTS = 6i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_PRINTPRE: u32 = 9u32; +pub const TABP_TOPTABITEMRIGHTEDGE: TABPARTS = 7i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_PROPERTIES: u32 = 10u32; +pub const TABP_TOPTABITEMBOTHEDGE: TABPARTS = 8i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_REDOW: u32 = 4u32; +pub const TABP_PANE: TABPARTS = 9i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_REPLACE: u32 = 13u32; +pub const TABP_BODY: TABPARTS = 10i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_UNDO: u32 = 3u32; +pub const TABP_AEROWIZARDBODY: TABPARTS = 11i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SZ_THDOCPROP_AUTHOR: &str = "author"; +pub type TABSTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SZ_THDOCPROP_CANONICALNAME: &str = "ThemeName"; +pub const CSTB_NORMAL: TABSTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SZ_THDOCPROP_DISPLAYNAME: &str = "DisplayName"; +pub const CSTB_HOT: TABSTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SZ_THDOCPROP_TOOLTIP: &str = "ToolTip"; +pub const CSTB_SELECTED: TABSTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type TASKBANDPARTS = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] @@ -7917,6 +9632,50 @@ impl ::core::clone::Clone for TASKDIALOGCONFIG_1 { *self } } +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type TASKDIALOGPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_PRIMARYPANEL: TASKDIALOGPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_MAININSTRUCTIONPANE: TASKDIALOGPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_MAINICON: TASKDIALOGPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_CONTENTPANE: TASKDIALOGPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_CONTENTICON: TASKDIALOGPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_EXPANDEDCONTENT: TASKDIALOGPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_COMMANDLINKPANE: TASKDIALOGPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_SECONDARYPANEL: TASKDIALOGPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_CONTROLPANE: TASKDIALOGPARTS = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_BUTTONSECTION: TASKDIALOGPARTS = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_BUTTONWRAPPER: TASKDIALOGPARTS = 11i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_EXPANDOTEXT: TASKDIALOGPARTS = 12i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_EXPANDOBUTTON: TASKDIALOGPARTS = 13i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_VERIFICATIONTEXT: TASKDIALOGPARTS = 14i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_FOOTNOTEPANE: TASKDIALOGPARTS = 15i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_FOOTNOTEAREA: TASKDIALOGPARTS = 16i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_FOOTNOTESEPARATOR: TASKDIALOGPARTS = 17i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_EXPANDEDFOOTERAREA: TASKDIALOGPARTS = 18i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_PROGRESSBAR: TASKDIALOGPARTS = 19i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_IMAGEALIGNMENT: TASKDIALOGPARTS = 20i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_RADIOBUTTONPANE: TASKDIALOGPARTS = 21i32; #[repr(C, packed(1))] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub struct TASKDIALOG_BUTTON { @@ -8053,6 +9812,18 @@ pub const TDN_VERIFICATION_CLICKED: TASKDIALOG_NOTIFICATIONS = 8i32; pub const TDN_HELP: TASKDIALOG_NOTIFICATIONS = 9i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TDN_EXPANDO_BUTTON_CLICKED: TASKDIALOG_NOTIFICATIONS = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type TASKLINKSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPTL_NORMAL: TASKLINKSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPTL_HOT: TASKLINKSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPTL_PRESSED: TASKLINKSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPTL_DISABLED: TASKLINKSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPTL_PAGE: TASKLINKSTATES = 5i32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub struct TA_CUBIC_BEZIER { @@ -9086,6 +10857,10 @@ pub const TD_SHIELD_ICON: ::windows_sys::core::PCWSTR = -4i32 as _; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TD_WARNING_ICON: ::windows_sys::core::PCWSTR = -1i32 as _; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type TEXTSELECTIONGRIPPERPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TSGP_GRIPPER: TEXTSELECTIONGRIPPERPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type TEXTSHADOWTYPE = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TST_NONE: TEXTSHADOWTYPE = 0i32; @@ -9094,6 +10869,26 @@ pub const TST_SINGLE: TEXTSHADOWTYPE = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TST_CONTINUOUS: TEXTSHADOWTYPE = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type TEXTSTYLEPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_MAININSTRUCTION: TEXTSTYLEPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_INSTRUCTION: TEXTSTYLEPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_BODYTITLE: TEXTSTYLEPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_BODYTEXT: TEXTSTYLEPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_SECONDARYTEXT: TEXTSTYLEPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_HYPERLINKTEXT: TEXTSTYLEPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_EXPANDED: TEXTSTYLEPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_LABEL: TEXTSTYLEPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_CONTROLLABEL: TEXTSTYLEPARTS = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type THEMESIZE = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TS_MIN: THEMESIZE = 0i32; @@ -9468,167 +11263,355 @@ pub const TMT_IMAGEFILE1: THEME_PROPERTY_SYMBOL_ID = 3002u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TMT_IMAGEFILE2: THEME_PROPERTY_SYMBOL_ID = 3003u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGEFILE3: THEME_PROPERTY_SYMBOL_ID = 3004u32; +pub const TMT_IMAGEFILE3: THEME_PROPERTY_SYMBOL_ID = 3004u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGEFILE4: THEME_PROPERTY_SYMBOL_ID = 3005u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGEFILE5: THEME_PROPERTY_SYMBOL_ID = 3006u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GLYPHIMAGEFILE: THEME_PROPERTY_SYMBOL_ID = 3008u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGEFILE6: THEME_PROPERTY_SYMBOL_ID = 3009u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGEFILE7: THEME_PROPERTY_SYMBOL_ID = 3010u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TEXT: THEME_PROPERTY_SYMBOL_ID = 3201u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_CLASSICVALUE: THEME_PROPERTY_SYMBOL_ID = 3202u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_OFFSET: THEME_PROPERTY_SYMBOL_ID = 3401u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TEXTSHADOWOFFSET: THEME_PROPERTY_SYMBOL_ID = 3402u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE: THEME_PROPERTY_SYMBOL_ID = 3403u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE1: THEME_PROPERTY_SYMBOL_ID = 3404u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE2: THEME_PROPERTY_SYMBOL_ID = 3405u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE3: THEME_PROPERTY_SYMBOL_ID = 3406u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE4: THEME_PROPERTY_SYMBOL_ID = 3407u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE5: THEME_PROPERTY_SYMBOL_ID = 3408u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_NORMALSIZE: THEME_PROPERTY_SYMBOL_ID = 3409u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE6: THEME_PROPERTY_SYMBOL_ID = 3410u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE7: THEME_PROPERTY_SYMBOL_ID = 3411u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_SIZINGMARGINS: THEME_PROPERTY_SYMBOL_ID = 3601u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_CONTENTMARGINS: THEME_PROPERTY_SYMBOL_ID = 3602u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_CAPTIONMARGINS: THEME_PROPERTY_SYMBOL_ID = 3603u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_BORDERCOLOR: THEME_PROPERTY_SYMBOL_ID = 3801u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_FILLCOLOR: THEME_PROPERTY_SYMBOL_ID = 3802u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3803u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_EDGELIGHTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3804u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_EDGEHIGHLIGHTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3805u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_EDGESHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = 3806u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_EDGEDKSHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = 3807u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_EDGEFILLCOLOR: THEME_PROPERTY_SYMBOL_ID = 3808u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TRANSPARENTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3809u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GRADIENTCOLOR1: THEME_PROPERTY_SYMBOL_ID = 3810u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GRADIENTCOLOR2: THEME_PROPERTY_SYMBOL_ID = 3811u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GRADIENTCOLOR3: THEME_PROPERTY_SYMBOL_ID = 3812u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GRADIENTCOLOR4: THEME_PROPERTY_SYMBOL_ID = 3813u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GRADIENTCOLOR5: THEME_PROPERTY_SYMBOL_ID = 3814u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_SHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = 3815u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GLOWCOLOR: THEME_PROPERTY_SYMBOL_ID = 3816u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TEXTBORDERCOLOR: THEME_PROPERTY_SYMBOL_ID = 3817u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TEXTSHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = 3818u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GLYPHTEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3819u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GLYPHTRANSPARENTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3820u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_FILLCOLORHINT: THEME_PROPERTY_SYMBOL_ID = 3821u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_BORDERCOLORHINT: THEME_PROPERTY_SYMBOL_ID = 3822u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_ACCENTCOLORHINT: THEME_PROPERTY_SYMBOL_ID = 3823u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TEXTCOLORHINT: THEME_PROPERTY_SYMBOL_ID = 3824u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_HEADING1TEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3825u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_HEADING2TEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3826u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_BODYTEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3827u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_BGTYPE: THEME_PROPERTY_SYMBOL_ID = 4001u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_BORDERTYPE: THEME_PROPERTY_SYMBOL_ID = 4002u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_FILLTYPE: THEME_PROPERTY_SYMBOL_ID = 4003u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_SIZINGTYPE: THEME_PROPERTY_SYMBOL_ID = 4004u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_HALIGN: THEME_PROPERTY_SYMBOL_ID = 4005u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_CONTENTALIGNMENT: THEME_PROPERTY_SYMBOL_ID = 4006u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_VALIGN: THEME_PROPERTY_SYMBOL_ID = 4007u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_OFFSETTYPE: THEME_PROPERTY_SYMBOL_ID = 4008u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_ICONEFFECT: THEME_PROPERTY_SYMBOL_ID = 4009u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TEXTSHADOWTYPE: THEME_PROPERTY_SYMBOL_ID = 4010u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGELAYOUT: THEME_PROPERTY_SYMBOL_ID = 4011u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GLYPHTYPE: THEME_PROPERTY_SYMBOL_ID = 4012u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGESELECTTYPE: THEME_PROPERTY_SYMBOL_ID = 4013u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GLYPHFONTSIZINGTYPE: THEME_PROPERTY_SYMBOL_ID = 4014u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TRUESIZESCALINGTYPE: THEME_PROPERTY_SYMBOL_ID = 4015u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_USERPICTURE: THEME_PROPERTY_SYMBOL_ID = 5001u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_DEFAULTPANESIZE: THEME_PROPERTY_SYMBOL_ID = 5002u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_BLENDCOLOR: THEME_PROPERTY_SYMBOL_ID = 5003u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_CUSTOMSPLITRECT: THEME_PROPERTY_SYMBOL_ID = 5004u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_ANIMATIONBUTTONRECT: THEME_PROPERTY_SYMBOL_ID = 5005u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_ANIMATIONDURATION: THEME_PROPERTY_SYMBOL_ID = 5006u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TRANSITIONDURATIONS: THEME_PROPERTY_SYMBOL_ID = 6000u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_SCALEDBACKGROUND: THEME_PROPERTY_SYMBOL_ID = 7001u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_ATLASIMAGE: THEME_PROPERTY_SYMBOL_ID = 8000u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_ATLASINPUTIMAGE: THEME_PROPERTY_SYMBOL_ID = 8001u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_ATLASRECT: THEME_PROPERTY_SYMBOL_ID = 8002u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type THUMBBOTTOMSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUBS_NORMAL: THUMBBOTTOMSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUBS_HOT: THUMBBOTTOMSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUBS_PRESSED: THUMBBOTTOMSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUBS_FOCUSED: THUMBBOTTOMSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUBS_DISABLED: THUMBBOTTOMSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type THUMBLEFTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVLS_NORMAL: THUMBLEFTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVLS_HOT: THUMBLEFTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVLS_PRESSED: THUMBLEFTSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVLS_FOCUSED: THUMBLEFTSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVLS_DISABLED: THUMBLEFTSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type THUMBRIGHTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVRS_NORMAL: THUMBRIGHTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVRS_HOT: THUMBRIGHTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVRS_PRESSED: THUMBRIGHTSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVRS_FOCUSED: THUMBRIGHTSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVRS_DISABLED: THUMBRIGHTSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type THUMBSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUS_NORMAL: THUMBSTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGEFILE4: THEME_PROPERTY_SYMBOL_ID = 3005u32; +pub const TUS_HOT: THUMBSTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGEFILE5: THEME_PROPERTY_SYMBOL_ID = 3006u32; +pub const TUS_PRESSED: THUMBSTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GLYPHIMAGEFILE: THEME_PROPERTY_SYMBOL_ID = 3008u32; +pub const TUS_FOCUSED: THUMBSTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGEFILE6: THEME_PROPERTY_SYMBOL_ID = 3009u32; +pub const TUS_DISABLED: THUMBSTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGEFILE7: THEME_PROPERTY_SYMBOL_ID = 3010u32; +pub type THUMBTOPSTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TEXT: THEME_PROPERTY_SYMBOL_ID = 3201u32; +pub const TUTS_NORMAL: THUMBTOPSTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_CLASSICVALUE: THEME_PROPERTY_SYMBOL_ID = 3202u32; +pub const TUTS_HOT: THUMBTOPSTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_OFFSET: THEME_PROPERTY_SYMBOL_ID = 3401u32; +pub const TUTS_PRESSED: THUMBTOPSTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TEXTSHADOWOFFSET: THEME_PROPERTY_SYMBOL_ID = 3402u32; +pub const TUTS_FOCUSED: THUMBTOPSTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE: THEME_PROPERTY_SYMBOL_ID = 3403u32; +pub const TUTS_DISABLED: THUMBTOPSTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE1: THEME_PROPERTY_SYMBOL_ID = 3404u32; +pub type THUMBVERTSTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE2: THEME_PROPERTY_SYMBOL_ID = 3405u32; +pub const TUVS_NORMAL: THUMBVERTSTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE3: THEME_PROPERTY_SYMBOL_ID = 3406u32; +pub const TUVS_HOT: THUMBVERTSTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE4: THEME_PROPERTY_SYMBOL_ID = 3407u32; +pub const TUVS_PRESSED: THUMBVERTSTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE5: THEME_PROPERTY_SYMBOL_ID = 3408u32; +pub const TUVS_FOCUSED: THUMBVERTSTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_NORMALSIZE: THEME_PROPERTY_SYMBOL_ID = 3409u32; +pub const TUVS_DISABLED: THUMBVERTSTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE6: THEME_PROPERTY_SYMBOL_ID = 3410u32; +pub type TICSSTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE7: THEME_PROPERTY_SYMBOL_ID = 3411u32; +pub const TSS_NORMAL: TICSSTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_SIZINGMARGINS: THEME_PROPERTY_SYMBOL_ID = 3601u32; +pub type TICSVERTSTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_CONTENTMARGINS: THEME_PROPERTY_SYMBOL_ID = 3602u32; +pub const TSVS_NORMAL: TICSVERTSTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_CAPTIONMARGINS: THEME_PROPERTY_SYMBOL_ID = 3603u32; +pub type TITLEBARSTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_BORDERCOLOR: THEME_PROPERTY_SYMBOL_ID = 3801u32; +pub const AW_S_TITLEBAR_ACTIVE: TITLEBARSTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_FILLCOLOR: THEME_PROPERTY_SYMBOL_ID = 3802u32; +pub const AW_S_TITLEBAR_INACTIVE: TITLEBARSTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3803u32; +pub const TMTVS_RESERVEDHIGH: u32 = 19999u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_EDGELIGHTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3804u32; +pub const TMTVS_RESERVEDLOW: u32 = 100000u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_EDGEHIGHLIGHTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3805u32; +pub const TOOLBARCLASSNAME: &str = "ToolbarWindow32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_EDGESHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = 3806u32; +pub const TOOLBARCLASSNAMEA: &str = "ToolbarWindow32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_EDGEDKSHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = 3807u32; +pub const TOOLBARCLASSNAMEW: &str = "ToolbarWindow32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_EDGEFILLCOLOR: THEME_PROPERTY_SYMBOL_ID = 3808u32; +pub type TOOLBARPARTS = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TRANSPARENTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3809u32; +pub const TP_BUTTON: TOOLBARPARTS = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GRADIENTCOLOR1: THEME_PROPERTY_SYMBOL_ID = 3810u32; +pub const TP_DROPDOWNBUTTON: TOOLBARPARTS = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GRADIENTCOLOR2: THEME_PROPERTY_SYMBOL_ID = 3811u32; +pub const TP_SPLITBUTTON: TOOLBARPARTS = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GRADIENTCOLOR3: THEME_PROPERTY_SYMBOL_ID = 3812u32; +pub const TP_SPLITBUTTONDROPDOWN: TOOLBARPARTS = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GRADIENTCOLOR4: THEME_PROPERTY_SYMBOL_ID = 3813u32; +pub const TP_SEPARATOR: TOOLBARPARTS = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GRADIENTCOLOR5: THEME_PROPERTY_SYMBOL_ID = 3814u32; +pub const TP_SEPARATORVERT: TOOLBARPARTS = 6i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_SHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = 3815u32; +pub const TP_DROPDOWNBUTTONGLYPH: TOOLBARPARTS = 7i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GLOWCOLOR: THEME_PROPERTY_SYMBOL_ID = 3816u32; +pub type TOOLBARSTYLESTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TEXTBORDERCOLOR: THEME_PROPERTY_SYMBOL_ID = 3817u32; +pub const TS_NORMAL: TOOLBARSTYLESTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TEXTSHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = 3818u32; +pub const TS_HOT: TOOLBARSTYLESTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GLYPHTEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3819u32; +pub const TS_PRESSED: TOOLBARSTYLESTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GLYPHTRANSPARENTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3820u32; +pub const TS_DISABLED: TOOLBARSTYLESTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_FILLCOLORHINT: THEME_PROPERTY_SYMBOL_ID = 3821u32; +pub const TS_CHECKED: TOOLBARSTYLESTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_BORDERCOLORHINT: THEME_PROPERTY_SYMBOL_ID = 3822u32; +pub const TS_HOTCHECKED: TOOLBARSTYLESTATES = 6i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_ACCENTCOLORHINT: THEME_PROPERTY_SYMBOL_ID = 3823u32; +pub const TS_NEARHOT: TOOLBARSTYLESTATES = 7i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TEXTCOLORHINT: THEME_PROPERTY_SYMBOL_ID = 3824u32; +pub const TS_OTHERSIDEHOT: TOOLBARSTYLESTATES = 8i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_HEADING1TEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3825u32; +pub type TOOLTIPPARTS = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_HEADING2TEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3826u32; +pub const TTP_STANDARD: TOOLTIPPARTS = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_BODYTEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = 3827u32; +pub const TTP_STANDARDTITLE: TOOLTIPPARTS = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_BGTYPE: THEME_PROPERTY_SYMBOL_ID = 4001u32; +pub const TTP_BALLOON: TOOLTIPPARTS = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_BORDERTYPE: THEME_PROPERTY_SYMBOL_ID = 4002u32; +pub const TTP_BALLOONTITLE: TOOLTIPPARTS = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_FILLTYPE: THEME_PROPERTY_SYMBOL_ID = 4003u32; +pub const TTP_CLOSE: TOOLTIPPARTS = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_SIZINGTYPE: THEME_PROPERTY_SYMBOL_ID = 4004u32; +pub const TTP_BALLOONSTEM: TOOLTIPPARTS = 6i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_HALIGN: THEME_PROPERTY_SYMBOL_ID = 4005u32; +pub const TTP_WRENCH: TOOLTIPPARTS = 7i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_CONTENTALIGNMENT: THEME_PROPERTY_SYMBOL_ID = 4006u32; +pub const TOOLTIPS_CLASS: &str = "tooltips_class32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_VALIGN: THEME_PROPERTY_SYMBOL_ID = 4007u32; +pub const TOOLTIPS_CLASSA: &str = "tooltips_class32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_OFFSETTYPE: THEME_PROPERTY_SYMBOL_ID = 4008u32; +pub const TOOLTIPS_CLASSW: &str = "tooltips_class32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_ICONEFFECT: THEME_PROPERTY_SYMBOL_ID = 4009u32; +pub type TOPTABITEMBOTHEDGESTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TEXTSHADOWTYPE: THEME_PROPERTY_SYMBOL_ID = 4010u32; +pub const TTIBES_NORMAL: TOPTABITEMBOTHEDGESTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGELAYOUT: THEME_PROPERTY_SYMBOL_ID = 4011u32; +pub const TTIBES_HOT: TOPTABITEMBOTHEDGESTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GLYPHTYPE: THEME_PROPERTY_SYMBOL_ID = 4012u32; +pub const TTIBES_SELECTED: TOPTABITEMBOTHEDGESTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGESELECTTYPE: THEME_PROPERTY_SYMBOL_ID = 4013u32; +pub const TTIBES_DISABLED: TOPTABITEMBOTHEDGESTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GLYPHFONTSIZINGTYPE: THEME_PROPERTY_SYMBOL_ID = 4014u32; +pub const TTIBES_FOCUSED: TOPTABITEMBOTHEDGESTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TRUESIZESCALINGTYPE: THEME_PROPERTY_SYMBOL_ID = 4015u32; +pub type TOPTABITEMLEFTEDGESTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_USERPICTURE: THEME_PROPERTY_SYMBOL_ID = 5001u32; +pub const TTILES_NORMAL: TOPTABITEMLEFTEDGESTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_DEFAULTPANESIZE: THEME_PROPERTY_SYMBOL_ID = 5002u32; +pub const TTILES_HOT: TOPTABITEMLEFTEDGESTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_BLENDCOLOR: THEME_PROPERTY_SYMBOL_ID = 5003u32; +pub const TTILES_SELECTED: TOPTABITEMLEFTEDGESTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_CUSTOMSPLITRECT: THEME_PROPERTY_SYMBOL_ID = 5004u32; +pub const TTILES_DISABLED: TOPTABITEMLEFTEDGESTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_ANIMATIONBUTTONRECT: THEME_PROPERTY_SYMBOL_ID = 5005u32; +pub const TTILES_FOCUSED: TOPTABITEMLEFTEDGESTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_ANIMATIONDURATION: THEME_PROPERTY_SYMBOL_ID = 5006u32; +pub type TOPTABITEMRIGHTEDGESTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TRANSITIONDURATIONS: THEME_PROPERTY_SYMBOL_ID = 6000u32; +pub const TTIRES_NORMAL: TOPTABITEMRIGHTEDGESTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_SCALEDBACKGROUND: THEME_PROPERTY_SYMBOL_ID = 7001u32; +pub const TTIRES_HOT: TOPTABITEMRIGHTEDGESTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_ATLASIMAGE: THEME_PROPERTY_SYMBOL_ID = 8000u32; +pub const TTIRES_SELECTED: TOPTABITEMRIGHTEDGESTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_ATLASINPUTIMAGE: THEME_PROPERTY_SYMBOL_ID = 8001u32; +pub const TTIRES_DISABLED: TOPTABITEMRIGHTEDGESTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_ATLASRECT: THEME_PROPERTY_SYMBOL_ID = 8002u32; +pub const TTIRES_FOCUSED: TOPTABITEMRIGHTEDGESTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TOOLBARCLASSNAME: &str = "ToolbarWindow32"; +pub type TOPTABITEMSTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TOOLBARCLASSNAMEA: &str = "ToolbarWindow32"; +pub const TTIS_NORMAL: TOPTABITEMSTATES = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TOOLBARCLASSNAMEW: &str = "ToolbarWindow32"; +pub const TTIS_HOT: TOPTABITEMSTATES = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TOOLTIPS_CLASS: &str = "tooltips_class32"; +pub const TTIS_SELECTED: TOPTABITEMSTATES = 3i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TOOLTIPS_CLASSA: &str = "tooltips_class32"; +pub const TTIS_DISABLED: TOPTABITEMSTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TOOLTIPS_CLASSW: &str = "tooltips_class32"; +pub const TTIS_FOCUSED: TOPTABITEMSTATES = 5i32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -9663,12 +11646,46 @@ impl ::core::clone::Clone for TOUCH_HIT_TESTING_PROXIMITY_EVALUATION { } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type TRACKBARPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_TRACK: TRACKBARPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_TRACKVERT: TRACKBARPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_THUMB: TRACKBARPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_THUMBBOTTOM: TRACKBARPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_THUMBTOP: TRACKBARPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_THUMBVERT: TRACKBARPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_THUMBLEFT: TRACKBARPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_THUMBRIGHT: TRACKBARPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_TICS: TRACKBARPARTS = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_TICSVERT: TRACKBARPARTS = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type TRACKBARSTYLESTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKS_NORMAL: TRACKBARSTYLESTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TRACKBAR_CLASS: &str = "msctls_trackbar32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TRACKBAR_CLASSA: &str = "msctls_trackbar32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TRACKBAR_CLASSW: &str = "msctls_trackbar32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type TRACKSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TRS_NORMAL: TRACKSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type TRACKVERTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TRVS_NORMAL: TRACKVERTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type TRAILINGGRIDCELLSTATES = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MCTGC_HOT: TRAILINGGRIDCELLSTATES = 1i32; @@ -9697,12 +11714,58 @@ pub const MCTGCU_SELECTED: TRAILINGGRIDCELLUPPERSTATES = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MCTGCU_SELECTEDHOT: TRAILINGGRIDCELLUPPERSTATES = 5i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type TRANSPARENTBACKGROUNDSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBTBS_NORMAL: TRANSPARENTBACKGROUNDSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBTBS_HOT: TRANSPARENTBACKGROUNDSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBTBS_DISABLED: TRANSPARENTBACKGROUNDSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBTBS_FOCUSED: TRANSPARENTBACKGROUNDSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type TRANSPARENTBARSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBBS_NORMAL: TRANSPARENTBARSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBBS_PARTIAL: TRANSPARENTBARSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type TRANSPARENTBARVERTSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBBVS_NORMAL: TRANSPARENTBARVERTSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBBVS_PARTIAL: TRANSPARENTBARVERTSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type TRAYNOTIFYPARTS = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TNP_BACKGROUND: TRAYNOTIFYPARTS = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TNP_ANIMBACKGROUND: TRAYNOTIFYPARTS = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type TREEITEMSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TREIS_NORMAL: TREEITEMSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TREIS_HOT: TREEITEMSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TREIS_SELECTED: TREEITEMSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TREIS_DISABLED: TREEITEMSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TREIS_SELECTEDNOTFOCUS: TREEITEMSTATES = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TREIS_HOTSELECTED: TREEITEMSTATES = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type TREEVIEWPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TVP_TREEITEM: TREEVIEWPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TVP_GLYPH: TREEVIEWPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TVP_BRANCH: TREEVIEWPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TVP_HOTGLYPH: TREEVIEWPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type TRUESIZESCALINGTYPE = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TSST_NONE: TRUESIZESCALINGTYPE = 0i32; @@ -10565,11 +12628,37 @@ pub const UDS_WRAP: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const UD_MAXVAL: u32 = 32767u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type UPDATEMETADATASTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDUPDATEMETADATA_HIGHLIGHT: UPDATEMETADATASTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDUPDATEMETADATA_NOHIGHLIGHT: UPDATEMETADATASTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const UPDOWN_CLASS: &str = "msctls_updown32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const UPDOWN_CLASSA: &str = "msctls_updown32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const UPDOWN_CLASSW: &str = "msctls_updown32"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type UPHORZSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UPHZS_NORMAL: UPHORZSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UPHZS_HOT: UPHORZSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UPHZS_PRESSED: UPHORZSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UPHZS_DISABLED: UPHORZSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type UPSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UPS_NORMAL: UPSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UPS_HOT: UPSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UPS_PRESSED: UPSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UPS_DISABLED: UPSTATES = 4i32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub struct USAGE_PROPERTIES { @@ -10591,6 +12680,12 @@ impl ::core::clone::Clone for USAGE_PROPERTIES { } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type USERTILEPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UTP_STROKEBACKGROUND: USERTILEPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UTP_HOVERBACKGROUND: USERTILEPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type VALIGN = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VA_TOP: VALIGN = 0i32; @@ -10599,6 +12694,26 @@ pub const VA_CENTER: VALIGN = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VA_BOTTOM: VALIGN = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type VERTSCROLLSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSS_NORMAL: VERTSCROLLSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSS_HOT: VERTSCROLLSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSS_PUSHED: VERTSCROLLSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSS_DISABLED: VERTSCROLLSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type VERTTHUMBSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VTS_NORMAL: VERTTHUMBSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VTS_HOT: VERTTHUMBSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VTS_PUSHED: VERTTHUMBSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VTS_DISABLED: VERTTHUMBSTATES = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VIEW_DETAILS: u32 = 3u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VIEW_LARGEICONS: u32 = 0u32; @@ -10625,28 +12740,146 @@ pub const VIEW_SORTTYPE: u32 = 7u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VIEW_VIEWMENU: u32 = 12u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_AEROWIZARD: &str = "AEROWIZARD"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_AEROWIZARDSTYLE: &str = "AEROWIZARDSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_BUTTON: &str = "BUTTON"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_BUTTONSTYLE: &str = "BUTTONSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_CLOCK: &str = "CLOCK"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_COMBOBOX: &str = "COMBOBOX"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_COMBOBOXSTYLE: &str = "COMBOBOXSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_COMMUNICATIONS: &str = "COMMUNICATIONS"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_COMMUNICATIONSSTYLE: &str = "COMMUNICATIONSSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_CONTROLPANEL: &str = "CONTROLPANEL"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_CONTROLPANELSTYLE: &str = "CONTROLPANELSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_DATEPICKER: &str = "DATEPICKER"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_DATEPICKERSTYLE: &str = "DATEPICKERSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_DRAGDROP: &str = "DRAGDROP"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_DRAGDROPSTYLE: &str = "DRAGDROPSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_EDIT: &str = "EDIT"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_EDITSTYLE: &str = "EDITSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_EMPTYMARKUP: &str = "EMPTYMARKUP"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_EXPLORERBAR: &str = "EXPLORERBAR"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_EXPLORERBARSTYLE: &str = "EXPLORERBARSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_FLYOUT: &str = "FLYOUT"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_FLYOUTSTYLE: &str = "FLYOUTSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_HEADER: &str = "HEADER"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_HEADERSTYLE: &str = "HEADERSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_LINK: &str = "LINK"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_LISTBOX: &str = "LISTBOX"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_LISTBOXSTYLE: &str = "LISTBOXSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_LISTVIEW: &str = "LISTVIEW"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_LISTVIEWSTYLE: &str = "LISTVIEWSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_MENU: &str = "MENU"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_MENUBAND: &str = "MENUBAND"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_MENUSTYLE: &str = "MENUSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_MONTHCAL: &str = "MONTHCAL"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_NAVIGATION: &str = "NAVIGATION"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_PAGE: &str = "PAGE"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_PROGRESS: &str = "PROGRESS"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_PROGRESSSTYLE: &str = "PROGRESSSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_REBAR: &str = "REBAR"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_REBARSTYLE: &str = "REBARSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_SCROLLBAR: &str = "SCROLLBAR"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_SCROLLBARSTYLE: &str = "SCROLLBARSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_SPIN: &str = "SPIN"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_SPINSTYLE: &str = "SPINSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_STARTPANEL: &str = "STARTPANEL"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_STATIC: &str = "STATIC"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_STATUS: &str = "STATUS"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_STATUSSTYLE: &str = "STATUSSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TAB: &str = "TAB"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TABSTYLE: &str = "TABSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_TASKBAND: &str = "TASKBAND"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_TASKBAR: &str = "TASKBAR"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TASKDIALOG: &str = "TASKDIALOG"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TASKDIALOGSTYLE: &str = "TASKDIALOGSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TEXTSELECTIONGRIPPER: &str = "TEXTSELECTIONGRIPPER"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TEXTSTYLE: &str = "TEXTSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TOOLBAR: &str = "TOOLBAR"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TOOLBARSTYLE: &str = "TOOLBARSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TOOLTIP: &str = "TOOLTIP"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TOOLTIPSTYLE: &str = "TOOLTIPSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TRACKBAR: &str = "TRACKBAR"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TRACKBARSTYLE: &str = "TRACKBARSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_TRAYNOTIFY: &str = "TRAYNOTIFY"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TREEVIEW: &str = "TREEVIEW"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TREEVIEWSTYLE: &str = "TREEVIEWSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_USERTILE: &str = "USERTILE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_WINDOW: &str = "WINDOW"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_WINDOWSTYLE: &str = "WINDOWSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type WARNINGSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDWARNING_HIGHLIGHT: WARNINGSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDWARNING_NOHIGHLIGHT: WARNINGSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const WC_BUTTON: &str = "Button"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const WC_BUTTONA: &str = "Button"; @@ -10733,6 +12966,86 @@ pub const WC_TREEVIEWA: &str = "SysTreeView32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const WC_TREEVIEWW: &str = "SysTreeView32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type WINDOWPARTS = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_CAPTION: WINDOWPARTS = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLCAPTION: WINDOWPARTS = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MINCAPTION: WINDOWPARTS = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLMINCAPTION: WINDOWPARTS = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MAXCAPTION: WINDOWPARTS = 5i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLMAXCAPTION: WINDOWPARTS = 6i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_FRAMELEFT: WINDOWPARTS = 7i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_FRAMERIGHT: WINDOWPARTS = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_FRAMEBOTTOM: WINDOWPARTS = 9i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLFRAMELEFT: WINDOWPARTS = 10i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLFRAMERIGHT: WINDOWPARTS = 11i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLFRAMEBOTTOM: WINDOWPARTS = 12i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SYSBUTTON: WINDOWPARTS = 13i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MDISYSBUTTON: WINDOWPARTS = 14i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MINBUTTON: WINDOWPARTS = 15i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MDIMINBUTTON: WINDOWPARTS = 16i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MAXBUTTON: WINDOWPARTS = 17i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_CLOSEBUTTON: WINDOWPARTS = 18i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLCLOSEBUTTON: WINDOWPARTS = 19i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MDICLOSEBUTTON: WINDOWPARTS = 20i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_RESTOREBUTTON: WINDOWPARTS = 21i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MDIRESTOREBUTTON: WINDOWPARTS = 22i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_HELPBUTTON: WINDOWPARTS = 23i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MDIHELPBUTTON: WINDOWPARTS = 24i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_HORZSCROLL: WINDOWPARTS = 25i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_HORZTHUMB: WINDOWPARTS = 26i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_VERTSCROLL: WINDOWPARTS = 27i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_VERTTHUMB: WINDOWPARTS = 28i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_DIALOG: WINDOWPARTS = 29i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_CAPTIONSIZINGTEMPLATE: WINDOWPARTS = 30i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLCAPTIONSIZINGTEMPLATE: WINDOWPARTS = 31i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_FRAMELEFTSIZINGTEMPLATE: WINDOWPARTS = 32i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLFRAMELEFTSIZINGTEMPLATE: WINDOWPARTS = 33i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_FRAMERIGHTSIZINGTEMPLATE: WINDOWPARTS = 34i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLFRAMERIGHTSIZINGTEMPLATE: WINDOWPARTS = 35i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_FRAMEBOTTOMSIZINGTEMPLATE: WINDOWPARTS = 36i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLFRAMEBOTTOMSIZINGTEMPLATE: WINDOWPARTS = 37i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_FRAME: WINDOWPARTS = 38i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_BORDER: WINDOWPARTS = 39i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type WINDOWTHEMEATTRIBUTETYPE = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const WTA_NONCLIENT: WINDOWTHEMEATTRIBUTETYPE = 1i32; @@ -10771,6 +13084,14 @@ pub const WB_RIGHT: WORD_BREAK_ACTION = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const WB_RIGHTBREAK: WORD_BREAK_ACTION = 7u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type WRENCHSTATES = i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTWS_NORMAL: WRENCHSTATES = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTWS_HOT: WRENCHSTATES = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTWS_PRESSED: WRENCHSTATES = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub type WSB_PROP = i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const WSB_PROP_CXHSCROLL: WSB_PROP = 2i32; diff --git a/crates/libs/sys/src/Windows/Win32/UI/Input/Ime/mod.rs b/crates/libs/sys/src/Windows/Win32/UI/Input/Ime/mod.rs index 0611e0e4bb..d56608e136 100644 --- a/crates/libs/sys/src/Windows/Win32/UI/Input/Ime/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/UI/Input/Ime/mod.rs @@ -50,10 +50,10 @@ extern "system" { pub fn ImmEnumRegisterWordW(param0: super::super::TextServices::HKL, param1: REGISTERWORDENUMPROCW, lpszreading: ::windows_sys::core::PCWSTR, param3: u32, lpszregister: ::windows_sys::core::PCWSTR, param5: *mut ::core::ffi::c_void) -> u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`, `\"Win32_Globalization\"`, `\"Win32_UI_TextServices\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Globalization", feature = "Win32_UI_TextServices"))] - pub fn ImmEscapeA(param0: super::super::TextServices::HKL, param1: super::super::super::Globalization::HIMC, param2: u32, param3: *mut ::core::ffi::c_void) -> super::super::super::Foundation::LRESULT; + pub fn ImmEscapeA(param0: super::super::TextServices::HKL, param1: super::super::super::Globalization::HIMC, param2: IME_ESCAPE, param3: *mut ::core::ffi::c_void) -> super::super::super::Foundation::LRESULT; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`, `\"Win32_Globalization\"`, `\"Win32_UI_TextServices\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Globalization", feature = "Win32_UI_TextServices"))] - pub fn ImmEscapeW(param0: super::super::TextServices::HKL, param1: super::super::super::Globalization::HIMC, param2: u32, param3: *mut ::core::ffi::c_void) -> super::super::super::Foundation::LRESULT; + pub fn ImmEscapeW(param0: super::super::TextServices::HKL, param1: super::super::super::Globalization::HIMC, param2: IME_ESCAPE, param3: *mut ::core::ffi::c_void) -> super::super::super::Foundation::LRESULT; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`, `\"Win32_Globalization\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Globalization"))] pub fn ImmGenerateMessage(param0: super::super::super::Globalization::HIMC) -> super::super::super::Foundation::BOOL; @@ -80,10 +80,10 @@ extern "system" { pub fn ImmGetCompositionFontW(param0: super::super::super::Globalization::HIMC, lplf: *mut super::super::super::Graphics::Gdi::LOGFONTW) -> super::super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Globalization\"`*"] #[cfg(feature = "Win32_Globalization")] - pub fn ImmGetCompositionStringA(param0: super::super::super::Globalization::HIMC, param1: u32, lpbuf: *mut ::core::ffi::c_void, dwbuflen: u32) -> i32; + pub fn ImmGetCompositionStringA(param0: super::super::super::Globalization::HIMC, param1: IME_COMPOSITION_STRING, lpbuf: *mut ::core::ffi::c_void, dwbuflen: u32) -> i32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Globalization\"`*"] #[cfg(feature = "Win32_Globalization")] - pub fn ImmGetCompositionStringW(param0: super::super::super::Globalization::HIMC, param1: u32, lpbuf: *mut ::core::ffi::c_void, dwbuflen: u32) -> i32; + pub fn ImmGetCompositionStringW(param0: super::super::super::Globalization::HIMC, param1: IME_COMPOSITION_STRING, lpbuf: *mut ::core::ffi::c_void, dwbuflen: u32) -> i32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`, `\"Win32_Globalization\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Globalization"))] pub fn ImmGetCompositionWindow(param0: super::super::super::Globalization::HIMC, lpcompform: *mut COMPOSITIONFORM) -> super::super::super::Foundation::BOOL; @@ -98,7 +98,7 @@ extern "system" { pub fn ImmGetConversionListW(param0: super::super::TextServices::HKL, param1: super::super::super::Globalization::HIMC, lpsrc: ::windows_sys::core::PCWSTR, lpdst: *mut CANDIDATELIST, dwbuflen: u32, uflag: GET_CONVERSION_LIST_FLAG) -> u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`, `\"Win32_Globalization\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Globalization"))] - pub fn ImmGetConversionStatus(param0: super::super::super::Globalization::HIMC, lpfdwconversion: *mut u32, lpfdwsentence: *mut u32) -> super::super::super::Foundation::BOOL; + pub fn ImmGetConversionStatus(param0: super::super::super::Globalization::HIMC, lpfdwconversion: *mut IME_CONVERSION_MODE, lpfdwsentence: *mut IME_SENTENCE_MODE) -> super::super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn ImmGetDefaultIMEWnd(param0: super::super::super::Foundation::HWND) -> super::super::super::Foundation::HWND; @@ -218,7 +218,7 @@ extern "system" { pub fn ImmSetCompositionWindow(param0: super::super::super::Globalization::HIMC, lpcompform: *const COMPOSITIONFORM) -> super::super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`, `\"Win32_Globalization\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Globalization"))] - pub fn ImmSetConversionStatus(param0: super::super::super::Globalization::HIMC, param1: u32, param2: u32) -> super::super::super::Foundation::BOOL; + pub fn ImmSetConversionStatus(param0: super::super::super::Globalization::HIMC, param1: IME_CONVERSION_MODE, param2: IME_SENTENCE_MODE) -> super::super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`, `\"Win32_UI_TextServices\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_TextServices"))] pub fn ImmSetHotKey(param0: u32, param1: u32, param2: u32, param3: super::super::TextServices::HKL) -> super::super::super::Foundation::BOOL; @@ -233,7 +233,7 @@ extern "system" { pub fn ImmShowSoftKeyboard(param0: super::super::super::Foundation::HWND, param1: i32) -> super::super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn ImmSimulateHotKey(param0: super::super::super::Foundation::HWND, param1: u32) -> super::super::super::Foundation::BOOL; + pub fn ImmSimulateHotKey(param0: super::super::super::Foundation::HWND, param1: IME_HOTKEY_IDENTIFIER) -> super::super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`, `\"Win32_Globalization\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Globalization"))] pub fn ImmUnlockIMC(param0: super::super::super::Globalization::HIMC) -> super::super::super::Foundation::BOOL; @@ -539,30 +539,6 @@ pub const FID_RECONVERT_VERSION: u32 = 268435456u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const GCSEX_CANCELRECONVERT: u32 = 268435456u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_COMPATTR: u32 = 16u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_COMPCLAUSE: u32 = 32u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_COMPREADATTR: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_COMPREADCLAUSE: u32 = 4u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_COMPREADSTR: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_COMPSTR: u32 = 8u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_CURSORPOS: u32 = 128u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_DELTASTART: u32 = 256u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_RESULTCLAUSE: u32 = 4096u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_RESULTREADCLAUSE: u32 = 1024u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_RESULTREADSTR: u32 = 512u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_RESULTSTR: u32 = 2048u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub type GET_CONVERSION_LIST_FLAG = u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const GCL_CONVERSION: GET_CONVERSION_LIST_FLAG = 1u32; @@ -1559,23 +1535,31 @@ pub const IME_CAND_STROKE: u32 = 5u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_CAND_UNKNOWN: u32 = 0u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CHOTKEY_IME_NONIME_TOGGLE: u32 = 16u32; +pub type IME_COMPOSITION_STRING = u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const GCS_COMPREADSTR: IME_COMPOSITION_STRING = 1u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const GCS_COMPREADATTR: IME_COMPOSITION_STRING = 2u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CHOTKEY_SHAPE_TOGGLE: u32 = 17u32; +pub const GCS_COMPREADCLAUSE: IME_COMPOSITION_STRING = 4u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CHOTKEY_SYMBOL_TOGGLE: u32 = 18u32; +pub const GCS_COMPSTR: IME_COMPOSITION_STRING = 8u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CMODE_EUDC: u32 = 512u32; +pub const GCS_COMPATTR: IME_COMPOSITION_STRING = 16u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CMODE_FIXED: u32 = 2048u32; +pub const GCS_COMPCLAUSE: IME_COMPOSITION_STRING = 32u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CMODE_NOCONVERSION: u32 = 256u32; +pub const GCS_CURSORPOS: IME_COMPOSITION_STRING = 128u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CMODE_RESERVED: u32 = 4026531840u32; +pub const GCS_DELTASTART: IME_COMPOSITION_STRING = 256u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CMODE_SOFTKBD: u32 = 128u32; +pub const GCS_RESULTREADSTR: IME_COMPOSITION_STRING = 512u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CMODE_SYMBOL: u32 = 1024u32; +pub const GCS_RESULTREADCLAUSE: IME_COMPOSITION_STRING = 1024u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const GCS_RESULTSTR: IME_COMPOSITION_STRING = 2048u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const GCS_RESULTCLAUSE: IME_COMPOSITION_STRING = 4096u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_CONFIG_GENERAL: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] @@ -1583,61 +1567,117 @@ pub const IME_CONFIG_REGISTERWORD: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_CONFIG_SELECTDICTIONARY: u32 = 3u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_AUTOMATA: u32 = 4105u32; +pub type IME_CONVERSION_MODE = u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_GETHELPFILENAME: u32 = 4107u32; +pub const IME_CMODE_ALPHANUMERIC: IME_CONVERSION_MODE = 0u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_GET_EUDC_DICTIONARY: u32 = 4099u32; +pub const IME_CMODE_NATIVE: IME_CONVERSION_MODE = 1u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_HANJA_MODE: u32 = 4104u32; +pub const IME_CMODE_CHINESE: IME_CONVERSION_MODE = 1u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_IME_NAME: u32 = 4102u32; +pub const IME_CMODE_HANGUL: IME_CONVERSION_MODE = 1u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_MAX_KEY: u32 = 4101u32; +pub const IME_CMODE_JAPANESE: IME_CONVERSION_MODE = 1u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_PRIVATE_FIRST: u32 = 2048u32; +pub const IME_CMODE_KATAKANA: IME_CONVERSION_MODE = 2u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_PRIVATE_HOTKEY: u32 = 4106u32; +pub const IME_CMODE_LANGUAGE: IME_CONVERSION_MODE = 3u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_PRIVATE_LAST: u32 = 4095u32; +pub const IME_CMODE_FULLSHAPE: IME_CONVERSION_MODE = 8u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_QUERY_SUPPORT: u32 = 3u32; +pub const IME_CMODE_ROMAN: IME_CONVERSION_MODE = 16u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_RESERVED_FIRST: u32 = 4u32; +pub const IME_CMODE_CHARCODE: IME_CONVERSION_MODE = 32u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_RESERVED_LAST: u32 = 2047u32; +pub const IME_CMODE_HANJACONVERT: IME_CONVERSION_MODE = 64u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_SEQUENCE_TO_INTERNAL: u32 = 4097u32; +pub const IME_CMODE_NATIVESYMBOL: IME_CONVERSION_MODE = 128u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_SET_EUDC_DICTIONARY: u32 = 4100u32; +pub const IME_CMODE_HANGEUL: IME_CONVERSION_MODE = 1u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_STRING_BUFFER_SIZE: u32 = 80u32; +pub const IME_CMODE_SOFTKBD: IME_CONVERSION_MODE = 128u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_CMODE_NOCONVERSION: IME_CONVERSION_MODE = 256u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_CMODE_EUDC: IME_CONVERSION_MODE = 512u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_CMODE_SYMBOL: IME_CONVERSION_MODE = 1024u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_CMODE_FIXED: IME_CONVERSION_MODE = 2048u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_CMODE_RESERVED: IME_CONVERSION_MODE = 4026531840u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub type IME_ESCAPE = u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_QUERY_SUPPORT: IME_ESCAPE = 3u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_RESERVED_FIRST: IME_ESCAPE = 4u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_RESERVED_LAST: IME_ESCAPE = 2047u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_PRIVATE_FIRST: IME_ESCAPE = 2048u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_SYNC_HOTKEY: u32 = 4103u32; +pub const IME_ESC_PRIVATE_LAST: IME_ESCAPE = 4095u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_SEQUENCE_TO_INTERNAL: IME_ESCAPE = 4097u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_GET_EUDC_DICTIONARY: IME_ESCAPE = 4099u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_SET_EUDC_DICTIONARY: IME_ESCAPE = 4100u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_MAX_KEY: IME_ESCAPE = 4101u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_IME_NAME: IME_ESCAPE = 4102u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_SYNC_HOTKEY: IME_ESCAPE = 4103u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_HANJA_MODE: IME_ESCAPE = 4104u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_AUTOMATA: IME_ESCAPE = 4105u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_PRIVATE_HOTKEY: IME_ESCAPE = 4106u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_GETHELPFILENAME: IME_ESCAPE = 4107u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_STRING_BUFFER_SIZE: u32 = 80u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_HOTKEY_DSWITCH_FIRST: u32 = 256u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_HOTKEY_DSWITCH_LAST: u32 = 287u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_HOTKEY_PRIVATE_FIRST: u32 = 512u32; +pub type IME_HOTKEY_IDENTIFIER = u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_HOTKEY_PRIVATE_LAST: u32 = 543u32; +pub const IME_CHOTKEY_IME_NONIME_TOGGLE: IME_HOTKEY_IDENTIFIER = 16u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ITHOTKEY_PREVIOUS_COMPOSITION: u32 = 513u32; +pub const IME_CHOTKEY_SHAPE_TOGGLE: IME_HOTKEY_IDENTIFIER = 17u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ITHOTKEY_RECONVERTSTRING: u32 = 515u32; +pub const IME_CHOTKEY_SYMBOL_TOGGLE: IME_HOTKEY_IDENTIFIER = 18u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ITHOTKEY_RESEND_RESULTSTR: u32 = 512u32; +pub const IME_JHOTKEY_CLOSE_OPEN: IME_HOTKEY_IDENTIFIER = 48u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ITHOTKEY_UISTYLE_TOGGLE: u32 = 514u32; +pub const IME_KHOTKEY_SHAPE_TOGGLE: IME_HOTKEY_IDENTIFIER = 80u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_JHOTKEY_CLOSE_OPEN: u32 = 48u32; +pub const IME_KHOTKEY_HANJACONVERT: IME_HOTKEY_IDENTIFIER = 81u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_KHOTKEY_ENGLISH: u32 = 82u32; +pub const IME_KHOTKEY_ENGLISH: IME_HOTKEY_IDENTIFIER = 82u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_KHOTKEY_HANJACONVERT: u32 = 81u32; +pub const IME_THOTKEY_IME_NONIME_TOGGLE: IME_HOTKEY_IDENTIFIER = 112u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_KHOTKEY_SHAPE_TOGGLE: u32 = 80u32; +pub const IME_THOTKEY_SHAPE_TOGGLE: IME_HOTKEY_IDENTIFIER = 113u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_THOTKEY_SYMBOL_TOGGLE: IME_HOTKEY_IDENTIFIER = 114u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ITHOTKEY_RESEND_RESULTSTR: IME_HOTKEY_IDENTIFIER = 512u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ITHOTKEY_PREVIOUS_COMPOSITION: IME_HOTKEY_IDENTIFIER = 513u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ITHOTKEY_UISTYLE_TOGGLE: IME_HOTKEY_IDENTIFIER = 514u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ITHOTKEY_RECONVERTSTRING: IME_HOTKEY_IDENTIFIER = 515u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_HOTKEY_PRIVATE_FIRST: u32 = 512u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_HOTKEY_PRIVATE_LAST: u32 = 543u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub type IME_PAD_REQUEST_FLAGS = u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] @@ -1707,30 +1747,26 @@ pub const IME_REGWORD_STYLE_USER_FIRST: u32 = 2147483648u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_REGWORD_STYLE_USER_LAST: u32 = 4294967295u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_SMODE_AUTOMATIC: u32 = 4u32; +pub type IME_SENTENCE_MODE = u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_SMODE_NONE: IME_SENTENCE_MODE = 0u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_SMODE_CONVERSATION: u32 = 16u32; +pub const IME_SMODE_PLAURALCLAUSE: IME_SENTENCE_MODE = 1u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_SMODE_NONE: u32 = 0u32; +pub const IME_SMODE_SINGLECONVERT: IME_SENTENCE_MODE = 2u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_SMODE_PHRASEPREDICT: u32 = 8u32; +pub const IME_SMODE_AUTOMATIC: IME_SENTENCE_MODE = 4u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_SMODE_PLAURALCLAUSE: u32 = 1u32; +pub const IME_SMODE_PHRASEPREDICT: IME_SENTENCE_MODE = 8u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_SMODE_RESERVED: u32 = 61440u32; +pub const IME_SMODE_CONVERSATION: IME_SENTENCE_MODE = 16u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_SMODE_SINGLECONVERT: u32 = 2u32; +pub const IME_SMODE_RESERVED: IME_SENTENCE_MODE = 61440u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_SYSINFO_WINLOGON: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_SYSINFO_WOW16: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_THOTKEY_IME_NONIME_TOGGLE: u32 = 112u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_THOTKEY_SHAPE_TOGGLE: u32 = 113u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_THOTKEY_SYMBOL_TOGGLE: u32 = 114u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_UI_CLASS_NAME_SIZE: u32 = 16u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IMFT_RADIOCHECK: u32 = 1u32; diff --git a/crates/libs/sys/src/Windows/Win32/UI/Input/XboxController/mod.rs b/crates/libs/sys/src/Windows/Win32/UI/Input/XboxController/mod.rs index 8d221f334e..f928b5eda5 100644 --- a/crates/libs/sys/src/Windows/Win32/UI/Input/XboxController/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/UI/Input/XboxController/mod.rs @@ -6,9 +6,9 @@ extern "system" { #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub fn XInputGetAudioDeviceIds(dwuserindex: u32, prenderdeviceid: ::windows_sys::core::PWSTR, prendercount: *mut u32, pcapturedeviceid: ::windows_sys::core::PWSTR, pcapturecount: *mut u32) -> u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] - pub fn XInputGetBatteryInformation(dwuserindex: u32, devtype: u8, pbatteryinformation: *mut XINPUT_BATTERY_INFORMATION) -> u32; + pub fn XInputGetBatteryInformation(dwuserindex: u32, devtype: BATTERY_DEVTYPE, pbatteryinformation: *mut XINPUT_BATTERY_INFORMATION) -> u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] - pub fn XInputGetCapabilities(dwuserindex: u32, dwflags: u32, pcapabilities: *mut XINPUT_CAPABILITIES) -> u32; + pub fn XInputGetCapabilities(dwuserindex: u32, dwflags: XINPUT_FLAG, pcapabilities: *mut XINPUT_CAPABILITIES) -> u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub fn XInputGetKeystroke(dwuserindex: u32, dwreserved: u32, pkeystroke: *mut XINPUT_KEYSTROKE) -> u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] @@ -17,32 +17,38 @@ extern "system" { pub fn XInputSetState(dwuserindex: u32, pvibration: *const XINPUT_VIBRATION) -> u32; } #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_DEVTYPE_GAMEPAD: u32 = 0u32; +pub type BATTERY_DEVTYPE = u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_DEVTYPE_HEADSET: u32 = 1u32; +pub const BATTERY_DEVTYPE_GAMEPAD: BATTERY_DEVTYPE = 0u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_LEVEL_EMPTY: u32 = 0u32; +pub const BATTERY_DEVTYPE_HEADSET: BATTERY_DEVTYPE = 1u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_LEVEL_FULL: u32 = 3u32; +pub type BATTERY_LEVEL = u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_LEVEL_LOW: u32 = 1u32; +pub const BATTERY_LEVEL_EMPTY: BATTERY_LEVEL = 0u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_LEVEL_MEDIUM: u32 = 2u32; +pub const BATTERY_LEVEL_LOW: BATTERY_LEVEL = 1u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_TYPE_ALKALINE: u32 = 2u32; +pub const BATTERY_LEVEL_MEDIUM: BATTERY_LEVEL = 2u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_TYPE_DISCONNECTED: u32 = 0u32; +pub const BATTERY_LEVEL_FULL: BATTERY_LEVEL = 3u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_TYPE_NIMH: u32 = 3u32; +pub type BATTERY_TYPE = u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_TYPE_UNKNOWN: u32 = 255u32; +pub const BATTERY_TYPE_DISCONNECTED: BATTERY_TYPE = 0u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_TYPE_WIRED: u32 = 1u32; +pub const BATTERY_TYPE_WIRED: BATTERY_TYPE = 1u32; +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const BATTERY_TYPE_ALKALINE: BATTERY_TYPE = 2u32; +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const BATTERY_TYPE_NIMH: BATTERY_TYPE = 3u32; +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const BATTERY_TYPE_UNKNOWN: BATTERY_TYPE = 255u32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub struct XINPUT_BATTERY_INFORMATION { - pub BatteryType: u8, - pub BatteryLevel: u8, + pub BatteryType: BATTERY_TYPE, + pub BatteryLevel: BATTERY_LEVEL, } impl ::core::marker::Copy for XINPUT_BATTERY_INFORMATION {} impl ::core::clone::Clone for XINPUT_BATTERY_INFORMATION { @@ -53,9 +59,9 @@ impl ::core::clone::Clone for XINPUT_BATTERY_INFORMATION { #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub struct XINPUT_CAPABILITIES { - pub Type: u8, - pub SubType: u8, - pub Flags: u16, + pub Type: XINPUT_DEVTYPE, + pub SubType: XINPUT_DEVSUBTYPE, + pub Flags: XINPUT_CAPABILITIES_FLAGS, pub Gamepad: XINPUT_GAMEPAD, pub Vibration: XINPUT_VIBRATION, } @@ -66,39 +72,45 @@ impl ::core::clone::Clone for XINPUT_CAPABILITIES { } } #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_CAPS_FFB_SUPPORTED: u32 = 1u32; +pub type XINPUT_CAPABILITIES_FLAGS = u16; +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const XINPUT_CAPS_VOICE_SUPPORTED: XINPUT_CAPABILITIES_FLAGS = 4u16; +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const XINPUT_CAPS_FFB_SUPPORTED: XINPUT_CAPABILITIES_FLAGS = 1u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_CAPS_NO_NAVIGATION: u32 = 16u32; +pub const XINPUT_CAPS_WIRELESS: XINPUT_CAPABILITIES_FLAGS = 2u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_CAPS_PMD_SUPPORTED: u32 = 8u32; +pub const XINPUT_CAPS_PMD_SUPPORTED: XINPUT_CAPABILITIES_FLAGS = 8u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_CAPS_VOICE_SUPPORTED: u32 = 4u32; +pub const XINPUT_CAPS_NO_NAVIGATION: XINPUT_CAPABILITIES_FLAGS = 16u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_CAPS_WIRELESS: u32 = 2u32; +pub type XINPUT_DEVSUBTYPE = u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_ARCADE_PAD: u32 = 19u32; +pub const XINPUT_DEVSUBTYPE_GAMEPAD: XINPUT_DEVSUBTYPE = 1u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_ARCADE_STICK: u32 = 3u32; +pub const XINPUT_DEVSUBTYPE_UNKNOWN: XINPUT_DEVSUBTYPE = 0u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_DANCE_PAD: u32 = 5u32; +pub const XINPUT_DEVSUBTYPE_WHEEL: XINPUT_DEVSUBTYPE = 2u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_DRUM_KIT: u32 = 8u32; +pub const XINPUT_DEVSUBTYPE_ARCADE_STICK: XINPUT_DEVSUBTYPE = 3u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_FLIGHT_STICK: u32 = 4u32; +pub const XINPUT_DEVSUBTYPE_FLIGHT_STICK: XINPUT_DEVSUBTYPE = 4u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_GAMEPAD: u32 = 1u32; +pub const XINPUT_DEVSUBTYPE_DANCE_PAD: XINPUT_DEVSUBTYPE = 5u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_GUITAR: u32 = 6u32; +pub const XINPUT_DEVSUBTYPE_GUITAR: XINPUT_DEVSUBTYPE = 6u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_GUITAR_ALTERNATE: u32 = 7u32; +pub const XINPUT_DEVSUBTYPE_GUITAR_ALTERNATE: XINPUT_DEVSUBTYPE = 7u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_GUITAR_BASS: u32 = 11u32; +pub const XINPUT_DEVSUBTYPE_DRUM_KIT: XINPUT_DEVSUBTYPE = 8u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_UNKNOWN: u32 = 0u32; +pub const XINPUT_DEVSUBTYPE_GUITAR_BASS: XINPUT_DEVSUBTYPE = 11u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_WHEEL: u32 = 2u32; +pub const XINPUT_DEVSUBTYPE_ARCADE_PAD: XINPUT_DEVSUBTYPE = 19u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVTYPE_GAMEPAD: u32 = 1u32; +pub type XINPUT_DEVTYPE = u32; +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const XINPUT_DEVTYPE_GAMEPAD: XINPUT_DEVTYPE = 1u32; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub const XINPUT_DLL: &str = "xinput1_4.dll"; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] @@ -106,11 +118,15 @@ pub const XINPUT_DLL_A: &str = "xinput1_4.dll"; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub const XINPUT_DLL_W: &str = "xinput1_4.dll"; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_FLAG_GAMEPAD: u32 = 1u32; +pub type XINPUT_FLAG = u32; +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const XINPUT_FLAG_ALL: XINPUT_FLAG = 0u32; +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const XINPUT_FLAG_GAMEPAD: XINPUT_FLAG = 1u32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub struct XINPUT_GAMEPAD { - pub wButtons: u16, + pub wButtons: XINPUT_GAMEPAD_BUTTON_FLAGS, pub bLeftTrigger: u8, pub bRightTrigger: u8, pub sThumbLX: i16, @@ -125,45 +141,47 @@ impl ::core::clone::Clone for XINPUT_GAMEPAD { } } #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_A: u32 = 4096u32; +pub type XINPUT_GAMEPAD_BUTTON_FLAGS = u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_B: u32 = 8192u32; +pub const XINPUT_GAMEPAD_DPAD_UP: XINPUT_GAMEPAD_BUTTON_FLAGS = 1u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_BACK: u32 = 32u32; +pub const XINPUT_GAMEPAD_DPAD_DOWN: XINPUT_GAMEPAD_BUTTON_FLAGS = 2u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_DPAD_DOWN: u32 = 2u32; +pub const XINPUT_GAMEPAD_DPAD_LEFT: XINPUT_GAMEPAD_BUTTON_FLAGS = 4u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_DPAD_LEFT: u32 = 4u32; +pub const XINPUT_GAMEPAD_DPAD_RIGHT: XINPUT_GAMEPAD_BUTTON_FLAGS = 8u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_DPAD_RIGHT: u32 = 8u32; +pub const XINPUT_GAMEPAD_START: XINPUT_GAMEPAD_BUTTON_FLAGS = 16u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_DPAD_UP: u32 = 1u32; +pub const XINPUT_GAMEPAD_BACK: XINPUT_GAMEPAD_BUTTON_FLAGS = 32u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_LEFT_SHOULDER: u32 = 256u32; +pub const XINPUT_GAMEPAD_LEFT_THUMB: XINPUT_GAMEPAD_BUTTON_FLAGS = 64u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_LEFT_THUMB: u32 = 64u32; +pub const XINPUT_GAMEPAD_RIGHT_THUMB: XINPUT_GAMEPAD_BUTTON_FLAGS = 128u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_LEFT_THUMB_DEADZONE: u32 = 7849u32; +pub const XINPUT_GAMEPAD_LEFT_SHOULDER: XINPUT_GAMEPAD_BUTTON_FLAGS = 256u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_RIGHT_SHOULDER: u32 = 512u32; +pub const XINPUT_GAMEPAD_RIGHT_SHOULDER: XINPUT_GAMEPAD_BUTTON_FLAGS = 512u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_RIGHT_THUMB: u32 = 128u32; +pub const XINPUT_GAMEPAD_A: XINPUT_GAMEPAD_BUTTON_FLAGS = 4096u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_RIGHT_THUMB_DEADZONE: u32 = 8689u32; +pub const XINPUT_GAMEPAD_B: XINPUT_GAMEPAD_BUTTON_FLAGS = 8192u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_START: u32 = 16u32; +pub const XINPUT_GAMEPAD_X: XINPUT_GAMEPAD_BUTTON_FLAGS = 16384u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_TRIGGER_THRESHOLD: u32 = 30u32; +pub const XINPUT_GAMEPAD_Y: XINPUT_GAMEPAD_BUTTON_FLAGS = 32768u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_X: u32 = 16384u32; +pub const XINPUT_GAMEPAD_LEFT_THUMB_DEADZONE: XINPUT_GAMEPAD_BUTTON_FLAGS = 7849u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_Y: u32 = 32768u32; +pub const XINPUT_GAMEPAD_RIGHT_THUMB_DEADZONE: XINPUT_GAMEPAD_BUTTON_FLAGS = 8689u16; +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const XINPUT_GAMEPAD_TRIGGER_THRESHOLD: XINPUT_GAMEPAD_BUTTON_FLAGS = 30u16; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub struct XINPUT_KEYSTROKE { pub VirtualKey: XINPUT_VIRTUAL_KEY, pub Unicode: u16, - pub Flags: u16, + pub Flags: XINPUT_KEYSTROKE_FLAGS, pub UserIndex: u8, pub HidCode: u8, } @@ -174,11 +192,13 @@ impl ::core::clone::Clone for XINPUT_KEYSTROKE { } } #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_KEYSTROKE_KEYDOWN: u32 = 1u32; +pub type XINPUT_KEYSTROKE_FLAGS = u16; +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const XINPUT_KEYSTROKE_KEYDOWN: XINPUT_KEYSTROKE_FLAGS = 1u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_KEYSTROKE_KEYUP: u32 = 2u32; +pub const XINPUT_KEYSTROKE_KEYUP: XINPUT_KEYSTROKE_FLAGS = 2u16; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_KEYSTROKE_REPEAT: u32 = 4u32; +pub const XINPUT_KEYSTROKE_REPEAT: XINPUT_KEYSTROKE_FLAGS = 4u16; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub struct XINPUT_STATE { diff --git a/crates/libs/sys/src/Windows/Win32/UI/Shell/PropertiesSystem/mod.rs b/crates/libs/sys/src/Windows/Win32/UI/Shell/PropertiesSystem/mod.rs index 448b35582b..6169d3d2ad 100644 --- a/crates/libs/sys/src/Windows/Win32/UI/Shell/PropertiesSystem/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/UI/Shell/PropertiesSystem/mod.rs @@ -222,7 +222,7 @@ extern "system" { pub fn PSPropertyBag_ReadStream(propbag: super::super::super::System::Com::StructuredStorage::IPropertyBag, propname: ::windows_sys::core::PCWSTR, value: *mut super::super::super::System::Com::IStream) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_System_Ole\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole"))] - pub fn PSPropertyBag_ReadType(propbag: super::super::super::System::Com::StructuredStorage::IPropertyBag, propname: ::windows_sys::core::PCWSTR, var: *mut super::super::super::System::Com::VARIANT, r#type: u16) -> ::windows_sys::core::HRESULT; + pub fn PSPropertyBag_ReadType(propbag: super::super::super::System::Com::StructuredStorage::IPropertyBag, propname: ::windows_sys::core::PCWSTR, var: *mut super::super::super::System::Com::VARIANT, r#type: super::super::super::System::Com::VARENUM) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] pub fn PSPropertyBag_ReadULONGLONG(propbag: super::super::super::System::Com::StructuredStorage::IPropertyBag, propname: ::windows_sys::core::PCWSTR, value: *mut u64) -> ::windows_sys::core::HRESULT; @@ -301,7 +301,7 @@ extern "system" { pub fn PifMgr_SetProperties(hprops: super::super::super::Foundation::HANDLE, pszgroup: ::windows_sys::core::PCSTR, lpprops: *const ::core::ffi::c_void, cbprops: i32, flopt: u32) -> i32; #[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage"))] - pub fn PropVariantChangeType(ppropvardest: *mut super::super::super::System::Com::StructuredStorage::PROPVARIANT, propvarsrc: *const super::super::super::System::Com::StructuredStorage::PROPVARIANT, flags: PROPVAR_CHANGE_FLAGS, vt: u16) -> ::windows_sys::core::HRESULT; + pub fn PropVariantChangeType(ppropvardest: *mut super::super::super::System::Com::StructuredStorage::PROPVARIANT, propvarsrc: *const super::super::super::System::Com::StructuredStorage::PROPVARIANT, flags: PROPVAR_CHANGE_FLAGS, vt: super::super::super::System::Com::VARENUM) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage"))] pub fn PropVariantCompareEx(propvar1: *const super::super::super::System::Com::StructuredStorage::PROPVARIANT, propvar2: *const super::super::super::System::Com::StructuredStorage::PROPVARIANT, unit: PROPVAR_COMPARE_UNIT, flags: PROPVAR_COMPARE_FLAGS) -> i32; diff --git a/crates/libs/sys/src/Windows/Win32/UI/Shell/mod.rs b/crates/libs/sys/src/Windows/Win32/UI/Shell/mod.rs index 00e9caf854..acb6d955f7 100644 --- a/crates/libs/sys/src/Windows/Win32/UI/Shell/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/UI/Shell/mod.rs @@ -48,11 +48,13 @@ extern "system" { pub fn ChrCmpIW(w1: u16, w2: u16) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn ColorAdjustLuma(clrrgb: u32, n: i32, fscale: super::super::Foundation::BOOL) -> u32; - #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] - pub fn ColorHLSToRGB(whue: u16, wluminance: u16, wsaturation: u16) -> u32; - #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] - pub fn ColorRGBToHLS(clrrgb: u32, pwhue: *mut u16, pwluminance: *mut u16, pwsaturation: *mut u16); + pub fn ColorAdjustLuma(clrrgb: super::super::Foundation::COLORREF, n: i32, fscale: super::super::Foundation::BOOL) -> super::super::Foundation::COLORREF; + #[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn ColorHLSToRGB(whue: u16, wluminance: u16, wsaturation: u16) -> super::super::Foundation::COLORREF; + #[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub fn ColorRGBToHLS(clrrgb: super::super::Foundation::COLORREF, pwhue: *mut u16, pwluminance: *mut u16, pwsaturation: *mut u16); #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub fn CommandLineToArgvW(lpcmdline: ::windows_sys::core::PCWSTR, pnumargs: *mut i32) -> *mut ::windows_sys::core::PWSTR; #[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] @@ -442,9 +444,9 @@ extern "system" { #[cfg(feature = "Win32_Foundation")] pub fn PathAddExtensionW(pszpath: ::windows_sys::core::PWSTR, pszext: ::windows_sys::core::PCWSTR) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] - pub fn PathAllocCanonicalize(pszpathin: ::windows_sys::core::PCWSTR, dwflags: u32, ppszpathout: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT; + pub fn PathAllocCanonicalize(pszpathin: ::windows_sys::core::PCWSTR, dwflags: PATHCCH_OPTIONS, ppszpathout: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] - pub fn PathAllocCombine(pszpathin: ::windows_sys::core::PCWSTR, pszmore: ::windows_sys::core::PCWSTR, dwflags: u32, ppszpathout: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT; + pub fn PathAllocCombine(pszpathin: ::windows_sys::core::PCWSTR, pszmore: ::windows_sys::core::PCWSTR, dwflags: PATHCCH_OPTIONS, ppszpathout: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn PathAppendA(pszpath: ::windows_sys::core::PSTR, pszmore: ::windows_sys::core::PCSTR) -> super::super::Foundation::BOOL; @@ -470,15 +472,15 @@ extern "system" { #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub fn PathCchAppend(pszpath: ::windows_sys::core::PWSTR, cchpath: usize, pszmore: ::windows_sys::core::PCWSTR) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] - pub fn PathCchAppendEx(pszpath: ::windows_sys::core::PWSTR, cchpath: usize, pszmore: ::windows_sys::core::PCWSTR, dwflags: u32) -> ::windows_sys::core::HRESULT; + pub fn PathCchAppendEx(pszpath: ::windows_sys::core::PWSTR, cchpath: usize, pszmore: ::windows_sys::core::PCWSTR, dwflags: PATHCCH_OPTIONS) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub fn PathCchCanonicalize(pszpathout: ::windows_sys::core::PWSTR, cchpathout: usize, pszpathin: ::windows_sys::core::PCWSTR) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] - pub fn PathCchCanonicalizeEx(pszpathout: ::windows_sys::core::PWSTR, cchpathout: usize, pszpathin: ::windows_sys::core::PCWSTR, dwflags: u32) -> ::windows_sys::core::HRESULT; + pub fn PathCchCanonicalizeEx(pszpathout: ::windows_sys::core::PWSTR, cchpathout: usize, pszpathin: ::windows_sys::core::PCWSTR, dwflags: PATHCCH_OPTIONS) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub fn PathCchCombine(pszpathout: ::windows_sys::core::PWSTR, cchpathout: usize, pszpathin: ::windows_sys::core::PCWSTR, pszmore: ::windows_sys::core::PCWSTR) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] - pub fn PathCchCombineEx(pszpathout: ::windows_sys::core::PWSTR, cchpathout: usize, pszpathin: ::windows_sys::core::PCWSTR, pszmore: ::windows_sys::core::PCWSTR, dwflags: u32) -> ::windows_sys::core::HRESULT; + pub fn PathCchCombineEx(pszpathout: ::windows_sys::core::PWSTR, cchpathout: usize, pszpathin: ::windows_sys::core::PCWSTR, pszmore: ::windows_sys::core::PCWSTR, dwflags: PATHCCH_OPTIONS) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub fn PathCchFindExtension(pszpath: ::windows_sys::core::PCWSTR, cchpath: usize, ppszext: *mut ::windows_sys::core::PWSTR) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"] @@ -853,7 +855,7 @@ extern "system" { pub fn SHAssocEnumHandlersForProtocolByApplication(protocol: ::windows_sys::core::PCWSTR, riid: *const ::windows_sys::core::GUID, enumhandlers: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn SHAutoComplete(hwndedit: super::super::Foundation::HWND, dwflags: u32) -> ::windows_sys::core::HRESULT; + pub fn SHAutoComplete(hwndedit: super::super::Foundation::HWND, dwflags: SHELL_AUTOCOMPLETE_FLAGS) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"] #[cfg(feature = "Win32_UI_Shell_Common")] pub fn SHBindToFolderIDListParent(psfroot: IShellFolder, pidl: *const Common::ITEMIDLIST, riid: *const ::windows_sys::core::GUID, ppv: *mut *mut ::core::ffi::c_void, ppidllast: *mut *mut Common::ITEMIDLIST) -> ::windows_sys::core::HRESULT; @@ -2511,23 +2513,23 @@ pub const ApplicationDestinations: ::windows_sys::core::GUID = ::windows_sys::co pub const ApplicationDocumentLists: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2260648482, data2: 12530, data3: 18400, data4: [159, 37, 96, 209, 28, 215, 92, 40] }; pub const AttachmentServices: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1093000598, data2: 57402, data3: 16643, data4: [143, 112, 224, 89, 125, 128, 59, 156] }; #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"] -#[cfg(feature = "Win32_UI_Shell_Common")] +#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] pub struct BANDINFOSFB { pub dwMask: u32, pub dwStateMask: u32, pub dwState: u32, - pub crBkgnd: u32, - pub crBtnLt: u32, - pub crBtnDk: u32, + pub crBkgnd: super::super::Foundation::COLORREF, + pub crBtnLt: super::super::Foundation::COLORREF, + pub crBtnDk: super::super::Foundation::COLORREF, pub wViewMode: u16, pub wAlign: u16, pub psf: IShellFolder, pub pidl: *mut Common::ITEMIDLIST, } -#[cfg(feature = "Win32_UI_Shell_Common")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] impl ::core::marker::Copy for BANDINFOSFB {} -#[cfg(feature = "Win32_UI_Shell_Common")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] impl ::core::clone::Clone for BANDINFOSFB { fn clone(&self) -> Self { *self @@ -4210,7 +4212,7 @@ pub struct DESKBANDINFO { pub ptActual: super::super::Foundation::POINTL, pub wszTitle: [u16; 256], pub dwModeFlags: u32, - pub crBkgnd: u32, + pub crBkgnd: super::super::Foundation::COLORREF, } #[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for DESKBANDINFO {} @@ -7286,7 +7288,7 @@ pub struct NT_CONSOLE_PROPS { pub uHistoryBufferSize: u32, pub uNumberOfHistoryBuffers: u32, pub bHistoryNoDup: super::super::Foundation::BOOL, - pub ColorTable: [u32; 16], + pub ColorTable: [super::super::Foundation::COLORREF; 16], } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Console"))] impl ::core::marker::Copy for NT_CONSOLE_PROPS {} @@ -7646,23 +7648,23 @@ impl ::core::clone::Clone for PARSEDURLW { #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub const PATHCCH_MAX_CCH: u32 = 32768u32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub type PATHCCH_OPTIONS = i32; +pub type PATHCCH_OPTIONS = u32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_NONE: PATHCCH_OPTIONS = 0i32; +pub const PATHCCH_NONE: PATHCCH_OPTIONS = 0u32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_ALLOW_LONG_PATHS: PATHCCH_OPTIONS = 1i32; +pub const PATHCCH_ALLOW_LONG_PATHS: PATHCCH_OPTIONS = 1u32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_FORCE_ENABLE_LONG_NAME_PROCESS: PATHCCH_OPTIONS = 2i32; +pub const PATHCCH_FORCE_ENABLE_LONG_NAME_PROCESS: PATHCCH_OPTIONS = 2u32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_FORCE_DISABLE_LONG_NAME_PROCESS: PATHCCH_OPTIONS = 4i32; +pub const PATHCCH_FORCE_DISABLE_LONG_NAME_PROCESS: PATHCCH_OPTIONS = 4u32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_DO_NOT_NORMALIZE_SEGMENTS: PATHCCH_OPTIONS = 8i32; +pub const PATHCCH_DO_NOT_NORMALIZE_SEGMENTS: PATHCCH_OPTIONS = 8u32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_ENSURE_IS_EXTENDED_LENGTH_PATH: PATHCCH_OPTIONS = 16i32; +pub const PATHCCH_ENSURE_IS_EXTENDED_LENGTH_PATH: PATHCCH_OPTIONS = 16u32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_ENSURE_TRAILING_SLASH: PATHCCH_OPTIONS = 32i32; +pub const PATHCCH_ENSURE_TRAILING_SLASH: PATHCCH_OPTIONS = 32u32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_CANONICALIZE_SLASHES: PATHCCH_OPTIONS = 64i32; +pub const PATHCCH_CANONICALIZE_SLASHES: PATHCCH_OPTIONS = 64u32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub type PCS_RET = u32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] @@ -8951,30 +8953,6 @@ impl ::core::clone::Clone for SFV_SETITEMPOS { } } #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_AUTOAPPEND_FORCE_OFF: u32 = 2147483648u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_AUTOAPPEND_FORCE_ON: u32 = 1073741824u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_AUTOSUGGEST_FORCE_OFF: u32 = 536870912u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_AUTOSUGGEST_FORCE_ON: u32 = 268435456u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_DEFAULT: u32 = 0u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_FILESYSTEM: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_FILESYS_DIRS: u32 = 32u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_FILESYS_ONLY: u32 = 16u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_URLHISTORY: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_URLMRU: u32 = 4u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_USETAB: u32 = 8u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_VIRTUAL_NAMESPACE: u32 = 64u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub type SHARD = i32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub const SHARD_PIDL: SHARD = 1i32; @@ -9167,20 +9145,20 @@ impl ::core::clone::Clone for SHCOLUMNDATA { } } #[repr(C, packed(1))] -#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"] -#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] +#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"] +#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))] pub struct SHCOLUMNINFO { pub scid: PropertiesSystem::PROPERTYKEY, - pub vt: u16, + pub vt: super::super::System::Com::VARENUM, pub fmt: u32, pub cChars: u32, pub csFlags: u32, pub wszTitle: [u16; 80], pub wszDescription: [u16; 128], } -#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] +#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))] impl ::core::marker::Copy for SHCOLUMNINFO {} -#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] +#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))] impl ::core::clone::Clone for SHCOLUMNINFO { fn clone(&self) -> Self { *self @@ -9383,7 +9361,7 @@ pub struct SHDRAGIMAGE { pub sizeDragImage: super::super::Foundation::SIZE, pub ptOffset: super::super::Foundation::POINT, pub hbmpDragImage: super::super::Graphics::Gdi::HBITMAP, - pub crColorKey: u32, + pub crColorKey: super::super::Foundation::COLORREF, } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl ::core::marker::Copy for SHDRAGIMAGE {} @@ -9651,6 +9629,34 @@ impl ::core::clone::Clone for SHELLSTATEW { } } #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub type SHELL_AUTOCOMPLETE_FLAGS = u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_DEFAULT: SHELL_AUTOCOMPLETE_FLAGS = 0u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_FILESYSTEM: SHELL_AUTOCOMPLETE_FLAGS = 1u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_URLALL: SHELL_AUTOCOMPLETE_FLAGS = 6u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_URLHISTORY: SHELL_AUTOCOMPLETE_FLAGS = 2u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_URLMRU: SHELL_AUTOCOMPLETE_FLAGS = 4u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_USETAB: SHELL_AUTOCOMPLETE_FLAGS = 8u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_FILESYS_ONLY: SHELL_AUTOCOMPLETE_FLAGS = 16u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_FILESYS_DIRS: SHELL_AUTOCOMPLETE_FLAGS = 32u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_VIRTUAL_NAMESPACE: SHELL_AUTOCOMPLETE_FLAGS = 64u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_AUTOSUGGEST_FORCE_ON: SHELL_AUTOCOMPLETE_FLAGS = 268435456u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_AUTOSUGGEST_FORCE_OFF: SHELL_AUTOCOMPLETE_FLAGS = 536870912u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_AUTOAPPEND_FORCE_ON: SHELL_AUTOCOMPLETE_FLAGS = 1073741824u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_AUTOAPPEND_FORCE_OFF: SHELL_AUTOCOMPLETE_FLAGS = 2147483648u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub const SHELL_E_WRONG_BITDEPTH: ::windows_sys::core::HRESULT = -2144927486i32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] @@ -9974,6 +9980,18 @@ pub const SHGDFIL_NETRESOURCE: SHGDFIL_FORMAT = 2i32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub const SHGDFIL_DESCRIPTIONID: SHGDFIL_FORMAT = 3i32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub type SHGDNF = u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHGDN_NORMAL: SHGDNF = 0u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHGDN_INFOLDER: SHGDNF = 1u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHGDN_FOREDITING: SHGDNF = 4096u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHGDN_FORADDRESSBAR: SHGDNF = 16384u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHGDN_FORPARSING: SHGDNF = 32768u32; +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub type SHGFI_FLAGS = i32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub const SHGFI_ADDOVERLAYS: SHGFI_FLAGS = 32i32; @@ -12824,18 +12842,6 @@ pub const SHCONTF_ENABLE_ASYNC: _SHCONTF = 32768i32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub const SHCONTF_INCLUDESUPERHIDDEN: _SHCONTF = 65536i32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub type _SHGDNF = i32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHGDN_NORMAL: _SHGDNF = 0i32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHGDN_INFOLDER: _SHGDNF = 1i32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHGDN_FOREDITING: _SHGDNF = 4096i32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHGDN_FORADDRESSBAR: _SHGDNF = 16384i32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHGDN_FORPARSING: _SHGDNF = 32768i32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub type _SICHINTF = i32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub const SICHINT_DISPLAY: _SICHINTF = 0i32; diff --git a/crates/libs/sys/src/Windows/Win32/UI/TabletPC/mod.rs b/crates/libs/sys/src/Windows/Win32/UI/TabletPC/mod.rs index 8f1952d999..49e8e0e192 100644 --- a/crates/libs/sys/src/Windows/Win32/UI/TabletPC/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/UI/TabletPC/mod.rs @@ -1714,15 +1714,18 @@ pub const INKEDIT_CLASS: &str = "INKEDIT"; #[doc = "*Required features: `\"Win32_UI_TabletPC\"`*"] pub const INKEDIT_CLASSW: &str = "INKEDIT"; #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_TabletPC\"`*"] +#[doc = "*Required features: `\"Win32_UI_TabletPC\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct INKMETRIC { pub iHeight: i32, pub iFontAscent: i32, pub iFontDescent: i32, pub dwFlags: u32, - pub color: u32, + pub color: super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for INKMETRIC {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for INKMETRIC { fn clone(&self) -> Self { *self diff --git a/crates/libs/sys/src/Windows/Win32/UI/TextServices/mod.rs b/crates/libs/sys/src/Windows/Win32/UI/TextServices/mod.rs index 1489e90548..78d2b6cf17 100644 --- a/crates/libs/sys/src/Windows/Win32/UI/TextServices/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/UI/TextServices/mod.rs @@ -529,24 +529,30 @@ pub const TF_ATTR_FIXEDCONVERTED: TF_DA_ATTR_INFO = 5i32; #[doc = "*Required features: `\"Win32_UI_TextServices\"`*"] pub const TF_ATTR_OTHER: TF_DA_ATTR_INFO = -1i32; #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_TextServices\"`*"] +#[doc = "*Required features: `\"Win32_UI_TextServices\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct TF_DA_COLOR { pub r#type: TF_DA_COLORTYPE, pub Anonymous: TF_DA_COLOR_0, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for TF_DA_COLOR {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for TF_DA_COLOR { fn clone(&self) -> Self { *self } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_TextServices\"`*"] +#[doc = "*Required features: `\"Win32_UI_TextServices\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub union TF_DA_COLOR_0 { pub nIndex: i32, - pub cr: u32, + pub cr: super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for TF_DA_COLOR_0 {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for TF_DA_COLOR_0 { fn clone(&self) -> Self { *self diff --git a/crates/libs/sys/src/Windows/Win32/UI/WindowsAndMessaging/mod.rs b/crates/libs/sys/src/Windows/Win32/UI/WindowsAndMessaging/mod.rs index 1e7f455750..0d93700099 100644 --- a/crates/libs/sys/src/Windows/Win32/UI/WindowsAndMessaging/mod.rs +++ b/crates/libs/sys/src/Windows/Win32/UI/WindowsAndMessaging/mod.rs @@ -427,7 +427,7 @@ extern "system" { pub fn GetLastActivePopup(hwnd: super::super::Foundation::HWND) -> super::super::Foundation::HWND; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn GetLayeredWindowAttributes(hwnd: super::super::Foundation::HWND, pcrkey: *mut u32, pbalpha: *mut u8, pdwflags: *mut LAYERED_WINDOW_ATTRIBUTES_FLAGS) -> super::super::Foundation::BOOL; + pub fn GetLayeredWindowAttributes(hwnd: super::super::Foundation::HWND, pcrkey: *mut super::super::Foundation::COLORREF, pbalpha: *mut u8, pdwflags: *mut LAYERED_WINDOW_ATTRIBUTES_FLAGS) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn GetMenu(hwnd: super::super::Foundation::HWND) -> HMENU; @@ -988,7 +988,7 @@ extern "system" { pub fn SetForegroundWindow(hwnd: super::super::Foundation::HWND) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn SetLayeredWindowAttributes(hwnd: super::super::Foundation::HWND, crkey: u32, balpha: u8, dwflags: LAYERED_WINDOW_ATTRIBUTES_FLAGS) -> super::super::Foundation::BOOL; + pub fn SetLayeredWindowAttributes(hwnd: super::super::Foundation::HWND, crkey: super::super::Foundation::COLORREF, balpha: u8, dwflags: LAYERED_WINDOW_ATTRIBUTES_FLAGS) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn SetMenu(hwnd: super::super::Foundation::HWND, hmenu: HMENU) -> super::super::Foundation::BOOL; @@ -1033,7 +1033,7 @@ extern "system" { pub fn SetPropW(hwnd: super::super::Foundation::HWND, lpstring: ::windows_sys::core::PCWSTR, hdata: super::super::Foundation::HANDLE) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn SetSysColors(celements: i32, lpaelements: *const i32, lpargbvalues: *const u32) -> super::super::Foundation::BOOL; + pub fn SetSysColors(celements: i32, lpaelements: *const i32, lpargbvalues: *const super::super::Foundation::COLORREF) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn SetSystemCursor(hcur: HCURSOR, id: SYSTEM_CURSOR_ID) -> super::super::Foundation::BOOL; @@ -1146,7 +1146,7 @@ extern "system" { pub fn UnregisterClassW(lpclassname: ::windows_sys::core::PCWSTR, hinstance: super::super::Foundation::HINSTANCE) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] - pub fn UpdateLayeredWindow(hwnd: super::super::Foundation::HWND, hdcdst: super::super::Graphics::Gdi::HDC, pptdst: *const super::super::Foundation::POINT, psize: *const super::super::Foundation::SIZE, hdcsrc: super::super::Graphics::Gdi::HDC, pptsrc: *const super::super::Foundation::POINT, crkey: u32, pblend: *const super::super::Graphics::Gdi::BLENDFUNCTION, dwflags: UPDATE_LAYERED_WINDOW_FLAGS) -> super::super::Foundation::BOOL; + pub fn UpdateLayeredWindow(hwnd: super::super::Foundation::HWND, hdcdst: super::super::Graphics::Gdi::HDC, pptdst: *const super::super::Foundation::POINT, psize: *const super::super::Foundation::SIZE, hdcsrc: super::super::Graphics::Gdi::HDC, pptsrc: *const super::super::Foundation::POINT, crkey: super::super::Foundation::COLORREF, pblend: *const super::super::Graphics::Gdi::BLENDFUNCTION, dwflags: UPDATE_LAYERED_WINDOW_FLAGS) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub fn UpdateLayeredWindowIndirect(hwnd: super::super::Foundation::HWND, pulwinfo: *const UPDATELAYEREDWINDOWINFO) -> super::super::Foundation::BOOL; @@ -1598,10 +1598,6 @@ impl ::core::clone::Clone for CLIENTCREATESTRUCT { } } #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] -pub const COLOR_BTNHIGHLIGHT: u32 = 20u32; -#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] -pub const COLOR_BTNHILIGHT: u32 = 20u32; -#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] pub const CONSOLE_APPLICATION_16BIT: u32 = 0u32; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] pub const CONSOLE_CARET_SELECTION: u32 = 1u32; @@ -3831,7 +3827,7 @@ impl ::core::clone::Clone for MOUSEHOOKSTRUCT { #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct MOUSEHOOKSTRUCTEX { - pub __AnonymousBase_winuser_L1166_C46: MOUSEHOOKSTRUCT, + pub Base: MOUSEHOOKSTRUCT, pub mouseData: MOUSEHOOKSTRUCTEX_MOUSE_DATA, } #[cfg(feature = "Win32_Foundation")] @@ -4842,8 +4838,6 @@ pub const SWP_NOSIZE: SET_WINDOW_POS_FLAGS = 1u32; pub const SWP_NOZORDER: SET_WINDOW_POS_FLAGS = 4u32; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] pub const SWP_SHOWWINDOW: SET_WINDOW_POS_FLAGS = 64u32; -#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] -pub const SWP__NOOWNERZORDER: SET_WINDOW_POS_FLAGS = 512u32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -5886,9 +5880,9 @@ pub const COLOR_BACKGROUND: SYS_COLOR_INDEX = 1u32; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] pub const COLOR_BTNFACE: SYS_COLOR_INDEX = 15u32; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] -pub const _COLOR_BTNHIGHLIGHT: SYS_COLOR_INDEX = 20u32; +pub const COLOR_BTNHIGHLIGHT: SYS_COLOR_INDEX = 20u32; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] -pub const _COLOR_BTNHILIGHT: SYS_COLOR_INDEX = 20u32; +pub const COLOR_BTNHILIGHT: SYS_COLOR_INDEX = 20u32; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] pub const COLOR_BTNSHADOW: SYS_COLOR_INDEX = 16u32; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] @@ -6130,7 +6124,7 @@ pub struct UPDATELAYEREDWINDOWINFO { pub psize: *const super::super::Foundation::SIZE, pub hdcSrc: super::super::Graphics::Gdi::HDC, pub pptSrc: *const super::super::Foundation::POINT, - pub crKey: u32, + pub crKey: super::super::Foundation::COLORREF, pub pblend: *const super::super::Graphics::Gdi::BLENDFUNCTION, pub dwFlags: UPDATE_LAYERED_WINDOW_FLAGS, pub prcDirty: *const super::super::Foundation::RECT, diff --git a/crates/libs/windows/src/Windows/Win32/AI/MachineLearning/WinML/mod.rs b/crates/libs/windows/src/Windows/Win32/AI/MachineLearning/WinML/mod.rs index db987b0c5a..674e5ddea1 100644 --- a/crates/libs/windows/src/Windows/Win32/AI/MachineLearning/WinML/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/AI/MachineLearning/WinML/mod.rs @@ -1191,7 +1191,7 @@ pub unsafe fn MLCreateOperatorRegistry() -> ::windows::core::Result CONFIGRET { +pub unsafe fn CM_Create_DevNodeA<'a, P0>(pdndevinst: &mut u32, pdeviceid: P0, dnparent: u32, ulflags: u32) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Create_DevNodeA(pdndevinst: *mut u32, pdeviceid: *const i8, dnparent: u32, ulflags: u32) -> CONFIGRET; + fn CM_Create_DevNodeA(pdndevinst: *mut u32, pdeviceid: ::windows::core::PCSTR, dnparent: u32, ulflags: u32) -> CONFIGRET; } - CM_Create_DevNodeA(::core::mem::transmute(pdndevinst), ::core::mem::transmute(pdeviceid), dnparent, ulflags) + CM_Create_DevNodeA(::core::mem::transmute(pdndevinst), pdeviceid.into(), dnparent, ulflags) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Create_DevNodeW(pdndevinst: &mut u32, pdeviceid: &u16, dnparent: u32, ulflags: u32) -> CONFIGRET { +pub unsafe fn CM_Create_DevNodeW<'a, P0>(pdndevinst: &mut u32, pdeviceid: P0, dnparent: u32, ulflags: u32) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Create_DevNodeW(pdndevinst: *mut u32, pdeviceid: *const u16, dnparent: u32, ulflags: u32) -> CONFIGRET; + fn CM_Create_DevNodeW(pdndevinst: *mut u32, pdeviceid: ::windows::core::PCWSTR, dnparent: u32, ulflags: u32) -> CONFIGRET; } - CM_Create_DevNodeW(::core::mem::transmute(pdndevinst), ::core::mem::transmute(pdeviceid), dnparent, ulflags) + CM_Create_DevNodeW(::core::mem::transmute(pdndevinst), pdeviceid.into(), dnparent, ulflags) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Create_DevNode_ExA(pdndevinst: &mut u32, pdeviceid: &i8, dnparent: u32, ulflags: u32, hmachine: isize) -> CONFIGRET { +pub unsafe fn CM_Create_DevNode_ExA<'a, P0>(pdndevinst: &mut u32, pdeviceid: P0, dnparent: u32, ulflags: u32, hmachine: isize) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Create_DevNode_ExA(pdndevinst: *mut u32, pdeviceid: *const i8, dnparent: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + fn CM_Create_DevNode_ExA(pdndevinst: *mut u32, pdeviceid: ::windows::core::PCSTR, dnparent: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; } - CM_Create_DevNode_ExA(::core::mem::transmute(pdndevinst), ::core::mem::transmute(pdeviceid), dnparent, ulflags, hmachine) + CM_Create_DevNode_ExA(::core::mem::transmute(pdndevinst), pdeviceid.into(), dnparent, ulflags, hmachine) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Create_DevNode_ExW(pdndevinst: &mut u32, pdeviceid: &u16, dnparent: u32, ulflags: u32, hmachine: isize) -> CONFIGRET { +pub unsafe fn CM_Create_DevNode_ExW<'a, P0>(pdndevinst: &mut u32, pdeviceid: P0, dnparent: u32, ulflags: u32, hmachine: isize) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Create_DevNode_ExW(pdndevinst: *mut u32, pdeviceid: *const u16, dnparent: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + fn CM_Create_DevNode_ExW(pdndevinst: *mut u32, pdeviceid: ::windows::core::PCWSTR, dnparent: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; } - CM_Create_DevNode_ExW(::core::mem::transmute(pdndevinst), ::core::mem::transmute(pdeviceid), dnparent, ulflags, hmachine) + CM_Create_DevNode_ExW(::core::mem::transmute(pdndevinst), pdeviceid.into(), dnparent, ulflags, hmachine) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] @@ -1525,75 +1537,99 @@ where } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Get_Device_Interface_ListA(interfaceclassguid: &::windows::core::GUID, pdeviceid: ::core::option::Option<&i8>, buffer: &mut [u8], ulflags: u32) -> CONFIGRET { +pub unsafe fn CM_Get_Device_Interface_ListA<'a, P0>(interfaceclassguid: &::windows::core::GUID, pdeviceid: P0, buffer: &mut [u8], ulflags: u32) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Get_Device_Interface_ListA(interfaceclassguid: *const ::windows::core::GUID, pdeviceid: *const i8, buffer: ::windows::core::PSTR, bufferlen: u32, ulflags: u32) -> CONFIGRET; + fn CM_Get_Device_Interface_ListA(interfaceclassguid: *const ::windows::core::GUID, pdeviceid: ::windows::core::PCSTR, buffer: ::windows::core::PSTR, bufferlen: u32, ulflags: u32) -> CONFIGRET; } - CM_Get_Device_Interface_ListA(::core::mem::transmute(interfaceclassguid), ::core::mem::transmute(pdeviceid), ::core::mem::transmute(buffer.as_ptr()), buffer.len() as _, ulflags) + CM_Get_Device_Interface_ListA(::core::mem::transmute(interfaceclassguid), pdeviceid.into(), ::core::mem::transmute(buffer.as_ptr()), buffer.len() as _, ulflags) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Get_Device_Interface_ListW(interfaceclassguid: &::windows::core::GUID, pdeviceid: ::core::option::Option<&u16>, buffer: &mut [u16], ulflags: u32) -> CONFIGRET { +pub unsafe fn CM_Get_Device_Interface_ListW<'a, P0>(interfaceclassguid: &::windows::core::GUID, pdeviceid: P0, buffer: &mut [u16], ulflags: u32) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Get_Device_Interface_ListW(interfaceclassguid: *const ::windows::core::GUID, pdeviceid: *const u16, buffer: ::windows::core::PWSTR, bufferlen: u32, ulflags: u32) -> CONFIGRET; + fn CM_Get_Device_Interface_ListW(interfaceclassguid: *const ::windows::core::GUID, pdeviceid: ::windows::core::PCWSTR, buffer: ::windows::core::PWSTR, bufferlen: u32, ulflags: u32) -> CONFIGRET; } - CM_Get_Device_Interface_ListW(::core::mem::transmute(interfaceclassguid), ::core::mem::transmute(pdeviceid), ::core::mem::transmute(buffer.as_ptr()), buffer.len() as _, ulflags) + CM_Get_Device_Interface_ListW(::core::mem::transmute(interfaceclassguid), pdeviceid.into(), ::core::mem::transmute(buffer.as_ptr()), buffer.len() as _, ulflags) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Get_Device_Interface_List_ExA(interfaceclassguid: &::windows::core::GUID, pdeviceid: ::core::option::Option<&i8>, buffer: &mut [u8], ulflags: u32, hmachine: isize) -> CONFIGRET { +pub unsafe fn CM_Get_Device_Interface_List_ExA<'a, P0>(interfaceclassguid: &::windows::core::GUID, pdeviceid: P0, buffer: &mut [u8], ulflags: u32, hmachine: isize) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Get_Device_Interface_List_ExA(interfaceclassguid: *const ::windows::core::GUID, pdeviceid: *const i8, buffer: ::windows::core::PSTR, bufferlen: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + fn CM_Get_Device_Interface_List_ExA(interfaceclassguid: *const ::windows::core::GUID, pdeviceid: ::windows::core::PCSTR, buffer: ::windows::core::PSTR, bufferlen: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; } - CM_Get_Device_Interface_List_ExA(::core::mem::transmute(interfaceclassguid), ::core::mem::transmute(pdeviceid), ::core::mem::transmute(buffer.as_ptr()), buffer.len() as _, ulflags, hmachine) + CM_Get_Device_Interface_List_ExA(::core::mem::transmute(interfaceclassguid), pdeviceid.into(), ::core::mem::transmute(buffer.as_ptr()), buffer.len() as _, ulflags, hmachine) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Get_Device_Interface_List_ExW(interfaceclassguid: &::windows::core::GUID, pdeviceid: ::core::option::Option<&u16>, buffer: &mut [u16], ulflags: u32, hmachine: isize) -> CONFIGRET { +pub unsafe fn CM_Get_Device_Interface_List_ExW<'a, P0>(interfaceclassguid: &::windows::core::GUID, pdeviceid: P0, buffer: &mut [u16], ulflags: u32, hmachine: isize) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Get_Device_Interface_List_ExW(interfaceclassguid: *const ::windows::core::GUID, pdeviceid: *const u16, buffer: ::windows::core::PWSTR, bufferlen: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + fn CM_Get_Device_Interface_List_ExW(interfaceclassguid: *const ::windows::core::GUID, pdeviceid: ::windows::core::PCWSTR, buffer: ::windows::core::PWSTR, bufferlen: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; } - CM_Get_Device_Interface_List_ExW(::core::mem::transmute(interfaceclassguid), ::core::mem::transmute(pdeviceid), ::core::mem::transmute(buffer.as_ptr()), buffer.len() as _, ulflags, hmachine) + CM_Get_Device_Interface_List_ExW(::core::mem::transmute(interfaceclassguid), pdeviceid.into(), ::core::mem::transmute(buffer.as_ptr()), buffer.len() as _, ulflags, hmachine) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Get_Device_Interface_List_SizeA(pullen: &mut u32, interfaceclassguid: &::windows::core::GUID, pdeviceid: ::core::option::Option<&i8>, ulflags: u32) -> CONFIGRET { +pub unsafe fn CM_Get_Device_Interface_List_SizeA<'a, P0>(pullen: &mut u32, interfaceclassguid: &::windows::core::GUID, pdeviceid: P0, ulflags: u32) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Get_Device_Interface_List_SizeA(pullen: *mut u32, interfaceclassguid: *const ::windows::core::GUID, pdeviceid: *const i8, ulflags: u32) -> CONFIGRET; + fn CM_Get_Device_Interface_List_SizeA(pullen: *mut u32, interfaceclassguid: *const ::windows::core::GUID, pdeviceid: ::windows::core::PCSTR, ulflags: u32) -> CONFIGRET; } - CM_Get_Device_Interface_List_SizeA(::core::mem::transmute(pullen), ::core::mem::transmute(interfaceclassguid), ::core::mem::transmute(pdeviceid), ulflags) + CM_Get_Device_Interface_List_SizeA(::core::mem::transmute(pullen), ::core::mem::transmute(interfaceclassguid), pdeviceid.into(), ulflags) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Get_Device_Interface_List_SizeW(pullen: &mut u32, interfaceclassguid: &::windows::core::GUID, pdeviceid: ::core::option::Option<&u16>, ulflags: u32) -> CONFIGRET { +pub unsafe fn CM_Get_Device_Interface_List_SizeW<'a, P0>(pullen: &mut u32, interfaceclassguid: &::windows::core::GUID, pdeviceid: P0, ulflags: u32) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Get_Device_Interface_List_SizeW(pullen: *mut u32, interfaceclassguid: *const ::windows::core::GUID, pdeviceid: *const u16, ulflags: u32) -> CONFIGRET; + fn CM_Get_Device_Interface_List_SizeW(pullen: *mut u32, interfaceclassguid: *const ::windows::core::GUID, pdeviceid: ::windows::core::PCWSTR, ulflags: u32) -> CONFIGRET; } - CM_Get_Device_Interface_List_SizeW(::core::mem::transmute(pullen), ::core::mem::transmute(interfaceclassguid), ::core::mem::transmute(pdeviceid), ulflags) + CM_Get_Device_Interface_List_SizeW(::core::mem::transmute(pullen), ::core::mem::transmute(interfaceclassguid), pdeviceid.into(), ulflags) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Get_Device_Interface_List_Size_ExA(pullen: &mut u32, interfaceclassguid: &::windows::core::GUID, pdeviceid: ::core::option::Option<&i8>, ulflags: u32, hmachine: isize) -> CONFIGRET { +pub unsafe fn CM_Get_Device_Interface_List_Size_ExA<'a, P0>(pullen: &mut u32, interfaceclassguid: &::windows::core::GUID, pdeviceid: P0, ulflags: u32, hmachine: isize) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Get_Device_Interface_List_Size_ExA(pullen: *mut u32, interfaceclassguid: *const ::windows::core::GUID, pdeviceid: *const i8, ulflags: u32, hmachine: isize) -> CONFIGRET; + fn CM_Get_Device_Interface_List_Size_ExA(pullen: *mut u32, interfaceclassguid: *const ::windows::core::GUID, pdeviceid: ::windows::core::PCSTR, ulflags: u32, hmachine: isize) -> CONFIGRET; } - CM_Get_Device_Interface_List_Size_ExA(::core::mem::transmute(pullen), ::core::mem::transmute(interfaceclassguid), ::core::mem::transmute(pdeviceid), ulflags, hmachine) + CM_Get_Device_Interface_List_Size_ExA(::core::mem::transmute(pullen), ::core::mem::transmute(interfaceclassguid), pdeviceid.into(), ulflags, hmachine) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Get_Device_Interface_List_Size_ExW(pullen: &mut u32, interfaceclassguid: &::windows::core::GUID, pdeviceid: ::core::option::Option<&u16>, ulflags: u32, hmachine: isize) -> CONFIGRET { +pub unsafe fn CM_Get_Device_Interface_List_Size_ExW<'a, P0>(pullen: &mut u32, interfaceclassguid: &::windows::core::GUID, pdeviceid: P0, ulflags: u32, hmachine: isize) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Get_Device_Interface_List_Size_ExW(pullen: *mut u32, interfaceclassguid: *const ::windows::core::GUID, pdeviceid: *const u16, ulflags: u32, hmachine: isize) -> CONFIGRET; + fn CM_Get_Device_Interface_List_Size_ExW(pullen: *mut u32, interfaceclassguid: *const ::windows::core::GUID, pdeviceid: ::windows::core::PCWSTR, ulflags: u32, hmachine: isize) -> CONFIGRET; } - CM_Get_Device_Interface_List_Size_ExW(::core::mem::transmute(pullen), ::core::mem::transmute(interfaceclassguid), ::core::mem::transmute(pdeviceid), ulflags, hmachine) + CM_Get_Device_Interface_List_Size_ExW(::core::mem::transmute(pullen), ::core::mem::transmute(interfaceclassguid), pdeviceid.into(), ulflags, hmachine) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`, `\"Win32_Devices_Properties\"`*"] #[cfg(feature = "Win32_Devices_Properties")] @@ -1685,39 +1721,51 @@ pub unsafe fn CM_Get_Global_State_Ex(pulstate: &mut u32, ulflags: u32, hmachine: } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Get_HW_Prof_FlagsA(pdeviceid: &i8, ulhardwareprofile: u32, pulvalue: &mut u32, ulflags: u32) -> CONFIGRET { +pub unsafe fn CM_Get_HW_Prof_FlagsA<'a, P0>(pdeviceid: P0, ulhardwareprofile: u32, pulvalue: &mut u32, ulflags: u32) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Get_HW_Prof_FlagsA(pdeviceid: *const i8, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32) -> CONFIGRET; + fn CM_Get_HW_Prof_FlagsA(pdeviceid: ::windows::core::PCSTR, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32) -> CONFIGRET; } - CM_Get_HW_Prof_FlagsA(::core::mem::transmute(pdeviceid), ulhardwareprofile, ::core::mem::transmute(pulvalue), ulflags) + CM_Get_HW_Prof_FlagsA(pdeviceid.into(), ulhardwareprofile, ::core::mem::transmute(pulvalue), ulflags) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Get_HW_Prof_FlagsW(pdeviceid: &u16, ulhardwareprofile: u32, pulvalue: &mut u32, ulflags: u32) -> CONFIGRET { +pub unsafe fn CM_Get_HW_Prof_FlagsW<'a, P0>(pdeviceid: P0, ulhardwareprofile: u32, pulvalue: &mut u32, ulflags: u32) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Get_HW_Prof_FlagsW(pdeviceid: *const u16, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32) -> CONFIGRET; + fn CM_Get_HW_Prof_FlagsW(pdeviceid: ::windows::core::PCWSTR, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32) -> CONFIGRET; } - CM_Get_HW_Prof_FlagsW(::core::mem::transmute(pdeviceid), ulhardwareprofile, ::core::mem::transmute(pulvalue), ulflags) + CM_Get_HW_Prof_FlagsW(pdeviceid.into(), ulhardwareprofile, ::core::mem::transmute(pulvalue), ulflags) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Get_HW_Prof_Flags_ExA(pdeviceid: &i8, ulhardwareprofile: u32, pulvalue: &mut u32, ulflags: u32, hmachine: isize) -> CONFIGRET { +pub unsafe fn CM_Get_HW_Prof_Flags_ExA<'a, P0>(pdeviceid: P0, ulhardwareprofile: u32, pulvalue: &mut u32, ulflags: u32, hmachine: isize) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Get_HW_Prof_Flags_ExA(pdeviceid: *const i8, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + fn CM_Get_HW_Prof_Flags_ExA(pdeviceid: ::windows::core::PCSTR, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32, hmachine: isize) -> CONFIGRET; } - CM_Get_HW_Prof_Flags_ExA(::core::mem::transmute(pdeviceid), ulhardwareprofile, ::core::mem::transmute(pulvalue), ulflags, hmachine) + CM_Get_HW_Prof_Flags_ExA(pdeviceid.into(), ulhardwareprofile, ::core::mem::transmute(pulvalue), ulflags, hmachine) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Get_HW_Prof_Flags_ExW(pdeviceid: &u16, ulhardwareprofile: u32, pulvalue: &mut u32, ulflags: u32, hmachine: isize) -> CONFIGRET { +pub unsafe fn CM_Get_HW_Prof_Flags_ExW<'a, P0>(pdeviceid: P0, ulhardwareprofile: u32, pulvalue: &mut u32, ulflags: u32, hmachine: isize) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Get_HW_Prof_Flags_ExW(pdeviceid: *const u16, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + fn CM_Get_HW_Prof_Flags_ExW(pdeviceid: ::windows::core::PCWSTR, ulhardwareprofile: u32, pulvalue: *mut u32, ulflags: u32, hmachine: isize) -> CONFIGRET; } - CM_Get_HW_Prof_Flags_ExW(::core::mem::transmute(pdeviceid), ulhardwareprofile, ::core::mem::transmute(pulvalue), ulflags, hmachine) + CM_Get_HW_Prof_Flags_ExW(pdeviceid.into(), ulhardwareprofile, ::core::mem::transmute(pulvalue), ulflags, hmachine) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -2023,39 +2071,51 @@ pub const CM_LOCATE_DEVNODE_NOVALIDATION: u32 = 4u32; pub const CM_LOCATE_DEVNODE_PHANTOM: u32 = 1u32; #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Locate_DevNodeA(pdndevinst: &mut u32, pdeviceid: ::core::option::Option<&i8>, ulflags: u32) -> CONFIGRET { +pub unsafe fn CM_Locate_DevNodeA<'a, P0>(pdndevinst: &mut u32, pdeviceid: P0, ulflags: u32) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Locate_DevNodeA(pdndevinst: *mut u32, pdeviceid: *const i8, ulflags: u32) -> CONFIGRET; + fn CM_Locate_DevNodeA(pdndevinst: *mut u32, pdeviceid: ::windows::core::PCSTR, ulflags: u32) -> CONFIGRET; } - CM_Locate_DevNodeA(::core::mem::transmute(pdndevinst), ::core::mem::transmute(pdeviceid), ulflags) + CM_Locate_DevNodeA(::core::mem::transmute(pdndevinst), pdeviceid.into(), ulflags) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Locate_DevNodeW(pdndevinst: &mut u32, pdeviceid: ::core::option::Option<&u16>, ulflags: u32) -> CONFIGRET { +pub unsafe fn CM_Locate_DevNodeW<'a, P0>(pdndevinst: &mut u32, pdeviceid: P0, ulflags: u32) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Locate_DevNodeW(pdndevinst: *mut u32, pdeviceid: *const u16, ulflags: u32) -> CONFIGRET; + fn CM_Locate_DevNodeW(pdndevinst: *mut u32, pdeviceid: ::windows::core::PCWSTR, ulflags: u32) -> CONFIGRET; } - CM_Locate_DevNodeW(::core::mem::transmute(pdndevinst), ::core::mem::transmute(pdeviceid), ulflags) + CM_Locate_DevNodeW(::core::mem::transmute(pdndevinst), pdeviceid.into(), ulflags) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Locate_DevNode_ExA(pdndevinst: &mut u32, pdeviceid: ::core::option::Option<&i8>, ulflags: u32, hmachine: isize) -> CONFIGRET { +pub unsafe fn CM_Locate_DevNode_ExA<'a, P0>(pdndevinst: &mut u32, pdeviceid: P0, ulflags: u32, hmachine: isize) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Locate_DevNode_ExA(pdndevinst: *mut u32, pdeviceid: *const i8, ulflags: u32, hmachine: isize) -> CONFIGRET; + fn CM_Locate_DevNode_ExA(pdndevinst: *mut u32, pdeviceid: ::windows::core::PCSTR, ulflags: u32, hmachine: isize) -> CONFIGRET; } - CM_Locate_DevNode_ExA(::core::mem::transmute(pdndevinst), ::core::mem::transmute(pdeviceid), ulflags, hmachine) + CM_Locate_DevNode_ExA(::core::mem::transmute(pdndevinst), pdeviceid.into(), ulflags, hmachine) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Locate_DevNode_ExW(pdndevinst: &mut u32, pdeviceid: ::core::option::Option<&u16>, ulflags: u32, hmachine: isize) -> CONFIGRET { +pub unsafe fn CM_Locate_DevNode_ExW<'a, P0>(pdndevinst: &mut u32, pdeviceid: P0, ulflags: u32, hmachine: isize) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Locate_DevNode_ExW(pdndevinst: *mut u32, pdeviceid: *const u16, ulflags: u32, hmachine: isize) -> CONFIGRET; + fn CM_Locate_DevNode_ExW(pdndevinst: *mut u32, pdeviceid: ::windows::core::PCWSTR, ulflags: u32, hmachine: isize) -> CONFIGRET; } - CM_Locate_DevNode_ExW(::core::mem::transmute(pdndevinst), ::core::mem::transmute(pdeviceid), ulflags, hmachine) + CM_Locate_DevNode_ExW(::core::mem::transmute(pdndevinst), pdeviceid.into(), ulflags, hmachine) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] @@ -3331,39 +3391,51 @@ pub unsafe fn CM_Set_HW_Prof_Ex(ulhardwareprofile: u32, ulflags: u32, hmachine: } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Set_HW_Prof_FlagsA(pdeviceid: &i8, ulconfig: u32, ulvalue: u32, ulflags: u32) -> CONFIGRET { +pub unsafe fn CM_Set_HW_Prof_FlagsA<'a, P0>(pdeviceid: P0, ulconfig: u32, ulvalue: u32, ulflags: u32) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Set_HW_Prof_FlagsA(pdeviceid: *const i8, ulconfig: u32, ulvalue: u32, ulflags: u32) -> CONFIGRET; + fn CM_Set_HW_Prof_FlagsA(pdeviceid: ::windows::core::PCSTR, ulconfig: u32, ulvalue: u32, ulflags: u32) -> CONFIGRET; } - CM_Set_HW_Prof_FlagsA(::core::mem::transmute(pdeviceid), ulconfig, ulvalue, ulflags) + CM_Set_HW_Prof_FlagsA(pdeviceid.into(), ulconfig, ulvalue, ulflags) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Set_HW_Prof_FlagsW(pdeviceid: &u16, ulconfig: u32, ulvalue: u32, ulflags: u32) -> CONFIGRET { +pub unsafe fn CM_Set_HW_Prof_FlagsW<'a, P0>(pdeviceid: P0, ulconfig: u32, ulvalue: u32, ulflags: u32) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Set_HW_Prof_FlagsW(pdeviceid: *const u16, ulconfig: u32, ulvalue: u32, ulflags: u32) -> CONFIGRET; + fn CM_Set_HW_Prof_FlagsW(pdeviceid: ::windows::core::PCWSTR, ulconfig: u32, ulvalue: u32, ulflags: u32) -> CONFIGRET; } - CM_Set_HW_Prof_FlagsW(::core::mem::transmute(pdeviceid), ulconfig, ulvalue, ulflags) + CM_Set_HW_Prof_FlagsW(pdeviceid.into(), ulconfig, ulvalue, ulflags) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Set_HW_Prof_Flags_ExA(pdeviceid: &i8, ulconfig: u32, ulvalue: u32, ulflags: u32, hmachine: isize) -> CONFIGRET { +pub unsafe fn CM_Set_HW_Prof_Flags_ExA<'a, P0>(pdeviceid: P0, ulconfig: u32, ulvalue: u32, ulflags: u32, hmachine: isize) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Set_HW_Prof_Flags_ExA(pdeviceid: *const i8, ulconfig: u32, ulvalue: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + fn CM_Set_HW_Prof_Flags_ExA(pdeviceid: ::windows::core::PCSTR, ulconfig: u32, ulvalue: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; } - CM_Set_HW_Prof_Flags_ExA(::core::mem::transmute(pdeviceid), ulconfig, ulvalue, ulflags, hmachine) + CM_Set_HW_Prof_Flags_ExA(pdeviceid.into(), ulconfig, ulvalue, ulflags, hmachine) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] -pub unsafe fn CM_Set_HW_Prof_Flags_ExW(pdeviceid: &u16, ulconfig: u32, ulvalue: u32, ulflags: u32, hmachine: isize) -> CONFIGRET { +pub unsafe fn CM_Set_HW_Prof_Flags_ExW<'a, P0>(pdeviceid: P0, ulconfig: u32, ulvalue: u32, ulflags: u32, hmachine: isize) -> CONFIGRET +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CM_Set_HW_Prof_Flags_ExW(pdeviceid: *const u16, ulconfig: u32, ulvalue: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; + fn CM_Set_HW_Prof_Flags_ExW(pdeviceid: ::windows::core::PCWSTR, ulconfig: u32, ulvalue: u32, ulflags: u32, hmachine: isize) -> CONFIGRET; } - CM_Set_HW_Prof_Flags_ExW(::core::mem::transmute(pdeviceid), ulconfig, ulvalue, ulflags, hmachine) + CM_Set_HW_Prof_Flags_ExW(pdeviceid.into(), ulconfig, ulvalue, ulflags, hmachine) } #[doc = "*Required features: `\"Win32_Devices_DeviceAndDriverInstallation\"`*"] #[inline] diff --git a/crates/libs/windows/src/Windows/Win32/Devices/Fax/mod.rs b/crates/libs/windows/src/Windows/Win32/Devices/Fax/mod.rs index d3eec10178..7b59a7b986 100644 --- a/crates/libs/windows/src/Windows/Win32/Devices/Fax/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Devices/Fax/mod.rs @@ -12902,8 +12902,6 @@ pub struct IStiDeviceControl_Vtbl { pub GetMyDeviceOpenMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwopenmode: *mut u32) -> ::windows::core::HRESULT, pub WriteToErrorLog: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwmessagetype: u32, pszmessage: ::windows::core::PCWSTR, dwerrorcode: u32) -> ::windows::core::HRESULT, } -#[repr(C)] -pub struct IStiDeviceW(pub u8); #[doc = "*Required features: `\"Win32_Devices_Fax\"`*"] #[repr(transparent)] pub struct IStiUSD(::windows::core::IUnknown); diff --git a/crates/libs/windows/src/Windows/Win32/Devices/ImageAcquisition/mod.rs b/crates/libs/windows/src/Windows/Win32/Devices/ImageAcquisition/mod.rs index e8474c3a72..276bff3570 100644 --- a/crates/libs/windows/src/Windows/Win32/Devices/ImageAcquisition/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Devices/ImageAcquisition/mod.rs @@ -6210,40 +6210,40 @@ impl ::core::default::Default for WIA_PROPERTY_CONTEXT { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO { pub lAccessFlags: u32, - pub vt: u16, + pub vt: super::super::System::Com::VARENUM, pub ValidVal: WIA_PROPERTY_INFO_0, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO { fn clone(&self) -> Self { Self { lAccessFlags: self.lAccessFlags, vt: self.vt, ValidVal: self.ValidVal.clone() } } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] unsafe impl ::windows::core::Abi for WIA_PROPERTY_INFO { type Abi = ::core::mem::ManuallyDrop; } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::PartialEq for WIA_PROPERTY_INFO { fn eq(&self, other: &Self) -> bool { self.lAccessFlags == other.lAccessFlags && self.vt == other.vt && self.ValidVal == other.ValidVal } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::Eq for WIA_PROPERTY_INFO {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::default::Default for WIA_PROPERTY_INFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub union WIA_PROPERTY_INFO_0 { pub Range: WIA_PROPERTY_INFO_0_7, pub RangeFloat: WIA_PROPERTY_INFO_0_6, @@ -6254,342 +6254,342 @@ pub union WIA_PROPERTY_INFO_0 { pub Flag: WIA_PROPERTY_INFO_0_0, pub None: WIA_PROPERTY_INFO_0_5, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0 { fn clone(&self) -> Self { unsafe { ::core::mem::transmute_copy(self) } } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] unsafe impl ::windows::core::Abi for WIA_PROPERTY_INFO_0 { type Abi = ::core::mem::ManuallyDrop; } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::PartialEq for WIA_PROPERTY_INFO_0 { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::Eq for WIA_PROPERTY_INFO_0 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::default::Default for WIA_PROPERTY_INFO_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_0 { pub Nom: i32, pub ValidBits: i32, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_0 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_0 { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::fmt::Debug for WIA_PROPERTY_INFO_0_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("WIA_PROPERTY_INFO_0_0").field("Nom", &self.Nom).field("ValidBits", &self.ValidBits).finish() } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] unsafe impl ::windows::core::Abi for WIA_PROPERTY_INFO_0_0 { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::PartialEq for WIA_PROPERTY_INFO_0_0 { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::Eq for WIA_PROPERTY_INFO_0_0 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::default::Default for WIA_PROPERTY_INFO_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_1 { pub cNumList: i32, pub Nom: super::super::Foundation::BSTR, pub pList: *mut super::super::Foundation::BSTR, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_1 { fn clone(&self) -> Self { Self { cNumList: self.cNumList, Nom: self.Nom.clone(), pList: self.pList } } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::fmt::Debug for WIA_PROPERTY_INFO_0_1 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("WIA_PROPERTY_INFO_0_1").field("cNumList", &self.cNumList).field("Nom", &self.Nom).field("pList", &self.pList).finish() } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] unsafe impl ::windows::core::Abi for WIA_PROPERTY_INFO_0_1 { type Abi = ::core::mem::ManuallyDrop; } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::PartialEq for WIA_PROPERTY_INFO_0_1 { fn eq(&self, other: &Self) -> bool { self.cNumList == other.cNumList && self.Nom == other.Nom && self.pList == other.pList } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::Eq for WIA_PROPERTY_INFO_0_1 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::default::Default for WIA_PROPERTY_INFO_0_1 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_2 { pub cNumList: i32, pub Nom: f64, pub pList: *mut u8, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_2 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_2 { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::fmt::Debug for WIA_PROPERTY_INFO_0_2 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("WIA_PROPERTY_INFO_0_2").field("cNumList", &self.cNumList).field("Nom", &self.Nom).field("pList", &self.pList).finish() } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] unsafe impl ::windows::core::Abi for WIA_PROPERTY_INFO_0_2 { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::PartialEq for WIA_PROPERTY_INFO_0_2 { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::Eq for WIA_PROPERTY_INFO_0_2 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::default::Default for WIA_PROPERTY_INFO_0_2 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_3 { pub cNumList: i32, pub Nom: ::windows::core::GUID, pub pList: *mut ::windows::core::GUID, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_3 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_3 { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::fmt::Debug for WIA_PROPERTY_INFO_0_3 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("WIA_PROPERTY_INFO_0_3").field("cNumList", &self.cNumList).field("Nom", &self.Nom).field("pList", &self.pList).finish() } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] unsafe impl ::windows::core::Abi for WIA_PROPERTY_INFO_0_3 { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::PartialEq for WIA_PROPERTY_INFO_0_3 { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::Eq for WIA_PROPERTY_INFO_0_3 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::default::Default for WIA_PROPERTY_INFO_0_3 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_4 { pub cNumList: i32, pub Nom: i32, pub pList: *mut u8, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_4 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_4 { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::fmt::Debug for WIA_PROPERTY_INFO_0_4 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("WIA_PROPERTY_INFO_0_4").field("cNumList", &self.cNumList).field("Nom", &self.Nom).field("pList", &self.pList).finish() } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] unsafe impl ::windows::core::Abi for WIA_PROPERTY_INFO_0_4 { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::PartialEq for WIA_PROPERTY_INFO_0_4 { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::Eq for WIA_PROPERTY_INFO_0_4 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::default::Default for WIA_PROPERTY_INFO_0_4 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_5 { pub Dummy: i32, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_5 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_5 { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::fmt::Debug for WIA_PROPERTY_INFO_0_5 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("WIA_PROPERTY_INFO_0_5").field("Dummy", &self.Dummy).finish() } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] unsafe impl ::windows::core::Abi for WIA_PROPERTY_INFO_0_5 { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::PartialEq for WIA_PROPERTY_INFO_0_5 { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::Eq for WIA_PROPERTY_INFO_0_5 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::default::Default for WIA_PROPERTY_INFO_0_5 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_6 { pub Min: f64, pub Nom: f64, pub Max: f64, pub Inc: f64, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_6 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_6 { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::fmt::Debug for WIA_PROPERTY_INFO_0_6 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("WIA_PROPERTY_INFO_0_6").field("Min", &self.Min).field("Nom", &self.Nom).field("Max", &self.Max).field("Inc", &self.Inc).finish() } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] unsafe impl ::windows::core::Abi for WIA_PROPERTY_INFO_0_6 { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::PartialEq for WIA_PROPERTY_INFO_0_6 { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::Eq for WIA_PROPERTY_INFO_0_6 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::default::Default for WIA_PROPERTY_INFO_0_6 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Devices_ImageAcquisition\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub struct WIA_PROPERTY_INFO_0_7 { pub Min: i32, pub Nom: i32, pub Max: i32, pub Inc: i32, } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::marker::Copy for WIA_PROPERTY_INFO_0_7 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::clone::Clone for WIA_PROPERTY_INFO_0_7 { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::fmt::Debug for WIA_PROPERTY_INFO_0_7 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("WIA_PROPERTY_INFO_0_7").field("Min", &self.Min).field("Nom", &self.Nom).field("Max", &self.Max).field("Inc", &self.Inc).finish() } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] unsafe impl ::windows::core::Abi for WIA_PROPERTY_INFO_0_7 { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::PartialEq for WIA_PROPERTY_INFO_0_7 { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::cmp::Eq for WIA_PROPERTY_INFO_0_7 {} -#[cfg(feature = "Win32_Foundation")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::core::default::Default for WIA_PROPERTY_INFO_0_7 { fn default() -> Self { unsafe { ::core::mem::zeroed() } diff --git a/crates/libs/windows/src/Windows/Win32/Foundation/mod.rs b/crates/libs/windows/src/Windows/Win32/Foundation/mod.rs index ff8e637888..79d3f61556 100644 --- a/crates/libs/windows/src/Windows/Win32/Foundation/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Foundation/mod.rs @@ -732,6 +732,33 @@ pub const CLIPBRD_E_LAST: i32 = -2147221025i32; pub const CLIPBRD_S_FIRST: i32 = 262608i32; #[doc = "*Required features: `\"Win32_Foundation\"`*"] pub const CLIPBRD_S_LAST: i32 = 262623i32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct COLORREF(pub u32); +impl ::core::default::Default for COLORREF { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for COLORREF { + fn clone(&self) -> Self { + *self + } +} +impl ::core::marker::Copy for COLORREF {} +impl ::core::fmt::Debug for COLORREF { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("COLORREF").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for COLORREF { + fn from(optional: ::core::option::Option) -> COLORREF { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for COLORREF { + type Abi = Self; +} #[doc = "*Required features: `\"Win32_Foundation\"`*"] pub const COMADMIN_E_ALREADYINSTALLED: ::windows::core::HRESULT = ::windows::core::HRESULT(-2146368508i32); #[doc = "*Required features: `\"Win32_Foundation\"`*"] @@ -12934,15 +12961,12 @@ where } #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[inline] -pub unsafe fn SysAllocStringByteLen<'a, P0>(psz: P0, len: u32) -> BSTR -where - P0: ::std::convert::Into<::windows::core::PCSTR>, -{ +pub unsafe fn SysAllocStringByteLen(psz: ::core::option::Option<&[u8]>) -> BSTR { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn SysAllocStringByteLen(psz: ::windows::core::PCSTR, len: u32) -> BSTR; } - SysAllocStringByteLen(psz.into(), len) + SysAllocStringByteLen(::core::mem::transmute(psz.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), psz.as_deref().map_or(0, |slice| slice.len() as _)) } #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[inline] @@ -14280,7 +14304,7 @@ pub const WAIT_ABANDONED: WIN32_ERROR = WIN32_ERROR(128u32); #[doc = "*Required features: `\"Win32_Foundation\"`*"] pub const WAIT_ABANDONED_0: WIN32_ERROR = WIN32_ERROR(128u32); #[doc = "*Required features: `\"Win32_Foundation\"`*"] -pub const WAIT_IO_COMPLETION: WIN32_ERROR = WIN32_ERROR(129u32); +pub const WAIT_IO_COMPLETION: WIN32_ERROR = WIN32_ERROR(192u32); #[doc = "*Required features: `\"Win32_Foundation\"`*"] pub const WAIT_TIMEOUT: WIN32_ERROR = WIN32_ERROR(258u32); #[doc = "*Required features: `\"Win32_Foundation\"`*"] diff --git a/crates/libs/windows/src/Windows/Win32/Globalization/mod.rs b/crates/libs/windows/src/Windows/Win32/Globalization/mod.rs index 24c7a731d7..2710f15ebb 100644 --- a/crates/libs/windows/src/Windows/Win32/Globalization/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Globalization/mod.rs @@ -2669,30 +2669,6 @@ pub struct IEnumSpellingError_Vtbl { pub Next: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, value: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, } #[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_ALPHANUMERIC: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_CHARCODE: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_CHINESE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_FULLSHAPE: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_HANGUL: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_HANJACONVERT: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_JAPANESE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_KATAKANA: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_LANGUAGE: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_NATIVE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_NATIVESYMBOL: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] -pub const IME_CMODE_ROMAN: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Globalization\"`*"] #[repr(transparent)] pub struct IMLangCodePages(::windows::core::IUnknown); impl IMLangCodePages { @@ -7554,7 +7530,7 @@ pub unsafe fn ScriptApplyDigitSubstitution(psds: &SCRIPT_DIGITSUBSTITUTE, psc: & #[doc = "*Required features: `\"Win32_Globalization\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] #[inline] -pub unsafe fn ScriptApplyLogicalWidth(pidx: *const i32, cchars: i32, cglyphs: i32, pwlogclust: *const u16, psva: *const SCRIPT_VISATTR, piadvance: *const i32, psa: &SCRIPT_ANALYSIS, pabc: ::core::option::Option<&mut super::Graphics::Gdi::ABC>, pijustify: &mut i32) -> ::windows::core::Result<()> { +pub unsafe fn ScriptApplyLogicalWidth(pidx: *const i32, cchars: i32, cglyphs: i32, pwlogclust: *const u16, psva: *const SCRIPT_VISATTR, piadvance: *const i32, psa: &SCRIPT_ANALYSIS, pabc: ::core::option::Option<&mut super::Graphics::Gdi::ABC>, pijustify: *mut i32) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn ScriptApplyLogicalWidth(pidx: *const i32, cchars: i32, cglyphs: i32, pwlogclust: *const u16, psva: *const SCRIPT_VISATTR, piadvance: *const i32, psa: *const SCRIPT_ANALYSIS, pabc: *mut super::Graphics::Gdi::ABC, pijustify: *mut i32) -> ::windows::core::HRESULT; @@ -7563,13 +7539,12 @@ pub unsafe fn ScriptApplyLogicalWidth(pidx: *const i32, cchars: i32, cglyphs: i3 } #[doc = "*Required features: `\"Win32_Globalization\"`*"] #[inline] -pub unsafe fn ScriptBreak(pwcchars: &[u16], psa: &SCRIPT_ANALYSIS) -> ::windows::core::Result { +pub unsafe fn ScriptBreak(pwcchars: ::windows::core::PCWSTR, cchars: i32, psa: &SCRIPT_ANALYSIS, psla: *mut SCRIPT_LOGATTR) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn ScriptBreak(pwcchars: ::windows::core::PCWSTR, cchars: i32, psa: *const SCRIPT_ANALYSIS, psla: *mut SCRIPT_LOGATTR) -> ::windows::core::HRESULT; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - ScriptBreak(::core::mem::transmute(pwcchars.as_ptr()), pwcchars.len() as _, ::core::mem::transmute(psa), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + ScriptBreak(::core::mem::transmute(pwcchars), ::core::mem::transmute(cchars), ::core::mem::transmute(psa), ::core::mem::transmute(psla)).ok() } #[doc = "*Required features: `\"Win32_Globalization\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -7744,27 +7719,26 @@ pub unsafe fn ScriptItemizeOpenType(pwcinchars: &[u16], cmaxitems: i32, pscontro } #[doc = "*Required features: `\"Win32_Globalization\"`*"] #[inline] -pub unsafe fn ScriptJustify(psva: *const SCRIPT_VISATTR, piadvance: *const i32, cglyphs: i32, idx: i32, iminkashida: i32) -> ::windows::core::Result { +pub unsafe fn ScriptJustify(psva: *const SCRIPT_VISATTR, piadvance: *const i32, cglyphs: i32, idx: i32, iminkashida: i32, pijustify: *mut i32) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn ScriptJustify(psva: *const SCRIPT_VISATTR, piadvance: *const i32, cglyphs: i32, idx: i32, iminkashida: i32, pijustify: *mut i32) -> ::windows::core::HRESULT; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - ScriptJustify(::core::mem::transmute(psva), ::core::mem::transmute(piadvance), ::core::mem::transmute(cglyphs), idx, iminkashida, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + ScriptJustify(::core::mem::transmute(psva), ::core::mem::transmute(piadvance), ::core::mem::transmute(cglyphs), idx, iminkashida, ::core::mem::transmute(pijustify)).ok() } #[doc = "*Required features: `\"Win32_Globalization\"`*"] #[inline] -pub unsafe fn ScriptLayout(pblevel: &[u8], pivisualtological: ::core::option::Option<&mut i32>, pilogicaltovisual: ::core::option::Option<&mut i32>) -> ::windows::core::Result<()> { +pub unsafe fn ScriptLayout(cruns: i32, pblevel: *const u8, pivisualtological: *mut i32, pilogicaltovisual: *mut i32) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn ScriptLayout(cruns: i32, pblevel: *const u8, pivisualtological: *mut i32, pilogicaltovisual: *mut i32) -> ::windows::core::HRESULT; } - ScriptLayout(pblevel.len() as _, ::core::mem::transmute(pblevel.as_ptr()), ::core::mem::transmute(pivisualtological), ::core::mem::transmute(pilogicaltovisual)).ok() + ScriptLayout(::core::mem::transmute(cruns), ::core::mem::transmute(pblevel), ::core::mem::transmute(pivisualtological), ::core::mem::transmute(pilogicaltovisual)).ok() } #[doc = "*Required features: `\"Win32_Globalization\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] #[inline] -pub unsafe fn ScriptPlace<'a, P0>(hdc: P0, psc: *mut *mut ::core::ffi::c_void, pwglyphs: *const u16, cglyphs: i32, psva: *const SCRIPT_VISATTR, psa: &mut SCRIPT_ANALYSIS, piadvance: &mut i32, pgoffset: ::core::option::Option<&mut GOFFSET>, pabc: &mut super::Graphics::Gdi::ABC) -> ::windows::core::Result<()> +pub unsafe fn ScriptPlace<'a, P0>(hdc: P0, psc: *mut *mut ::core::ffi::c_void, pwglyphs: *const u16, cglyphs: i32, psva: *const SCRIPT_VISATTR, psa: &mut SCRIPT_ANALYSIS, piadvance: *mut i32, pgoffset: *mut GOFFSET, pabc: &mut super::Graphics::Gdi::ABC) -> ::windows::core::Result<()> where P0: ::std::convert::Into, { @@ -7777,7 +7751,7 @@ where #[doc = "*Required features: `\"Win32_Globalization\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] #[inline] -pub unsafe fn ScriptPlaceOpenType<'a, P0>(hdc: P0, psc: *mut *mut ::core::ffi::c_void, psa: &mut SCRIPT_ANALYSIS, tagscript: u32, taglangsys: u32, rcrangechars: *const i32, rprangeproperties: *const *const textrange_properties, cranges: i32, pwcchars: ::windows::core::PCWSTR, pwlogclust: *const u16, pcharprops: *const script_charprop, cchars: i32, pwglyphs: *const u16, pglyphprops: *const script_glyphprop, cglyphs: i32, piadvance: &mut i32, pgoffset: &mut GOFFSET, pabc: ::core::option::Option<&mut super::Graphics::Gdi::ABC>) -> ::windows::core::Result<()> +pub unsafe fn ScriptPlaceOpenType<'a, P0>(hdc: P0, psc: *mut *mut ::core::ffi::c_void, psa: &mut SCRIPT_ANALYSIS, tagscript: u32, taglangsys: u32, rcrangechars: *const i32, rprangeproperties: *const *const textrange_properties, cranges: i32, pwcchars: ::windows::core::PCWSTR, pwlogclust: *const u16, pcharprops: *const script_charprop, cchars: i32, pwglyphs: *const u16, pglyphprops: *const script_glyphprop, cglyphs: i32, piadvance: *mut i32, pgoffset: *mut GOFFSET, pabc: ::core::option::Option<&mut super::Graphics::Gdi::ABC>) -> ::windows::core::Result<()> where P0: ::std::convert::Into, { @@ -7833,7 +7807,7 @@ pub unsafe fn ScriptRecordDigitSubstitution(locale: u32) -> ::windows::core::Res #[doc = "*Required features: `\"Win32_Globalization\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] #[inline] -pub unsafe fn ScriptShape<'a, P0>(hdc: P0, psc: *mut *mut ::core::ffi::c_void, pwcchars: &[u16], cmaxglyphs: i32, psa: &mut SCRIPT_ANALYSIS, pwoutglyphs: *mut u16, pwlogclust: &mut u16, psva: *mut SCRIPT_VISATTR, pcglyphs: &mut i32) -> ::windows::core::Result<()> +pub unsafe fn ScriptShape<'a, P0>(hdc: P0, psc: *mut *mut ::core::ffi::c_void, pwcchars: ::windows::core::PCWSTR, cchars: i32, cmaxglyphs: i32, psa: &mut SCRIPT_ANALYSIS, pwoutglyphs: *mut u16, pwlogclust: *mut u16, psva: *mut SCRIPT_VISATTR, pcglyphs: &mut i32) -> ::windows::core::Result<()> where P0: ::std::convert::Into, { @@ -7841,12 +7815,12 @@ where extern "system" { fn ScriptShape(hdc: super::Graphics::Gdi::HDC, psc: *mut *mut ::core::ffi::c_void, pwcchars: ::windows::core::PCWSTR, cchars: i32, cmaxglyphs: i32, psa: *mut SCRIPT_ANALYSIS, pwoutglyphs: *mut u16, pwlogclust: *mut u16, psva: *mut SCRIPT_VISATTR, pcglyphs: *mut i32) -> ::windows::core::HRESULT; } - ScriptShape(hdc.into(), ::core::mem::transmute(psc), ::core::mem::transmute(pwcchars.as_ptr()), pwcchars.len() as _, ::core::mem::transmute(cmaxglyphs), ::core::mem::transmute(psa), ::core::mem::transmute(pwoutglyphs), ::core::mem::transmute(pwlogclust), ::core::mem::transmute(psva), ::core::mem::transmute(pcglyphs)).ok() + ScriptShape(hdc.into(), ::core::mem::transmute(psc), ::core::mem::transmute(pwcchars), ::core::mem::transmute(cchars), ::core::mem::transmute(cmaxglyphs), ::core::mem::transmute(psa), ::core::mem::transmute(pwoutglyphs), ::core::mem::transmute(pwlogclust), ::core::mem::transmute(psva), ::core::mem::transmute(pcglyphs)).ok() } #[doc = "*Required features: `\"Win32_Globalization\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] #[inline] -pub unsafe fn ScriptShapeOpenType<'a, P0>(hdc: P0, psc: *mut *mut ::core::ffi::c_void, psa: &mut SCRIPT_ANALYSIS, tagscript: u32, taglangsys: u32, rcrangechars: *const i32, rprangeproperties: *const *const textrange_properties, cranges: i32, pwcchars: &[u16], cmaxglyphs: i32, pwlogclust: &mut u16, pcharprops: &mut script_charprop, pwoutglyphs: *mut u16, poutglyphprops: *mut script_glyphprop, pcglyphs: &mut i32) -> ::windows::core::Result<()> +pub unsafe fn ScriptShapeOpenType<'a, P0>(hdc: P0, psc: *mut *mut ::core::ffi::c_void, psa: &mut SCRIPT_ANALYSIS, tagscript: u32, taglangsys: u32, rcrangechars: *const i32, rprangeproperties: *const *const textrange_properties, cranges: i32, pwcchars: ::windows::core::PCWSTR, cchars: i32, cmaxglyphs: i32, pwlogclust: *mut u16, pcharprops: *mut script_charprop, pwoutglyphs: *mut u16, poutglyphprops: *mut script_glyphprop, pcglyphs: &mut i32) -> ::windows::core::Result<()> where P0: ::std::convert::Into, { @@ -7863,8 +7837,8 @@ where ::core::mem::transmute(rcrangechars), ::core::mem::transmute(rprangeproperties), ::core::mem::transmute(cranges), - ::core::mem::transmute(pwcchars.as_ptr()), - pwcchars.len() as _, + ::core::mem::transmute(pwcchars), + ::core::mem::transmute(cchars), ::core::mem::transmute(cmaxglyphs), ::core::mem::transmute(pwlogclust), ::core::mem::transmute(pcharprops), diff --git a/crates/libs/windows/src/Windows/Win32/Graphics/Direct2D/Common/mod.rs b/crates/libs/windows/src/Windows/Win32/Graphics/Direct2D/Common/mod.rs index c2dff4bc6f..291aa4d70a 100644 --- a/crates/libs/windows/src/Windows/Win32/Graphics/Direct2D/Common/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Graphics/Direct2D/Common/mod.rs @@ -1340,6 +1340,8 @@ impl ::core::fmt::Debug for ID2D1SimplifiedGeometrySink { f.debug_tuple("ID2D1SimplifiedGeometrySink").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1SimplifiedGeometrySink {} +unsafe impl ::core::marker::Sync for ID2D1SimplifiedGeometrySink {} unsafe impl ::windows::core::Interface for ID2D1SimplifiedGeometrySink { type Vtable = ID2D1SimplifiedGeometrySink_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd9069e_12e2_11dc_9fed_001143a055f9); diff --git a/crates/libs/windows/src/Windows/Win32/Graphics/Direct2D/mod.rs b/crates/libs/windows/src/Windows/Win32/Graphics/Direct2D/mod.rs index e4e55df242..7453edade2 100644 --- a/crates/libs/windows/src/Windows/Win32/Graphics/Direct2D/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Graphics/Direct2D/mod.rs @@ -8085,6 +8085,8 @@ impl ::core::fmt::Debug for ID2D1AnalysisTransform { f.debug_tuple("ID2D1AnalysisTransform").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1AnalysisTransform {} +unsafe impl ::core::marker::Sync for ID2D1AnalysisTransform {} unsafe impl ::windows::core::Interface for ID2D1AnalysisTransform { type Vtable = ID2D1AnalysisTransform_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0359dc30_95e6_4568_9055_27720d130e93); @@ -8209,6 +8211,8 @@ impl ::core::fmt::Debug for ID2D1Bitmap { f.debug_tuple("ID2D1Bitmap").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Bitmap {} +unsafe impl ::core::marker::Sync for ID2D1Bitmap {} unsafe impl ::windows::core::Interface for ID2D1Bitmap { type Vtable = ID2D1Bitmap_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa2296057_ea42_4099_983b_539fb6505426); @@ -8391,6 +8395,8 @@ impl ::core::fmt::Debug for ID2D1Bitmap1 { f.debug_tuple("ID2D1Bitmap1").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Bitmap1 {} +unsafe impl ::core::marker::Sync for ID2D1Bitmap1 {} unsafe impl ::windows::core::Interface for ID2D1Bitmap1 { type Vtable = ID2D1Bitmap1_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa898a84c_3873_4588_b08b_ebbf978df041); @@ -8520,6 +8526,8 @@ impl ::core::fmt::Debug for ID2D1BitmapBrush { f.debug_tuple("ID2D1BitmapBrush").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1BitmapBrush {} +unsafe impl ::core::marker::Sync for ID2D1BitmapBrush {} unsafe impl ::windows::core::Interface for ID2D1BitmapBrush { type Vtable = ID2D1BitmapBrush_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906aa_12e2_11dc_9fed_001143a055f9); @@ -8670,6 +8678,8 @@ impl ::core::fmt::Debug for ID2D1BitmapBrush1 { f.debug_tuple("ID2D1BitmapBrush1").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1BitmapBrush1 {} +unsafe impl ::core::marker::Sync for ID2D1BitmapBrush1 {} unsafe impl ::windows::core::Interface for ID2D1BitmapBrush1 { type Vtable = ID2D1BitmapBrush1_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x41343a53_e41a_49a2_91cd_21793bbb62e5); @@ -9076,6 +9086,8 @@ impl ::core::fmt::Debug for ID2D1BitmapRenderTarget { f.debug_tuple("ID2D1BitmapRenderTarget").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1BitmapRenderTarget {} +unsafe impl ::core::marker::Sync for ID2D1BitmapRenderTarget {} unsafe impl ::windows::core::Interface for ID2D1BitmapRenderTarget { type Vtable = ID2D1BitmapRenderTarget_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd90695_12e2_11dc_9fed_001143a055f9); @@ -9172,6 +9184,8 @@ impl ::core::fmt::Debug for ID2D1BlendTransform { f.debug_tuple("ID2D1BlendTransform").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1BlendTransform {} +unsafe impl ::core::marker::Sync for ID2D1BlendTransform {} unsafe impl ::windows::core::Interface for ID2D1BlendTransform { type Vtable = ID2D1BlendTransform_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x63ac0b32_ba44_450f_8806_7f4ca1ff2f1b); @@ -9275,6 +9289,8 @@ impl ::core::fmt::Debug for ID2D1BorderTransform { f.debug_tuple("ID2D1BorderTransform").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1BorderTransform {} +unsafe impl ::core::marker::Sync for ID2D1BorderTransform {} unsafe impl ::windows::core::Interface for ID2D1BorderTransform { type Vtable = ID2D1BorderTransform_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4998735c_3a19_473c_9781_656847e3a347); @@ -9352,6 +9368,8 @@ impl ::core::fmt::Debug for ID2D1BoundsAdjustmentTransform { f.debug_tuple("ID2D1BoundsAdjustmentTransform").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1BoundsAdjustmentTransform {} +unsafe impl ::core::marker::Sync for ID2D1BoundsAdjustmentTransform {} unsafe impl ::windows::core::Interface for ID2D1BoundsAdjustmentTransform { type Vtable = ID2D1BoundsAdjustmentTransform_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x90f732e2_5092_4606_a819_8651970baccd); @@ -9439,6 +9457,8 @@ impl ::core::fmt::Debug for ID2D1Brush { f.debug_tuple("ID2D1Brush").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Brush {} +unsafe impl ::core::marker::Sync for ID2D1Brush {} unsafe impl ::windows::core::Interface for ID2D1Brush { type Vtable = ID2D1Brush_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906a8_12e2_11dc_9fed_001143a055f9); @@ -9521,6 +9541,8 @@ impl ::core::fmt::Debug for ID2D1ColorContext { f.debug_tuple("ID2D1ColorContext").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1ColorContext {} +unsafe impl ::core::marker::Sync for ID2D1ColorContext {} unsafe impl ::windows::core::Interface for ID2D1ColorContext { type Vtable = ID2D1ColorContext_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1c4820bb_5771_4518_a581_2fe4dd0ec657); @@ -9625,6 +9647,8 @@ impl ::core::fmt::Debug for ID2D1ColorContext1 { f.debug_tuple("ID2D1ColorContext1").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1ColorContext1 {} +unsafe impl ::core::marker::Sync for ID2D1ColorContext1 {} unsafe impl ::windows::core::Interface for ID2D1ColorContext1 { type Vtable = ID2D1ColorContext1_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1ab42875_c57f_4be9_bd85_9cd78d6f55ee); @@ -9721,6 +9745,8 @@ impl ::core::fmt::Debug for ID2D1CommandList { f.debug_tuple("ID2D1CommandList").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1CommandList {} +unsafe impl ::core::marker::Sync for ID2D1CommandList {} unsafe impl ::windows::core::Interface for ID2D1CommandList { type Vtable = ID2D1CommandList_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb4f34a19_2383_4d76_94f6_ec343657c3dc); @@ -9916,6 +9942,8 @@ impl ::core::fmt::Debug for ID2D1CommandSink { f.debug_tuple("ID2D1CommandSink").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1CommandSink {} +unsafe impl ::core::marker::Sync for ID2D1CommandSink {} unsafe impl ::windows::core::Interface for ID2D1CommandSink { type Vtable = ID2D1CommandSink_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x54d7898a_a061_40a7_bec7_e465bcba2c4f); @@ -10191,6 +10219,8 @@ impl ::core::fmt::Debug for ID2D1CommandSink1 { f.debug_tuple("ID2D1CommandSink1").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1CommandSink1 {} +unsafe impl ::core::marker::Sync for ID2D1CommandSink1 {} unsafe impl ::windows::core::Interface for ID2D1CommandSink1 { type Vtable = ID2D1CommandSink1_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9eb767fd_4269_4467_b8c2_eb30cb305743); @@ -10440,6 +10470,8 @@ impl ::core::fmt::Debug for ID2D1CommandSink2 { f.debug_tuple("ID2D1CommandSink2").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1CommandSink2 {} +unsafe impl ::core::marker::Sync for ID2D1CommandSink2 {} unsafe impl ::windows::core::Interface for ID2D1CommandSink2 { type Vtable = ID2D1CommandSink2_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3bab440e_417e_47df_a2e2_bc0be6a00916); @@ -10716,6 +10748,8 @@ impl ::core::fmt::Debug for ID2D1CommandSink3 { f.debug_tuple("ID2D1CommandSink3").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1CommandSink3 {} +unsafe impl ::core::marker::Sync for ID2D1CommandSink3 {} unsafe impl ::windows::core::Interface for ID2D1CommandSink3 { type Vtable = ID2D1CommandSink3_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x18079135_4cf3_4868_bc8e_06067e6d242d); @@ -11005,6 +11039,8 @@ impl ::core::fmt::Debug for ID2D1CommandSink4 { f.debug_tuple("ID2D1CommandSink4").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1CommandSink4 {} +unsafe impl ::core::marker::Sync for ID2D1CommandSink4 {} unsafe impl ::windows::core::Interface for ID2D1CommandSink4 { type Vtable = ID2D1CommandSink4_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc78a6519_40d6_4218_b2de_beeeb744bb3e); @@ -11317,6 +11353,8 @@ impl ::core::fmt::Debug for ID2D1CommandSink5 { f.debug_tuple("ID2D1CommandSink5").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1CommandSink5 {} +unsafe impl ::core::marker::Sync for ID2D1CommandSink5 {} unsafe impl ::windows::core::Interface for ID2D1CommandSink5 { type Vtable = ID2D1CommandSink5_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7047dd26_b1e7_44a7_959a_8349e2144fa8); @@ -11410,6 +11448,8 @@ impl ::core::fmt::Debug for ID2D1ComputeInfo { f.debug_tuple("ID2D1ComputeInfo").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1ComputeInfo {} +unsafe impl ::core::marker::Sync for ID2D1ComputeInfo {} unsafe impl ::windows::core::Interface for ID2D1ComputeInfo { type Vtable = ID2D1ComputeInfo_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5598b14b_9fd7_48b7_9bdb_8f0964eb38bc); @@ -11518,6 +11558,8 @@ impl ::core::fmt::Debug for ID2D1ComputeTransform { f.debug_tuple("ID2D1ComputeTransform").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1ComputeTransform {} +unsafe impl ::core::marker::Sync for ID2D1ComputeTransform {} unsafe impl ::windows::core::Interface for ID2D1ComputeTransform { type Vtable = ID2D1ComputeTransform_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0d85573c_01e3_4f7d_bfd9_0d60608bf3c3); @@ -11597,6 +11639,8 @@ impl ::core::fmt::Debug for ID2D1ConcreteTransform { f.debug_tuple("ID2D1ConcreteTransform").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1ConcreteTransform {} +unsafe impl ::core::marker::Sync for ID2D1ConcreteTransform {} unsafe impl ::windows::core::Interface for ID2D1ConcreteTransform { type Vtable = ID2D1ConcreteTransform_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1a799d8a_69f7_4e4c_9fed_437ccc6684cc); @@ -12010,6 +12054,8 @@ impl ::core::fmt::Debug for ID2D1DCRenderTarget { f.debug_tuple("ID2D1DCRenderTarget").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1DCRenderTarget {} +unsafe impl ::core::marker::Sync for ID2D1DCRenderTarget {} unsafe impl ::windows::core::Interface for ID2D1DCRenderTarget { type Vtable = ID2D1DCRenderTarget_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1c51bc64_de61_46fd_9899_63a5d8f03950); @@ -12100,6 +12146,8 @@ impl ::core::fmt::Debug for ID2D1Device { f.debug_tuple("ID2D1Device").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Device {} +unsafe impl ::core::marker::Sync for ID2D1Device {} unsafe impl ::windows::core::Interface for ID2D1Device { type Vtable = ID2D1Device_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x47dd575d_ac05_4cdd_8049_9b02cd16f44c); @@ -12219,6 +12267,8 @@ impl ::core::fmt::Debug for ID2D1Device1 { f.debug_tuple("ID2D1Device1").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Device1 {} +unsafe impl ::core::marker::Sync for ID2D1Device1 {} unsafe impl ::windows::core::Interface for ID2D1Device1 { type Vtable = ID2D1Device1_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd21768e1_23a4_4823_a14b_7c3eba85d658); @@ -12364,6 +12414,8 @@ impl ::core::fmt::Debug for ID2D1Device2 { f.debug_tuple("ID2D1Device2").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Device2 {} +unsafe impl ::core::marker::Sync for ID2D1Device2 {} unsafe impl ::windows::core::Interface for ID2D1Device2 { type Vtable = ID2D1Device2_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa44472e1_8dfb_4e60_8492_6e2861c9ca8b); @@ -12531,6 +12583,8 @@ impl ::core::fmt::Debug for ID2D1Device3 { f.debug_tuple("ID2D1Device3").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Device3 {} +unsafe impl ::core::marker::Sync for ID2D1Device3 {} unsafe impl ::windows::core::Interface for ID2D1Device3 { type Vtable = ID2D1Device3_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x852f2087_802c_4037_ab60_ff2e7ee6fc01); @@ -12718,6 +12772,8 @@ impl ::core::fmt::Debug for ID2D1Device4 { f.debug_tuple("ID2D1Device4").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Device4 {} +unsafe impl ::core::marker::Sync for ID2D1Device4 {} unsafe impl ::windows::core::Interface for ID2D1Device4 { type Vtable = ID2D1Device4_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd7bdb159_5683_4a46_bc9c_72dc720b858b); @@ -12926,6 +12982,8 @@ impl ::core::fmt::Debug for ID2D1Device5 { f.debug_tuple("ID2D1Device5").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Device5 {} +unsafe impl ::core::marker::Sync for ID2D1Device5 {} unsafe impl ::windows::core::Interface for ID2D1Device5 { type Vtable = ID2D1Device5_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd55ba0a4_6405_4694_aef5_08ee1a4358b4); @@ -13151,6 +13209,8 @@ impl ::core::fmt::Debug for ID2D1Device6 { f.debug_tuple("ID2D1Device6").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Device6 {} +unsafe impl ::core::marker::Sync for ID2D1Device6 {} unsafe impl ::windows::core::Interface for ID2D1Device6 { type Vtable = ID2D1Device6_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7bfef914_2d75_4bad_be87_e18ddb077b6d); @@ -13776,6 +13836,8 @@ impl ::core::fmt::Debug for ID2D1DeviceContext { f.debug_tuple("ID2D1DeviceContext").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1DeviceContext {} +unsafe impl ::core::marker::Sync for ID2D1DeviceContext {} unsafe impl ::windows::core::Interface for ID2D1DeviceContext { type Vtable = ID2D1DeviceContext_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe8f7fe7a_191c_466d_ad95_975678bda998); @@ -14541,6 +14603,8 @@ impl ::core::fmt::Debug for ID2D1DeviceContext1 { f.debug_tuple("ID2D1DeviceContext1").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1DeviceContext1 {} +unsafe impl ::core::marker::Sync for ID2D1DeviceContext1 {} unsafe impl ::windows::core::Interface for ID2D1DeviceContext1 { type Vtable = ID2D1DeviceContext1_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd37f57e4_6908_459f_a199_e72f24f79987); @@ -15293,6 +15357,8 @@ impl ::core::fmt::Debug for ID2D1DeviceContext2 { f.debug_tuple("ID2D1DeviceContext2").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1DeviceContext2 {} +unsafe impl ::core::marker::Sync for ID2D1DeviceContext2 {} unsafe impl ::windows::core::Interface for ID2D1DeviceContext2 { type Vtable = ID2D1DeviceContext2_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x394ea6a3_0c34_4321_950b_6ca20f0be6c7); @@ -16097,6 +16163,8 @@ impl ::core::fmt::Debug for ID2D1DeviceContext3 { f.debug_tuple("ID2D1DeviceContext3").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1DeviceContext3 {} +unsafe impl ::core::marker::Sync for ID2D1DeviceContext3 {} unsafe impl ::windows::core::Interface for ID2D1DeviceContext3 { type Vtable = ID2D1DeviceContext3_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x235a7496_8351_414c_bcd4_6672ab2d8e00); @@ -16947,6 +17015,8 @@ impl ::core::fmt::Debug for ID2D1DeviceContext4 { f.debug_tuple("ID2D1DeviceContext4").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1DeviceContext4 {} +unsafe impl ::core::marker::Sync for ID2D1DeviceContext4 {} unsafe impl ::windows::core::Interface for ID2D1DeviceContext4 { type Vtable = ID2D1DeviceContext4_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8c427831_3d90_4476_b647_c4fae349e4db); @@ -17862,6 +17932,8 @@ impl ::core::fmt::Debug for ID2D1DeviceContext5 { f.debug_tuple("ID2D1DeviceContext5").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1DeviceContext5 {} +unsafe impl ::core::marker::Sync for ID2D1DeviceContext5 {} unsafe impl ::windows::core::Interface for ID2D1DeviceContext5 { type Vtable = ID2D1DeviceContext5_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7836d248_68cc_4df6_b9e8_de991bf62eb7); @@ -18788,6 +18860,8 @@ impl ::core::fmt::Debug for ID2D1DeviceContext6 { f.debug_tuple("ID2D1DeviceContext6").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1DeviceContext6 {} +unsafe impl ::core::marker::Sync for ID2D1DeviceContext6 {} unsafe impl ::windows::core::Interface for ID2D1DeviceContext6 { type Vtable = ID2D1DeviceContext6_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x985f7e37_4ed0_4a19_98a3_15b0edfde306); @@ -18890,6 +18964,8 @@ impl ::core::fmt::Debug for ID2D1DrawInfo { f.debug_tuple("ID2D1DrawInfo").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1DrawInfo {} +unsafe impl ::core::marker::Sync for ID2D1DrawInfo {} unsafe impl ::windows::core::Interface for ID2D1DrawInfo { type Vtable = ID2D1DrawInfo_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x693ce632_7f2f_45de_93fe_18d88b37aa21); @@ -18995,6 +19071,8 @@ impl ::core::fmt::Debug for ID2D1DrawTransform { f.debug_tuple("ID2D1DrawTransform").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1DrawTransform {} +unsafe impl ::core::marker::Sync for ID2D1DrawTransform {} unsafe impl ::windows::core::Interface for ID2D1DrawTransform { type Vtable = ID2D1DrawTransform_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36bfdcb6_9739_435d_a30d_a653beff6a6f); @@ -19082,6 +19160,8 @@ impl ::core::fmt::Debug for ID2D1DrawingStateBlock { f.debug_tuple("ID2D1DrawingStateBlock").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1DrawingStateBlock {} +unsafe impl ::core::marker::Sync for ID2D1DrawingStateBlock {} unsafe impl ::windows::core::Interface for ID2D1DrawingStateBlock { type Vtable = ID2D1DrawingStateBlock_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x28506e39_ebf6_46a1_bb47_fd85565ab957); @@ -19209,6 +19289,8 @@ impl ::core::fmt::Debug for ID2D1DrawingStateBlock1 { f.debug_tuple("ID2D1DrawingStateBlock1").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1DrawingStateBlock1 {} +unsafe impl ::core::marker::Sync for ID2D1DrawingStateBlock1 {} unsafe impl ::windows::core::Interface for ID2D1DrawingStateBlock1 { type Vtable = ID2D1DrawingStateBlock1_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x689f1f85_c72e_4e33_8f19_85754efd5ace); @@ -19341,6 +19423,8 @@ impl ::core::fmt::Debug for ID2D1Effect { f.debug_tuple("ID2D1Effect").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Effect {} +unsafe impl ::core::marker::Sync for ID2D1Effect {} unsafe impl ::windows::core::Interface for ID2D1Effect { type Vtable = ID2D1Effect_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x28211a43_7d89_476f_8181_2d6159b220ad); @@ -19494,6 +19578,8 @@ impl ::core::fmt::Debug for ID2D1EffectContext { f.debug_tuple("ID2D1EffectContext").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1EffectContext {} +unsafe impl ::core::marker::Sync for ID2D1EffectContext {} unsafe impl ::windows::core::Interface for ID2D1EffectContext { type Vtable = ID2D1EffectContext_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3d9f916b_27dc_4ad7_b4f1_64945340f563); @@ -19700,6 +19786,8 @@ impl ::core::fmt::Debug for ID2D1EffectContext1 { f.debug_tuple("ID2D1EffectContext1").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1EffectContext1 {} +unsafe impl ::core::marker::Sync for ID2D1EffectContext1 {} unsafe impl ::windows::core::Interface for ID2D1EffectContext1 { type Vtable = ID2D1EffectContext1_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x84ab595a_fc81_4546_bacd_e8ef4d8abe7a); @@ -19892,6 +19980,8 @@ impl ::core::fmt::Debug for ID2D1EffectContext2 { f.debug_tuple("ID2D1EffectContext2").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1EffectContext2 {} +unsafe impl ::core::marker::Sync for ID2D1EffectContext2 {} unsafe impl ::windows::core::Interface for ID2D1EffectContext2 { type Vtable = ID2D1EffectContext2_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x577ad2a0_9fc7_4dda_8b18_dab810140052); @@ -19961,6 +20051,8 @@ impl ::core::fmt::Debug for ID2D1EffectImpl { f.debug_tuple("ID2D1EffectImpl").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1EffectImpl {} +unsafe impl ::core::marker::Sync for ID2D1EffectImpl {} unsafe impl ::windows::core::Interface for ID2D1EffectImpl { type Vtable = ID2D1EffectImpl_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa248fd3f_3e6c_4e63_9f03_7f68ecc91db9); @@ -20145,6 +20237,8 @@ impl ::core::fmt::Debug for ID2D1EllipseGeometry { f.debug_tuple("ID2D1EllipseGeometry").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1EllipseGeometry {} +unsafe impl ::core::marker::Sync for ID2D1EllipseGeometry {} unsafe impl ::windows::core::Interface for ID2D1EllipseGeometry { type Vtable = ID2D1EllipseGeometry_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906a4_12e2_11dc_9fed_001143a055f9); @@ -20280,6 +20374,8 @@ impl ::core::fmt::Debug for ID2D1Factory { f.debug_tuple("ID2D1Factory").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Factory {} +unsafe impl ::core::marker::Sync for ID2D1Factory {} unsafe impl ::windows::core::Interface for ID2D1Factory { type Vtable = ID2D1Factory_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x06152247_6f50_465a_9245_118bfd3b6007); @@ -20529,6 +20625,8 @@ impl ::core::fmt::Debug for ID2D1Factory1 { f.debug_tuple("ID2D1Factory1").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Factory1 {} +unsafe impl ::core::marker::Sync for ID2D1Factory1 {} unsafe impl ::windows::core::Interface for ID2D1Factory1 { type Vtable = ID2D1Factory1_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbb12d362_daee_4b9a_aa1d_14ba401cfa1f); @@ -20780,6 +20878,8 @@ impl ::core::fmt::Debug for ID2D1Factory2 { f.debug_tuple("ID2D1Factory2").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Factory2 {} +unsafe impl ::core::marker::Sync for ID2D1Factory2 {} unsafe impl ::windows::core::Interface for ID2D1Factory2 { type Vtable = ID2D1Factory2_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x94f81a73_9212_4376_9c58_b16a3a0d3992); @@ -21037,6 +21137,8 @@ impl ::core::fmt::Debug for ID2D1Factory3 { f.debug_tuple("ID2D1Factory3").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Factory3 {} +unsafe impl ::core::marker::Sync for ID2D1Factory3 {} unsafe impl ::windows::core::Interface for ID2D1Factory3 { type Vtable = ID2D1Factory3_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0869759f_4f00_413f_b03e_2bda45404d0f); @@ -21318,6 +21420,8 @@ impl ::core::fmt::Debug for ID2D1Factory4 { f.debug_tuple("ID2D1Factory4").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Factory4 {} +unsafe impl ::core::marker::Sync for ID2D1Factory4 {} unsafe impl ::windows::core::Interface for ID2D1Factory4 { type Vtable = ID2D1Factory4_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbd4ec2d2_0662_4bee_ba8e_6f29f032e096); @@ -21623,6 +21727,8 @@ impl ::core::fmt::Debug for ID2D1Factory5 { f.debug_tuple("ID2D1Factory5").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Factory5 {} +unsafe impl ::core::marker::Sync for ID2D1Factory5 {} unsafe impl ::windows::core::Interface for ID2D1Factory5 { type Vtable = ID2D1Factory5_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc4349994_838e_4b0f_8cab_44997d9eeacc); @@ -21952,6 +22058,8 @@ impl ::core::fmt::Debug for ID2D1Factory6 { f.debug_tuple("ID2D1Factory6").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Factory6 {} +unsafe impl ::core::marker::Sync for ID2D1Factory6 {} unsafe impl ::windows::core::Interface for ID2D1Factory6 { type Vtable = ID2D1Factory6_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf9976f46_f642_44c1_97ca_da32ea2a2635); @@ -22305,6 +22413,8 @@ impl ::core::fmt::Debug for ID2D1Factory7 { f.debug_tuple("ID2D1Factory7").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Factory7 {} +unsafe impl ::core::marker::Sync for ID2D1Factory7 {} unsafe impl ::windows::core::Interface for ID2D1Factory7 { type Vtable = ID2D1Factory7_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbdc2bdd3_b96c_4de6_bdf7_99d4745454de); @@ -22365,6 +22475,8 @@ impl ::core::fmt::Debug for ID2D1GdiInteropRenderTarget { f.debug_tuple("ID2D1GdiInteropRenderTarget").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1GdiInteropRenderTarget {} +unsafe impl ::core::marker::Sync for ID2D1GdiInteropRenderTarget {} unsafe impl ::windows::core::Interface for ID2D1GdiInteropRenderTarget { type Vtable = ID2D1GdiInteropRenderTarget_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe0db51c3_6f77_4bae_b3d5_e47509b35838); @@ -22448,6 +22560,8 @@ impl ::core::fmt::Debug for ID2D1GdiMetafile { f.debug_tuple("ID2D1GdiMetafile").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1GdiMetafile {} +unsafe impl ::core::marker::Sync for ID2D1GdiMetafile {} unsafe impl ::windows::core::Interface for ID2D1GdiMetafile { type Vtable = ID2D1GdiMetafile_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2f543dc3_cfc1_4211_864f_cfd91c6f3395); @@ -22552,6 +22666,8 @@ impl ::core::fmt::Debug for ID2D1GdiMetafile1 { f.debug_tuple("ID2D1GdiMetafile1").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1GdiMetafile1 {} +unsafe impl ::core::marker::Sync for ID2D1GdiMetafile1 {} unsafe impl ::windows::core::Interface for ID2D1GdiMetafile1 { type Vtable = ID2D1GdiMetafile1_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2e69f9e8_dd3f_4bf9_95ba_c04f49d788df); @@ -22605,6 +22721,8 @@ impl ::core::fmt::Debug for ID2D1GdiMetafileSink { f.debug_tuple("ID2D1GdiMetafileSink").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1GdiMetafileSink {} +unsafe impl ::core::marker::Sync for ID2D1GdiMetafileSink {} unsafe impl ::windows::core::Interface for ID2D1GdiMetafileSink { type Vtable = ID2D1GdiMetafileSink_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x82237326_8111_4f7c_bcf4_b5c1175564fe); @@ -22672,6 +22790,8 @@ impl ::core::fmt::Debug for ID2D1GdiMetafileSink1 { f.debug_tuple("ID2D1GdiMetafileSink1").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1GdiMetafileSink1 {} +unsafe impl ::core::marker::Sync for ID2D1GdiMetafileSink1 {} unsafe impl ::windows::core::Interface for ID2D1GdiMetafileSink1 { type Vtable = ID2D1GdiMetafileSink1_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfd0ecb6b_91e6_411e_8655_395e760f91b4); @@ -22834,6 +22954,8 @@ impl ::core::fmt::Debug for ID2D1Geometry { f.debug_tuple("ID2D1Geometry").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Geometry {} +unsafe impl ::core::marker::Sync for ID2D1Geometry {} unsafe impl ::windows::core::Interface for ID2D1Geometry { type Vtable = ID2D1Geometry_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906a1_12e2_11dc_9fed_001143a055f9); @@ -23073,6 +23195,8 @@ impl ::core::fmt::Debug for ID2D1GeometryGroup { f.debug_tuple("ID2D1GeometryGroup").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1GeometryGroup {} +unsafe impl ::core::marker::Sync for ID2D1GeometryGroup {} unsafe impl ::windows::core::Interface for ID2D1GeometryGroup { type Vtable = ID2D1GeometryGroup_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906a6_12e2_11dc_9fed_001143a055f9); @@ -23142,6 +23266,8 @@ impl ::core::fmt::Debug for ID2D1GeometryRealization { f.debug_tuple("ID2D1GeometryRealization").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1GeometryRealization {} +unsafe impl ::core::marker::Sync for ID2D1GeometryRealization {} unsafe impl ::windows::core::Interface for ID2D1GeometryRealization { type Vtable = ID2D1GeometryRealization_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa16907d7_bc02_4801_99e8_8cf7f485f774); @@ -23275,6 +23401,10 @@ impl ::core::fmt::Debug for ID2D1GeometrySink { } } #[cfg(feature = "Win32_Graphics_Direct2D_Common")] +unsafe impl ::core::marker::Send for ID2D1GeometrySink {} +#[cfg(feature = "Win32_Graphics_Direct2D_Common")] +unsafe impl ::core::marker::Sync for ID2D1GeometrySink {} +#[cfg(feature = "Win32_Graphics_Direct2D_Common")] unsafe impl ::windows::core::Interface for ID2D1GeometrySink { type Vtable = ID2D1GeometrySink_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd9069f_12e2_11dc_9fed_001143a055f9); @@ -23367,6 +23497,8 @@ impl ::core::fmt::Debug for ID2D1GradientMesh { f.debug_tuple("ID2D1GradientMesh").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1GradientMesh {} +unsafe impl ::core::marker::Sync for ID2D1GradientMesh {} unsafe impl ::windows::core::Interface for ID2D1GradientMesh { type Vtable = ID2D1GradientMesh_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf292e401_c050_4cde_83d7_04962d3b23c2); @@ -23449,6 +23581,8 @@ impl ::core::fmt::Debug for ID2D1GradientStopCollection { f.debug_tuple("ID2D1GradientStopCollection").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1GradientStopCollection {} +unsafe impl ::core::marker::Sync for ID2D1GradientStopCollection {} unsafe impl ::windows::core::Interface for ID2D1GradientStopCollection { type Vtable = ID2D1GradientStopCollection_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906a7_12e2_11dc_9fed_001143a055f9); @@ -23565,6 +23699,8 @@ impl ::core::fmt::Debug for ID2D1GradientStopCollection1 { f.debug_tuple("ID2D1GradientStopCollection1").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1GradientStopCollection1 {} +unsafe impl ::core::marker::Sync for ID2D1GradientStopCollection1 {} unsafe impl ::windows::core::Interface for ID2D1GradientStopCollection1 { type Vtable = ID2D1GradientStopCollection1_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xae1572f4_5dd0_4777_998b_9279472ae63b); @@ -23986,6 +24122,8 @@ impl ::core::fmt::Debug for ID2D1HwndRenderTarget { f.debug_tuple("ID2D1HwndRenderTarget").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1HwndRenderTarget {} +unsafe impl ::core::marker::Sync for ID2D1HwndRenderTarget {} unsafe impl ::windows::core::Interface for ID2D1HwndRenderTarget { type Vtable = ID2D1HwndRenderTarget_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd90698_12e2_11dc_9fed_001143a055f9); @@ -24058,6 +24196,8 @@ impl ::core::fmt::Debug for ID2D1Image { f.debug_tuple("ID2D1Image").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Image {} +unsafe impl ::core::marker::Sync for ID2D1Image {} unsafe impl ::windows::core::Interface for ID2D1Image { type Vtable = ID2D1Image_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x65019f75_8da2_497c_b32c_dfa34e48ede6); @@ -24189,6 +24329,8 @@ impl ::core::fmt::Debug for ID2D1ImageBrush { f.debug_tuple("ID2D1ImageBrush").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1ImageBrush {} +unsafe impl ::core::marker::Sync for ID2D1ImageBrush {} unsafe impl ::windows::core::Interface for ID2D1ImageBrush { type Vtable = ID2D1ImageBrush_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfe9e984d_3f95_407c_b5db_cb94d4e8f87c); @@ -24292,6 +24434,8 @@ impl ::core::fmt::Debug for ID2D1ImageSource { f.debug_tuple("ID2D1ImageSource").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1ImageSource {} +unsafe impl ::core::marker::Sync for ID2D1ImageSource {} unsafe impl ::windows::core::Interface for ID2D1ImageSource { type Vtable = ID2D1ImageSource_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc9b664e5_74a1_4378_9ac2_eefc37a3f4d8); @@ -24414,6 +24558,8 @@ impl ::core::fmt::Debug for ID2D1ImageSourceFromWic { f.debug_tuple("ID2D1ImageSourceFromWic").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1ImageSourceFromWic {} +unsafe impl ::core::marker::Sync for ID2D1ImageSourceFromWic {} unsafe impl ::windows::core::Interface for ID2D1ImageSourceFromWic { type Vtable = ID2D1ImageSourceFromWic_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x77395441_1c8f_4555_8683_f50dab0fe792); @@ -24533,6 +24679,8 @@ impl ::core::fmt::Debug for ID2D1Ink { f.debug_tuple("ID2D1Ink").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Ink {} +unsafe impl ::core::marker::Sync for ID2D1Ink {} unsafe impl ::windows::core::Interface for ID2D1Ink { type Vtable = ID2D1Ink_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb499923b_7029_478f_a8b3_432c7c5f5312); @@ -24628,6 +24776,8 @@ impl ::core::fmt::Debug for ID2D1InkStyle { f.debug_tuple("ID2D1InkStyle").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1InkStyle {} +unsafe impl ::core::marker::Sync for ID2D1InkStyle {} unsafe impl ::windows::core::Interface for ID2D1InkStyle { type Vtable = ID2D1InkStyle_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbae8b344_23fc_4071_8cb5_d05d6f073848); @@ -24708,6 +24858,8 @@ impl ::core::fmt::Debug for ID2D1Layer { f.debug_tuple("ID2D1Layer").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Layer {} +unsafe impl ::core::marker::Sync for ID2D1Layer {} unsafe impl ::windows::core::Interface for ID2D1Layer { type Vtable = ID2D1Layer_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd9069b_12e2_11dc_9fed_001143a055f9); @@ -24833,6 +24985,8 @@ impl ::core::fmt::Debug for ID2D1LinearGradientBrush { f.debug_tuple("ID2D1LinearGradientBrush").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1LinearGradientBrush {} +unsafe impl ::core::marker::Sync for ID2D1LinearGradientBrush {} unsafe impl ::windows::core::Interface for ID2D1LinearGradientBrush { type Vtable = ID2D1LinearGradientBrush_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906ab_12e2_11dc_9fed_001143a055f9); @@ -24913,6 +25067,8 @@ impl ::core::fmt::Debug for ID2D1LookupTable3D { f.debug_tuple("ID2D1LookupTable3D").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1LookupTable3D {} +unsafe impl ::core::marker::Sync for ID2D1LookupTable3D {} unsafe impl ::windows::core::Interface for ID2D1LookupTable3D { type Vtable = ID2D1LookupTable3D_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x53dd9855_a3b0_4d5b_82e1_26e25c5e5797); @@ -24980,6 +25136,8 @@ impl ::core::fmt::Debug for ID2D1Mesh { f.debug_tuple("ID2D1Mesh").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Mesh {} +unsafe impl ::core::marker::Sync for ID2D1Mesh {} unsafe impl ::windows::core::Interface for ID2D1Mesh { type Vtable = ID2D1Mesh_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906c2_12e2_11dc_9fed_001143a055f9); @@ -25037,6 +25195,8 @@ impl ::core::fmt::Debug for ID2D1Multithread { f.debug_tuple("ID2D1Multithread").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Multithread {} +unsafe impl ::core::marker::Sync for ID2D1Multithread {} unsafe impl ::windows::core::Interface for ID2D1Multithread { type Vtable = ID2D1Multithread_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x31e6e7bc_e0ff_4d46_8c64_a0a8c41c15d3); @@ -25118,6 +25278,8 @@ impl ::core::fmt::Debug for ID2D1OffsetTransform { f.debug_tuple("ID2D1OffsetTransform").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1OffsetTransform {} +unsafe impl ::core::marker::Sync for ID2D1OffsetTransform {} unsafe impl ::windows::core::Interface for ID2D1OffsetTransform { type Vtable = ID2D1OffsetTransform_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3fe6adea_7643_4f53_bd14_a0ce63f24042); @@ -25324,6 +25486,8 @@ impl ::core::fmt::Debug for ID2D1PathGeometry { f.debug_tuple("ID2D1PathGeometry").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1PathGeometry {} +unsafe impl ::core::marker::Sync for ID2D1PathGeometry {} unsafe impl ::windows::core::Interface for ID2D1PathGeometry { type Vtable = ID2D1PathGeometry_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906a5_12e2_11dc_9fed_001143a055f9); @@ -25553,6 +25717,8 @@ impl ::core::fmt::Debug for ID2D1PathGeometry1 { f.debug_tuple("ID2D1PathGeometry1").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1PathGeometry1 {} +unsafe impl ::core::marker::Sync for ID2D1PathGeometry1 {} unsafe impl ::windows::core::Interface for ID2D1PathGeometry1 { type Vtable = ID2D1PathGeometry1_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x62baa2d2_ab54_41b7_b872_787e0106a421); @@ -25614,6 +25780,8 @@ impl ::core::fmt::Debug for ID2D1PrintControl { f.debug_tuple("ID2D1PrintControl").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1PrintControl {} +unsafe impl ::core::marker::Sync for ID2D1PrintControl {} unsafe impl ::windows::core::Interface for ID2D1PrintControl { type Vtable = ID2D1PrintControl_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2c1d867d_c290_41c8_ae7e_34a98702e9a5); @@ -25707,6 +25875,8 @@ impl ::core::fmt::Debug for ID2D1Properties { f.debug_tuple("ID2D1Properties").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Properties {} +unsafe impl ::core::marker::Sync for ID2D1Properties {} unsafe impl ::windows::core::Interface for ID2D1Properties { type Vtable = ID2D1Properties_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x483473d7_cd46_4f9d_9d3a_3112aa80159d); @@ -25851,6 +26021,8 @@ impl ::core::fmt::Debug for ID2D1RadialGradientBrush { f.debug_tuple("ID2D1RadialGradientBrush").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1RadialGradientBrush {} +unsafe impl ::core::marker::Sync for ID2D1RadialGradientBrush {} unsafe impl ::windows::core::Interface for ID2D1RadialGradientBrush { type Vtable = ID2D1RadialGradientBrush_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906ac_12e2_11dc_9fed_001143a055f9); @@ -26053,6 +26225,8 @@ impl ::core::fmt::Debug for ID2D1RectangleGeometry { f.debug_tuple("ID2D1RectangleGeometry").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1RectangleGeometry {} +unsafe impl ::core::marker::Sync for ID2D1RectangleGeometry {} unsafe impl ::windows::core::Interface for ID2D1RectangleGeometry { type Vtable = ID2D1RectangleGeometry_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906a2_12e2_11dc_9fed_001143a055f9); @@ -26119,6 +26293,8 @@ impl ::core::fmt::Debug for ID2D1RenderInfo { f.debug_tuple("ID2D1RenderInfo").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1RenderInfo {} +unsafe impl ::core::marker::Sync for ID2D1RenderInfo {} unsafe impl ::windows::core::Interface for ID2D1RenderInfo { type Vtable = ID2D1RenderInfo_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x519ae1bd_d19a_420d_b849_364f594776b7); @@ -26511,6 +26687,8 @@ impl ::core::fmt::Debug for ID2D1RenderTarget { f.debug_tuple("ID2D1RenderTarget").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1RenderTarget {} +unsafe impl ::core::marker::Sync for ID2D1RenderTarget {} unsafe impl ::windows::core::Interface for ID2D1RenderTarget { type Vtable = ID2D1RenderTarget_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd90694_12e2_11dc_9fed_001143a055f9); @@ -26711,6 +26889,8 @@ impl ::core::fmt::Debug for ID2D1Resource { f.debug_tuple("ID2D1Resource").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Resource {} +unsafe impl ::core::marker::Sync for ID2D1Resource {} unsafe impl ::windows::core::Interface for ID2D1Resource { type Vtable = ID2D1Resource_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd90691_12e2_11dc_9fed_001143a055f9); @@ -26760,6 +26940,8 @@ impl ::core::fmt::Debug for ID2D1ResourceTexture { f.debug_tuple("ID2D1ResourceTexture").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1ResourceTexture {} +unsafe impl ::core::marker::Sync for ID2D1ResourceTexture {} unsafe impl ::windows::core::Interface for ID2D1ResourceTexture { type Vtable = ID2D1ResourceTexture_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x688d15c3_02b0_438d_b13a_d1b44c32c39a); @@ -26942,6 +27124,8 @@ impl ::core::fmt::Debug for ID2D1RoundedRectangleGeometry { f.debug_tuple("ID2D1RoundedRectangleGeometry").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1RoundedRectangleGeometry {} +unsafe impl ::core::marker::Sync for ID2D1RoundedRectangleGeometry {} unsafe impl ::windows::core::Interface for ID2D1RoundedRectangleGeometry { type Vtable = ID2D1RoundedRectangleGeometry_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906a3_12e2_11dc_9fed_001143a055f9); @@ -27052,6 +27236,8 @@ impl ::core::fmt::Debug for ID2D1SolidColorBrush { f.debug_tuple("ID2D1SolidColorBrush").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1SolidColorBrush {} +unsafe impl ::core::marker::Sync for ID2D1SolidColorBrush {} unsafe impl ::windows::core::Interface for ID2D1SolidColorBrush { type Vtable = ID2D1SolidColorBrush_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906a9_12e2_11dc_9fed_001143a055f9); @@ -27168,6 +27354,8 @@ impl ::core::fmt::Debug for ID2D1SourceTransform { f.debug_tuple("ID2D1SourceTransform").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1SourceTransform {} +unsafe impl ::core::marker::Sync for ID2D1SourceTransform {} unsafe impl ::windows::core::Interface for ID2D1SourceTransform { type Vtable = ID2D1SourceTransform_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdb1800dd_0c34_4cf9_be90_31cc0a5653e1); @@ -27257,6 +27445,8 @@ impl ::core::fmt::Debug for ID2D1SpriteBatch { f.debug_tuple("ID2D1SpriteBatch").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1SpriteBatch {} +unsafe impl ::core::marker::Sync for ID2D1SpriteBatch {} unsafe impl ::windows::core::Interface for ID2D1SpriteBatch { type Vtable = ID2D1SpriteBatch_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4dc583bf_3a10_438a_8722_e9765224f1f1); @@ -27361,6 +27551,8 @@ impl ::core::fmt::Debug for ID2D1StrokeStyle { f.debug_tuple("ID2D1StrokeStyle").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1StrokeStyle {} +unsafe impl ::core::marker::Sync for ID2D1StrokeStyle {} unsafe impl ::windows::core::Interface for ID2D1StrokeStyle { type Vtable = ID2D1StrokeStyle_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd9069d_12e2_11dc_9fed_001143a055f9); @@ -27478,6 +27670,8 @@ impl ::core::fmt::Debug for ID2D1StrokeStyle1 { f.debug_tuple("ID2D1StrokeStyle1").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1StrokeStyle1 {} +unsafe impl ::core::marker::Sync for ID2D1StrokeStyle1 {} unsafe impl ::windows::core::Interface for ID2D1StrokeStyle1 { type Vtable = ID2D1StrokeStyle1_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x10a72a66_e91c_43f4_993f_ddf4b82b0b4a); @@ -27549,6 +27743,8 @@ impl ::core::fmt::Debug for ID2D1SvgAttribute { f.debug_tuple("ID2D1SvgAttribute").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1SvgAttribute {} +unsafe impl ::core::marker::Sync for ID2D1SvgAttribute {} unsafe impl ::windows::core::Interface for ID2D1SvgAttribute { type Vtable = ID2D1SvgAttribute_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc9cdb0dd_f8c9_4e70_b7c2_301c80292c5e); @@ -27683,6 +27879,8 @@ impl ::core::fmt::Debug for ID2D1SvgDocument { f.debug_tuple("ID2D1SvgDocument").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1SvgDocument {} +unsafe impl ::core::marker::Sync for ID2D1SvgDocument {} unsafe impl ::windows::core::Interface for ID2D1SvgDocument { type Vtable = ID2D1SvgDocument_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x86b88e4d_afa4_4d7b_88e4_68a51c4a0aec); @@ -27932,6 +28130,8 @@ impl ::core::fmt::Debug for ID2D1SvgElement { f.debug_tuple("ID2D1SvgElement").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1SvgElement {} +unsafe impl ::core::marker::Sync for ID2D1SvgElement {} unsafe impl ::windows::core::Interface for ID2D1SvgElement { type Vtable = ID2D1SvgElement_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xac7b67a6_183e_49c1_a823_0ebe40b0db29); @@ -28061,6 +28261,8 @@ impl ::core::fmt::Debug for ID2D1SvgGlyphStyle { f.debug_tuple("ID2D1SvgGlyphStyle").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1SvgGlyphStyle {} +unsafe impl ::core::marker::Sync for ID2D1SvgGlyphStyle {} unsafe impl ::windows::core::Interface for ID2D1SvgGlyphStyle { type Vtable = ID2D1SvgGlyphStyle_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xaf671749_d241_4db8_8e41_dcc2e5c1a438); @@ -28179,6 +28381,8 @@ impl ::core::fmt::Debug for ID2D1SvgPaint { f.debug_tuple("ID2D1SvgPaint").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1SvgPaint {} +unsafe impl ::core::marker::Sync for ID2D1SvgPaint {} unsafe impl ::windows::core::Interface for ID2D1SvgPaint { type Vtable = ID2D1SvgPaint_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd59bab0a_68a2_455b_a5dc_9eb2854e2490); @@ -28307,6 +28511,8 @@ impl ::core::fmt::Debug for ID2D1SvgPathData { f.debug_tuple("ID2D1SvgPathData").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1SvgPathData {} +unsafe impl ::core::marker::Sync for ID2D1SvgPathData {} unsafe impl ::windows::core::Interface for ID2D1SvgPathData { type Vtable = ID2D1SvgPathData_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc095e4f4_bb98_43d6_9745_4d1b84ec9888); @@ -28420,6 +28626,8 @@ impl ::core::fmt::Debug for ID2D1SvgPointCollection { f.debug_tuple("ID2D1SvgPointCollection").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1SvgPointCollection {} +unsafe impl ::core::marker::Sync for ID2D1SvgPointCollection {} unsafe impl ::windows::core::Interface for ID2D1SvgPointCollection { type Vtable = ID2D1SvgPointCollection_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9dbe4c0d_3572_4dd9_9825_5530813bb712); @@ -28533,6 +28741,8 @@ impl ::core::fmt::Debug for ID2D1SvgStrokeDashArray { f.debug_tuple("ID2D1SvgStrokeDashArray").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1SvgStrokeDashArray {} +unsafe impl ::core::marker::Sync for ID2D1SvgStrokeDashArray {} unsafe impl ::windows::core::Interface for ID2D1SvgStrokeDashArray { type Vtable = ID2D1SvgStrokeDashArray_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf1c0ca52_92a3_4f00_b4ce_f35691efd9d9); @@ -28592,6 +28802,8 @@ impl ::core::fmt::Debug for ID2D1TessellationSink { f.debug_tuple("ID2D1TessellationSink").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1TessellationSink {} +unsafe impl ::core::marker::Sync for ID2D1TessellationSink {} unsafe impl ::windows::core::Interface for ID2D1TessellationSink { type Vtable = ID2D1TessellationSink_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906c1_12e2_11dc_9fed_001143a055f9); @@ -28676,6 +28888,8 @@ impl ::core::fmt::Debug for ID2D1Transform { f.debug_tuple("ID2D1Transform").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1Transform {} +unsafe impl ::core::marker::Sync for ID2D1Transform {} unsafe impl ::windows::core::Interface for ID2D1Transform { type Vtable = ID2D1Transform_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xef1a287d_342a_4f76_8fdb_da0d6ea9f92b); @@ -28779,6 +28993,8 @@ impl ::core::fmt::Debug for ID2D1TransformGraph { f.debug_tuple("ID2D1TransformGraph").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1TransformGraph {} +unsafe impl ::core::marker::Sync for ID2D1TransformGraph {} unsafe impl ::windows::core::Interface for ID2D1TransformGraph { type Vtable = ID2D1TransformGraph_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x13d29038_c3e6_4034_9081_13b53a417992); @@ -28836,6 +29052,8 @@ impl ::core::fmt::Debug for ID2D1TransformNode { f.debug_tuple("ID2D1TransformNode").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1TransformNode {} +unsafe impl ::core::marker::Sync for ID2D1TransformNode {} unsafe impl ::windows::core::Interface for ID2D1TransformNode { type Vtable = ID2D1TransformNode_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb2efe1e7_729f_4102_949f_505fa21bf666); @@ -29021,6 +29239,8 @@ impl ::core::fmt::Debug for ID2D1TransformedGeometry { f.debug_tuple("ID2D1TransformedGeometry").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1TransformedGeometry {} +unsafe impl ::core::marker::Sync for ID2D1TransformedGeometry {} unsafe impl ::windows::core::Interface for ID2D1TransformedGeometry { type Vtable = ID2D1TransformedGeometry_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cd906bb_12e2_11dc_9fed_001143a055f9); @@ -29110,6 +29330,8 @@ impl ::core::fmt::Debug for ID2D1TransformedImageSource { f.debug_tuple("ID2D1TransformedImageSource").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1TransformedImageSource {} +unsafe impl ::core::marker::Sync for ID2D1TransformedImageSource {} unsafe impl ::windows::core::Interface for ID2D1TransformedImageSource { type Vtable = ID2D1TransformedImageSource_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7f1f79e5_2796_416c_8f55_700f911445e5); @@ -29163,6 +29385,8 @@ impl ::core::fmt::Debug for ID2D1VertexBuffer { f.debug_tuple("ID2D1VertexBuffer").field(&self.0).finish() } } +unsafe impl ::core::marker::Send for ID2D1VertexBuffer {} +unsafe impl ::core::marker::Sync for ID2D1VertexBuffer {} unsafe impl ::windows::core::Interface for ID2D1VertexBuffer { type Vtable = ID2D1VertexBuffer_Vtbl; const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9b8b1336_00a5_4668_92b7_ced5d8bf9b7b); @@ -29178,7 +29402,7 @@ pub struct ID2D1VertexBuffer_Vtbl { #[doc = "*Required features: `\"Win32_Graphics_Direct2D\"`, `\"Win32_Graphics_Direct2D_Common\"`*"] #[cfg(feature = "Win32_Graphics_Direct2D_Common")] pub struct Matrix4x3F { - pub __AnonymousBase_d2d1_1helper_L45_C31: Common::D2D_MATRIX_4X3_F, + pub Base: Common::D2D_MATRIX_4X3_F, } #[cfg(feature = "Win32_Graphics_Direct2D_Common")] impl ::core::marker::Copy for Matrix4x3F {} @@ -29210,7 +29434,7 @@ impl ::core::default::Default for Matrix4x3F { #[doc = "*Required features: `\"Win32_Graphics_Direct2D\"`, `\"Win32_Graphics_Direct2D_Common\"`*"] #[cfg(feature = "Win32_Graphics_Direct2D_Common")] pub struct Matrix4x4F { - pub __AnonymousBase_d2d1_1helper_L97_C31: Common::D2D_MATRIX_4X4_F, + pub Base: Common::D2D_MATRIX_4X4_F, } #[cfg(feature = "Win32_Graphics_Direct2D_Common")] impl ::core::marker::Copy for Matrix4x4F {} @@ -29242,7 +29466,7 @@ impl ::core::default::Default for Matrix4x4F { #[doc = "*Required features: `\"Win32_Graphics_Direct2D\"`, `\"Win32_Graphics_Direct2D_Common\"`*"] #[cfg(feature = "Win32_Graphics_Direct2D_Common")] pub struct Matrix5x4F { - pub __AnonymousBase_d2d1_1helper_L472_C31: Common::D2D_MATRIX_5X4_F, + pub Base: Common::D2D_MATRIX_5X4_F, } #[cfg(feature = "Win32_Graphics_Direct2D_Common")] impl ::core::marker::Copy for Matrix5x4F {} diff --git a/crates/libs/windows/src/Windows/Win32/Graphics/Direct3D11/impl.rs b/crates/libs/windows/src/Windows/Win32/Graphics/Direct3D11/impl.rs index 1fb89bccaf..e841b04f62 100644 --- a/crates/libs/windows/src/Windows/Win32/Graphics/Direct3D11/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/Graphics/Direct3D11/impl.rs @@ -4166,8 +4166,8 @@ pub trait ID3D11VideoContext_Impl: Sized + ID3D11DeviceChild_Impl { fn VideoProcessorGetStreamExtension(&self, pvideoprocessor: &::core::option::Option, streamindex: u32, pextensionguid: *const ::windows::core::GUID, datasize: u32, pdata: *mut ::core::ffi::c_void) -> i32; fn VideoProcessorBlt(&self, pvideoprocessor: &::core::option::Option, pview: &::core::option::Option, outputframe: u32, streamcount: u32, pstreams: *const D3D11_VIDEO_PROCESSOR_STREAM) -> ::windows::core::Result<()>; fn NegotiateCryptoSessionKeyExchange(&self, pcryptosession: &::core::option::Option, datasize: u32, pdata: *mut ::core::ffi::c_void) -> ::windows::core::Result<()>; - fn EncryptionBlt(&self, pcryptosession: &::core::option::Option, psrcsurface: &::core::option::Option, pdstsurface: &::core::option::Option, ivsize: u32, piv: *const ::core::ffi::c_void); - fn DecryptionBlt(&self, pcryptosession: &::core::option::Option, psrcsurface: &::core::option::Option, pdstsurface: &::core::option::Option, pencryptedblockinfo: *const D3D11_ENCRYPTED_BLOCK_INFO, contentkeysize: u32, pcontentkey: *const ::core::ffi::c_void, ivsize: u32, piv: *const ::core::ffi::c_void); + fn EncryptionBlt(&self, pcryptosession: &::core::option::Option, psrcsurface: &::core::option::Option, pdstsurface: &::core::option::Option, ivsize: u32, piv: *mut ::core::ffi::c_void); + fn DecryptionBlt(&self, pcryptosession: &::core::option::Option, psrcsurface: &::core::option::Option, pdstsurface: &::core::option::Option, pencryptedblockinfo: *const D3D11_ENCRYPTED_BLOCK_INFO, contentkeysize: u32, pcontentkey: *const ::core::ffi::c_void, ivsize: u32, piv: *mut ::core::ffi::c_void); fn StartSessionKeyRefresh(&self, pcryptosession: &::core::option::Option, randomnumbersize: u32, prandomnumber: *mut ::core::ffi::c_void); fn FinishSessionKeyRefresh(&self, pcryptosession: &::core::option::Option); fn GetEncryptionBltKey(&self, pcryptosession: &::core::option::Option, keysize: u32, preadbackkey: *mut ::core::ffi::c_void) -> ::windows::core::Result<()>; @@ -4422,12 +4422,12 @@ impl ID3D11VideoContext_Vtbl { let this = (*this).get_impl(); this.NegotiateCryptoSessionKeyExchange(::core::mem::transmute(&pcryptosession), ::core::mem::transmute_copy(&datasize), ::core::mem::transmute_copy(&pdata)).into() } - unsafe extern "system" fn EncryptionBlt, Impl: ID3D11VideoContext_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pcryptosession: *mut ::core::ffi::c_void, psrcsurface: *mut ::core::ffi::c_void, pdstsurface: *mut ::core::ffi::c_void, ivsize: u32, piv: *const ::core::ffi::c_void) { + unsafe extern "system" fn EncryptionBlt, Impl: ID3D11VideoContext_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pcryptosession: *mut ::core::ffi::c_void, psrcsurface: *mut ::core::ffi::c_void, pdstsurface: *mut ::core::ffi::c_void, ivsize: u32, piv: *mut ::core::ffi::c_void) { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.EncryptionBlt(::core::mem::transmute(&pcryptosession), ::core::mem::transmute(&psrcsurface), ::core::mem::transmute(&pdstsurface), ::core::mem::transmute_copy(&ivsize), ::core::mem::transmute_copy(&piv)) } - unsafe extern "system" fn DecryptionBlt, Impl: ID3D11VideoContext_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pcryptosession: *mut ::core::ffi::c_void, psrcsurface: *mut ::core::ffi::c_void, pdstsurface: *mut ::core::ffi::c_void, pencryptedblockinfo: *const D3D11_ENCRYPTED_BLOCK_INFO, contentkeysize: u32, pcontentkey: *const ::core::ffi::c_void, ivsize: u32, piv: *const ::core::ffi::c_void) { + unsafe extern "system" fn DecryptionBlt, Impl: ID3D11VideoContext_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pcryptosession: *mut ::core::ffi::c_void, psrcsurface: *mut ::core::ffi::c_void, pdstsurface: *mut ::core::ffi::c_void, pencryptedblockinfo: *const D3D11_ENCRYPTED_BLOCK_INFO, contentkeysize: u32, pcontentkey: *const ::core::ffi::c_void, ivsize: u32, piv: *mut ::core::ffi::c_void) { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.DecryptionBlt(::core::mem::transmute(&pcryptosession), ::core::mem::transmute(&psrcsurface), ::core::mem::transmute(&pdstsurface), ::core::mem::transmute_copy(&pencryptedblockinfo), ::core::mem::transmute_copy(&contentkeysize), ::core::mem::transmute_copy(&pcontentkey), ::core::mem::transmute_copy(&ivsize), ::core::mem::transmute_copy(&piv)) diff --git a/crates/libs/windows/src/Windows/Win32/Graphics/Direct3D11/mod.rs b/crates/libs/windows/src/Windows/Win32/Graphics/Direct3D11/mod.rs index 9a9c22b3d8..88b62aab74 100644 --- a/crates/libs/windows/src/Windows/Win32/Graphics/Direct3D11/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Graphics/Direct3D11/mod.rs @@ -1681,9 +1681,9 @@ impl ::core::fmt::Debug for D3D11_BUFFEREX_SRV_FLAG { pub struct D3D11_BUFFER_DESC { pub ByteWidth: u32, pub Usage: D3D11_USAGE, - pub BindFlags: u32, - pub CPUAccessFlags: u32, - pub MiscFlags: u32, + pub BindFlags: D3D11_BIND_FLAG, + pub CPUAccessFlags: D3D11_CPU_ACCESS_FLAG, + pub MiscFlags: D3D11_RESOURCE_MISC_FLAG, pub StructureByteStride: u32, } impl ::core::marker::Copy for D3D11_BUFFER_DESC {} @@ -11830,9 +11830,9 @@ pub struct D3D11_TEXTURE1D_DESC { pub ArraySize: u32, pub Format: super::Dxgi::Common::DXGI_FORMAT, pub Usage: D3D11_USAGE, - pub BindFlags: u32, - pub CPUAccessFlags: u32, - pub MiscFlags: u32, + pub BindFlags: D3D11_BIND_FLAG, + pub CPUAccessFlags: D3D11_CPU_ACCESS_FLAG, + pub MiscFlags: D3D11_RESOURCE_MISC_FLAG, } #[cfg(feature = "Win32_Graphics_Dxgi_Common")] impl ::core::marker::Copy for D3D11_TEXTURE1D_DESC {} @@ -11924,9 +11924,9 @@ pub struct D3D11_TEXTURE2D_DESC1 { pub Format: super::Dxgi::Common::DXGI_FORMAT, pub SampleDesc: super::Dxgi::Common::DXGI_SAMPLE_DESC, pub Usage: D3D11_USAGE, - pub BindFlags: u32, - pub CPUAccessFlags: u32, - pub MiscFlags: u32, + pub BindFlags: D3D11_BIND_FLAG, + pub CPUAccessFlags: D3D11_CPU_ACCESS_FLAG, + pub MiscFlags: D3D11_RESOURCE_MISC_FLAG, pub TextureLayout: D3D11_TEXTURE_LAYOUT, } #[cfg(feature = "Win32_Graphics_Dxgi_Common")] @@ -11971,9 +11971,9 @@ pub struct D3D11_TEXTURE3D_DESC { pub MipLevels: u32, pub Format: super::Dxgi::Common::DXGI_FORMAT, pub Usage: D3D11_USAGE, - pub BindFlags: u32, - pub CPUAccessFlags: u32, - pub MiscFlags: u32, + pub BindFlags: D3D11_BIND_FLAG, + pub CPUAccessFlags: D3D11_CPU_ACCESS_FLAG, + pub MiscFlags: D3D11_RESOURCE_MISC_FLAG, } #[cfg(feature = "Win32_Graphics_Dxgi_Common")] impl ::core::marker::Copy for D3D11_TEXTURE3D_DESC {} @@ -12017,9 +12017,9 @@ pub struct D3D11_TEXTURE3D_DESC1 { pub MipLevels: u32, pub Format: super::Dxgi::Common::DXGI_FORMAT, pub Usage: D3D11_USAGE, - pub BindFlags: u32, - pub CPUAccessFlags: u32, - pub MiscFlags: u32, + pub BindFlags: D3D11_BIND_FLAG, + pub CPUAccessFlags: D3D11_CPU_ACCESS_FLAG, + pub MiscFlags: D3D11_RESOURCE_MISC_FLAG, pub TextureLayout: D3D11_TEXTURE_LAYOUT, } #[cfg(feature = "Win32_Graphics_Dxgi_Common")] @@ -27628,7 +27628,7 @@ impl ID3D11VideoContext { { (::windows::core::Interface::vtable(self).NegotiateCryptoSessionKeyExchange)(::windows::core::Interface::as_raw(self), pcryptosession.into().abi(), pdata.len() as _, ::core::mem::transmute(pdata.as_ptr())).ok() } - pub unsafe fn EncryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, piv: ::core::option::Option<&[u8]>) + pub unsafe fn EncryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, piv: ::core::option::Option<&mut [u8]>) where P0: ::std::convert::Into<::windows::core::InParam<'a, ID3D11CryptoSession>>, P1: ::std::convert::Into<::windows::core::InParam<'a, ID3D11Texture2D>>, @@ -27636,7 +27636,7 @@ impl ID3D11VideoContext { { (::windows::core::Interface::vtable(self).EncryptionBlt)(::windows::core::Interface::as_raw(self), pcryptosession.into().abi(), psrcsurface.into().abi(), pdstsurface.into().abi(), piv.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(piv.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr()))) } - pub unsafe fn DecryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, pencryptedblockinfo: ::core::option::Option<&D3D11_ENCRYPTED_BLOCK_INFO>, pcontentkey: ::core::option::Option<&[u8]>, piv: ::core::option::Option<&[u8]>) + pub unsafe fn DecryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, pencryptedblockinfo: ::core::option::Option<&D3D11_ENCRYPTED_BLOCK_INFO>, pcontentkey: ::core::option::Option<&[u8]>, piv: ::core::option::Option<&mut [u8]>) where P0: ::std::convert::Into<::windows::core::InParam<'a, ID3D11CryptoSession>>, P1: ::std::convert::Into<::windows::core::InParam<'a, ID3D11Texture2D>>, @@ -27889,8 +27889,8 @@ pub struct ID3D11VideoContext_Vtbl { #[cfg(not(feature = "Win32_Foundation"))] VideoProcessorBlt: usize, pub NegotiateCryptoSessionKeyExchange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcryptosession: *mut ::core::ffi::c_void, datasize: u32, pdata: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, - pub EncryptionBlt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcryptosession: *mut ::core::ffi::c_void, psrcsurface: *mut ::core::ffi::c_void, pdstsurface: *mut ::core::ffi::c_void, ivsize: u32, piv: *const ::core::ffi::c_void), - pub DecryptionBlt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcryptosession: *mut ::core::ffi::c_void, psrcsurface: *mut ::core::ffi::c_void, pdstsurface: *mut ::core::ffi::c_void, pencryptedblockinfo: *const D3D11_ENCRYPTED_BLOCK_INFO, contentkeysize: u32, pcontentkey: *const ::core::ffi::c_void, ivsize: u32, piv: *const ::core::ffi::c_void), + pub EncryptionBlt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcryptosession: *mut ::core::ffi::c_void, psrcsurface: *mut ::core::ffi::c_void, pdstsurface: *mut ::core::ffi::c_void, ivsize: u32, piv: *mut ::core::ffi::c_void), + pub DecryptionBlt: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcryptosession: *mut ::core::ffi::c_void, psrcsurface: *mut ::core::ffi::c_void, pdstsurface: *mut ::core::ffi::c_void, pencryptedblockinfo: *const D3D11_ENCRYPTED_BLOCK_INFO, contentkeysize: u32, pcontentkey: *const ::core::ffi::c_void, ivsize: u32, piv: *mut ::core::ffi::c_void), pub StartSessionKeyRefresh: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcryptosession: *mut ::core::ffi::c_void, randomnumbersize: u32, prandomnumber: *mut ::core::ffi::c_void), pub FinishSessionKeyRefresh: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcryptosession: *mut ::core::ffi::c_void), pub GetEncryptionBltKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcryptosession: *mut ::core::ffi::c_void, keysize: u32, preadbackkey: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, @@ -28289,7 +28289,7 @@ impl ID3D11VideoContext1 { { (::windows::core::Interface::vtable(self).base__.NegotiateCryptoSessionKeyExchange)(::windows::core::Interface::as_raw(self), pcryptosession.into().abi(), pdata.len() as _, ::core::mem::transmute(pdata.as_ptr())).ok() } - pub unsafe fn EncryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, piv: ::core::option::Option<&[u8]>) + pub unsafe fn EncryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, piv: ::core::option::Option<&mut [u8]>) where P0: ::std::convert::Into<::windows::core::InParam<'a, ID3D11CryptoSession>>, P1: ::std::convert::Into<::windows::core::InParam<'a, ID3D11Texture2D>>, @@ -28297,7 +28297,7 @@ impl ID3D11VideoContext1 { { (::windows::core::Interface::vtable(self).base__.EncryptionBlt)(::windows::core::Interface::as_raw(self), pcryptosession.into().abi(), psrcsurface.into().abi(), pdstsurface.into().abi(), piv.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(piv.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr()))) } - pub unsafe fn DecryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, pencryptedblockinfo: ::core::option::Option<&D3D11_ENCRYPTED_BLOCK_INFO>, pcontentkey: ::core::option::Option<&[u8]>, piv: ::core::option::Option<&[u8]>) + pub unsafe fn DecryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, pencryptedblockinfo: ::core::option::Option<&D3D11_ENCRYPTED_BLOCK_INFO>, pcontentkey: ::core::option::Option<&[u8]>, piv: ::core::option::Option<&mut [u8]>) where P0: ::std::convert::Into<::windows::core::InParam<'a, ID3D11CryptoSession>>, P1: ::std::convert::Into<::windows::core::InParam<'a, ID3D11Texture2D>>, @@ -28974,7 +28974,7 @@ impl ID3D11VideoContext2 { { (::windows::core::Interface::vtable(self).base__.base__.NegotiateCryptoSessionKeyExchange)(::windows::core::Interface::as_raw(self), pcryptosession.into().abi(), pdata.len() as _, ::core::mem::transmute(pdata.as_ptr())).ok() } - pub unsafe fn EncryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, piv: ::core::option::Option<&[u8]>) + pub unsafe fn EncryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, piv: ::core::option::Option<&mut [u8]>) where P0: ::std::convert::Into<::windows::core::InParam<'a, ID3D11CryptoSession>>, P1: ::std::convert::Into<::windows::core::InParam<'a, ID3D11Texture2D>>, @@ -28982,7 +28982,7 @@ impl ID3D11VideoContext2 { { (::windows::core::Interface::vtable(self).base__.base__.EncryptionBlt)(::windows::core::Interface::as_raw(self), pcryptosession.into().abi(), psrcsurface.into().abi(), pdstsurface.into().abi(), piv.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(piv.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr()))) } - pub unsafe fn DecryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, pencryptedblockinfo: ::core::option::Option<&D3D11_ENCRYPTED_BLOCK_INFO>, pcontentkey: ::core::option::Option<&[u8]>, piv: ::core::option::Option<&[u8]>) + pub unsafe fn DecryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, pencryptedblockinfo: ::core::option::Option<&D3D11_ENCRYPTED_BLOCK_INFO>, pcontentkey: ::core::option::Option<&[u8]>, piv: ::core::option::Option<&mut [u8]>) where P0: ::std::convert::Into<::windows::core::InParam<'a, ID3D11CryptoSession>>, P1: ::std::convert::Into<::windows::core::InParam<'a, ID3D11Texture2D>>, @@ -29675,7 +29675,7 @@ impl ID3D11VideoContext3 { { (::windows::core::Interface::vtable(self).base__.base__.base__.NegotiateCryptoSessionKeyExchange)(::windows::core::Interface::as_raw(self), pcryptosession.into().abi(), pdata.len() as _, ::core::mem::transmute(pdata.as_ptr())).ok() } - pub unsafe fn EncryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, piv: ::core::option::Option<&[u8]>) + pub unsafe fn EncryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, piv: ::core::option::Option<&mut [u8]>) where P0: ::std::convert::Into<::windows::core::InParam<'a, ID3D11CryptoSession>>, P1: ::std::convert::Into<::windows::core::InParam<'a, ID3D11Texture2D>>, @@ -29683,7 +29683,7 @@ impl ID3D11VideoContext3 { { (::windows::core::Interface::vtable(self).base__.base__.base__.EncryptionBlt)(::windows::core::Interface::as_raw(self), pcryptosession.into().abi(), psrcsurface.into().abi(), pdstsurface.into().abi(), piv.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(piv.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr()))) } - pub unsafe fn DecryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, pencryptedblockinfo: ::core::option::Option<&D3D11_ENCRYPTED_BLOCK_INFO>, pcontentkey: ::core::option::Option<&[u8]>, piv: ::core::option::Option<&[u8]>) + pub unsafe fn DecryptionBlt<'a, P0, P1, P2>(&self, pcryptosession: P0, psrcsurface: P1, pdstsurface: P2, pencryptedblockinfo: ::core::option::Option<&D3D11_ENCRYPTED_BLOCK_INFO>, pcontentkey: ::core::option::Option<&[u8]>, piv: ::core::option::Option<&mut [u8]>) where P0: ::std::convert::Into<::windows::core::InParam<'a, ID3D11CryptoSession>>, P1: ::std::convert::Into<::windows::core::InParam<'a, ID3D11Texture2D>>, diff --git a/crates/libs/windows/src/Windows/Win32/Graphics/Direct3D9/mod.rs b/crates/libs/windows/src/Windows/Win32/Graphics/Direct3D9/mod.rs index 1366d9f8ff..c13deb98c4 100644 --- a/crates/libs/windows/src/Windows/Win32/Graphics/Direct3D9/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Graphics/Direct3D9/mod.rs @@ -5811,6 +5811,14 @@ pub const D3DTS_TEXTURE6: D3DTRANSFORMSTATETYPE = D3DTRANSFORMSTATETYPE(22i32); pub const D3DTS_TEXTURE7: D3DTRANSFORMSTATETYPE = D3DTRANSFORMSTATETYPE(23i32); #[doc = "*Required features: `\"Win32_Graphics_Direct3D9\"`*"] pub const D3DTS_FORCE_DWORD: D3DTRANSFORMSTATETYPE = D3DTRANSFORMSTATETYPE(2147483647i32); +#[doc = "*Required features: `\"Win32_Graphics_Direct3D9\"`*"] +pub const D3DTS_WORLD: D3DTRANSFORMSTATETYPE = D3DTRANSFORMSTATETYPE(256i32); +#[doc = "*Required features: `\"Win32_Graphics_Direct3D9\"`*"] +pub const D3DTS_WORLD1: D3DTRANSFORMSTATETYPE = D3DTRANSFORMSTATETYPE(257i32); +#[doc = "*Required features: `\"Win32_Graphics_Direct3D9\"`*"] +pub const D3DTS_WORLD2: D3DTRANSFORMSTATETYPE = D3DTRANSFORMSTATETYPE(258i32); +#[doc = "*Required features: `\"Win32_Graphics_Direct3D9\"`*"] +pub const D3DTS_WORLD3: D3DTRANSFORMSTATETYPE = D3DTRANSFORMSTATETYPE(259i32); impl ::core::marker::Copy for D3DTRANSFORMSTATETYPE {} impl ::core::clone::Clone for D3DTRANSFORMSTATETYPE { fn clone(&self) -> Self { diff --git a/crates/libs/windows/src/Windows/Win32/Graphics/DirectWrite/impl.rs b/crates/libs/windows/src/Windows/Win32/Graphics/DirectWrite/impl.rs index c048d0ca26..347a7cdd39 100644 --- a/crates/libs/windows/src/Windows/Win32/Graphics/DirectWrite/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/Graphics/DirectWrite/impl.rs @@ -30,7 +30,7 @@ impl IDWriteAsyncResult_Vtbl { } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub trait IDWriteBitmapRenderTarget_Impl: Sized { - fn DrawGlyphRun(&self, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: *const DWRITE_GLYPH_RUN, renderingparams: &::core::option::Option, textcolor: u32) -> ::windows::core::Result; + fn DrawGlyphRun(&self, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: *const DWRITE_GLYPH_RUN, renderingparams: &::core::option::Option, textcolor: super::super::Foundation::COLORREF) -> ::windows::core::Result; fn GetMemoryDC(&self) -> super::Gdi::HDC; fn GetPixelsPerDip(&self) -> f32; fn SetPixelsPerDip(&self, pixelsperdip: f32) -> ::windows::core::Result<()>; @@ -44,7 +44,7 @@ impl ::windows::core::RuntimeName for IDWriteBitmapRenderTarget {} #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl IDWriteBitmapRenderTarget_Vtbl { pub const fn new, Impl: IDWriteBitmapRenderTarget_Impl, const OFFSET: isize>() -> IDWriteBitmapRenderTarget_Vtbl { - unsafe extern "system" fn DrawGlyphRun, Impl: IDWriteBitmapRenderTarget_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: *const DWRITE_GLYPH_RUN, renderingparams: *mut ::core::ffi::c_void, textcolor: u32, blackboxrect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT { + unsafe extern "system" fn DrawGlyphRun, Impl: IDWriteBitmapRenderTarget_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: *const DWRITE_GLYPH_RUN, renderingparams: *mut ::core::ffi::c_void, textcolor: super::super::Foundation::COLORREF, blackboxrect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.DrawGlyphRun(::core::mem::transmute_copy(&baselineoriginx), ::core::mem::transmute_copy(&baselineoriginy), ::core::mem::transmute_copy(&measuringmode), ::core::mem::transmute_copy(&glyphrun), ::core::mem::transmute(&renderingparams), ::core::mem::transmute_copy(&textcolor)) { diff --git a/crates/libs/windows/src/Windows/Win32/Graphics/DirectWrite/mod.rs b/crates/libs/windows/src/Windows/Win32/Graphics/DirectWrite/mod.rs index 419da50395..fbf56c92ae 100644 --- a/crates/libs/windows/src/Windows/Win32/Graphics/DirectWrite/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Graphics/DirectWrite/mod.rs @@ -999,7 +999,7 @@ impl ::core::default::Default for DWRITE_FONT_METRICS { #[doc = "*Required features: `\"Win32_Graphics_DirectWrite\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct DWRITE_FONT_METRICS1 { - pub __AnonymousBase_DWrite_1_L627_C38: DWRITE_FONT_METRICS, + pub Base: DWRITE_FONT_METRICS, pub glyphBoxLeft: i16, pub glyphBoxTop: i16, pub glyphBoxRight: i16, @@ -1026,7 +1026,7 @@ impl ::core::clone::Clone for DWRITE_FONT_METRICS1 { impl ::core::fmt::Debug for DWRITE_FONT_METRICS1 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("DWRITE_FONT_METRICS1") - .field("__AnonymousBase_DWrite_1_L627_C38", &self.__AnonymousBase_DWrite_1_L627_C38) + .field("Base", &self.Base) .field("glyphBoxLeft", &self.glyphBoxLeft) .field("glyphBoxTop", &self.glyphBoxTop) .field("glyphBoxRight", &self.glyphBoxRight) @@ -4486,12 +4486,13 @@ pub struct IDWriteBitmapRenderTarget(::windows::core::IUnknown); impl IDWriteBitmapRenderTarget { #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub unsafe fn DrawGlyphRun<'a, P0>(&self, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: &DWRITE_GLYPH_RUN, renderingparams: P0, textcolor: u32) -> ::windows::core::Result + pub unsafe fn DrawGlyphRun<'a, P0, P1>(&self, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: &DWRITE_GLYPH_RUN, renderingparams: P0, textcolor: P1) -> ::windows::core::Result where P0: ::std::convert::Into<::windows::core::InParam<'a, IDWriteRenderingParams>>, + P1: ::std::convert::Into, { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).DrawGlyphRun)(::windows::core::Interface::as_raw(self), baselineoriginx, baselineoriginy, measuringmode, ::core::mem::transmute(glyphrun), renderingparams.into().abi(), textcolor, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).DrawGlyphRun)(::windows::core::Interface::as_raw(self), baselineoriginx, baselineoriginy, measuringmode, ::core::mem::transmute(glyphrun), renderingparams.into().abi(), textcolor.into(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] @@ -4561,7 +4562,7 @@ unsafe impl ::windows::core::Interface for IDWriteBitmapRenderTarget { pub struct IDWriteBitmapRenderTarget_Vtbl { pub base__: ::windows::core::IUnknownVtbl, #[cfg(feature = "Win32_Foundation")] - pub DrawGlyphRun: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: *const DWRITE_GLYPH_RUN, renderingparams: *mut ::core::ffi::c_void, textcolor: u32, blackboxrect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT, + pub DrawGlyphRun: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: *const DWRITE_GLYPH_RUN, renderingparams: *mut ::core::ffi::c_void, textcolor: super::super::Foundation::COLORREF, blackboxrect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] DrawGlyphRun: usize, #[cfg(feature = "Win32_Graphics_Gdi")] @@ -4584,12 +4585,13 @@ pub struct IDWriteBitmapRenderTarget1(::windows::core::IUnknown); impl IDWriteBitmapRenderTarget1 { #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub unsafe fn DrawGlyphRun<'a, P0>(&self, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: &DWRITE_GLYPH_RUN, renderingparams: P0, textcolor: u32) -> ::windows::core::Result + pub unsafe fn DrawGlyphRun<'a, P0, P1>(&self, baselineoriginx: f32, baselineoriginy: f32, measuringmode: DWRITE_MEASURING_MODE, glyphrun: &DWRITE_GLYPH_RUN, renderingparams: P0, textcolor: P1) -> ::windows::core::Result where P0: ::std::convert::Into<::windows::core::InParam<'a, IDWriteRenderingParams>>, + P1: ::std::convert::Into, { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).base__.DrawGlyphRun)(::windows::core::Interface::as_raw(self), baselineoriginx, baselineoriginy, measuringmode, ::core::mem::transmute(glyphrun), renderingparams.into().abi(), textcolor, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).base__.DrawGlyphRun)(::windows::core::Interface::as_raw(self), baselineoriginx, baselineoriginy, measuringmode, ::core::mem::transmute(glyphrun), renderingparams.into().abi(), textcolor.into(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] diff --git a/crates/libs/windows/src/Windows/Win32/Graphics/Dxgi/impl.rs b/crates/libs/windows/src/Windows/Win32/Graphics/Dxgi/impl.rs index 79bfc66368..957a56e27c 100644 --- a/crates/libs/windows/src/Windows/Win32/Graphics/Dxgi/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/Graphics/Dxgi/impl.rs @@ -454,7 +454,7 @@ impl IDXGIDevice1_Vtbl { #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Dxgi_Common"))] pub trait IDXGIDevice2_Impl: Sized + IDXGIObject_Impl + IDXGIDevice_Impl + IDXGIDevice1_Impl { fn OfferResources(&self, numresources: u32, ppresources: *const ::core::option::Option, priority: DXGI_OFFER_RESOURCE_PRIORITY) -> ::windows::core::Result<()>; - fn ReclaimResources(&self, numresources: u32, ppresources: *const ::core::option::Option) -> ::windows::core::Result; + fn ReclaimResources(&self, numresources: u32, ppresources: *const ::core::option::Option, pdiscarded: *mut super::super::Foundation::BOOL) -> ::windows::core::Result<()>; fn EnqueueSetEvent(&self, hevent: super::super::Foundation::HANDLE) -> ::windows::core::Result<()>; } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Dxgi_Common"))] @@ -470,13 +470,7 @@ impl IDXGIDevice2_Vtbl { unsafe extern "system" fn ReclaimResources, Impl: IDXGIDevice2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, numresources: u32, ppresources: *const *mut ::core::ffi::c_void, pdiscarded: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); - match this.ReclaimResources(::core::mem::transmute_copy(&numresources), ::core::mem::transmute_copy(&ppresources)) { - ::core::result::Result::Ok(ok__) => { - ::core::ptr::write(pdiscarded, ::core::mem::transmute(ok__)); - ::windows::core::HRESULT(0) - } - ::core::result::Result::Err(err) => err.into(), - } + this.ReclaimResources(::core::mem::transmute_copy(&numresources), ::core::mem::transmute_copy(&ppresources), ::core::mem::transmute_copy(&pdiscarded)).into() } unsafe extern "system" fn EnqueueSetEvent, Impl: IDXGIDevice2_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hevent: super::super::Foundation::HANDLE) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; @@ -517,7 +511,7 @@ impl IDXGIDevice3_Vtbl { #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Dxgi_Common"))] pub trait IDXGIDevice4_Impl: Sized + IDXGIObject_Impl + IDXGIDevice_Impl + IDXGIDevice1_Impl + IDXGIDevice2_Impl + IDXGIDevice3_Impl { fn OfferResources1(&self, numresources: u32, ppresources: *const ::core::option::Option, priority: DXGI_OFFER_RESOURCE_PRIORITY, flags: u32) -> ::windows::core::Result<()>; - fn ReclaimResources1(&self, numresources: u32, ppresources: *const ::core::option::Option) -> ::windows::core::Result; + fn ReclaimResources1(&self, numresources: u32, ppresources: *const ::core::option::Option, presults: *mut DXGI_RECLAIM_RESOURCE_RESULTS) -> ::windows::core::Result<()>; } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Dxgi_Common"))] impl ::windows::core::RuntimeName for IDXGIDevice4 {} @@ -532,13 +526,7 @@ impl IDXGIDevice4_Vtbl { unsafe extern "system" fn ReclaimResources1, Impl: IDXGIDevice4_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, numresources: u32, ppresources: *const *mut ::core::ffi::c_void, presults: *mut DXGI_RECLAIM_RESOURCE_RESULTS) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); - match this.ReclaimResources1(::core::mem::transmute_copy(&numresources), ::core::mem::transmute_copy(&ppresources)) { - ::core::result::Result::Ok(ok__) => { - ::core::ptr::write(presults, ::core::mem::transmute(ok__)); - ::windows::core::HRESULT(0) - } - ::core::result::Result::Err(err) => err.into(), - } + this.ReclaimResources1(::core::mem::transmute_copy(&numresources), ::core::mem::transmute_copy(&ppresources), ::core::mem::transmute_copy(&presults)).into() } Self { base__: IDXGIDevice3_Vtbl::new::(), diff --git a/crates/libs/windows/src/Windows/Win32/Graphics/Dxgi/mod.rs b/crates/libs/windows/src/Windows/Win32/Graphics/Dxgi/mod.rs index 83351f73d0..70451df1c8 100644 --- a/crates/libs/windows/src/Windows/Win32/Graphics/Dxgi/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Graphics/Dxgi/mod.rs @@ -4360,9 +4360,8 @@ impl IDXGIDevice2 { } #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub unsafe fn ReclaimResources(&self, ppresources: &[::core::option::Option]) -> ::windows::core::Result { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).ReclaimResources)(::windows::core::Interface::as_raw(self), ppresources.len() as _, ::core::mem::transmute(ppresources.as_ptr()), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + pub unsafe fn ReclaimResources(&self, numresources: u32, ppresources: *const ::core::option::Option, pdiscarded: *mut super::super::Foundation::BOOL) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).ReclaimResources)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(numresources), ::core::mem::transmute(ppresources), ::core::mem::transmute(pdiscarded)).ok() } #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -4521,9 +4520,8 @@ impl IDXGIDevice3 { } #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub unsafe fn ReclaimResources(&self, ppresources: &[::core::option::Option]) -> ::windows::core::Result { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).base__.ReclaimResources)(::windows::core::Interface::as_raw(self), ppresources.len() as _, ::core::mem::transmute(ppresources.as_ptr()), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + pub unsafe fn ReclaimResources(&self, numresources: u32, ppresources: *const ::core::option::Option, pdiscarded: *mut super::super::Foundation::BOOL) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).base__.ReclaimResources)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(numresources), ::core::mem::transmute(ppresources), ::core::mem::transmute(pdiscarded)).ok() } #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -4692,9 +4690,8 @@ impl IDXGIDevice4 { } #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub unsafe fn ReclaimResources(&self, ppresources: &[::core::option::Option]) -> ::windows::core::Result { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).base__.base__.ReclaimResources)(::windows::core::Interface::as_raw(self), ppresources.len() as _, ::core::mem::transmute(ppresources.as_ptr()), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + pub unsafe fn ReclaimResources(&self, numresources: u32, ppresources: *const ::core::option::Option, pdiscarded: *mut super::super::Foundation::BOOL) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).base__.base__.ReclaimResources)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(numresources), ::core::mem::transmute(ppresources), ::core::mem::transmute(pdiscarded)).ok() } #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -4710,9 +4707,8 @@ impl IDXGIDevice4 { pub unsafe fn OfferResources1(&self, ppresources: &[::core::option::Option], priority: DXGI_OFFER_RESOURCE_PRIORITY, flags: u32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).OfferResources1)(::windows::core::Interface::as_raw(self), ppresources.len() as _, ::core::mem::transmute(ppresources.as_ptr()), priority, flags).ok() } - pub unsafe fn ReclaimResources1(&self, ppresources: &[::core::option::Option]) -> ::windows::core::Result { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).ReclaimResources1)(::windows::core::Interface::as_raw(self), ppresources.len() as _, ::core::mem::transmute(ppresources.as_ptr()), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + pub unsafe fn ReclaimResources1(&self, numresources: u32, ppresources: *const ::core::option::Option, presults: *mut DXGI_RECLAIM_RESOURCE_RESULTS) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).ReclaimResources1)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(numresources), ::core::mem::transmute(ppresources), ::core::mem::transmute(presults)).ok() } } impl ::core::convert::From for ::windows::core::IUnknown { diff --git a/crates/libs/windows/src/Windows/Win32/Graphics/Gdi/mod.rs b/crates/libs/windows/src/Windows/Win32/Graphics/Gdi/mod.rs index 8d47700d39..d8673a1f27 100644 --- a/crates/libs/windows/src/Windows/Win32/Graphics/Gdi/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Graphics/Gdi/mod.rs @@ -101,10 +101,6 @@ pub const AC_SRC_ALPHA: u32 = 1u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const AC_SRC_OVER: u32 = 0u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const ANSI_CHARSET: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const ARABIC_CHARSET: u32 = 178u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct ARC_DIRECTION(pub u32); @@ -426,8 +422,6 @@ impl ::core::fmt::Debug for BACKGROUND_MODE { } } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BALTIC_CHARSET: u32 = 186u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const BANDINFO: u32 = 24u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const BEGIN_PATH: u32 = 4096u32; @@ -600,7 +594,7 @@ pub struct BITMAPINFOHEADER { pub biHeight: i32, pub biPlanes: u16, pub biBitCount: u16, - pub biCompression: u32, + pub biCompression: BI_COMPRESSION, pub biSizeImage: u32, pub biXPelsPerMeter: i32, pub biYPelsPerMeter: i32, @@ -640,7 +634,7 @@ pub struct BITMAPV4HEADER { pub bV4Height: i32, pub bV4Planes: u16, pub bV4BitCount: u16, - pub bV4V4Compression: u32, + pub bV4V4Compression: BI_COMPRESSION, pub bV4SizeImage: u32, pub bV4XPelsPerMeter: i32, pub bV4YPelsPerMeter: i32, @@ -710,7 +704,7 @@ pub struct BITMAPV5HEADER { pub bV5Height: i32, pub bV5Planes: u16, pub bV5BitCount: u16, - pub bV5Compression: u32, + pub bV5Compression: BI_COMPRESSION, pub bV5SizeImage: u32, pub bV5XPelsPerMeter: i32, pub bV5YPelsPerMeter: i32, @@ -781,17 +775,40 @@ impl ::core::default::Default for BITMAPV5HEADER { } } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BI_BITFIELDS: i32 = 3i32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BI_COMPRESSION(pub i32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const BI_RGB: BI_COMPRESSION = BI_COMPRESSION(0i32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BI_JPEG: i32 = 4i32; +pub const BI_RLE8: BI_COMPRESSION = BI_COMPRESSION(1i32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BI_PNG: i32 = 5i32; +pub const BI_RLE4: BI_COMPRESSION = BI_COMPRESSION(2i32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BI_RGB: i32 = 0i32; +pub const BI_BITFIELDS: BI_COMPRESSION = BI_COMPRESSION(3i32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BI_RLE4: i32 = 2i32; +pub const BI_JPEG: BI_COMPRESSION = BI_COMPRESSION(4i32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BI_RLE8: i32 = 1i32; +pub const BI_PNG: BI_COMPRESSION = BI_COMPRESSION(5i32); +impl ::core::marker::Copy for BI_COMPRESSION {} +impl ::core::clone::Clone for BI_COMPRESSION { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for BI_COMPRESSION { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for BI_COMPRESSION { + type Abi = Self; +} +impl ::core::fmt::Debug for BI_COMPRESSION { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BI_COMPRESSION").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const BKMODE_LAST: u32 = 2u32; #[repr(C)] @@ -828,27 +845,50 @@ impl ::core::default::Default for BLENDFUNCTION { } } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_DIBPATTERN: u32 = 5u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BRUSH_STYLE(pub u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const BS_SOLID: BRUSH_STYLE = BRUSH_STYLE(0u32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_DIBPATTERN8X8: u32 = 8u32; +pub const BS_NULL: BRUSH_STYLE = BRUSH_STYLE(1u32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_DIBPATTERNPT: u32 = 6u32; +pub const BS_HOLLOW: BRUSH_STYLE = BRUSH_STYLE(1u32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_HATCHED: u32 = 2u32; +pub const BS_HATCHED: BRUSH_STYLE = BRUSH_STYLE(2u32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_HOLLOW: u32 = 1u32; +pub const BS_PATTERN: BRUSH_STYLE = BRUSH_STYLE(3u32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_INDEXED: u32 = 4u32; +pub const BS_INDEXED: BRUSH_STYLE = BRUSH_STYLE(4u32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_MONOPATTERN: u32 = 9u32; +pub const BS_DIBPATTERN: BRUSH_STYLE = BRUSH_STYLE(5u32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_NULL: u32 = 1u32; +pub const BS_DIBPATTERNPT: BRUSH_STYLE = BRUSH_STYLE(6u32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_PATTERN: u32 = 3u32; +pub const BS_PATTERN8X8: BRUSH_STYLE = BRUSH_STYLE(7u32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_PATTERN8X8: u32 = 7u32; +pub const BS_DIBPATTERN8X8: BRUSH_STYLE = BRUSH_STYLE(8u32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const BS_SOLID: u32 = 0u32; +pub const BS_MONOPATTERN: BRUSH_STYLE = BRUSH_STYLE(9u32); +impl ::core::marker::Copy for BRUSH_STYLE {} +impl ::core::clone::Clone for BRUSH_STYLE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for BRUSH_STYLE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for BRUSH_STYLE { + type Abi = Self; +} +impl ::core::fmt::Debug for BRUSH_STYLE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BRUSH_STYLE").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] @@ -1004,8 +1044,6 @@ pub const CHARSET_GLYPHIDX: u32 = 3u32; pub const CHECKJPEGFORMAT: u32 = 4119u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const CHECKPNGFORMAT: u32 = 4120u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const CHINESEBIG5_CHARSET: u32 = 136u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub struct CIEXYZ { @@ -1216,8 +1254,6 @@ impl ::core::default::Default for COLORMATCHTOTARGET { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const COLORMATCHTOTARGET_EMBEDED: u32 = 1u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const COMPLEXREGION: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const CP_NONE: u32 = 0u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const CP_RECTANGLE: u32 = 1u32; @@ -1434,7 +1470,7 @@ where } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] -pub unsafe fn CombineRgn<'a, P0, P1, P2>(hrgndst: P0, hrgnsrc1: P1, hrgnsrc2: P2, imode: RGN_COMBINE_MODE) -> i32 +pub unsafe fn CombineRgn<'a, P0, P1, P2>(hrgndst: P0, hrgnsrc1: P1, hrgnsrc2: P2, imode: RGN_COMBINE_MODE) -> GDI_REGION_TYPE where P0: ::std::convert::Into, P1: ::std::convert::Into, @@ -1442,7 +1478,7 @@ where { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CombineRgn(hrgndst: HRGN, hrgnsrc1: HRGN, hrgnsrc2: HRGN, imode: RGN_COMBINE_MODE) -> i32; + fn CombineRgn(hrgndst: HRGN, hrgnsrc1: HRGN, hrgnsrc2: HRGN, imode: RGN_COMBINE_MODE) -> GDI_REGION_TYPE; } CombineRgn(hrgndst.into(), hrgnsrc1.into(), hrgnsrc2.into(), imode) } @@ -1536,7 +1572,8 @@ pub unsafe fn CreateBitmapIndirect(pbm: &BITMAP) -> HBITMAP { } CreateBitmapIndirect(::core::mem::transmute(pbm)) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] pub unsafe fn CreateBrushIndirect(plbrush: &LOGBRUSH) -> HBRUSH { #[cfg_attr(windows, link(name = "windows"))] @@ -1806,14 +1843,18 @@ where } CreateHalftonePalette(hdc.into()) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn CreateHatchBrush(ihatch: HATCH_BRUSH_STYLE, color: u32) -> HBRUSH { +pub unsafe fn CreateHatchBrush<'a, P0>(ihatch: HATCH_BRUSH_STYLE, color: P0) -> HBRUSH +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CreateHatchBrush(ihatch: HATCH_BRUSH_STYLE, color: u32) -> HBRUSH; + fn CreateHatchBrush(ihatch: HATCH_BRUSH_STYLE, color: super::super::Foundation::COLORREF) -> HBRUSH; } - CreateHatchBrush(ihatch, color) + CreateHatchBrush(ihatch, color.into()) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -1890,14 +1931,18 @@ where } CreatePatternBrush(hbm.into()) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn CreatePen(istyle: PEN_STYLE, cwidth: i32, color: u32) -> HPEN { +pub unsafe fn CreatePen<'a, P0>(istyle: PEN_STYLE, cwidth: i32, color: P0) -> HPEN +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CreatePen(istyle: PEN_STYLE, cwidth: i32, color: u32) -> HPEN; + fn CreatePen(istyle: PEN_STYLE, cwidth: i32, color: super::super::Foundation::COLORREF) -> HPEN; } - CreatePen(istyle, cwidth, color) + CreatePen(istyle, cwidth, color.into()) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -1987,14 +2032,18 @@ where } CreateScalableFontResourceW(fdwhidden, lpszfont.into(), lpszfile.into(), lpszpath.into()) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn CreateSolidBrush(color: u32) -> HBRUSH { +pub unsafe fn CreateSolidBrush<'a, P0>(color: P0) -> HBRUSH +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CreateSolidBrush(color: u32) -> HBRUSH; + fn CreateSolidBrush(color: super::super::Foundation::COLORREF) -> HBRUSH; } - CreateSolidBrush(color) + CreateSolidBrush(color.into()) } #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] @@ -2123,8 +2172,6 @@ pub const DC_MANUFACTURER: u32 = 23u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const DC_MODEL: u32 = 24u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const DEFAULT_CHARSET: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const DEFAULT_PITCH: u32 = 0u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] @@ -4093,13 +4140,13 @@ where #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn DrawTextA<'a, P0>(hdc: P0, lpchtext: &[u8], lprc: &mut super::super::Foundation::RECT, format: DRAW_TEXT_FORMAT) -> i32 +pub unsafe fn DrawTextA<'a, P0>(hdc: P0, lpchtext: &mut [u8], lprc: &mut super::super::Foundation::RECT, format: DRAW_TEXT_FORMAT) -> i32 where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DrawTextA(hdc: HDC, lpchtext: ::windows::core::PCSTR, cchtext: i32, lprc: *mut super::super::Foundation::RECT, format: DRAW_TEXT_FORMAT) -> i32; + fn DrawTextA(hdc: HDC, lpchtext: ::windows::core::PSTR, cchtext: i32, lprc: *mut super::super::Foundation::RECT, format: DRAW_TEXT_FORMAT) -> i32; } DrawTextA(hdc.into(), ::core::mem::transmute(lpchtext.as_ptr()), lpchtext.len() as _, ::core::mem::transmute(lprc), format) } @@ -4132,19 +4179,17 @@ where #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn DrawTextW<'a, P0>(hdc: P0, lpchtext: &[u16], lprc: &mut super::super::Foundation::RECT, format: DRAW_TEXT_FORMAT) -> i32 +pub unsafe fn DrawTextW<'a, P0>(hdc: P0, lpchtext: &mut [u16], lprc: &mut super::super::Foundation::RECT, format: DRAW_TEXT_FORMAT) -> i32 where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DrawTextW(hdc: HDC, lpchtext: ::windows::core::PCWSTR, cchtext: i32, lprc: *mut super::super::Foundation::RECT, format: DRAW_TEXT_FORMAT) -> i32; + fn DrawTextW(hdc: HDC, lpchtext: ::windows::core::PWSTR, cchtext: i32, lprc: *mut super::super::Foundation::RECT, format: DRAW_TEXT_FORMAT) -> i32; } DrawTextW(hdc.into(), ::core::mem::transmute(lpchtext.as_ptr()), lpchtext.len() as _, ::core::mem::transmute(lprc), format) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const EASTEUROPE_CHARSET: u32 = 238u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const ELF_CULTURE_LATIN: u32 = 0u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const ELF_VENDOR_SIZE: u32 = 4u32; @@ -4253,7 +4298,7 @@ pub struct EMRALPHABLEND { pub xSrc: i32, pub ySrc: i32, pub xformSrc: XFORM, - pub crBkColorSrc: u32, + pub crBkColorSrc: super::super::Foundation::COLORREF, pub iUsageSrc: u32, pub offBmiSrc: u32, pub cbBmiSrc: u32, @@ -4410,7 +4455,7 @@ pub struct EMRBITBLT { pub xSrc: i32, pub ySrc: i32, pub xformSrc: XFORM, - pub crBkColorSrc: u32, + pub crBkColorSrc: super::super::Foundation::COLORREF, pub iUsageSrc: u32, pub offBmiSrc: u32, pub cbBmiSrc: u32, @@ -4467,32 +4512,40 @@ impl ::core::default::Default for EMRBITBLT { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct EMRCREATEBRUSHINDIRECT { pub emr: EMR, pub ihBrush: u32, pub lb: LOGBRUSH32, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for EMRCREATEBRUSHINDIRECT {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for EMRCREATEBRUSHINDIRECT { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for EMRCREATEBRUSHINDIRECT { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("EMRCREATEBRUSHINDIRECT").field("emr", &self.emr).field("ihBrush", &self.ihBrush).field("lb", &self.lb).finish() } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for EMRCREATEBRUSHINDIRECT { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for EMRCREATEBRUSHINDIRECT { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for EMRCREATEBRUSHINDIRECT {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for EMRCREATEBRUSHINDIRECT { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -4786,7 +4839,8 @@ impl ::core::default::Default for EMREXTCREATEFONTINDIRECTW { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct EMREXTCREATEPEN { pub emr: EMR, pub ihPen: u32, @@ -4796,26 +4850,33 @@ pub struct EMREXTCREATEPEN { pub cbBits: u32, pub elp: EXTLOGPEN32, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for EMREXTCREATEPEN {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for EMREXTCREATEPEN { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for EMREXTCREATEPEN { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("EMREXTCREATEPEN").field("emr", &self.emr).field("ihPen", &self.ihPen).field("offBmi", &self.offBmi).field("cbBmi", &self.cbBmi).field("offBits", &self.offBits).field("cbBits", &self.cbBits).field("elp", &self.elp).finish() } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for EMREXTCREATEPEN { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for EMREXTCREATEPEN { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for EMREXTCREATEPEN {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for EMREXTCREATEPEN { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -4860,7 +4921,7 @@ impl ::core::default::Default for EMREXTESCAPE { pub struct EMREXTFLOODFILL { pub emr: EMR, pub ptlStart: super::super::Foundation::POINTL, - pub crColor: u32, + pub crColor: super::super::Foundation::COLORREF, pub iMode: u32, } #[cfg(feature = "Win32_Foundation")] @@ -4900,7 +4961,7 @@ impl ::core::default::Default for EMREXTFLOODFILL { pub struct EMREXTSELECTCLIPRGN { pub emr: EMR, pub cbRgnData: u32, - pub iMode: u32, + pub iMode: RGN_COMBINE_MODE, pub RgnData: [u8; 1], } impl ::core::marker::Copy for EMREXTSELECTCLIPRGN {} @@ -5370,7 +5431,7 @@ pub struct EMRMASKBLT { pub xSrc: i32, pub ySrc: i32, pub xformSrc: XFORM, - pub crBkColorSrc: u32, + pub crBkColorSrc: super::super::Foundation::COLORREF, pub iUsageSrc: u32, pub offBmiSrc: u32, pub cbBmiSrc: u32, @@ -5445,7 +5506,7 @@ impl ::core::default::Default for EMRMASKBLT { pub struct EMRMODIFYWORLDTRANSFORM { pub emr: EMR, pub xform: XFORM, - pub iMode: u32, + pub iMode: MODIFY_WORLD_TRANSFORM_MODE, } impl ::core::marker::Copy for EMRMODIFYWORLDTRANSFORM {} impl ::core::clone::Clone for EMRMODIFYWORLDTRANSFORM { @@ -5557,7 +5618,7 @@ pub struct EMRPLGBLT { pub cxSrc: i32, pub cySrc: i32, pub xformSrc: XFORM, - pub crBkColorSrc: u32, + pub crBkColorSrc: super::super::Foundation::COLORREF, pub iUsageSrc: u32, pub offBmiSrc: u32, pub cbBmiSrc: u32, @@ -6448,7 +6509,7 @@ impl ::core::default::Default for EMRSETPALETTEENTRIES { pub struct EMRSETPIXELV { pub emr: EMR, pub ptlPixel: super::super::Foundation::POINTL, - pub crColor: u32, + pub crColor: super::super::Foundation::COLORREF, } #[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for EMRSETPIXELV {} @@ -6483,31 +6544,39 @@ impl ::core::default::Default for EMRSETPIXELV { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct EMRSETTEXTCOLOR { pub emr: EMR, - pub crColor: u32, + pub crColor: super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for EMRSETTEXTCOLOR {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for EMRSETTEXTCOLOR { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for EMRSETTEXTCOLOR { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("EMRSETTEXTCOLOR").field("emr", &self.emr).field("crColor", &self.crColor).finish() } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for EMRSETTEXTCOLOR { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for EMRSETTEXTCOLOR { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for EMRSETTEXTCOLOR {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for EMRSETTEXTCOLOR { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -6636,7 +6705,7 @@ pub struct EMRSTRETCHBLT { pub xSrc: i32, pub ySrc: i32, pub xformSrc: XFORM, - pub crBkColorSrc: u32, + pub crBkColorSrc: super::super::Foundation::COLORREF, pub iUsageSrc: u32, pub offBmiSrc: u32, pub cbBmiSrc: u32, @@ -6823,7 +6892,7 @@ pub struct EMRTRANSPARENTBLT { pub xSrc: i32, pub ySrc: i32, pub xformSrc: XFORM, - pub crBkColorSrc: u32, + pub crBkColorSrc: super::super::Foundation::COLORREF, pub iUsageSrc: u32, pub offBmiSrc: u32, pub cbBmiSrc: u32, @@ -7508,7 +7577,7 @@ pub const EPSPRINTING: u32 = 33u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const EPS_SIGNATURE: u32 = 1179865157u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const ERROR: u32 = 0u32; +pub const ERROR: i32 = 0i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const ERR_FORMAT: u32 = 1006u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] @@ -7809,72 +7878,88 @@ impl ::core::default::Default for EXTLOGFONTW { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct EXTLOGPEN { - pub elpPenStyle: u32, + pub elpPenStyle: PEN_STYLE, pub elpWidth: u32, pub elpBrushStyle: u32, - pub elpColor: u32, + pub elpColor: super::super::Foundation::COLORREF, pub elpHatch: usize, pub elpNumEntries: u32, pub elpStyleEntry: [u32; 1], } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for EXTLOGPEN {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for EXTLOGPEN { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for EXTLOGPEN { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("EXTLOGPEN").field("elpPenStyle", &self.elpPenStyle).field("elpWidth", &self.elpWidth).field("elpBrushStyle", &self.elpBrushStyle).field("elpColor", &self.elpColor).field("elpHatch", &self.elpHatch).field("elpNumEntries", &self.elpNumEntries).field("elpStyleEntry", &self.elpStyleEntry).finish() } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for EXTLOGPEN { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for EXTLOGPEN { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for EXTLOGPEN {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for EXTLOGPEN { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct EXTLOGPEN32 { - pub elpPenStyle: u32, + pub elpPenStyle: PEN_STYLE, pub elpWidth: u32, pub elpBrushStyle: u32, - pub elpColor: u32, + pub elpColor: super::super::Foundation::COLORREF, pub elpHatch: u32, pub elpNumEntries: u32, pub elpStyleEntry: [u32; 1], } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for EXTLOGPEN32 {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for EXTLOGPEN32 { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for EXTLOGPEN32 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("EXTLOGPEN32").field("elpPenStyle", &self.elpPenStyle).field("elpWidth", &self.elpWidth).field("elpBrushStyle", &self.elpBrushStyle).field("elpColor", &self.elpColor).field("elpHatch", &self.elpHatch).field("elpNumEntries", &self.elpNumEntries).field("elpStyleEntry", &self.elpStyleEntry).finish() } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for EXTLOGPEN32 { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for EXTLOGPEN32 { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for EXTLOGPEN32 {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for EXTLOGPEN32 { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -8313,13 +8398,13 @@ where } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] -pub unsafe fn ExcludeClipRect<'a, P0>(hdc: P0, left: i32, top: i32, right: i32, bottom: i32) -> i32 +pub unsafe fn ExcludeClipRect<'a, P0>(hdc: P0, left: i32, top: i32, right: i32, bottom: i32) -> GDI_REGION_TYPE where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ExcludeClipRect(hdc: HDC, left: i32, top: i32, right: i32, bottom: i32) -> i32; + fn ExcludeClipRect(hdc: HDC, left: i32, top: i32, right: i32, bottom: i32) -> GDI_REGION_TYPE; } ExcludeClipRect(hdc.into(), left, top, right, bottom) } @@ -8337,7 +8422,8 @@ where } ExcludeUpdateRgn(hdc.into(), hwnd.into()) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] pub unsafe fn ExtCreatePen(ipenstyle: PEN_STYLE, cwidth: u32, plbrush: &LOGBRUSH, pstyle: ::core::option::Option<&[u32]>) -> HPEN { #[cfg_attr(windows, link(name = "windows"))] @@ -8359,26 +8445,27 @@ pub unsafe fn ExtCreateRegion(lpx: ::core::option::Option<&XFORM>, lpdata: &[u8] #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn ExtFloodFill<'a, P0>(hdc: P0, x: i32, y: i32, color: u32, r#type: EXT_FLOOD_FILL_TYPE) -> super::super::Foundation::BOOL +pub unsafe fn ExtFloodFill<'a, P0, P1>(hdc: P0, x: i32, y: i32, color: P1, r#type: EXT_FLOOD_FILL_TYPE) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ExtFloodFill(hdc: HDC, x: i32, y: i32, color: u32, r#type: EXT_FLOOD_FILL_TYPE) -> super::super::Foundation::BOOL; + fn ExtFloodFill(hdc: HDC, x: i32, y: i32, color: super::super::Foundation::COLORREF, r#type: EXT_FLOOD_FILL_TYPE) -> super::super::Foundation::BOOL; } - ExtFloodFill(hdc.into(), x, y, color, r#type) + ExtFloodFill(hdc.into(), x, y, color.into(), r#type) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] -pub unsafe fn ExtSelectClipRgn<'a, P0, P1>(hdc: P0, hrgn: P1, mode: RGN_COMBINE_MODE) -> i32 +pub unsafe fn ExtSelectClipRgn<'a, P0, P1>(hdc: P0, hrgn: P1, mode: RGN_COMBINE_MODE) -> GDI_REGION_TYPE where P0: ::std::convert::Into, P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ExtSelectClipRgn(hdc: HDC, hrgn: HRGN, mode: RGN_COMBINE_MODE) -> i32; + fn ExtSelectClipRgn(hdc: HDC, hrgn: HRGN, mode: RGN_COMBINE_MODE) -> GDI_REGION_TYPE; } ExtSelectClipRgn(hdc.into(), hrgn.into(), mode) } @@ -8476,6 +8563,69 @@ pub const FONTMAPPER_MAX: u32 = 10u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct FONT_CHARSET(pub u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const ANSI_CHARSET: FONT_CHARSET = FONT_CHARSET(0u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const DEFAULT_CHARSET: FONT_CHARSET = FONT_CHARSET(1u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const SYMBOL_CHARSET: FONT_CHARSET = FONT_CHARSET(2u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const SHIFTJIS_CHARSET: FONT_CHARSET = FONT_CHARSET(128u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const HANGEUL_CHARSET: FONT_CHARSET = FONT_CHARSET(129u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const HANGUL_CHARSET: FONT_CHARSET = FONT_CHARSET(129u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const GB2312_CHARSET: FONT_CHARSET = FONT_CHARSET(134u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const CHINESEBIG5_CHARSET: FONT_CHARSET = FONT_CHARSET(136u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const OEM_CHARSET: FONT_CHARSET = FONT_CHARSET(255u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const JOHAB_CHARSET: FONT_CHARSET = FONT_CHARSET(130u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const HEBREW_CHARSET: FONT_CHARSET = FONT_CHARSET(177u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const ARABIC_CHARSET: FONT_CHARSET = FONT_CHARSET(178u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const GREEK_CHARSET: FONT_CHARSET = FONT_CHARSET(161u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const TURKISH_CHARSET: FONT_CHARSET = FONT_CHARSET(162u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const VIETNAMESE_CHARSET: FONT_CHARSET = FONT_CHARSET(163u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const THAI_CHARSET: FONT_CHARSET = FONT_CHARSET(222u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const EASTEUROPE_CHARSET: FONT_CHARSET = FONT_CHARSET(238u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const RUSSIAN_CHARSET: FONT_CHARSET = FONT_CHARSET(204u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const MAC_CHARSET: FONT_CHARSET = FONT_CHARSET(77u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const BALTIC_CHARSET: FONT_CHARSET = FONT_CHARSET(186u32); +impl ::core::marker::Copy for FONT_CHARSET {} +impl ::core::clone::Clone for FONT_CHARSET { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for FONT_CHARSET { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for FONT_CHARSET { + type Abi = Self; +} +impl ::core::fmt::Debug for FONT_CHARSET { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("FONT_CHARSET").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct FONT_CLIP_PRECISION(pub u32); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const CLIP_CHARACTER_PRECIS: FONT_CLIP_PRECISION = FONT_CLIP_PRECISION(1u32); @@ -8714,6 +8864,59 @@ impl ::core::fmt::Debug for FONT_RESOURCE_CHARACTERISTICS { } } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct FONT_WEIGHT(pub u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_DONTCARE: FONT_WEIGHT = FONT_WEIGHT(0u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_THIN: FONT_WEIGHT = FONT_WEIGHT(100u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_EXTRALIGHT: FONT_WEIGHT = FONT_WEIGHT(200u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_LIGHT: FONT_WEIGHT = FONT_WEIGHT(300u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_NORMAL: FONT_WEIGHT = FONT_WEIGHT(400u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_MEDIUM: FONT_WEIGHT = FONT_WEIGHT(500u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_SEMIBOLD: FONT_WEIGHT = FONT_WEIGHT(600u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_BOLD: FONT_WEIGHT = FONT_WEIGHT(700u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_EXTRABOLD: FONT_WEIGHT = FONT_WEIGHT(800u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_HEAVY: FONT_WEIGHT = FONT_WEIGHT(900u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_ULTRALIGHT: FONT_WEIGHT = FONT_WEIGHT(200u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_REGULAR: FONT_WEIGHT = FONT_WEIGHT(400u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_DEMIBOLD: FONT_WEIGHT = FONT_WEIGHT(600u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_ULTRABOLD: FONT_WEIGHT = FONT_WEIGHT(800u32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const FW_BLACK: FONT_WEIGHT = FONT_WEIGHT(900u32); +impl ::core::marker::Copy for FONT_WEIGHT {} +impl ::core::clone::Clone for FONT_WEIGHT { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for FONT_WEIGHT { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for FONT_WEIGHT { + type Abi = Self; +} +impl ::core::fmt::Debug for FONT_WEIGHT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("FONT_WEIGHT").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const FS_ARABIC: i32 = 64i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const FS_BALTIC: i32 = 128i32; @@ -8745,36 +8948,6 @@ pub const FS_TURKISH: i32 = 16i32; pub const FS_VIETNAMESE: i32 = 256i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const FS_WANSUNG: i32 = 524288i32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_BLACK: u32 = 900u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_BOLD: u32 = 700u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_DEMIBOLD: u32 = 600u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_DONTCARE: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_EXTRABOLD: u32 = 800u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_EXTRALIGHT: u32 = 200u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_HEAVY: u32 = 900u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_LIGHT: u32 = 300u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_MEDIUM: u32 = 500u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_NORMAL: u32 = 400u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_REGULAR: u32 = 400u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_SEMIBOLD: u32 = 600u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_THIN: u32 = 100u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_ULTRABOLD: u32 = 800u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const FW_ULTRALIGHT: u32 = 200u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] @@ -8846,15 +9019,16 @@ where #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn FloodFill<'a, P0>(hdc: P0, x: i32, y: i32, color: u32) -> super::super::Foundation::BOOL +pub unsafe fn FloodFill<'a, P0, P1>(hdc: P0, x: i32, y: i32, color: P1) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn FloodFill(hdc: HDC, x: i32, y: i32, color: u32) -> super::super::Foundation::BOOL; + fn FloodFill(hdc: HDC, x: i32, y: i32, color: super::super::Foundation::COLORREF) -> super::super::Foundation::BOOL; } - FloodFill(hdc.into(), x, y, color) + FloodFill(hdc.into(), x, y, color.into()) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -8886,8 +9060,6 @@ where FrameRgn(hdc.into(), hrgn.into(), hbr.into(), w, h) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const GB2312_CHARSET: u32 = 134u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const GCPCLASS_ARABIC: u32 = 2u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const GCPCLASS_HEBREW: u32 = 2u32; @@ -9022,6 +9194,37 @@ pub const GDIREGISTERDDRAWPACKETVERSION: u32 = 1u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const GDI_ERROR: i32 = -1i32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct GDI_REGION_TYPE(pub i32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const RGN_ERROR: GDI_REGION_TYPE = GDI_REGION_TYPE(0i32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const NULLREGION: GDI_REGION_TYPE = GDI_REGION_TYPE(1i32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const SIMPLEREGION: GDI_REGION_TYPE = GDI_REGION_TYPE(2i32); +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +pub const COMPLEXREGION: GDI_REGION_TYPE = GDI_REGION_TYPE(3i32); +impl ::core::marker::Copy for GDI_REGION_TYPE {} +impl ::core::clone::Clone for GDI_REGION_TYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for GDI_REGION_TYPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for GDI_REGION_TYPE { + type Abi = Self; +} +impl ::core::fmt::Debug for GDI_REGION_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("GDI_REGION_TYPE").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const GETCOLORTABLE: u32 = 5u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const GETDEVICEUNITS: u32 = 42u32; @@ -9630,8 +9833,6 @@ impl ::core::fmt::Debug for GRAPHICS_MODE { #[cfg(feature = "Win32_Foundation")] pub type GRAYSTRINGPROC = ::core::option::Option super::super::Foundation::BOOL>; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const GREEK_CHARSET: u32 = 161u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const GS_8BIT_INDICES: u32 = 1u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -9765,27 +9966,28 @@ where } GetBitmapDimensionEx(hbit.into(), ::core::mem::transmute(lpsize)) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetBkColor<'a, P0>(hdc: P0) -> u32 +pub unsafe fn GetBkColor<'a, P0>(hdc: P0) -> super::super::Foundation::COLORREF where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetBkColor(hdc: HDC) -> u32; + fn GetBkColor(hdc: HDC) -> super::super::Foundation::COLORREF; } GetBkColor(hdc.into()) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] -pub unsafe fn GetBkMode<'a, P0>(hdc: P0) -> i32 +pub unsafe fn GetBkMode<'a, P0>(hdc: P0) -> BACKGROUND_MODE where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetBkMode(hdc: HDC) -> i32; + fn GetBkMode(hdc: HDC) -> BACKGROUND_MODE; } GetBkMode(hdc.into()) } @@ -9998,13 +10200,13 @@ where #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetClipBox<'a, P0>(hdc: P0, lprect: &mut super::super::Foundation::RECT) -> i32 +pub unsafe fn GetClipBox<'a, P0>(hdc: P0, lprect: &mut super::super::Foundation::RECT) -> GDI_REGION_TYPE where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetClipBox(hdc: HDC, lprect: *mut super::super::Foundation::RECT) -> i32; + fn GetClipBox(hdc: HDC, lprect: *mut super::super::Foundation::RECT) -> GDI_REGION_TYPE; } GetClipBox(hdc.into(), ::core::mem::transmute(lprect)) } @@ -10072,15 +10274,16 @@ where } GetDC(hwnd.into()) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetDCBrushColor<'a, P0>(hdc: P0) -> u32 +pub unsafe fn GetDCBrushColor<'a, P0>(hdc: P0) -> super::super::Foundation::COLORREF where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetDCBrushColor(hdc: HDC) -> u32; + fn GetDCBrushColor(hdc: HDC) -> super::super::Foundation::COLORREF; } GetDCBrushColor(hdc.into()) } @@ -10111,15 +10314,16 @@ where } GetDCOrgEx(hdc.into(), ::core::mem::transmute(lppt)) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetDCPenColor<'a, P0>(hdc: P0) -> u32 +pub unsafe fn GetDCPenColor<'a, P0>(hdc: P0) -> super::super::Foundation::COLORREF where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetDCPenColor(hdc: HDC) -> u32; + fn GetDCPenColor(hdc: HDC) -> super::super::Foundation::COLORREF; } GetDCPenColor(hdc.into()) } @@ -10381,13 +10585,13 @@ where } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] -pub unsafe fn GetMapMode<'a, P0>(hdc: P0) -> i32 +pub unsafe fn GetMapMode<'a, P0>(hdc: P0) -> HDC_MAP_MODE where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetMapMode(hdc: HDC) -> i32; + fn GetMapMode(hdc: HDC) -> HDC_MAP_MODE; } GetMapMode(hdc.into()) } @@ -10479,29 +10683,33 @@ where } GetMonitorInfoW(hmonitor.into(), ::core::mem::transmute(lpmi)) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetNearestColor<'a, P0>(hdc: P0, color: u32) -> u32 +pub unsafe fn GetNearestColor<'a, P0, P1>(hdc: P0, color: P1) -> super::super::Foundation::COLORREF where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetNearestColor(hdc: HDC, color: u32) -> u32; + fn GetNearestColor(hdc: HDC, color: super::super::Foundation::COLORREF) -> super::super::Foundation::COLORREF; } - GetNearestColor(hdc.into(), color) + GetNearestColor(hdc.into(), color.into()) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetNearestPaletteIndex<'a, P0>(h: P0, color: u32) -> u32 +pub unsafe fn GetNearestPaletteIndex<'a, P0, P1>(h: P0, color: P1) -> u32 where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetNearestPaletteIndex(h: HPALETTE, color: u32) -> u32; + fn GetNearestPaletteIndex(h: HPALETTE, color: super::super::Foundation::COLORREF) -> u32; } - GetNearestPaletteIndex(h.into(), color) + GetNearestPaletteIndex(h.into(), color.into()) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] @@ -10590,15 +10798,16 @@ where } GetPath(hdc.into(), ::core::mem::transmute(apt), ::core::mem::transmute(aj), ::core::mem::transmute(cpt)) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetPixel<'a, P0>(hdc: P0, x: i32, y: i32) -> u32 +pub unsafe fn GetPixel<'a, P0>(hdc: P0, x: i32, y: i32) -> super::super::Foundation::COLORREF where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetPixel(hdc: HDC, x: i32, y: i32) -> u32; + fn GetPixel(hdc: HDC, x: i32, y: i32) -> super::super::Foundation::COLORREF; } GetPixel(hdc.into(), x, y) } @@ -10616,13 +10825,13 @@ where } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] -pub unsafe fn GetROP2<'a, P0>(hdc: P0) -> i32 +pub unsafe fn GetROP2<'a, P0>(hdc: P0) -> R2_MODE where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetROP2(hdc: HDC) -> i32; + fn GetROP2(hdc: HDC) -> R2_MODE; } GetROP2(hdc.into()) } @@ -10665,13 +10874,13 @@ where #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetRgnBox<'a, P0>(hrgn: P0, lprc: &mut super::super::Foundation::RECT) -> i32 +pub unsafe fn GetRgnBox<'a, P0>(hrgn: P0, lprc: &mut super::super::Foundation::RECT) -> GDI_REGION_TYPE where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetRgnBox(hrgn: HRGN, lprc: *mut super::super::Foundation::RECT) -> i32; + fn GetRgnBox(hrgn: HRGN, lprc: *mut super::super::Foundation::RECT) -> GDI_REGION_TYPE; } GetRgnBox(hrgn.into(), ::core::mem::transmute(lprc)) } @@ -10755,13 +10964,13 @@ where } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] -pub unsafe fn GetTextAlign<'a, P0>(hdc: P0) -> u32 +pub unsafe fn GetTextAlign<'a, P0>(hdc: P0) -> TEXT_ALIGN_OPTIONS where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetTextAlign(hdc: HDC) -> u32; + fn GetTextAlign(hdc: HDC) -> TEXT_ALIGN_OPTIONS; } GetTextAlign(hdc.into()) } @@ -10777,15 +10986,16 @@ where } GetTextCharacterExtra(hdc.into()) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetTextColor<'a, P0>(hdc: P0) -> u32 +pub unsafe fn GetTextColor<'a, P0>(hdc: P0) -> super::super::Foundation::COLORREF where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetTextColor(hdc: HDC) -> u32; + fn GetTextColor(hdc: HDC) -> super::super::Foundation::COLORREF; } GetTextColor(hdc.into()) } @@ -11164,10 +11374,6 @@ impl ::core::default::Default for HANDLETABLE { } } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const HANGEUL_CHARSET: u32 = 129u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const HANGUL_CHARSET: u32 = 129u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct HATCH_BRUSH_STYLE(pub u32); @@ -11347,8 +11553,6 @@ impl ::core::fmt::Debug for HDC_MAP_MODE { f.debug_tuple("HDC_MAP_MODE").field(&self.0).finish() } } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const HEBREW_CHARSET: u32 = 177u32; #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct HENHMETAFILE(pub isize); @@ -11731,13 +11935,13 @@ pub unsafe fn InflateRect(lprc: &mut super::super::Foundation::RECT, dx: i32, dy } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] -pub unsafe fn IntersectClipRect<'a, P0>(hdc: P0, left: i32, top: i32, right: i32, bottom: i32) -> i32 +pub unsafe fn IntersectClipRect<'a, P0>(hdc: P0, left: i32, top: i32, right: i32, bottom: i32) -> GDI_REGION_TYPE where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn IntersectClipRect(hdc: HDC, left: i32, top: i32, right: i32, bottom: i32) -> i32; + fn IntersectClipRect(hdc: HDC, left: i32, top: i32, right: i32, bottom: i32) -> GDI_REGION_TYPE; } IntersectClipRect(hdc.into(), left, top, right, bottom) } @@ -11817,8 +12021,6 @@ pub unsafe fn IsRectEmpty(lprc: &super::super::Foundation::RECT) -> super::super } IsRectEmpty(::core::mem::transmute(lprc)) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const JOHAB_CHARSET: u32 = 130u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub struct KERNINGPAIR { @@ -11889,64 +12091,80 @@ pub const LF_FULLFACESIZE: u32 = 64u32; #[cfg(feature = "Win32_Foundation")] pub type LINEDDAPROC = ::core::option::Option; #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct LOGBRUSH { - pub lbStyle: u32, - pub lbColor: u32, + pub lbStyle: BRUSH_STYLE, + pub lbColor: super::super::Foundation::COLORREF, pub lbHatch: usize, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for LOGBRUSH {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for LOGBRUSH { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for LOGBRUSH { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("LOGBRUSH").field("lbStyle", &self.lbStyle).field("lbColor", &self.lbColor).field("lbHatch", &self.lbHatch).finish() } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for LOGBRUSH { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for LOGBRUSH { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for LOGBRUSH {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for LOGBRUSH { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct LOGBRUSH32 { - pub lbStyle: u32, - pub lbColor: u32, + pub lbStyle: BRUSH_STYLE, + pub lbColor: super::super::Foundation::COLORREF, pub lbHatch: u32, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for LOGBRUSH32 {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for LOGBRUSH32 { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for LOGBRUSH32 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("LOGBRUSH32").field("lbStyle", &self.lbStyle).field("lbColor", &self.lbColor).field("lbHatch", &self.lbHatch).finish() } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for LOGBRUSH32 { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for LOGBRUSH32 { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for LOGBRUSH32 {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for LOGBRUSH32 { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -11960,15 +12178,15 @@ pub struct LOGFONTA { pub lfWidth: i32, pub lfEscapement: i32, pub lfOrientation: i32, - pub lfWeight: i32, + pub lfWeight: FONT_WEIGHT, pub lfItalic: u8, pub lfUnderline: u8, pub lfStrikeOut: u8, pub lfCharSet: u8, - pub lfOutPrecision: u8, - pub lfClipPrecision: u8, - pub lfQuality: u8, - pub lfPitchAndFamily: u8, + pub lfOutPrecision: FONT_OUTPUT_PRECISION, + pub lfClipPrecision: FONT_CLIP_PRECISION, + pub lfQuality: FONT_QUALITY, + pub lfPitchAndFamily: FONT_PITCH_AND_FAMILY, pub lfFaceName: [super::super::Foundation::CHAR; 32], } #[cfg(feature = "Win32_Foundation")] @@ -12025,15 +12243,15 @@ pub struct LOGFONTW { pub lfWidth: i32, pub lfEscapement: i32, pub lfOrientation: i32, - pub lfWeight: i32, + pub lfWeight: FONT_WEIGHT, pub lfItalic: u8, pub lfUnderline: u8, pub lfStrikeOut: u8, - pub lfCharSet: u8, - pub lfOutPrecision: u8, - pub lfClipPrecision: u8, - pub lfQuality: u8, - pub lfPitchAndFamily: u8, + pub lfCharSet: FONT_CHARSET, + pub lfOutPrecision: FONT_OUTPUT_PRECISION, + pub lfClipPrecision: FONT_CLIP_PRECISION, + pub lfQuality: FONT_QUALITY, + pub lfPitchAndFamily: FONT_PITCH_AND_FAMILY, pub lfFaceName: [u16; 32], } impl ::core::marker::Copy for LOGFONTW {} @@ -12112,9 +12330,9 @@ impl ::core::default::Default for LOGPALETTE { #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct LOGPEN { - pub lopnStyle: u32, + pub lopnStyle: PEN_STYLE, pub lopnWidth: super::super::Foundation::POINT, - pub lopnColor: u32, + pub lopnColor: super::super::Foundation::COLORREF, } #[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for LOGPEN {} @@ -12258,8 +12476,6 @@ where } LockWindowUpdate(hwndlock.into()) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const MAC_CHARSET: u32 = 77u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub struct MAT2 { @@ -12815,7 +13031,7 @@ pub struct NEWTEXTMETRICA { pub tmItalic: u8, pub tmUnderlined: u8, pub tmStruckOut: u8, - pub tmPitchAndFamily: u8, + pub tmPitchAndFamily: TMPF_FLAGS, pub tmCharSet: u8, pub ntmFlags: u32, pub ntmSizeEM: u32, @@ -12893,7 +13109,7 @@ pub struct NEWTEXTMETRICW { pub tmItalic: u8, pub tmUnderlined: u8, pub tmStruckOut: u8, - pub tmPitchAndFamily: u8, + pub tmPitchAndFamily: TMPF_FLAGS, pub tmCharSet: u8, pub ntmFlags: u32, pub ntmSizeEM: u32, @@ -12973,8 +13189,6 @@ pub const NTM_TT_OPENTYPE: u32 = 262144u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const NTM_TYPE1: u32 = 1048576u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const NULLREGION: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct OBJ_TYPE(pub i32); @@ -13026,8 +13240,6 @@ impl ::core::fmt::Debug for OBJ_TYPE { } } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const OEM_CHARSET: u32 = 255u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const OPENCHANNEL: u32 = 4110u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] @@ -13237,13 +13449,13 @@ impl ::core::default::Default for OUTLINETEXTMETRICW { pub const OUT_SCREEN_OUTLINE_PRECIS: u32 = 9u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] -pub unsafe fn OffsetClipRgn<'a, P0>(hdc: P0, x: i32, y: i32) -> i32 +pub unsafe fn OffsetClipRgn<'a, P0>(hdc: P0, x: i32, y: i32) -> GDI_REGION_TYPE where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OffsetClipRgn(hdc: HDC, x: i32, y: i32) -> i32; + fn OffsetClipRgn(hdc: HDC, x: i32, y: i32) -> GDI_REGION_TYPE; } OffsetClipRgn(hdc.into(), x, y) } @@ -13259,13 +13471,13 @@ pub unsafe fn OffsetRect(lprc: &mut super::super::Foundation::RECT, dx: i32, dy: } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] -pub unsafe fn OffsetRgn<'a, P0>(hrgn: P0, x: i32, y: i32) -> i32 +pub unsafe fn OffsetRgn<'a, P0>(hrgn: P0, x: i32, y: i32) -> GDI_REGION_TYPE where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OffsetRgn(hrgn: HRGN, x: i32, y: i32) -> i32; + fn OffsetRgn(hrgn: HRGN, x: i32, y: i32) -> GDI_REGION_TYPE; } OffsetRgn(hrgn.into(), x, y) } @@ -14662,8 +14874,6 @@ impl ::core::fmt::Debug for RGN_COMBINE_MODE { } } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const RGN_ERROR: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct ROP_CODE(pub u32); @@ -14749,8 +14959,6 @@ impl ::core::ops::Not for ROP_CODE { } } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const RUSSIAN_CHARSET: u32 = 204u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] pub unsafe fn RealizePalette<'a, P0>(hdc: P0) -> u32 where @@ -15081,10 +15289,6 @@ pub const SET_SCREEN_ANGLE: u32 = 4105u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const SET_SPREAD: u32 = 4106u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const SHIFTJIS_CHARSET: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const SIMPLEREGION: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const SPCLPASSTHROUGH2: u32 = 4568u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const SP_APPABORT: i32 = -2i32; @@ -15144,8 +15348,6 @@ impl ::core::fmt::Debug for STRETCH_BLT_MODE { } } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const SYMBOL_CHARSET: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const SYSPAL_ERROR: u32 = 0u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const SYSRGN: u32 = 4u32; @@ -15244,14 +15446,14 @@ where } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] -pub unsafe fn SelectClipRgn<'a, P0, P1>(hdc: P0, hrgn: P1) -> i32 +pub unsafe fn SelectClipRgn<'a, P0, P1>(hdc: P0, hrgn: P1) -> GDI_REGION_TYPE where P0: ::std::convert::Into, P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SelectClipRgn(hdc: HDC, hrgn: HRGN) -> i32; + fn SelectClipRgn(hdc: HDC, hrgn: HRGN) -> GDI_REGION_TYPE; } SelectClipRgn(hdc.into(), hrgn.into()) } @@ -15320,17 +15522,19 @@ where } SetBitmapDimensionEx(hbm.into(), w, h, ::core::mem::transmute(lpsz)) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn SetBkColor<'a, P0>(hdc: P0, color: u32) -> u32 +pub unsafe fn SetBkColor<'a, P0, P1>(hdc: P0, color: P1) -> super::super::Foundation::COLORREF where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SetBkColor(hdc: HDC, color: u32) -> u32; + fn SetBkColor(hdc: HDC, color: super::super::Foundation::COLORREF) -> super::super::Foundation::COLORREF; } - SetBkColor(hdc.into(), color) + SetBkColor(hdc.into(), color.into()) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] @@ -15383,29 +15587,33 @@ where } SetColorAdjustment(hdc.into(), ::core::mem::transmute(lpca)) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn SetDCBrushColor<'a, P0>(hdc: P0, color: u32) -> u32 +pub unsafe fn SetDCBrushColor<'a, P0, P1>(hdc: P0, color: P1) -> super::super::Foundation::COLORREF where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SetDCBrushColor(hdc: HDC, color: u32) -> u32; + fn SetDCBrushColor(hdc: HDC, color: super::super::Foundation::COLORREF) -> super::super::Foundation::COLORREF; } - SetDCBrushColor(hdc.into(), color) + SetDCBrushColor(hdc.into(), color.into()) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn SetDCPenColor<'a, P0>(hdc: P0, color: u32) -> u32 +pub unsafe fn SetDCPenColor<'a, P0, P1>(hdc: P0, color: P1) -> super::super::Foundation::COLORREF where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SetDCPenColor(hdc: HDC, color: u32) -> u32; + fn SetDCPenColor(hdc: HDC, color: super::super::Foundation::COLORREF) -> super::super::Foundation::COLORREF; } - SetDCPenColor(hdc.into(), color) + SetDCPenColor(hdc.into(), color.into()) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] @@ -15512,13 +15720,13 @@ pub unsafe fn SetMetaFileBitsEx(lpdata: &[u8]) -> HMETAFILE { } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] -pub unsafe fn SetMetaRgn<'a, P0>(hdc: P0) -> i32 +pub unsafe fn SetMetaRgn<'a, P0>(hdc: P0) -> GDI_REGION_TYPE where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SetMetaRgn(hdc: HDC) -> i32; + fn SetMetaRgn(hdc: HDC) -> GDI_REGION_TYPE; } SetMetaRgn(hdc.into()) } @@ -15547,30 +15755,33 @@ where } SetPaletteEntries(hpal.into(), istart, ppalentries.len() as _, ::core::mem::transmute(ppalentries.as_ptr())) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn SetPixel<'a, P0>(hdc: P0, x: i32, y: i32, color: u32) -> u32 +pub unsafe fn SetPixel<'a, P0, P1>(hdc: P0, x: i32, y: i32, color: P1) -> super::super::Foundation::COLORREF where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SetPixel(hdc: HDC, x: i32, y: i32, color: u32) -> u32; + fn SetPixel(hdc: HDC, x: i32, y: i32, color: super::super::Foundation::COLORREF) -> super::super::Foundation::COLORREF; } - SetPixel(hdc.into(), x, y, color) + SetPixel(hdc.into(), x, y, color.into()) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn SetPixelV<'a, P0>(hdc: P0, x: i32, y: i32, color: u32) -> super::super::Foundation::BOOL +pub unsafe fn SetPixelV<'a, P0, P1>(hdc: P0, x: i32, y: i32, color: P1) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SetPixelV(hdc: HDC, x: i32, y: i32, color: u32) -> super::super::Foundation::BOOL; + fn SetPixelV(hdc: HDC, x: i32, y: i32, color: super::super::Foundation::COLORREF) -> super::super::Foundation::BOOL; } - SetPixelV(hdc.into(), x, y, color) + SetPixelV(hdc.into(), x, y, color.into()) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] @@ -15677,17 +15888,19 @@ where } SetTextCharacterExtra(hdc.into(), extra) } -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn SetTextColor<'a, P0>(hdc: P0, color: u32) -> u32 +pub unsafe fn SetTextColor<'a, P0, P1>(hdc: P0, color: P1) -> super::super::Foundation::COLORREF where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SetTextColor(hdc: HDC, color: u32) -> u32; + fn SetTextColor(hdc: HDC, color: super::super::Foundation::COLORREF) -> super::super::Foundation::COLORREF; } - SetTextColor(hdc.into(), color) + SetTextColor(hdc.into(), color.into()) } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -15899,7 +16112,7 @@ pub struct TEXTMETRICA { pub tmItalic: u8, pub tmUnderlined: u8, pub tmStruckOut: u8, - pub tmPitchAndFamily: u8, + pub tmPitchAndFamily: TMPF_FLAGS, pub tmCharSet: u8, } impl ::core::marker::Copy for TEXTMETRICA {} @@ -15969,7 +16182,7 @@ pub struct TEXTMETRICW { pub tmItalic: u8, pub tmUnderlined: u8, pub tmStruckOut: u8, - pub tmPitchAndFamily: u8, + pub tmPitchAndFamily: TMPF_FLAGS, pub tmCharSet: u8, } impl ::core::marker::Copy for TEXTMETRICW {} @@ -16073,16 +16286,93 @@ impl ::core::fmt::Debug for TEXT_ALIGN_OPTIONS { f.debug_tuple("TEXT_ALIGN_OPTIONS").field(&self.0).finish() } } +impl ::core::ops::BitOr for TEXT_ALIGN_OPTIONS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for TEXT_ALIGN_OPTIONS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for TEXT_ALIGN_OPTIONS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for TEXT_ALIGN_OPTIONS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for TEXT_ALIGN_OPTIONS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const THAI_CHARSET: u32 = 222u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TMPF_FLAGS(pub u8); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const TMPF_DEVICE: u32 = 8u32; +pub const TMPF_FIXED_PITCH: TMPF_FLAGS = TMPF_FLAGS(1u8); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const TMPF_FIXED_PITCH: u32 = 1u32; +pub const TMPF_VECTOR: TMPF_FLAGS = TMPF_FLAGS(2u8); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const TMPF_TRUETYPE: u32 = 4u32; +pub const TMPF_DEVICE: TMPF_FLAGS = TMPF_FLAGS(8u8); #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const TMPF_VECTOR: u32 = 2u32; +pub const TMPF_TRUETYPE: TMPF_FLAGS = TMPF_FLAGS(4u8); +impl ::core::marker::Copy for TMPF_FLAGS {} +impl ::core::clone::Clone for TMPF_FLAGS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TMPF_FLAGS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TMPF_FLAGS { + type Abi = Self; +} +impl ::core::fmt::Debug for TMPF_FLAGS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TMPF_FLAGS").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for TMPF_FLAGS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for TMPF_FLAGS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for TMPF_FLAGS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for TMPF_FLAGS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for TMPF_FLAGS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const TRANSFORM_CTM: u32 = 4107u32; #[repr(C)] @@ -16668,8 +16958,6 @@ pub const TT_PRIM_LINE: u32 = 1u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const TT_PRIM_QSPLINE: u32 = 2u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const TURKISH_CHARSET: u32 = 162u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[inline] pub unsafe fn TabbedTextOutA<'a, P0>(hdc: P0, x: i32, y: i32, lpstring: &[u8], lpntabstoppositions: ::core::option::Option<&[i32]>, ntaborigin: i32) -> i32 where @@ -16784,8 +17072,6 @@ where } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] pub const VARIABLE_PITCH: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] -pub const VIETNAMESE_CHARSET: u32 = 163u32; #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] diff --git a/crates/libs/windows/src/Windows/Win32/Graphics/OpenGL/mod.rs b/crates/libs/windows/src/Windows/Win32/Graphics/OpenGL/mod.rs index ddff7b9ba3..7b0e9d28b7 100644 --- a/crates/libs/windows/src/Windows/Win32/Graphics/OpenGL/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Graphics/OpenGL/mod.rs @@ -1596,7 +1596,8 @@ unsafe impl ::windows::core::Abi for HGLRC { type Abi = Self; } #[repr(C)] -#[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`*"] +#[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct LAYERPLANEDESCRIPTOR { pub nSize: u16, pub nVersion: u16, @@ -1621,14 +1622,17 @@ pub struct LAYERPLANEDESCRIPTOR { pub cAuxBuffers: u8, pub iLayerPlane: u8, pub bReserved: u8, - pub crTransparent: u32, + pub crTransparent: super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for LAYERPLANEDESCRIPTOR {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for LAYERPLANEDESCRIPTOR { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for LAYERPLANEDESCRIPTOR { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("LAYERPLANEDESCRIPTOR") @@ -1659,15 +1663,19 @@ impl ::core::fmt::Debug for LAYERPLANEDESCRIPTOR { .finish() } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for LAYERPLANEDESCRIPTOR { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for LAYERPLANEDESCRIPTOR { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for LAYERPLANEDESCRIPTOR {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for LAYERPLANEDESCRIPTOR { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -5570,16 +5578,16 @@ pub unsafe fn wglGetCurrentDC() -> super::Gdi::HDC { } wglGetCurrentDC() } -#[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] +#[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn wglGetLayerPaletteEntries<'a, P0>(param0: P0, param1: i32, param2: i32, param3: i32, param4: &mut u32) -> i32 +pub unsafe fn wglGetLayerPaletteEntries<'a, P0>(param0: P0, param1: i32, param2: i32, param3: i32, param4: &mut super::super::Foundation::COLORREF) -> i32 where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn wglGetLayerPaletteEntries(param0: super::Gdi::HDC, param1: i32, param2: i32, param3: i32, param4: *mut u32) -> i32; + fn wglGetLayerPaletteEntries(param0: super::Gdi::HDC, param1: i32, param2: i32, param3: i32, param4: *mut super::super::Foundation::COLORREF) -> i32; } wglGetLayerPaletteEntries(param0.into(), param1, param2, param3, ::core::mem::transmute(param4)) } @@ -5624,16 +5632,16 @@ where } wglRealizeLayerPalette(param0.into(), param1, param2.into()) } -#[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] +#[doc = "*Required features: `\"Win32_Graphics_OpenGL\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn wglSetLayerPaletteEntries<'a, P0>(param0: P0, param1: i32, param2: i32, param3: i32, param4: &u32) -> i32 +pub unsafe fn wglSetLayerPaletteEntries<'a, P0>(param0: P0, param1: i32, param2: i32, param3: i32, param4: &super::super::Foundation::COLORREF) -> i32 where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn wglSetLayerPaletteEntries(param0: super::Gdi::HDC, param1: i32, param2: i32, param3: i32, param4: *const u32) -> i32; + fn wglSetLayerPaletteEntries(param0: super::Gdi::HDC, param1: i32, param2: i32, param3: i32, param4: *const super::super::Foundation::COLORREF) -> i32; } wglSetLayerPaletteEntries(param0.into(), param1, param2, param3, ::core::mem::transmute(param4)) } diff --git a/crates/libs/windows/src/Windows/Win32/Graphics/Printing/mod.rs b/crates/libs/windows/src/Windows/Win32/Graphics/Printing/mod.rs index 8ab044ef12..4b79bd92bb 100644 --- a/crates/libs/windows/src/Windows/Win32/Graphics/Printing/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Graphics/Printing/mod.rs @@ -23909,13 +23909,13 @@ where #[doc = "*Required features: `\"Win32_Graphics_Printing\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn SetJobA<'a, P0>(hprinter: P0, jobid: u32, level: u32, pjob: ::core::option::Option<&mut u8>, command: u32) -> super::super::Foundation::BOOL +pub unsafe fn SetJobA<'a, P0>(hprinter: P0, jobid: u32, level: u32, pjob: ::core::option::Option<&u8>, command: u32) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SetJobA(hprinter: super::super::Foundation::HANDLE, jobid: u32, level: u32, pjob: *mut u8, command: u32) -> super::super::Foundation::BOOL; + fn SetJobA(hprinter: super::super::Foundation::HANDLE, jobid: u32, level: u32, pjob: *const u8, command: u32) -> super::super::Foundation::BOOL; } SetJobA(hprinter.into(), jobid, level, ::core::mem::transmute(pjob), command) } @@ -23935,13 +23935,13 @@ where #[doc = "*Required features: `\"Win32_Graphics_Printing\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn SetJobW<'a, P0>(hprinter: P0, jobid: u32, level: u32, pjob: ::core::option::Option<&mut u8>, command: u32) -> super::super::Foundation::BOOL +pub unsafe fn SetJobW<'a, P0>(hprinter: P0, jobid: u32, level: u32, pjob: ::core::option::Option<&u8>, command: u32) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SetJobW(hprinter: super::super::Foundation::HANDLE, jobid: u32, level: u32, pjob: *mut u8, command: u32) -> super::super::Foundation::BOOL; + fn SetJobW(hprinter: super::super::Foundation::HANDLE, jobid: u32, level: u32, pjob: *const u8, command: u32) -> super::super::Foundation::BOOL; } SetJobW(hprinter.into(), jobid, level, ::core::mem::transmute(pjob), command) } diff --git a/crates/libs/windows/src/Windows/Win32/Media/Audio/mod.rs b/crates/libs/windows/src/Windows/Win32/Media/Audio/mod.rs index 7b9a67d392..8bc3a3aa1c 100644 --- a/crates/libs/windows/src/Windows/Win32/Media/Audio/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Media/Audio/mod.rs @@ -10307,34 +10307,115 @@ impl ::core::fmt::Debug for PartType { #[doc = "*Required features: `\"Win32_Media_Audio\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn PlaySoundA<'a, P0, P1>(pszsound: P0, hmod: P1, fdwsound: u32) -> super::super::Foundation::BOOL +pub unsafe fn PlaySoundA<'a, P0, P1>(pszsound: P0, hmod: P1, fdwsound: SND_FLAGS) -> super::super::Foundation::BOOL where P0: ::std::convert::Into<::windows::core::PCSTR>, P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn PlaySoundA(pszsound: ::windows::core::PCSTR, hmod: super::super::Foundation::HINSTANCE, fdwsound: u32) -> super::super::Foundation::BOOL; + fn PlaySoundA(pszsound: ::windows::core::PCSTR, hmod: super::super::Foundation::HINSTANCE, fdwsound: SND_FLAGS) -> super::super::Foundation::BOOL; } PlaySoundA(pszsound.into(), hmod.into(), fdwsound) } #[doc = "*Required features: `\"Win32_Media_Audio\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn PlaySoundW<'a, P0, P1>(pszsound: P0, hmod: P1, fdwsound: u32) -> super::super::Foundation::BOOL +pub unsafe fn PlaySoundW<'a, P0, P1>(pszsound: P0, hmod: P1, fdwsound: SND_FLAGS) -> super::super::Foundation::BOOL where P0: ::std::convert::Into<::windows::core::PCWSTR>, P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn PlaySoundW(pszsound: ::windows::core::PCWSTR, hmod: super::super::Foundation::HINSTANCE, fdwsound: u32) -> super::super::Foundation::BOOL; + fn PlaySoundW(pszsound: ::windows::core::PCWSTR, hmod: super::super::Foundation::HINSTANCE, fdwsound: SND_FLAGS) -> super::super::Foundation::BOOL; } PlaySoundW(pszsound.into(), hmod.into(), fdwsound) } #[doc = "*Required features: `\"Win32_Media_Audio\"`*"] pub const SND_ALIAS_START: u32 = 0u32; #[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SND_FLAGS(pub u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_APPLICATION: SND_FLAGS = SND_FLAGS(128u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_ALIAS: SND_FLAGS = SND_FLAGS(65536u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_ALIAS_ID: SND_FLAGS = SND_FLAGS(1114112u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_FILENAME: SND_FLAGS = SND_FLAGS(131072u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_RESOURCE: SND_FLAGS = SND_FLAGS(262148u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_ASYNC: SND_FLAGS = SND_FLAGS(1u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_NODEFAULT: SND_FLAGS = SND_FLAGS(2u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_LOOP: SND_FLAGS = SND_FLAGS(8u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_MEMORY: SND_FLAGS = SND_FLAGS(4u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_NOSTOP: SND_FLAGS = SND_FLAGS(16u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_NOWAIT: SND_FLAGS = SND_FLAGS(8192u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_PURGE: SND_FLAGS = SND_FLAGS(64u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_SENTRY: SND_FLAGS = SND_FLAGS(524288u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_SYNC: SND_FLAGS = SND_FLAGS(0u32); +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] +pub const SND_SYSTEM: SND_FLAGS = SND_FLAGS(2097152u32); +impl ::core::marker::Copy for SND_FLAGS {} +impl ::core::clone::Clone for SND_FLAGS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SND_FLAGS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SND_FLAGS { + type Abi = Self; +} +impl ::core::fmt::Debug for SND_FLAGS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SND_FLAGS").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for SND_FLAGS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for SND_FLAGS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for SND_FLAGS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for SND_FLAGS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for SND_FLAGS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} +#[doc = "*Required features: `\"Win32_Media_Audio\"`*"] pub const SND_RING: i32 = 1048576i32; #[doc = "*Required features: `\"Win32_Media_Audio\"`*"] pub const SPATIAL_AUDIO_POSITION: u32 = 200u32; diff --git a/crates/libs/windows/src/Windows/Win32/Media/DirectShow/impl.rs b/crates/libs/windows/src/Windows/Win32/Media/DirectShow/impl.rs index ebb2fc55c5..ea8ecc4ae7 100644 --- a/crates/libs/windows/src/Windows/Win32/Media/DirectShow/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/Media/DirectShow/impl.rs @@ -38162,6 +38162,7 @@ impl IVMRMixerBitmap9_Vtbl { iid == &::IID } } +#[cfg(feature = "Win32_Foundation")] pub trait IVMRMixerControl_Impl: Sized { fn SetAlpha(&self, dwstreamid: u32, alpha: f32) -> ::windows::core::Result<()>; fn GetAlpha(&self, dwstreamid: u32, palpha: *mut f32) -> ::windows::core::Result<()>; @@ -38169,12 +38170,14 @@ pub trait IVMRMixerControl_Impl: Sized { fn GetZOrder(&self, dwstreamid: u32, pz: *mut u32) -> ::windows::core::Result<()>; fn SetOutputRect(&self, dwstreamid: u32, prect: *const NORMALIZEDRECT) -> ::windows::core::Result<()>; fn GetOutputRect(&self, dwstreamid: u32, prect: *mut NORMALIZEDRECT) -> ::windows::core::Result<()>; - fn SetBackgroundClr(&self, clrbkg: u32) -> ::windows::core::Result<()>; - fn GetBackgroundClr(&self, lpclrbkg: *mut u32) -> ::windows::core::Result<()>; + fn SetBackgroundClr(&self, clrbkg: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; + fn GetBackgroundClr(&self, lpclrbkg: *mut super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; fn SetMixingPrefs(&self, dwmixerprefs: u32) -> ::windows::core::Result<()>; fn GetMixingPrefs(&self, pdwmixerprefs: *mut u32) -> ::windows::core::Result<()>; } +#[cfg(feature = "Win32_Foundation")] impl ::windows::core::RuntimeName for IVMRMixerControl {} +#[cfg(feature = "Win32_Foundation")] impl IVMRMixerControl_Vtbl { pub const fn new, Impl: IVMRMixerControl_Impl, const OFFSET: isize>() -> IVMRMixerControl_Vtbl { unsafe extern "system" fn SetAlpha, Impl: IVMRMixerControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, dwstreamid: u32, alpha: f32) -> ::windows::core::HRESULT { @@ -38207,12 +38210,12 @@ impl IVMRMixerControl_Vtbl { let this = (*this).get_impl(); this.GetOutputRect(::core::mem::transmute_copy(&dwstreamid), ::core::mem::transmute_copy(&prect)).into() } - unsafe extern "system" fn SetBackgroundClr, Impl: IVMRMixerControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clrbkg: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetBackgroundClr, Impl: IVMRMixerControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clrbkg: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetBackgroundClr(::core::mem::transmute_copy(&clrbkg)).into() } - unsafe extern "system" fn GetBackgroundClr, Impl: IVMRMixerControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, lpclrbkg: *mut u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetBackgroundClr, Impl: IVMRMixerControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, lpclrbkg: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetBackgroundClr(::core::mem::transmute_copy(&lpclrbkg)).into() @@ -38245,6 +38248,7 @@ impl IVMRMixerControl_Vtbl { iid == &::IID } } +#[cfg(feature = "Win32_Foundation")] pub trait IVMRMixerControl9_Impl: Sized { fn SetAlpha(&self, dwstreamid: u32, alpha: f32) -> ::windows::core::Result<()>; fn GetAlpha(&self, dwstreamid: u32) -> ::windows::core::Result; @@ -38252,15 +38256,17 @@ pub trait IVMRMixerControl9_Impl: Sized { fn GetZOrder(&self, dwstreamid: u32) -> ::windows::core::Result; fn SetOutputRect(&self, dwstreamid: u32, prect: *const VMR9NormalizedRect) -> ::windows::core::Result<()>; fn GetOutputRect(&self, dwstreamid: u32) -> ::windows::core::Result; - fn SetBackgroundClr(&self, clrbkg: u32) -> ::windows::core::Result<()>; - fn GetBackgroundClr(&self, lpclrbkg: *const u32) -> ::windows::core::Result<()>; + fn SetBackgroundClr(&self, clrbkg: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; + fn GetBackgroundClr(&self, lpclrbkg: *const super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; fn SetMixingPrefs(&self, dwmixerprefs: u32) -> ::windows::core::Result<()>; fn GetMixingPrefs(&self) -> ::windows::core::Result; fn SetProcAmpControl(&self, dwstreamid: u32, lpclrcontrol: *const VMR9ProcAmpControl) -> ::windows::core::Result<()>; fn GetProcAmpControl(&self, dwstreamid: u32, lpclrcontrol: *mut VMR9ProcAmpControl) -> ::windows::core::Result<()>; fn GetProcAmpControlRange(&self, dwstreamid: u32, lpclrcontrol: *mut VMR9ProcAmpControlRange) -> ::windows::core::Result<()>; } +#[cfg(feature = "Win32_Foundation")] impl ::windows::core::RuntimeName for IVMRMixerControl9 {} +#[cfg(feature = "Win32_Foundation")] impl IVMRMixerControl9_Vtbl { pub const fn new, Impl: IVMRMixerControl9_Impl, const OFFSET: isize>() -> IVMRMixerControl9_Vtbl { unsafe extern "system" fn SetAlpha, Impl: IVMRMixerControl9_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, dwstreamid: u32, alpha: f32) -> ::windows::core::HRESULT { @@ -38311,12 +38317,12 @@ impl IVMRMixerControl9_Vtbl { ::core::result::Result::Err(err) => err.into(), } } - unsafe extern "system" fn SetBackgroundClr, Impl: IVMRMixerControl9_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clrbkg: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetBackgroundClr, Impl: IVMRMixerControl9_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clrbkg: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetBackgroundClr(::core::mem::transmute_copy(&clrbkg)).into() } - unsafe extern "system" fn GetBackgroundClr, Impl: IVMRMixerControl9_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, lpclrbkg: *const u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetBackgroundClr, Impl: IVMRMixerControl9_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, lpclrbkg: *const super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetBackgroundClr(::core::mem::transmute_copy(&lpclrbkg)).into() @@ -38707,18 +38713,18 @@ impl IVMRSurfaceAllocatorEx9_Vtbl { iid == &::IID || iid == &::IID } } -#[cfg(all(feature = "Win32_Graphics_DirectDraw", feature = "Win32_Graphics_Gdi"))] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_DirectDraw", feature = "Win32_Graphics_Gdi"))] pub trait IVMRSurfaceAllocatorNotify_Impl: Sized { fn AdviseSurfaceAllocator(&self, dwuserid: usize, lpivrmsurfaceallocator: &::core::option::Option) -> ::windows::core::Result<()>; fn SetDDrawDevice(&self, lpddrawdevice: &::core::option::Option, hmonitor: super::super::Graphics::Gdi::HMONITOR) -> ::windows::core::Result<()>; fn ChangeDDrawDevice(&self, lpddrawdevice: &::core::option::Option, hmonitor: super::super::Graphics::Gdi::HMONITOR) -> ::windows::core::Result<()>; fn RestoreDDrawSurfaces(&self) -> ::windows::core::Result<()>; fn NotifyEvent(&self, eventcode: i32, param1: isize, param2: isize) -> ::windows::core::Result<()>; - fn SetBorderColor(&self, clrborder: u32) -> ::windows::core::Result<()>; + fn SetBorderColor(&self, clrborder: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; } -#[cfg(all(feature = "Win32_Graphics_DirectDraw", feature = "Win32_Graphics_Gdi"))] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_DirectDraw", feature = "Win32_Graphics_Gdi"))] impl ::windows::core::RuntimeName for IVMRSurfaceAllocatorNotify {} -#[cfg(all(feature = "Win32_Graphics_DirectDraw", feature = "Win32_Graphics_Gdi"))] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_DirectDraw", feature = "Win32_Graphics_Gdi"))] impl IVMRSurfaceAllocatorNotify_Vtbl { pub const fn new, Impl: IVMRSurfaceAllocatorNotify_Impl, const OFFSET: isize>() -> IVMRSurfaceAllocatorNotify_Vtbl { unsafe extern "system" fn AdviseSurfaceAllocator, Impl: IVMRSurfaceAllocatorNotify_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, dwuserid: usize, lpivrmsurfaceallocator: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { @@ -38746,7 +38752,7 @@ impl IVMRSurfaceAllocatorNotify_Vtbl { let this = (*this).get_impl(); this.NotifyEvent(::core::mem::transmute_copy(&eventcode), ::core::mem::transmute_copy(¶m1), ::core::mem::transmute_copy(¶m2)).into() } - unsafe extern "system" fn SetBorderColor, Impl: IVMRSurfaceAllocatorNotify_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clrborder: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetBorderColor, Impl: IVMRSurfaceAllocatorNotify_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clrborder: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetBorderColor(::core::mem::transmute_copy(&clrborder)).into() @@ -38909,10 +38915,10 @@ pub trait IVMRWindowlessControl_Impl: Sized { fn RepaintVideo(&self, hwnd: super::super::Foundation::HWND, hdc: super::super::Graphics::Gdi::HDC) -> ::windows::core::Result<()>; fn DisplayModeChanged(&self) -> ::windows::core::Result<()>; fn GetCurrentImage(&self, lpdib: *mut *mut u8) -> ::windows::core::Result<()>; - fn SetBorderColor(&self, clr: u32) -> ::windows::core::Result<()>; - fn GetBorderColor(&self, lpclr: *mut u32) -> ::windows::core::Result<()>; - fn SetColorKey(&self, clr: u32) -> ::windows::core::Result<()>; - fn GetColorKey(&self, lpclr: *mut u32) -> ::windows::core::Result<()>; + fn SetBorderColor(&self, clr: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; + fn GetBorderColor(&self, lpclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; + fn SetColorKey(&self, clr: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; + fn GetColorKey(&self, lpclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl ::windows::core::RuntimeName for IVMRWindowlessControl {} @@ -38974,22 +38980,22 @@ impl IVMRWindowlessControl_Vtbl { let this = (*this).get_impl(); this.GetCurrentImage(::core::mem::transmute_copy(&lpdib)).into() } - unsafe extern "system" fn SetBorderColor, Impl: IVMRWindowlessControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clr: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetBorderColor, Impl: IVMRWindowlessControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clr: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetBorderColor(::core::mem::transmute_copy(&clr)).into() } - unsafe extern "system" fn GetBorderColor, Impl: IVMRWindowlessControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, lpclr: *mut u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetBorderColor, Impl: IVMRWindowlessControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, lpclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetBorderColor(::core::mem::transmute_copy(&lpclr)).into() } - unsafe extern "system" fn SetColorKey, Impl: IVMRWindowlessControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clr: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetColorKey, Impl: IVMRWindowlessControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clr: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetColorKey(::core::mem::transmute_copy(&clr)).into() } - unsafe extern "system" fn GetColorKey, Impl: IVMRWindowlessControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, lpclr: *mut u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetColorKey, Impl: IVMRWindowlessControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, lpclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetColorKey(::core::mem::transmute_copy(&lpclr)).into() @@ -39030,8 +39036,8 @@ pub trait IVMRWindowlessControl9_Impl: Sized { fn RepaintVideo(&self, hwnd: super::super::Foundation::HWND, hdc: super::super::Graphics::Gdi::HDC) -> ::windows::core::Result<()>; fn DisplayModeChanged(&self) -> ::windows::core::Result<()>; fn GetCurrentImage(&self) -> ::windows::core::Result<*mut u8>; - fn SetBorderColor(&self, clr: u32) -> ::windows::core::Result<()>; - fn GetBorderColor(&self) -> ::windows::core::Result; + fn SetBorderColor(&self, clr: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; + fn GetBorderColor(&self) -> ::windows::core::Result; } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl ::windows::core::RuntimeName for IVMRWindowlessControl9 {} @@ -39105,12 +39111,12 @@ impl IVMRWindowlessControl9_Vtbl { ::core::result::Result::Err(err) => err.into(), } } - unsafe extern "system" fn SetBorderColor, Impl: IVMRWindowlessControl9_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clr: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetBorderColor, Impl: IVMRWindowlessControl9_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clr: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetBorderColor(::core::mem::transmute_copy(&clr)).into() } - unsafe extern "system" fn GetBorderColor, Impl: IVMRWindowlessControl9_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, lpclr: *mut u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetBorderColor, Impl: IVMRWindowlessControl9_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, lpclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetBorderColor() { diff --git a/crates/libs/windows/src/Windows/Win32/Media/DirectShow/mod.rs b/crates/libs/windows/src/Windows/Win32/Media/DirectShow/mod.rs index 28117db2c5..42db029643 100644 --- a/crates/libs/windows/src/Windows/Win32/Media/DirectShow/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Media/DirectShow/mod.rs @@ -2220,6 +2220,26 @@ impl ::core::fmt::Debug for AM_GRAPH_CONFIG_RECONNECT_FLAGS { f.debug_tuple("AM_GRAPH_CONFIG_RECONNECT_FLAGS").field(&self.0).finish() } } +pub const AM_INTERFACESETID_Standard: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1a8766a0_62ce_11cf_a5d6_28db04c10000); +pub const AM_KSCATEGORY_AUDIO: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6994ad04_93ef_11d0_a3cc_00a0c9223196); +pub const AM_KSCATEGORY_CAPTURE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x65e8773d_8f56_11d0_a3b9_00a0c9223196); +pub const AM_KSCATEGORY_CROSSBAR: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa799a801_a46d_11d0_a18c_00a02401dcd4); +pub const AM_KSCATEGORY_DATACOMPRESSOR: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1e84c900_7e70_11d0_a5d6_28db04c10000); +pub const AM_KSCATEGORY_RENDER: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x65e8773e_8f56_11d0_a3b9_00a0c9223196); +pub const AM_KSCATEGORY_SPLITTER: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0a4252a0_7e70_11d0_a5d6_28db04c10000); +pub const AM_KSCATEGORY_TVAUDIO: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa799a802_a46d_11d0_a18c_00a02401dcd4); +pub const AM_KSCATEGORY_TVTUNER: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa799a800_a46d_11d0_a18c_00a02401dcd4); +pub const AM_KSCATEGORY_VBICODEC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x07dad660_22f1_11d1_a9f4_00c04fbbde8f); +pub const AM_KSCATEGORY_VBICODEC_MI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9c24a977_0951_451a_8006_0e49bd28cd5f); +pub const AM_KSCATEGORY_VIDEO: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6994ad05_93ef_11d0_a3cc_00a0c9223196); +pub const AM_KSPROPSETID_AC3: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbfabe720_6e1f_11d0_bcf2_444553540000); +pub const AM_KSPROPSETID_CopyProt: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0e8a0a40_6aef_11d0_9ed0_00a024ca19b3); +pub const AM_KSPROPSETID_DVD_RateChange: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3577eb09_9582_477f_b29c_b0c452a4ff9a); +pub const AM_KSPROPSETID_DvdKaraoke: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xae4720ae_aa71_42d8_b82a_fffdf58b76fd); +pub const AM_KSPROPSETID_DvdSubPic: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xac390460_43af_11d0_bd6a_003505c103a9); +pub const AM_KSPROPSETID_FrameStep: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc830acbd_ab07_492f_8852_45b6987c2979); +pub const AM_KSPROPSETID_MPEG4_MediaType_Attributes: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xff6c4bfa_07a9_4c7b_a237_672f9d68065f); +pub const AM_KSPROPSETID_TSRateChange: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa503c5c0_1d1d_11d1_ad80_444553540000); #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] @@ -6985,33 +7005,41 @@ pub const CLSID_PTFilter: ::windows::core::GUID = ::windows::core::GUID::from_u1 pub const CLSID_XDSCodecProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc4c4c483_0049_4e2b_98fb_9537f6ce516d); pub const CLSID_XDSCodecTagProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc4c4c493_0049_4e2b_98fb_9537f6ce516d); #[repr(C)] -#[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] +#[doc = "*Required features: `\"Win32_Media_DirectShow\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct COLORKEY { pub KeyType: u32, pub PaletteIndex: u32, - pub LowColorValue: u32, - pub HighColorValue: u32, + pub LowColorValue: super::super::Foundation::COLORREF, + pub HighColorValue: super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for COLORKEY {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for COLORKEY { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for COLORKEY { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("COLORKEY").field("KeyType", &self.KeyType).field("PaletteIndex", &self.PaletteIndex).field("LowColorValue", &self.LowColorValue).field("HighColorValue", &self.HighColorValue).finish() } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for COLORKEY { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for COLORKEY { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for COLORKEY {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for COLORKEY { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -13021,6 +13049,15 @@ impl ::core::fmt::Debug for FILTER_STATE { } pub const FORMATTYPE_CPFilters_Processed: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6739b36f_1d5f_4ac2_8192_28bb0e73d16a); pub const FORMATTYPE_ETDTFilter_Tagged: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc4c4c4d1_0049_4e2b_98fb_9537f6ce516d); +pub const FORMAT_DVD_LPCMAudio: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d80e6_db46_11cf_b4d1_00805f6cbbea); +pub const FORMAT_DolbyAC3: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d80e4_db46_11cf_b4d1_00805f6cbbea); +pub const FORMAT_Image: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x692fa379_d3e8_4651_b5b4_0b94b013eeaf); +pub const FORMAT_JPEGImage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x692fa379_d3e8_4651_b5b4_0b94b013eeaf); +pub const FORMAT_MPEG2Audio: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d80e5_db46_11cf_b4d1_00805f6cbbea); +pub const FORMAT_MPEG2Video: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d80e3_db46_11cf_b4d1_00805f6cbbea); +pub const FORMAT_MPEG2_VIDEO: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d80e3_db46_11cf_b4d1_00805f6cbbea); +pub const FORMAT_UVCH264Video: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2017be05_6629_4248_aaed_7e1a47bc9b9c); +pub const FORMAT_VIDEOINFO2: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf72a76a0_eb0a_11d0_ace4_0000c0cc16ba); pub const FilgraphManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436ebb3_524f_11ce_9f53_0020af0ba770); #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] #[repr(transparent)] @@ -14580,7 +14617,7 @@ impl ::core::fmt::Debug for IAMDirectSound { } unsafe impl ::windows::core::Interface for IAMDirectSound { type Vtable = IAMDirectSound_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x546f4260_d53e_11cf_b3f0_00aa003761c5); } #[repr(C)] #[doc(hidden)] @@ -15508,7 +15545,7 @@ impl ::core::fmt::Debug for IAMLine21Decoder { } unsafe impl ::windows::core::Interface for IAMLine21Decoder { type Vtable = IAMLine21Decoder_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6e8d4a21_310c_11d0_b79a_00aa003767a7); } #[repr(C)] #[doc(hidden)] @@ -19433,7 +19470,7 @@ impl ::core::fmt::Debug for IAMWstDecoder { } unsafe impl ::windows::core::Interface for IAMWstDecoder { type Vtable = IAMWstDecoder_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc056de21_75c2_11d3_a184_00105aef9f33); } #[repr(C)] #[doc(hidden)] @@ -27113,7 +27150,7 @@ impl ::core::fmt::Debug for IBaseVideoMixer { } unsafe impl ::windows::core::Interface for IBaseVideoMixer { type Vtable = IBaseVideoMixer_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x61ded640_e912_11ce_a099_00aa00479a58); } #[repr(C)] #[doc(hidden)] @@ -30232,6 +30269,8 @@ impl IDDrawExclModeVideoCallback { { (::windows::core::Interface::vtable(self).OnUpdateOverlay)(::windows::core::Interface::as_raw(self), bbefore.into(), dwflags, boldvisible.into(), ::core::mem::transmute(prcoldsrc), ::core::mem::transmute(prcolddest), bnewvisible.into(), ::core::mem::transmute(prcnewsrc), ::core::mem::transmute(prcnewdest)).ok() } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn OnUpdateColorKey(&self, pkey: &COLORKEY, dwcolor: u32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).OnUpdateColorKey)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pkey), dwcolor).ok() } @@ -30282,7 +30321,10 @@ pub struct IDDrawExclModeVideoCallback_Vtbl { pub OnUpdateOverlay: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bbefore: super::super::Foundation::BOOL, dwflags: u32, boldvisible: super::super::Foundation::BOOL, prcoldsrc: *const super::super::Foundation::RECT, prcolddest: *const super::super::Foundation::RECT, bnewvisible: super::super::Foundation::BOOL, prcnewsrc: *const super::super::Foundation::RECT, prcnewdest: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] OnUpdateOverlay: usize, + #[cfg(feature = "Win32_Foundation")] pub OnUpdateColorKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pkey: *const COLORKEY, dwcolor: u32) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + OnUpdateColorKey: usize, pub OnUpdateSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwwidth: u32, dwheight: u32, dwarwidth: u32, dwarheight: u32) -> ::windows::core::HRESULT, } #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] @@ -35885,7 +35927,7 @@ impl ::core::fmt::Debug for IDirectDrawVideo { } unsafe impl ::windows::core::Interface for IDirectDrawVideo { type Vtable = IDirectDrawVideo_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36d39eb0_dd75_11ce_bf0e_00aa0055595a); } #[repr(C)] #[doc(hidden)] @@ -43640,7 +43682,7 @@ impl ::core::fmt::Debug for IFullScreenVideo { } unsafe impl ::windows::core::Interface for IFullScreenVideo { type Vtable = IFullScreenVideo_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdd1d7110_7836_11cf_bf47_00aa0055595a); } #[repr(C)] #[doc(hidden)] @@ -43821,7 +43863,7 @@ impl ::core::fmt::Debug for IFullScreenVideoEx { } unsafe impl ::windows::core::Interface for IFullScreenVideoEx { type Vtable = IFullScreenVideoEx_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x53479470_f1dd_11cf_bc42_00aa00ac74f6); } #[repr(C)] #[doc(hidden)] @@ -65218,9 +65260,13 @@ impl IMixerPinConfig { pub unsafe fn GetZOrder(&self, pdwzorder: &mut u32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetZOrder)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pdwzorder)).ok() } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn SetColorKey(&self, pcolorkey: &mut COLORKEY) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).SetColorKey)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pcolorkey)).ok() } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn GetColorKey(&self, pcolorkey: &mut COLORKEY, pcolor: &mut u32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetColorKey)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pcolorkey), ::core::mem::transmute(pcolor)).ok() } @@ -65283,7 +65329,7 @@ impl ::core::fmt::Debug for IMixerPinConfig { } unsafe impl ::windows::core::Interface for IMixerPinConfig { type Vtable = IMixerPinConfig_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x593cdde1_0759_11d1_9e69_00c04fd7c15b); } #[repr(C)] #[doc(hidden)] @@ -65293,8 +65339,14 @@ pub struct IMixerPinConfig_Vtbl { pub GetRelativePosition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwleft: *mut u32, pdwtop: *mut u32, pdwright: *mut u32, pdwbottom: *mut u32) -> ::windows::core::HRESULT, pub SetZOrder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwzorder: u32) -> ::windows::core::HRESULT, pub GetZOrder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwzorder: *mut u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] pub SetColorKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcolorkey: *mut COLORKEY) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetColorKey: usize, + #[cfg(feature = "Win32_Foundation")] pub GetColorKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcolorkey: *mut COLORKEY, pcolor: *mut u32) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetColorKey: usize, pub SetBlendingParameter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwblendingparameter: u32) -> ::windows::core::HRESULT, pub GetBlendingParameter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwblendingparameter: *mut u32) -> ::windows::core::HRESULT, pub SetAspectRatioMode: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, amaspectratiomode: AM_ASPECT_RATIO_MODE) -> ::windows::core::HRESULT, @@ -65324,9 +65376,13 @@ impl IMixerPinConfig2 { pub unsafe fn GetZOrder(&self, pdwzorder: &mut u32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).base__.GetZOrder)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pdwzorder)).ok() } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn SetColorKey(&self, pcolorkey: &mut COLORKEY) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).base__.SetColorKey)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pcolorkey)).ok() } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn GetColorKey(&self, pcolorkey: &mut COLORKEY, pcolor: &mut u32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).base__.GetColorKey)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pcolorkey), ::core::mem::transmute(pcolor)).ok() } @@ -65414,7 +65470,7 @@ impl ::core::fmt::Debug for IMixerPinConfig2 { } unsafe impl ::windows::core::Interface for IMixerPinConfig2 { type Vtable = IMixerPinConfig2_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xebf47182_8764_11d1_9e69_00c04fd7c15b); } #[repr(C)] #[doc(hidden)] @@ -65799,7 +65855,7 @@ impl ::core::fmt::Debug for IMpegAudioDecoder { } unsafe impl ::windows::core::Interface for IMpegAudioDecoder { type Vtable = IMpegAudioDecoder_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb45dd570_3c77_11d1_abe1_00a0c905f375); } #[repr(C)] #[doc(hidden)] @@ -65928,14 +65984,20 @@ impl IOverlay { pub unsafe fn SetPalette(&self, ppalette: &[super::super::Graphics::Gdi::PALETTEENTRY]) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).SetPalette)(::windows::core::Interface::as_raw(self), ppalette.len() as _, ::core::mem::transmute(ppalette.as_ptr())).ok() } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn GetDefaultColorKey(&self) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); (::windows::core::Interface::vtable(self).GetDefaultColorKey)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn GetColorKey(&self) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); (::windows::core::Interface::vtable(self).GetColorKey)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn SetColorKey(&self, pcolorkey: &mut COLORKEY) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).SetColorKey)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pcolorkey)).ok() } @@ -66012,9 +66074,18 @@ pub struct IOverlay_Vtbl { pub SetPalette: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwcolors: u32, ppalette: *const super::super::Graphics::Gdi::PALETTEENTRY) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Graphics_Gdi"))] SetPalette: usize, + #[cfg(feature = "Win32_Foundation")] pub GetDefaultColorKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcolorkey: *mut COLORKEY) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetDefaultColorKey: usize, + #[cfg(feature = "Win32_Foundation")] pub GetColorKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcolorkey: *mut COLORKEY) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetColorKey: usize, + #[cfg(feature = "Win32_Foundation")] pub SetColorKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcolorkey: *mut COLORKEY) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetColorKey: usize, #[cfg(feature = "Win32_Foundation")] pub GetWindowHandle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phwnd: *mut super::super::Foundation::HWND) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] @@ -66044,6 +66115,8 @@ impl IOverlayNotify { pub unsafe fn OnClipChange(&self, psourcerect: &super::super::Foundation::RECT, pdestinationrect: &super::super::Foundation::RECT, prgndata: &super::super::Graphics::Gdi::RGNDATA) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).OnClipChange)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(psourcerect), ::core::mem::transmute(pdestinationrect), ::core::mem::transmute(prgndata)).ok() } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn OnColorKeyChange(&self, pcolorkey: &COLORKEY) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).OnColorKeyChange)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pcolorkey)).ok() } @@ -66100,7 +66173,10 @@ pub struct IOverlayNotify_Vtbl { pub OnClipChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psourcerect: *const super::super::Foundation::RECT, pdestinationrect: *const super::super::Foundation::RECT, prgndata: *const super::super::Graphics::Gdi::RGNDATA) -> ::windows::core::HRESULT, #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))] OnClipChange: usize, + #[cfg(feature = "Win32_Foundation")] pub OnColorKeyChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcolorkey: *const COLORKEY) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + OnColorKeyChange: usize, #[cfg(feature = "Win32_Foundation")] pub OnPositionChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psourcerect: *const super::super::Foundation::RECT, pdestinationrect: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] @@ -66120,6 +66196,8 @@ impl IOverlayNotify2 { pub unsafe fn OnClipChange(&self, psourcerect: &super::super::Foundation::RECT, pdestinationrect: &super::super::Foundation::RECT, prgndata: &super::super::Graphics::Gdi::RGNDATA) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).base__.OnClipChange)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(psourcerect), ::core::mem::transmute(pdestinationrect), ::core::mem::transmute(prgndata)).ok() } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn OnColorKeyChange(&self, pcolorkey: &COLORKEY) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).base__.OnColorKeyChange)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pcolorkey)).ok() } @@ -67785,7 +67863,7 @@ impl ::core::fmt::Debug for IQualProp { } unsafe impl ::windows::core::Interface for IQualProp { type Vtable = IQualProp_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1bd0ecb0_f8e2_11ce_aac6_0020af0b99a3); } #[repr(C)] #[doc(hidden)] @@ -73558,10 +73636,17 @@ impl IVMRMixerControl { pub unsafe fn GetOutputRect(&self, dwstreamid: u32, prect: &mut NORMALIZEDRECT) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetOutputRect)(::windows::core::Interface::as_raw(self), dwstreamid, ::core::mem::transmute(prect)).ok() } - pub unsafe fn SetBackgroundClr(&self, clrbkg: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetBackgroundClr)(::windows::core::Interface::as_raw(self), clrbkg).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetBackgroundClr<'a, P0>(&self, clrbkg: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).SetBackgroundClr)(::windows::core::Interface::as_raw(self), clrbkg.into()).ok() } - pub unsafe fn GetBackgroundClr(&self, lpclrbkg: &mut u32) -> ::windows::core::Result<()> { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetBackgroundClr(&self, lpclrbkg: &mut super::super::Foundation::COLORREF) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetBackgroundClr)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(lpclrbkg)).ok() } pub unsafe fn SetMixingPrefs(&self, dwmixerprefs: u32) -> ::windows::core::Result<()> { @@ -73616,8 +73701,14 @@ pub struct IVMRMixerControl_Vtbl { pub GetZOrder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwstreamid: u32, pz: *mut u32) -> ::windows::core::HRESULT, pub SetOutputRect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwstreamid: u32, prect: *const NORMALIZEDRECT) -> ::windows::core::HRESULT, pub GetOutputRect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwstreamid: u32, prect: *mut NORMALIZEDRECT) -> ::windows::core::HRESULT, - pub SetBackgroundClr: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clrbkg: u32) -> ::windows::core::HRESULT, - pub GetBackgroundClr: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpclrbkg: *mut u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub SetBackgroundClr: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clrbkg: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetBackgroundClr: usize, + #[cfg(feature = "Win32_Foundation")] + pub GetBackgroundClr: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpclrbkg: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetBackgroundClr: usize, pub SetMixingPrefs: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwmixerprefs: u32) -> ::windows::core::HRESULT, pub GetMixingPrefs: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwmixerprefs: *mut u32) -> ::windows::core::HRESULT, } @@ -73646,10 +73737,17 @@ impl IVMRMixerControl9 { let mut result__ = ::core::mem::MaybeUninit::zeroed(); (::windows::core::Interface::vtable(self).GetOutputRect)(::windows::core::Interface::as_raw(self), dwstreamid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } - pub unsafe fn SetBackgroundClr(&self, clrbkg: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetBackgroundClr)(::windows::core::Interface::as_raw(self), clrbkg).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetBackgroundClr<'a, P0>(&self, clrbkg: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).SetBackgroundClr)(::windows::core::Interface::as_raw(self), clrbkg.into()).ok() } - pub unsafe fn GetBackgroundClr(&self, lpclrbkg: &u32) -> ::windows::core::Result<()> { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetBackgroundClr(&self, lpclrbkg: &super::super::Foundation::COLORREF) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetBackgroundClr)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(lpclrbkg)).ok() } pub unsafe fn SetMixingPrefs(&self, dwmixerprefs: u32) -> ::windows::core::Result<()> { @@ -73714,8 +73812,14 @@ pub struct IVMRMixerControl9_Vtbl { pub GetZOrder: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwstreamid: u32, pz: *mut u32) -> ::windows::core::HRESULT, pub SetOutputRect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwstreamid: u32, prect: *const VMR9NormalizedRect) -> ::windows::core::HRESULT, pub GetOutputRect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwstreamid: u32, prect: *mut VMR9NormalizedRect) -> ::windows::core::HRESULT, - pub SetBackgroundClr: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clrbkg: u32) -> ::windows::core::HRESULT, - pub GetBackgroundClr: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpclrbkg: *const u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub SetBackgroundClr: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clrbkg: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetBackgroundClr: usize, + #[cfg(feature = "Win32_Foundation")] + pub GetBackgroundClr: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpclrbkg: *const super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetBackgroundClr: usize, pub SetMixingPrefs: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwmixerprefs: u32) -> ::windows::core::HRESULT, pub GetMixingPrefs: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwmixerprefs: *mut u32) -> ::windows::core::HRESULT, pub SetProcAmpControl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwstreamid: u32, lpclrcontrol: *const VMR9ProcAmpControl) -> ::windows::core::HRESULT, @@ -74274,8 +74378,13 @@ impl IVMRSurfaceAllocatorNotify { pub unsafe fn NotifyEvent(&self, eventcode: i32, param1: isize, param2: isize) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).NotifyEvent)(::windows::core::Interface::as_raw(self), eventcode, param1, param2).ok() } - pub unsafe fn SetBorderColor(&self, clrborder: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetBorderColor)(::windows::core::Interface::as_raw(self), clrborder).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetBorderColor<'a, P0>(&self, clrborder: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).SetBorderColor)(::windows::core::Interface::as_raw(self), clrborder.into()).ok() } } impl ::core::convert::From for ::windows::core::IUnknown { @@ -74328,7 +74437,10 @@ pub struct IVMRSurfaceAllocatorNotify_Vtbl { ChangeDDrawDevice: usize, pub RestoreDDrawSurfaces: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, pub NotifyEvent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, eventcode: i32, param1: isize, param2: isize) -> ::windows::core::HRESULT, - pub SetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clrborder: u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub SetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clrborder: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetBorderColor: usize, } #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] #[repr(transparent)] @@ -74624,16 +74736,30 @@ impl IVMRWindowlessControl { pub unsafe fn GetCurrentImage(&self, lpdib: &mut *mut u8) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetCurrentImage)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(lpdib)).ok() } - pub unsafe fn SetBorderColor(&self, clr: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetBorderColor)(::windows::core::Interface::as_raw(self), clr).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetBorderColor<'a, P0>(&self, clr: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).SetBorderColor)(::windows::core::Interface::as_raw(self), clr.into()).ok() } - pub unsafe fn GetBorderColor(&self, lpclr: &mut u32) -> ::windows::core::Result<()> { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetBorderColor(&self, lpclr: &mut super::super::Foundation::COLORREF) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetBorderColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(lpclr)).ok() } - pub unsafe fn SetColorKey(&self, clr: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetColorKey)(::windows::core::Interface::as_raw(self), clr).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetColorKey<'a, P0>(&self, clr: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).SetColorKey)(::windows::core::Interface::as_raw(self), clr.into()).ok() } - pub unsafe fn GetColorKey(&self, lpclr: &mut u32) -> ::windows::core::Result<()> { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetColorKey(&self, lpclr: &mut super::super::Foundation::COLORREF) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetColorKey)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(lpclr)).ok() } } @@ -74699,10 +74825,22 @@ pub struct IVMRWindowlessControl_Vtbl { RepaintVideo: usize, pub DisplayModeChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, pub GetCurrentImage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpdib: *mut *mut u8) -> ::windows::core::HRESULT, - pub SetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clr: u32) -> ::windows::core::HRESULT, - pub GetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpclr: *mut u32) -> ::windows::core::HRESULT, - pub SetColorKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clr: u32) -> ::windows::core::HRESULT, - pub GetColorKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpclr: *mut u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub SetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clr: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetBorderColor: usize, + #[cfg(feature = "Win32_Foundation")] + pub GetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetBorderColor: usize, + #[cfg(feature = "Win32_Foundation")] + pub SetColorKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clr: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetColorKey: usize, + #[cfg(feature = "Win32_Foundation")] + pub GetColorKey: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetColorKey: usize, } #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] #[repr(transparent)] @@ -74758,12 +74896,19 @@ impl IVMRWindowlessControl9 { let mut result__ = ::core::mem::MaybeUninit::zeroed(); (::windows::core::Interface::vtable(self).GetCurrentImage)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::<*mut u8>(result__) } - pub unsafe fn SetBorderColor(&self, clr: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetBorderColor)(::windows::core::Interface::as_raw(self), clr).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetBorderColor<'a, P0>(&self, clr: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).SetBorderColor)(::windows::core::Interface::as_raw(self), clr.into()).ok() } - pub unsafe fn GetBorderColor(&self) -> ::windows::core::Result { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetBorderColor(&self) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetBorderColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).GetBorderColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } } impl ::core::convert::From for ::windows::core::IUnknown { @@ -74828,8 +74973,14 @@ pub struct IVMRWindowlessControl9_Vtbl { RepaintVideo: usize, pub DisplayModeChanged: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, pub GetCurrentImage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpdib: *mut *mut u8) -> ::windows::core::HRESULT, - pub SetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clr: u32) -> ::windows::core::HRESULT, - pub GetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpclr: *mut u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub SetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clr: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetBorderColor: usize, + #[cfg(feature = "Win32_Foundation")] + pub GetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetBorderColor: usize, } #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] #[repr(transparent)] @@ -75112,7 +75263,7 @@ impl ::core::fmt::Debug for IVPConfig { } unsafe impl ::windows::core::Interface for IVPConfig { type Vtable = IVPConfig_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbc29a660_30e3_11d0_9e69_00c04fd7c15b); } #[repr(C)] #[doc(hidden)] @@ -75236,7 +75387,7 @@ impl ::core::fmt::Debug for IVPNotify { } unsafe impl ::windows::core::Interface for IVPNotify { type Vtable = IVPNotify_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc76794a1_d6c5_11d0_9e69_00c04fd7c15b); } #[repr(C)] #[doc(hidden)] @@ -75335,7 +75486,7 @@ impl ::core::fmt::Debug for IVPNotify2 { } unsafe impl ::windows::core::Interface for IVPNotify2 { type Vtable = IVPNotify2_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xebf47183_8764_11d1_9e69_00c04fd7c15b); } #[repr(C)] #[doc(hidden)] @@ -75453,7 +75604,7 @@ impl ::core::fmt::Debug for IVPVBIConfig { } unsafe impl ::windows::core::Interface for IVPVBIConfig { type Vtable = IVPVBIConfig_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xec529b00_1a1f_11d1_bad9_00609744111a); } #[repr(C)] #[doc(hidden)] @@ -75516,7 +75667,7 @@ impl ::core::fmt::Debug for IVPVBINotify { } unsafe impl ::windows::core::Interface for IVPVBINotify { type Vtable = IVPVBINotify_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::zeroed(); + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xec529b01_1a1f_11d1_bad9_00609744111a); } #[repr(C)] #[doc(hidden)] @@ -79508,9 +79659,37 @@ pub const MAX_FILTER_NAME: u32 = 128u32; pub const MAX_PIN_NAME: u32 = 128u32; #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] pub const MAX_SIZE_MPEG1_SEQUENCE_INFO: u32 = 140u32; +pub const MEDIASUBTYPE_ATSC_SI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb3c7397c_d303_414d_b33c_4ed2c9d29733); pub const MEDIASUBTYPE_CPFilters_Processed: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x46adbd28_6fd0_4796_93b2_155c51dc048d); +pub const MEDIASUBTYPE_DOLBY_AC3: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d802c_db46_11cf_b4d1_00805f6cbbea); +pub const MEDIASUBTYPE_DTS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d8033_db46_11cf_b4d1_00805f6cbbea); +pub const MEDIASUBTYPE_DVB_SI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe9dd31a3_221d_4adb_8532_9af309c1a408); +pub const MEDIASUBTYPE_DVD_LPCM_AUDIO: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d8032_db46_11cf_b4d1_00805f6cbbea); +pub const MEDIASUBTYPE_DVD_NAVIGATION_DSI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d8030_db46_11cf_b4d1_00805f6cbbea); +pub const MEDIASUBTYPE_DVD_NAVIGATION_PCI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d802f_db46_11cf_b4d1_00805f6cbbea); +pub const MEDIASUBTYPE_DVD_NAVIGATION_PROVIDER: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d8031_db46_11cf_b4d1_00805f6cbbea); +pub const MEDIASUBTYPE_DVD_SUBPICTURE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d802d_db46_11cf_b4d1_00805f6cbbea); pub const MEDIASUBTYPE_ETDTFilter_Tagged: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc4c4c4d0_0049_4e2b_98fb_9537f6ce516d); +pub const MEDIASUBTYPE_ISDB_SI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe89ad298_3601_4b06_aaec_9ddeedcc5bd0); +pub const MEDIASUBTYPE_MPEG2DATA: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc892e55b_252d_42b5_a316_d997e7a5d995); +pub const MEDIASUBTYPE_MPEG2_AUDIO: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d802b_db46_11cf_b4d1_00805f6cbbea); +pub const MEDIASUBTYPE_MPEG2_PBDA_TRANSPORT_PROCESSED: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xaf748dd4_0d80_11db_9705_005056c00008); +pub const MEDIASUBTYPE_MPEG2_PBDA_TRANSPORT_RAW: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0d7aed42_cb9a_11db_9705_005056c00008); +pub const MEDIASUBTYPE_MPEG2_PROGRAM: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d8022_db46_11cf_b4d1_00805f6cbbea); +pub const MEDIASUBTYPE_MPEG2_TRANSPORT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d8023_db46_11cf_b4d1_00805f6cbbea); +pub const MEDIASUBTYPE_MPEG2_TRANSPORT_STRIDE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x138aa9a4_1ee2_4c5b_988e_19abfdbc8a11); +pub const MEDIASUBTYPE_MPEG2_UDCR_TRANSPORT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x18bec4ea_4676_450e_b478_0cd84c54b327); +pub const MEDIASUBTYPE_MPEG2_VERSIONED_TABLES: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1ed988b0_3ffc_4523_8725_347beec1a8a0); +pub const MEDIASUBTYPE_MPEG2_VIDEO: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d8026_db46_11cf_b4d1_00805f6cbbea); +pub const MEDIASUBTYPE_MPEG2_WMDRM_TRANSPORT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x18bec4ea_4676_450e_b478_0cd84c54b327); +pub const MEDIASUBTYPE_SDDS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d8034_db46_11cf_b4d1_00805f6cbbea); +pub const MEDIASUBTYPE_TIF_SI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xec232eb2_cb96_4191_b226_0ea129f38250); +pub const MEDIATYPE_CONTROL: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d8021_db46_11cf_b4d1_00805f6cbbea); +pub const MEDIATYPE_DVD_ENCRYPTED_PACK: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xed0b916a_044d_11d1_aa78_00c04fc31d60); +pub const MEDIATYPE_DVD_NAVIGATION: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d802e_db46_11cf_b4d1_00805f6cbbea); pub const MEDIATYPE_MPEG2_PACK: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36523b13_8ee5_11d1_8ca3_0060b057664a); +pub const MEDIATYPE_MPEG2_PES: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe06d8020_db46_11cf_b4d1_00805f6cbbea); +pub const MEDIATYPE_MPEG2_SECTIONS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x455f176c_4b06_47ce_9aef_8caef73df7b5); #[doc = "*Required features: `\"Win32_Media_DirectShow\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] @@ -80865,6 +81044,7 @@ pub const MSDRI_S_PENDING: ::windows::core::HRESULT = ::windows::core::HRESULT(1 pub const MSEventBinder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x577faa18_4518_445e_8f70_1473f8cf4ba4); pub const MSPID_PrimaryAudio: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa35ff56b_9fda_11d0_8fdf_00c04fd9189d); pub const MSPID_PrimaryVideo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa35ff56a_9fda_11d0_8fdf_00c04fd9189d); +pub const MSTapeDeviceGUID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8c0f6af2_0edb_44c1_8aeb_59040bd830ed); pub const MSVidAnalogCaptureToCCA: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x942b7909_a28e_49a1_a207_34ebcbcb4b3b); pub const MSVidAnalogCaptureToDataServices: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc5702cd6_9b79_11d3_b654_00c04f79498e); pub const MSVidAnalogCaptureToOverlayMixer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe18af75a_08af_11d3_b64a_00c04f79498e); @@ -85517,7 +85697,7 @@ pub struct VMR9AlphaBitmap { pub rSrc: super::super::Foundation::RECT, pub rDest: VMR9NormalizedRect, pub fAlpha: f32, - pub clrSrcKey: u32, + pub clrSrcKey: super::super::Foundation::COLORREF, pub dwFilterMode: u32, } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct3D9", feature = "Win32_Graphics_Gdi"))] @@ -86365,7 +86545,7 @@ pub struct VMRALPHABITMAP { pub rSrc: super::super::Foundation::RECT, pub rDest: NORMALIZEDRECT, pub fAlpha: f32, - pub clrSrcKey: u32, + pub clrSrcKey: super::super::Foundation::COLORREF, } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_DirectDraw", feature = "Win32_Graphics_Gdi"))] impl ::core::clone::Clone for VMRALPHABITMAP { diff --git a/crates/libs/windows/src/Windows/Win32/Media/KernelStreaming/mod.rs b/crates/libs/windows/src/Windows/Win32/Media/KernelStreaming/mod.rs index 7817ec0cb2..b3ebba4c52 100644 --- a/crates/libs/windows/src/Windows/Win32/Media/KernelStreaming/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Media/KernelStreaming/mod.rs @@ -331,13 +331,6 @@ impl ::core::default::Default for CC_HW_FIELD { pub const CC_MAX_HW_DECODE_LINES: u32 = 12u32; pub const CLSID_KsIBasicAudioInterfaceHandler: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb9f8ac3e_0f71_11d2_b72c_00c04fb6bd3d); pub const CLSID_Proxy: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x17cca71b_ecd7_11d0_b908_00a0c9223196); -pub const CODECAPI_ALLSETTINGS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6a577e92_83e1_4113_adc2_4fcec32f83a1); -pub const CODECAPI_AUDIO_ENCODER: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb9d19a3e_f897_429c_bc46_8138b7272b2d); -pub const CODECAPI_CHANGELISTS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x62b12acf_f6b0_47d9_9456_96f22c4e0b9d); -pub const CODECAPI_CURRENTCHANGELIST: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1cb14e83_7d72_4657_83fd_47a2c5b9d13d); -pub const CODECAPI_SETALLDEFAULTS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6c5e6a7c_acf8_4f55_a999_1a628109051b); -pub const CODECAPI_SUPPORTSEVENTS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0581af97_7693_4dbd_9dca_3f9ebd6585a1); -pub const CODECAPI_VIDEO_ENCODER: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7112e8e1_3d03_47ef_8e60_03f1cf537301); #[doc = "*Required features: `\"Win32_Media_KernelStreaming\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] @@ -555,9 +548,6 @@ impl ::core::default::Default for DS3DVECTOR_2 { unsafe { ::core::mem::zeroed() } } } -pub const ENCAPIPARAM_BITRATE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x49cc4c43_ca83_4ad4_a9af_f3696af666df); -pub const ENCAPIPARAM_BITRATE_MODE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xee5fb25c_c713_40d1_9d58_c0d7241e250f); -pub const ENCAPIPARAM_PEAK_BITRATE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x703f16a9_3d48_44a1_b077_018dff915d19); #[doc = "*Required features: `\"Win32_Media_KernelStreaming\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] diff --git a/crates/libs/windows/src/Windows/Win32/Media/MediaFoundation/impl.rs b/crates/libs/windows/src/Windows/Win32/Media/MediaFoundation/impl.rs index 7f5c99ec2f..3480c5bc7d 100644 --- a/crates/libs/windows/src/Windows/Win32/Media/MediaFoundation/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/Media/MediaFoundation/impl.rs @@ -4793,7 +4793,7 @@ impl IMFCapturePhotoSink_Vtbl { pub trait IMFCapturePreviewSink_Impl: Sized + IMFCaptureSink_Impl { fn SetRenderHandle(&self, handle: super::super::Foundation::HANDLE) -> ::windows::core::Result<()>; fn SetRenderSurface(&self, psurface: &::core::option::Option<::windows::core::IUnknown>) -> ::windows::core::Result<()>; - fn UpdateVideo(&self, psrc: *const MFVideoNormalizedRect, pdst: *const super::super::Foundation::RECT, pborderclr: *const u32) -> ::windows::core::Result<()>; + fn UpdateVideo(&self, psrc: *const MFVideoNormalizedRect, pdst: *const super::super::Foundation::RECT, pborderclr: *const super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; fn SetSampleCallback(&self, dwstreamsinkindex: u32, pcallback: &::core::option::Option) -> ::windows::core::Result<()>; fn GetMirrorState(&self) -> ::windows::core::Result; fn SetMirrorState(&self, fmirrorstate: super::super::Foundation::BOOL) -> ::windows::core::Result<()>; @@ -4816,7 +4816,7 @@ impl IMFCapturePreviewSink_Vtbl { let this = (*this).get_impl(); this.SetRenderSurface(::core::mem::transmute(&psurface)).into() } - unsafe extern "system" fn UpdateVideo, Impl: IMFCapturePreviewSink_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, psrc: *const MFVideoNormalizedRect, pdst: *const super::super::Foundation::RECT, pborderclr: *const u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn UpdateVideo, Impl: IMFCapturePreviewSink_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, psrc: *const MFVideoNormalizedRect, pdst: *const super::super::Foundation::RECT, pborderclr: *const super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.UpdateVideo(::core::mem::transmute_copy(&psrc), ::core::mem::transmute_copy(&pdst), ::core::mem::transmute_copy(&pborderclr)).into() @@ -11352,8 +11352,8 @@ pub trait IMFPMediaPlayer_Impl: Sized { fn GetAspectRatioMode(&self) -> ::windows::core::Result; fn GetVideoWindow(&self) -> ::windows::core::Result; fn UpdateVideo(&self) -> ::windows::core::Result<()>; - fn SetBorderColor(&self, clr: u32) -> ::windows::core::Result<()>; - fn GetBorderColor(&self) -> ::windows::core::Result; + fn SetBorderColor(&self, clr: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; + fn GetBorderColor(&self) -> ::windows::core::Result; fn InsertEffect(&self, peffect: &::core::option::Option<::windows::core::IUnknown>, foptional: super::super::Foundation::BOOL) -> ::windows::core::Result<()>; fn RemoveEffect(&self, peffect: &::core::option::Option<::windows::core::IUnknown>) -> ::windows::core::Result<()>; fn RemoveAllEffects(&self) -> ::windows::core::Result<()>; @@ -11592,12 +11592,12 @@ impl IMFPMediaPlayer_Vtbl { let this = (*this).get_impl(); this.UpdateVideo().into() } - unsafe extern "system" fn SetBorderColor, Impl: IMFPMediaPlayer_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clr: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetBorderColor, Impl: IMFPMediaPlayer_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clr: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetBorderColor(::core::mem::transmute_copy(&clr)).into() } - unsafe extern "system" fn GetBorderColor, Impl: IMFPMediaPlayer_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pclr: *mut u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetBorderColor, Impl: IMFPMediaPlayer_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetBorderColor() { @@ -17063,8 +17063,8 @@ pub trait IMFVideoDisplayControl_Impl: Sized { fn GetVideoWindow(&self) -> ::windows::core::Result; fn RepaintVideo(&self) -> ::windows::core::Result<()>; fn GetCurrentImage(&self, pbih: *mut super::super::Graphics::Gdi::BITMAPINFOHEADER, pdib: *mut *mut u8, pcbdib: *mut u32, ptimestamp: *mut i64) -> ::windows::core::Result<()>; - fn SetBorderColor(&self, clr: u32) -> ::windows::core::Result<()>; - fn GetBorderColor(&self) -> ::windows::core::Result; + fn SetBorderColor(&self, clr: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; + fn GetBorderColor(&self) -> ::windows::core::Result; fn SetRenderingPrefs(&self, dwrenderflags: u32) -> ::windows::core::Result<()>; fn GetRenderingPrefs(&self) -> ::windows::core::Result; fn SetFullscreen(&self, ffullscreen: super::super::Foundation::BOOL) -> ::windows::core::Result<()>; @@ -17137,12 +17137,12 @@ impl IMFVideoDisplayControl_Vtbl { let this = (*this).get_impl(); this.GetCurrentImage(::core::mem::transmute_copy(&pbih), ::core::mem::transmute_copy(&pdib), ::core::mem::transmute_copy(&pcbdib), ::core::mem::transmute_copy(&ptimestamp)).into() } - unsafe extern "system" fn SetBorderColor, Impl: IMFVideoDisplayControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clr: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetBorderColor, Impl: IMFVideoDisplayControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clr: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetBorderColor(::core::mem::transmute_copy(&clr)).into() } - unsafe extern "system" fn GetBorderColor, Impl: IMFVideoDisplayControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pclr: *mut u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetBorderColor, Impl: IMFVideoDisplayControl_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetBorderColor() { @@ -17428,7 +17428,7 @@ impl IMFVideoPresenter_Vtbl { iid == &::IID || iid == &::IID } } -#[cfg(feature = "Win32_Graphics_Direct3D9")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct3D9"))] pub trait IMFVideoProcessor_Impl: Sized { fn GetAvailableVideoProcessorModes(&self, lpdwnumprocessingmodes: *mut u32, ppvideoprocessingmodes: *mut *mut ::windows::core::GUID) -> ::windows::core::Result<()>; fn GetVideoProcessorCaps(&self, lpvideoprocessormode: *const ::windows::core::GUID) -> ::windows::core::Result; @@ -17440,12 +17440,12 @@ pub trait IMFVideoProcessor_Impl: Sized { fn GetFilteringRange(&self, dwproperty: u32) -> ::windows::core::Result; fn GetFilteringValue(&self, dwproperty: u32) -> ::windows::core::Result; fn SetFilteringValue(&self, dwproperty: u32, pvalue: *const DXVA2_Fixed32) -> ::windows::core::Result<()>; - fn GetBackgroundColor(&self) -> ::windows::core::Result; - fn SetBackgroundColor(&self, clrbkg: u32) -> ::windows::core::Result<()>; + fn GetBackgroundColor(&self) -> ::windows::core::Result; + fn SetBackgroundColor(&self, clrbkg: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; } -#[cfg(feature = "Win32_Graphics_Direct3D9")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct3D9"))] impl ::windows::core::RuntimeName for IMFVideoProcessor {} -#[cfg(feature = "Win32_Graphics_Direct3D9")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Direct3D9"))] impl IMFVideoProcessor_Vtbl { pub const fn new, Impl: IMFVideoProcessor_Impl, const OFFSET: isize>() -> IMFVideoProcessor_Vtbl { unsafe extern "system" fn GetAvailableVideoProcessorModes, Impl: IMFVideoProcessor_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, lpdwnumprocessingmodes: *mut u32, ppvideoprocessingmodes: *mut *mut ::windows::core::GUID) -> ::windows::core::HRESULT { @@ -17534,7 +17534,7 @@ impl IMFVideoProcessor_Vtbl { let this = (*this).get_impl(); this.SetFilteringValue(::core::mem::transmute_copy(&dwproperty), ::core::mem::transmute_copy(&pvalue)).into() } - unsafe extern "system" fn GetBackgroundColor, Impl: IMFVideoProcessor_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, lpclrbkg: *mut u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetBackgroundColor, Impl: IMFVideoProcessor_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, lpclrbkg: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetBackgroundColor() { @@ -17545,7 +17545,7 @@ impl IMFVideoProcessor_Vtbl { ::core::result::Result::Err(err) => err.into(), } } - unsafe extern "system" fn SetBackgroundColor, Impl: IMFVideoProcessor_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clrbkg: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetBackgroundColor, Impl: IMFVideoProcessor_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clrbkg: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetBackgroundColor(::core::mem::transmute_copy(&clrbkg)).into() diff --git a/crates/libs/windows/src/Windows/Win32/Media/MediaFoundation/mod.rs b/crates/libs/windows/src/Windows/Win32/Media/MediaFoundation/mod.rs index cd95176384..204ecd95e0 100644 --- a/crates/libs/windows/src/Windows/Win32/Media/MediaFoundation/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Media/MediaFoundation/mod.rs @@ -97,6 +97,7 @@ impl ::core::fmt::Debug for AEC_VAD_MODE { } } pub const ALawCodecWrapper: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36cb6e0c_78c1_42b2_9943_846262f31786); +pub const AMPROPSETID_Pin: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9b00f101_1567_11d1_b3f1_00aa003761c5); #[repr(C)] #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -431,6 +432,10 @@ impl ::core::default::Default for AecQualityMetrics_Struct { } } pub const CAC3DecMediaObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x03d7c802_ecfa_47d9_b268_5fb3e310dee4); +pub const CAPTION_FORMAT_ATSC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3ed9cb31_fd10_4ade_bccc_fb9105d2f3ef); +pub const CAPTION_FORMAT_DIRECTV: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe9ca1ce7_915e_47be_9bb9_bf1d8a13a5ec); +pub const CAPTION_FORMAT_DVB: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x12230db4_ff2a_447e_bb88_6841c416d068); +pub const CAPTION_FORMAT_ECHOSTAR: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xebb1a262_1158_4b99_ae80_92ac776952c4); pub const CClusterDetectorDmo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36e820c4_165a_4521_863c_619e1160d4d4); pub const CColorControlDmo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x798059f0_89ca_4160_b325_aeb48efe4f9a); pub const CColorConvertDMO: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x98230571_0087_4204_b020_3282538e57d3); @@ -443,20 +448,103 @@ pub const CDeColorConvMediaObject: ::windows::core::GUID = ::windows::core::GUID pub const CFrameInterpDMO: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0a7cfe1b_6ab5_4334_9ed8_3f97cb37daa1); pub const CFrameRateConvertDmo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x01f36ce2_0907_4d8b_979d_f151be91c883); pub const CInterlaceMediaObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb5a89c80_4901_407b_9abc_90d9a644bb46); +pub const CLSID_ACMWrapper: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6a08cf80_0e18_11cf_a24d_0020afd79767); +pub const CLSID_ATSCNetworkPropertyPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe3444d16_5ac4_4386_88df_13fd230e1dda); +pub const CLSID_ATSCNetworkProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0dad2fdd_5fd7_11d3_8f50_00c04f7971e2); +pub const CLSID_AVICo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd76e2820_1563_11cf_ac98_00aa004c0fa9); +pub const CLSID_AVIDec: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcf49d4e0_1115_11ce_b03a_0020af0ba770); +pub const CLSID_AVIDoc: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd3588ab0_0781_11ce_b03a_0020af0ba770); +pub const CLSID_AVIDraw: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa888df60_1e90_11cf_ac98_00aa004c0fa9); +pub const CLSID_AVIMIDIRender: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x07b65360_c445_11ce_afde_00aa006c14f4); +pub const CLSID_ActiveMovieCategories: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xda4e3da0_d07d_11d0_bd50_00a0c911ce86); +pub const CLSID_AllocPresenter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x99d54f63_1a69_41ae_aa4d_c976eb3f0713); +pub const CLSID_AllocPresenterDDXclMode: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4444ac9e_242e_471b_a3c7_45dcd46352bc); +pub const CLSID_AnalogVideoDecoderPropertyPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x71f96466_78f3_11d0_a18c_00a0c9118956); +pub const CLSID_AsyncReader: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436ebb5_524f_11ce_9f53_0020af0ba770); +pub const CLSID_AudioCompressorCategory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x33d9a761_90c8_11d0_bd43_00a0c911ce86); +pub const CLSID_AudioInputDeviceCategory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x33d9a762_90c8_11d0_bd43_00a0c911ce86); +pub const CLSID_AudioInputMixerProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2ca8ca52_3c3f_11d2_b73d_00c04fb6bd3d); +pub const CLSID_AudioProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x05589faf_c356_11ce_bf01_00aa0055595a); +pub const CLSID_AudioRecord: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe30629d2_27e5_11ce_875d_00608cb78066); +pub const CLSID_AudioRender: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe30629d1_27e5_11ce_875d_00608cb78066); +pub const CLSID_AudioRendererAdvancedProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x37e92a92_d9aa_11d2_bf84_8ef2b1555aed); +pub const CLSID_AudioRendererCategory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe0f158e1_cb04_11d0_bd4e_00a0c911ce86); pub const CLSID_AudioResamplerMediaObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf447b69e_1884_4a7e_8055_346f74d6edb3); +pub const CLSID_AviDest: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe2510970_f137_11ce_8b67_00aa00a3f1a6); +pub const CLSID_AviMuxProptyPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc647b5c0_157c_11d0_bd23_00a0c911ce86); +pub const CLSID_AviMuxProptyPage1: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0a9ae910_85c0_11d0_bd42_00a0c911ce86); +pub const CLSID_AviReader: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1b544c21_fd0b_11ce_8c63_00aa0044b51e); +pub const CLSID_AviSplitter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1b544c20_fd0b_11ce_8c63_00aa0044b51e); +pub const CLSID_CAcmCoClassManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x33d9a761_90c8_11d0_bd43_00a0c911ce86); pub const CLSID_CAsfTocParser: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9b77c0f2_8735_46c5_b90f_5f0b303ef6ab); pub const CLSID_CAviTocParser: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3adce5cc_13c8_4573_b328_ed438eb694f9); +pub const CLSID_CCAFilter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3d07a539_35ca_447c_9b05_8d85ce924f9e); pub const CLSID_CClusterDetectorEx: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x47354492_827e_4b8a_b318_c80eba1381f0); +pub const CLSID_CDeviceMoniker: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4315d437_5b8c_11d0_bd3b_00a0c911ce86); pub const CLSID_CFileClient: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbfccd195_1244_4840_ab44_480975c4ffe4); pub const CLSID_CFileIo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x11993195_1244_4840_ab44_480975c4ffe4); +pub const CLSID_CIcmCoClassManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x33d9a760_90c8_11d0_bd43_00a0c911ce86); +pub const CLSID_CMidiOutClassManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4efe2452_168a_11d1_bc76_00c04fb9453b); +pub const CLSID_CMpegAudioCodec: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4a2286e0_7bef_11ce_9bd9_0000e202599c); +pub const CLSID_CMpegVideoCodec: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfeb50740_7bef_11ce_9bd9_0000e202599c); +pub const CLSID_CQzFilterClassManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x083863f1_70de_11d0_bd40_00a0c911ce86); pub const CLSID_CToc: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4fe24495_28ce_4920_a4c4_e556e1f0df2a); pub const CLSID_CTocCollection: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5058292d_a244_4840_ab44_480975c4ffe4); pub const CLSID_CTocEntry: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf22f5e05_585c_4def_8523_6555cfbc0cb3); pub const CLSID_CTocEntryList: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3a8cccbc_0efd_43a3_b838_f38a552ba237); pub const CLSID_CTocParser: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x499eaeea_2737_4849_8bb6_47f107eaf358); +pub const CLSID_CVidCapClassManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x860bb310_5d01_11d0_bd3b_00a0c911ce86); +pub const CLSID_CWaveOutClassManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe0f158e1_cb04_11d0_bd4e_00a0c911ce86); +pub const CLSID_CWaveinClassManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x33d9a762_90c8_11d0_bd43_00a0c911ce86); +pub const CLSID_CameraControlPropertyPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x71f96465_78f3_11d0_a18c_00a0c9118956); +pub const CLSID_CaptionsFilter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2f7ee4b6_6ff5_4eb4_b24a_2bfc41117171); +pub const CLSID_CaptureGraphBuilder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbf87b6e0_8c27_11d0_b3f0_00aa003761c5); +pub const CLSID_CaptureGraphBuilder2: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbf87b6e1_8c27_11d0_b3f0_00aa003761c5); +pub const CLSID_CaptureProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1b544c22_fd0b_11ce_8c63_00aa0044b51f); +pub const CLSID_Colour: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1643e180_90f5_11ce_97d5_00aa0055595a); pub const CLSID_CreateMediaExtensionObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xef65a54d_0788_45b8_8b14_bc0f6a6b5137); +pub const CLSID_CrossbarFilterPropertyPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x71f96461_78f3_11d0_a18c_00a0c9118956); +pub const CLSID_DShowTVEFilter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x05500280_faa5_4df9_8246_bfc23ac5cea8); +pub const CLSID_DSoundRender: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x79376820_07d0_11cf_a24d_0020afd79767); +pub const CLSID_DVBCNetworkProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdc0c0fe7_0485_4266_b93f_68fbf80ed834); +pub const CLSID_DVBSNetworkProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfa4b375a_45b4_4d45_8440_263957b11623); +pub const CLSID_DVBTNetworkProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x216c62df_6d7f_4e9a_8571_05f14edb766a); +pub const CLSID_DVDHWDecodersCategory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2721ae20_7e70_11d0_a5d6_28db04c10000); +pub const CLSID_DVDNavigator: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9b8c4620_2c1a_11d0_8493_00a02438ad48); +pub const CLSID_DVDState: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf963c5cf_a659_4a93_9638_caf3cd277d13); +pub const CLSID_DVDecPropertiesPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x101193c0_0bfe_11d0_af91_00aa00b67a42); +pub const CLSID_DVEncPropertiesPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4150f050_bb6f_11d0_afb9_00aa00b67a42); +pub const CLSID_DVMux: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x129d7e40_c10d_11d0_afb9_00aa00b67a42); +pub const CLSID_DVMuxPropertyPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4db880e0_c10d_11d0_afb9_00aa00b67a42); +pub const CLSID_DVSplitter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4eb31670_9fc6_11cf_af6e_00aa00b67a42); +pub const CLSID_DVVideoCodec: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb1b77c00_c3e4_11cf_af79_00aa00b67a42); +pub const CLSID_DVVideoEnc: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x13aa3650_bb6f_11d0_afb9_00aa00b67a42); +pub const CLSID_DeviceControlCategory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcc7bfb46_f175_11d1_a392_00e0291f3959); +pub const CLSID_DirectDrawProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x944d4c00_dd52_11ce_bf0e_00aa0055595a); +pub const CLSID_DirectShowPluginControl: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8670c736_f614_427b_8ada_bbadc587194b); +pub const CLSID_Dither: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1da08500_9edc_11cf_bc10_00aa00ac74f6); +pub const CLSID_DtvCcFilter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb056ba0_2502_45b9_8e86_2b40de84ad29); +pub const CLSID_DvdGraphBuilder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfcc152b7_f372_11d0_8e00_00c04fd7c08b); +pub const CLSID_EVRPlaybackPipelineOptimizer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x62079164_233b_41f8_a80f_f01705f514a8); +pub const CLSID_EVRTearlessWindowPresenter9: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa0a7a57b_59b2_4919_a694_add0a526c373); +pub const CLSID_EnhancedVideoRenderer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfa10746c_9b63_4b6c_bc49_fc300ea5f256); +pub const CLSID_FGControl: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436ebb4_524f_11ce_9f53_0020af0ba770); +pub const CLSID_FileSource: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x701722e0_8ae3_11ce_a85c_00aa002feab5); +pub const CLSID_FileWriter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8596e5f0_0da5_11d0_bd21_00a0c911ce86); +pub const CLSID_FilterGraph: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436ebb3_524f_11ce_9f53_0020af0ba770); +pub const CLSID_FilterGraphNoThread: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436ebb8_524f_11ce_9f53_0020af0ba770); +pub const CLSID_FilterGraphPrivateThread: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa3ecbc41_581a_4476_b693_a63340462d8b); +pub const CLSID_FilterMapper: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436ebb2_524f_11ce_9f53_0020af0ba770); +pub const CLSID_FilterMapper2: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcda42200_bd88_11d0_bd4e_00a0c911ce86); pub const CLSID_FrameServerNetworkCameraSource: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7a213aa7_866f_414a_8c1a_275c7283a395); pub const CLSID_HttpSchemePlugin: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x44cb442b_9da9_49df_b3fd_023777b16e50); +pub const CLSID_ICodecAPIProxy: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7ff0997a_1999_4286_a73c_622b8814e7eb); +pub const CLSID_IVideoEncoderCodecAPIProxy: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb05dabd9_56e5_4fdc_afa4_8a47e91f1c9c); +pub const CLSID_IVideoEncoderProxy: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb43c4eec_8c32_4791_9102_508ada5ee8e7); +pub const CLSID_InfTee: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf8388a40_d5bb_11d0_be5a_0080c706568e); +pub const CLSID_LegacyAmFilterCategory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x083863f1_70de_11d0_bd40_00a0c911ce86); +pub const CLSID_Line21Decoder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6e8d4a20_310c_11d0_b79a_00aa003767a7); +pub const CLSID_Line21Decoder2: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe4206432_01a1_4bee_b3e1_3702c8edc574); pub const CLSID_MFByteStreamProxyClassFactory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x770e8e77_4916_441c_a9a7_b342d0eebc71); pub const CLSID_MFCaptureEngine: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xefce38d3_8914_4674_a7df_ae1b3d654b8a); pub const CLSID_MFCaptureEngineClassFactory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xefce38d3_8914_4674_a7df_ae1b3d654b8a); @@ -467,9 +555,19 @@ pub const CLSID_MFReadWriteClassFactory: ::windows::core::GUID = ::windows::core pub const CLSID_MFSinkWriter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa3bbfb17_8273_4e52_9e0e_9739dc887990); pub const CLSID_MFSourceReader: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1777133c_0881_411b_a577_ad545f0714c4); pub const CLSID_MFSourceResolver: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x90eab60f_e43a_4188_bcc4_e47fdf04868c); +pub const CLSID_MFVideoMixer9: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe474e05a_ab65_4f6a_827c_218b1baaf31f); +pub const CLSID_MFVideoPresenter9: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x98455561_5136_4d28_ab08_4cee40ea2781); +pub const CLSID_MJPGEnc: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb80ab0a0_7416_11d2_9eeb_006008039e37); +pub const CLSID_MMSPLITTER: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3ae86b20_7be8_11d1_abe6_00a0c905f375); +pub const CLSID_MOVReader: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x44584800_f8ee_11ce_b2d4_00dd01101b85); pub const CLSID_MP3DecMediaObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbbeea841_0a63_4f52_a7ab_a9b3a84ed38a); +pub const CLSID_MPEG1Doc: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe4bbd160_4269_11ce_838d_00aa0055595a); +pub const CLSID_MPEG1PacketPlayer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x26c25940_4ca9_11ce_a828_00aa002feab5); +pub const CLSID_MPEG1Splitter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x336475d0_942a_11ce_a870_00aa002feab5); pub const CLSID_MPEG2ByteStreamPlugin: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x40871c59_ab40_471f_8dc3_1f259d862479); pub const CLSID_MPEG2DLNASink: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfa5fe7c5_6a1d_4b11_b41f_f959d6c76500); +pub const CLSID_MPEG2Demultiplexer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xafb6c280_2c41_11d3_8a60_0000f81e0e4a); +pub const CLSID_MPEG2Demultiplexer_NoClock: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x687d3367_3644_467a_adfe_6cd7a85c4a2c); pub const CLSID_MSAACDecMFT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x32d186a7_218f_4c75_8876_dd77273a8999); pub const CLSID_MSDDPlusDecMFT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x177c0afe_900b_48d4_9e4c_57add250b3d4); pub const CLSID_MSH264DecoderMFT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x62ce7e72_4c71_4d20_b15d_452831a87d9d); @@ -479,13 +577,70 @@ pub const CLSID_MSMPEGAudDecMFT: ::windows::core::GUID = ::windows::core::GUID:: pub const CLSID_MSMPEGDecoderMFT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2d709e52_123f_49b5_9cbc_9af5cde28fb9); pub const CLSID_MSOpusDecoder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x63e17c10_2d43_4c42_8fe3_8d8b63e46a6a); pub const CLSID_MSVPxDecoder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe3aaf548_c9a4_4c6e_234d_5ada374b0000); +pub const CLSID_MediaEncoderCategory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7d22e920_5ca9_4787_8c2b_a6779bd11781); +pub const CLSID_MediaMultiplexerCategory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x236c9559_adce_4736_bf72_bab34e392196); +pub const CLSID_MediaPropertyBag: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcdbd8d00_c193_11d0_bd4e_00a0c911ce86); +pub const CLSID_MemoryAllocator: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1e651cc0_b199_11d0_8212_00c04fc32c45); +pub const CLSID_MidiRendererCategory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4efe2452_168a_11d1_bc76_00c04fb9453b); +pub const CLSID_MjpegDec: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x301056d0_6dff_11d2_9eeb_006008039e37); +pub const CLSID_ModexRenderer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x07167665_5011_11cf_bf33_00aa0055595a); +pub const CLSID_Mpeg2VideoStreamAnalyzer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6cfad761_735d_4aa5_8afc_af91a7d61eba); pub const CLSID_NetSchemePlugin: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe9f4ebab_d97b_463e_a2b1_c54ee3f9414d); +pub const CLSID_NetworkProvider: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb2f3a67c_29da_4c78_8831_091ed509a475); +pub const CLSID_OverlayMixer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcd8743a1_3736_11d0_9e69_00c04fd7c15b); +pub const CLSID_PerformanceProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x59ce6880_acf8_11cf_b56e_0080c7c4b68a); +pub const CLSID_PersistMonikerPID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436ebb7_524f_11ce_9f53_0020af0ba770); pub const CLSID_PlayToSourceClassFactory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xda17539a_3dc3_42c1_a749_a183b51f085e); +pub const CLSID_ProtoFilterGraph: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436ebb0_524f_11ce_9f53_0020af0ba770); +pub const CLSID_QTDec: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfdfe9681_74a3_11d0_afa7_00aa00b67a42); +pub const CLSID_QualityProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x418afb70_f8b8_11ce_aac6_0020af0b99a3); +pub const CLSID_QuickTimeParser: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd51bd5a0_7548_11cf_a520_0080c77ef58a); +pub const CLSID_SBE2File: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x93a094d7_51e8_485b_904a_8d6b97dc6b39); +pub const CLSID_SBE2FileScan: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3e458037_0ca6_41aa_a594_2aa6c02d709b); +pub const CLSID_SBE2MediaTypeProfile: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1f26a602_2b5c_4b63_b8e8_9ea5c1a7dc2e); +pub const CLSID_SBE2Sink: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe2448508_95da_4205_9a27_7ec81e723b1a); +pub const CLSID_SeekingPassThru: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x060af76c_68dd_11d0_8fc1_00c04fd9189d); +pub const CLSID_SmartTee: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcc58e280_8aa1_11d1_b3f1_00aa003761c5); +pub const CLSID_StreamBufferComposeRecording: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd682c4ba_a90a_42fe_b9e1_03109849c423); +pub const CLSID_StreamBufferConfig: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfa8a68b2_c864_4ba2_ad53_d3876a87494b); +pub const CLSID_StreamBufferPropertyHandler: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe37a73f8_fb01_43dc_914e_aaee76095ab9); +pub const CLSID_StreamBufferRecordingAttributes: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xccaa63ac_1057_4778_ae92_1206ab9acee6); +pub const CLSID_StreamBufferSink: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2db47ae5_cf39_43c2_b4d6_0cd8d90946f4); +pub const CLSID_StreamBufferSource: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc9f5fe02_f851_4eb5_99ee_ad602af1e619); +pub const CLSID_StreamBufferThumbnailHandler: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x713790ee_5ee1_45ba_8070_a1337d2762fa); +pub const CLSID_SubtitlesFilter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9f22cfea_ce07_41ab_8ba0_c7364af90af9); +pub const CLSID_SystemClock: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436ebb1_524f_11ce_9f53_0020af0ba770); +pub const CLSID_SystemDeviceEnum: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x62be5d10_60eb_11d0_bd3b_00a0c911ce86); +pub const CLSID_TVAudioFilterPropertyPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x71f96463_78f3_11d0_a18c_00a0c9118956); +pub const CLSID_TVEFilterCCProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x05500282_faa5_4df9_8246_bfc23ac5cea8); +pub const CLSID_TVEFilterStatsProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x05500283_faa5_4df9_8246_bfc23ac5cea8); +pub const CLSID_TVEFilterTuneProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x05500281_faa5_4df9_8246_bfc23ac5cea8); +pub const CLSID_TVTunerFilterPropertyPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x266eee41_6c63_11cf_8a03_00aa006ecb65); +pub const CLSID_TextRender: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe30629d3_27e5_11ce_875d_00608cb78066); +pub const CLSID_TransmitCategory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xcc7bfb41_f175_11d1_a392_00e0291f3959); +pub const CLSID_URLReader: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436ebb6_524f_11ce_9f53_0020af0ba770); pub const CLSID_UrlmonSchemePlugin: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9ec4b4f9_3029_45ad_947b_344de2a249e2); +pub const CLSID_VBISurfaces: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x814b9800_1c88_11d1_bad9_00609744111a); +pub const CLSID_VPObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xce292861_fc88_11d0_9e69_00c04fd7c15b); +pub const CLSID_VPVBIObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x814b9801_1c88_11d1_bad9_00609744111a); +pub const CLSID_VfwCapture: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1b544c22_fd0b_11ce_8c63_00aa0044b51e); +pub const CLSID_VideoCompressorCategory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x33d9a760_90c8_11d0_bd43_00a0c911ce86); +pub const CLSID_VideoInputDeviceCategory: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x860bb310_5d01_11d0_bd3b_00a0c911ce86); +pub const CLSID_VideoMixingRenderer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb87beb7b_8d29_423f_ae4d_6582c10175ac); +pub const CLSID_VideoMixingRenderer9: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x51b4abf3_748f_4e3b_a276_c828330e926a); +pub const CLSID_VideoPortManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6f26a6cd_967b_47fd_874a_7aed2c9d25a2); +pub const CLSID_VideoProcAmpPropertyPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x71f96464_78f3_11d0_a18c_00a0c9118956); pub const CLSID_VideoProcessorMFT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x88753b26_5b24_49bd_b2e7_0c445c78c982); +pub const CLSID_VideoRenderer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x70e102b0_5556_11ce_97c0_00aa0055595a); +pub const CLSID_VideoRendererDefault: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6bc1cffa_8fc1_4261_ac22_cfb4cc38db50); +pub const CLSID_VideoStreamConfigPropertyPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x71f96467_78f3_11d0_a18c_00a0c9118956); pub const CLSID_WMADecMediaObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2eeb4adf_4578_4d10_bca7_bb955f56320a); +pub const CLSID_WMAsfReader: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x187463a0_5bb7_11d3_acbe_0080c75e246e); +pub const CLSID_WMAsfWriter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7c23220e_55bb_11d3_8b16_00c04fb6bd3d); pub const CLSID_WMDRMSystemID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8948bb22_11bd_4796_93e3_974d1b575678); pub const CLSID_WMVDecoderMFT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x82d353df_90bd_4382_8bc2_3f6192b76e34); +pub const CLSID_WSTDecoder: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x70bc06e0_5666_11d3_a184_00105aef9f33); +pub const CLSID_WstDecoderPropertyPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x04e27f80_91e4_11d3_a184_00105aef9f33); pub const CMP3DecMediaObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbbeea841_0a63_4f52_a7ab_a9b3a84ed38a); pub const CMPEG2AudDecoderDS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe1f1a0b8_beee_490d_ba7c_066c40b5e2b9); pub const CMPEG2AudioEncoderMFT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x46a4dd5c_73f8_4304_94df_308f760974f4); @@ -525,6 +680,8 @@ pub const CMpeg4sDecMediaObject: ::windows::core::GUID = ::windows::core::GUID:: pub const CMpeg4sEncMediaObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6ec5a7be_d81e_4f9e_ada3_cd1bf262b6d8); pub const CNokiaAACCCDecMediaObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xeabf7a6f_ccba_4d60_8620_b152cc977263); pub const CNokiaAACDecMediaObject: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3cb2bde4_4e29_4c44_a73e_2d7c2c46d6ec); +pub const CODECAPI_ALLSETTINGS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6a577e92_83e1_4113_adc2_4fcec32f83a1); +pub const CODECAPI_AUDIO_ENCODER: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb9d19a3e_f897_429c_bc46_8138b7272b2d); pub const CODECAPI_AVAudioChannelConfig: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x17f89cb3_c38d_4368_9ede_63b94d177f9f); pub const CODECAPI_AVAudioChannelCount: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1d3583c4_1583_474e_b71a_5ee463c198e4); pub const CODECAPI_AVAudioSampleRate: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x971d2723_1acb_42e7_855c_520a4b70a5f2); @@ -545,6 +702,7 @@ pub const CODECAPI_AVDecDDOperationalMode: ::windows::core::GUID = ::windows::co pub const CODECAPI_AVDecDDStereoDownMixMode: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6ce4122c_3ee9_4182_b4ae_c10fc088649d); pub const CODECAPI_AVDecDisableVideoPostProcessing: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf8749193_667a_4f2c_a9e8_5d4af924f08f); pub const CODECAPI_AVDecHEAACDynamicRangeControl: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x287c8abe_69a4_4d39_8080_d3d9712178a0); +pub const CODECAPI_AVDecMmcssClass: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe0ad4828_df66_4893_9f33_788aa4ec4082); pub const CODECAPI_AVDecNumWorkerThreads: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9561c3e8_ea9e_4435_9b1e_a93e691894d8); pub const CODECAPI_AVDecSoftwareDynamicFormatChange: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x862e2f0a_507b_47ff_af47_01e2624298b7); pub const CODECAPI_AVDecVideoAcceleration_H264: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf7db8a2f_4f48_4ee8_ae31_8b6ebe558ae2); @@ -789,6 +947,8 @@ pub const CODECAPI_AVLowLatencyMode: ::windows::core::GUID = ::windows::core::GU pub const CODECAPI_AVPriorityControl: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x54ba3dc8_bdde_4329_b187_2018bc5c2ba1); pub const CODECAPI_AVRealtimeControl: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6f440632_c4ad_4bf7_9e52_456942b454b0); pub const CODECAPI_AVScenarioInfo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb28a6e64_3ff9_446a_8a4b_0d7a53413236); +pub const CODECAPI_CHANGELISTS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x62b12acf_f6b0_47d9_9456_96f22c4e0b9d); +pub const CODECAPI_CURRENTCHANGELIST: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x1cb14e83_7d72_4657_83fd_47a2c5b9d13d); pub const CODECAPI_GUID_AVDecAudioInputAAC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x97df7828_b94a_47e2_a4bc_51194db22a4d); pub const CODECAPI_GUID_AVDecAudioInputDTS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x600bc0ca_6a1f_4e91_b241_1bbeb1cb19e0); pub const CODECAPI_GUID_AVDecAudioInputDolby: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8e4228a0_f000_4e0b_8f54_ab8d24ad61a2); @@ -835,7 +995,10 @@ pub const CODECAPI_GUID_AVEncWMAVoice: ::windows::core::GUID = ::windows::core:: pub const CODECAPI_GUID_AVEncWMV: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4e0fef9b_1d43_41bd_b8bd_4d7bf7457a2a); pub const CODECAPI_GUID_AVEndMPEG4Video: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdd37b12a_9503_4f8b_b8d0_324a00c0a1cf); pub const CODECAPI_GetOPMContext: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2f036c05_4c14_4689_8839_294c6d73e053); +pub const CODECAPI_SETALLDEFAULTS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6c5e6a7c_acf8_4f55_a999_1a628109051b); +pub const CODECAPI_SUPPORTSEVENTS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0581af97_7693_4dbd_9dca_3f9ebd6585a1); pub const CODECAPI_SetHDCPManagerContext: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6d2d1fc8_3dc9_47eb_a1a2_471c80cd60d0); +pub const CODECAPI_VIDEO_ENCODER: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7112e8e1_3d03_47ef_8e60_03f1cf537301); pub const CODECAPI_VideoEncoderDisplayContentType: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x79b90b27_f4b1_42dc_9dd7_cdaf8135c400); #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub const COPP_ProtectionType_ACP: i32 = 2i32; @@ -9277,6 +9440,15 @@ impl ::core::default::Default for DIRTYRECT_INFO { unsafe { ::core::mem::zeroed() } } } +pub const DSATTRIB_CAPTURE_STREAMTIME: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0c1a5614_30cd_4f40_bcbf_d03e52306207); +pub const DSATTRIB_CC_CONTAINER_INFO: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe7e050fb_dd5d_40dd_9915_35dcb81bdc8a); +pub const DSATTRIB_DSHOW_STREAM_DESC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5fb5673b_0a2a_4565_827b_6853fd75e611); +pub const DSATTRIB_OptionalVideoAttributes: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5a5f08ca_55c2_4033_92ab_55db8f781226); +pub const DSATTRIB_PBDATAG_ATTRIBUTE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe0b56679_12b9_43cc_b7df_578caa5a7b63); +pub const DSATTRIB_PicSampleSeq: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2f5bae02_7b8f_4f60_82d6_e4ea2f1f4c99); +pub const DSATTRIB_SAMPLE_LIVE_STREAM_TIME: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x892cd111_72f3_411d_8b91_a9e9123ac29a); +pub const DSATTRIB_TRANSPORT_PROPERTIES: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb622f612_47ad_4671_ad6c_05a98e65de3a); +pub const DSATTRIB_UDCRTag: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xeb7836ca_14ff_4919_bce7_3af12319e50c); #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] #[inline] pub unsafe fn DXVA2CreateDirect3DDeviceManager9(presettoken: &mut u32, ppdevicemanager: &mut ::core::option::Option) -> ::windows::core::Result<()> { @@ -14531,6 +14703,15 @@ impl ::core::fmt::Debug for EAllocationType { f.debug_tuple("EAllocationType").field(&self.0).finish() } } +pub const ENCAPIPARAM_BITRATE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x49cc4c43_ca83_4ad4_a9af_f3696af666df); +pub const ENCAPIPARAM_BITRATE_MODE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xee5fb25c_c713_40d1_9d58_c0d7241e250f); +pub const ENCAPIPARAM_PEAK_BITRATE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x703f16a9_3d48_44a1_b077_018dff915d19); +pub const ENCAPIPARAM_SAP_MODE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0c0171db_fefc_4af7_9991_a5657c191cd1); +pub const EVRConfig_ForceBatching: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe447df09_10ca_4d17_b17e_6a840f8a3a4c); +pub const EVRConfig_ForceBob: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe447df01_10ca_4d17_b17e_6a840f8a3a4c); +pub const EVRConfig_ForceHalfInterlace: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe447df05_10ca_4d17_b17e_6a840f8a3a4c); +pub const EVRConfig_ForceScaling: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe447df07_10ca_4d17_b17e_6a840f8a3a4c); +pub const EVRConfig_ForceThrottle: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe447df03_10ca_4d17_b17e_6a840f8a3a4c); #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] @@ -14630,7 +14811,19 @@ impl ::core::fmt::Debug for FILE_OPENMODE { f.debug_tuple("FILE_OPENMODE").field(&self.0).finish() } } +pub const FORMAT_525WSS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc7ecf04d_4582_4869_9abb_bfb523b62edf); +pub const FORMAT_AnalogVideo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482dde0_7817_11cf_8a03_00aa006ecb65); +pub const FORMAT_CAPTIONED_H264VIDEO: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa4efc024_873e_4da3_898b_474ddbd79fd0); +pub const FORMAT_CAPTIONED_MPEG2VIDEO: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7ab2ada2_81b6_4f14_b3c8_d0c486393b67); +pub const FORMAT_CC_CONTAINER: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x50997a4a_e508_4054_a2b2_10ff0ac1a69a); +pub const FORMAT_DvInfo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x05589f84_c356_11ce_bf01_00aa0055595a); pub const FORMAT_MFVideoFormat: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xaed4ab2d_7326_43cb_9464_c879cab9c43d); +pub const FORMAT_MPEGStreams: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x05589f83_c356_11ce_bf01_00aa0055595a); +pub const FORMAT_MPEGVideo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x05589f82_c356_11ce_bf01_00aa0055595a); +pub const FORMAT_None: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0f6417d6_c318_11d0_a43f_00a0c9223196); +pub const FORMAT_VideoInfo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x05589f80_c356_11ce_bf01_00aa0055595a); +pub const FORMAT_VideoInfo2: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf72a76a0_eb0a_11d0_ace4_0000c0cc16ba); +pub const FORMAT_WaveFormatEx: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x05589f81_c356_11ce_bf01_00aa0055595a); pub const GUID_NativeDeviceService: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xef71e53c_52f4_43c5_b86a_ad6cb216a61e); pub const GUID_PlayToService: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf6a8ff9d_9e14_41c9_bf0f_120a2b3ce120); #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] @@ -25398,7 +25591,7 @@ impl IMFCapturePreviewSink { } #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub unsafe fn UpdateVideo(&self, psrc: ::core::option::Option<&MFVideoNormalizedRect>, pdst: ::core::option::Option<&super::super::Foundation::RECT>, pborderclr: ::core::option::Option<&u32>) -> ::windows::core::Result<()> { + pub unsafe fn UpdateVideo(&self, psrc: ::core::option::Option<&MFVideoNormalizedRect>, pdst: ::core::option::Option<&super::super::Foundation::RECT>, pborderclr: ::core::option::Option<&super::super::Foundation::COLORREF>) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).UpdateVideo)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(psrc), ::core::mem::transmute(pdst), ::core::mem::transmute(pborderclr)).ok() } pub unsafe fn SetSampleCallback<'a, P0>(&self, dwstreamsinkindex: u32, pcallback: P0) -> ::windows::core::Result<()> @@ -25495,7 +25688,7 @@ pub struct IMFCapturePreviewSink_Vtbl { SetRenderHandle: usize, pub SetRenderSurface: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psurface: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, #[cfg(feature = "Win32_Foundation")] - pub UpdateVideo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psrc: *const MFVideoNormalizedRect, pdst: *const super::super::Foundation::RECT, pborderclr: *const u32) -> ::windows::core::HRESULT, + pub UpdateVideo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psrc: *const MFVideoNormalizedRect, pdst: *const super::super::Foundation::RECT, pborderclr: *const super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] UpdateVideo: usize, pub SetSampleCallback: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwstreamsinkindex: u32, pcallback: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, @@ -36109,12 +36302,19 @@ impl IMFPMediaPlayer { pub unsafe fn UpdateVideo(&self) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).UpdateVideo)(::windows::core::Interface::as_raw(self)).ok() } - pub unsafe fn SetBorderColor(&self, clr: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetBorderColor)(::windows::core::Interface::as_raw(self), clr).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetBorderColor<'a, P0>(&self, clr: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).SetBorderColor)(::windows::core::Interface::as_raw(self), clr.into()).ok() } - pub unsafe fn GetBorderColor(&self) -> ::windows::core::Result { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetBorderColor(&self) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetBorderColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).GetBorderColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -36240,8 +36440,14 @@ pub struct IMFPMediaPlayer_Vtbl { #[cfg(not(feature = "Win32_Foundation"))] GetVideoWindow: usize, pub UpdateVideo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, - pub SetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clr: u32) -> ::windows::core::HRESULT, - pub GetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pclr: *mut u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub SetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clr: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetBorderColor: usize, + #[cfg(feature = "Win32_Foundation")] + pub GetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetBorderColor: usize, #[cfg(feature = "Win32_Foundation")] pub InsertEffect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, peffect: *mut ::core::ffi::c_void, foptional: super::super::Foundation::BOOL) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] @@ -44930,12 +45136,19 @@ impl IMFVideoDisplayControl { pub unsafe fn GetCurrentImage(&self, pbih: &mut super::super::Graphics::Gdi::BITMAPINFOHEADER, pdib: *mut *mut u8, pcbdib: &mut u32, ptimestamp: &mut i64) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetCurrentImage)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pbih), ::core::mem::transmute(pdib), ::core::mem::transmute(pcbdib), ::core::mem::transmute(ptimestamp)).ok() } - pub unsafe fn SetBorderColor(&self, clr: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetBorderColor)(::windows::core::Interface::as_raw(self), clr).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetBorderColor<'a, P0>(&self, clr: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).SetBorderColor)(::windows::core::Interface::as_raw(self), clr.into()).ok() } - pub unsafe fn GetBorderColor(&self) -> ::windows::core::Result { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetBorderColor(&self) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetBorderColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).GetBorderColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } pub unsafe fn SetRenderingPrefs(&self, dwrenderflags: u32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).SetRenderingPrefs)(::windows::core::Interface::as_raw(self), dwrenderflags).ok() @@ -45029,8 +45242,14 @@ pub struct IMFVideoDisplayControl_Vtbl { pub GetCurrentImage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbih: *mut super::super::Graphics::Gdi::BITMAPINFOHEADER, pdib: *mut *mut u8, pcbdib: *mut u32, ptimestamp: *mut i64) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Graphics_Gdi"))] GetCurrentImage: usize, - pub SetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clr: u32) -> ::windows::core::HRESULT, - pub GetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pclr: *mut u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub SetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clr: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetBorderColor: usize, + #[cfg(feature = "Win32_Foundation")] + pub GetBorderColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetBorderColor: usize, pub SetRenderingPrefs: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwrenderflags: u32) -> ::windows::core::HRESULT, pub GetRenderingPrefs: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwrenderflags: *mut u32) -> ::windows::core::HRESULT, #[cfg(feature = "Win32_Foundation")] @@ -45677,12 +45896,19 @@ impl IMFVideoProcessor { pub unsafe fn SetFilteringValue(&self, dwproperty: u32, pvalue: &DXVA2_Fixed32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).SetFilteringValue)(::windows::core::Interface::as_raw(self), dwproperty, ::core::mem::transmute(pvalue)).ok() } - pub unsafe fn GetBackgroundColor(&self) -> ::windows::core::Result { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetBackgroundColor(&self) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetBackgroundColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).GetBackgroundColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } - pub unsafe fn SetBackgroundColor(&self, clrbkg: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetBackgroundColor)(::windows::core::Interface::as_raw(self), clrbkg).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetBackgroundColor<'a, P0>(&self, clrbkg: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).SetBackgroundColor)(::windows::core::Interface::as_raw(self), clrbkg.into()).ok() } } impl ::core::convert::From for ::windows::core::IUnknown { @@ -45737,8 +45963,14 @@ pub struct IMFVideoProcessor_Vtbl { pub GetFilteringRange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwproperty: u32, pproprange: *mut DXVA2_ValueRange) -> ::windows::core::HRESULT, pub GetFilteringValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwproperty: u32, pvalue: *mut DXVA2_Fixed32) -> ::windows::core::HRESULT, pub SetFilteringValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwproperty: u32, pvalue: *const DXVA2_Fixed32) -> ::windows::core::HRESULT, - pub GetBackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpclrbkg: *mut u32) -> ::windows::core::HRESULT, - pub SetBackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clrbkg: u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub GetBackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpclrbkg: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetBackgroundColor: usize, + #[cfg(feature = "Win32_Foundation")] + pub SetBackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clrbkg: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetBackgroundColor: usize, } #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] #[repr(transparent)] @@ -48704,6 +48936,8 @@ impl ::core::fmt::Debug for KSMETHOD_OPMVIDEOOUTPUT { pub const KSPROPSETID_OPMVideoOutput: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x06f414bb_f43a_4fe2_a566_774b4c81f0db); #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub const LOCAL_D3DFMT_DEFINES: u32 = 1u32; +pub const LOOK_DOWNSTREAM_ONLY: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xac798be1_98e3_11d1_b3f1_00aa003761c5); +pub const LOOK_UPSTREAM_ONLY: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xac798be0_98e3_11d1_b3f1_00aa003761c5); #[repr(C)] #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub struct MACROBLOCK_DATA { @@ -48763,18 +48997,90 @@ pub const MEDIASINK_FIXED_STREAMS: u32 = 1u32; pub const MEDIASINK_RATELESS: u32 = 4u32; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub const MEDIASINK_REQUIRE_REFERENCE_MEDIATYPE: u32 = 32u32; +pub const MEDIASUBTYPE_420O: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4f303234_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_708_608Data: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0af414bc_4ed2_445e_9839_8f095568ab3c); +pub const MEDIASUBTYPE_A2B10G10R10: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x576f7893_bdf6_48c4_875f_ae7b81834567); +pub const MEDIASUBTYPE_A2R10G10B10: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2f8bb76d_b644_4550_acf3_d30caa65d5c5); +pub const MEDIASUBTYPE_AI44: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x34344941_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_AIFF: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb8d_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_ARGB1555: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x297c55af_e209_4cb3_b757_c76d6b9c88a8); +pub const MEDIASUBTYPE_ARGB1555_D3D_DX7_RT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x35314137_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_ARGB1555_D3D_DX9_RT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x35314139_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_ARGB32: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x773c9ac0_3274_11d0_b724_00aa006c1a01); +pub const MEDIASUBTYPE_ARGB32_D3D_DX7_RT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x38384137_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_ARGB32_D3D_DX9_RT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x38384139_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_ARGB4444: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6e6415e6_5c24_425f_93cd_80102b3d1cca); +pub const MEDIASUBTYPE_ARGB4444_D3D_DX7_RT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x34344137_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_ARGB4444_D3D_DX9_RT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x34344139_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_AU: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb8c_524f_11ce_9f53_0020af0ba770); pub const MEDIASUBTYPE_AVC1: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x31435641_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_AYUV: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x56555941_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_AnalogVideo_NTSC_M: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482dde2_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_PAL_B: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482dde5_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_PAL_D: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482dde6_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_PAL_G: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482dde7_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_PAL_H: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482dde8_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_PAL_I: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482dde9_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_PAL_M: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482ddea_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_PAL_N: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482ddeb_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_PAL_N_COMBO: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482ddec_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_SECAM_B: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482ddf0_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_SECAM_D: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482ddf1_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_SECAM_G: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482ddf2_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_SECAM_H: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482ddf3_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_SECAM_K: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482ddf4_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_SECAM_K1: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482ddf5_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_AnalogVideo_SECAM_L: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482ddf6_7817_11cf_8a03_00aa006ecb65); +pub const MEDIASUBTYPE_Asf: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3db80f90_9412_11d1_aded_0000f8754b99); +pub const MEDIASUBTYPE_Avi: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb88_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_CC_CONTAINER: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7ea626db_54da_437b_be9f_f73073adfa3c); +pub const MEDIASUBTYPE_CFCC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x43434643_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_CLJR: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x524a4c43_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_CLPL: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4c504c43_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_CPLA: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x414c5043_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_DOLBY_AC3_SPDIF: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00000092_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_DOLBY_DDPLUS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa7fb87af_2d02_42fb_a4d4_05cd93843bdd); pub const MEDIASUBTYPE_DOLBY_TRUEHD: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xeb27cec4_163e_4ca3_8b74_8e25f91b517e); +pub const MEDIASUBTYPE_DRM_Audio: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00000009_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_DTS2: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00002001_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_DTS_HD: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa2e58eb7_0fa9_48bb_a40c_fa0e156d0645); pub const MEDIASUBTYPE_DTS_HD_HRA: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa61ac364_ad0e_4744_89ff_213ce0df8804); +pub const MEDIASUBTYPE_DVB_SUBTITLES: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x34ffcbc3_d5b3_4171_9002_d4c60301697f); +pub const MEDIASUBTYPE_DVCS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x53435644_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_DVM: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00002000_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_DVSD: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x44535644_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_DssAudio: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa0af4f82_e163_11d0_bad9_00609744111a); +pub const MEDIASUBTYPE_DssVideo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa0af4f81_e163_11d0_bad9_00609744111a); +pub const MEDIASUBTYPE_DtvCcData: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf52addaa_36f0_43f5_95ea_6d866484262a); +pub const MEDIASUBTYPE_H264: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x34363248_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_I420: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x30323449_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_IA44: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x34344149_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_IEEE_FLOAT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00000003_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_IF09: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x39304649_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_IJPG: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x47504a49_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_IMC1: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x31434d49_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_IMC2: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x32434d49_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_IMC3: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x33434d49_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_IMC4: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x34434d49_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_ISDB_CAPTIONS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x059dd67d_2e55_4d41_8d1b_01f5e4f50607); +pub const MEDIASUBTYPE_ISDB_SUPERIMPOSE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36dc6d28_f1a6_4216_9048_9cfcefeb5eba); +pub const MEDIASUBTYPE_IYUV: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x56555949_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_Line21_BytePair: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6e8d4a22_310c_11d0_b79a_00aa003767a7); +pub const MEDIASUBTYPE_Line21_GOPPacket: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6e8d4a23_310c_11d0_b79a_00aa003767a7); +pub const MEDIASUBTYPE_Line21_VBIRawData: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6e8d4a24_310c_11d0_b79a_00aa003767a7); pub const MEDIASUBTYPE_M4S2: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3253344d_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_MDVF: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4656444d_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_MJPG: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x47504a4d_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_MP42: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3234504d_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_MP43: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3334504d_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_MP4S: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5334504d_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_MPEG1Audio: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb87_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_MPEG1AudioPayload: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00000050_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_MPEG1Packet: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb80_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_MPEG1Payload: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb81_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_MPEG1System: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb84_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_MPEG1Video: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb86_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_MPEG1VideoCD: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb85_524f_11ce_9f53_0020af0ba770); pub const MEDIASUBTYPE_MPEG_ADTS_AAC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00001600_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_MPEG_HEAAC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00001610_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_MPEG_LOAS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00001602_0000_0010_8000_00aa00389b71); @@ -48786,12 +49092,53 @@ pub const MEDIASUBTYPE_MSS2: ::windows::core::GUID = ::windows::core::GUID::from pub const MEDIASUBTYPE_NOKIA_MPEG_ADTS_AAC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00001608_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_NOKIA_MPEG_RAW_AAC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00001609_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_NV11: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3131564e_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_NV12: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3231564e_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_NV24: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3432564e_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_None: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb8e_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_Overlay: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb7f_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_P010: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x30313050_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_P016: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36313050_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_P208: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x38303250_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_P210: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x30313250_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_P216: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36313250_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_P408: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x38303450_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_PCM: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00000001_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_PCMAudio_Obsolete: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb8a_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_Plum: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6d756c50_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_QTJpeg: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6765706a_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_QTMovie: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb89_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_QTRle: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x20656c72_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_QTRpza: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x617a7072_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_QTSmc: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x20636d73_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_RAW_AAC1: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x000000ff_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_RAW_SPORT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00000240_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_RGB1: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb78_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_RGB16_D3D_DX7_RT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36315237_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_RGB16_D3D_DX9_RT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36315239_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_RGB24: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb7d_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_RGB32: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb7e_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_RGB32_D3D_DX7_RT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x32335237_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_RGB32_D3D_DX9_RT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x32335239_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_RGB4: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb79_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_RGB555: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb7c_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_RGB565: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb7b_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_RGB8: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb7a_524f_11ce_9f53_0020af0ba770); +pub const MEDIASUBTYPE_S340: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x30343353_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_S342: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x32343353_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_SPDIF_TAG_241h: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00000241_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_TELETEXT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf72a76e3_eb0a_11d0_ace4_0000c0cc16ba); +pub const MEDIASUBTYPE_TVMJ: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4a4d5654_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_UYVY: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x59565955_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_V216: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36313256_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_V410: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x30313456_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_VBI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x663da43c_03e8_4e9a_9cd5_bf11ed0def76); pub const MEDIASUBTYPE_VODAFONE_MPEG_ADTS_AAC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0000160a_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_VODAFONE_MPEG_RAW_AAC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0000160b_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_VPS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa1b3f620_9792_4d8d_81a4_86af25772090); +pub const MEDIASUBTYPE_VPVBI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5a9b6a41_1a22_11d1_bad9_00609744111a); +pub const MEDIASUBTYPE_VPVideo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5a9b6a40_1a22_11d1_bad9_00609744111a); +pub const MEDIASUBTYPE_WAKE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x454b4157_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_WAVE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb8b_524f_11ce_9f53_0020af0ba770); pub const MEDIASUBTYPE_WMASPDIF: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00000164_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_WMAUDIO2: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00000161_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_WMAUDIO3: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00000162_0000_0010_8000_00aa00389b71); @@ -48804,11 +49151,29 @@ pub const MEDIASUBTYPE_WMVA: ::windows::core::GUID = ::windows::core::GUID::from pub const MEDIASUBTYPE_WMVB: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x42564d57_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_WMVP: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x50564d57_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_WMVR: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x52564d57_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_WSS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2791d576_8e7a_466f_9e90_5d3f3083738b); pub const MEDIASUBTYPE_WVC1: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x31435657_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_WVP2: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x32505657_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_X264: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x34363258_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_XDS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x01ca73e3_dce6_4575_afe1_2bf1c902caf3); +pub const MEDIASUBTYPE_Y210: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x30313259_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_Y211: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x31313259_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_Y216: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36313259_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_Y411: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x31313459_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_Y41P: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x50313459_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_Y41T: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x54313459_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_Y42T: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x54323459_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_YUY2: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x32595559_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_YUYV: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x56595559_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_YV12: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x32315659_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_YVU9: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x39555659_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_YVYU: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x55595659_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_dv25: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x35327664_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_dv50: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x30357664_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_dvh1: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x31687664_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_dvhd: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x64687664_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_dvsd: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x64737664_0000_0010_8000_00aa00389b71); +pub const MEDIASUBTYPE_dvsl: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6c737664_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_h264: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x34363268_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_m4s2: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3273346d_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_mp42: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3234706d_0000_0010_8000_00aa00389b71); @@ -48826,6 +49191,26 @@ pub const MEDIASUBTYPE_wmvr: ::windows::core::GUID = ::windows::core::GUID::from pub const MEDIASUBTYPE_wvc1: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x31637677_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_wvp2: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x32707677_0000_0010_8000_00aa00389b71); pub const MEDIASUBTYPE_x264: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x34363278_0000_0010_8000_00aa00389b71); +pub const MEDIATYPE_AUXLine21Data: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x670aea80_3a82_11d0_b79b_00aa003767a7); +pub const MEDIATYPE_AUXTeletextPage: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x11264acb_37de_4eba_8c35_7f04a1a68332); +pub const MEDIATYPE_AnalogAudio: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482dee1_7817_11cf_8a03_00aa006ecb65); +pub const MEDIATYPE_AnalogVideo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482dde1_7817_11cf_8a03_00aa006ecb65); +pub const MEDIATYPE_Audio: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x73647561_0000_0010_8000_00aa00389b71); +pub const MEDIATYPE_CC_CONTAINER: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xaeb312e9_3357_43ca_b701_97ec198e2b62); +pub const MEDIATYPE_DTVCCData: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb77e152_53b2_499c_b46b_509fc33edfd7); +pub const MEDIATYPE_File: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x656c6966_0000_0010_8000_00aa00389b71); +pub const MEDIATYPE_Interleaved: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x73766169_0000_0010_8000_00aa00389b71); +pub const MEDIATYPE_LMRT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x74726c6d_0000_0010_8000_00aa00389b71); +pub const MEDIATYPE_MPEG1SystemStream: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb82_524f_11ce_9f53_0020af0ba770); +pub const MEDIATYPE_MSTVCaption: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb88b8a89_b049_4c80_adcf_5898985e22c1); +pub const MEDIATYPE_Midi: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7364696d_0000_0010_8000_00aa00389b71); +pub const MEDIATYPE_ScriptCommand: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x73636d64_0000_0010_8000_00aa00389b71); +pub const MEDIATYPE_Stream: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe436eb83_524f_11ce_9f53_0020af0ba770); +pub const MEDIATYPE_Text: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x73747874_0000_0010_8000_00aa00389b71); +pub const MEDIATYPE_Timecode: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0482dee3_7817_11cf_8a03_00aa006ecb65); +pub const MEDIATYPE_URL_STREAM: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x736c7275_0000_0010_8000_00aa00389b71); +pub const MEDIATYPE_VBI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf72a76e1_eb0a_11d0_ace4_0000c0cc16ba); +pub const MEDIATYPE_Video: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x73646976_0000_0010_8000_00aa00389b71); #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] @@ -55825,7 +56210,7 @@ impl ::core::fmt::Debug for MFVideoAlphaBitmapFlags { #[cfg(feature = "Win32_Foundation")] pub struct MFVideoAlphaBitmapParams { pub dwFlags: u32, - pub clrSrcKey: u32, + pub clrSrcKey: super::super::Foundation::COLORREF, pub rcSrc: super::super::Foundation::RECT, pub nrcDest: MFVideoNormalizedRect, pub fAlpha: f32, @@ -63440,6 +63825,18 @@ pub type PDXVAHDSW_VideoProcessBltHD = ::core::option::Option, pcontentdesc: *const DXVAHD_CONTENT_DESC, usage: DXVAHD_DEVICE_USAGE, pplugin: PDXVAHDSW_Plugin, ppdevice: *mut ::core::option::Option) -> ::windows::core::HRESULT>; +pub const PIN_CATEGORY_ANALOGVIDEOIN: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb6c4283_0353_11d1_905f_0000c0cc16ba); +pub const PIN_CATEGORY_CAPTURE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb6c4281_0353_11d1_905f_0000c0cc16ba); +pub const PIN_CATEGORY_CC: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb6c4289_0353_11d1_905f_0000c0cc16ba); +pub const PIN_CATEGORY_EDS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb6c4287_0353_11d1_905f_0000c0cc16ba); +pub const PIN_CATEGORY_NABTS: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb6c4286_0353_11d1_905f_0000c0cc16ba); +pub const PIN_CATEGORY_PREVIEW: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb6c4282_0353_11d1_905f_0000c0cc16ba); +pub const PIN_CATEGORY_STILL: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb6c428a_0353_11d1_905f_0000c0cc16ba); +pub const PIN_CATEGORY_TELETEXT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb6c4288_0353_11d1_905f_0000c0cc16ba); +pub const PIN_CATEGORY_TIMECODE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb6c428b_0353_11d1_905f_0000c0cc16ba); +pub const PIN_CATEGORY_VBI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb6c4284_0353_11d1_905f_0000c0cc16ba); +pub const PIN_CATEGORY_VIDEOPORT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb6c4285_0353_11d1_905f_0000c0cc16ba); +pub const PIN_CATEGORY_VIDEOPORT_VBI: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfb6c428c_0353_11d1_905f_0000c0cc16ba); #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] @@ -63655,6 +64052,12 @@ pub const SYSFXUI_DONOTSHOW_ROOMCORRECTION: u32 = 2u32; pub const SYSFXUI_DONOTSHOW_SPEAKERFILLING: u32 = 64u32; #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub const SYSFXUI_DONOTSHOW_VIRTUALSURROUND: u32 = 32u32; +pub const TIME_FORMAT_BYTE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7b785571_8c82_11cf_bc0c_00aa00ac74f6); +pub const TIME_FORMAT_FIELD: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7b785573_8c82_11cf_bc0c_00aa00ac74f6); +pub const TIME_FORMAT_FRAME: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7b785570_8c82_11cf_bc0c_00aa00ac74f6); +pub const TIME_FORMAT_MEDIA_TIME: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7b785574_8c82_11cf_bc0c_00aa00ac74f6); +pub const TIME_FORMAT_NONE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x00000000_0000_0000_0000_000000000000); +pub const TIME_FORMAT_SAMPLE: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7b785572_8c82_11cf_bc0c_00aa00ac74f6); #[repr(C)] #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`*"] pub struct TOC_DESCRIPTOR { @@ -63753,6 +64156,8 @@ impl ::core::fmt::Debug for TOC_POS_TYPE { f.debug_tuple("TOC_POS_TYPE").field(&self.0).finish() } } +pub const UUID_UdriTagTables: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe1b98d74_9778_4878_b664_eb2020364d88); +pub const UUID_WMDRMTagTables: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x5dcd1101_9263_45bb_a4d5_c415ab8c589c); #[repr(C)] #[doc = "*Required features: `\"Win32_Media_MediaFoundation\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] diff --git a/crates/libs/windows/src/Windows/Win32/Media/Speech/impl.rs b/crates/libs/windows/src/Windows/Win32/Media/Speech/impl.rs index 2ed023db42..6076f10e99 100644 --- a/crates/libs/windows/src/Windows/Win32/Media/Speech/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/Media/Speech/impl.rs @@ -4205,7 +4205,7 @@ pub trait ISpeechObjectToken_Impl: Sized + super::super::System::Com::IDispatch_ fn CreateInstance(&self, punkouter: &::core::option::Option<::windows::core::IUnknown>, clscontext: SpeechTokenContext) -> ::windows::core::Result<::windows::core::IUnknown>; fn Remove(&self, objectstorageclsid: &super::super::Foundation::BSTR) -> ::windows::core::Result<()>; fn GetStorageFileName(&self, objectstorageclsid: &super::super::Foundation::BSTR, keyname: &super::super::Foundation::BSTR, filename: &super::super::Foundation::BSTR, folder: SpeechTokenShellFolder) -> ::windows::core::Result; - fn RemoveStorageFileName(&self, objectstorageclsid: &super::super::Foundation::BSTR, keyname: &super::super::Foundation::BSTR, deletefilea: i16) -> ::windows::core::Result<()>; + fn RemoveStorageFileName(&self, objectstorageclsid: &super::super::Foundation::BSTR, keyname: &super::super::Foundation::BSTR, deletefile: i16) -> ::windows::core::Result<()>; fn IsUISupported(&self, typeofui: &super::super::Foundation::BSTR, extradata: *const super::super::System::Com::VARIANT, object: &::core::option::Option<::windows::core::IUnknown>) -> ::windows::core::Result; fn DisplayUI(&self, hwnd: i32, title: &super::super::Foundation::BSTR, typeofui: &super::super::Foundation::BSTR, extradata: *const super::super::System::Com::VARIANT, object: &::core::option::Option<::windows::core::IUnknown>) -> ::windows::core::Result<()>; fn MatchesAttributes(&self, attributes: &super::super::Foundation::BSTR) -> ::windows::core::Result; @@ -4302,10 +4302,10 @@ impl ISpeechObjectToken_Vtbl { ::core::result::Result::Err(err) => err.into(), } } - unsafe extern "system" fn RemoveStorageFileName, Impl: ISpeechObjectToken_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, objectstorageclsid: ::core::mem::ManuallyDrop, keyname: ::core::mem::ManuallyDrop, deletefilea: i16) -> ::windows::core::HRESULT { + unsafe extern "system" fn RemoveStorageFileName, Impl: ISpeechObjectToken_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, objectstorageclsid: ::core::mem::ManuallyDrop, keyname: ::core::mem::ManuallyDrop, deletefile: i16) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); - this.RemoveStorageFileName(::core::mem::transmute(&objectstorageclsid), ::core::mem::transmute(&keyname), ::core::mem::transmute_copy(&deletefilea)).into() + this.RemoveStorageFileName(::core::mem::transmute(&objectstorageclsid), ::core::mem::transmute(&keyname), ::core::mem::transmute_copy(&deletefile)).into() } unsafe extern "system" fn IsUISupported, Impl: ISpeechObjectToken_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, typeofui: ::core::mem::ManuallyDrop, extradata: *const super::super::System::Com::VARIANT, object: *mut ::core::ffi::c_void, supported: *mut i16) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; diff --git a/crates/libs/windows/src/Windows/Win32/Media/Speech/mod.rs b/crates/libs/windows/src/Windows/Win32/Media/Speech/mod.rs index e26257e1a3..0574657773 100644 --- a/crates/libs/windows/src/Windows/Win32/Media/Speech/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Media/Speech/mod.rs @@ -10309,12 +10309,12 @@ impl ISpeechObjectToken { } #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub unsafe fn RemoveStorageFileName<'a, P0, P1>(&self, objectstorageclsid: P0, keyname: P1, deletefilea: i16) -> ::windows::core::Result<()> + pub unsafe fn RemoveStorageFileName<'a, P0, P1>(&self, objectstorageclsid: P0, keyname: P1, deletefile: i16) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, super::super::Foundation::BSTR>>, P1: ::std::convert::Into<::windows::core::InParam<'a, super::super::Foundation::BSTR>>, { - (::windows::core::Interface::vtable(self).RemoveStorageFileName)(::windows::core::Interface::as_raw(self), objectstorageclsid.into().abi(), keyname.into().abi(), deletefilea).ok() + (::windows::core::Interface::vtable(self).RemoveStorageFileName)(::windows::core::Interface::as_raw(self), objectstorageclsid.into().abi(), keyname.into().abi(), deletefile).ok() } #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))] @@ -10446,7 +10446,7 @@ pub struct ISpeechObjectToken_Vtbl { #[cfg(not(feature = "Win32_Foundation"))] GetStorageFileName: usize, #[cfg(feature = "Win32_Foundation")] - pub RemoveStorageFileName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, objectstorageclsid: ::core::mem::ManuallyDrop, keyname: ::core::mem::ManuallyDrop, deletefilea: i16) -> ::windows::core::HRESULT, + pub RemoveStorageFileName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, objectstorageclsid: ::core::mem::ManuallyDrop, keyname: ::core::mem::ManuallyDrop, deletefile: i16) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] RemoveStorageFileName: usize, #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))] @@ -16117,7 +16117,7 @@ impl ::core::fmt::Debug for SPPARTOFSPEECH { #[doc = "*Required features: `\"Win32_Media_Speech\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))] pub struct SPPHRASE { - pub __AnonymousBase_sapi53_L5821_C34: SPPHRASE_50, + pub Base: SPPHRASE_50, pub pSML: ::windows::core::PWSTR, pub pSemanticErrorInfo: *mut SPSEMANTICERRORINFO, } @@ -16132,7 +16132,7 @@ impl ::core::clone::Clone for SPPHRASE { #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))] impl ::core::fmt::Debug for SPPHRASE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SPPHRASE").field("__AnonymousBase_sapi53_L5821_C34", &self.__AnonymousBase_sapi53_L5821_C34).field("pSML", &self.pSML).field("pSemanticErrorInfo", &self.pSemanticErrorInfo).finish() + f.debug_struct("SPPHRASE").field("Base", &self.Base).field("pSML", &self.pSML).field("pSemanticErrorInfo", &self.pSemanticErrorInfo).finish() } } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))] diff --git a/crates/libs/windows/src/Windows/Win32/NetworkManagement/P2P/mod.rs b/crates/libs/windows/src/Windows/Win32/NetworkManagement/P2P/mod.rs index 45f95261ef..605ba40d0c 100644 --- a/crates/libs/windows/src/Windows/Win32/NetworkManagement/P2P/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/NetworkManagement/P2P/mod.rs @@ -1071,13 +1071,12 @@ pub unsafe fn DrtEndSearch(hsearchcontext: *const ::core::ffi::c_void) -> ::wind #[doc = "*Required features: `\"Win32_NetworkManagement_P2P\"`, `\"Win32_Foundation\"`, `\"Win32_Networking_WinSock\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Networking_WinSock"))] #[inline] -pub unsafe fn DrtGetEventData(hdrt: *const ::core::ffi::c_void, uleventdatalen: u32) -> ::windows::core::Result { +pub unsafe fn DrtGetEventData(hdrt: *const ::core::ffi::c_void, peventdata: &mut [u8]) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn DrtGetEventData(hdrt: *const ::core::ffi::c_void, uleventdatalen: u32, peventdata: *mut DRT_EVENT_DATA) -> ::windows::core::HRESULT; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - DrtGetEventData(::core::mem::transmute(hdrt), uleventdatalen, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DrtGetEventData(::core::mem::transmute(hdrt), peventdata.len() as _, ::core::mem::transmute(peventdata.as_ptr())).ok() } #[doc = "*Required features: `\"Win32_NetworkManagement_P2P\"`*"] #[inline] @@ -1091,12 +1090,12 @@ pub unsafe fn DrtGetEventDataSize(hdrt: *const ::core::ffi::c_void) -> ::windows } #[doc = "*Required features: `\"Win32_NetworkManagement_P2P\"`*"] #[inline] -pub unsafe fn DrtGetInstanceName(hdrt: *const ::core::ffi::c_void, ulcbinstancenamesize: u32, pwzdrtinstancename: ::windows::core::PWSTR) -> ::windows::core::Result<()> { +pub unsafe fn DrtGetInstanceName(hdrt: *const ::core::ffi::c_void, pwzdrtinstancename: &mut [u8]) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn DrtGetInstanceName(hdrt: *const ::core::ffi::c_void, ulcbinstancenamesize: u32, pwzdrtinstancename: ::windows::core::PWSTR) -> ::windows::core::HRESULT; } - DrtGetInstanceName(::core::mem::transmute(hdrt), ulcbinstancenamesize, ::core::mem::transmute(pwzdrtinstancename)).ok() + DrtGetInstanceName(::core::mem::transmute(hdrt), pwzdrtinstancename.len() as _, ::core::mem::transmute(pwzdrtinstancename.as_ptr())).ok() } #[doc = "*Required features: `\"Win32_NetworkManagement_P2P\"`*"] #[inline] @@ -1111,13 +1110,12 @@ pub unsafe fn DrtGetInstanceNameSize(hdrt: *const ::core::ffi::c_void) -> ::wind #[doc = "*Required features: `\"Win32_NetworkManagement_P2P\"`, `\"Win32_Foundation\"`, `\"Win32_Networking_WinSock\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Networking_WinSock"))] #[inline] -pub unsafe fn DrtGetSearchPath(hsearchcontext: *const ::core::ffi::c_void, ulsearchpathsize: u32) -> ::windows::core::Result { +pub unsafe fn DrtGetSearchPath(hsearchcontext: *const ::core::ffi::c_void, psearchpath: &mut [u8]) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn DrtGetSearchPath(hsearchcontext: *const ::core::ffi::c_void, ulsearchpathsize: u32, psearchpath: *mut DRT_ADDRESS_LIST) -> ::windows::core::HRESULT; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - DrtGetSearchPath(::core::mem::transmute(hsearchcontext), ulsearchpathsize, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DrtGetSearchPath(::core::mem::transmute(hsearchcontext), psearchpath.len() as _, ::core::mem::transmute(psearchpath.as_ptr())).ok() } #[doc = "*Required features: `\"Win32_NetworkManagement_P2P\"`*"] #[inline] @@ -1131,13 +1129,12 @@ pub unsafe fn DrtGetSearchPathSize(hsearchcontext: *const ::core::ffi::c_void) - } #[doc = "*Required features: `\"Win32_NetworkManagement_P2P\"`*"] #[inline] -pub unsafe fn DrtGetSearchResult(hsearchcontext: *const ::core::ffi::c_void, ulsearchresultsize: u32) -> ::windows::core::Result { +pub unsafe fn DrtGetSearchResult(hsearchcontext: *const ::core::ffi::c_void, psearchresult: &mut [u8]) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn DrtGetSearchResult(hsearchcontext: *const ::core::ffi::c_void, ulsearchresultsize: u32, psearchresult: *mut DRT_SEARCH_RESULT) -> ::windows::core::HRESULT; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - DrtGetSearchResult(::core::mem::transmute(hsearchcontext), ulsearchresultsize, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DrtGetSearchResult(::core::mem::transmute(hsearchcontext), psearchresult.len() as _, ::core::mem::transmute(psearchresult.as_ptr())).ok() } #[doc = "*Required features: `\"Win32_NetworkManagement_P2P\"`*"] #[inline] diff --git a/crates/libs/windows/src/Windows/Win32/Networking/ActiveDirectory/impl.rs b/crates/libs/windows/src/Windows/Win32/Networking/ActiveDirectory/impl.rs index e6755df6c3..9fca7321b3 100644 --- a/crates/libs/windows/src/Windows/Win32/Networking/ActiveDirectory/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/Networking/ActiveDirectory/impl.rs @@ -7056,15 +7056,15 @@ impl IDirectorySchemaMgmt_Vtbl { #[cfg(feature = "Win32_Foundation")] pub trait IDirectorySearch_Impl: Sized { fn SetSearchPreference(&self, psearchprefs: *const ads_searchpref_info, dwnumprefs: u32) -> ::windows::core::Result<()>; - fn ExecuteSearch(&self, pszsearchfilter: &::windows::core::PCWSTR, pattributenames: *const ::windows::core::PWSTR, dwnumberattributes: u32) -> ::windows::core::Result; - fn AbandonSearch(&self, phsearchresult: isize) -> ::windows::core::Result<()>; - fn GetFirstRow(&self, hsearchresult: isize) -> ::windows::core::HRESULT; - fn GetNextRow(&self, hsearchresult: isize) -> ::windows::core::HRESULT; - fn GetPreviousRow(&self, hsearchresult: isize) -> ::windows::core::HRESULT; - fn GetNextColumnName(&self, hsearchhandle: isize, ppszcolumnname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT; - fn GetColumn(&self, hsearchresult: isize, szcolumnname: &::windows::core::PCWSTR) -> ::windows::core::Result; + fn ExecuteSearch(&self, pszsearchfilter: &::windows::core::PCWSTR, pattributenames: *const ::windows::core::PWSTR, dwnumberattributes: u32) -> ::windows::core::Result; + fn AbandonSearch(&self, phsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::Result<()>; + fn GetFirstRow(&self, hsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT; + fn GetNextRow(&self, hsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT; + fn GetPreviousRow(&self, hsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT; + fn GetNextColumnName(&self, hsearchhandle: ADS_SEARCH_HANDLE, ppszcolumnname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT; + fn GetColumn(&self, hsearchresult: ADS_SEARCH_HANDLE, szcolumnname: &::windows::core::PCWSTR) -> ::windows::core::Result; fn FreeColumn(&self, psearchcolumn: *const ads_search_column) -> ::windows::core::Result<()>; - fn CloseSearchHandle(&self, hsearchresult: isize) -> ::windows::core::Result<()>; + fn CloseSearchHandle(&self, hsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::Result<()>; } #[cfg(feature = "Win32_Foundation")] impl ::windows::core::RuntimeName for IDirectorySearch {} @@ -7076,7 +7076,7 @@ impl IDirectorySearch_Vtbl { let this = (*this).get_impl(); this.SetSearchPreference(::core::mem::transmute_copy(&psearchprefs), ::core::mem::transmute_copy(&dwnumprefs)).into() } - unsafe extern "system" fn ExecuteSearch, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pszsearchfilter: ::windows::core::PCWSTR, pattributenames: *const ::windows::core::PWSTR, dwnumberattributes: u32, phsearchresult: *mut isize) -> ::windows::core::HRESULT { + unsafe extern "system" fn ExecuteSearch, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pszsearchfilter: ::windows::core::PCWSTR, pattributenames: *const ::windows::core::PWSTR, dwnumberattributes: u32, phsearchresult: *mut ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.ExecuteSearch(::core::mem::transmute(&pszsearchfilter), ::core::mem::transmute_copy(&pattributenames), ::core::mem::transmute_copy(&dwnumberattributes)) { @@ -7087,32 +7087,32 @@ impl IDirectorySearch_Vtbl { ::core::result::Result::Err(err) => err.into(), } } - unsafe extern "system" fn AbandonSearch, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, phsearchresult: isize) -> ::windows::core::HRESULT { + unsafe extern "system" fn AbandonSearch, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, phsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.AbandonSearch(::core::mem::transmute_copy(&phsearchresult)).into() } - unsafe extern "system" fn GetFirstRow, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hsearchresult: isize) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetFirstRow, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetFirstRow(::core::mem::transmute_copy(&hsearchresult)) } - unsafe extern "system" fn GetNextRow, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hsearchresult: isize) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetNextRow, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetNextRow(::core::mem::transmute_copy(&hsearchresult)) } - unsafe extern "system" fn GetPreviousRow, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hsearchresult: isize) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetPreviousRow, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetPreviousRow(::core::mem::transmute_copy(&hsearchresult)) } - unsafe extern "system" fn GetNextColumnName, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hsearchhandle: isize, ppszcolumnname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetNextColumnName, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hsearchhandle: ADS_SEARCH_HANDLE, ppszcolumnname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetNextColumnName(::core::mem::transmute_copy(&hsearchhandle), ::core::mem::transmute_copy(&ppszcolumnname)) } - unsafe extern "system" fn GetColumn, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hsearchresult: isize, szcolumnname: ::windows::core::PCWSTR, psearchcolumn: *mut ads_search_column) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetColumn, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hsearchresult: ADS_SEARCH_HANDLE, szcolumnname: ::windows::core::PCWSTR, psearchcolumn: *mut ads_search_column) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetColumn(::core::mem::transmute_copy(&hsearchresult), ::core::mem::transmute(&szcolumnname)) { @@ -7128,7 +7128,7 @@ impl IDirectorySearch_Vtbl { let this = (*this).get_impl(); this.FreeColumn(::core::mem::transmute_copy(&psearchcolumn)).into() } - unsafe extern "system" fn CloseSearchHandle, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hsearchresult: isize) -> ::windows::core::HRESULT { + unsafe extern "system" fn CloseSearchHandle, Impl: IDirectorySearch_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.CloseSearchHandle(::core::mem::transmute_copy(&hsearchresult)).into() diff --git a/crates/libs/windows/src/Windows/Win32/Networking/ActiveDirectory/mod.rs b/crates/libs/windows/src/Windows/Win32/Networking/ActiveDirectory/mod.rs index 7db4cd40ea..9a09a0aa15 100644 --- a/crates/libs/windows/src/Windows/Win32/Networking/ActiveDirectory/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Networking/ActiveDirectory/mod.rs @@ -1868,6 +1868,38 @@ impl ::core::fmt::Debug for ADS_SEARCHPREF_ENUM { f.debug_tuple("ADS_SEARCHPREF_ENUM").field(&self.0).finish() } } +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct ADS_SEARCH_HANDLE(pub isize); +impl ADS_SEARCH_HANDLE { + pub fn is_invalid(&self) -> bool { + self.0 == -1 || self.0 == 0 + } +} +impl ::core::default::Default for ADS_SEARCH_HANDLE { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for ADS_SEARCH_HANDLE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::marker::Copy for ADS_SEARCH_HANDLE {} +impl ::core::fmt::Debug for ADS_SEARCH_HANDLE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("ADS_SEARCH_HANDLE").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for ADS_SEARCH_HANDLE { + fn from(optional: ::core::option::Option) -> ADS_SEARCH_HANDLE { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for ADS_SEARCH_HANDLE { + type Abi = Self; +} #[doc = "*Required features: `\"Win32_Networking_ActiveDirectory\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] @@ -21293,44 +21325,63 @@ impl IDirectorySearch { pub unsafe fn SetSearchPreference(&self, psearchprefs: &ads_searchpref_info, dwnumprefs: u32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).SetSearchPreference)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(psearchprefs), dwnumprefs).ok() } - pub unsafe fn ExecuteSearch<'a, P0>(&self, pszsearchfilter: P0, pattributenames: &::windows::core::PWSTR, dwnumberattributes: u32) -> ::windows::core::Result + pub unsafe fn ExecuteSearch<'a, P0>(&self, pszsearchfilter: P0, pattributenames: &::windows::core::PWSTR, dwnumberattributes: u32) -> ::windows::core::Result where P0: ::std::convert::Into<::windows::core::PCWSTR>, { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).ExecuteSearch)(::windows::core::Interface::as_raw(self), pszsearchfilter.into(), ::core::mem::transmute(pattributenames), dwnumberattributes, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).ExecuteSearch)(::windows::core::Interface::as_raw(self), pszsearchfilter.into(), ::core::mem::transmute(pattributenames), dwnumberattributes, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } - pub unsafe fn AbandonSearch(&self, phsearchresult: isize) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).AbandonSearch)(::windows::core::Interface::as_raw(self), phsearchresult).ok() + pub unsafe fn AbandonSearch<'a, P0>(&self, phsearchresult: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).AbandonSearch)(::windows::core::Interface::as_raw(self), phsearchresult.into()).ok() } - pub unsafe fn GetFirstRow(&self, hsearchresult: isize) -> ::windows::core::HRESULT { - (::windows::core::Interface::vtable(self).GetFirstRow)(::windows::core::Interface::as_raw(self), hsearchresult) + pub unsafe fn GetFirstRow<'a, P0>(&self, hsearchresult: P0) -> ::windows::core::HRESULT + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).GetFirstRow)(::windows::core::Interface::as_raw(self), hsearchresult.into()) } - pub unsafe fn GetNextRow(&self, hsearchresult: isize) -> ::windows::core::HRESULT { - (::windows::core::Interface::vtable(self).GetNextRow)(::windows::core::Interface::as_raw(self), hsearchresult) + pub unsafe fn GetNextRow<'a, P0>(&self, hsearchresult: P0) -> ::windows::core::HRESULT + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).GetNextRow)(::windows::core::Interface::as_raw(self), hsearchresult.into()) } - pub unsafe fn GetPreviousRow(&self, hsearchresult: isize) -> ::windows::core::HRESULT { - (::windows::core::Interface::vtable(self).GetPreviousRow)(::windows::core::Interface::as_raw(self), hsearchresult) + pub unsafe fn GetPreviousRow<'a, P0>(&self, hsearchresult: P0) -> ::windows::core::HRESULT + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).GetPreviousRow)(::windows::core::Interface::as_raw(self), hsearchresult.into()) } - pub unsafe fn GetNextColumnName(&self, hsearchhandle: isize, ppszcolumnname: &mut ::windows::core::PWSTR) -> ::windows::core::HRESULT { - (::windows::core::Interface::vtable(self).GetNextColumnName)(::windows::core::Interface::as_raw(self), hsearchhandle, ::core::mem::transmute(ppszcolumnname)) + pub unsafe fn GetNextColumnName<'a, P0>(&self, hsearchhandle: P0, ppszcolumnname: &mut ::windows::core::PWSTR) -> ::windows::core::HRESULT + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).GetNextColumnName)(::windows::core::Interface::as_raw(self), hsearchhandle.into(), ::core::mem::transmute(ppszcolumnname)) } #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub unsafe fn GetColumn<'a, P0>(&self, hsearchresult: isize, szcolumnname: P0) -> ::windows::core::Result + pub unsafe fn GetColumn<'a, P0, P1>(&self, hsearchresult: P0, szcolumnname: P1) -> ::windows::core::Result where - P0: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCWSTR>, { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetColumn)(::windows::core::Interface::as_raw(self), hsearchresult, szcolumnname.into(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).GetColumn)(::windows::core::Interface::as_raw(self), hsearchresult.into(), szcolumnname.into(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub unsafe fn FreeColumn(&self, psearchcolumn: &ads_search_column) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).FreeColumn)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(psearchcolumn)).ok() } - pub unsafe fn CloseSearchHandle(&self, hsearchresult: isize) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).CloseSearchHandle)(::windows::core::Interface::as_raw(self), hsearchresult).ok() + pub unsafe fn CloseSearchHandle<'a, P0>(&self, hsearchresult: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).CloseSearchHandle)(::windows::core::Interface::as_raw(self), hsearchresult.into()).ok() } } impl ::core::convert::From for ::windows::core::IUnknown { @@ -21376,21 +21427,21 @@ pub struct IDirectorySearch_Vtbl { pub SetSearchPreference: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psearchprefs: *const ads_searchpref_info, dwnumprefs: u32) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] SetSearchPreference: usize, - pub ExecuteSearch: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszsearchfilter: ::windows::core::PCWSTR, pattributenames: *const ::windows::core::PWSTR, dwnumberattributes: u32, phsearchresult: *mut isize) -> ::windows::core::HRESULT, - pub AbandonSearch: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phsearchresult: isize) -> ::windows::core::HRESULT, - pub GetFirstRow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hsearchresult: isize) -> ::windows::core::HRESULT, - pub GetNextRow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hsearchresult: isize) -> ::windows::core::HRESULT, - pub GetPreviousRow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hsearchresult: isize) -> ::windows::core::HRESULT, - pub GetNextColumnName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hsearchhandle: isize, ppszcolumnname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT, + pub ExecuteSearch: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pszsearchfilter: ::windows::core::PCWSTR, pattributenames: *const ::windows::core::PWSTR, dwnumberattributes: u32, phsearchresult: *mut ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT, + pub AbandonSearch: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, phsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT, + pub GetFirstRow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT, + pub GetNextRow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT, + pub GetPreviousRow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT, + pub GetNextColumnName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hsearchhandle: ADS_SEARCH_HANDLE, ppszcolumnname: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT, #[cfg(feature = "Win32_Foundation")] - pub GetColumn: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hsearchresult: isize, szcolumnname: ::windows::core::PCWSTR, psearchcolumn: *mut ads_search_column) -> ::windows::core::HRESULT, + pub GetColumn: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hsearchresult: ADS_SEARCH_HANDLE, szcolumnname: ::windows::core::PCWSTR, psearchcolumn: *mut ads_search_column) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] GetColumn: usize, #[cfg(feature = "Win32_Foundation")] pub FreeColumn: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psearchcolumn: *const ads_search_column) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] FreeColumn: usize, - pub CloseSearchHandle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hsearchresult: isize) -> ::windows::core::HRESULT, + pub CloseSearchHandle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hsearchresult: ADS_SEARCH_HANDLE) -> ::windows::core::HRESULT, } #[doc = "*Required features: `\"Win32_Networking_ActiveDirectory\"`*"] #[repr(transparent)] diff --git a/crates/libs/windows/src/Windows/Win32/Networking/Clustering/mod.rs b/crates/libs/windows/src/Windows/Win32/Networking/Clustering/mod.rs index 10f08182db..89797b32a5 100644 --- a/crates/libs/windows/src/Windows/Win32/Networking/Clustering/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Networking/Clustering/mod.rs @@ -2141,7 +2141,7 @@ pub const CLUSGRP_STATUS_WAITING_TO_START: u64 = 16u64; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_BINARY { - pub __AnonymousBase_clusapi_L5129_C41: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub rgb: [u8; 1], } impl ::core::marker::Copy for CLUSPROP_BINARY {} @@ -2226,7 +2226,7 @@ impl ::core::default::Default for CLUSPROP_BUFFER_HELPER { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_DWORD { - pub __AnonymousBase_clusapi_L5149_C40: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub dw: u32, } impl ::core::marker::Copy for CLUSPROP_DWORD {} @@ -2253,7 +2253,7 @@ impl ::core::default::Default for CLUSPROP_DWORD { #[doc = "*Required features: `\"Win32_Networking_Clustering\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct CLUSPROP_FILETIME { - pub __AnonymousBase_clusapi_L5225_C14: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub ft: super::super::Foundation::FILETIME, } #[cfg(feature = "Win32_Foundation")] @@ -2285,8 +2285,8 @@ impl ::core::default::Default for CLUSPROP_FILETIME { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_FTSET_INFO { - pub __AnonymousBase_clusapi_L5555_C14: CLUSPROP_VALUE, - pub __AnonymousBase_clusapi_L5556_C14: CLUS_FTSET_INFO, + pub Base: CLUSPROP_VALUE, + pub Base2: CLUS_FTSET_INFO, } impl ::core::marker::Copy for CLUSPROP_FTSET_INFO {} impl ::core::clone::Clone for CLUSPROP_FTSET_INFO { @@ -2340,7 +2340,7 @@ impl ::core::fmt::Debug for CLUSPROP_IPADDR_ENABLENETBIOS { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_LARGE_INTEGER { - pub __AnonymousBase_clusapi_L5199_C14: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub li: i64, } impl ::core::marker::Copy for CLUSPROP_LARGE_INTEGER {} @@ -2392,7 +2392,7 @@ impl ::core::default::Default for CLUSPROP_LIST { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_LONG { - pub __AnonymousBase_clusapi_L5159_C39: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub l: i32, } impl ::core::marker::Copy for CLUSPROP_LONG {} @@ -2418,8 +2418,8 @@ impl ::core::default::Default for CLUSPROP_LONG { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_PARTITION_INFO { - pub __AnonymousBase_clusapi_L5507_C14: CLUSPROP_VALUE, - pub __AnonymousBase_clusapi_L5508_C14: CLUS_PARTITION_INFO, + pub Base: CLUSPROP_VALUE, + pub Base2: CLUS_PARTITION_INFO, } impl ::core::marker::Copy for CLUSPROP_PARTITION_INFO {} impl ::core::clone::Clone for CLUSPROP_PARTITION_INFO { @@ -2444,8 +2444,8 @@ impl ::core::default::Default for CLUSPROP_PARTITION_INFO { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_PARTITION_INFO_EX { - pub __AnonymousBase_clusapi_L5519_C14: CLUSPROP_VALUE, - pub __AnonymousBase_clusapi_L5520_C14: CLUS_PARTITION_INFO_EX, + pub Base: CLUSPROP_VALUE, + pub Base2: CLUS_PARTITION_INFO_EX, } impl ::core::marker::Copy for CLUSPROP_PARTITION_INFO_EX {} impl ::core::clone::Clone for CLUSPROP_PARTITION_INFO_EX { @@ -2470,8 +2470,8 @@ impl ::core::default::Default for CLUSPROP_PARTITION_INFO_EX { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_PARTITION_INFO_EX2 { - pub __AnonymousBase_clusapi_L5533_C14: CLUSPROP_PARTITION_INFO_EX, - pub __AnonymousBase_clusapi_L5534_C14: CLUS_PARTITION_INFO_EX2, + pub Base: CLUSPROP_PARTITION_INFO_EX, + pub Base2: CLUS_PARTITION_INFO_EX2, } impl ::core::marker::Copy for CLUSPROP_PARTITION_INFO_EX2 {} impl ::core::clone::Clone for CLUSPROP_PARTITION_INFO_EX2 { @@ -2562,7 +2562,7 @@ impl ::core::default::Default for CLUSPROP_REQUIRED_DEPENDENCY { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_RESOURCE_CLASS { - pub __AnonymousBase_clusapi_L5250_C14: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub rc: CLUSTER_RESOURCE_CLASS, } impl ::core::marker::Copy for CLUSPROP_RESOURCE_CLASS {} @@ -2588,8 +2588,8 @@ impl ::core::default::Default for CLUSPROP_RESOURCE_CLASS { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_RESOURCE_CLASS_INFO { - pub __AnonymousBase_clusapi_L5261_C14: CLUSPROP_VALUE, - pub __AnonymousBase_clusapi_L5262_C14: CLUS_RESOURCE_CLASS_INFO, + pub Base: CLUSPROP_VALUE, + pub Base2: CLUS_RESOURCE_CLASS_INFO, } impl ::core::marker::Copy for CLUSPROP_RESOURCE_CLASS_INFO {} impl ::core::clone::Clone for CLUSPROP_RESOURCE_CLASS_INFO { @@ -2614,8 +2614,8 @@ impl ::core::default::Default for CLUSPROP_RESOURCE_CLASS_INFO { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_SCSI_ADDRESS { - pub __AnonymousBase_clusapi_L5583_C14: CLUSPROP_VALUE, - pub __AnonymousBase_clusapi_L5584_C14: CLUS_SCSI_ADDRESS, + pub Base: CLUSPROP_VALUE, + pub Base2: CLUS_SCSI_ADDRESS, } impl ::core::marker::Copy for CLUSPROP_SCSI_ADDRESS {} impl ::core::clone::Clone for CLUSPROP_SCSI_ADDRESS { @@ -2641,7 +2641,7 @@ impl ::core::default::Default for CLUSPROP_SCSI_ADDRESS { #[doc = "*Required features: `\"Win32_Networking_Clustering\"`, `\"Win32_System_SystemServices\"`*"] #[cfg(feature = "Win32_System_SystemServices")] pub struct CLUSPROP_SECURITY_DESCRIPTOR { - pub __AnonymousBase_clusapi_L5211_C54: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub Anonymous: CLUSPROP_SECURITY_DESCRIPTOR_0, } #[cfg(feature = "Win32_System_SystemServices")] @@ -2763,7 +2763,7 @@ impl ::core::default::Default for CLUSPROP_SYNTAX_0 { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_SZ { - pub __AnonymousBase_clusapi_L5169_C37: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub sz: [u16; 1], } impl ::core::marker::Copy for CLUSPROP_SZ {} @@ -2789,7 +2789,7 @@ impl ::core::default::Default for CLUSPROP_SZ { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_ULARGE_INTEGER { - pub __AnonymousBase_clusapi_L5186_C14: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub li: u64, } impl ::core::marker::Copy for CLUSPROP_ULARGE_INTEGER {} @@ -2841,7 +2841,7 @@ impl ::core::default::Default for CLUSPROP_VALUE { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSPROP_WORD { - pub __AnonymousBase_clusapi_L5139_C39: CLUSPROP_VALUE, + pub Base: CLUSPROP_VALUE, pub w: u16, } impl ::core::marker::Copy for CLUSPROP_WORD {} @@ -6325,8 +6325,8 @@ impl ::core::fmt::Debug for CLUSTER_SHARED_VOLUME_BACKUP_STATE { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSTER_SHARED_VOLUME_RENAME_GUID_INPUT { - pub __AnonymousBase_clusapi_L5475_C14: CLUSTER_SHARED_VOLUME_RENAME_INPUT_VOLUME, - pub __AnonymousBase_clusapi_L5476_C14: CLUSTER_SHARED_VOLUME_RENAME_INPUT_GUID_NAME, + pub Base: CLUSTER_SHARED_VOLUME_RENAME_INPUT_VOLUME, + pub Base2: CLUSTER_SHARED_VOLUME_RENAME_INPUT_GUID_NAME, } impl ::core::marker::Copy for CLUSTER_SHARED_VOLUME_RENAME_GUID_INPUT {} impl ::core::clone::Clone for CLUSTER_SHARED_VOLUME_RENAME_GUID_INPUT { @@ -6351,8 +6351,8 @@ impl ::core::default::Default for CLUSTER_SHARED_VOLUME_RENAME_GUID_INPUT { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_Clustering\"`*"] pub struct CLUSTER_SHARED_VOLUME_RENAME_INPUT { - pub __AnonymousBase_clusapi_L5464_C14: CLUSTER_SHARED_VOLUME_RENAME_INPUT_VOLUME, - pub __AnonymousBase_clusapi_L5465_C14: CLUSTER_SHARED_VOLUME_RENAME_INPUT_NAME, + pub Base: CLUSTER_SHARED_VOLUME_RENAME_INPUT_VOLUME, + pub Base2: CLUSTER_SHARED_VOLUME_RENAME_INPUT_NAME, } impl ::core::marker::Copy for CLUSTER_SHARED_VOLUME_RENAME_INPUT {} impl ::core::clone::Clone for CLUSTER_SHARED_VOLUME_RENAME_INPUT { diff --git a/crates/libs/windows/src/Windows/Win32/Networking/HttpServer/mod.rs b/crates/libs/windows/src/Windows/Win32/Networking/HttpServer/mod.rs index c6e48bf6fb..2c9fc0fb8a 100644 --- a/crates/libs/windows/src/Windows/Win32/Networking/HttpServer/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Networking/HttpServer/mod.rs @@ -2785,7 +2785,7 @@ impl ::core::default::Default for HTTP_REQUEST_V1 { #[doc = "*Required features: `\"Win32_Networking_HttpServer\"`, `\"Win32_Foundation\"`, `\"Win32_Networking_WinSock\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Networking_WinSock"))] pub struct HTTP_REQUEST_V2 { - pub __AnonymousBase_http_L1861_C35: HTTP_REQUEST_V1, + pub Base: HTTP_REQUEST_V1, pub RequestInfoCount: u16, pub pRequestInfo: *mut HTTP_REQUEST_INFO, } @@ -2800,7 +2800,7 @@ impl ::core::clone::Clone for HTTP_REQUEST_V2 { #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Networking_WinSock"))] impl ::core::fmt::Debug for HTTP_REQUEST_V2 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("HTTP_REQUEST_V2").field("__AnonymousBase_http_L1861_C35", &self.__AnonymousBase_http_L1861_C35).field("RequestInfoCount", &self.RequestInfoCount).field("pRequestInfo", &self.pRequestInfo).finish() + f.debug_struct("HTTP_REQUEST_V2").field("Base", &self.Base).field("RequestInfoCount", &self.RequestInfoCount).field("pRequestInfo", &self.pRequestInfo).finish() } } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Networking_WinSock"))] @@ -2973,7 +2973,7 @@ impl ::core::default::Default for HTTP_RESPONSE_V1 { #[doc = "*Required features: `\"Win32_Networking_HttpServer\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct HTTP_RESPONSE_V2 { - pub __AnonymousBase_http_L2050_C36: HTTP_RESPONSE_V1, + pub Base: HTTP_RESPONSE_V1, pub ResponseInfoCount: u16, pub pResponseInfo: *mut HTTP_RESPONSE_INFO, } @@ -2988,7 +2988,7 @@ impl ::core::clone::Clone for HTTP_RESPONSE_V2 { #[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for HTTP_RESPONSE_V2 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("HTTP_RESPONSE_V2").field("__AnonymousBase_http_L2050_C36", &self.__AnonymousBase_http_L2050_C36).field("ResponseInfoCount", &self.ResponseInfoCount).field("pResponseInfo", &self.pResponseInfo).finish() + f.debug_struct("HTTP_RESPONSE_V2").field("Base", &self.Base).field("ResponseInfoCount", &self.ResponseInfoCount).field("pResponseInfo", &self.pResponseInfo).finish() } } #[cfg(feature = "Win32_Foundation")] diff --git a/crates/libs/windows/src/Windows/Win32/Networking/WinSock/mod.rs b/crates/libs/windows/src/Windows/Win32/Networking/WinSock/mod.rs index d59f4602f9..9f63d9979d 100644 --- a/crates/libs/windows/src/Windows/Win32/Networking/WinSock/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Networking/WinSock/mod.rs @@ -226,7120 +226,6455 @@ impl ::core::default::Default for ADDRINFOA { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ADDRINFOEX_VERSION_2: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ADDRINFOEX_VERSION_3: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ADDRINFOEX_VERSION_4: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ADDRINFOEX_VERSION_5: u32 = 5u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ADDRINFOEX_VERSION_6: u32 = 6u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct AFPROTOCOLS { - pub iAddressFamily: i32, - pub iProtocol: i32, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEX2A { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows::core::PSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows::core::GUID, + pub ai_next: *mut ADDRINFOEX2A, + pub ai_version: i32, + pub ai_fqdn: ::windows::core::PSTR, } -impl ::core::marker::Copy for AFPROTOCOLS {} -impl ::core::clone::Clone for AFPROTOCOLS { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEX2A {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEX2A { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for AFPROTOCOLS { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for ADDRINFOEX2A { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("AFPROTOCOLS").field("iAddressFamily", &self.iAddressFamily).field("iProtocol", &self.iProtocol).finish() + f.debug_struct("ADDRINFOEX2A") + .field("ai_flags", &self.ai_flags) + .field("ai_family", &self.ai_family) + .field("ai_socktype", &self.ai_socktype) + .field("ai_protocol", &self.ai_protocol) + .field("ai_addrlen", &self.ai_addrlen) + .field("ai_canonname", &self.ai_canonname) + .field("ai_addr", &self.ai_addr) + .field("ai_blob", &self.ai_blob) + .field("ai_bloblen", &self.ai_bloblen) + .field("ai_provider", &self.ai_provider) + .field("ai_next", &self.ai_next) + .field("ai_version", &self.ai_version) + .field("ai_fqdn", &self.ai_fqdn) + .finish() } } -unsafe impl ::windows::core::Abi for AFPROTOCOLS { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for ADDRINFOEX2A { type Abi = Self; } -impl ::core::cmp::PartialEq for AFPROTOCOLS { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for ADDRINFOEX2A { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for AFPROTOCOLS {} -impl ::core::default::Default for AFPROTOCOLS { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for ADDRINFOEX2A {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for ADDRINFOEX2A { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_12844: u16 = 25u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_APPLETALK: u16 = 16u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_ATM: u16 = 22u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_BAN: u16 = 21u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_CCITT: u16 = 10u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_CHAOS: u16 = 5u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_CLUSTER: u16 = 24u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_DATAKIT: u16 = 9u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_DECnet: u16 = 12u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_DLI: u16 = 13u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_ECMA: u16 = 8u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_FIREFOX: u16 = 19u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_HYLINK: u16 = 15u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_HYPERV: u16 = 34u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_ICLFXBM: u16 = 31u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_IMPLINK: u16 = 3u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_IPX: u16 = 6u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_IRDA: u16 = 26u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_ISO: u16 = 7u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_LAT: u16 = 14u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_LINK: u16 = 33u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_MAX: u16 = 29u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_NETBIOS: u16 = 17u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_NETDES: u16 = 28u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_NS: u16 = 6u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_OSI: u16 = 7u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_PUP: u16 = 4u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_SNA: u16 = 11u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_TCNMESSAGE: u16 = 30u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_TCNPROCESS: u16 = 29u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_UNIX: u16 = 1u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_UNKNOWN1: u16 = 20u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AF_VOICEVIEW: u16 = 18u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_ADDRCONFIG: u32 = 1024u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_ALL: u32 = 256u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_BYPASS_DNS_CACHE: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_CANONNAME: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_DISABLE_IDN_ENCODING: u32 = 524288u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_DNS_ONLY: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_DNS_RESPONSE_HOSTFILE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_DNS_RESPONSE_SECURE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_DNS_SERVER_TYPE_DOH: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_DNS_SERVER_TYPE_UDP: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_DNS_SERVER_UDP_FALLBACK: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_EXCLUSIVE_CUSTOM_SERVERS: u32 = 2097152u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_EXTENDED: u32 = 2147483648u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_FILESERVER: u32 = 262144u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_FORCE_CLEAR_TEXT: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_FQDN: u32 = 131072u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_NON_AUTHORITATIVE: u32 = 16384u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_NUMERICHOST: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_NUMERICSERV: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_PASSIVE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_REQUIRE_SECURE: u32 = 536870912u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_RESOLUTION_HANDLE: u32 = 1073741824u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_RETURN_PREFERRED_NAMES: u32 = 65536u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_RETURN_RESPONSE_FLAGS: u32 = 268435456u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_RETURN_TTL: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_SECURE: u32 = 32768u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_SECURE_WITH_FALLBACK: u32 = 1048576u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const AI_V4MAPPED: u32 = 2048u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct ARP_HARDWARE_TYPE(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ARP_HW_ENET: ARP_HARDWARE_TYPE = ARP_HARDWARE_TYPE(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ARP_HW_802: ARP_HARDWARE_TYPE = ARP_HARDWARE_TYPE(6i32); -impl ::core::marker::Copy for ARP_HARDWARE_TYPE {} -impl ::core::clone::Clone for ARP_HARDWARE_TYPE { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for ARP_HARDWARE_TYPE { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for ARP_HARDWARE_TYPE { - type Abi = Self; -} -impl ::core::fmt::Debug for ARP_HARDWARE_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ARP_HARDWARE_TYPE").field(&self.0).finish() - } -} #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ARP_HEADER { - pub HardwareAddressSpace: u16, - pub ProtocolAddressSpace: u16, - pub HardwareAddressLength: u8, - pub ProtocolAddressLength: u8, - pub Opcode: u16, - pub SenderHardwareAddress: [u8; 1], +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEX2W { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows::core::PWSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows::core::GUID, + pub ai_next: *mut ADDRINFOEX2W, + pub ai_version: i32, + pub ai_fqdn: ::windows::core::PWSTR, } -impl ::core::marker::Copy for ARP_HEADER {} -impl ::core::clone::Clone for ARP_HEADER { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEX2W {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEX2W { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for ARP_HEADER { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for ADDRINFOEX2W { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ARP_HEADER").field("HardwareAddressSpace", &self.HardwareAddressSpace).field("ProtocolAddressSpace", &self.ProtocolAddressSpace).field("HardwareAddressLength", &self.HardwareAddressLength).field("ProtocolAddressLength", &self.ProtocolAddressLength).field("Opcode", &self.Opcode).field("SenderHardwareAddress", &self.SenderHardwareAddress).finish() + f.debug_struct("ADDRINFOEX2W") + .field("ai_flags", &self.ai_flags) + .field("ai_family", &self.ai_family) + .field("ai_socktype", &self.ai_socktype) + .field("ai_protocol", &self.ai_protocol) + .field("ai_addrlen", &self.ai_addrlen) + .field("ai_canonname", &self.ai_canonname) + .field("ai_addr", &self.ai_addr) + .field("ai_blob", &self.ai_blob) + .field("ai_bloblen", &self.ai_bloblen) + .field("ai_provider", &self.ai_provider) + .field("ai_next", &self.ai_next) + .field("ai_version", &self.ai_version) + .field("ai_fqdn", &self.ai_fqdn) + .finish() } } -unsafe impl ::windows::core::Abi for ARP_HEADER { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for ADDRINFOEX2W { type Abi = Self; } -impl ::core::cmp::PartialEq for ARP_HEADER { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for ADDRINFOEX2W { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ARP_HEADER {} -impl ::core::default::Default for ARP_HEADER { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for ADDRINFOEX2W {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for ADDRINFOEX2W { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct ARP_OPCODE(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ARP_REQUEST: ARP_OPCODE = ARP_OPCODE(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ARP_RESPONSE: ARP_OPCODE = ARP_OPCODE(2i32); -impl ::core::marker::Copy for ARP_OPCODE {} -impl ::core::clone::Clone for ARP_OPCODE { +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEX3 { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows::core::PWSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows::core::GUID, + pub ai_next: *mut ADDRINFOEX3, + pub ai_version: i32, + pub ai_fqdn: ::windows::core::PWSTR, + pub ai_interfaceindex: i32, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEX3 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEX3 { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for ARP_OPCODE { - fn default() -> Self { - Self(0) +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for ADDRINFOEX3 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ADDRINFOEX3") + .field("ai_flags", &self.ai_flags) + .field("ai_family", &self.ai_family) + .field("ai_socktype", &self.ai_socktype) + .field("ai_protocol", &self.ai_protocol) + .field("ai_addrlen", &self.ai_addrlen) + .field("ai_canonname", &self.ai_canonname) + .field("ai_addr", &self.ai_addr) + .field("ai_blob", &self.ai_blob) + .field("ai_bloblen", &self.ai_bloblen) + .field("ai_provider", &self.ai_provider) + .field("ai_next", &self.ai_next) + .field("ai_version", &self.ai_version) + .field("ai_fqdn", &self.ai_fqdn) + .field("ai_interfaceindex", &self.ai_interfaceindex) + .finish() } } -unsafe impl ::windows::core::Abi for ARP_OPCODE { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for ADDRINFOEX3 { type Abi = Self; } -impl ::core::fmt::Debug for ARP_OPCODE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ARP_OPCODE").field(&self.0).finish() +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for ADDRINFOEX3 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for ADDRINFOEX3 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for ADDRINFOEX3 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } -pub const ASSOCIATE_NAMERES_CONTEXT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x59a38b67_d4fe_46e1_ba3c_87ea74ca3049); #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ASSOCIATE_NAMERES_CONTEXT_INPUT { - pub TransportSettingId: TRANSPORT_SETTING_ID, - pub Handle: u64, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEX4 { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows::core::PWSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows::core::GUID, + pub ai_next: *mut ADDRINFOEX4, + pub ai_version: i32, + pub ai_fqdn: ::windows::core::PWSTR, + pub ai_interfaceindex: i32, + pub ai_resolutionhandle: super::super::Foundation::HANDLE, } -impl ::core::marker::Copy for ASSOCIATE_NAMERES_CONTEXT_INPUT {} -impl ::core::clone::Clone for ASSOCIATE_NAMERES_CONTEXT_INPUT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEX4 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEX4 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for ASSOCIATE_NAMERES_CONTEXT_INPUT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for ADDRINFOEX4 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ASSOCIATE_NAMERES_CONTEXT_INPUT").field("TransportSettingId", &self.TransportSettingId).field("Handle", &self.Handle).finish() + f.debug_struct("ADDRINFOEX4") + .field("ai_flags", &self.ai_flags) + .field("ai_family", &self.ai_family) + .field("ai_socktype", &self.ai_socktype) + .field("ai_protocol", &self.ai_protocol) + .field("ai_addrlen", &self.ai_addrlen) + .field("ai_canonname", &self.ai_canonname) + .field("ai_addr", &self.ai_addr) + .field("ai_blob", &self.ai_blob) + .field("ai_bloblen", &self.ai_bloblen) + .field("ai_provider", &self.ai_provider) + .field("ai_next", &self.ai_next) + .field("ai_version", &self.ai_version) + .field("ai_fqdn", &self.ai_fqdn) + .field("ai_interfaceindex", &self.ai_interfaceindex) + .field("ai_resolutionhandle", &self.ai_resolutionhandle) + .finish() } } -unsafe impl ::windows::core::Abi for ASSOCIATE_NAMERES_CONTEXT_INPUT { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for ADDRINFOEX4 { type Abi = Self; } -impl ::core::cmp::PartialEq for ASSOCIATE_NAMERES_CONTEXT_INPUT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for ADDRINFOEX4 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ASSOCIATE_NAMERES_CONTEXT_INPUT {} -impl ::core::default::Default for ASSOCIATE_NAMERES_CONTEXT_INPUT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for ADDRINFOEX4 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for ADDRINFOEX4 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ATMPROTO_AAL1: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ATMPROTO_AAL2: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ATMPROTO_AAL34: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ATMPROTO_AAL5: u32 = 5u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ATMPROTO_AALUSER: u32 = 0u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ATM_ADDRESS { - pub AddressType: u32, - pub NumofDigits: u32, - pub Addr: [u8; 20], +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEX5 { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows::core::PWSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows::core::GUID, + pub ai_next: *mut ADDRINFOEX5, + pub ai_version: i32, + pub ai_fqdn: ::windows::core::PWSTR, + pub ai_interfaceindex: i32, + pub ai_resolutionhandle: super::super::Foundation::HANDLE, + pub ai_ttl: u32, } -impl ::core::marker::Copy for ATM_ADDRESS {} -impl ::core::clone::Clone for ATM_ADDRESS { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEX5 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEX5 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for ATM_ADDRESS { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for ADDRINFOEX5 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ATM_ADDRESS").field("AddressType", &self.AddressType).field("NumofDigits", &self.NumofDigits).field("Addr", &self.Addr).finish() + f.debug_struct("ADDRINFOEX5") + .field("ai_flags", &self.ai_flags) + .field("ai_family", &self.ai_family) + .field("ai_socktype", &self.ai_socktype) + .field("ai_protocol", &self.ai_protocol) + .field("ai_addrlen", &self.ai_addrlen) + .field("ai_canonname", &self.ai_canonname) + .field("ai_addr", &self.ai_addr) + .field("ai_blob", &self.ai_blob) + .field("ai_bloblen", &self.ai_bloblen) + .field("ai_provider", &self.ai_provider) + .field("ai_next", &self.ai_next) + .field("ai_version", &self.ai_version) + .field("ai_fqdn", &self.ai_fqdn) + .field("ai_interfaceindex", &self.ai_interfaceindex) + .field("ai_resolutionhandle", &self.ai_resolutionhandle) + .field("ai_ttl", &self.ai_ttl) + .finish() } } -unsafe impl ::windows::core::Abi for ATM_ADDRESS { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for ADDRINFOEX5 { type Abi = Self; } -impl ::core::cmp::PartialEq for ATM_ADDRESS { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for ADDRINFOEX5 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ATM_ADDRESS {} -impl ::core::default::Default for ATM_ADDRESS { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for ADDRINFOEX5 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for ADDRINFOEX5 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ATM_ADDR_SIZE: u32 = 20u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ATM_AESA: u32 = 2u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ATM_BHLI { - pub HighLayerInfoType: u32, - pub HighLayerInfoLength: u32, - pub HighLayerInfo: [u8; 8], +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEX6 { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows::core::PWSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows::core::GUID, + pub ai_next: *mut ADDRINFOEX5, + pub ai_version: i32, + pub ai_fqdn: ::windows::core::PWSTR, + pub ai_interfaceindex: i32, + pub ai_resolutionhandle: super::super::Foundation::HANDLE, + pub ai_ttl: u32, + pub ai_numservers: u32, + pub ai_servers: *mut addrinfo_dns_server, + pub ai_responseflags: u64, } -impl ::core::marker::Copy for ATM_BHLI {} -impl ::core::clone::Clone for ATM_BHLI { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEX6 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEX6 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for ATM_BHLI { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for ADDRINFOEX6 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ATM_BHLI").field("HighLayerInfoType", &self.HighLayerInfoType).field("HighLayerInfoLength", &self.HighLayerInfoLength).field("HighLayerInfo", &self.HighLayerInfo).finish() + f.debug_struct("ADDRINFOEX6") + .field("ai_flags", &self.ai_flags) + .field("ai_family", &self.ai_family) + .field("ai_socktype", &self.ai_socktype) + .field("ai_protocol", &self.ai_protocol) + .field("ai_addrlen", &self.ai_addrlen) + .field("ai_canonname", &self.ai_canonname) + .field("ai_addr", &self.ai_addr) + .field("ai_blob", &self.ai_blob) + .field("ai_bloblen", &self.ai_bloblen) + .field("ai_provider", &self.ai_provider) + .field("ai_next", &self.ai_next) + .field("ai_version", &self.ai_version) + .field("ai_fqdn", &self.ai_fqdn) + .field("ai_interfaceindex", &self.ai_interfaceindex) + .field("ai_resolutionhandle", &self.ai_resolutionhandle) + .field("ai_ttl", &self.ai_ttl) + .field("ai_numservers", &self.ai_numservers) + .field("ai_servers", &self.ai_servers) + .field("ai_responseflags", &self.ai_responseflags) + .finish() } } -unsafe impl ::windows::core::Abi for ATM_BHLI { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for ADDRINFOEX6 { type Abi = Self; } -impl ::core::cmp::PartialEq for ATM_BHLI { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for ADDRINFOEX6 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ATM_BHLI {} -impl ::core::default::Default for ATM_BHLI { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for ADDRINFOEX6 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for ADDRINFOEX6 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ATM_BLLI { - pub Layer2Protocol: u32, - pub Layer2UserSpecifiedProtocol: u32, - pub Layer3Protocol: u32, - pub Layer3UserSpecifiedProtocol: u32, - pub Layer3IPI: u32, - pub SnapID: [u8; 5], +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEXA { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows::core::PSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows::core::GUID, + pub ai_next: *mut ADDRINFOEXA, } -impl ::core::marker::Copy for ATM_BLLI {} -impl ::core::clone::Clone for ATM_BLLI { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEXA {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEXA { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for ATM_BLLI { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for ADDRINFOEXA { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ATM_BLLI").field("Layer2Protocol", &self.Layer2Protocol).field("Layer2UserSpecifiedProtocol", &self.Layer2UserSpecifiedProtocol).field("Layer3Protocol", &self.Layer3Protocol).field("Layer3UserSpecifiedProtocol", &self.Layer3UserSpecifiedProtocol).field("Layer3IPI", &self.Layer3IPI).field("SnapID", &self.SnapID).finish() + f.debug_struct("ADDRINFOEXA").field("ai_flags", &self.ai_flags).field("ai_family", &self.ai_family).field("ai_socktype", &self.ai_socktype).field("ai_protocol", &self.ai_protocol).field("ai_addrlen", &self.ai_addrlen).field("ai_canonname", &self.ai_canonname).field("ai_addr", &self.ai_addr).field("ai_blob", &self.ai_blob).field("ai_bloblen", &self.ai_bloblen).field("ai_provider", &self.ai_provider).field("ai_next", &self.ai_next).finish() } } -unsafe impl ::windows::core::Abi for ATM_BLLI { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for ADDRINFOEXA { type Abi = Self; } -impl ::core::cmp::PartialEq for ATM_BLLI { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for ADDRINFOEXA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ATM_BLLI {} -impl ::core::default::Default for ATM_BLLI { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for ADDRINFOEXA {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for ADDRINFOEXA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ATM_BLLI_IE { - pub Layer2Protocol: u32, - pub Layer2Mode: u8, - pub Layer2WindowSize: u8, - pub Layer2UserSpecifiedProtocol: u32, - pub Layer3Protocol: u32, - pub Layer3Mode: u8, - pub Layer3DefaultPacketSize: u8, - pub Layer3PacketWindowSize: u8, - pub Layer3UserSpecifiedProtocol: u32, - pub Layer3IPI: u32, - pub SnapID: [u8; 5], +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOEXW { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows::core::PWSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_blob: *mut ::core::ffi::c_void, + pub ai_bloblen: usize, + pub ai_provider: *mut ::windows::core::GUID, + pub ai_next: *mut ADDRINFOEXW, } -impl ::core::marker::Copy for ATM_BLLI_IE {} -impl ::core::clone::Clone for ATM_BLLI_IE { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOEXW {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOEXW { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for ATM_BLLI_IE { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for ADDRINFOEXW { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ATM_BLLI_IE") - .field("Layer2Protocol", &self.Layer2Protocol) - .field("Layer2Mode", &self.Layer2Mode) - .field("Layer2WindowSize", &self.Layer2WindowSize) - .field("Layer2UserSpecifiedProtocol", &self.Layer2UserSpecifiedProtocol) - .field("Layer3Protocol", &self.Layer3Protocol) - .field("Layer3Mode", &self.Layer3Mode) - .field("Layer3DefaultPacketSize", &self.Layer3DefaultPacketSize) - .field("Layer3PacketWindowSize", &self.Layer3PacketWindowSize) - .field("Layer3UserSpecifiedProtocol", &self.Layer3UserSpecifiedProtocol) - .field("Layer3IPI", &self.Layer3IPI) - .field("SnapID", &self.SnapID) - .finish() + f.debug_struct("ADDRINFOEXW").field("ai_flags", &self.ai_flags).field("ai_family", &self.ai_family).field("ai_socktype", &self.ai_socktype).field("ai_protocol", &self.ai_protocol).field("ai_addrlen", &self.ai_addrlen).field("ai_canonname", &self.ai_canonname).field("ai_addr", &self.ai_addr).field("ai_blob", &self.ai_blob).field("ai_bloblen", &self.ai_bloblen).field("ai_provider", &self.ai_provider).field("ai_next", &self.ai_next).finish() } } -unsafe impl ::windows::core::Abi for ATM_BLLI_IE { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for ADDRINFOEXW { type Abi = Self; } -impl ::core::cmp::PartialEq for ATM_BLLI_IE { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for ADDRINFOEXW { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ATM_BLLI_IE {} -impl ::core::default::Default for ATM_BLLI_IE { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for ADDRINFOEXW {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for ADDRINFOEXW { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ATM_BROADBAND_BEARER_CAPABILITY_IE { - pub BearerClass: u8, - pub TrafficType: u8, - pub TimingRequirements: u8, - pub ClippingSusceptability: u8, - pub UserPlaneConnectionConfig: u8, -} -impl ::core::marker::Copy for ATM_BROADBAND_BEARER_CAPABILITY_IE {} -impl ::core::clone::Clone for ATM_BROADBAND_BEARER_CAPABILITY_IE { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for ATM_BROADBAND_BEARER_CAPABILITY_IE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ATM_BROADBAND_BEARER_CAPABILITY_IE").field("BearerClass", &self.BearerClass).field("TrafficType", &self.TrafficType).field("TimingRequirements", &self.TimingRequirements).field("ClippingSusceptability", &self.ClippingSusceptability).field("UserPlaneConnectionConfig", &self.UserPlaneConnectionConfig).finish() - } -} -unsafe impl ::windows::core::Abi for ATM_BROADBAND_BEARER_CAPABILITY_IE { - type Abi = Self; -} -impl ::core::cmp::PartialEq for ATM_BROADBAND_BEARER_CAPABILITY_IE { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for ATM_BROADBAND_BEARER_CAPABILITY_IE {} -impl ::core::default::Default for ATM_BROADBAND_BEARER_CAPABILITY_IE { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub const ADDRINFOEX_VERSION_2: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ATM_CALLING_PARTY_NUMBER_IE { - pub ATM_Number: ATM_ADDRESS, - pub Presentation_Indication: u8, - pub Screening_Indicator: u8, -} -impl ::core::marker::Copy for ATM_CALLING_PARTY_NUMBER_IE {} -impl ::core::clone::Clone for ATM_CALLING_PARTY_NUMBER_IE { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for ATM_CALLING_PARTY_NUMBER_IE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ATM_CALLING_PARTY_NUMBER_IE").field("ATM_Number", &self.ATM_Number).field("Presentation_Indication", &self.Presentation_Indication).field("Screening_Indicator", &self.Screening_Indicator).finish() - } -} -unsafe impl ::windows::core::Abi for ATM_CALLING_PARTY_NUMBER_IE { - type Abi = Self; -} -impl ::core::cmp::PartialEq for ATM_CALLING_PARTY_NUMBER_IE { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for ATM_CALLING_PARTY_NUMBER_IE {} -impl ::core::default::Default for ATM_CALLING_PARTY_NUMBER_IE { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub const ADDRINFOEX_VERSION_3: u32 = 3u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ATM_CAUSE_IE { - pub Location: u8, - pub Cause: u8, - pub DiagnosticsLength: u8, - pub Diagnostics: [u8; 4], +pub const ADDRINFOEX_VERSION_4: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ADDRINFOEX_VERSION_5: u32 = 5u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ADDRINFOEX_VERSION_6: u32 = 6u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ADDRINFOW { + pub ai_flags: i32, + pub ai_family: i32, + pub ai_socktype: i32, + pub ai_protocol: i32, + pub ai_addrlen: usize, + pub ai_canonname: ::windows::core::PWSTR, + pub ai_addr: *mut SOCKADDR, + pub ai_next: *mut ADDRINFOW, } -impl ::core::marker::Copy for ATM_CAUSE_IE {} -impl ::core::clone::Clone for ATM_CAUSE_IE { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ADDRINFOW {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ADDRINFOW { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for ATM_CAUSE_IE { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for ADDRINFOW { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ATM_CAUSE_IE").field("Location", &self.Location).field("Cause", &self.Cause).field("DiagnosticsLength", &self.DiagnosticsLength).field("Diagnostics", &self.Diagnostics).finish() + f.debug_struct("ADDRINFOW").field("ai_flags", &self.ai_flags).field("ai_family", &self.ai_family).field("ai_socktype", &self.ai_socktype).field("ai_protocol", &self.ai_protocol).field("ai_addrlen", &self.ai_addrlen).field("ai_canonname", &self.ai_canonname).field("ai_addr", &self.ai_addr).field("ai_next", &self.ai_next).finish() } } -unsafe impl ::windows::core::Abi for ATM_CAUSE_IE { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for ADDRINFOW { type Abi = Self; } -impl ::core::cmp::PartialEq for ATM_CAUSE_IE { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for ADDRINFOW { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ATM_CAUSE_IE {} -impl ::core::default::Default for ATM_CAUSE_IE { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for ADDRINFOW {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for ADDRINFOW { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ATM_CONNECTION_ID { - pub DeviceNumber: u32, - pub VPI: u32, - pub VCI: u32, +pub struct AFPROTOCOLS { + pub iAddressFamily: i32, + pub iProtocol: i32, } -impl ::core::marker::Copy for ATM_CONNECTION_ID {} -impl ::core::clone::Clone for ATM_CONNECTION_ID { +impl ::core::marker::Copy for AFPROTOCOLS {} +impl ::core::clone::Clone for AFPROTOCOLS { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for ATM_CONNECTION_ID { +impl ::core::fmt::Debug for AFPROTOCOLS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ATM_CONNECTION_ID").field("DeviceNumber", &self.DeviceNumber).field("VPI", &self.VPI).field("VCI", &self.VCI).finish() + f.debug_struct("AFPROTOCOLS").field("iAddressFamily", &self.iAddressFamily).field("iProtocol", &self.iProtocol).finish() } } -unsafe impl ::windows::core::Abi for ATM_CONNECTION_ID { +unsafe impl ::windows::core::Abi for AFPROTOCOLS { type Abi = Self; } -impl ::core::cmp::PartialEq for ATM_CONNECTION_ID { +impl ::core::cmp::PartialEq for AFPROTOCOLS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ATM_CONNECTION_ID {} -impl ::core::default::Default for ATM_CONNECTION_ID { +impl ::core::cmp::Eq for AFPROTOCOLS {} +impl ::core::default::Default for AFPROTOCOLS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ATM_E164: u32 = 1u32; +pub const AF_12844: u16 = 25u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ATM_NSAP: u32 = 2u32; -#[repr(C, packed(4))] +pub const AF_APPLETALK: u16 = 16u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ATM_PVC_PARAMS { - pub PvcConnectionId: ATM_CONNECTION_ID, - pub PvcQos: QOS, -} -impl ::core::marker::Copy for ATM_PVC_PARAMS {} -impl ::core::clone::Clone for ATM_PVC_PARAMS { - fn clone(&self) -> Self { - *self - } -} -unsafe impl ::windows::core::Abi for ATM_PVC_PARAMS { - type Abi = Self; -} -impl ::core::cmp::PartialEq for ATM_PVC_PARAMS { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for ATM_PVC_PARAMS {} -impl ::core::default::Default for ATM_PVC_PARAMS { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub const AF_ATM: u16 = 22u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ATM_QOS_CLASS_IE { - pub QOSClassForward: u8, - pub QOSClassBackward: u8, -} -impl ::core::marker::Copy for ATM_QOS_CLASS_IE {} -impl ::core::clone::Clone for ATM_QOS_CLASS_IE { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for ATM_QOS_CLASS_IE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ATM_QOS_CLASS_IE").field("QOSClassForward", &self.QOSClassForward).field("QOSClassBackward", &self.QOSClassBackward).finish() - } -} -unsafe impl ::windows::core::Abi for ATM_QOS_CLASS_IE { - type Abi = Self; -} -impl ::core::cmp::PartialEq for ATM_QOS_CLASS_IE { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for ATM_QOS_CLASS_IE {} -impl ::core::default::Default for ATM_QOS_CLASS_IE { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct ATM_TD { - pub PeakCellRate_CLP0: u32, - pub PeakCellRate_CLP01: u32, - pub SustainableCellRate_CLP0: u32, - pub SustainableCellRate_CLP01: u32, - pub MaxBurstSize_CLP0: u32, - pub MaxBurstSize_CLP01: u32, - pub Tagging: super::super::Foundation::BOOL, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for ATM_TD {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for ATM_TD { - fn clone(&self) -> Self { - *self - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for ATM_TD { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ATM_TD").field("PeakCellRate_CLP0", &self.PeakCellRate_CLP0).field("PeakCellRate_CLP01", &self.PeakCellRate_CLP01).field("SustainableCellRate_CLP0", &self.SustainableCellRate_CLP0).field("SustainableCellRate_CLP01", &self.SustainableCellRate_CLP01).field("MaxBurstSize_CLP0", &self.MaxBurstSize_CLP0).field("MaxBurstSize_CLP01", &self.MaxBurstSize_CLP01).field("Tagging", &self.Tagging).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for ATM_TD { - type Abi = Self; -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for ATM_TD { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for ATM_TD {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for ATM_TD { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct ATM_TRAFFIC_DESCRIPTOR_IE { - pub Forward: ATM_TD, - pub Backward: ATM_TD, - pub BestEffort: super::super::Foundation::BOOL, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for ATM_TRAFFIC_DESCRIPTOR_IE {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for ATM_TRAFFIC_DESCRIPTOR_IE { - fn clone(&self) -> Self { - *self - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for ATM_TRAFFIC_DESCRIPTOR_IE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ATM_TRAFFIC_DESCRIPTOR_IE").field("Forward", &self.Forward).field("Backward", &self.Backward).field("BestEffort", &self.BestEffort).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for ATM_TRAFFIC_DESCRIPTOR_IE { - type Abi = Self; -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for ATM_TRAFFIC_DESCRIPTOR_IE { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for ATM_TRAFFIC_DESCRIPTOR_IE {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for ATM_TRAFFIC_DESCRIPTOR_IE { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub const AF_BAN: u16 = 21u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ATM_TRANSIT_NETWORK_SELECTION_IE { - pub TypeOfNetworkId: u8, - pub NetworkIdPlan: u8, - pub NetworkIdLength: u8, - pub NetworkId: [u8; 1], -} -impl ::core::marker::Copy for ATM_TRANSIT_NETWORK_SELECTION_IE {} -impl ::core::clone::Clone for ATM_TRANSIT_NETWORK_SELECTION_IE { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for ATM_TRANSIT_NETWORK_SELECTION_IE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ATM_TRANSIT_NETWORK_SELECTION_IE").field("TypeOfNetworkId", &self.TypeOfNetworkId).field("NetworkIdPlan", &self.NetworkIdPlan).field("NetworkIdLength", &self.NetworkIdLength).field("NetworkId", &self.NetworkId).finish() - } -} -unsafe impl ::windows::core::Abi for ATM_TRANSIT_NETWORK_SELECTION_IE { - type Abi = Self; -} -impl ::core::cmp::PartialEq for ATM_TRANSIT_NETWORK_SELECTION_IE { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for ATM_TRANSIT_NETWORK_SELECTION_IE {} -impl ::core::default::Default for ATM_TRANSIT_NETWORK_SELECTION_IE { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn AcceptEx<'a, P0, P1>(slistensocket: P0, sacceptsocket: P1, lpoutputbuffer: *mut ::core::ffi::c_void, dwreceivedatalength: u32, dwlocaladdresslength: u32, dwremoteaddresslength: u32, lpdwbytesreceived: &mut u32, lpoverlapped: &mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn AcceptEx(slistensocket: SOCKET, sacceptsocket: SOCKET, lpoutputbuffer: *mut ::core::ffi::c_void, dwreceivedatalength: u32, dwlocaladdresslength: u32, dwremoteaddresslength: u32, lpdwbytesreceived: *mut u32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL; - } - AcceptEx(slistensocket.into(), sacceptsocket.into(), ::core::mem::transmute(lpoutputbuffer), dwreceivedatalength, dwlocaladdresslength, dwremoteaddresslength, ::core::mem::transmute(lpdwbytesreceived), ::core::mem::transmute(lpoverlapped)) -} +pub const AF_CCITT: u16 = 10u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BASE_PROTOCOL: u32 = 1u32; +pub const AF_CHAOS: u16 = 5u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BCOB_A: u32 = 1u32; +pub const AF_CLUSTER: u16 = 24u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BCOB_C: u32 = 3u32; +pub const AF_DATAKIT: u16 = 9u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BCOB_X: u32 = 16u32; +pub const AF_DECnet: u16 = 12u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BHLI_HighLayerProfile: u32 = 2u32; +pub const AF_DLI: u16 = 13u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BHLI_ISO: u32 = 0u32; +pub const AF_ECMA: u16 = 8u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BHLI_UserSpecific: u32 = 1u32; +pub const AF_FIREFOX: u16 = 19u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BHLI_VendorSpecificAppId: u32 = 3u32; +pub const AF_HYLINK: u16 = 15u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BIGENDIAN: u32 = 0u32; +pub const AF_HYPERV: u16 = 34u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BITS_PER_BYTE: u32 = 8u32; +pub const AF_ICLFXBM: u16 = 31u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_ELAPB: u32 = 8u32; +pub const AF_IMPLINK: u16 = 3u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_HDLC_ABM: u32 = 11u32; +pub const AF_IPX: u16 = 6u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_HDLC_ARM: u32 = 9u32; +pub const AF_IRDA: u16 = 26u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_HDLC_NRM: u32 = 10u32; +pub const AF_ISO: u16 = 7u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_ISO_1745: u32 = 1u32; +pub const AF_LAT: u16 = 14u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_ISO_7776: u32 = 17u32; +pub const AF_LINK: u16 = 33u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_LLC: u32 = 12u32; +pub const AF_MAX: u16 = 29u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_MODE_EXT: u32 = 128u32; +pub const AF_NETBIOS: u16 = 17u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_MODE_NORMAL: u32 = 64u32; +pub const AF_NETDES: u16 = 28u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_Q921: u32 = 2u32; +pub const AF_NS: u16 = 6u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_Q922: u32 = 14u32; +pub const AF_OSI: u16 = 7u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_USER_SPECIFIED: u32 = 16u32; +pub const AF_PUP: u16 = 4u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_X25L: u32 = 6u32; +pub const AF_SNA: u16 = 11u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_X25M: u32 = 7u32; +pub const AF_TCNMESSAGE: u16 = 30u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L2_X75: u32 = 13u32; +pub const AF_TCNPROCESS: u16 = 29u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_IPI_IP: u32 = 204u32; +pub const AF_UNIX: u16 = 1u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_IPI_SNAP: u32 = 128u32; +pub const AF_UNKNOWN1: u16 = 20u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_ISO_8208: u32 = 7u32; +pub const AF_VOICEVIEW: u16 = 18u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_ISO_TR9577: u32 = 11u32; +pub const AI_ADDRCONFIG: u32 = 1024u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_MODE_EXT: u32 = 128u32; +pub const AI_ALL: u32 = 256u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_MODE_NORMAL: u32 = 64u32; +pub const AI_BYPASS_DNS_CACHE: u32 = 64u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_PACKET_1024: u32 = 10u32; +pub const AI_CANONNAME: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_PACKET_128: u32 = 7u32; +pub const AI_DISABLE_IDN_ENCODING: u32 = 524288u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_PACKET_16: u32 = 4u32; +pub const AI_DNS_ONLY: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_PACKET_2048: u32 = 11u32; +pub const AI_DNS_RESPONSE_HOSTFILE: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_PACKET_256: u32 = 8u32; +pub const AI_DNS_RESPONSE_SECURE: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_PACKET_32: u32 = 5u32; +pub const AI_DNS_SERVER_TYPE_DOH: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_PACKET_4096: u32 = 12u32; +pub const AI_DNS_SERVER_TYPE_UDP: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_PACKET_512: u32 = 9u32; +pub const AI_DNS_SERVER_UDP_FALLBACK: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_PACKET_64: u32 = 6u32; +pub const AI_EXCLUSIVE_CUSTOM_SERVERS: u32 = 2097152u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_SIO_8473: u32 = 9u32; +pub const AI_EXTENDED: u32 = 2147483648u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_T70: u32 = 10u32; +pub const AI_FILESERVER: u32 = 262144u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_USER_SPECIFIED: u32 = 16u32; +pub const AI_FORCE_CLEAR_TEXT: u32 = 32u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_X223: u32 = 8u32; +pub const AI_FQDN: u32 = 131072u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BLLI_L3_X25: u32 = 6u32; +pub const AI_NON_AUTHORITATIVE: u32 = 16384u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const BYTE_ORDER: u32 = 1234u32; +pub const AI_NUMERICHOST: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_AAL_PARAMETERS_UNSUPPORTED: u32 = 93u32; +pub const AI_NUMERICSERV: u32 = 8u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_ACCESS_INFORMAION_DISCARDED: u32 = 43u32; +pub const AI_PASSIVE: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_BEARER_CAPABILITY_UNAUTHORIZED: u32 = 57u32; +pub const AI_REQUIRE_SECURE: u32 = 536870912u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_BEARER_CAPABILITY_UNAVAILABLE: u32 = 58u32; +pub const AI_RESOLUTION_HANDLE: u32 = 1073741824u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_BEARER_CAPABILITY_UNIMPLEMENTED: u32 = 65u32; +pub const AI_RETURN_PREFERRED_NAMES: u32 = 65536u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_CALL_REJECTED: u32 = 21u32; +pub const AI_RETURN_RESPONSE_FLAGS: u32 = 268435456u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_CHANNEL_NONEXISTENT: u32 = 82u32; +pub const AI_RETURN_TTL: u32 = 128u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_COND_PERMANENT: u32 = 1u32; +pub const AI_SECURE: u32 = 32768u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_COND_TRANSIENT: u32 = 2u32; +pub const AI_SECURE_WITH_FALLBACK: u32 = 1048576u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_COND_UNKNOWN: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_DESTINATION_OUT_OF_ORDER: u32 = 27u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_INCOMPATIBLE_DESTINATION: u32 = 88u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_INCORRECT_MESSAGE_LENGTH: u32 = 104u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_INVALID_CALL_REFERENCE: u32 = 81u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_INVALID_ENDPOINT_REFERENCE: u32 = 89u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_INVALID_IE_CONTENTS: u32 = 100u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_INVALID_NUMBER_FORMAT: u32 = 28u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_INVALID_STATE_FOR_MESSAGE: u32 = 101u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_INVALID_TRANSIT_NETWORK_SELECTION: u32 = 91u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_LOC_BEYOND_INTERWORKING: u32 = 10u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_LOC_INTERNATIONAL_NETWORK: u32 = 7u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_LOC_PRIVATE_LOCAL: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_LOC_PRIVATE_REMOTE: u32 = 5u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_LOC_PUBLIC_LOCAL: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_LOC_PUBLIC_REMOTE: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_LOC_TRANSIT_NETWORK: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_LOC_USER: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_MANDATORY_IE_MISSING: u32 = 96u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_NA_ABNORMAL: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_NA_NORMAL: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_NETWORK_OUT_OF_ORDER: u32 = 38u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_NORMAL_CALL_CLEARING: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_NORMAL_UNSPECIFIED: u32 = 31u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_NO_ROUTE_TO_DESTINATION: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_NO_ROUTE_TO_TRANSIT_NETWORK: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_NO_USER_RESPONDING: u32 = 18u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_NO_VPI_VCI_AVAILABLE: u32 = 45u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_NUMBER_CHANGED: u32 = 22u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_OPTION_UNAVAILABLE: u32 = 63u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_PROTOCOL_ERROR: u32 = 111u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_PU_PROVIDER: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_PU_USER: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_QOS_UNAVAILABLE: u32 = 49u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_REASON_IE_INSUFFICIENT: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_REASON_IE_MISSING: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_REASON_USER: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_RECOVERY_ON_TIMEOUT: u32 = 102u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_RESOURCE_UNAVAILABLE: u32 = 47u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_STATUS_ENQUIRY_RESPONSE: u32 = 30u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_TEMPORARY_FAILURE: u32 = 41u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_TOO_MANY_PENDING_ADD_PARTY: u32 = 92u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_UNALLOCATED_NUMBER: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_UNIMPLEMENTED_IE: u32 = 99u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_UNIMPLEMENTED_MESSAGE_TYPE: u32 = 97u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_UNSUPPORTED_TRAFFIC_PARAMETERS: u32 = 73u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_USER_BUSY: u32 = 17u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_USER_CELL_RATE_UNAVAILABLE: u32 = 51u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_USER_REJECTS_CLIR: u32 = 23u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_VPI_VCI_UNACCEPTABLE: u32 = 10u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CAUSE_VPI_VCI_UNAVAILABLE: u32 = 35u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CF_ACCEPT: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CF_DEFER: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CF_REJECT: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CLIP_NOT: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CLIP_SUS: u32 = 32u32; +pub const AI_V4MAPPED: u32 = 2048u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct CONTROL_CHANNEL_TRIGGER_STATUS(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CONTROL_CHANNEL_TRIGGER_STATUS_INVALID: CONTROL_CHANNEL_TRIGGER_STATUS = CONTROL_CHANNEL_TRIGGER_STATUS(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CONTROL_CHANNEL_TRIGGER_STATUS_SOFTWARE_SLOT_ALLOCATED: CONTROL_CHANNEL_TRIGGER_STATUS = CONTROL_CHANNEL_TRIGGER_STATUS(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CONTROL_CHANNEL_TRIGGER_STATUS_HARDWARE_SLOT_ALLOCATED: CONTROL_CHANNEL_TRIGGER_STATUS = CONTROL_CHANNEL_TRIGGER_STATUS(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CONTROL_CHANNEL_TRIGGER_STATUS_POLICY_ERROR: CONTROL_CHANNEL_TRIGGER_STATUS = CONTROL_CHANNEL_TRIGGER_STATUS(3i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CONTROL_CHANNEL_TRIGGER_STATUS_SYSTEM_ERROR: CONTROL_CHANNEL_TRIGGER_STATUS = CONTROL_CHANNEL_TRIGGER_STATUS(4i32); +pub struct ARP_HARDWARE_TYPE(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CONTROL_CHANNEL_TRIGGER_STATUS_TRANSPORT_DISCONNECTED: CONTROL_CHANNEL_TRIGGER_STATUS = CONTROL_CHANNEL_TRIGGER_STATUS(5i32); +pub const ARP_HW_ENET: ARP_HARDWARE_TYPE = ARP_HARDWARE_TYPE(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const CONTROL_CHANNEL_TRIGGER_STATUS_SERVICE_UNAVAILABLE: CONTROL_CHANNEL_TRIGGER_STATUS = CONTROL_CHANNEL_TRIGGER_STATUS(6i32); -impl ::core::marker::Copy for CONTROL_CHANNEL_TRIGGER_STATUS {} -impl ::core::clone::Clone for CONTROL_CHANNEL_TRIGGER_STATUS { +pub const ARP_HW_802: ARP_HARDWARE_TYPE = ARP_HARDWARE_TYPE(6i32); +impl ::core::marker::Copy for ARP_HARDWARE_TYPE {} +impl ::core::clone::Clone for ARP_HARDWARE_TYPE { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for CONTROL_CHANNEL_TRIGGER_STATUS { +impl ::core::default::Default for ARP_HARDWARE_TYPE { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for CONTROL_CHANNEL_TRIGGER_STATUS { +unsafe impl ::windows::core::Abi for ARP_HARDWARE_TYPE { type Abi = Self; } -impl ::core::fmt::Debug for CONTROL_CHANNEL_TRIGGER_STATUS { +impl ::core::fmt::Debug for ARP_HARDWARE_TYPE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("CONTROL_CHANNEL_TRIGGER_STATUS").field(&self.0).finish() + f.debug_tuple("ARP_HARDWARE_TYPE").field(&self.0).finish() } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct CSADDR_INFO { - pub LocalAddr: SOCKET_ADDRESS, - pub RemoteAddr: SOCKET_ADDRESS, - pub iSocketType: i32, - pub iProtocol: i32, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ARP_HEADER { + pub HardwareAddressSpace: u16, + pub ProtocolAddressSpace: u16, + pub HardwareAddressLength: u8, + pub ProtocolAddressLength: u8, + pub Opcode: u16, + pub SenderHardwareAddress: [u8; 1], } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for CSADDR_INFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for CSADDR_INFO { +impl ::core::marker::Copy for ARP_HEADER {} +impl ::core::clone::Clone for ARP_HEADER { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for CSADDR_INFO { +impl ::core::fmt::Debug for ARP_HEADER { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("CSADDR_INFO").field("LocalAddr", &self.LocalAddr).field("RemoteAddr", &self.RemoteAddr).field("iSocketType", &self.iSocketType).field("iProtocol", &self.iProtocol).finish() + f.debug_struct("ARP_HEADER").field("HardwareAddressSpace", &self.HardwareAddressSpace).field("ProtocolAddressSpace", &self.ProtocolAddressSpace).field("HardwareAddressLength", &self.HardwareAddressLength).field("ProtocolAddressLength", &self.ProtocolAddressLength).field("Opcode", &self.Opcode).field("SenderHardwareAddress", &self.SenderHardwareAddress).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for CSADDR_INFO { +unsafe impl ::windows::core::Abi for ARP_HEADER { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for CSADDR_INFO { +impl ::core::cmp::PartialEq for ARP_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for CSADDR_INFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for CSADDR_INFO { +impl ::core::cmp::Eq for ARP_HEADER {} +impl ::core::default::Default for ARP_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const DE_REUSE_SOCKET: u32 = 2u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct ARP_OPCODE(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const DL_ADDRESS_LENGTH_MAXIMUM: u32 = 32u32; -#[repr(C)] +pub const ARP_REQUEST: ARP_OPCODE = ARP_OPCODE(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union DL_EI48 { - pub Byte: [u8; 3], -} -impl ::core::marker::Copy for DL_EI48 {} -impl ::core::clone::Clone for DL_EI48 { +pub const ARP_RESPONSE: ARP_OPCODE = ARP_OPCODE(2i32); +impl ::core::marker::Copy for ARP_OPCODE {} +impl ::core::clone::Clone for ARP_OPCODE { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for DL_EI48 { - type Abi = Self; -} -impl ::core::cmp::PartialEq for DL_EI48 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::default::Default for ARP_OPCODE { + fn default() -> Self { + Self(0) } } -impl ::core::cmp::Eq for DL_EI48 {} -impl ::core::default::Default for DL_EI48 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +unsafe impl ::windows::core::Abi for ARP_OPCODE { + type Abi = Self; +} +impl ::core::fmt::Debug for ARP_OPCODE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("ARP_OPCODE").field(&self.0).finish() } } +pub const ASSOCIATE_NAMERES_CONTEXT: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x59a38b67_d4fe_46e1_ba3c_87ea74ca3049); #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union DL_EI64 { - pub Byte: [u8; 5], +pub struct ASSOCIATE_NAMERES_CONTEXT_INPUT { + pub TransportSettingId: TRANSPORT_SETTING_ID, + pub Handle: u64, } -impl ::core::marker::Copy for DL_EI64 {} -impl ::core::clone::Clone for DL_EI64 { +impl ::core::marker::Copy for ASSOCIATE_NAMERES_CONTEXT_INPUT {} +impl ::core::clone::Clone for ASSOCIATE_NAMERES_CONTEXT_INPUT { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for DL_EI64 { +impl ::core::fmt::Debug for ASSOCIATE_NAMERES_CONTEXT_INPUT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ASSOCIATE_NAMERES_CONTEXT_INPUT").field("TransportSettingId", &self.TransportSettingId).field("Handle", &self.Handle).finish() + } +} +unsafe impl ::windows::core::Abi for ASSOCIATE_NAMERES_CONTEXT_INPUT { type Abi = Self; } -impl ::core::cmp::PartialEq for DL_EI64 { +impl ::core::cmp::PartialEq for ASSOCIATE_NAMERES_CONTEXT_INPUT { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for DL_EI64 {} -impl ::core::default::Default for DL_EI64 { +impl ::core::cmp::Eq for ASSOCIATE_NAMERES_CONTEXT_INPUT {} +impl ::core::default::Default for ASSOCIATE_NAMERES_CONTEXT_INPUT { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ATMPROTO_AAL1: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ATMPROTO_AAL2: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ATMPROTO_AAL34: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ATMPROTO_AAL5: u32 = 5u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ATMPROTO_AALUSER: u32 = 0u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union DL_EUI48 { - pub Byte: [u8; 6], - pub Anonymous: DL_EUI48_0, +pub struct ATM_ADDRESS { + pub AddressType: u32, + pub NumofDigits: u32, + pub Addr: [u8; 20], } -impl ::core::marker::Copy for DL_EUI48 {} -impl ::core::clone::Clone for DL_EUI48 { +impl ::core::marker::Copy for ATM_ADDRESS {} +impl ::core::clone::Clone for ATM_ADDRESS { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for DL_EUI48 { +impl ::core::fmt::Debug for ATM_ADDRESS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ATM_ADDRESS").field("AddressType", &self.AddressType).field("NumofDigits", &self.NumofDigits).field("Addr", &self.Addr).finish() + } +} +unsafe impl ::windows::core::Abi for ATM_ADDRESS { type Abi = Self; } -impl ::core::cmp::PartialEq for DL_EUI48 { +impl ::core::cmp::PartialEq for ATM_ADDRESS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for DL_EUI48 {} -impl ::core::default::Default for DL_EUI48 { +impl ::core::cmp::Eq for ATM_ADDRESS {} +impl ::core::default::Default for ATM_ADDRESS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ATM_ADDR_SIZE: u32 = 20u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ATM_AESA: u32 = 2u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct DL_EUI48_0 { - pub Oui: DL_OUI, - pub Ei48: DL_EI48, +pub struct ATM_BHLI { + pub HighLayerInfoType: u32, + pub HighLayerInfoLength: u32, + pub HighLayerInfo: [u8; 8], } -impl ::core::marker::Copy for DL_EUI48_0 {} -impl ::core::clone::Clone for DL_EUI48_0 { +impl ::core::marker::Copy for ATM_BHLI {} +impl ::core::clone::Clone for ATM_BHLI { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for DL_EUI48_0 { +impl ::core::fmt::Debug for ATM_BHLI { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ATM_BHLI").field("HighLayerInfoType", &self.HighLayerInfoType).field("HighLayerInfoLength", &self.HighLayerInfoLength).field("HighLayerInfo", &self.HighLayerInfo).finish() + } +} +unsafe impl ::windows::core::Abi for ATM_BHLI { type Abi = Self; } -impl ::core::cmp::PartialEq for DL_EUI48_0 { +impl ::core::cmp::PartialEq for ATM_BHLI { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for DL_EUI48_0 {} -impl ::core::default::Default for DL_EUI48_0 { +impl ::core::cmp::Eq for ATM_BHLI {} +impl ::core::default::Default for ATM_BHLI { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union DL_EUI64 { - pub Byte: [u8; 8], - pub Value: u64, - pub Anonymous: DL_EUI64_0, +pub struct ATM_BLLI { + pub Layer2Protocol: u32, + pub Layer2UserSpecifiedProtocol: u32, + pub Layer3Protocol: u32, + pub Layer3UserSpecifiedProtocol: u32, + pub Layer3IPI: u32, + pub SnapID: [u8; 5], } -impl ::core::marker::Copy for DL_EUI64 {} -impl ::core::clone::Clone for DL_EUI64 { +impl ::core::marker::Copy for ATM_BLLI {} +impl ::core::clone::Clone for ATM_BLLI { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for DL_EUI64 { +impl ::core::fmt::Debug for ATM_BLLI { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ATM_BLLI").field("Layer2Protocol", &self.Layer2Protocol).field("Layer2UserSpecifiedProtocol", &self.Layer2UserSpecifiedProtocol).field("Layer3Protocol", &self.Layer3Protocol).field("Layer3UserSpecifiedProtocol", &self.Layer3UserSpecifiedProtocol).field("Layer3IPI", &self.Layer3IPI).field("SnapID", &self.SnapID).finish() + } +} +unsafe impl ::windows::core::Abi for ATM_BLLI { type Abi = Self; } -impl ::core::cmp::PartialEq for DL_EUI64 { +impl ::core::cmp::PartialEq for ATM_BLLI { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for DL_EUI64 {} -impl ::core::default::Default for DL_EUI64 { +impl ::core::cmp::Eq for ATM_BLLI {} +impl ::core::default::Default for ATM_BLLI { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct DL_EUI64_0 { - pub Oui: DL_OUI, - pub Anonymous: DL_EUI64_0_0, +pub struct ATM_BLLI_IE { + pub Layer2Protocol: u32, + pub Layer2Mode: u8, + pub Layer2WindowSize: u8, + pub Layer2UserSpecifiedProtocol: u32, + pub Layer3Protocol: u32, + pub Layer3Mode: u8, + pub Layer3DefaultPacketSize: u8, + pub Layer3PacketWindowSize: u8, + pub Layer3UserSpecifiedProtocol: u32, + pub Layer3IPI: u32, + pub SnapID: [u8; 5], } -impl ::core::marker::Copy for DL_EUI64_0 {} -impl ::core::clone::Clone for DL_EUI64_0 { +impl ::core::marker::Copy for ATM_BLLI_IE {} +impl ::core::clone::Clone for ATM_BLLI_IE { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for DL_EUI64_0 { +impl ::core::fmt::Debug for ATM_BLLI_IE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ATM_BLLI_IE") + .field("Layer2Protocol", &self.Layer2Protocol) + .field("Layer2Mode", &self.Layer2Mode) + .field("Layer2WindowSize", &self.Layer2WindowSize) + .field("Layer2UserSpecifiedProtocol", &self.Layer2UserSpecifiedProtocol) + .field("Layer3Protocol", &self.Layer3Protocol) + .field("Layer3Mode", &self.Layer3Mode) + .field("Layer3DefaultPacketSize", &self.Layer3DefaultPacketSize) + .field("Layer3PacketWindowSize", &self.Layer3PacketWindowSize) + .field("Layer3UserSpecifiedProtocol", &self.Layer3UserSpecifiedProtocol) + .field("Layer3IPI", &self.Layer3IPI) + .field("SnapID", &self.SnapID) + .finish() + } +} +unsafe impl ::windows::core::Abi for ATM_BLLI_IE { type Abi = Self; } -impl ::core::cmp::PartialEq for DL_EUI64_0 { +impl ::core::cmp::PartialEq for ATM_BLLI_IE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for DL_EUI64_0 {} -impl ::core::default::Default for DL_EUI64_0 { +impl ::core::cmp::Eq for ATM_BLLI_IE {} +impl ::core::default::Default for ATM_BLLI_IE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union DL_EUI64_0_0 { - pub Ei64: DL_EI64, - pub Anonymous: DL_EUI64_0_0_0, +pub struct ATM_BROADBAND_BEARER_CAPABILITY_IE { + pub BearerClass: u8, + pub TrafficType: u8, + pub TimingRequirements: u8, + pub ClippingSusceptability: u8, + pub UserPlaneConnectionConfig: u8, } -impl ::core::marker::Copy for DL_EUI64_0_0 {} -impl ::core::clone::Clone for DL_EUI64_0_0 { +impl ::core::marker::Copy for ATM_BROADBAND_BEARER_CAPABILITY_IE {} +impl ::core::clone::Clone for ATM_BROADBAND_BEARER_CAPABILITY_IE { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for DL_EUI64_0_0 { +impl ::core::fmt::Debug for ATM_BROADBAND_BEARER_CAPABILITY_IE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ATM_BROADBAND_BEARER_CAPABILITY_IE").field("BearerClass", &self.BearerClass).field("TrafficType", &self.TrafficType).field("TimingRequirements", &self.TimingRequirements).field("ClippingSusceptability", &self.ClippingSusceptability).field("UserPlaneConnectionConfig", &self.UserPlaneConnectionConfig).finish() + } +} +unsafe impl ::windows::core::Abi for ATM_BROADBAND_BEARER_CAPABILITY_IE { type Abi = Self; } -impl ::core::cmp::PartialEq for DL_EUI64_0_0 { +impl ::core::cmp::PartialEq for ATM_BROADBAND_BEARER_CAPABILITY_IE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for DL_EUI64_0_0 {} -impl ::core::default::Default for DL_EUI64_0_0 { +impl ::core::cmp::Eq for ATM_BROADBAND_BEARER_CAPABILITY_IE {} +impl ::core::default::Default for ATM_BROADBAND_BEARER_CAPABILITY_IE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct DL_EUI64_0_0_0 { - pub Type: u8, - pub Tse: u8, - pub Ei48: DL_EI48, +pub struct ATM_CALLING_PARTY_NUMBER_IE { + pub ATM_Number: ATM_ADDRESS, + pub Presentation_Indication: u8, + pub Screening_Indicator: u8, } -impl ::core::marker::Copy for DL_EUI64_0_0_0 {} -impl ::core::clone::Clone for DL_EUI64_0_0_0 { +impl ::core::marker::Copy for ATM_CALLING_PARTY_NUMBER_IE {} +impl ::core::clone::Clone for ATM_CALLING_PARTY_NUMBER_IE { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for DL_EUI64_0_0_0 { +impl ::core::fmt::Debug for ATM_CALLING_PARTY_NUMBER_IE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ATM_CALLING_PARTY_NUMBER_IE").field("ATM_Number", &self.ATM_Number).field("Presentation_Indication", &self.Presentation_Indication).field("Screening_Indicator", &self.Screening_Indicator).finish() + } +} +unsafe impl ::windows::core::Abi for ATM_CALLING_PARTY_NUMBER_IE { type Abi = Self; } -impl ::core::cmp::PartialEq for DL_EUI64_0_0_0 { +impl ::core::cmp::PartialEq for ATM_CALLING_PARTY_NUMBER_IE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for DL_EUI64_0_0_0 {} -impl ::core::default::Default for DL_EUI64_0_0_0 { +impl ::core::cmp::Eq for ATM_CALLING_PARTY_NUMBER_IE {} +impl ::core::default::Default for ATM_CALLING_PARTY_NUMBER_IE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const DL_HEADER_LENGTH_MAXIMUM: u32 = 64u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union DL_OUI { - pub Byte: [u8; 3], - pub Anonymous: DL_OUI_0, +pub struct ATM_CAUSE_IE { + pub Location: u8, + pub Cause: u8, + pub DiagnosticsLength: u8, + pub Diagnostics: [u8; 4], } -impl ::core::marker::Copy for DL_OUI {} -impl ::core::clone::Clone for DL_OUI { +impl ::core::marker::Copy for ATM_CAUSE_IE {} +impl ::core::clone::Clone for ATM_CAUSE_IE { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for DL_OUI { +impl ::core::fmt::Debug for ATM_CAUSE_IE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ATM_CAUSE_IE").field("Location", &self.Location).field("Cause", &self.Cause).field("DiagnosticsLength", &self.DiagnosticsLength).field("Diagnostics", &self.Diagnostics).finish() + } +} +unsafe impl ::windows::core::Abi for ATM_CAUSE_IE { type Abi = Self; } -impl ::core::cmp::PartialEq for DL_OUI { +impl ::core::cmp::PartialEq for ATM_CAUSE_IE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for DL_OUI {} -impl ::core::default::Default for DL_OUI { +impl ::core::cmp::Eq for ATM_CAUSE_IE {} +impl ::core::default::Default for ATM_CAUSE_IE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct DL_OUI_0 { - pub _bitfield: u8, +pub struct ATM_CONNECTION_ID { + pub DeviceNumber: u32, + pub VPI: u32, + pub VCI: u32, } -impl ::core::marker::Copy for DL_OUI_0 {} -impl ::core::clone::Clone for DL_OUI_0 { +impl ::core::marker::Copy for ATM_CONNECTION_ID {} +impl ::core::clone::Clone for ATM_CONNECTION_ID { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for DL_OUI_0 { +impl ::core::fmt::Debug for ATM_CONNECTION_ID { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("DL_OUI_0").field("_bitfield", &self._bitfield).finish() + f.debug_struct("ATM_CONNECTION_ID").field("DeviceNumber", &self.DeviceNumber).field("VPI", &self.VPI).field("VCI", &self.VCI).finish() } } -unsafe impl ::windows::core::Abi for DL_OUI_0 { +unsafe impl ::windows::core::Abi for ATM_CONNECTION_ID { type Abi = Self; } -impl ::core::cmp::PartialEq for DL_OUI_0 { +impl ::core::cmp::PartialEq for ATM_CONNECTION_ID { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for DL_OUI_0 {} -impl ::core::default::Default for DL_OUI_0 { +impl ::core::cmp::Eq for ATM_CONNECTION_ID {} +impl ::core::default::Default for ATM_CONNECTION_ID { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct DL_TEREDO_ADDRESS { - pub Reserved: [u8; 6], - pub Anonymous: DL_TEREDO_ADDRESS_0, +pub const ATM_E164: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ATM_NSAP: u32 = 2u32; +#[repr(C, packed(4))] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ATM_PVC_PARAMS { + pub PvcConnectionId: ATM_CONNECTION_ID, + pub PvcQos: QOS, } -impl ::core::marker::Copy for DL_TEREDO_ADDRESS {} -impl ::core::clone::Clone for DL_TEREDO_ADDRESS { +impl ::core::marker::Copy for ATM_PVC_PARAMS {} +impl ::core::clone::Clone for ATM_PVC_PARAMS { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for DL_TEREDO_ADDRESS { +unsafe impl ::windows::core::Abi for ATM_PVC_PARAMS { type Abi = Self; } -impl ::core::cmp::PartialEq for DL_TEREDO_ADDRESS { +impl ::core::cmp::PartialEq for ATM_PVC_PARAMS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for DL_TEREDO_ADDRESS {} -impl ::core::default::Default for DL_TEREDO_ADDRESS { +impl ::core::cmp::Eq for ATM_PVC_PARAMS {} +impl ::core::default::Default for ATM_PVC_PARAMS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C, packed(1))] +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union DL_TEREDO_ADDRESS_0 { - pub Eui64: DL_EUI64, - pub Anonymous: DL_TEREDO_ADDRESS_0_0, +pub struct ATM_QOS_CLASS_IE { + pub QOSClassForward: u8, + pub QOSClassBackward: u8, } -impl ::core::marker::Copy for DL_TEREDO_ADDRESS_0 {} -impl ::core::clone::Clone for DL_TEREDO_ADDRESS_0 { +impl ::core::marker::Copy for ATM_QOS_CLASS_IE {} +impl ::core::clone::Clone for ATM_QOS_CLASS_IE { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for DL_TEREDO_ADDRESS_0 { - type Abi = Self; -} -impl ::core::cmp::PartialEq for DL_TEREDO_ADDRESS_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for DL_TEREDO_ADDRESS_0 {} -impl ::core::default::Default for DL_TEREDO_ADDRESS_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C, packed(1))] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct DL_TEREDO_ADDRESS_0_0 { - pub Flags: u16, - pub MappedPort: u16, - pub MappedAddress: IN_ADDR, -} -impl ::core::marker::Copy for DL_TEREDO_ADDRESS_0_0 {} -impl ::core::clone::Clone for DL_TEREDO_ADDRESS_0_0 { - fn clone(&self) -> Self { - *self +impl ::core::fmt::Debug for ATM_QOS_CLASS_IE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ATM_QOS_CLASS_IE").field("QOSClassForward", &self.QOSClassForward).field("QOSClassBackward", &self.QOSClassBackward).finish() } } -unsafe impl ::windows::core::Abi for DL_TEREDO_ADDRESS_0_0 { +unsafe impl ::windows::core::Abi for ATM_QOS_CLASS_IE { type Abi = Self; } -impl ::core::cmp::PartialEq for DL_TEREDO_ADDRESS_0_0 { +impl ::core::cmp::PartialEq for ATM_QOS_CLASS_IE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for DL_TEREDO_ADDRESS_0_0 {} -impl ::core::default::Default for DL_TEREDO_ADDRESS_0_0 { +impl ::core::cmp::Eq for ATM_QOS_CLASS_IE {} +impl ::core::default::Default for ATM_QOS_CLASS_IE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct DL_TEREDO_ADDRESS_PRV { - pub Reserved: [u8; 6], - pub Anonymous: DL_TEREDO_ADDRESS_PRV_0, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ATM_TD { + pub PeakCellRate_CLP0: u32, + pub PeakCellRate_CLP01: u32, + pub SustainableCellRate_CLP0: u32, + pub SustainableCellRate_CLP01: u32, + pub MaxBurstSize_CLP0: u32, + pub MaxBurstSize_CLP01: u32, + pub Tagging: super::super::Foundation::BOOL, } -impl ::core::marker::Copy for DL_TEREDO_ADDRESS_PRV {} -impl ::core::clone::Clone for DL_TEREDO_ADDRESS_PRV { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ATM_TD {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ATM_TD { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for DL_TEREDO_ADDRESS_PRV { - type Abi = Self; -} -impl ::core::cmp::PartialEq for DL_TEREDO_ADDRESS_PRV { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for DL_TEREDO_ADDRESS_PRV {} -impl ::core::default::Default for DL_TEREDO_ADDRESS_PRV { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C, packed(1))] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union DL_TEREDO_ADDRESS_PRV_0 { - pub Eui64: DL_EUI64, - pub Anonymous: DL_TEREDO_ADDRESS_PRV_0_0, -} -impl ::core::marker::Copy for DL_TEREDO_ADDRESS_PRV_0 {} -impl ::core::clone::Clone for DL_TEREDO_ADDRESS_PRV_0 { - fn clone(&self) -> Self { - *self +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for ATM_TD { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ATM_TD").field("PeakCellRate_CLP0", &self.PeakCellRate_CLP0).field("PeakCellRate_CLP01", &self.PeakCellRate_CLP01).field("SustainableCellRate_CLP0", &self.SustainableCellRate_CLP0).field("SustainableCellRate_CLP01", &self.SustainableCellRate_CLP01).field("MaxBurstSize_CLP0", &self.MaxBurstSize_CLP0).field("MaxBurstSize_CLP01", &self.MaxBurstSize_CLP01).field("Tagging", &self.Tagging).finish() } } -unsafe impl ::windows::core::Abi for DL_TEREDO_ADDRESS_PRV_0 { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for ATM_TD { type Abi = Self; } -impl ::core::cmp::PartialEq for DL_TEREDO_ADDRESS_PRV_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for ATM_TD { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for DL_TEREDO_ADDRESS_PRV_0 {} -impl ::core::default::Default for DL_TEREDO_ADDRESS_PRV_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for ATM_TD {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for ATM_TD { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C, packed(1))] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct DL_TEREDO_ADDRESS_PRV_0_0 { - pub Flags: u16, - pub MappedPort: u16, - pub MappedAddress: IN_ADDR, - pub LocalAddress: IN_ADDR, - pub InterfaceIndex: u32, - pub LocalPort: u16, - pub DlDestination: DL_EUI48, +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ATM_TRAFFIC_DESCRIPTOR_IE { + pub Forward: ATM_TD, + pub Backward: ATM_TD, + pub BestEffort: super::super::Foundation::BOOL, } -impl ::core::marker::Copy for DL_TEREDO_ADDRESS_PRV_0_0 {} -impl ::core::clone::Clone for DL_TEREDO_ADDRESS_PRV_0_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ATM_TRAFFIC_DESCRIPTOR_IE {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ATM_TRAFFIC_DESCRIPTOR_IE { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for DL_TEREDO_ADDRESS_PRV_0_0 { - type Abi = Self; -} -impl ::core::cmp::PartialEq for DL_TEREDO_ADDRESS_PRV_0_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for DL_TEREDO_ADDRESS_PRV_0_0 {} -impl ::core::default::Default for DL_TEREDO_ADDRESS_PRV_0_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Kernel\"`*"] -#[cfg(feature = "Win32_System_Kernel")] -pub struct DL_TUNNEL_ADDRESS { - pub CompartmentId: super::super::System::Kernel::COMPARTMENT_ID, - pub ScopeId: SCOPE_ID, - pub IpAddress: [u8; 1], -} -#[cfg(feature = "Win32_System_Kernel")] -impl ::core::marker::Copy for DL_TUNNEL_ADDRESS {} -#[cfg(feature = "Win32_System_Kernel")] -impl ::core::clone::Clone for DL_TUNNEL_ADDRESS { - fn clone(&self) -> Self { - *self +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for ATM_TRAFFIC_DESCRIPTOR_IE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ATM_TRAFFIC_DESCRIPTOR_IE").field("Forward", &self.Forward).field("Backward", &self.Backward).field("BestEffort", &self.BestEffort).finish() } } -#[cfg(feature = "Win32_System_Kernel")] -unsafe impl ::windows::core::Abi for DL_TUNNEL_ADDRESS { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for ATM_TRAFFIC_DESCRIPTOR_IE { type Abi = Self; } -#[cfg(feature = "Win32_System_Kernel")] -impl ::core::cmp::PartialEq for DL_TUNNEL_ADDRESS { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for ATM_TRAFFIC_DESCRIPTOR_IE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_System_Kernel")] -impl ::core::cmp::Eq for DL_TUNNEL_ADDRESS {} -#[cfg(feature = "Win32_System_Kernel")] -impl ::core::default::Default for DL_TUNNEL_ADDRESS { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for ATM_TRAFFIC_DESCRIPTOR_IE {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for ATM_TRAFFIC_DESCRIPTOR_IE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ETHERNET_HEADER { - pub Destination: DL_EUI48, - pub Source: DL_EUI48, - pub Anonymous: ETHERNET_HEADER_0, +pub struct ATM_TRANSIT_NETWORK_SELECTION_IE { + pub TypeOfNetworkId: u8, + pub NetworkIdPlan: u8, + pub NetworkIdLength: u8, + pub NetworkId: [u8; 1], } -impl ::core::marker::Copy for ETHERNET_HEADER {} -impl ::core::clone::Clone for ETHERNET_HEADER { +impl ::core::marker::Copy for ATM_TRANSIT_NETWORK_SELECTION_IE {} +impl ::core::clone::Clone for ATM_TRANSIT_NETWORK_SELECTION_IE { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for ETHERNET_HEADER { - type Abi = Self; -} -impl ::core::cmp::PartialEq for ETHERNET_HEADER { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for ETHERNET_HEADER {} -impl ::core::default::Default for ETHERNET_HEADER { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union ETHERNET_HEADER_0 { - pub Type: u16, - pub Length: u16, -} -impl ::core::marker::Copy for ETHERNET_HEADER_0 {} -impl ::core::clone::Clone for ETHERNET_HEADER_0 { - fn clone(&self) -> Self { - *self +impl ::core::fmt::Debug for ATM_TRANSIT_NETWORK_SELECTION_IE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ATM_TRANSIT_NETWORK_SELECTION_IE").field("TypeOfNetworkId", &self.TypeOfNetworkId).field("NetworkIdPlan", &self.NetworkIdPlan).field("NetworkIdLength", &self.NetworkIdLength).field("NetworkId", &self.NetworkId).finish() } } -unsafe impl ::windows::core::Abi for ETHERNET_HEADER_0 { +unsafe impl ::windows::core::Abi for ATM_TRANSIT_NETWORK_SELECTION_IE { type Abi = Self; } -impl ::core::cmp::PartialEq for ETHERNET_HEADER_0 { +impl ::core::cmp::PartialEq for ATM_TRANSIT_NETWORK_SELECTION_IE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ETHERNET_HEADER_0 {} -impl ::core::default::Default for ETHERNET_HEADER_0 { +impl ::core::cmp::Eq for ATM_TRANSIT_NETWORK_SELECTION_IE {} +impl ::core::default::Default for ATM_TRANSIT_NETWORK_SELECTION_IE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn AcceptEx<'a, P0, P1>(slistensocket: P0, sacceptsocket: P1, lpoutputbuffer: *mut ::core::ffi::c_void, dwreceivedatalength: u32, dwlocaladdresslength: u32, dwremoteaddresslength: u32, lpdwbytesreceived: &mut u32, lpoverlapped: &mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn AcceptEx(slistensocket: SOCKET, sacceptsocket: SOCKET, lpoutputbuffer: *mut ::core::ffi::c_void, dwreceivedatalength: u32, dwlocaladdresslength: u32, dwremoteaddresslength: u32, lpdwbytesreceived: *mut u32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL; + } + AcceptEx(slistensocket.into(), sacceptsocket.into(), ::core::mem::transmute(lpoutputbuffer), dwreceivedatalength, dwlocaladdresslength, dwremoteaddresslength, ::core::mem::transmute(lpdwbytesreceived), ::core::mem::transmute(lpoverlapped)) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ETHERNET_TYPE_802_1AD: u32 = 34984u32; +pub const BASE_PROTOCOL: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ETHERNET_TYPE_802_1Q: u32 = 33024u32; +pub const BCOB_A: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ETHERNET_TYPE_ARP: u32 = 2054u32; +pub const BCOB_C: u32 = 3u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ETHERNET_TYPE_IPV4: u32 = 2048u32; +pub const BCOB_X: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ETHERNET_TYPE_IPV6: u32 = 34525u32; +pub const BHLI_HighLayerProfile: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ETHERNET_TYPE_MINIMUM: u32 = 1536u32; +pub const BHLI_ISO: u32 = 0u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ETH_LENGTH_OF_HEADER: u32 = 14u32; +pub const BHLI_UserSpecific: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ETH_LENGTH_OF_SNAP_HEADER: u32 = 8u32; +pub const BHLI_VendorSpecificAppId: u32 = 3u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ETH_LENGTH_OF_VLAN_HEADER: u32 = 4u32; +pub const BIGENDIAN: u32 = 0u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const EXT_LEN_UNIT: u32 = 8u32; +pub const BITS_PER_BYTE: u32 = 8u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn EnumProtocolsA(lpiprotocols: ::core::option::Option<&i32>, lpprotocolbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: &mut u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn EnumProtocolsA(lpiprotocols: *const i32, lpprotocolbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: *mut u32) -> i32; - } - EnumProtocolsA(::core::mem::transmute(lpiprotocols), ::core::mem::transmute(lpprotocolbuffer), ::core::mem::transmute(lpdwbufferlength)) -} +pub const BLLI_L2_ELAPB: u32 = 8u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn EnumProtocolsW(lpiprotocols: ::core::option::Option<&i32>, lpprotocolbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: &mut u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn EnumProtocolsW(lpiprotocols: *const i32, lpprotocolbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: *mut u32) -> i32; - } - EnumProtocolsW(::core::mem::transmute(lpiprotocols), ::core::mem::transmute(lpprotocolbuffer), ::core::mem::transmute(lpdwbufferlength)) -} +pub const BLLI_L2_HDLC_ABM: u32 = 11u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct FALLBACK_INDEX(pub i32); +pub const BLLI_L2_HDLC_ARM: u32 = 9u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FallbackIndexTcpFastopen: FALLBACK_INDEX = FALLBACK_INDEX(0i32); +pub const BLLI_L2_HDLC_NRM: u32 = 10u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FallbackIndexMax: FALLBACK_INDEX = FALLBACK_INDEX(1i32); -impl ::core::marker::Copy for FALLBACK_INDEX {} -impl ::core::clone::Clone for FALLBACK_INDEX { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for FALLBACK_INDEX { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for FALLBACK_INDEX { - type Abi = Self; -} -impl ::core::fmt::Debug for FALLBACK_INDEX { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("FALLBACK_INDEX").field(&self.0).finish() - } -} +pub const BLLI_L2_ISO_1745: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_ACCEPT: u32 = 8u32; +pub const BLLI_L2_ISO_7776: u32 = 17u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_ACCEPT_BIT: u32 = 3u32; +pub const BLLI_L2_LLC: u32 = 12u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_ADDRESS_LIST_CHANGE_BIT: u32 = 9u32; +pub const BLLI_L2_MODE_EXT: u32 = 128u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_CLOSE: u32 = 32u32; +pub const BLLI_L2_MODE_NORMAL: u32 = 64u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_CLOSE_BIT: u32 = 5u32; +pub const BLLI_L2_Q921: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_CONNECT: u32 = 16u32; +pub const BLLI_L2_Q922: u32 = 14u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_CONNECT_BIT: u32 = 4u32; +pub const BLLI_L2_USER_SPECIFIED: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_GROUP_QOS_BIT: u32 = 7u32; +pub const BLLI_L2_X25L: u32 = 6u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_MAX_EVENTS: u32 = 10u32; +pub const BLLI_L2_X25M: u32 = 7u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_OOB: u32 = 4u32; +pub const BLLI_L2_X75: u32 = 13u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_OOB_BIT: u32 = 2u32; +pub const BLLI_L3_IPI_IP: u32 = 204u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_QOS_BIT: u32 = 6u32; +pub const BLLI_L3_IPI_SNAP: u32 = 128u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_READ: u32 = 1u32; +pub const BLLI_L3_ISO_8208: u32 = 7u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_READ_BIT: u32 = 0u32; +pub const BLLI_L3_ISO_TR9577: u32 = 11u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_ROUTING_INTERFACE_CHANGE_BIT: u32 = 8u32; +pub const BLLI_L3_MODE_EXT: u32 = 128u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_SETSIZE: u32 = 64u32; +pub const BLLI_L3_MODE_NORMAL: u32 = 64u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_WRITE: u32 = 2u32; +pub const BLLI_L3_PACKET_1024: u32 = 10u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FD_WRITE_BIT: u32 = 1u32; +pub const BLLI_L3_PACKET_128: u32 = 7u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FIOASYNC: i32 = -2147195267i32; +pub const BLLI_L3_PACKET_16: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FIONBIO: i32 = -2147195266i32; +pub const BLLI_L3_PACKET_2048: u32 = 11u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FIONREAD: i32 = 1074030207i32; -#[repr(C)] +pub const BLLI_L3_PACKET_256: u32 = 8u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct FLOWSPEC { - pub TokenRate: u32, - pub TokenBucketSize: u32, - pub PeakBandwidth: u32, - pub Latency: u32, - pub DelayVariation: u32, - pub ServiceType: u32, - pub MaxSduSize: u32, - pub MinimumPolicedSize: u32, -} -impl ::core::marker::Copy for FLOWSPEC {} -impl ::core::clone::Clone for FLOWSPEC { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for FLOWSPEC { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("FLOWSPEC").field("TokenRate", &self.TokenRate).field("TokenBucketSize", &self.TokenBucketSize).field("PeakBandwidth", &self.PeakBandwidth).field("Latency", &self.Latency).field("DelayVariation", &self.DelayVariation).field("ServiceType", &self.ServiceType).field("MaxSduSize", &self.MaxSduSize).field("MinimumPolicedSize", &self.MinimumPolicedSize).finish() - } -} -unsafe impl ::windows::core::Abi for FLOWSPEC { - type Abi = Self; -} -impl ::core::cmp::PartialEq for FLOWSPEC { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for FLOWSPEC {} -impl ::core::default::Default for FLOWSPEC { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} +pub const BLLI_L3_PACKET_32: u32 = 5u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const FROM_PROTOCOL_INFO: i32 = -1i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn FreeAddrInfoEx(paddrinfoex: ::core::option::Option<&addrinfoexA>) { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn FreeAddrInfoEx(paddrinfoex: *const addrinfoexA); - } - FreeAddrInfoEx(::core::mem::transmute(paddrinfoex)) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn FreeAddrInfoExW(paddrinfoex: ::core::option::Option<&addrinfoexW>) { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn FreeAddrInfoExW(paddrinfoex: *const addrinfoexW); - } - FreeAddrInfoExW(::core::mem::transmute(paddrinfoex)) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn FreeAddrInfoW(paddrinfo: ::core::option::Option<&addrinfoW>) { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn FreeAddrInfoW(paddrinfo: *const addrinfoW); - } - FreeAddrInfoW(::core::mem::transmute(paddrinfo)) -} +pub const BLLI_L3_PACKET_4096: u32 = 12u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const GAI_STRERROR_BUFFER_SIZE: u32 = 1024u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct GROUP_FILTER { - pub gf_interface: u32, - pub gf_group: SOCKADDR_STORAGE, - pub gf_fmode: MULTICAST_MODE_TYPE, - pub gf_numsrc: u32, - pub gf_slist: [SOCKADDR_STORAGE; 1], -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for GROUP_FILTER {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for GROUP_FILTER { - fn clone(&self) -> Self { - *self - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for GROUP_FILTER { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("GROUP_FILTER").field("gf_interface", &self.gf_interface).field("gf_group", &self.gf_group).field("gf_fmode", &self.gf_fmode).field("gf_numsrc", &self.gf_numsrc).field("gf_slist", &self.gf_slist).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for GROUP_FILTER { - type Abi = Self; -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for GROUP_FILTER { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for GROUP_FILTER {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for GROUP_FILTER { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct GROUP_REQ { - pub gr_interface: u32, - pub gr_group: SOCKADDR_STORAGE, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for GROUP_REQ {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for GROUP_REQ { - fn clone(&self) -> Self { - *self - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for GROUP_REQ { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("GROUP_REQ").field("gr_interface", &self.gr_interface).field("gr_group", &self.gr_group).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for GROUP_REQ { - type Abi = Self; -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for GROUP_REQ { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for GROUP_REQ {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for GROUP_REQ { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct GROUP_SOURCE_REQ { - pub gsr_interface: u32, - pub gsr_group: SOCKADDR_STORAGE, - pub gsr_source: SOCKADDR_STORAGE, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for GROUP_SOURCE_REQ {} +pub const BLLI_L3_PACKET_512: u32 = 9u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const BLLI_L3_PACKET_64: u32 = 6u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const BLLI_L3_SIO_8473: u32 = 9u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const BLLI_L3_T70: u32 = 10u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const BLLI_L3_USER_SPECIFIED: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const BLLI_L3_X223: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const BLLI_L3_X25: u32 = 6u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const BYTE_ORDER: u32 = 1234u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_AAL_PARAMETERS_UNSUPPORTED: u32 = 93u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_ACCESS_INFORMAION_DISCARDED: u32 = 43u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_BEARER_CAPABILITY_UNAUTHORIZED: u32 = 57u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_BEARER_CAPABILITY_UNAVAILABLE: u32 = 58u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_BEARER_CAPABILITY_UNIMPLEMENTED: u32 = 65u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_CALL_REJECTED: u32 = 21u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_CHANNEL_NONEXISTENT: u32 = 82u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_COND_PERMANENT: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_COND_TRANSIENT: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_COND_UNKNOWN: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_DESTINATION_OUT_OF_ORDER: u32 = 27u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_INCOMPATIBLE_DESTINATION: u32 = 88u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_INCORRECT_MESSAGE_LENGTH: u32 = 104u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_INVALID_CALL_REFERENCE: u32 = 81u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_INVALID_ENDPOINT_REFERENCE: u32 = 89u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_INVALID_IE_CONTENTS: u32 = 100u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_INVALID_NUMBER_FORMAT: u32 = 28u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_INVALID_STATE_FOR_MESSAGE: u32 = 101u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_INVALID_TRANSIT_NETWORK_SELECTION: u32 = 91u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_LOC_BEYOND_INTERWORKING: u32 = 10u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_LOC_INTERNATIONAL_NETWORK: u32 = 7u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_LOC_PRIVATE_LOCAL: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_LOC_PRIVATE_REMOTE: u32 = 5u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_LOC_PUBLIC_LOCAL: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_LOC_PUBLIC_REMOTE: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_LOC_TRANSIT_NETWORK: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_LOC_USER: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_MANDATORY_IE_MISSING: u32 = 96u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_NA_ABNORMAL: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_NA_NORMAL: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_NETWORK_OUT_OF_ORDER: u32 = 38u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_NORMAL_CALL_CLEARING: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_NORMAL_UNSPECIFIED: u32 = 31u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_NO_ROUTE_TO_DESTINATION: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_NO_ROUTE_TO_TRANSIT_NETWORK: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_NO_USER_RESPONDING: u32 = 18u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_NO_VPI_VCI_AVAILABLE: u32 = 45u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_NUMBER_CHANGED: u32 = 22u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_OPTION_UNAVAILABLE: u32 = 63u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_PROTOCOL_ERROR: u32 = 111u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_PU_PROVIDER: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_PU_USER: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_QOS_UNAVAILABLE: u32 = 49u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_REASON_IE_INSUFFICIENT: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_REASON_IE_MISSING: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_REASON_USER: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_RECOVERY_ON_TIMEOUT: u32 = 102u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_RESOURCE_UNAVAILABLE: u32 = 47u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_STATUS_ENQUIRY_RESPONSE: u32 = 30u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_TEMPORARY_FAILURE: u32 = 41u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_TOO_MANY_PENDING_ADD_PARTY: u32 = 92u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_UNALLOCATED_NUMBER: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_UNIMPLEMENTED_IE: u32 = 99u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_UNIMPLEMENTED_MESSAGE_TYPE: u32 = 97u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_UNSUPPORTED_TRAFFIC_PARAMETERS: u32 = 73u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_USER_BUSY: u32 = 17u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_USER_CELL_RATE_UNAVAILABLE: u32 = 51u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_USER_REJECTS_CLIR: u32 = 23u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_VPI_VCI_UNACCEPTABLE: u32 = 10u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CAUSE_VPI_VCI_UNAVAILABLE: u32 = 35u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CF_ACCEPT: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CF_DEFER: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CF_REJECT: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CLIP_NOT: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CLIP_SUS: u32 = 32u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CONTROL_CHANNEL_TRIGGER_STATUS(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CONTROL_CHANNEL_TRIGGER_STATUS_INVALID: CONTROL_CHANNEL_TRIGGER_STATUS = CONTROL_CHANNEL_TRIGGER_STATUS(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CONTROL_CHANNEL_TRIGGER_STATUS_SOFTWARE_SLOT_ALLOCATED: CONTROL_CHANNEL_TRIGGER_STATUS = CONTROL_CHANNEL_TRIGGER_STATUS(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CONTROL_CHANNEL_TRIGGER_STATUS_HARDWARE_SLOT_ALLOCATED: CONTROL_CHANNEL_TRIGGER_STATUS = CONTROL_CHANNEL_TRIGGER_STATUS(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CONTROL_CHANNEL_TRIGGER_STATUS_POLICY_ERROR: CONTROL_CHANNEL_TRIGGER_STATUS = CONTROL_CHANNEL_TRIGGER_STATUS(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CONTROL_CHANNEL_TRIGGER_STATUS_SYSTEM_ERROR: CONTROL_CHANNEL_TRIGGER_STATUS = CONTROL_CHANNEL_TRIGGER_STATUS(4i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CONTROL_CHANNEL_TRIGGER_STATUS_TRANSPORT_DISCONNECTED: CONTROL_CHANNEL_TRIGGER_STATUS = CONTROL_CHANNEL_TRIGGER_STATUS(5i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const CONTROL_CHANNEL_TRIGGER_STATUS_SERVICE_UNAVAILABLE: CONTROL_CHANNEL_TRIGGER_STATUS = CONTROL_CHANNEL_TRIGGER_STATUS(6i32); +impl ::core::marker::Copy for CONTROL_CHANNEL_TRIGGER_STATUS {} +impl ::core::clone::Clone for CONTROL_CHANNEL_TRIGGER_STATUS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for CONTROL_CHANNEL_TRIGGER_STATUS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for CONTROL_CHANNEL_TRIGGER_STATUS { + type Abi = Self; +} +impl ::core::fmt::Debug for CONTROL_CHANNEL_TRIGGER_STATUS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CONTROL_CHANNEL_TRIGGER_STATUS").field(&self.0).finish() + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for GROUP_SOURCE_REQ { +pub struct CSADDR_INFO { + pub LocalAddr: SOCKET_ADDRESS, + pub RemoteAddr: SOCKET_ADDRESS, + pub iSocketType: i32, + pub iProtocol: i32, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for CSADDR_INFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for CSADDR_INFO { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for GROUP_SOURCE_REQ { +impl ::core::fmt::Debug for CSADDR_INFO { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("GROUP_SOURCE_REQ").field("gsr_interface", &self.gsr_interface).field("gsr_group", &self.gsr_group).field("gsr_source", &self.gsr_source).finish() + f.debug_struct("CSADDR_INFO").field("LocalAddr", &self.LocalAddr).field("RemoteAddr", &self.RemoteAddr).field("iSocketType", &self.iSocketType).field("iProtocol", &self.iProtocol).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for GROUP_SOURCE_REQ { +unsafe impl ::windows::core::Abi for CSADDR_INFO { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for GROUP_SOURCE_REQ { +impl ::core::cmp::PartialEq for CSADDR_INFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for GROUP_SOURCE_REQ {} +impl ::core::cmp::Eq for CSADDR_INFO {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for GROUP_SOURCE_REQ { +impl ::core::default::Default for CSADDR_INFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn GetAcceptExSockaddrs(lpoutputbuffer: *const ::core::ffi::c_void, dwreceivedatalength: u32, dwlocaladdresslength: u32, dwremoteaddresslength: u32, localsockaddr: &mut *mut SOCKADDR, localsockaddrlength: &mut i32, remotesockaddr: &mut *mut SOCKADDR, remotesockaddrlength: &mut i32) { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetAcceptExSockaddrs(lpoutputbuffer: *const ::core::ffi::c_void, dwreceivedatalength: u32, dwlocaladdresslength: u32, dwremoteaddresslength: u32, localsockaddr: *mut *mut SOCKADDR, localsockaddrlength: *mut i32, remotesockaddr: *mut *mut SOCKADDR, remotesockaddrlength: *mut i32); - } - GetAcceptExSockaddrs(::core::mem::transmute(lpoutputbuffer), dwreceivedatalength, dwlocaladdresslength, dwremoteaddresslength, ::core::mem::transmute(localsockaddr), ::core::mem::transmute(localsockaddrlength), ::core::mem::transmute(remotesockaddr), ::core::mem::transmute(remotesockaddrlength)) +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const DE_REUSE_SOCKET: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const DL_ADDRESS_LENGTH_MAXIMUM: u32 = 32u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub union DL_EI48 { + pub Byte: [u8; 3], } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn GetAddrInfoExA<'a, P0, P1>(pname: P0, pservicename: P1, dwnamespace: u32, lpnspid: ::core::option::Option<&::windows::core::GUID>, hints: ::core::option::Option<&addrinfoexA>, ppresult: &mut *mut addrinfoexA, timeout: ::core::option::Option<&timeval>, lpoverlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPLOOKUPSERVICE_COMPLETION_ROUTINE, lpnamehandle: ::core::option::Option<&mut super::super::Foundation::HANDLE>) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCSTR>, - P1: ::std::convert::Into<::windows::core::PCSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetAddrInfoExA(pname: ::windows::core::PCSTR, pservicename: ::windows::core::PCSTR, dwnamespace: u32, lpnspid: *const ::windows::core::GUID, hints: *const addrinfoexA, ppresult: *mut *mut addrinfoexA, timeout: *const timeval, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void, lpnamehandle: *mut super::super::Foundation::HANDLE) -> i32; +impl ::core::marker::Copy for DL_EI48 {} +impl ::core::clone::Clone for DL_EI48 { + fn clone(&self) -> Self { + *self } - GetAddrInfoExA(pname.into(), pservicename.into(), dwnamespace, ::core::mem::transmute(lpnspid), ::core::mem::transmute(hints), ::core::mem::transmute(ppresult), ::core::mem::transmute(timeout), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine), ::core::mem::transmute(lpnamehandle)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn GetAddrInfoExCancel(lphandle: &super::super::Foundation::HANDLE) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetAddrInfoExCancel(lphandle: *const super::super::Foundation::HANDLE) -> i32; +unsafe impl ::windows::core::Abi for DL_EI48 { + type Abi = Self; +} +impl ::core::cmp::PartialEq for DL_EI48 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - GetAddrInfoExCancel(::core::mem::transmute(lphandle)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn GetAddrInfoExOverlappedResult(lpoverlapped: &super::super::System::IO::OVERLAPPED) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetAddrInfoExOverlappedResult(lpoverlapped: *const super::super::System::IO::OVERLAPPED) -> i32; +impl ::core::cmp::Eq for DL_EI48 {} +impl ::core::default::Default for DL_EI48 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - GetAddrInfoExOverlappedResult(::core::mem::transmute(lpoverlapped)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn GetAddrInfoExW<'a, P0, P1>(pname: P0, pservicename: P1, dwnamespace: u32, lpnspid: ::core::option::Option<&::windows::core::GUID>, hints: ::core::option::Option<&addrinfoexW>, ppresult: &mut *mut addrinfoexW, timeout: ::core::option::Option<&timeval>, lpoverlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPLOOKUPSERVICE_COMPLETION_ROUTINE, lphandle: ::core::option::Option<&mut super::super::Foundation::HANDLE>) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, - P1: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetAddrInfoExW(pname: ::windows::core::PCWSTR, pservicename: ::windows::core::PCWSTR, dwnamespace: u32, lpnspid: *const ::windows::core::GUID, hints: *const addrinfoexW, ppresult: *mut *mut addrinfoexW, timeout: *const timeval, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void, lphandle: *mut super::super::Foundation::HANDLE) -> i32; - } - GetAddrInfoExW(pname.into(), pservicename.into(), dwnamespace, ::core::mem::transmute(lpnspid), ::core::mem::transmute(hints), ::core::mem::transmute(ppresult), ::core::mem::transmute(timeout), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine), ::core::mem::transmute(lphandle)) +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub union DL_EI64 { + pub Byte: [u8; 5], } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn GetAddrInfoW<'a, P0, P1>(pnodename: P0, pservicename: P1, phints: ::core::option::Option<&addrinfoW>, ppresult: &mut *mut addrinfoW) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, - P1: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetAddrInfoW(pnodename: ::windows::core::PCWSTR, pservicename: ::windows::core::PCWSTR, phints: *const addrinfoW, ppresult: *mut *mut addrinfoW) -> i32; +impl ::core::marker::Copy for DL_EI64 {} +impl ::core::clone::Clone for DL_EI64 { + fn clone(&self) -> Self { + *self } - GetAddrInfoW(pnodename.into(), pservicename.into(), ::core::mem::transmute(phints), ::core::mem::transmute(ppresult)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn GetAddressByNameA<'a, P0>(dwnamespace: u32, lpservicetype: &::windows::core::GUID, lpservicename: P0, lpiprotocols: ::core::option::Option<&i32>, dwresolution: u32, lpserviceasyncinfo: ::core::option::Option<&SERVICE_ASYNC_INFO>, lpcsaddrbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: &mut u32, lpaliasbuffer: ::windows::core::PSTR, lpdwaliasbufferlength: &mut u32) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetAddressByNameA(dwnamespace: u32, lpservicetype: *const ::windows::core::GUID, lpservicename: ::windows::core::PCSTR, lpiprotocols: *const i32, dwresolution: u32, lpserviceasyncinfo: *const SERVICE_ASYNC_INFO, lpcsaddrbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: *mut u32, lpaliasbuffer: ::windows::core::PSTR, lpdwaliasbufferlength: *mut u32) -> i32; - } - GetAddressByNameA(dwnamespace, ::core::mem::transmute(lpservicetype), lpservicename.into(), ::core::mem::transmute(lpiprotocols), dwresolution, ::core::mem::transmute(lpserviceasyncinfo), ::core::mem::transmute(lpcsaddrbuffer), ::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpaliasbuffer), ::core::mem::transmute(lpdwaliasbufferlength)) +unsafe impl ::windows::core::Abi for DL_EI64 { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn GetAddressByNameW<'a, P0>(dwnamespace: u32, lpservicetype: &::windows::core::GUID, lpservicename: P0, lpiprotocols: ::core::option::Option<&i32>, dwresolution: u32, lpserviceasyncinfo: ::core::option::Option<&SERVICE_ASYNC_INFO>, lpcsaddrbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: &mut u32, lpaliasbuffer: ::windows::core::PWSTR, lpdwaliasbufferlength: &mut u32) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetAddressByNameW(dwnamespace: u32, lpservicetype: *const ::windows::core::GUID, lpservicename: ::windows::core::PCWSTR, lpiprotocols: *const i32, dwresolution: u32, lpserviceasyncinfo: *const SERVICE_ASYNC_INFO, lpcsaddrbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: *mut u32, lpaliasbuffer: ::windows::core::PWSTR, lpdwaliasbufferlength: *mut u32) -> i32; +impl ::core::cmp::PartialEq for DL_EI64 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - GetAddressByNameW(dwnamespace, ::core::mem::transmute(lpservicetype), lpservicename.into(), ::core::mem::transmute(lpiprotocols), dwresolution, ::core::mem::transmute(lpserviceasyncinfo), ::core::mem::transmute(lpcsaddrbuffer), ::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpaliasbuffer), ::core::mem::transmute(lpdwaliasbufferlength)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn GetHostNameW(name: &mut [u16]) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetHostNameW(name: ::windows::core::PWSTR, namelen: i32) -> i32; +impl ::core::cmp::Eq for DL_EI64 {} +impl ::core::default::Default for DL_EI64 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - GetHostNameW(::core::mem::transmute(name.as_ptr()), name.len() as _) } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn GetNameByTypeA(lpservicetype: &::windows::core::GUID, lpservicename: &mut [u8]) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetNameByTypeA(lpservicetype: *const ::windows::core::GUID, lpservicename: ::windows::core::PSTR, dwnamelength: u32) -> i32; - } - GetNameByTypeA(::core::mem::transmute(lpservicetype), ::core::mem::transmute(lpservicename.as_ptr()), lpservicename.len() as _) +pub union DL_EUI48 { + pub Byte: [u8; 6], + pub Anonymous: DL_EUI48_0, } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn GetNameByTypeW(lpservicetype: &::windows::core::GUID, lpservicename: &mut [u8]) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetNameByTypeW(lpservicetype: *const ::windows::core::GUID, lpservicename: ::windows::core::PWSTR, dwnamelength: u32) -> i32; +impl ::core::marker::Copy for DL_EUI48 {} +impl ::core::clone::Clone for DL_EUI48 { + fn clone(&self) -> Self { + *self } - GetNameByTypeW(::core::mem::transmute(lpservicetype), ::core::mem::transmute(lpservicename.as_ptr()), lpservicename.len() as _) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn GetNameInfoW(psockaddr: &[u8], pnodebuffer: ::core::option::Option<&mut [u16]>, pservicebuffer: ::core::option::Option<&mut [u16]>, flags: i32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetNameInfoW(psockaddr: *const SOCKADDR, sockaddrlength: i32, pnodebuffer: ::windows::core::PWSTR, nodebuffersize: u32, pservicebuffer: ::windows::core::PWSTR, servicebuffersize: u32, flags: i32) -> i32; - } - GetNameInfoW(::core::mem::transmute(psockaddr.as_ptr()), psockaddr.len() as _, ::core::mem::transmute(pnodebuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pnodebuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pservicebuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pservicebuffer.as_deref().map_or(0, |slice| slice.len() as _), flags) +unsafe impl ::windows::core::Abi for DL_EUI48 { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn GetServiceA<'a, P0>(dwnamespace: u32, lpguid: &::windows::core::GUID, lpservicename: P0, dwproperties: u32, lpbuffer: *mut ::core::ffi::c_void, lpdwbuffersize: &mut u32, lpserviceasyncinfo: ::core::option::Option<&SERVICE_ASYNC_INFO>) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetServiceA(dwnamespace: u32, lpguid: *const ::windows::core::GUID, lpservicename: ::windows::core::PCSTR, dwproperties: u32, lpbuffer: *mut ::core::ffi::c_void, lpdwbuffersize: *mut u32, lpserviceasyncinfo: *const SERVICE_ASYNC_INFO) -> i32; +impl ::core::cmp::PartialEq for DL_EUI48 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - GetServiceA(dwnamespace, ::core::mem::transmute(lpguid), lpservicename.into(), dwproperties, ::core::mem::transmute(lpbuffer), ::core::mem::transmute(lpdwbuffersize), ::core::mem::transmute(lpserviceasyncinfo)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn GetServiceW<'a, P0>(dwnamespace: u32, lpguid: &::windows::core::GUID, lpservicename: P0, dwproperties: u32, lpbuffer: *mut ::core::ffi::c_void, lpdwbuffersize: &mut u32, lpserviceasyncinfo: ::core::option::Option<&SERVICE_ASYNC_INFO>) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetServiceW(dwnamespace: u32, lpguid: *const ::windows::core::GUID, lpservicename: ::windows::core::PCWSTR, dwproperties: u32, lpbuffer: *mut ::core::ffi::c_void, lpdwbuffersize: *mut u32, lpserviceasyncinfo: *const SERVICE_ASYNC_INFO) -> i32; +impl ::core::cmp::Eq for DL_EUI48 {} +impl ::core::default::Default for DL_EUI48 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - GetServiceW(dwnamespace, ::core::mem::transmute(lpguid), lpservicename.into(), dwproperties, ::core::mem::transmute(lpbuffer), ::core::mem::transmute(lpdwbuffersize), ::core::mem::transmute(lpserviceasyncinfo)) } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn GetTypeByNameA<'a, P0>(lpservicename: P0, lpservicetype: &mut ::windows::core::GUID) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetTypeByNameA(lpservicename: ::windows::core::PCSTR, lpservicetype: *mut ::windows::core::GUID) -> i32; - } - GetTypeByNameA(lpservicename.into(), ::core::mem::transmute(lpservicetype)) +pub struct DL_EUI48_0 { + pub Oui: DL_OUI, + pub Ei48: DL_EI48, } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn GetTypeByNameW<'a, P0>(lpservicename: P0, lpservicetype: &mut ::windows::core::GUID) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetTypeByNameW(lpservicename: ::windows::core::PCWSTR, lpservicetype: *mut ::windows::core::GUID) -> i32; +impl ::core::marker::Copy for DL_EUI48_0 {} +impl ::core::clone::Clone for DL_EUI48_0 { + fn clone(&self) -> Self { + *self } - GetTypeByNameW(lpservicename.into(), ::core::mem::transmute(lpservicetype)) } -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct HWSAEVENT(pub isize); -impl HWSAEVENT { - pub fn is_invalid(&self) -> bool { - self.0 == -1 || self.0 == 0 +unsafe impl ::windows::core::Abi for DL_EUI48_0 { + type Abi = Self; +} +impl ::core::cmp::PartialEq for DL_EUI48_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::default::Default for HWSAEVENT { +impl ::core::cmp::Eq for DL_EUI48_0 {} +impl ::core::default::Default for DL_EUI48_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -impl ::core::clone::Clone for HWSAEVENT { +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub union DL_EUI64 { + pub Byte: [u8; 8], + pub Value: u64, + pub Anonymous: DL_EUI64_0, +} +impl ::core::marker::Copy for DL_EUI64 {} +impl ::core::clone::Clone for DL_EUI64 { fn clone(&self) -> Self { *self } } -impl ::core::marker::Copy for HWSAEVENT {} -impl ::core::fmt::Debug for HWSAEVENT { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("HWSAEVENT").field(&self.0).finish() - } +unsafe impl ::windows::core::Abi for DL_EUI64 { + type Abi = Self; } -impl ::core::convert::From<::core::option::Option> for HWSAEVENT { - fn from(optional: ::core::option::Option) -> HWSAEVENT { - optional.unwrap_or_default() +impl ::core::cmp::PartialEq for DL_EUI64 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -unsafe impl ::windows::core::Abi for HWSAEVENT { - type Abi = Self; +impl ::core::cmp::Eq for DL_EUI64 {} +impl ::core::default::Default for DL_EUI64 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IAS_ATTRIB_INT: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IAS_ATTRIB_NO_ATTRIB: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IAS_ATTRIB_NO_CLASS: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IAS_ATTRIB_OCTETSEQ: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IAS_ATTRIB_STR: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IAS_MAX_ATTRIBNAME: u32 = 256u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IAS_MAX_CLASSNAME: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IAS_MAX_OCTET_STRING: u32 = 1024u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IAS_MAX_USER_STRING: u32 = 256u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct ICMP4_TIME_EXCEED_CODE(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_TIME_EXCEED_TRANSIT: ICMP4_TIME_EXCEED_CODE = ICMP4_TIME_EXCEED_CODE(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_TIME_EXCEED_REASSEMBLY: ICMP4_TIME_EXCEED_CODE = ICMP4_TIME_EXCEED_CODE(1i32); -impl ::core::marker::Copy for ICMP4_TIME_EXCEED_CODE {} -impl ::core::clone::Clone for ICMP4_TIME_EXCEED_CODE { +pub struct DL_EUI64_0 { + pub Oui: DL_OUI, + pub Anonymous: DL_EUI64_0_0, +} +impl ::core::marker::Copy for DL_EUI64_0 {} +impl ::core::clone::Clone for DL_EUI64_0 { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for ICMP4_TIME_EXCEED_CODE { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for ICMP4_TIME_EXCEED_CODE { +unsafe impl ::windows::core::Abi for DL_EUI64_0 { type Abi = Self; } -impl ::core::fmt::Debug for ICMP4_TIME_EXCEED_CODE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ICMP4_TIME_EXCEED_CODE").field(&self.0).finish() - } -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct ICMP4_UNREACH_CODE(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_UNREACH_NET: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_UNREACH_HOST: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_UNREACH_PROTOCOL: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_UNREACH_PORT: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(3i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_UNREACH_FRAG_NEEDED: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(4i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_UNREACH_SOURCEROUTE_FAILED: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(5i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_UNREACH_NET_UNKNOWN: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(6i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_UNREACH_HOST_UNKNOWN: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(7i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_UNREACH_ISOLATED: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(8i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_UNREACH_NET_ADMIN: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(9i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_UNREACH_HOST_ADMIN: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(10i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_UNREACH_NET_TOS: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(11i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_UNREACH_HOST_TOS: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(12i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP4_UNREACH_ADMIN: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(13i32); -impl ::core::marker::Copy for ICMP4_UNREACH_CODE {} -impl ::core::clone::Clone for ICMP4_UNREACH_CODE { - fn clone(&self) -> Self { - *self +impl ::core::cmp::PartialEq for DL_EUI64_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::default::Default for ICMP4_UNREACH_CODE { +impl ::core::cmp::Eq for DL_EUI64_0 {} +impl ::core::default::Default for DL_EUI64_0 { fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for ICMP4_UNREACH_CODE { - type Abi = Self; -} -impl ::core::fmt::Debug for ICMP4_UNREACH_CODE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ICMP4_UNREACH_CODE").field(&self.0).finish() + unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP6_DST_UNREACH_ADDR: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP6_DST_UNREACH_ADMIN: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP6_DST_UNREACH_BEYONDSCOPE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP6_DST_UNREACH_NOPORT: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP6_DST_UNREACH_NOROUTE: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP6_PARAMPROB_HEADER: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP6_PARAMPROB_NEXTHEADER: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP6_PARAMPROB_OPTION: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP6_TIME_EXCEED_REASSEMBLY: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMP6_TIME_EXCEED_TRANSIT: u32 = 0u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ICMPV4_ADDRESS_MASK_MESSAGE { - pub Header: ICMP_MESSAGE, - pub AddressMask: u32, +pub union DL_EUI64_0_0 { + pub Ei64: DL_EI64, + pub Anonymous: DL_EUI64_0_0_0, } -impl ::core::marker::Copy for ICMPV4_ADDRESS_MASK_MESSAGE {} -impl ::core::clone::Clone for ICMPV4_ADDRESS_MASK_MESSAGE { +impl ::core::marker::Copy for DL_EUI64_0_0 {} +impl ::core::clone::Clone for DL_EUI64_0_0 { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for ICMPV4_ADDRESS_MASK_MESSAGE { +unsafe impl ::windows::core::Abi for DL_EUI64_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for ICMPV4_ADDRESS_MASK_MESSAGE { +impl ::core::cmp::PartialEq for DL_EUI64_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ICMPV4_ADDRESS_MASK_MESSAGE {} -impl ::core::default::Default for ICMPV4_ADDRESS_MASK_MESSAGE { +impl ::core::cmp::Eq for DL_EUI64_0_0 {} +impl ::core::default::Default for DL_EUI64_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMPV4_INVALID_PREFERENCE_LEVEL: u32 = 2147483648u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ICMPV4_ROUTER_ADVERT_ENTRY { - pub RouterAdvertAddr: IN_ADDR, - pub PreferenceLevel: i32, +pub struct DL_EUI64_0_0_0 { + pub Type: u8, + pub Tse: u8, + pub Ei48: DL_EI48, } -impl ::core::marker::Copy for ICMPV4_ROUTER_ADVERT_ENTRY {} -impl ::core::clone::Clone for ICMPV4_ROUTER_ADVERT_ENTRY { +impl ::core::marker::Copy for DL_EUI64_0_0_0 {} +impl ::core::clone::Clone for DL_EUI64_0_0_0 { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for ICMPV4_ROUTER_ADVERT_ENTRY { +unsafe impl ::windows::core::Abi for DL_EUI64_0_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for ICMPV4_ROUTER_ADVERT_ENTRY { +impl ::core::cmp::PartialEq for DL_EUI64_0_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ICMPV4_ROUTER_ADVERT_ENTRY {} -impl ::core::default::Default for ICMPV4_ROUTER_ADVERT_ENTRY { +impl ::core::cmp::Eq for DL_EUI64_0_0_0 {} +impl ::core::default::Default for DL_EUI64_0_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const DL_HEADER_LENGTH_MAXIMUM: u32 = 64u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ICMPV4_ROUTER_ADVERT_HEADER { - pub RaHeader: ICMP_MESSAGE, +pub union DL_OUI { + pub Byte: [u8; 3], + pub Anonymous: DL_OUI_0, } -impl ::core::marker::Copy for ICMPV4_ROUTER_ADVERT_HEADER {} -impl ::core::clone::Clone for ICMPV4_ROUTER_ADVERT_HEADER { +impl ::core::marker::Copy for DL_OUI {} +impl ::core::clone::Clone for DL_OUI { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for ICMPV4_ROUTER_ADVERT_HEADER { +unsafe impl ::windows::core::Abi for DL_OUI { type Abi = Self; } -impl ::core::cmp::PartialEq for ICMPV4_ROUTER_ADVERT_HEADER { +impl ::core::cmp::PartialEq for DL_OUI { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ICMPV4_ROUTER_ADVERT_HEADER {} -impl ::core::default::Default for ICMPV4_ROUTER_ADVERT_HEADER { +impl ::core::cmp::Eq for DL_OUI {} +impl ::core::default::Default for DL_OUI { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ICMPV4_ROUTER_SOLICIT { - pub RsHeader: ICMP_MESSAGE, +pub struct DL_OUI_0 { + pub _bitfield: u8, } -impl ::core::marker::Copy for ICMPV4_ROUTER_SOLICIT {} -impl ::core::clone::Clone for ICMPV4_ROUTER_SOLICIT { +impl ::core::marker::Copy for DL_OUI_0 {} +impl ::core::clone::Clone for DL_OUI_0 { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for ICMPV4_ROUTER_SOLICIT { +impl ::core::fmt::Debug for DL_OUI_0 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("DL_OUI_0").field("_bitfield", &self._bitfield).finish() + } +} +unsafe impl ::windows::core::Abi for DL_OUI_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for ICMPV4_ROUTER_SOLICIT { +impl ::core::cmp::PartialEq for DL_OUI_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ICMPV4_ROUTER_SOLICIT {} -impl ::core::default::Default for ICMPV4_ROUTER_SOLICIT { +impl ::core::cmp::Eq for DL_OUI_0 {} +impl ::core::default::Default for DL_OUI_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ICMPV4_TIMESTAMP_MESSAGE { - pub Header: ICMP_MESSAGE, - pub OriginateTimestamp: u32, - pub ReceiveTimestamp: u32, - pub TransmitTimestamp: u32, +pub struct DL_TEREDO_ADDRESS { + pub Reserved: [u8; 6], + pub Anonymous: DL_TEREDO_ADDRESS_0, } -impl ::core::marker::Copy for ICMPV4_TIMESTAMP_MESSAGE {} -impl ::core::clone::Clone for ICMPV4_TIMESTAMP_MESSAGE { +impl ::core::marker::Copy for DL_TEREDO_ADDRESS {} +impl ::core::clone::Clone for DL_TEREDO_ADDRESS { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for ICMPV4_TIMESTAMP_MESSAGE { +unsafe impl ::windows::core::Abi for DL_TEREDO_ADDRESS { type Abi = Self; } -impl ::core::cmp::PartialEq for ICMPV4_TIMESTAMP_MESSAGE { +impl ::core::cmp::PartialEq for DL_TEREDO_ADDRESS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ICMPV4_TIMESTAMP_MESSAGE {} -impl ::core::default::Default for ICMPV4_TIMESTAMP_MESSAGE { +impl ::core::cmp::Eq for DL_TEREDO_ADDRESS {} +impl ::core::default::Default for DL_TEREDO_ADDRESS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C, packed(1))] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ICMPV6_ECHO_REQUEST_FLAG_REVERSE: u32 = 1u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct ICMP_ERROR_INFO { - pub srcaddress: SOCKADDR_INET, - pub protocol: IPPROTO, - pub r#type: u8, - pub code: u8, +pub union DL_TEREDO_ADDRESS_0 { + pub Eui64: DL_EUI64, + pub Anonymous: DL_TEREDO_ADDRESS_0_0, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for ICMP_ERROR_INFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for ICMP_ERROR_INFO { +impl ::core::marker::Copy for DL_TEREDO_ADDRESS_0 {} +impl ::core::clone::Clone for DL_TEREDO_ADDRESS_0 { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for ICMP_ERROR_INFO { +unsafe impl ::windows::core::Abi for DL_TEREDO_ADDRESS_0 { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for ICMP_ERROR_INFO { +impl ::core::cmp::PartialEq for DL_TEREDO_ADDRESS_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for ICMP_ERROR_INFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for ICMP_ERROR_INFO { +impl ::core::cmp::Eq for DL_TEREDO_ADDRESS_0 {} +impl ::core::default::Default for DL_TEREDO_ADDRESS_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] +#[repr(C, packed(1))] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ICMP_HEADER { - pub Type: u8, - pub Code: u8, - pub Checksum: u16, +pub struct DL_TEREDO_ADDRESS_0_0 { + pub Flags: u16, + pub MappedPort: u16, + pub MappedAddress: IN_ADDR, } -impl ::core::marker::Copy for ICMP_HEADER {} -impl ::core::clone::Clone for ICMP_HEADER { +impl ::core::marker::Copy for DL_TEREDO_ADDRESS_0_0 {} +impl ::core::clone::Clone for DL_TEREDO_ADDRESS_0_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for ICMP_HEADER { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("ICMP_HEADER").field("Type", &self.Type).field("Code", &self.Code).field("Checksum", &self.Checksum).finish() - } -} -unsafe impl ::windows::core::Abi for ICMP_HEADER { +unsafe impl ::windows::core::Abi for DL_TEREDO_ADDRESS_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for ICMP_HEADER { +impl ::core::cmp::PartialEq for DL_TEREDO_ADDRESS_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ICMP_HEADER {} -impl ::core::default::Default for ICMP_HEADER { +impl ::core::cmp::Eq for DL_TEREDO_ADDRESS_0_0 {} +impl ::core::default::Default for DL_TEREDO_ADDRESS_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct ICMP_MESSAGE { - pub Header: ICMP_HEADER, - pub Data: ICMP_MESSAGE_0, +pub struct DL_TEREDO_ADDRESS_PRV { + pub Reserved: [u8; 6], + pub Anonymous: DL_TEREDO_ADDRESS_PRV_0, } -impl ::core::marker::Copy for ICMP_MESSAGE {} -impl ::core::clone::Clone for ICMP_MESSAGE { - fn clone(&self) -> Self { +impl ::core::marker::Copy for DL_TEREDO_ADDRESS_PRV {} +impl ::core::clone::Clone for DL_TEREDO_ADDRESS_PRV { + fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for ICMP_MESSAGE { +unsafe impl ::windows::core::Abi for DL_TEREDO_ADDRESS_PRV { type Abi = Self; } -impl ::core::cmp::PartialEq for ICMP_MESSAGE { +impl ::core::cmp::PartialEq for DL_TEREDO_ADDRESS_PRV { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ICMP_MESSAGE {} -impl ::core::default::Default for ICMP_MESSAGE { +impl ::core::cmp::Eq for DL_TEREDO_ADDRESS_PRV {} +impl ::core::default::Default for DL_TEREDO_ADDRESS_PRV { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] +#[repr(C, packed(1))] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union ICMP_MESSAGE_0 { - pub Data32: [u32; 1], - pub Data16: [u16; 2], - pub Data8: [u8; 4], +pub union DL_TEREDO_ADDRESS_PRV_0 { + pub Eui64: DL_EUI64, + pub Anonymous: DL_TEREDO_ADDRESS_PRV_0_0, } -impl ::core::marker::Copy for ICMP_MESSAGE_0 {} -impl ::core::clone::Clone for ICMP_MESSAGE_0 { +impl ::core::marker::Copy for DL_TEREDO_ADDRESS_PRV_0 {} +impl ::core::clone::Clone for DL_TEREDO_ADDRESS_PRV_0 { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for ICMP_MESSAGE_0 { +unsafe impl ::windows::core::Abi for DL_TEREDO_ADDRESS_PRV_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for ICMP_MESSAGE_0 { +impl ::core::cmp::PartialEq for DL_TEREDO_ADDRESS_PRV_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for ICMP_MESSAGE_0 {} -impl ::core::default::Default for ICMP_MESSAGE_0 { +impl ::core::cmp::Eq for DL_TEREDO_ADDRESS_PRV_0 {} +impl ::core::default::Default for DL_TEREDO_ADDRESS_PRV_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C, packed(1))] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IFF_BROADCAST: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IFF_LOOPBACK: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IFF_MULTICAST: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IFF_POINTTOPOINT: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IFF_UP: u32 = 1u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IGMPV3_QUERY_HEADER { - pub Type: u8, - pub Anonymous1: IGMPV3_QUERY_HEADER_0, - pub Checksum: u16, - pub MulticastAddress: IN_ADDR, - pub _bitfield: u8, - pub Anonymous2: IGMPV3_QUERY_HEADER_1, - pub SourceCount: u16, +pub struct DL_TEREDO_ADDRESS_PRV_0_0 { + pub Flags: u16, + pub MappedPort: u16, + pub MappedAddress: IN_ADDR, + pub LocalAddress: IN_ADDR, + pub InterfaceIndex: u32, + pub LocalPort: u16, + pub DlDestination: DL_EUI48, } -impl ::core::marker::Copy for IGMPV3_QUERY_HEADER {} -impl ::core::clone::Clone for IGMPV3_QUERY_HEADER { +impl ::core::marker::Copy for DL_TEREDO_ADDRESS_PRV_0_0 {} +impl ::core::clone::Clone for DL_TEREDO_ADDRESS_PRV_0_0 { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IGMPV3_QUERY_HEADER { +unsafe impl ::windows::core::Abi for DL_TEREDO_ADDRESS_PRV_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IGMPV3_QUERY_HEADER { +impl ::core::cmp::PartialEq for DL_TEREDO_ADDRESS_PRV_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IGMPV3_QUERY_HEADER {} -impl ::core::default::Default for IGMPV3_QUERY_HEADER { +impl ::core::cmp::Eq for DL_TEREDO_ADDRESS_PRV_0_0 {} +impl ::core::default::Default for DL_TEREDO_ADDRESS_PRV_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IGMPV3_QUERY_HEADER_0 { - pub MaxRespCode: u8, - pub Anonymous: IGMPV3_QUERY_HEADER_0_0, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Kernel\"`*"] +#[cfg(feature = "Win32_System_Kernel")] +pub struct DL_TUNNEL_ADDRESS { + pub CompartmentId: super::super::System::Kernel::COMPARTMENT_ID, + pub ScopeId: SCOPE_ID, + pub IpAddress: [u8; 1], } -impl ::core::marker::Copy for IGMPV3_QUERY_HEADER_0 {} -impl ::core::clone::Clone for IGMPV3_QUERY_HEADER_0 { +#[cfg(feature = "Win32_System_Kernel")] +impl ::core::marker::Copy for DL_TUNNEL_ADDRESS {} +#[cfg(feature = "Win32_System_Kernel")] +impl ::core::clone::Clone for DL_TUNNEL_ADDRESS { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IGMPV3_QUERY_HEADER_0 { +#[cfg(feature = "Win32_System_Kernel")] +unsafe impl ::windows::core::Abi for DL_TUNNEL_ADDRESS { type Abi = Self; } -impl ::core::cmp::PartialEq for IGMPV3_QUERY_HEADER_0 { +#[cfg(feature = "Win32_System_Kernel")] +impl ::core::cmp::PartialEq for DL_TUNNEL_ADDRESS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IGMPV3_QUERY_HEADER_0 {} -impl ::core::default::Default for IGMPV3_QUERY_HEADER_0 { +#[cfg(feature = "Win32_System_Kernel")] +impl ::core::cmp::Eq for DL_TUNNEL_ADDRESS {} +#[cfg(feature = "Win32_System_Kernel")] +impl ::core::default::Default for DL_TUNNEL_ADDRESS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IGMPV3_QUERY_HEADER_0_0 { - pub _bitfield: u8, +pub struct ETHERNET_HEADER { + pub Destination: DL_EUI48, + pub Source: DL_EUI48, + pub Anonymous: ETHERNET_HEADER_0, } -impl ::core::marker::Copy for IGMPV3_QUERY_HEADER_0_0 {} -impl ::core::clone::Clone for IGMPV3_QUERY_HEADER_0_0 { +impl ::core::marker::Copy for ETHERNET_HEADER {} +impl ::core::clone::Clone for ETHERNET_HEADER { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IGMPV3_QUERY_HEADER_0_0 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IGMPV3_QUERY_HEADER_0_0").field("_bitfield", &self._bitfield).finish() - } -} -unsafe impl ::windows::core::Abi for IGMPV3_QUERY_HEADER_0_0 { +unsafe impl ::windows::core::Abi for ETHERNET_HEADER { type Abi = Self; } -impl ::core::cmp::PartialEq for IGMPV3_QUERY_HEADER_0_0 { +impl ::core::cmp::PartialEq for ETHERNET_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IGMPV3_QUERY_HEADER_0_0 {} -impl ::core::default::Default for IGMPV3_QUERY_HEADER_0_0 { +impl ::core::cmp::Eq for ETHERNET_HEADER {} +impl ::core::default::Default for ETHERNET_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IGMPV3_QUERY_HEADER_1 { - pub QueriersQueryInterfaceCode: u8, - pub Anonymous: IGMPV3_QUERY_HEADER_1_0, +pub union ETHERNET_HEADER_0 { + pub Type: u16, + pub Length: u16, } -impl ::core::marker::Copy for IGMPV3_QUERY_HEADER_1 {} -impl ::core::clone::Clone for IGMPV3_QUERY_HEADER_1 { +impl ::core::marker::Copy for ETHERNET_HEADER_0 {} +impl ::core::clone::Clone for ETHERNET_HEADER_0 { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IGMPV3_QUERY_HEADER_1 { +unsafe impl ::windows::core::Abi for ETHERNET_HEADER_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IGMPV3_QUERY_HEADER_1 { +impl ::core::cmp::PartialEq for ETHERNET_HEADER_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IGMPV3_QUERY_HEADER_1 {} -impl ::core::default::Default for IGMPV3_QUERY_HEADER_1 { +impl ::core::cmp::Eq for ETHERNET_HEADER_0 {} +impl ::core::default::Default for ETHERNET_HEADER_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IGMPV3_QUERY_HEADER_1_0 { - pub _bitfield: u8, -} -impl ::core::marker::Copy for IGMPV3_QUERY_HEADER_1_0 {} -impl ::core::clone::Clone for IGMPV3_QUERY_HEADER_1_0 { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for IGMPV3_QUERY_HEADER_1_0 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IGMPV3_QUERY_HEADER_1_0").field("_bitfield", &self._bitfield).finish() - } -} -unsafe impl ::windows::core::Abi for IGMPV3_QUERY_HEADER_1_0 { - type Abi = Self; -} -impl ::core::cmp::PartialEq for IGMPV3_QUERY_HEADER_1_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +pub const ETHERNET_TYPE_802_1AD: u32 = 34984u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ETHERNET_TYPE_802_1Q: u32 = 33024u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ETHERNET_TYPE_ARP: u32 = 2054u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ETHERNET_TYPE_IPV4: u32 = 2048u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ETHERNET_TYPE_IPV6: u32 = 34525u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ETHERNET_TYPE_MINIMUM: u32 = 1536u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ETH_LENGTH_OF_HEADER: u32 = 14u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ETH_LENGTH_OF_SNAP_HEADER: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ETH_LENGTH_OF_VLAN_HEADER: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const EXT_LEN_UNIT: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn EnumProtocolsA(lpiprotocols: ::core::option::Option<&i32>, lpprotocolbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: &mut u32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn EnumProtocolsA(lpiprotocols: *const i32, lpprotocolbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: *mut u32) -> i32; } + EnumProtocolsA(::core::mem::transmute(lpiprotocols), ::core::mem::transmute(lpprotocolbuffer), ::core::mem::transmute(lpdwbufferlength)) } -impl ::core::cmp::Eq for IGMPV3_QUERY_HEADER_1_0 {} -impl ::core::default::Default for IGMPV3_QUERY_HEADER_1_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn EnumProtocolsW(lpiprotocols: ::core::option::Option<&i32>, lpprotocolbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: &mut u32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn EnumProtocolsW(lpiprotocols: *const i32, lpprotocolbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: *mut u32) -> i32; } + EnumProtocolsW(::core::mem::transmute(lpiprotocols), ::core::mem::transmute(lpprotocolbuffer), ::core::mem::transmute(lpdwbufferlength)) } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IGMPV3_REPORT_HEADER { - pub Type: u8, - pub Reserved: u8, - pub Checksum: u16, - pub Reserved2: u16, - pub RecordCount: u16, -} -impl ::core::marker::Copy for IGMPV3_REPORT_HEADER {} -impl ::core::clone::Clone for IGMPV3_REPORT_HEADER { +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct FALLBACK_INDEX(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FallbackIndexTcpFastopen: FALLBACK_INDEX = FALLBACK_INDEX(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FallbackIndexMax: FALLBACK_INDEX = FALLBACK_INDEX(1i32); +impl ::core::marker::Copy for FALLBACK_INDEX {} +impl ::core::clone::Clone for FALLBACK_INDEX { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IGMPV3_REPORT_HEADER { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IGMPV3_REPORT_HEADER").field("Type", &self.Type).field("Reserved", &self.Reserved).field("Checksum", &self.Checksum).field("Reserved2", &self.Reserved2).field("RecordCount", &self.RecordCount).finish() +impl ::core::default::Default for FALLBACK_INDEX { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for IGMPV3_REPORT_HEADER { +unsafe impl ::windows::core::Abi for FALLBACK_INDEX { type Abi = Self; } -impl ::core::cmp::PartialEq for IGMPV3_REPORT_HEADER { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for IGMPV3_REPORT_HEADER {} -impl ::core::default::Default for IGMPV3_REPORT_HEADER { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for FALLBACK_INDEX { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("FALLBACK_INDEX").field(&self.0).finish() } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IGMPV3_REPORT_RECORD_HEADER { - pub Type: u8, - pub AuxillaryDataLength: u8, - pub SourceCount: u16, - pub MulticastAddress: IN_ADDR, +pub const FD_ACCEPT: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_ACCEPT_BIT: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_ADDRESS_LIST_CHANGE_BIT: u32 = 9u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_CLOSE: u32 = 32u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_CLOSE_BIT: u32 = 5u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_CONNECT: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_CONNECT_BIT: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_GROUP_QOS_BIT: u32 = 7u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_MAX_EVENTS: u32 = 10u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_OOB: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_OOB_BIT: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_QOS_BIT: u32 = 6u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_READ: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_READ_BIT: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_ROUTING_INTERFACE_CHANGE_BIT: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_SETSIZE: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_WRITE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FD_WRITE_BIT: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FIOASYNC: i32 = -2147195267i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FIONBIO: i32 = -2147195266i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const FIONREAD: i32 = 1074030207i32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct FLOWSPEC { + pub TokenRate: u32, + pub TokenBucketSize: u32, + pub PeakBandwidth: u32, + pub Latency: u32, + pub DelayVariation: u32, + pub ServiceType: u32, + pub MaxSduSize: u32, + pub MinimumPolicedSize: u32, } -impl ::core::marker::Copy for IGMPV3_REPORT_RECORD_HEADER {} -impl ::core::clone::Clone for IGMPV3_REPORT_RECORD_HEADER { +impl ::core::marker::Copy for FLOWSPEC {} +impl ::core::clone::Clone for FLOWSPEC { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IGMPV3_REPORT_RECORD_HEADER { +impl ::core::fmt::Debug for FLOWSPEC { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("FLOWSPEC").field("TokenRate", &self.TokenRate).field("TokenBucketSize", &self.TokenBucketSize).field("PeakBandwidth", &self.PeakBandwidth).field("Latency", &self.Latency).field("DelayVariation", &self.DelayVariation).field("ServiceType", &self.ServiceType).field("MaxSduSize", &self.MaxSduSize).field("MinimumPolicedSize", &self.MinimumPolicedSize).finish() + } +} +unsafe impl ::windows::core::Abi for FLOWSPEC { type Abi = Self; } -impl ::core::cmp::PartialEq for IGMPV3_REPORT_RECORD_HEADER { +impl ::core::cmp::PartialEq for FLOWSPEC { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IGMPV3_REPORT_RECORD_HEADER {} -impl ::core::default::Default for IGMPV3_REPORT_RECORD_HEADER { +impl ::core::cmp::Eq for FLOWSPEC {} +impl ::core::default::Default for FLOWSPEC { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IGMP_HEADER { - pub Anonymous1: IGMP_HEADER_0, - pub Anonymous2: IGMP_HEADER_1, - pub Checksum: u16, - pub MulticastAddress: IN_ADDR, -} -impl ::core::marker::Copy for IGMP_HEADER {} -impl ::core::clone::Clone for IGMP_HEADER { - fn clone(&self) -> Self { - *self +pub const FROM_PROTOCOL_INFO: i32 = -1i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn FreeAddrInfoEx(paddrinfoex: ::core::option::Option<&ADDRINFOEXA>) { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn FreeAddrInfoEx(paddrinfoex: *const ADDRINFOEXA); } + FreeAddrInfoEx(::core::mem::transmute(paddrinfoex)) } -unsafe impl ::windows::core::Abi for IGMP_HEADER { - type Abi = Self; -} -impl ::core::cmp::PartialEq for IGMP_HEADER { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn FreeAddrInfoExW(paddrinfoex: ::core::option::Option<&ADDRINFOEXW>) { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn FreeAddrInfoExW(paddrinfoex: *const ADDRINFOEXW); } + FreeAddrInfoExW(::core::mem::transmute(paddrinfoex)) } -impl ::core::cmp::Eq for IGMP_HEADER {} -impl ::core::default::Default for IGMP_HEADER { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn FreeAddrInfoW(paddrinfo: ::core::option::Option<&ADDRINFOW>) { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn FreeAddrInfoW(paddrinfo: *const ADDRINFOW); } + FreeAddrInfoW(::core::mem::transmute(paddrinfo)) } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IGMP_HEADER_0 { - pub Anonymous: IGMP_HEADER_0_0, - pub VersionType: u8, +pub const GAI_STRERROR_BUFFER_SIZE: u32 = 1024u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct GROUP_FILTER { + pub gf_interface: u32, + pub gf_group: SOCKADDR_STORAGE, + pub gf_fmode: MULTICAST_MODE_TYPE, + pub gf_numsrc: u32, + pub gf_slist: [SOCKADDR_STORAGE; 1], } -impl ::core::marker::Copy for IGMP_HEADER_0 {} -impl ::core::clone::Clone for IGMP_HEADER_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for GROUP_FILTER {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for GROUP_FILTER { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IGMP_HEADER_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for GROUP_FILTER { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("GROUP_FILTER").field("gf_interface", &self.gf_interface).field("gf_group", &self.gf_group).field("gf_fmode", &self.gf_fmode).field("gf_numsrc", &self.gf_numsrc).field("gf_slist", &self.gf_slist).finish() + } +} +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for GROUP_FILTER { type Abi = Self; } -impl ::core::cmp::PartialEq for IGMP_HEADER_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for GROUP_FILTER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IGMP_HEADER_0 {} -impl ::core::default::Default for IGMP_HEADER_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for GROUP_FILTER {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for GROUP_FILTER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IGMP_HEADER_0_0 { - pub _bitfield: u8, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct GROUP_REQ { + pub gr_interface: u32, + pub gr_group: SOCKADDR_STORAGE, } -impl ::core::marker::Copy for IGMP_HEADER_0_0 {} -impl ::core::clone::Clone for IGMP_HEADER_0_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for GROUP_REQ {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for GROUP_REQ { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IGMP_HEADER_0_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for GROUP_REQ { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IGMP_HEADER_0_0").field("_bitfield", &self._bitfield).finish() + f.debug_struct("GROUP_REQ").field("gr_interface", &self.gr_interface).field("gr_group", &self.gr_group).finish() } } -unsafe impl ::windows::core::Abi for IGMP_HEADER_0_0 { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for GROUP_REQ { type Abi = Self; } -impl ::core::cmp::PartialEq for IGMP_HEADER_0_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for GROUP_REQ { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IGMP_HEADER_0_0 {} -impl ::core::default::Default for IGMP_HEADER_0_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for GROUP_REQ {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for GROUP_REQ { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IGMP_HEADER_1 { - pub Reserved: u8, - pub MaxRespTime: u8, - pub Code: u8, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct GROUP_SOURCE_REQ { + pub gsr_interface: u32, + pub gsr_group: SOCKADDR_STORAGE, + pub gsr_source: SOCKADDR_STORAGE, } -impl ::core::marker::Copy for IGMP_HEADER_1 {} -impl ::core::clone::Clone for IGMP_HEADER_1 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for GROUP_SOURCE_REQ {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for GROUP_SOURCE_REQ { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IGMP_HEADER_1 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for GROUP_SOURCE_REQ { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("GROUP_SOURCE_REQ").field("gsr_interface", &self.gsr_interface).field("gsr_group", &self.gsr_group).field("gsr_source", &self.gsr_source).finish() + } +} +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for GROUP_SOURCE_REQ { type Abi = Self; } -impl ::core::cmp::PartialEq for IGMP_HEADER_1 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for GROUP_SOURCE_REQ { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IGMP_HEADER_1 {} -impl ::core::default::Default for IGMP_HEADER_1 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for GROUP_SOURCE_REQ {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for GROUP_SOURCE_REQ { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IGMP_LEAVE_GROUP_TYPE: u32 = 23u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct IGMP_MAX_RESP_CODE_TYPE(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IGMP_MAX_RESP_CODE_TYPE_NORMAL: IGMP_MAX_RESP_CODE_TYPE = IGMP_MAX_RESP_CODE_TYPE(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IGMP_MAX_RESP_CODE_TYPE_FLOAT: IGMP_MAX_RESP_CODE_TYPE = IGMP_MAX_RESP_CODE_TYPE(1i32); -impl ::core::marker::Copy for IGMP_MAX_RESP_CODE_TYPE {} -impl ::core::clone::Clone for IGMP_MAX_RESP_CODE_TYPE { - fn clone(&self) -> Self { - *self +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetAcceptExSockaddrs(lpoutputbuffer: *const ::core::ffi::c_void, dwreceivedatalength: u32, dwlocaladdresslength: u32, dwremoteaddresslength: u32, localsockaddr: &mut *mut SOCKADDR, localsockaddrlength: &mut i32, remotesockaddr: &mut *mut SOCKADDR, remotesockaddrlength: &mut i32) { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetAcceptExSockaddrs(lpoutputbuffer: *const ::core::ffi::c_void, dwreceivedatalength: u32, dwlocaladdresslength: u32, dwremoteaddresslength: u32, localsockaddr: *mut *mut SOCKADDR, localsockaddrlength: *mut i32, remotesockaddr: *mut *mut SOCKADDR, remotesockaddrlength: *mut i32); } + GetAcceptExSockaddrs(::core::mem::transmute(lpoutputbuffer), dwreceivedatalength, dwlocaladdresslength, dwremoteaddresslength, ::core::mem::transmute(localsockaddr), ::core::mem::transmute(localsockaddrlength), ::core::mem::transmute(remotesockaddr), ::core::mem::transmute(remotesockaddrlength)) } -impl ::core::default::Default for IGMP_MAX_RESP_CODE_TYPE { - fn default() -> Self { - Self(0) +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn GetAddrInfoExA<'a, P0, P1>(pname: P0, pservicename: P1, dwnamespace: u32, lpnspid: ::core::option::Option<&::windows::core::GUID>, hints: ::core::option::Option<&ADDRINFOEXA>, ppresult: &mut *mut ADDRINFOEXA, timeout: ::core::option::Option<&timeval>, lpoverlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPLOOKUPSERVICE_COMPLETION_ROUTINE, lpnamehandle: ::core::option::Option<&mut super::super::Foundation::HANDLE>) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCSTR>, + P1: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetAddrInfoExA(pname: ::windows::core::PCSTR, pservicename: ::windows::core::PCSTR, dwnamespace: u32, lpnspid: *const ::windows::core::GUID, hints: *const ADDRINFOEXA, ppresult: *mut *mut ADDRINFOEXA, timeout: *const timeval, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void, lpnamehandle: *mut super::super::Foundation::HANDLE) -> i32; } + GetAddrInfoExA(pname.into(), pservicename.into(), dwnamespace, ::core::mem::transmute(lpnspid), ::core::mem::transmute(hints), ::core::mem::transmute(ppresult), ::core::mem::transmute(timeout), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine), ::core::mem::transmute(lpnamehandle)) } -unsafe impl ::windows::core::Abi for IGMP_MAX_RESP_CODE_TYPE { - type Abi = Self; -} -impl ::core::fmt::Debug for IGMP_MAX_RESP_CODE_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IGMP_MAX_RESP_CODE_TYPE").field(&self.0).finish() +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetAddrInfoExCancel(lphandle: &super::super::Foundation::HANDLE) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetAddrInfoExCancel(lphandle: *const super::super::Foundation::HANDLE) -> i32; } + GetAddrInfoExCancel(::core::mem::transmute(lphandle)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IGMP_QUERY_TYPE: u32 = 17u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IGMP_VERSION1_REPORT_TYPE: u32 = 18u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IGMP_VERSION2_REPORT_TYPE: u32 = 22u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IGMP_VERSION3_REPORT_TYPE: u32 = 34u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IMPLINK_HIGHEXPER: u32 = 158u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IMPLINK_IP: u32 = 155u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IMPLINK_LOWEXPER: u32 = 156u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN4ADDR_LINKLOCALPREFIX_LENGTH: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN4ADDR_LOOPBACK: u32 = 16777343u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN4ADDR_LOOPBACKPREFIX_LENGTH: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN4ADDR_MULTICASTPREFIX_LENGTH: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN6ADDR_6TO4PREFIX_LENGTH: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN6ADDR_LINKLOCALPREFIX_LENGTH: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN6ADDR_MULTICASTPREFIX_LENGTH: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN6ADDR_SOLICITEDNODEMULTICASTPREFIX_LENGTH: u32 = 104u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN6ADDR_TEREDOPREFIX_LENGTH: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN6ADDR_V4MAPPEDPREFIX_LENGTH: u32 = 96u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IN6_ADDR { - pub u: IN6_ADDR_0, -} -impl ::core::marker::Copy for IN6_ADDR {} -impl ::core::clone::Clone for IN6_ADDR { - fn clone(&self) -> Self { - *self +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn GetAddrInfoExOverlappedResult(lpoverlapped: &super::super::System::IO::OVERLAPPED) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetAddrInfoExOverlappedResult(lpoverlapped: *const super::super::System::IO::OVERLAPPED) -> i32; } + GetAddrInfoExOverlappedResult(::core::mem::transmute(lpoverlapped)) } -unsafe impl ::windows::core::Abi for IN6_ADDR { - type Abi = Self; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn GetAddrInfoExW<'a, P0, P1>(pname: P0, pservicename: P1, dwnamespace: u32, lpnspid: ::core::option::Option<&::windows::core::GUID>, hints: ::core::option::Option<&ADDRINFOEXW>, ppresult: &mut *mut ADDRINFOEXW, timeout: ::core::option::Option<&timeval>, lpoverlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPLOOKUPSERVICE_COMPLETION_ROUTINE, lphandle: ::core::option::Option<&mut super::super::Foundation::HANDLE>) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, + P1: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetAddrInfoExW(pname: ::windows::core::PCWSTR, pservicename: ::windows::core::PCWSTR, dwnamespace: u32, lpnspid: *const ::windows::core::GUID, hints: *const ADDRINFOEXW, ppresult: *mut *mut ADDRINFOEXW, timeout: *const timeval, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void, lphandle: *mut super::super::Foundation::HANDLE) -> i32; + } + GetAddrInfoExW(pname.into(), pservicename.into(), dwnamespace, ::core::mem::transmute(lpnspid), ::core::mem::transmute(hints), ::core::mem::transmute(ppresult), ::core::mem::transmute(timeout), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine), ::core::mem::transmute(lphandle)) } -impl ::core::cmp::PartialEq for IN6_ADDR { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetAddrInfoW<'a, P0, P1>(pnodename: P0, pservicename: P1, phints: ::core::option::Option<&ADDRINFOW>, ppresult: &mut *mut ADDRINFOW) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, + P1: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetAddrInfoW(pnodename: ::windows::core::PCWSTR, pservicename: ::windows::core::PCWSTR, phints: *const ADDRINFOW, ppresult: *mut *mut ADDRINFOW) -> i32; } + GetAddrInfoW(pnodename.into(), pservicename.into(), ::core::mem::transmute(phints), ::core::mem::transmute(ppresult)) } -impl ::core::cmp::Eq for IN6_ADDR {} -impl ::core::default::Default for IN6_ADDR { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetAddressByNameA<'a, P0>(dwnamespace: u32, lpservicetype: &::windows::core::GUID, lpservicename: P0, lpiprotocols: ::core::option::Option<&i32>, dwresolution: u32, lpserviceasyncinfo: ::core::option::Option<&SERVICE_ASYNC_INFO>, lpcsaddrbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: &mut u32, lpaliasbuffer: ::windows::core::PSTR, lpdwaliasbufferlength: &mut u32) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetAddressByNameA(dwnamespace: u32, lpservicetype: *const ::windows::core::GUID, lpservicename: ::windows::core::PCSTR, lpiprotocols: *const i32, dwresolution: u32, lpserviceasyncinfo: *const SERVICE_ASYNC_INFO, lpcsaddrbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: *mut u32, lpaliasbuffer: ::windows::core::PSTR, lpdwaliasbufferlength: *mut u32) -> i32; } + GetAddressByNameA(dwnamespace, ::core::mem::transmute(lpservicetype), lpservicename.into(), ::core::mem::transmute(lpiprotocols), dwresolution, ::core::mem::transmute(lpserviceasyncinfo), ::core::mem::transmute(lpcsaddrbuffer), ::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpaliasbuffer), ::core::mem::transmute(lpdwaliasbufferlength)) } -impl ::core::convert::From<::std::net::Ipv6Addr> for IN6_ADDR { - fn from(addr: ::std::net::Ipv6Addr) -> Self { - Self { u: IN6_ADDR_0 { Byte: addr.octets() } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetAddressByNameW<'a, P0>(dwnamespace: u32, lpservicetype: &::windows::core::GUID, lpservicename: P0, lpiprotocols: ::core::option::Option<&i32>, dwresolution: u32, lpserviceasyncinfo: ::core::option::Option<&SERVICE_ASYNC_INFO>, lpcsaddrbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: &mut u32, lpaliasbuffer: ::windows::core::PWSTR, lpdwaliasbufferlength: &mut u32) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetAddressByNameW(dwnamespace: u32, lpservicetype: *const ::windows::core::GUID, lpservicename: ::windows::core::PCWSTR, lpiprotocols: *const i32, dwresolution: u32, lpserviceasyncinfo: *const SERVICE_ASYNC_INFO, lpcsaddrbuffer: *mut ::core::ffi::c_void, lpdwbufferlength: *mut u32, lpaliasbuffer: ::windows::core::PWSTR, lpdwaliasbufferlength: *mut u32) -> i32; } + GetAddressByNameW(dwnamespace, ::core::mem::transmute(lpservicetype), lpservicename.into(), ::core::mem::transmute(lpiprotocols), dwresolution, ::core::mem::transmute(lpserviceasyncinfo), ::core::mem::transmute(lpcsaddrbuffer), ::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpaliasbuffer), ::core::mem::transmute(lpdwaliasbufferlength)) } -impl ::core::convert::From for ::std::net::Ipv6Addr { - fn from(in6_addr: IN6_ADDR) -> Self { - Self::from(unsafe { in6_addr.u.Byte }) +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn GetHostNameW(name: &mut [u16]) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetHostNameW(name: ::windows::core::PWSTR, namelen: i32) -> i32; } + GetHostNameW(::core::mem::transmute(name.as_ptr()), name.len() as _) } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IN6_ADDR_0 { - pub Byte: [u8; 16], - pub Word: [u16; 8], +#[inline] +pub unsafe fn GetNameByTypeA(lpservicetype: &::windows::core::GUID, lpservicename: &mut [u8]) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetNameByTypeA(lpservicetype: *const ::windows::core::GUID, lpservicename: ::windows::core::PSTR, dwnamelength: u32) -> i32; + } + GetNameByTypeA(::core::mem::transmute(lpservicetype), ::core::mem::transmute(lpservicename.as_ptr()), lpservicename.len() as _) } -impl ::core::marker::Copy for IN6_ADDR_0 {} -impl ::core::clone::Clone for IN6_ADDR_0 { - fn clone(&self) -> Self { - *self +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn GetNameByTypeW(lpservicetype: &::windows::core::GUID, lpservicename: &mut [u8]) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetNameByTypeW(lpservicetype: *const ::windows::core::GUID, lpservicename: ::windows::core::PWSTR, dwnamelength: u32) -> i32; } + GetNameByTypeW(::core::mem::transmute(lpservicetype), ::core::mem::transmute(lpservicename.as_ptr()), lpservicename.len() as _) } -unsafe impl ::windows::core::Abi for IN6_ADDR_0 { - type Abi = Self; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetNameInfoW(psockaddr: &[u8], pnodebuffer: ::core::option::Option<&mut [u16]>, pservicebuffer: ::core::option::Option<&mut [u16]>, flags: i32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetNameInfoW(psockaddr: *const SOCKADDR, sockaddrlength: i32, pnodebuffer: ::windows::core::PWSTR, nodebuffersize: u32, pservicebuffer: ::windows::core::PWSTR, servicebuffersize: u32, flags: i32) -> i32; + } + GetNameInfoW(::core::mem::transmute(psockaddr.as_ptr()), psockaddr.len() as _, ::core::mem::transmute(pnodebuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pnodebuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pservicebuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pservicebuffer.as_deref().map_or(0, |slice| slice.len() as _), flags) } -impl ::core::cmp::PartialEq for IN6_ADDR_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetServiceA<'a, P0>(dwnamespace: u32, lpguid: &::windows::core::GUID, lpservicename: P0, dwproperties: u32, lpbuffer: *mut ::core::ffi::c_void, lpdwbuffersize: &mut u32, lpserviceasyncinfo: ::core::option::Option<&SERVICE_ASYNC_INFO>) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetServiceA(dwnamespace: u32, lpguid: *const ::windows::core::GUID, lpservicename: ::windows::core::PCSTR, dwproperties: u32, lpbuffer: *mut ::core::ffi::c_void, lpdwbuffersize: *mut u32, lpserviceasyncinfo: *const SERVICE_ASYNC_INFO) -> i32; } + GetServiceA(dwnamespace, ::core::mem::transmute(lpguid), lpservicename.into(), dwproperties, ::core::mem::transmute(lpbuffer), ::core::mem::transmute(lpdwbuffersize), ::core::mem::transmute(lpserviceasyncinfo)) } -impl ::core::cmp::Eq for IN6_ADDR_0 {} -impl ::core::default::Default for IN6_ADDR_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetServiceW<'a, P0>(dwnamespace: u32, lpguid: &::windows::core::GUID, lpservicename: P0, dwproperties: u32, lpbuffer: *mut ::core::ffi::c_void, lpdwbuffersize: &mut u32, lpserviceasyncinfo: ::core::option::Option<&SERVICE_ASYNC_INFO>) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetServiceW(dwnamespace: u32, lpguid: *const ::windows::core::GUID, lpservicename: ::windows::core::PCWSTR, dwproperties: u32, lpbuffer: *mut ::core::ffi::c_void, lpdwbuffersize: *mut u32, lpserviceasyncinfo: *const SERVICE_ASYNC_INFO) -> i32; } + GetServiceW(dwnamespace, ::core::mem::transmute(lpguid), lpservicename.into(), dwproperties, ::core::mem::transmute(lpbuffer), ::core::mem::transmute(lpdwbuffersize), ::core::mem::transmute(lpserviceasyncinfo)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN6_EMBEDDEDV4_BITS_IN_BYTE: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN6_EMBEDDEDV4_UOCTET_POSITION: u32 = 8u32; -#[repr(C)] +#[inline] +pub unsafe fn GetTypeByNameA<'a, P0>(lpservicename: P0, lpservicetype: &mut ::windows::core::GUID) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetTypeByNameA(lpservicename: ::windows::core::PCSTR, lpservicetype: *mut ::windows::core::GUID) -> i32; + } + GetTypeByNameA(lpservicename.into(), ::core::mem::transmute(lpservicetype)) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IN6_PKTINFO { - pub ipi6_addr: IN6_ADDR, - pub ipi6_ifindex: u32, +#[inline] +pub unsafe fn GetTypeByNameW<'a, P0>(lpservicename: P0, lpservicetype: &mut ::windows::core::GUID) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetTypeByNameW(lpservicename: ::windows::core::PCWSTR, lpservicetype: *mut ::windows::core::GUID) -> i32; + } + GetTypeByNameW(lpservicename.into(), ::core::mem::transmute(lpservicetype)) } -impl ::core::marker::Copy for IN6_PKTINFO {} -impl ::core::clone::Clone for IN6_PKTINFO { +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HWSAEVENT(pub isize); +impl HWSAEVENT { + pub fn is_invalid(&self) -> bool { + self.0 == -1 || self.0 == 0 + } +} +impl ::core::default::Default for HWSAEVENT { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for HWSAEVENT { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IN6_PKTINFO { - type Abi = Self; -} -impl ::core::cmp::PartialEq for IN6_PKTINFO { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::marker::Copy for HWSAEVENT {} +impl ::core::fmt::Debug for HWSAEVENT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HWSAEVENT").field(&self.0).finish() } } -impl ::core::cmp::Eq for IN6_PKTINFO {} -impl ::core::default::Default for IN6_PKTINFO { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::convert::From<::core::option::Option> for HWSAEVENT { + fn from(optional: ::core::option::Option) -> HWSAEVENT { + optional.unwrap_or_default() } } +unsafe impl ::windows::core::Abi for HWSAEVENT { + type Abi = Self; +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const INADDR_LOOPBACK: u32 = 2130706433u32; +pub const IAS_ATTRIB_INT: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const INADDR_NONE: u32 = 4294967295u32; +pub const IAS_ATTRIB_NO_ATTRIB: u32 = 0u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const INCL_WINSOCK_API_PROTOTYPES: u32 = 1u32; +pub const IAS_ATTRIB_NO_CLASS: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const INCL_WINSOCK_API_TYPEDEFS: u32 = 0u32; +pub const IAS_ATTRIB_OCTETSEQ: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const INET6_ADDRSTRLEN: u32 = 65u32; +pub const IAS_ATTRIB_STR: u32 = 3u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const INET_ADDRSTRLEN: u32 = 22u32; -#[repr(C)] +pub const IAS_MAX_ATTRIBNAME: u32 = 256u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct INET_PORT_RANGE { - pub StartPort: u16, - pub NumberOfPorts: u16, -} -impl ::core::marker::Copy for INET_PORT_RANGE {} -impl ::core::clone::Clone for INET_PORT_RANGE { +pub const IAS_MAX_CLASSNAME: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IAS_MAX_OCTET_STRING: u32 = 1024u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IAS_MAX_USER_STRING: u32 = 256u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct ICMP4_TIME_EXCEED_CODE(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_TIME_EXCEED_TRANSIT: ICMP4_TIME_EXCEED_CODE = ICMP4_TIME_EXCEED_CODE(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_TIME_EXCEED_REASSEMBLY: ICMP4_TIME_EXCEED_CODE = ICMP4_TIME_EXCEED_CODE(1i32); +impl ::core::marker::Copy for ICMP4_TIME_EXCEED_CODE {} +impl ::core::clone::Clone for ICMP4_TIME_EXCEED_CODE { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for INET_PORT_RANGE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("INET_PORT_RANGE").field("StartPort", &self.StartPort).field("NumberOfPorts", &self.NumberOfPorts).finish() +impl ::core::default::Default for ICMP4_TIME_EXCEED_CODE { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for INET_PORT_RANGE { +unsafe impl ::windows::core::Abi for ICMP4_TIME_EXCEED_CODE { type Abi = Self; } -impl ::core::cmp::PartialEq for INET_PORT_RANGE { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::fmt::Debug for ICMP4_TIME_EXCEED_CODE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("ICMP4_TIME_EXCEED_CODE").field(&self.0).finish() } } -impl ::core::cmp::Eq for INET_PORT_RANGE {} -impl ::core::default::Default for INET_PORT_RANGE { +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct ICMP4_UNREACH_CODE(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_UNREACH_NET: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_UNREACH_HOST: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_UNREACH_PROTOCOL: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_UNREACH_PORT: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_UNREACH_FRAG_NEEDED: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(4i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_UNREACH_SOURCEROUTE_FAILED: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(5i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_UNREACH_NET_UNKNOWN: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(6i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_UNREACH_HOST_UNKNOWN: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(7i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_UNREACH_ISOLATED: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(8i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_UNREACH_NET_ADMIN: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(9i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_UNREACH_HOST_ADMIN: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(10i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_UNREACH_NET_TOS: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(11i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_UNREACH_HOST_TOS: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(12i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP4_UNREACH_ADMIN: ICMP4_UNREACH_CODE = ICMP4_UNREACH_CODE(13i32); +impl ::core::marker::Copy for ICMP4_UNREACH_CODE {} +impl ::core::clone::Clone for ICMP4_UNREACH_CODE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for ICMP4_UNREACH_CODE { fn default() -> Self { - unsafe { ::core::mem::zeroed() } + Self(0) + } +} +unsafe impl ::windows::core::Abi for ICMP4_UNREACH_CODE { + type Abi = Self; +} +impl ::core::fmt::Debug for ICMP4_UNREACH_CODE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("ICMP4_UNREACH_CODE").field(&self.0).finish() } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP6_DST_UNREACH_ADDR: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP6_DST_UNREACH_ADMIN: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP6_DST_UNREACH_BEYONDSCOPE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP6_DST_UNREACH_NOPORT: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP6_DST_UNREACH_NOROUTE: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP6_PARAMPROB_HEADER: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP6_PARAMPROB_NEXTHEADER: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP6_PARAMPROB_OPTION: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP6_TIME_EXCEED_REASSEMBLY: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMP6_TIME_EXCEED_TRANSIT: u32 = 0u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct INET_PORT_RESERVATION_INFORMATION { - pub OwningPid: u32, +pub struct ICMPV4_ADDRESS_MASK_MESSAGE { + pub Header: ICMP_MESSAGE, + pub AddressMask: u32, } -impl ::core::marker::Copy for INET_PORT_RESERVATION_INFORMATION {} -impl ::core::clone::Clone for INET_PORT_RESERVATION_INFORMATION { +impl ::core::marker::Copy for ICMPV4_ADDRESS_MASK_MESSAGE {} +impl ::core::clone::Clone for ICMPV4_ADDRESS_MASK_MESSAGE { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for INET_PORT_RESERVATION_INFORMATION { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("INET_PORT_RESERVATION_INFORMATION").field("OwningPid", &self.OwningPid).finish() - } -} -unsafe impl ::windows::core::Abi for INET_PORT_RESERVATION_INFORMATION { +unsafe impl ::windows::core::Abi for ICMPV4_ADDRESS_MASK_MESSAGE { type Abi = Self; } -impl ::core::cmp::PartialEq for INET_PORT_RESERVATION_INFORMATION { +impl ::core::cmp::PartialEq for ICMPV4_ADDRESS_MASK_MESSAGE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for INET_PORT_RESERVATION_INFORMATION {} -impl ::core::default::Default for INET_PORT_RESERVATION_INFORMATION { +impl ::core::cmp::Eq for ICMPV4_ADDRESS_MASK_MESSAGE {} +impl ::core::default::Default for ICMPV4_ADDRESS_MASK_MESSAGE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ICMPV4_INVALID_PREFERENCE_LEVEL: u32 = 2147483648u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct INET_PORT_RESERVATION_INSTANCE { - pub Reservation: INET_PORT_RANGE, - pub Token: INET_PORT_RESERVATION_TOKEN, +pub struct ICMPV4_ROUTER_ADVERT_ENTRY { + pub RouterAdvertAddr: IN_ADDR, + pub PreferenceLevel: i32, } -impl ::core::marker::Copy for INET_PORT_RESERVATION_INSTANCE {} -impl ::core::clone::Clone for INET_PORT_RESERVATION_INSTANCE { +impl ::core::marker::Copy for ICMPV4_ROUTER_ADVERT_ENTRY {} +impl ::core::clone::Clone for ICMPV4_ROUTER_ADVERT_ENTRY { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for INET_PORT_RESERVATION_INSTANCE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("INET_PORT_RESERVATION_INSTANCE").field("Reservation", &self.Reservation).field("Token", &self.Token).finish() - } -} -unsafe impl ::windows::core::Abi for INET_PORT_RESERVATION_INSTANCE { +unsafe impl ::windows::core::Abi for ICMPV4_ROUTER_ADVERT_ENTRY { type Abi = Self; } -impl ::core::cmp::PartialEq for INET_PORT_RESERVATION_INSTANCE { +impl ::core::cmp::PartialEq for ICMPV4_ROUTER_ADVERT_ENTRY { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for INET_PORT_RESERVATION_INSTANCE {} -impl ::core::default::Default for INET_PORT_RESERVATION_INSTANCE { +impl ::core::cmp::Eq for ICMPV4_ROUTER_ADVERT_ENTRY {} +impl ::core::default::Default for ICMPV4_ROUTER_ADVERT_ENTRY { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct INET_PORT_RESERVATION_TOKEN { - pub Token: u64, +pub struct ICMPV4_ROUTER_ADVERT_HEADER { + pub RaHeader: ICMP_MESSAGE, } -impl ::core::marker::Copy for INET_PORT_RESERVATION_TOKEN {} -impl ::core::clone::Clone for INET_PORT_RESERVATION_TOKEN { +impl ::core::marker::Copy for ICMPV4_ROUTER_ADVERT_HEADER {} +impl ::core::clone::Clone for ICMPV4_ROUTER_ADVERT_HEADER { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for INET_PORT_RESERVATION_TOKEN { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("INET_PORT_RESERVATION_TOKEN").field("Token", &self.Token).finish() - } -} -unsafe impl ::windows::core::Abi for INET_PORT_RESERVATION_TOKEN { +unsafe impl ::windows::core::Abi for ICMPV4_ROUTER_ADVERT_HEADER { type Abi = Self; } -impl ::core::cmp::PartialEq for INET_PORT_RESERVATION_TOKEN { +impl ::core::cmp::PartialEq for ICMPV4_ROUTER_ADVERT_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for INET_PORT_RESERVATION_TOKEN {} -impl ::core::default::Default for INET_PORT_RESERVATION_TOKEN { +impl ::core::cmp::Eq for ICMPV4_ROUTER_ADVERT_HEADER {} +impl ::core::default::Default for ICMPV4_ROUTER_ADVERT_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct INTERFACE_INFO { - pub iiFlags: u32, - pub iiAddress: sockaddr_gen, - pub iiBroadcastAddress: sockaddr_gen, - pub iiNetmask: sockaddr_gen, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ICMPV4_ROUTER_SOLICIT { + pub RsHeader: ICMP_MESSAGE, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for INTERFACE_INFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for INTERFACE_INFO { +impl ::core::marker::Copy for ICMPV4_ROUTER_SOLICIT {} +impl ::core::clone::Clone for ICMPV4_ROUTER_SOLICIT { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for INTERFACE_INFO { +unsafe impl ::windows::core::Abi for ICMPV4_ROUTER_SOLICIT { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for INTERFACE_INFO { +impl ::core::cmp::PartialEq for ICMPV4_ROUTER_SOLICIT { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for INTERFACE_INFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for INTERFACE_INFO { +impl ::core::cmp::Eq for ICMPV4_ROUTER_SOLICIT {} +impl ::core::default::Default for ICMPV4_ROUTER_SOLICIT { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct INTERFACE_INFO_EX { - pub iiFlags: u32, - pub iiAddress: SOCKET_ADDRESS, - pub iiBroadcastAddress: SOCKET_ADDRESS, - pub iiNetmask: SOCKET_ADDRESS, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ICMPV4_TIMESTAMP_MESSAGE { + pub Header: ICMP_MESSAGE, + pub OriginateTimestamp: u32, + pub ReceiveTimestamp: u32, + pub TransmitTimestamp: u32, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for INTERFACE_INFO_EX {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for INTERFACE_INFO_EX { +impl ::core::marker::Copy for ICMPV4_TIMESTAMP_MESSAGE {} +impl ::core::clone::Clone for ICMPV4_TIMESTAMP_MESSAGE { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for INTERFACE_INFO_EX { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("INTERFACE_INFO_EX").field("iiFlags", &self.iiFlags).field("iiAddress", &self.iiAddress).field("iiBroadcastAddress", &self.iiBroadcastAddress).field("iiNetmask", &self.iiNetmask).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for INTERFACE_INFO_EX { +unsafe impl ::windows::core::Abi for ICMPV4_TIMESTAMP_MESSAGE { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for INTERFACE_INFO_EX { +impl ::core::cmp::PartialEq for ICMPV4_TIMESTAMP_MESSAGE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for INTERFACE_INFO_EX {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for INTERFACE_INFO_EX { +impl ::core::cmp::Eq for ICMPV4_TIMESTAMP_MESSAGE {} +impl ::core::default::Default for ICMPV4_TIMESTAMP_MESSAGE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const INVALID_SOCKET: SOCKET = SOCKET(-1i32 as _); +pub const ICMPV6_ECHO_REQUEST_FLAG_REVERSE: u32 = 1u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IN_ADDR { - pub S_un: IN_ADDR_0, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct ICMP_ERROR_INFO { + pub srcaddress: SOCKADDR_INET, + pub protocol: IPPROTO, + pub r#type: u8, + pub code: u8, } -impl ::core::marker::Copy for IN_ADDR {} -impl ::core::clone::Clone for IN_ADDR { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for ICMP_ERROR_INFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for ICMP_ERROR_INFO { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IN_ADDR { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for ICMP_ERROR_INFO { type Abi = Self; } -impl ::core::cmp::PartialEq for IN_ADDR { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for ICMP_ERROR_INFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IN_ADDR {} -impl ::core::default::Default for IN_ADDR { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for ICMP_ERROR_INFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for ICMP_ERROR_INFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -impl ::core::convert::From<::std::net::Ipv4Addr> for IN_ADDR { - fn from(addr: ::std::net::Ipv4Addr) -> Self { - Self { S_un: IN_ADDR_0 { S_addr: u32::from(addr).to_be() } } - } -} -impl ::core::convert::From for ::std::net::Ipv4Addr { - fn from(in_addr: IN_ADDR) -> Self { - Self::from(u32::from_be(unsafe { in_addr.S_un.S_addr })) - } -} #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IN_ADDR_0 { - pub S_un_b: IN_ADDR_0_0, - pub S_un_w: IN_ADDR_0_1, - pub S_addr: u32, +pub struct ICMP_HEADER { + pub Type: u8, + pub Code: u8, + pub Checksum: u16, } -impl ::core::marker::Copy for IN_ADDR_0 {} -impl ::core::clone::Clone for IN_ADDR_0 { +impl ::core::marker::Copy for ICMP_HEADER {} +impl ::core::clone::Clone for ICMP_HEADER { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IN_ADDR_0 { +impl ::core::fmt::Debug for ICMP_HEADER { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ICMP_HEADER").field("Type", &self.Type).field("Code", &self.Code).field("Checksum", &self.Checksum).finish() + } +} +unsafe impl ::windows::core::Abi for ICMP_HEADER { type Abi = Self; } -impl ::core::cmp::PartialEq for IN_ADDR_0 { +impl ::core::cmp::PartialEq for ICMP_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IN_ADDR_0 {} -impl ::core::default::Default for IN_ADDR_0 { +impl ::core::cmp::Eq for ICMP_HEADER {} +impl ::core::default::Default for ICMP_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IN_ADDR_0_0 { - pub s_b1: u8, - pub s_b2: u8, - pub s_b3: u8, - pub s_b4: u8, +pub struct ICMP_MESSAGE { + pub Header: ICMP_HEADER, + pub Data: ICMP_MESSAGE_0, } -impl ::core::marker::Copy for IN_ADDR_0_0 {} -impl ::core::clone::Clone for IN_ADDR_0_0 { +impl ::core::marker::Copy for ICMP_MESSAGE {} +impl ::core::clone::Clone for ICMP_MESSAGE { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IN_ADDR_0_0 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IN_ADDR_0_0").field("s_b1", &self.s_b1).field("s_b2", &self.s_b2).field("s_b3", &self.s_b3).field("s_b4", &self.s_b4).finish() - } -} -unsafe impl ::windows::core::Abi for IN_ADDR_0_0 { +unsafe impl ::windows::core::Abi for ICMP_MESSAGE { type Abi = Self; } -impl ::core::cmp::PartialEq for IN_ADDR_0_0 { +impl ::core::cmp::PartialEq for ICMP_MESSAGE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IN_ADDR_0_0 {} -impl ::core::default::Default for IN_ADDR_0_0 { +impl ::core::cmp::Eq for ICMP_MESSAGE {} +impl ::core::default::Default for ICMP_MESSAGE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IN_ADDR_0_1 { - pub s_w1: u16, - pub s_w2: u16, +pub union ICMP_MESSAGE_0 { + pub Data32: [u32; 1], + pub Data16: [u16; 2], + pub Data8: [u8; 4], } -impl ::core::marker::Copy for IN_ADDR_0_1 {} -impl ::core::clone::Clone for IN_ADDR_0_1 { +impl ::core::marker::Copy for ICMP_MESSAGE_0 {} +impl ::core::clone::Clone for ICMP_MESSAGE_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IN_ADDR_0_1 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IN_ADDR_0_1").field("s_w1", &self.s_w1).field("s_w2", &self.s_w2).finish() - } -} -unsafe impl ::windows::core::Abi for IN_ADDR_0_1 { +unsafe impl ::windows::core::Abi for ICMP_MESSAGE_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IN_ADDR_0_1 { +impl ::core::cmp::PartialEq for ICMP_MESSAGE_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IN_ADDR_0_1 {} -impl ::core::default::Default for IN_ADDR_0_1 { +impl ::core::cmp::Eq for ICMP_MESSAGE_0 {} +impl ::core::default::Default for ICMP_MESSAGE_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN_CLASSA_HOST: u32 = 16777215u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN_CLASSA_MAX: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN_CLASSA_NET: u32 = 4278190080u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN_CLASSA_NSHIFT: u32 = 24u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN_CLASSB_HOST: u32 = 65535u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN_CLASSB_MAX: u32 = 65536u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN_CLASSB_NET: u32 = 4294901760u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN_CLASSB_NSHIFT: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN_CLASSC_HOST: u32 = 255u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN_CLASSC_NET: u32 = 4294967040u32; +pub const IFF_BROADCAST: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN_CLASSC_NSHIFT: u32 = 8u32; +pub const IFF_LOOPBACK: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN_CLASSD_HOST: u32 = 268435455u32; +pub const IFF_MULTICAST: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN_CLASSD_NET: u32 = 4026531840u32; +pub const IFF_POINTTOPOINT: u32 = 8u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IN_CLASSD_NSHIFT: u32 = 28u32; +pub const IFF_UP: u32 = 1u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IN_PKTINFO { - pub ipi_addr: IN_ADDR, - pub ipi_ifindex: u32, +pub struct IGMPV3_QUERY_HEADER { + pub Type: u8, + pub Anonymous1: IGMPV3_QUERY_HEADER_0, + pub Checksum: u16, + pub MulticastAddress: IN_ADDR, + pub _bitfield: u8, + pub Anonymous2: IGMPV3_QUERY_HEADER_1, + pub SourceCount: u16, } -impl ::core::marker::Copy for IN_PKTINFO {} -impl ::core::clone::Clone for IN_PKTINFO { +impl ::core::marker::Copy for IGMPV3_QUERY_HEADER {} +impl ::core::clone::Clone for IGMPV3_QUERY_HEADER { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IN_PKTINFO { +unsafe impl ::windows::core::Abi for IGMPV3_QUERY_HEADER { type Abi = Self; } -impl ::core::cmp::PartialEq for IN_PKTINFO { +impl ::core::cmp::PartialEq for IGMPV3_QUERY_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IN_PKTINFO {} -impl ::core::default::Default for IN_PKTINFO { +impl ::core::cmp::Eq for IGMPV3_QUERY_HEADER {} +impl ::core::default::Default for IGMPV3_QUERY_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IN_PKTINFO_EX { - pub pkt_info: IN_PKTINFO, - pub scope_id: SCOPE_ID, +pub union IGMPV3_QUERY_HEADER_0 { + pub MaxRespCode: u8, + pub Anonymous: IGMPV3_QUERY_HEADER_0_0, } -impl ::core::marker::Copy for IN_PKTINFO_EX {} -impl ::core::clone::Clone for IN_PKTINFO_EX { +impl ::core::marker::Copy for IGMPV3_QUERY_HEADER_0 {} +impl ::core::clone::Clone for IGMPV3_QUERY_HEADER_0 { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IN_PKTINFO_EX { +unsafe impl ::windows::core::Abi for IGMPV3_QUERY_HEADER_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IN_PKTINFO_EX { +impl ::core::cmp::PartialEq for IGMPV3_QUERY_HEADER_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IN_PKTINFO_EX {} -impl ::core::default::Default for IN_PKTINFO_EX { +impl ::core::cmp::Eq for IGMPV3_QUERY_HEADER_0 {} +impl ::core::default::Default for IGMPV3_QUERY_HEADER_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IN_RECVERR { - pub protocol: IPPROTO, - pub info: u32, - pub r#type: u8, - pub code: u8, +pub struct IGMPV3_QUERY_HEADER_0_0 { + pub _bitfield: u8, } -impl ::core::marker::Copy for IN_RECVERR {} -impl ::core::clone::Clone for IN_RECVERR { +impl ::core::marker::Copy for IGMPV3_QUERY_HEADER_0_0 {} +impl ::core::clone::Clone for IGMPV3_QUERY_HEADER_0_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IN_RECVERR { +impl ::core::fmt::Debug for IGMPV3_QUERY_HEADER_0_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IN_RECVERR").field("protocol", &self.protocol).field("info", &self.info).field("type", &self.r#type).field("code", &self.code).finish() + f.debug_struct("IGMPV3_QUERY_HEADER_0_0").field("_bitfield", &self._bitfield).finish() } } -unsafe impl ::windows::core::Abi for IN_RECVERR { +unsafe impl ::windows::core::Abi for IGMPV3_QUERY_HEADER_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IN_RECVERR { +impl ::core::cmp::PartialEq for IGMPV3_QUERY_HEADER_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IN_RECVERR {} -impl ::core::default::Default for IN_RECVERR { +impl ::core::cmp::Eq for IGMPV3_QUERY_HEADER_0_0 {} +impl ::core::default::Default for IGMPV3_QUERY_HEADER_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IOCPARM_MASK: u32 = 127u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IOC_IN: u32 = 2147483648u32; +pub union IGMPV3_QUERY_HEADER_1 { + pub QueriersQueryInterfaceCode: u8, + pub Anonymous: IGMPV3_QUERY_HEADER_1_0, +} +impl ::core::marker::Copy for IGMPV3_QUERY_HEADER_1 {} +impl ::core::clone::Clone for IGMPV3_QUERY_HEADER_1 { + fn clone(&self) -> Self { + *self + } +} +unsafe impl ::windows::core::Abi for IGMPV3_QUERY_HEADER_1 { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IGMPV3_QUERY_HEADER_1 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IGMPV3_QUERY_HEADER_1 {} +impl ::core::default::Default for IGMPV3_QUERY_HEADER_1 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IOC_INOUT: u32 = 3221225472u32; +pub struct IGMPV3_QUERY_HEADER_1_0 { + pub _bitfield: u8, +} +impl ::core::marker::Copy for IGMPV3_QUERY_HEADER_1_0 {} +impl ::core::clone::Clone for IGMPV3_QUERY_HEADER_1_0 { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for IGMPV3_QUERY_HEADER_1_0 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("IGMPV3_QUERY_HEADER_1_0").field("_bitfield", &self._bitfield).finish() + } +} +unsafe impl ::windows::core::Abi for IGMPV3_QUERY_HEADER_1_0 { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IGMPV3_QUERY_HEADER_1_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IGMPV3_QUERY_HEADER_1_0 {} +impl ::core::default::Default for IGMPV3_QUERY_HEADER_1_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IOC_OUT: u32 = 1073741824u32; +pub struct IGMPV3_REPORT_HEADER { + pub Type: u8, + pub Reserved: u8, + pub Checksum: u16, + pub Reserved2: u16, + pub RecordCount: u16, +} +impl ::core::marker::Copy for IGMPV3_REPORT_HEADER {} +impl ::core::clone::Clone for IGMPV3_REPORT_HEADER { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for IGMPV3_REPORT_HEADER { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("IGMPV3_REPORT_HEADER").field("Type", &self.Type).field("Reserved", &self.Reserved).field("Checksum", &self.Checksum).field("Reserved2", &self.Reserved2).field("RecordCount", &self.RecordCount).finish() + } +} +unsafe impl ::windows::core::Abi for IGMPV3_REPORT_HEADER { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IGMPV3_REPORT_HEADER { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IGMPV3_REPORT_HEADER {} +impl ::core::default::Default for IGMPV3_REPORT_HEADER { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IOC_PROTOCOL: u32 = 268435456u32; +pub struct IGMPV3_REPORT_RECORD_HEADER { + pub Type: u8, + pub AuxillaryDataLength: u8, + pub SourceCount: u16, + pub MulticastAddress: IN_ADDR, +} +impl ::core::marker::Copy for IGMPV3_REPORT_RECORD_HEADER {} +impl ::core::clone::Clone for IGMPV3_REPORT_RECORD_HEADER { + fn clone(&self) -> Self { + *self + } +} +unsafe impl ::windows::core::Abi for IGMPV3_REPORT_RECORD_HEADER { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IGMPV3_REPORT_RECORD_HEADER { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IGMPV3_REPORT_RECORD_HEADER {} +impl ::core::default::Default for IGMPV3_REPORT_RECORD_HEADER { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IOC_UNIX: u32 = 0u32; +pub struct IGMP_HEADER { + pub Anonymous1: IGMP_HEADER_0, + pub Anonymous2: IGMP_HEADER_1, + pub Checksum: u16, + pub MulticastAddress: IN_ADDR, +} +impl ::core::marker::Copy for IGMP_HEADER {} +impl ::core::clone::Clone for IGMP_HEADER { + fn clone(&self) -> Self { + *self + } +} +unsafe impl ::windows::core::Abi for IGMP_HEADER { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IGMP_HEADER { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IGMP_HEADER {} +impl ::core::default::Default for IGMP_HEADER { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IOC_VENDOR: u32 = 402653184u32; +pub union IGMP_HEADER_0 { + pub Anonymous: IGMP_HEADER_0_0, + pub VersionType: u8, +} +impl ::core::marker::Copy for IGMP_HEADER_0 {} +impl ::core::clone::Clone for IGMP_HEADER_0 { + fn clone(&self) -> Self { + *self + } +} +unsafe impl ::windows::core::Abi for IGMP_HEADER_0 { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IGMP_HEADER_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IGMP_HEADER_0 {} +impl ::core::default::Default for IGMP_HEADER_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IOC_VOID: u32 = 536870912u32; +pub struct IGMP_HEADER_0_0 { + pub _bitfield: u8, +} +impl ::core::marker::Copy for IGMP_HEADER_0_0 {} +impl ::core::clone::Clone for IGMP_HEADER_0_0 { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for IGMP_HEADER_0_0 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("IGMP_HEADER_0_0").field("_bitfield", &self._bitfield).finish() + } +} +unsafe impl ::windows::core::Abi for IGMP_HEADER_0_0 { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IGMP_HEADER_0_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IGMP_HEADER_0_0 {} +impl ::core::default::Default for IGMP_HEADER_0_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IOC_WS2: u32 = 134217728u32; +pub union IGMP_HEADER_1 { + pub Reserved: u8, + pub MaxRespTime: u8, + pub Code: u8, +} +impl ::core::marker::Copy for IGMP_HEADER_1 {} +impl ::core::clone::Clone for IGMP_HEADER_1 { + fn clone(&self) -> Self { + *self + } +} +unsafe impl ::windows::core::Abi for IGMP_HEADER_1 { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IGMP_HEADER_1 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IGMP_HEADER_1 {} +impl ::core::default::Default for IGMP_HEADER_1 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP4_OFF_MASK: u32 = 65311u32; +pub const IGMP_LEAVE_GROUP_TYPE: u32 = 23u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6F_MORE_FRAG: u32 = 256u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct IGMP_MAX_RESP_CODE_TYPE(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6F_OFF_MASK: u32 = 63743u32; +pub const IGMP_MAX_RESP_CODE_TYPE_NORMAL: IGMP_MAX_RESP_CODE_TYPE = IGMP_MAX_RESP_CODE_TYPE(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6F_RESERVED_MASK: u32 = 1536u32; +pub const IGMP_MAX_RESP_CODE_TYPE_FLOAT: IGMP_MAX_RESP_CODE_TYPE = IGMP_MAX_RESP_CODE_TYPE(1i32); +impl ::core::marker::Copy for IGMP_MAX_RESP_CODE_TYPE {} +impl ::core::clone::Clone for IGMP_MAX_RESP_CODE_TYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for IGMP_MAX_RESP_CODE_TYPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for IGMP_MAX_RESP_CODE_TYPE { + type Abi = Self; +} +impl ::core::fmt::Debug for IGMP_MAX_RESP_CODE_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("IGMP_MAX_RESP_CODE_TYPE").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6OPT_MUTABLE: u32 = 32u32; +pub const IGMP_QUERY_TYPE: u32 = 17u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6OPT_TYPE_DISCARD: u32 = 64u32; +pub const IGMP_VERSION1_REPORT_TYPE: u32 = 18u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6OPT_TYPE_FORCEICMP: u32 = 128u32; +pub const IGMP_VERSION2_REPORT_TYPE: u32 = 22u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6OPT_TYPE_ICMP: u32 = 192u32; +pub const IGMP_VERSION3_REPORT_TYPE: u32 = 34u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6OPT_TYPE_SKIP: u32 = 0u32; +pub const IMPLINK_HIGHEXPER: u32 = 158u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6T_SO_ORIGINAL_DST: u32 = 12303u32; +pub const IMPLINK_IP: u32 = 155u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_BIFFUDP: u32 = 512u32; +pub const IMPLINK_LOWEXPER: u32 = 156u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_CHARGEN: u32 = 19u32; +pub const IN4ADDR_LINKLOCALPREFIX_LENGTH: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_CMDSERVER: u32 = 514u32; +pub const IN4ADDR_LOOPBACK: u32 = 16777343u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_DAYTIME: u32 = 13u32; +pub const IN4ADDR_LOOPBACKPREFIX_LENGTH: u32 = 8u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_DISCARD: u32 = 9u32; +pub const IN4ADDR_MULTICASTPREFIX_LENGTH: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_DYNAMIC_MAX: u32 = 65535u32; +pub const IN6ADDR_6TO4PREFIX_LENGTH: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_DYNAMIC_MIN: u32 = 49152u32; +pub const IN6ADDR_LINKLOCALPREFIX_LENGTH: u32 = 64u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_ECHO: u32 = 7u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_EFSSERVER: u32 = 520u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_EPMAP: u32 = 135u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_EXECSERVER: u32 = 512u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_FINGER: u32 = 79u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_FTP: u32 = 21u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_FTP_DATA: u32 = 20u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_HTTPS: u32 = 443u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_IMAP: u32 = 143u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_IMAP3: u32 = 220u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_LDAP: u32 = 389u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_LOGINSERVER: u32 = 513u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_MICROSOFT_DS: u32 = 445u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_MSP: u32 = 18u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_MTP: u32 = 57u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_NAMESERVER: u32 = 42u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_NETBIOS_DGM: u32 = 138u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_NETBIOS_NS: u32 = 137u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_NETBIOS_SSN: u32 = 139u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_NETSTAT: u32 = 15u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_NTP: u32 = 123u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_POP3: u32 = 110u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_QOTD: u32 = 17u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_REGISTERED_MAX: u32 = 49151u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_REGISTERED_MIN: u32 = 1024u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_RESERVED: u32 = 1024u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_RJE: u32 = 77u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_ROUTESERVER: u32 = 520u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_SMTP: u32 = 25u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_SNMP: u32 = 161u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_SNMP_TRAP: u32 = 162u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_SUPDUP: u32 = 95u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_SYSTAT: u32 = 11u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_TCPMUX: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_TELNET: u32 = 23u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_TFTP: u32 = 69u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_TIMESERVER: u32 = 37u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_TTYLINK: u32 = 87u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_WHOIS: u32 = 43u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPORT_WHOSERVER: u32 = 513u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct IPPROTO(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_HOPOPTS: IPPROTO = IPPROTO(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_ICMP: IPPROTO = IPPROTO(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_IGMP: IPPROTO = IPPROTO(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_GGP: IPPROTO = IPPROTO(3i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_IPV4: IPPROTO = IPPROTO(4i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_ST: IPPROTO = IPPROTO(5i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_TCP: IPPROTO = IPPROTO(6i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_CBT: IPPROTO = IPPROTO(7i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_EGP: IPPROTO = IPPROTO(8i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_IGP: IPPROTO = IPPROTO(9i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_PUP: IPPROTO = IPPROTO(12i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_UDP: IPPROTO = IPPROTO(17i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_IDP: IPPROTO = IPPROTO(22i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_RDP: IPPROTO = IPPROTO(27i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_IPV6: IPPROTO = IPPROTO(41i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_ROUTING: IPPROTO = IPPROTO(43i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_FRAGMENT: IPPROTO = IPPROTO(44i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_ESP: IPPROTO = IPPROTO(50i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_AH: IPPROTO = IPPROTO(51i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_ICMPV6: IPPROTO = IPPROTO(58i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_NONE: IPPROTO = IPPROTO(59i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_DSTOPTS: IPPROTO = IPPROTO(60i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_ND: IPPROTO = IPPROTO(77i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_ICLFXBM: IPPROTO = IPPROTO(78i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_PIM: IPPROTO = IPPROTO(103i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_PGM: IPPROTO = IPPROTO(113i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_L2TP: IPPROTO = IPPROTO(115i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_SCTP: IPPROTO = IPPROTO(132i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_RAW: IPPROTO = IPPROTO(255i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_MAX: IPPROTO = IPPROTO(256i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_RESERVED_RAW: IPPROTO = IPPROTO(257i32); +pub const IN6ADDR_MULTICASTPREFIX_LENGTH: u32 = 8u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_RESERVED_IPSEC: IPPROTO = IPPROTO(258i32); +pub const IN6ADDR_SOLICITEDNODEMULTICASTPREFIX_LENGTH: u32 = 104u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_RESERVED_IPSECOFFLOAD: IPPROTO = IPPROTO(259i32); +pub const IN6ADDR_TEREDOPREFIX_LENGTH: u32 = 32u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_RESERVED_WNV: IPPROTO = IPPROTO(260i32); +pub const IN6ADDR_V4MAPPEDPREFIX_LENGTH: u32 = 96u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_RESERVED_MAX: IPPROTO = IPPROTO(261i32); -impl ::core::marker::Copy for IPPROTO {} -impl ::core::clone::Clone for IPPROTO { +pub struct IN6_ADDR { + pub u: IN6_ADDR_0, +} +impl ::core::marker::Copy for IN6_ADDR {} +impl ::core::clone::Clone for IN6_ADDR { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for IPPROTO { +unsafe impl ::windows::core::Abi for IN6_ADDR { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IN6_ADDR { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IN6_ADDR {} +impl ::core::default::Default for IN6_ADDR { fn default() -> Self { - Self(0) + unsafe { ::core::mem::zeroed() } } } -unsafe impl ::windows::core::Abi for IPPROTO { - type Abi = Self; +impl ::core::convert::From<::std::net::Ipv6Addr> for IN6_ADDR { + fn from(addr: ::std::net::Ipv6Addr) -> Self { + Self { u: IN6_ADDR_0 { Byte: addr.octets() } } + } } -impl ::core::fmt::Debug for IPPROTO { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IPPROTO").field(&self.0).finish() +impl ::core::convert::From for ::std::net::Ipv6Addr { + fn from(in6_addr: IN6_ADDR) -> Self { + Self::from(unsafe { in6_addr.u.Byte }) } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_IP: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPPROTO_RM: u32 = 113u32; -#[repr(C, packed(1))] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPTLS_METADATA { - pub SequenceNumber: u64, +pub union IN6_ADDR_0 { + pub Byte: [u8; 16], + pub Word: [u16; 8], } -impl ::core::marker::Copy for IPTLS_METADATA {} -impl ::core::clone::Clone for IPTLS_METADATA { +impl ::core::marker::Copy for IN6_ADDR_0 {} +impl ::core::clone::Clone for IN6_ADDR_0 { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IPTLS_METADATA { +unsafe impl ::windows::core::Abi for IN6_ADDR_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IPTLS_METADATA { +impl ::core::cmp::PartialEq for IN6_ADDR_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPTLS_METADATA {} -impl ::core::default::Default for IPTLS_METADATA { +impl ::core::cmp::Eq for IN6_ADDR_0 {} +impl ::core::default::Default for IN6_ADDR_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN6_EMBEDDEDV4_BITS_IN_BYTE: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN6_EMBEDDEDV4_UOCTET_POSITION: u32 = 8u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV4_HEADER { - pub Anonymous1: IPV4_HEADER_0, - pub Anonymous2: IPV4_HEADER_1, - pub TotalLength: u16, - pub Identification: u16, - pub Anonymous3: IPV4_HEADER_2, - pub TimeToLive: u8, - pub Protocol: u8, - pub HeaderChecksum: u16, - pub SourceAddress: IN_ADDR, - pub DestinationAddress: IN_ADDR, +pub struct IN6_PKTINFO { + pub ipi6_addr: IN6_ADDR, + pub ipi6_ifindex: u32, } -impl ::core::marker::Copy for IPV4_HEADER {} -impl ::core::clone::Clone for IPV4_HEADER { +impl ::core::marker::Copy for IN6_PKTINFO {} +impl ::core::clone::Clone for IN6_PKTINFO { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IPV4_HEADER { +unsafe impl ::windows::core::Abi for IN6_PKTINFO { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV4_HEADER { +impl ::core::cmp::PartialEq for IN6_PKTINFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV4_HEADER {} -impl ::core::default::Default for IPV4_HEADER { +impl ::core::cmp::Eq for IN6_PKTINFO {} +impl ::core::default::Default for IN6_PKTINFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IPV4_HEADER_0 { - pub VersionAndHeaderLength: u8, - pub Anonymous: IPV4_HEADER_0_0, +pub struct IN6_PKTINFO_EX { + pub pkt_info: IN6_PKTINFO, + pub scope_id: SCOPE_ID, } -impl ::core::marker::Copy for IPV4_HEADER_0 {} -impl ::core::clone::Clone for IPV4_HEADER_0 { +impl ::core::marker::Copy for IN6_PKTINFO_EX {} +impl ::core::clone::Clone for IN6_PKTINFO_EX { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IPV4_HEADER_0 { +unsafe impl ::windows::core::Abi for IN6_PKTINFO_EX { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV4_HEADER_0 { +impl ::core::cmp::PartialEq for IN6_PKTINFO_EX { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV4_HEADER_0 {} -impl ::core::default::Default for IPV4_HEADER_0 { +impl ::core::cmp::Eq for IN6_PKTINFO_EX {} +impl ::core::default::Default for IN6_PKTINFO_EX { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV4_HEADER_0_0 { - pub _bitfield: u8, +pub const INADDR_LOOPBACK: u32 = 2130706433u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const INADDR_NONE: u32 = 4294967295u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const INCL_WINSOCK_API_PROTOTYPES: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const INCL_WINSOCK_API_TYPEDEFS: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const INET6_ADDRSTRLEN: u32 = 65u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const INET_ADDRSTRLEN: u32 = 22u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct INET_PORT_RANGE { + pub StartPort: u16, + pub NumberOfPorts: u16, } -impl ::core::marker::Copy for IPV4_HEADER_0_0 {} -impl ::core::clone::Clone for IPV4_HEADER_0_0 { +impl ::core::marker::Copy for INET_PORT_RANGE {} +impl ::core::clone::Clone for INET_PORT_RANGE { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPV4_HEADER_0_0 { +impl ::core::fmt::Debug for INET_PORT_RANGE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPV4_HEADER_0_0").field("_bitfield", &self._bitfield).finish() + f.debug_struct("INET_PORT_RANGE").field("StartPort", &self.StartPort).field("NumberOfPorts", &self.NumberOfPorts).finish() } } -unsafe impl ::windows::core::Abi for IPV4_HEADER_0_0 { +unsafe impl ::windows::core::Abi for INET_PORT_RANGE { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV4_HEADER_0_0 { +impl ::core::cmp::PartialEq for INET_PORT_RANGE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV4_HEADER_0_0 {} -impl ::core::default::Default for IPV4_HEADER_0_0 { +impl ::core::cmp::Eq for INET_PORT_RANGE {} +impl ::core::default::Default for INET_PORT_RANGE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IPV4_HEADER_1 { - pub TypeOfServiceAndEcnField: u8, - pub Anonymous: IPV4_HEADER_1_0, +pub struct INET_PORT_RESERVATION_INFORMATION { + pub OwningPid: u32, } -impl ::core::marker::Copy for IPV4_HEADER_1 {} -impl ::core::clone::Clone for IPV4_HEADER_1 { +impl ::core::marker::Copy for INET_PORT_RESERVATION_INFORMATION {} +impl ::core::clone::Clone for INET_PORT_RESERVATION_INFORMATION { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IPV4_HEADER_1 { +impl ::core::fmt::Debug for INET_PORT_RESERVATION_INFORMATION { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("INET_PORT_RESERVATION_INFORMATION").field("OwningPid", &self.OwningPid).finish() + } +} +unsafe impl ::windows::core::Abi for INET_PORT_RESERVATION_INFORMATION { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV4_HEADER_1 { +impl ::core::cmp::PartialEq for INET_PORT_RESERVATION_INFORMATION { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV4_HEADER_1 {} -impl ::core::default::Default for IPV4_HEADER_1 { +impl ::core::cmp::Eq for INET_PORT_RESERVATION_INFORMATION {} +impl ::core::default::Default for INET_PORT_RESERVATION_INFORMATION { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV4_HEADER_1_0 { - pub _bitfield: u8, +pub struct INET_PORT_RESERVATION_INSTANCE { + pub Reservation: INET_PORT_RANGE, + pub Token: INET_PORT_RESERVATION_TOKEN, } -impl ::core::marker::Copy for IPV4_HEADER_1_0 {} -impl ::core::clone::Clone for IPV4_HEADER_1_0 { +impl ::core::marker::Copy for INET_PORT_RESERVATION_INSTANCE {} +impl ::core::clone::Clone for INET_PORT_RESERVATION_INSTANCE { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPV4_HEADER_1_0 { +impl ::core::fmt::Debug for INET_PORT_RESERVATION_INSTANCE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPV4_HEADER_1_0").field("_bitfield", &self._bitfield).finish() + f.debug_struct("INET_PORT_RESERVATION_INSTANCE").field("Reservation", &self.Reservation).field("Token", &self.Token).finish() } } -unsafe impl ::windows::core::Abi for IPV4_HEADER_1_0 { +unsafe impl ::windows::core::Abi for INET_PORT_RESERVATION_INSTANCE { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV4_HEADER_1_0 { +impl ::core::cmp::PartialEq for INET_PORT_RESERVATION_INSTANCE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV4_HEADER_1_0 {} -impl ::core::default::Default for IPV4_HEADER_1_0 { +impl ::core::cmp::Eq for INET_PORT_RESERVATION_INSTANCE {} +impl ::core::default::Default for INET_PORT_RESERVATION_INSTANCE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IPV4_HEADER_2 { - pub FlagsAndOffset: u16, - pub Anonymous: IPV4_HEADER_2_0, +pub struct INET_PORT_RESERVATION_TOKEN { + pub Token: u64, } -impl ::core::marker::Copy for IPV4_HEADER_2 {} -impl ::core::clone::Clone for IPV4_HEADER_2 { +impl ::core::marker::Copy for INET_PORT_RESERVATION_TOKEN {} +impl ::core::clone::Clone for INET_PORT_RESERVATION_TOKEN { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IPV4_HEADER_2 { +impl ::core::fmt::Debug for INET_PORT_RESERVATION_TOKEN { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("INET_PORT_RESERVATION_TOKEN").field("Token", &self.Token).finish() + } +} +unsafe impl ::windows::core::Abi for INET_PORT_RESERVATION_TOKEN { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV4_HEADER_2 { +impl ::core::cmp::PartialEq for INET_PORT_RESERVATION_TOKEN { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV4_HEADER_2 {} -impl ::core::default::Default for IPV4_HEADER_2 { +impl ::core::cmp::Eq for INET_PORT_RESERVATION_TOKEN {} +impl ::core::default::Default for INET_PORT_RESERVATION_TOKEN { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV4_HEADER_2_0 { - pub _bitfield: u16, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct INTERFACE_INFO { + pub iiFlags: u32, + pub iiAddress: sockaddr_gen, + pub iiBroadcastAddress: sockaddr_gen, + pub iiNetmask: sockaddr_gen, } -impl ::core::marker::Copy for IPV4_HEADER_2_0 {} -impl ::core::clone::Clone for IPV4_HEADER_2_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for INTERFACE_INFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for INTERFACE_INFO { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPV4_HEADER_2_0 { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for INTERFACE_INFO { + type Abi = Self; +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for INTERFACE_INFO { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for INTERFACE_INFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for INTERFACE_INFO { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct INTERFACE_INFO_EX { + pub iiFlags: u32, + pub iiAddress: SOCKET_ADDRESS, + pub iiBroadcastAddress: SOCKET_ADDRESS, + pub iiNetmask: SOCKET_ADDRESS, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for INTERFACE_INFO_EX {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for INTERFACE_INFO_EX { + fn clone(&self) -> Self { + *self + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for INTERFACE_INFO_EX { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPV4_HEADER_2_0").field("_bitfield", &self._bitfield).finish() + f.debug_struct("INTERFACE_INFO_EX").field("iiFlags", &self.iiFlags).field("iiAddress", &self.iiAddress).field("iiBroadcastAddress", &self.iiBroadcastAddress).field("iiNetmask", &self.iiNetmask).finish() } } -unsafe impl ::windows::core::Abi for IPV4_HEADER_2_0 { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for INTERFACE_INFO_EX { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV4_HEADER_2_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for INTERFACE_INFO_EX { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV4_HEADER_2_0 {} -impl ::core::default::Default for IPV4_HEADER_2_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for INTERFACE_INFO_EX {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for INTERFACE_INFO_EX { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV4_MAX_MINIMUM_MTU: u32 = 576u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV4_MINIMUM_MTU: u32 = 576u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV4_MIN_MINIMUM_MTU: u32 = 352u32; +pub const INVALID_SOCKET: SOCKET = SOCKET(-1i32 as _); #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV4_OPTION_HEADER { - pub Anonymous: IPV4_OPTION_HEADER_0, - pub OptionLength: u8, +pub struct IN_ADDR { + pub S_un: IN_ADDR_0, } -impl ::core::marker::Copy for IPV4_OPTION_HEADER {} -impl ::core::clone::Clone for IPV4_OPTION_HEADER { +impl ::core::marker::Copy for IN_ADDR {} +impl ::core::clone::Clone for IN_ADDR { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IPV4_OPTION_HEADER { +unsafe impl ::windows::core::Abi for IN_ADDR { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV4_OPTION_HEADER { +impl ::core::cmp::PartialEq for IN_ADDR { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV4_OPTION_HEADER {} -impl ::core::default::Default for IPV4_OPTION_HEADER { +impl ::core::cmp::Eq for IN_ADDR {} +impl ::core::default::Default for IN_ADDR { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +impl ::core::convert::From<::std::net::Ipv4Addr> for IN_ADDR { + fn from(addr: ::std::net::Ipv4Addr) -> Self { + Self { S_un: IN_ADDR_0 { S_addr: u32::from(addr).to_be() } } + } +} +impl ::core::convert::From for ::std::net::Ipv4Addr { + fn from(in_addr: IN_ADDR) -> Self { + Self::from(u32::from_be(unsafe { in_addr.S_un.S_addr })) + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IPV4_OPTION_HEADER_0 { - pub OptionType: u8, - pub Anonymous: IPV4_OPTION_HEADER_0_0, +pub union IN_ADDR_0 { + pub S_un_b: IN_ADDR_0_0, + pub S_un_w: IN_ADDR_0_1, + pub S_addr: u32, } -impl ::core::marker::Copy for IPV4_OPTION_HEADER_0 {} -impl ::core::clone::Clone for IPV4_OPTION_HEADER_0 { +impl ::core::marker::Copy for IN_ADDR_0 {} +impl ::core::clone::Clone for IN_ADDR_0 { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IPV4_OPTION_HEADER_0 { +unsafe impl ::windows::core::Abi for IN_ADDR_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV4_OPTION_HEADER_0 { +impl ::core::cmp::PartialEq for IN_ADDR_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV4_OPTION_HEADER_0 {} -impl ::core::default::Default for IPV4_OPTION_HEADER_0 { +impl ::core::cmp::Eq for IN_ADDR_0 {} +impl ::core::default::Default for IN_ADDR_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV4_OPTION_HEADER_0_0 { - pub _bitfield: u8, +pub struct IN_ADDR_0_0 { + pub s_b1: u8, + pub s_b2: u8, + pub s_b3: u8, + pub s_b4: u8, } -impl ::core::marker::Copy for IPV4_OPTION_HEADER_0_0 {} -impl ::core::clone::Clone for IPV4_OPTION_HEADER_0_0 { +impl ::core::marker::Copy for IN_ADDR_0_0 {} +impl ::core::clone::Clone for IN_ADDR_0_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPV4_OPTION_HEADER_0_0 { +impl ::core::fmt::Debug for IN_ADDR_0_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPV4_OPTION_HEADER_0_0").field("_bitfield", &self._bitfield).finish() + f.debug_struct("IN_ADDR_0_0").field("s_b1", &self.s_b1).field("s_b2", &self.s_b2).field("s_b3", &self.s_b3).field("s_b4", &self.s_b4).finish() } } -unsafe impl ::windows::core::Abi for IPV4_OPTION_HEADER_0_0 { +unsafe impl ::windows::core::Abi for IN_ADDR_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV4_OPTION_HEADER_0_0 { +impl ::core::cmp::PartialEq for IN_ADDR_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV4_OPTION_HEADER_0_0 {} -impl ::core::default::Default for IPV4_OPTION_HEADER_0_0 { +impl ::core::cmp::Eq for IN_ADDR_0_0 {} +impl ::core::default::Default for IN_ADDR_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct IPV4_OPTION_TYPE(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_OPT_EOL: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_OPT_NOP: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_OPT_SECURITY: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(130i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_OPT_LSRR: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(131i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_OPT_TS: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(68i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_OPT_RR: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(7i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_OPT_SSRR: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(137i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_OPT_SID: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(136i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_OPT_ROUTER_ALERT: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(148i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_OPT_MULTIDEST: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(149i32); -impl ::core::marker::Copy for IPV4_OPTION_TYPE {} -impl ::core::clone::Clone for IPV4_OPTION_TYPE { +pub struct IN_ADDR_0_1 { + pub s_w1: u16, + pub s_w2: u16, +} +impl ::core::marker::Copy for IN_ADDR_0_1 {} +impl ::core::clone::Clone for IN_ADDR_0_1 { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for IPV4_OPTION_TYPE { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for IPV4_OPTION_TYPE { - type Abi = Self; -} -impl ::core::fmt::Debug for IPV4_OPTION_TYPE { +impl ::core::fmt::Debug for IN_ADDR_0_1 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IPV4_OPTION_TYPE").field(&self.0).finish() - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV4_ROUTING_HEADER { - pub OptionHeader: IPV4_OPTION_HEADER, - pub Pointer: u8, -} -impl ::core::marker::Copy for IPV4_ROUTING_HEADER {} -impl ::core::clone::Clone for IPV4_ROUTING_HEADER { - fn clone(&self) -> Self { - *self + f.debug_struct("IN_ADDR_0_1").field("s_w1", &self.s_w1).field("s_w2", &self.s_w2).finish() } } -unsafe impl ::windows::core::Abi for IPV4_ROUTING_HEADER { +unsafe impl ::windows::core::Abi for IN_ADDR_0_1 { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV4_ROUTING_HEADER { +impl ::core::cmp::PartialEq for IN_ADDR_0_1 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV4_ROUTING_HEADER {} -impl ::core::default::Default for IPV4_ROUTING_HEADER { +impl ::core::cmp::Eq for IN_ADDR_0_1 {} +impl ::core::default::Default for IN_ADDR_0_1 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN_CLASSA_HOST: u32 = 16777215u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN_CLASSA_MAX: u32 = 128u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN_CLASSA_NET: u32 = 4278190080u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN_CLASSA_NSHIFT: u32 = 24u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN_CLASSB_HOST: u32 = 65535u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN_CLASSB_MAX: u32 = 65536u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN_CLASSB_NET: u32 = 4294901760u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN_CLASSB_NSHIFT: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN_CLASSC_HOST: u32 = 255u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN_CLASSC_NET: u32 = 4294967040u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN_CLASSC_NSHIFT: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN_CLASSD_HOST: u32 = 268435455u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN_CLASSD_NET: u32 = 4026531840u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IN_CLASSD_NSHIFT: u32 = 28u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV4_TIMESTAMP_OPTION { - pub OptionHeader: IPV4_OPTION_HEADER, - pub Pointer: u8, - pub Anonymous: IPV4_TIMESTAMP_OPTION_0, +pub struct IN_PKTINFO { + pub ipi_addr: IN_ADDR, + pub ipi_ifindex: u32, } -impl ::core::marker::Copy for IPV4_TIMESTAMP_OPTION {} -impl ::core::clone::Clone for IPV4_TIMESTAMP_OPTION { +impl ::core::marker::Copy for IN_PKTINFO {} +impl ::core::clone::Clone for IN_PKTINFO { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IPV4_TIMESTAMP_OPTION { +unsafe impl ::windows::core::Abi for IN_PKTINFO { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV4_TIMESTAMP_OPTION { +impl ::core::cmp::PartialEq for IN_PKTINFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV4_TIMESTAMP_OPTION {} -impl ::core::default::Default for IPV4_TIMESTAMP_OPTION { +impl ::core::cmp::Eq for IN_PKTINFO {} +impl ::core::default::Default for IN_PKTINFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IPV4_TIMESTAMP_OPTION_0 { - pub FlagsOverflow: u8, - pub Anonymous: IPV4_TIMESTAMP_OPTION_0_0, +pub struct IN_PKTINFO_EX { + pub pkt_info: IN_PKTINFO, + pub scope_id: SCOPE_ID, } -impl ::core::marker::Copy for IPV4_TIMESTAMP_OPTION_0 {} -impl ::core::clone::Clone for IPV4_TIMESTAMP_OPTION_0 { +impl ::core::marker::Copy for IN_PKTINFO_EX {} +impl ::core::clone::Clone for IN_PKTINFO_EX { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IPV4_TIMESTAMP_OPTION_0 { +unsafe impl ::windows::core::Abi for IN_PKTINFO_EX { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV4_TIMESTAMP_OPTION_0 { +impl ::core::cmp::PartialEq for IN_PKTINFO_EX { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV4_TIMESTAMP_OPTION_0 {} -impl ::core::default::Default for IPV4_TIMESTAMP_OPTION_0 { +impl ::core::cmp::Eq for IN_PKTINFO_EX {} +impl ::core::default::Default for IN_PKTINFO_EX { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV4_TIMESTAMP_OPTION_0_0 { - pub _bitfield: u8, +pub struct IN_RECVERR { + pub protocol: IPPROTO, + pub info: u32, + pub r#type: u8, + pub code: u8, } -impl ::core::marker::Copy for IPV4_TIMESTAMP_OPTION_0_0 {} -impl ::core::clone::Clone for IPV4_TIMESTAMP_OPTION_0_0 { +impl ::core::marker::Copy for IN_RECVERR {} +impl ::core::clone::Clone for IN_RECVERR { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPV4_TIMESTAMP_OPTION_0_0 { +impl ::core::fmt::Debug for IN_RECVERR { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPV4_TIMESTAMP_OPTION_0_0").field("_bitfield", &self._bitfield).finish() + f.debug_struct("IN_RECVERR").field("protocol", &self.protocol).field("info", &self.info).field("type", &self.r#type).field("code", &self.code).finish() } } -unsafe impl ::windows::core::Abi for IPV4_TIMESTAMP_OPTION_0_0 { +unsafe impl ::windows::core::Abi for IN_RECVERR { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV4_TIMESTAMP_OPTION_0_0 { +impl ::core::cmp::PartialEq for IN_RECVERR { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV4_TIMESTAMP_OPTION_0_0 {} -impl ::core::default::Default for IPV4_TIMESTAMP_OPTION_0_0 { +impl ::core::cmp::Eq for IN_RECVERR {} +impl ::core::default::Default for IN_RECVERR { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV4_VERSION: u32 = 4u32; +pub const IOCPARM_MASK: u32 = 127u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_ADD_IFLIST: u32 = 29u32; +pub const IOC_IN: u32 = 2147483648u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_ADD_MEMBERSHIP: u32 = 12u32; +pub const IOC_INOUT: u32 = 3221225472u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_CHECKSUM: u32 = 26u32; +pub const IOC_OUT: u32 = 1073741824u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_DEL_IFLIST: u32 = 30u32; +pub const IOC_PROTOCOL: u32 = 268435456u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_DONTFRAG: u32 = 14u32; +pub const IOC_UNIX: u32 = 0u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_DROP_MEMBERSHIP: u32 = 13u32; +pub const IOC_VENDOR: u32 = 402653184u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_ECN: u32 = 50u32; +pub const IOC_VOID: u32 = 536870912u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_ECN_MASK: u32 = 12288u32; +pub const IOC_WS2: u32 = 134217728u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_ECN_SHIFT: u32 = 12u32; -#[repr(C)] +pub const IP4_OFF_MASK: u32 = 65311u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV6_EXTENSION_HEADER { - pub NextHeader: u8, - pub Length: u8, -} -impl ::core::marker::Copy for IPV6_EXTENSION_HEADER {} -impl ::core::clone::Clone for IPV6_EXTENSION_HEADER { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for IPV6_EXTENSION_HEADER { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPV6_EXTENSION_HEADER").field("NextHeader", &self.NextHeader).field("Length", &self.Length).finish() - } -} -unsafe impl ::windows::core::Abi for IPV6_EXTENSION_HEADER { - type Abi = Self; -} -impl ::core::cmp::PartialEq for IPV6_EXTENSION_HEADER { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for IPV6_EXTENSION_HEADER {} -impl ::core::default::Default for IPV6_EXTENSION_HEADER { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} +pub const IP6F_MORE_FRAG: u32 = 256u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_FLOW_LABEL_MASK: u32 = 4294905600u32; -#[repr(C)] +pub const IP6F_OFF_MASK: u32 = 63743u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV6_FRAGMENT_HEADER { - pub NextHeader: u8, - pub Reserved: u8, - pub Anonymous: IPV6_FRAGMENT_HEADER_0, - pub Id: u32, -} -impl ::core::marker::Copy for IPV6_FRAGMENT_HEADER {} -impl ::core::clone::Clone for IPV6_FRAGMENT_HEADER { - fn clone(&self) -> Self { - *self - } -} -unsafe impl ::windows::core::Abi for IPV6_FRAGMENT_HEADER { - type Abi = Self; -} -impl ::core::cmp::PartialEq for IPV6_FRAGMENT_HEADER { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for IPV6_FRAGMENT_HEADER {} -impl ::core::default::Default for IPV6_FRAGMENT_HEADER { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub const IP6F_RESERVED_MASK: u32 = 1536u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IPV6_FRAGMENT_HEADER_0 { - pub Anonymous: IPV6_FRAGMENT_HEADER_0_0, - pub OffsetAndFlags: u16, -} -impl ::core::marker::Copy for IPV6_FRAGMENT_HEADER_0 {} -impl ::core::clone::Clone for IPV6_FRAGMENT_HEADER_0 { - fn clone(&self) -> Self { - *self - } -} -unsafe impl ::windows::core::Abi for IPV6_FRAGMENT_HEADER_0 { - type Abi = Self; -} -impl ::core::cmp::PartialEq for IPV6_FRAGMENT_HEADER_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for IPV6_FRAGMENT_HEADER_0 {} -impl ::core::default::Default for IPV6_FRAGMENT_HEADER_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub const IP6OPT_MUTABLE: u32 = 32u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV6_FRAGMENT_HEADER_0_0 { - pub _bitfield: u16, -} -impl ::core::marker::Copy for IPV6_FRAGMENT_HEADER_0_0 {} -impl ::core::clone::Clone for IPV6_FRAGMENT_HEADER_0_0 { +pub const IP6OPT_TYPE_DISCARD: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IP6OPT_TYPE_FORCEICMP: u32 = 128u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IP6OPT_TYPE_ICMP: u32 = 192u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IP6OPT_TYPE_SKIP: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IP6T_SO_ORIGINAL_DST: u32 = 12303u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_BIFFUDP: u32 = 512u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_CHARGEN: u32 = 19u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_CMDSERVER: u32 = 514u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_DAYTIME: u32 = 13u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_DISCARD: u32 = 9u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_DYNAMIC_MAX: u32 = 65535u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_DYNAMIC_MIN: u32 = 49152u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_ECHO: u32 = 7u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_EFSSERVER: u32 = 520u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_EPMAP: u32 = 135u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_EXECSERVER: u32 = 512u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_FINGER: u32 = 79u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_FTP: u32 = 21u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_FTP_DATA: u32 = 20u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_HTTPS: u32 = 443u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_IMAP: u32 = 143u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_IMAP3: u32 = 220u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_LDAP: u32 = 389u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_LOGINSERVER: u32 = 513u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_MICROSOFT_DS: u32 = 445u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_MSP: u32 = 18u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_MTP: u32 = 57u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_NAMESERVER: u32 = 42u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_NETBIOS_DGM: u32 = 138u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_NETBIOS_NS: u32 = 137u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_NETBIOS_SSN: u32 = 139u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_NETSTAT: u32 = 15u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_NTP: u32 = 123u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_POP3: u32 = 110u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_QOTD: u32 = 17u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_REGISTERED_MAX: u32 = 49151u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_REGISTERED_MIN: u32 = 1024u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_RESERVED: u32 = 1024u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_RJE: u32 = 77u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_ROUTESERVER: u32 = 520u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_SMTP: u32 = 25u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_SNMP: u32 = 161u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_SNMP_TRAP: u32 = 162u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_SUPDUP: u32 = 95u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_SYSTAT: u32 = 11u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_TCPMUX: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_TELNET: u32 = 23u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_TFTP: u32 = 69u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_TIMESERVER: u32 = 37u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_TTYLINK: u32 = 87u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_WHOIS: u32 = 43u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPORT_WHOSERVER: u32 = 513u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct IPPROTO(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_HOPOPTS: IPPROTO = IPPROTO(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_ICMP: IPPROTO = IPPROTO(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_IGMP: IPPROTO = IPPROTO(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_GGP: IPPROTO = IPPROTO(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_IPV4: IPPROTO = IPPROTO(4i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_ST: IPPROTO = IPPROTO(5i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_TCP: IPPROTO = IPPROTO(6i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_CBT: IPPROTO = IPPROTO(7i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_EGP: IPPROTO = IPPROTO(8i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_IGP: IPPROTO = IPPROTO(9i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_PUP: IPPROTO = IPPROTO(12i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_UDP: IPPROTO = IPPROTO(17i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_IDP: IPPROTO = IPPROTO(22i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_RDP: IPPROTO = IPPROTO(27i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_IPV6: IPPROTO = IPPROTO(41i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_ROUTING: IPPROTO = IPPROTO(43i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_FRAGMENT: IPPROTO = IPPROTO(44i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_ESP: IPPROTO = IPPROTO(50i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_AH: IPPROTO = IPPROTO(51i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_ICMPV6: IPPROTO = IPPROTO(58i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_NONE: IPPROTO = IPPROTO(59i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_DSTOPTS: IPPROTO = IPPROTO(60i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_ND: IPPROTO = IPPROTO(77i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_ICLFXBM: IPPROTO = IPPROTO(78i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_PIM: IPPROTO = IPPROTO(103i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_PGM: IPPROTO = IPPROTO(113i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_L2TP: IPPROTO = IPPROTO(115i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_SCTP: IPPROTO = IPPROTO(132i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_RAW: IPPROTO = IPPROTO(255i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_MAX: IPPROTO = IPPROTO(256i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_RESERVED_RAW: IPPROTO = IPPROTO(257i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_RESERVED_IPSEC: IPPROTO = IPPROTO(258i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_RESERVED_IPSECOFFLOAD: IPPROTO = IPPROTO(259i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_RESERVED_WNV: IPPROTO = IPPROTO(260i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPPROTO_RESERVED_MAX: IPPROTO = IPPROTO(261i32); +impl ::core::marker::Copy for IPPROTO {} +impl ::core::clone::Clone for IPPROTO { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPV6_FRAGMENT_HEADER_0_0 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPV6_FRAGMENT_HEADER_0_0").field("_bitfield", &self._bitfield).finish() +impl ::core::default::Default for IPPROTO { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for IPV6_FRAGMENT_HEADER_0_0 { +unsafe impl ::windows::core::Abi for IPPROTO { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV6_FRAGMENT_HEADER_0_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for IPV6_FRAGMENT_HEADER_0_0 {} -impl ::core::default::Default for IPV6_FRAGMENT_HEADER_0_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for IPPROTO { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("IPPROTO").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_FULL_TRAFFIC_CLASS_MASK: u32 = 61455u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_GET_IFLIST: u32 = 33u32; +pub const IPPROTO_IP: u32 = 0u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_HDRINCL: u32 = 2u32; -#[repr(C)] +pub const IPPROTO_RM: u32 = 113u32; +#[repr(C, packed(1))] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV6_HEADER { - pub Anonymous: IPV6_HEADER_0, - pub PayloadLength: u16, - pub NextHeader: u8, - pub HopLimit: u8, - pub SourceAddress: IN6_ADDR, - pub DestinationAddress: IN6_ADDR, +pub struct IPTLS_METADATA { + pub SequenceNumber: u64, } -impl ::core::marker::Copy for IPV6_HEADER {} -impl ::core::clone::Clone for IPV6_HEADER { +impl ::core::marker::Copy for IPTLS_METADATA {} +impl ::core::clone::Clone for IPTLS_METADATA { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IPV6_HEADER { +unsafe impl ::windows::core::Abi for IPTLS_METADATA { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV6_HEADER { +impl ::core::cmp::PartialEq for IPTLS_METADATA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV6_HEADER {} -impl ::core::default::Default for IPV6_HEADER { +impl ::core::cmp::Eq for IPTLS_METADATA {} +impl ::core::default::Default for IPTLS_METADATA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IPV6_HEADER_0 { - pub VersionClassFlow: u32, - pub Anonymous: IPV6_HEADER_0_0, -} -impl ::core::marker::Copy for IPV6_HEADER_0 {} -impl ::core::clone::Clone for IPV6_HEADER_0 { - fn clone(&self) -> Self { +pub struct IPV4_HEADER { + pub Anonymous1: IPV4_HEADER_0, + pub Anonymous2: IPV4_HEADER_1, + pub TotalLength: u16, + pub Identification: u16, + pub Anonymous3: IPV4_HEADER_2, + pub TimeToLive: u8, + pub Protocol: u8, + pub HeaderChecksum: u16, + pub SourceAddress: IN_ADDR, + pub DestinationAddress: IN_ADDR, +} +impl ::core::marker::Copy for IPV4_HEADER {} +impl ::core::clone::Clone for IPV4_HEADER { + fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IPV6_HEADER_0 { +unsafe impl ::windows::core::Abi for IPV4_HEADER { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV6_HEADER_0 { +impl ::core::cmp::PartialEq for IPV4_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV6_HEADER_0 {} -impl ::core::default::Default for IPV6_HEADER_0 { +impl ::core::cmp::Eq for IPV4_HEADER {} +impl ::core::default::Default for IPV4_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV6_HEADER_0_0 { - pub _bitfield: u32, +pub union IPV4_HEADER_0 { + pub VersionAndHeaderLength: u8, + pub Anonymous: IPV4_HEADER_0_0, } -impl ::core::marker::Copy for IPV6_HEADER_0_0 {} -impl ::core::clone::Clone for IPV6_HEADER_0_0 { +impl ::core::marker::Copy for IPV4_HEADER_0 {} +impl ::core::clone::Clone for IPV4_HEADER_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPV6_HEADER_0_0 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPV6_HEADER_0_0").field("_bitfield", &self._bitfield).finish() - } -} -unsafe impl ::windows::core::Abi for IPV6_HEADER_0_0 { +unsafe impl ::windows::core::Abi for IPV4_HEADER_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV6_HEADER_0_0 { +impl ::core::cmp::PartialEq for IPV4_HEADER_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV6_HEADER_0_0 {} -impl ::core::default::Default for IPV6_HEADER_0_0 { +impl ::core::cmp::Eq for IPV4_HEADER_0 {} +impl ::core::default::Default for IPV4_HEADER_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_HOPLIMIT: u32 = 21u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_HOPOPTS: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_IFLIST: u32 = 28u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_JOIN_GROUP: u32 = 12u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_LEAVE_GROUP: u32 = 13u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_MINIMUM_MTU: u32 = 1280u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV6_MREQ { - pub ipv6mr_multiaddr: IN6_ADDR, - pub ipv6mr_interface: u32, +pub struct IPV4_HEADER_0_0 { + pub _bitfield: u8, } -impl ::core::marker::Copy for IPV6_MREQ {} -impl ::core::clone::Clone for IPV6_MREQ { +impl ::core::marker::Copy for IPV4_HEADER_0_0 {} +impl ::core::clone::Clone for IPV4_HEADER_0_0 { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IPV6_MREQ { +impl ::core::fmt::Debug for IPV4_HEADER_0_0 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("IPV4_HEADER_0_0").field("_bitfield", &self._bitfield).finish() + } +} +unsafe impl ::windows::core::Abi for IPV4_HEADER_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV6_MREQ { +impl ::core::cmp::PartialEq for IPV4_HEADER_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV6_MREQ {} -impl ::core::default::Default for IPV6_MREQ { +impl ::core::cmp::Eq for IPV4_HEADER_0_0 {} +impl ::core::default::Default for IPV4_HEADER_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_MTU: u32 = 72u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_MTU_DISCOVER: u32 = 71u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_MULTICAST_HOPS: u32 = 10u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_MULTICAST_IF: u32 = 9u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_MULTICAST_LOOP: u32 = 11u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS { - pub Anonymous: IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0, - pub Value: u32, +pub union IPV4_HEADER_1 { + pub TypeOfServiceAndEcnField: u8, + pub Anonymous: IPV4_HEADER_1_0, } -impl ::core::marker::Copy for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS {} -impl ::core::clone::Clone for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS { +impl ::core::marker::Copy for IPV4_HEADER_1 {} +impl ::core::clone::Clone for IPV4_HEADER_1 { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS { +unsafe impl ::windows::core::Abi for IPV4_HEADER_1 { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS { +impl ::core::cmp::PartialEq for IPV4_HEADER_1 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS {} -impl ::core::default::Default for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS { +impl ::core::cmp::Eq for IPV4_HEADER_1 {} +impl ::core::default::Default for IPV4_HEADER_1 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 { +pub struct IPV4_HEADER_1_0 { pub _bitfield: u8, - pub Reserved2: [u8; 3], } -impl ::core::marker::Copy for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 {} -impl ::core::clone::Clone for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 { +impl ::core::marker::Copy for IPV4_HEADER_1_0 {} +impl ::core::clone::Clone for IPV4_HEADER_1_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 { +impl ::core::fmt::Debug for IPV4_HEADER_1_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0").field("_bitfield", &self._bitfield).field("Reserved2", &self.Reserved2).finish() + f.debug_struct("IPV4_HEADER_1_0").field("_bitfield", &self._bitfield).finish() } } -unsafe impl ::windows::core::Abi for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 { +unsafe impl ::windows::core::Abi for IPV4_HEADER_1_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 { +impl ::core::cmp::PartialEq for IPV4_HEADER_1_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 {} -impl ::core::default::Default for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 { +impl ::core::cmp::Eq for IPV4_HEADER_1_0 {} +impl ::core::default::Default for IPV4_HEADER_1_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_NRT_INTERFACE: u32 = 74u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV6_OPTION_HEADER { - pub Type: u8, - pub DataLength: u8, +pub union IPV4_HEADER_2 { + pub FlagsAndOffset: u16, + pub Anonymous: IPV4_HEADER_2_0, } -impl ::core::marker::Copy for IPV6_OPTION_HEADER {} -impl ::core::clone::Clone for IPV6_OPTION_HEADER { +impl ::core::marker::Copy for IPV4_HEADER_2 {} +impl ::core::clone::Clone for IPV4_HEADER_2 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPV6_OPTION_HEADER { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPV6_OPTION_HEADER").field("Type", &self.Type).field("DataLength", &self.DataLength).finish() - } -} -unsafe impl ::windows::core::Abi for IPV6_OPTION_HEADER { +unsafe impl ::windows::core::Abi for IPV4_HEADER_2 { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV6_OPTION_HEADER { +impl ::core::cmp::PartialEq for IPV4_HEADER_2 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV6_OPTION_HEADER {} -impl ::core::default::Default for IPV6_OPTION_HEADER { +impl ::core::cmp::Eq for IPV4_HEADER_2 {} +impl ::core::default::Default for IPV4_HEADER_2 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV6_OPTION_JUMBOGRAM { - pub Header: IPV6_OPTION_HEADER, - pub JumbogramLength: [u8; 4], +pub struct IPV4_HEADER_2_0 { + pub _bitfield: u16, } -impl ::core::marker::Copy for IPV6_OPTION_JUMBOGRAM {} -impl ::core::clone::Clone for IPV6_OPTION_JUMBOGRAM { +impl ::core::marker::Copy for IPV4_HEADER_2_0 {} +impl ::core::clone::Clone for IPV4_HEADER_2_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPV6_OPTION_JUMBOGRAM { +impl ::core::fmt::Debug for IPV4_HEADER_2_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPV6_OPTION_JUMBOGRAM").field("Header", &self.Header).field("JumbogramLength", &self.JumbogramLength).finish() + f.debug_struct("IPV4_HEADER_2_0").field("_bitfield", &self._bitfield).finish() } } -unsafe impl ::windows::core::Abi for IPV6_OPTION_JUMBOGRAM { +unsafe impl ::windows::core::Abi for IPV4_HEADER_2_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV6_OPTION_JUMBOGRAM { +impl ::core::cmp::PartialEq for IPV4_HEADER_2_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV6_OPTION_JUMBOGRAM {} -impl ::core::default::Default for IPV6_OPTION_JUMBOGRAM { +impl ::core::cmp::Eq for IPV4_HEADER_2_0 {} +impl ::core::default::Default for IPV4_HEADER_2_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPV4_MAX_MINIMUM_MTU: u32 = 576u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPV4_MINIMUM_MTU: u32 = 576u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPV4_MIN_MINIMUM_MTU: u32 = 352u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV6_OPTION_ROUTER_ALERT { - pub Header: IPV6_OPTION_HEADER, - pub Value: [u8; 2], +pub struct IPV4_OPTION_HEADER { + pub Anonymous: IPV4_OPTION_HEADER_0, + pub OptionLength: u8, } -impl ::core::marker::Copy for IPV6_OPTION_ROUTER_ALERT {} -impl ::core::clone::Clone for IPV6_OPTION_ROUTER_ALERT { +impl ::core::marker::Copy for IPV4_OPTION_HEADER {} +impl ::core::clone::Clone for IPV4_OPTION_HEADER { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPV6_OPTION_ROUTER_ALERT { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPV6_OPTION_ROUTER_ALERT").field("Header", &self.Header).field("Value", &self.Value).finish() - } -} -unsafe impl ::windows::core::Abi for IPV6_OPTION_ROUTER_ALERT { +unsafe impl ::windows::core::Abi for IPV4_OPTION_HEADER { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV6_OPTION_ROUTER_ALERT { +impl ::core::cmp::PartialEq for IPV4_OPTION_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV6_OPTION_ROUTER_ALERT {} -impl ::core::default::Default for IPV6_OPTION_ROUTER_ALERT { +impl ::core::cmp::Eq for IPV4_OPTION_HEADER {} +impl ::core::default::Default for IPV4_OPTION_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct IPV6_OPTION_TYPE(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6OPT_PAD1: IPV6_OPTION_TYPE = IPV6_OPTION_TYPE(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6OPT_PADN: IPV6_OPTION_TYPE = IPV6_OPTION_TYPE(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6OPT_TUNNEL_LIMIT: IPV6_OPTION_TYPE = IPV6_OPTION_TYPE(4i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6OPT_ROUTER_ALERT: IPV6_OPTION_TYPE = IPV6_OPTION_TYPE(5i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6OPT_JUMBO: IPV6_OPTION_TYPE = IPV6_OPTION_TYPE(194i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP6OPT_NSAP_ADDR: IPV6_OPTION_TYPE = IPV6_OPTION_TYPE(195i32); -impl ::core::marker::Copy for IPV6_OPTION_TYPE {} -impl ::core::clone::Clone for IPV6_OPTION_TYPE { +pub union IPV4_OPTION_HEADER_0 { + pub OptionType: u8, + pub Anonymous: IPV4_OPTION_HEADER_0_0, +} +impl ::core::marker::Copy for IPV4_OPTION_HEADER_0 {} +impl ::core::clone::Clone for IPV4_OPTION_HEADER_0 { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for IPV6_OPTION_TYPE { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for IPV6_OPTION_TYPE { +unsafe impl ::windows::core::Abi for IPV4_OPTION_HEADER_0 { type Abi = Self; } -impl ::core::fmt::Debug for IPV6_OPTION_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IPV6_OPTION_TYPE").field(&self.0).finish() +impl ::core::cmp::PartialEq for IPV4_OPTION_HEADER_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +impl ::core::cmp::Eq for IPV4_OPTION_HEADER_0 {} +impl ::core::default::Default for IPV4_OPTION_HEADER_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_PKTINFO: u32 = 19u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_PKTINFO_EX: u32 = 51u32; +pub struct IPV4_OPTION_HEADER_0_0 { + pub _bitfield: u8, +} +impl ::core::marker::Copy for IPV4_OPTION_HEADER_0_0 {} +impl ::core::clone::Clone for IPV4_OPTION_HEADER_0_0 { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for IPV4_OPTION_HEADER_0_0 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("IPV4_OPTION_HEADER_0_0").field("_bitfield", &self._bitfield).finish() + } +} +unsafe impl ::windows::core::Abi for IPV4_OPTION_HEADER_0_0 { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IPV4_OPTION_HEADER_0_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IPV4_OPTION_HEADER_0_0 {} +impl ::core::default::Default for IPV4_OPTION_HEADER_0_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_PROTECTION_LEVEL: u32 = 23u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct IPV4_OPTION_TYPE(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_RECVDSTADDR: u32 = 25u32; +pub const IP_OPT_EOL: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_RECVECN: u32 = 50u32; +pub const IP_OPT_NOP: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_RECVERR: u32 = 75u32; +pub const IP_OPT_SECURITY: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(130i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_RECVIF: u32 = 24u32; +pub const IP_OPT_LSRR: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(131i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_RECVRTHDR: u32 = 38u32; +pub const IP_OPT_TS: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(68i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_RECVTCLASS: u32 = 40u32; +pub const IP_OPT_RR: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(7i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IP_OPT_SSRR: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(137i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IP_OPT_SID: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(136i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IP_OPT_ROUTER_ALERT: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(148i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IP_OPT_MULTIDEST: IPV4_OPTION_TYPE = IPV4_OPTION_TYPE(149i32); +impl ::core::marker::Copy for IPV4_OPTION_TYPE {} +impl ::core::clone::Clone for IPV4_OPTION_TYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for IPV4_OPTION_TYPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for IPV4_OPTION_TYPE { + type Abi = Self; +} +impl ::core::fmt::Debug for IPV4_OPTION_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("IPV4_OPTION_TYPE").field(&self.0).finish() + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union IPV6_ROUTER_ADVERTISEMENT_FLAGS { - pub Anonymous: IPV6_ROUTER_ADVERTISEMENT_FLAGS_0, - pub Value: u8, +pub struct IPV4_ROUTING_HEADER { + pub OptionHeader: IPV4_OPTION_HEADER, + pub Pointer: u8, } -impl ::core::marker::Copy for IPV6_ROUTER_ADVERTISEMENT_FLAGS {} -impl ::core::clone::Clone for IPV6_ROUTER_ADVERTISEMENT_FLAGS { +impl ::core::marker::Copy for IPV4_ROUTING_HEADER {} +impl ::core::clone::Clone for IPV4_ROUTING_HEADER { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IPV6_ROUTER_ADVERTISEMENT_FLAGS { +unsafe impl ::windows::core::Abi for IPV4_ROUTING_HEADER { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV6_ROUTER_ADVERTISEMENT_FLAGS { +impl ::core::cmp::PartialEq for IPV4_ROUTING_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV6_ROUTER_ADVERTISEMENT_FLAGS {} -impl ::core::default::Default for IPV6_ROUTER_ADVERTISEMENT_FLAGS { +impl ::core::cmp::Eq for IPV4_ROUTING_HEADER {} +impl ::core::default::Default for IPV4_ROUTING_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 { - pub _bitfield: u8, +pub struct IPV4_TIMESTAMP_OPTION { + pub OptionHeader: IPV4_OPTION_HEADER, + pub Pointer: u8, + pub Anonymous: IPV4_TIMESTAMP_OPTION_0, } -impl ::core::marker::Copy for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 {} -impl ::core::clone::Clone for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 { +impl ::core::marker::Copy for IPV4_TIMESTAMP_OPTION {} +impl ::core::clone::Clone for IPV4_TIMESTAMP_OPTION { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPV6_ROUTER_ADVERTISEMENT_FLAGS_0").field("_bitfield", &self._bitfield).finish() - } -} -unsafe impl ::windows::core::Abi for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 { +unsafe impl ::windows::core::Abi for IPV4_TIMESTAMP_OPTION { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 { +impl ::core::cmp::PartialEq for IPV4_TIMESTAMP_OPTION { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 {} -impl ::core::default::Default for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 { +impl ::core::cmp::Eq for IPV4_TIMESTAMP_OPTION {} +impl ::core::default::Default for IPV4_TIMESTAMP_OPTION { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPV6_ROUTING_HEADER { - pub NextHeader: u8, - pub Length: u8, - pub RoutingType: u8, - pub SegmentsLeft: u8, - pub Reserved: [u8; 4], +pub union IPV4_TIMESTAMP_OPTION_0 { + pub FlagsOverflow: u8, + pub Anonymous: IPV4_TIMESTAMP_OPTION_0_0, } -impl ::core::marker::Copy for IPV6_ROUTING_HEADER {} -impl ::core::clone::Clone for IPV6_ROUTING_HEADER { +impl ::core::marker::Copy for IPV4_TIMESTAMP_OPTION_0 {} +impl ::core::clone::Clone for IPV4_TIMESTAMP_OPTION_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPV6_ROUTING_HEADER { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPV6_ROUTING_HEADER").field("NextHeader", &self.NextHeader).field("Length", &self.Length).field("RoutingType", &self.RoutingType).field("SegmentsLeft", &self.SegmentsLeft).field("Reserved", &self.Reserved).finish() - } -} -unsafe impl ::windows::core::Abi for IPV6_ROUTING_HEADER { +unsafe impl ::windows::core::Abi for IPV4_TIMESTAMP_OPTION_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IPV6_ROUTING_HEADER { +impl ::core::cmp::PartialEq for IPV4_TIMESTAMP_OPTION_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPV6_ROUTING_HEADER {} -impl ::core::default::Default for IPV6_ROUTING_HEADER { +impl ::core::cmp::Eq for IPV4_TIMESTAMP_OPTION_0 {} +impl ::core::default::Default for IPV4_TIMESTAMP_OPTION_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_RTHDR: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_TCLASS: u32 = 39u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_TRAFFIC_CLASS_MASK: u32 = 49167u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_UNICAST_HOPS: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_UNICAST_IF: u32 = 31u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_USER_MTU: u32 = 76u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_V6ONLY: u32 = 27u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_VERSION: u32 = 96u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_WFP_REDIRECT_CONTEXT: u32 = 70u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPV6_WFP_REDIRECT_RECORDS: u32 = 60u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_ADDRESS: u32 = 16391u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct IPX_ADDRESS_DATA { - pub adapternum: i32, - pub netnum: [u8; 4], - pub nodenum: [u8; 6], - pub wan: super::super::Foundation::BOOLEAN, - pub status: super::super::Foundation::BOOLEAN, - pub maxpkt: i32, - pub linkspeed: u32, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct IPV4_TIMESTAMP_OPTION_0_0 { + pub _bitfield: u8, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for IPX_ADDRESS_DATA {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for IPX_ADDRESS_DATA { +impl ::core::marker::Copy for IPV4_TIMESTAMP_OPTION_0_0 {} +impl ::core::clone::Clone for IPV4_TIMESTAMP_OPTION_0_0 { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for IPX_ADDRESS_DATA { +impl ::core::fmt::Debug for IPV4_TIMESTAMP_OPTION_0_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPX_ADDRESS_DATA").field("adapternum", &self.adapternum).field("netnum", &self.netnum).field("nodenum", &self.nodenum).field("wan", &self.wan).field("status", &self.status).field("maxpkt", &self.maxpkt).field("linkspeed", &self.linkspeed).finish() + f.debug_struct("IPV4_TIMESTAMP_OPTION_0_0").field("_bitfield", &self._bitfield).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for IPX_ADDRESS_DATA { +unsafe impl ::windows::core::Abi for IPV4_TIMESTAMP_OPTION_0_0 { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for IPX_ADDRESS_DATA { +impl ::core::cmp::PartialEq for IPV4_TIMESTAMP_OPTION_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for IPX_ADDRESS_DATA {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for IPX_ADDRESS_DATA { +impl ::core::cmp::Eq for IPV4_TIMESTAMP_OPTION_0_0 {} +impl ::core::default::Default for IPV4_TIMESTAMP_OPTION_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_ADDRESS_NOTIFY: u32 = 16396u32; +pub const IPV4_VERSION: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_DSTYPE: u32 = 16386u32; +pub const IPV6_ADD_IFLIST: u32 = 29u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_EXTENDED_ADDRESS: u32 = 16388u32; +pub const IPV6_ADD_MEMBERSHIP: u32 = 12u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_FILTERPTYPE: u32 = 16385u32; +pub const IPV6_CHECKSUM: u32 = 26u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_GETNETINFO: u32 = 16392u32; +pub const IPV6_DEL_IFLIST: u32 = 30u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_GETNETINFO_NORIP: u32 = 16393u32; +pub const IPV6_DONTFRAG: u32 = 14u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_IMMEDIATESPXACK: u32 = 16400u32; +pub const IPV6_DROP_MEMBERSHIP: u32 = 13u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_MAXSIZE: u32 = 16390u32; +pub const IPV6_ECN: u32 = 50u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_MAX_ADAPTER_NUM: u32 = 16397u32; +pub const IPV6_ECN_MASK: u32 = 12288u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IPV6_ECN_SHIFT: u32 = 12u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPX_NETNUM_DATA { - pub netnum: [u8; 4], - pub hopcount: u16, - pub netdelay: u16, - pub cardnum: i32, - pub router: [u8; 6], +pub struct IPV6_EXTENSION_HEADER { + pub NextHeader: u8, + pub Length: u8, } -impl ::core::marker::Copy for IPX_NETNUM_DATA {} -impl ::core::clone::Clone for IPX_NETNUM_DATA { +impl ::core::marker::Copy for IPV6_EXTENSION_HEADER {} +impl ::core::clone::Clone for IPV6_EXTENSION_HEADER { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPX_NETNUM_DATA { +impl ::core::fmt::Debug for IPV6_EXTENSION_HEADER { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPX_NETNUM_DATA").field("netnum", &self.netnum).field("hopcount", &self.hopcount).field("netdelay", &self.netdelay).field("cardnum", &self.cardnum).field("router", &self.router).finish() + f.debug_struct("IPV6_EXTENSION_HEADER").field("NextHeader", &self.NextHeader).field("Length", &self.Length).finish() } } -unsafe impl ::windows::core::Abi for IPX_NETNUM_DATA { +unsafe impl ::windows::core::Abi for IPV6_EXTENSION_HEADER { type Abi = Self; } -impl ::core::cmp::PartialEq for IPX_NETNUM_DATA { +impl ::core::cmp::PartialEq for IPV6_EXTENSION_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPX_NETNUM_DATA {} -impl ::core::default::Default for IPX_NETNUM_DATA { +impl ::core::cmp::Eq for IPV6_EXTENSION_HEADER {} +impl ::core::default::Default for IPV6_EXTENSION_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_PTYPE: u32 = 16384u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_RECEIVE_BROADCAST: u32 = 16399u32; +pub const IPV6_FLOW_LABEL_MASK: u32 = 4294905600u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_RECVHDR: u32 = 16389u32; +pub struct IPV6_FRAGMENT_HEADER { + pub NextHeader: u8, + pub Reserved: u8, + pub Anonymous: IPV6_FRAGMENT_HEADER_0, + pub Id: u32, +} +impl ::core::marker::Copy for IPV6_FRAGMENT_HEADER {} +impl ::core::clone::Clone for IPV6_FRAGMENT_HEADER { + fn clone(&self) -> Self { + *self + } +} +unsafe impl ::windows::core::Abi for IPV6_FRAGMENT_HEADER { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IPV6_FRAGMENT_HEADER { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IPV6_FRAGMENT_HEADER {} +impl ::core::default::Default for IPV6_FRAGMENT_HEADER { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_RERIPNETNUMBER: u32 = 16398u32; +pub union IPV6_FRAGMENT_HEADER_0 { + pub Anonymous: IPV6_FRAGMENT_HEADER_0_0, + pub OffsetAndFlags: u16, +} +impl ::core::marker::Copy for IPV6_FRAGMENT_HEADER_0 {} +impl ::core::clone::Clone for IPV6_FRAGMENT_HEADER_0 { + fn clone(&self) -> Self { + *self + } +} +unsafe impl ::windows::core::Abi for IPV6_FRAGMENT_HEADER_0 { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IPV6_FRAGMENT_HEADER_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IPV6_FRAGMENT_HEADER_0 {} +impl ::core::default::Default for IPV6_FRAGMENT_HEADER_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IPX_SPXCONNSTATUS_DATA { - pub ConnectionState: u8, - pub WatchDogActive: u8, - pub LocalConnectionId: u16, - pub RemoteConnectionId: u16, - pub LocalSequenceNumber: u16, - pub LocalAckNumber: u16, - pub LocalAllocNumber: u16, - pub RemoteAckNumber: u16, - pub RemoteAllocNumber: u16, - pub LocalSocket: u16, - pub ImmediateAddress: [u8; 6], - pub RemoteNetwork: [u8; 4], - pub RemoteNode: [u8; 6], - pub RemoteSocket: u16, - pub RetransmissionCount: u16, - pub EstimatedRoundTripDelay: u16, - pub RetransmittedPackets: u16, - pub SuppressedPacket: u16, +pub struct IPV6_FRAGMENT_HEADER_0_0 { + pub _bitfield: u16, } -impl ::core::marker::Copy for IPX_SPXCONNSTATUS_DATA {} -impl ::core::clone::Clone for IPX_SPXCONNSTATUS_DATA { +impl ::core::marker::Copy for IPV6_FRAGMENT_HEADER_0_0 {} +impl ::core::clone::Clone for IPV6_FRAGMENT_HEADER_0_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for IPX_SPXCONNSTATUS_DATA { +impl ::core::fmt::Debug for IPV6_FRAGMENT_HEADER_0_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("IPX_SPXCONNSTATUS_DATA") - .field("ConnectionState", &self.ConnectionState) - .field("WatchDogActive", &self.WatchDogActive) - .field("LocalConnectionId", &self.LocalConnectionId) - .field("RemoteConnectionId", &self.RemoteConnectionId) - .field("LocalSequenceNumber", &self.LocalSequenceNumber) - .field("LocalAckNumber", &self.LocalAckNumber) - .field("LocalAllocNumber", &self.LocalAllocNumber) - .field("RemoteAckNumber", &self.RemoteAckNumber) - .field("RemoteAllocNumber", &self.RemoteAllocNumber) - .field("LocalSocket", &self.LocalSocket) - .field("ImmediateAddress", &self.ImmediateAddress) - .field("RemoteNetwork", &self.RemoteNetwork) - .field("RemoteNode", &self.RemoteNode) - .field("RemoteSocket", &self.RemoteSocket) - .field("RetransmissionCount", &self.RetransmissionCount) - .field("EstimatedRoundTripDelay", &self.EstimatedRoundTripDelay) - .field("RetransmittedPackets", &self.RetransmittedPackets) - .field("SuppressedPacket", &self.SuppressedPacket) - .finish() + f.debug_struct("IPV6_FRAGMENT_HEADER_0_0").field("_bitfield", &self._bitfield).finish() } } -unsafe impl ::windows::core::Abi for IPX_SPXCONNSTATUS_DATA { +unsafe impl ::windows::core::Abi for IPV6_FRAGMENT_HEADER_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IPX_SPXCONNSTATUS_DATA { +impl ::core::cmp::PartialEq for IPV6_FRAGMENT_HEADER_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IPX_SPXCONNSTATUS_DATA {} -impl ::core::default::Default for IPX_SPXCONNSTATUS_DATA { +impl ::core::cmp::Eq for IPV6_FRAGMENT_HEADER_0_0 {} +impl ::core::default::Default for IPV6_FRAGMENT_HEADER_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_SPXGETCONNECTIONSTATUS: u32 = 16395u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IPX_STOPFILTERPTYPE: u32 = 16387u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_ADD_IFLIST: u32 = 29u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_ADD_MEMBERSHIP: u32 = 12u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_ADD_SOURCE_MEMBERSHIP: u32 = 15u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_BLOCK_SOURCE: u32 = 17u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_DEFAULT_MULTICAST_LOOP: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_DEFAULT_MULTICAST_TTL: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_DEL_IFLIST: u32 = 30u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_DONTFRAGMENT: u32 = 14u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_DROP_MEMBERSHIP: u32 = 13u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_DROP_SOURCE_MEMBERSHIP: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_ECN: u32 = 50u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_GET_IFLIST: u32 = 33u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_HDRINCL: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_HOPLIMIT: u32 = 21u32; +pub const IPV6_FULL_TRAFFIC_CLASS_MASK: u32 = 61455u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_IFLIST: u32 = 28u32; +pub const IPV6_GET_IFLIST: u32 = 33u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_MAX_MEMBERSHIPS: u32 = 20u32; +pub const IPV6_HDRINCL: u32 = 2u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IP_MREQ { - pub imr_multiaddr: IN_ADDR, - pub imr_interface: IN_ADDR, +pub struct IPV6_HEADER { + pub Anonymous: IPV6_HEADER_0, + pub PayloadLength: u16, + pub NextHeader: u8, + pub HopLimit: u8, + pub SourceAddress: IN6_ADDR, + pub DestinationAddress: IN6_ADDR, } -impl ::core::marker::Copy for IP_MREQ {} -impl ::core::clone::Clone for IP_MREQ { +impl ::core::marker::Copy for IPV6_HEADER {} +impl ::core::clone::Clone for IPV6_HEADER { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IP_MREQ { +unsafe impl ::windows::core::Abi for IPV6_HEADER { type Abi = Self; } -impl ::core::cmp::PartialEq for IP_MREQ { +impl ::core::cmp::PartialEq for IPV6_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IP_MREQ {} -impl ::core::default::Default for IP_MREQ { +impl ::core::cmp::Eq for IPV6_HEADER {} +impl ::core::default::Default for IPV6_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IP_MREQ_SOURCE { - pub imr_multiaddr: IN_ADDR, - pub imr_sourceaddr: IN_ADDR, - pub imr_interface: IN_ADDR, +pub union IPV6_HEADER_0 { + pub VersionClassFlow: u32, + pub Anonymous: IPV6_HEADER_0_0, } -impl ::core::marker::Copy for IP_MREQ_SOURCE {} -impl ::core::clone::Clone for IP_MREQ_SOURCE { +impl ::core::marker::Copy for IPV6_HEADER_0 {} +impl ::core::clone::Clone for IPV6_HEADER_0 { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IP_MREQ_SOURCE { +unsafe impl ::windows::core::Abi for IPV6_HEADER_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IP_MREQ_SOURCE { +impl ::core::cmp::PartialEq for IPV6_HEADER_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IP_MREQ_SOURCE {} -impl ::core::default::Default for IP_MREQ_SOURCE { +impl ::core::cmp::Eq for IPV6_HEADER_0 {} +impl ::core::default::Default for IPV6_HEADER_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct IP_MSFILTER { - pub imsf_multiaddr: IN_ADDR, - pub imsf_interface: IN_ADDR, - pub imsf_fmode: MULTICAST_MODE_TYPE, - pub imsf_numsrc: u32, - pub imsf_slist: [IN_ADDR; 1], +pub struct IPV6_HEADER_0_0 { + pub _bitfield: u32, } -impl ::core::marker::Copy for IP_MSFILTER {} -impl ::core::clone::Clone for IP_MSFILTER { +impl ::core::marker::Copy for IPV6_HEADER_0_0 {} +impl ::core::clone::Clone for IPV6_HEADER_0_0 { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for IP_MSFILTER { +impl ::core::fmt::Debug for IPV6_HEADER_0_0 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("IPV6_HEADER_0_0").field("_bitfield", &self._bitfield).finish() + } +} +unsafe impl ::windows::core::Abi for IPV6_HEADER_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for IP_MSFILTER { +impl ::core::cmp::PartialEq for IPV6_HEADER_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for IP_MSFILTER {} -impl ::core::default::Default for IP_MSFILTER { +impl ::core::cmp::Eq for IPV6_HEADER_0_0 {} +impl ::core::default::Default for IPV6_HEADER_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_MTU: u32 = 73u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_MTU_DISCOVER: u32 = 71u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_MULTICAST_IF: u32 = 9u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_MULTICAST_LOOP: u32 = 11u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_MULTICAST_TTL: u32 = 10u32; +pub const IPV6_HOPLIMIT: u32 = 21u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_NRT_INTERFACE: u32 = 74u32; +pub const IPV6_HOPOPTS: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_OPTIONS: u32 = 1u32; +pub const IPV6_IFLIST: u32 = 28u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct IP_OPTION_TIMESTAMP_FLAGS(pub i32); +pub const IPV6_JOIN_GROUP: u32 = 12u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_OPTION_TIMESTAMP_ONLY: IP_OPTION_TIMESTAMP_FLAGS = IP_OPTION_TIMESTAMP_FLAGS(0i32); +pub const IPV6_LEAVE_GROUP: u32 = 13u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_OPTION_TIMESTAMP_ADDRESS: IP_OPTION_TIMESTAMP_FLAGS = IP_OPTION_TIMESTAMP_FLAGS(1i32); +pub const IPV6_MINIMUM_MTU: u32 = 1280u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_OPTION_TIMESTAMP_SPECIFIC_ADDRESS: IP_OPTION_TIMESTAMP_FLAGS = IP_OPTION_TIMESTAMP_FLAGS(3i32); -impl ::core::marker::Copy for IP_OPTION_TIMESTAMP_FLAGS {} -impl ::core::clone::Clone for IP_OPTION_TIMESTAMP_FLAGS { - fn clone(&self) -> Self { - *self - } +pub struct IPV6_MREQ { + pub ipv6mr_multiaddr: IN6_ADDR, + pub ipv6mr_interface: u32, } -impl ::core::default::Default for IP_OPTION_TIMESTAMP_FLAGS { - fn default() -> Self { - Self(0) +impl ::core::marker::Copy for IPV6_MREQ {} +impl ::core::clone::Clone for IPV6_MREQ { + fn clone(&self) -> Self { + *self } } -unsafe impl ::windows::core::Abi for IP_OPTION_TIMESTAMP_FLAGS { +unsafe impl ::windows::core::Abi for IPV6_MREQ { type Abi = Self; } -impl ::core::fmt::Debug for IP_OPTION_TIMESTAMP_FLAGS { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IP_OPTION_TIMESTAMP_FLAGS").field(&self.0).finish() +impl ::core::cmp::PartialEq for IPV6_MREQ { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IPV6_MREQ {} +impl ::core::default::Default for IPV6_MREQ { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_ORIGINAL_ARRIVAL_IF: u32 = 47u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_PKTINFO: u32 = 19u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_PKTINFO_EX: u32 = 51u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_PROTECTION_LEVEL: u32 = 23u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_RECEIVE_BROADCAST: u32 = 22u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_RECVDSTADDR: u32 = 25u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_RECVECN: u32 = 50u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_RECVERR: u32 = 75u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_RECVIF: u32 = 24u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_RECVRTHDR: u32 = 38u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_RECVTCLASS: u32 = 40u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_RECVTOS: u32 = 40u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_RECVTTL: u32 = 21u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_RTHDR: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_TCLASS: u32 = 39u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_TOS: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_TTL: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_UNBLOCK_SOURCE: u32 = 18u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_UNICAST_IF: u32 = 31u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_UNSPECIFIED_HOP_LIMIT: i32 = -1i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_UNSPECIFIED_TYPE_OF_SERVICE: i32 = -1i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_UNSPECIFIED_USER_MTU: u32 = 4294967295u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_USER_MTU: u32 = 76u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_VER_MASK: u32 = 240u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_WFP_REDIRECT_CONTEXT: u32 = 70u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_WFP_REDIRECT_RECORDS: u32 = 60u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IRDA_PROTO_SOCK_STREAM: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IRLMP_9WIRE_MODE: u32 = 22u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IRLMP_DISCOVERY_MODE: u32 = 25u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IRLMP_ENUMDEVICES: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IRLMP_EXCLUSIVE_MODE: u32 = 20u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IRLMP_IAS_QUERY: u32 = 18u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IRLMP_IAS_SET: u32 = 17u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IRLMP_IRLPT_MODE: u32 = 21u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IRLMP_PARAMETERS: u32 = 24u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IRLMP_SEND_PDU_LEN: u32 = 19u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IRLMP_SHARP_MODE: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IRLMP_TINYTP_MODE: u32 = 23u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISOPROTO_CLNP: u32 = 31u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISOPROTO_CLTP: u32 = 30u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISOPROTO_ESIS: u32 = 34u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISOPROTO_INACT_NL: u32 = 33u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISOPROTO_INTRAISIS: u32 = 35u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISOPROTO_TP: u32 = 29u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISOPROTO_TP0: u32 = 25u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISOPROTO_TP1: u32 = 26u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISOPROTO_TP2: u32 = 27u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISOPROTO_TP3: u32 = 28u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISOPROTO_TP4: u32 = 29u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISOPROTO_X25: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISO_EXP_DATA_NUSE: u32 = 1u32; +pub const IPV6_MTU: u32 = 72u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISO_EXP_DATA_USE: u32 = 0u32; +pub const IPV6_MTU_DISCOVER: u32 = 71u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISO_HIERARCHICAL: u32 = 0u32; +pub const IPV6_MULTICAST_HOPS: u32 = 10u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISO_MAX_ADDR_LENGTH: u32 = 64u32; +pub const IPV6_MULTICAST_IF: u32 = 9u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ISO_NON_HIERARCHICAL: u32 = 1u32; +pub const IPV6_MULTICAST_LOOP: u32 = 11u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn InetNtopW(family: i32, paddr: *const ::core::ffi::c_void, pstringbuf: &mut [u16]) -> ::windows::core::PWSTR { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn InetNtopW(family: i32, paddr: *const ::core::ffi::c_void, pstringbuf: ::windows::core::PWSTR, stringbufsize: usize) -> ::windows::core::PWSTR; +pub union IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS { + pub Anonymous: IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0, + pub Value: u32, +} +impl ::core::marker::Copy for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS {} +impl ::core::clone::Clone for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS { + fn clone(&self) -> Self { + *self } - InetNtopW(family, ::core::mem::transmute(paddr), ::core::mem::transmute(pstringbuf.as_ptr()), pstringbuf.len() as _) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn InetPtonW<'a, P0>(family: i32, pszaddrstring: P0, paddrbuf: *mut ::core::ffi::c_void) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn InetPtonW(family: i32, pszaddrstring: ::windows::core::PCWSTR, paddrbuf: *mut ::core::ffi::c_void) -> i32; +unsafe impl ::windows::core::Abi for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS {} +impl ::core::default::Default for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - InetPtonW(family, pszaddrstring.into(), ::core::mem::transmute(paddrbuf)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const JL_BOTH: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const JL_RECEIVER_ONLY: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const JL_SENDER_ONLY: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LAYERED_PROTOCOL: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LITTLEENDIAN: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_BAUD_115200: u32 = 115200u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_BAUD_1152K: u32 = 1152000u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_BAUD_1200: u32 = 1200u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_BAUD_16M: u32 = 16000000u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_BAUD_19200: u32 = 19200u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_BAUD_2400: u32 = 2400u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_BAUD_38400: u32 = 38400u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_BAUD_4M: u32 = 4000000u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_BAUD_57600: u32 = 57600u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_BAUD_576K: u32 = 576000u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_BAUD_9600: u32 = 9600u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_HB1_Computer: i32 = 4i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_HB1_Fax: i32 = 32i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_HB1_LANAccess: i32 = 64i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_HB1_Modem: i32 = 16i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_HB1_PDA_Palmtop: i32 = 2i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_HB1_PnP: i32 = 1i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_HB1_Printer: i32 = 8i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_HB2_FileServer: i32 = 2i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_HB2_Telephony: i32 = 1i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LM_HB_Extension: i32 = 128i32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct LM_IRPARMS { - pub nTXDataBytes: u32, - pub nRXDataBytes: u32, - pub nBaudRate: u32, - pub thresholdTime: u32, - pub discTime: u32, - pub nMSLinkTurn: u16, - pub nTXPackets: u8, - pub nRXPackets: u8, +pub struct IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 { + pub _bitfield: u8, + pub Reserved2: [u8; 3], } -impl ::core::marker::Copy for LM_IRPARMS {} -impl ::core::clone::Clone for LM_IRPARMS { +impl ::core::marker::Copy for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 {} +impl ::core::clone::Clone for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for LM_IRPARMS { +impl ::core::fmt::Debug for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("LM_IRPARMS").field("nTXDataBytes", &self.nTXDataBytes).field("nRXDataBytes", &self.nRXDataBytes).field("nBaudRate", &self.nBaudRate).field("thresholdTime", &self.thresholdTime).field("discTime", &self.discTime).field("nMSLinkTurn", &self.nMSLinkTurn).field("nTXPackets", &self.nTXPackets).field("nRXPackets", &self.nRXPackets).finish() + f.debug_struct("IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0").field("_bitfield", &self._bitfield).field("Reserved2", &self.Reserved2).finish() } } -unsafe impl ::windows::core::Abi for LM_IRPARMS { +unsafe impl ::windows::core::Abi for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for LM_IRPARMS { +impl ::core::cmp::PartialEq for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for LM_IRPARMS {} -impl ::core::default::Default for LM_IRPARMS { +impl ::core::cmp::Eq for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 {} +impl ::core::default::Default for IPV6_NEIGHBOR_ADVERTISEMENT_FLAGS_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LOG2_BITS_PER_BYTE: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPBLOCKINGCALLBACK = ::core::option::Option super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPCONDITIONPROC = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPFN_ACCEPTEX = ::core::option::Option super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPFN_CONNECTEX = ::core::option::Option super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPFN_DISCONNECTEX = ::core::option::Option super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPFN_GETACCEPTEXSOCKADDRS = ::core::option::Option; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPFN_NSPAPI = ::core::option::Option u32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPFN_RIOCLOSECOMPLETIONQUEUE = ::core::option::Option; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPFN_RIOCREATECOMPLETIONQUEUE = ::core::option::Option *mut RIO_CQ_t>; +pub const IPV6_NRT_INTERFACE: u32 = 74u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPFN_RIOCREATEREQUESTQUEUE = ::core::option::Option *mut RIO_RQ_t>; +pub struct IPV6_OPTION_HEADER { + pub Type: u8, + pub DataLength: u8, +} +impl ::core::marker::Copy for IPV6_OPTION_HEADER {} +impl ::core::clone::Clone for IPV6_OPTION_HEADER { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for IPV6_OPTION_HEADER { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("IPV6_OPTION_HEADER").field("Type", &self.Type).field("DataLength", &self.DataLength).finish() + } +} +unsafe impl ::windows::core::Abi for IPV6_OPTION_HEADER { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IPV6_OPTION_HEADER { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IPV6_OPTION_HEADER {} +impl ::core::default::Default for IPV6_OPTION_HEADER { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPFN_RIODEQUEUECOMPLETION = ::core::option::Option u32>; +pub struct IPV6_OPTION_JUMBOGRAM { + pub Header: IPV6_OPTION_HEADER, + pub JumbogramLength: [u8; 4], +} +impl ::core::marker::Copy for IPV6_OPTION_JUMBOGRAM {} +impl ::core::clone::Clone for IPV6_OPTION_JUMBOGRAM { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for IPV6_OPTION_JUMBOGRAM { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("IPV6_OPTION_JUMBOGRAM").field("Header", &self.Header).field("JumbogramLength", &self.JumbogramLength).finish() + } +} +unsafe impl ::windows::core::Abi for IPV6_OPTION_JUMBOGRAM { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IPV6_OPTION_JUMBOGRAM { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IPV6_OPTION_JUMBOGRAM {} +impl ::core::default::Default for IPV6_OPTION_JUMBOGRAM { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPFN_RIODEREGISTERBUFFER = ::core::option::Option; +pub struct IPV6_OPTION_ROUTER_ALERT { + pub Header: IPV6_OPTION_HEADER, + pub Value: [u8; 2], +} +impl ::core::marker::Copy for IPV6_OPTION_ROUTER_ALERT {} +impl ::core::clone::Clone for IPV6_OPTION_ROUTER_ALERT { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for IPV6_OPTION_ROUTER_ALERT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("IPV6_OPTION_ROUTER_ALERT").field("Header", &self.Header).field("Value", &self.Value).finish() + } +} +unsafe impl ::windows::core::Abi for IPV6_OPTION_ROUTER_ALERT { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IPV6_OPTION_ROUTER_ALERT { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IPV6_OPTION_ROUTER_ALERT {} +impl ::core::default::Default for IPV6_OPTION_ROUTER_ALERT { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPFN_RIONOTIFY = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPFN_RIORECEIVE = ::core::option::Option super::super::Foundation::BOOL>; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct IPV6_OPTION_TYPE(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPFN_RIORECEIVEEX = ::core::option::Option i32>; +pub const IP6OPT_PAD1: IPV6_OPTION_TYPE = IPV6_OPTION_TYPE(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPFN_RIOREGISTERBUFFER = ::core::option::Option *mut RIO_BUFFERID_t>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPFN_RIORESIZECOMPLETIONQUEUE = ::core::option::Option super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPFN_RIORESIZEREQUESTQUEUE = ::core::option::Option super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPFN_RIOSEND = ::core::option::Option super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPFN_RIOSENDEX = ::core::option::Option super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPFN_TRANSMITFILE = ::core::option::Option super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPFN_TRANSMITPACKETS = ::core::option::Option super::super::Foundation::BOOL>; +pub const IP6OPT_PADN: IPV6_OPTION_TYPE = IPV6_OPTION_TYPE(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPFN_WSAPOLL = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPFN_WSARECVMSG = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPFN_WSASENDMSG = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPLOOKUPSERVICE_COMPLETION_ROUTINE = ::core::option::Option; +pub const IP6OPT_TUNNEL_LIMIT: IPV6_OPTION_TYPE = IPV6_OPTION_TYPE(4i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPNSPCLEANUP = ::core::option::Option i32>; +pub const IP6OPT_ROUTER_ALERT: IPV6_OPTION_TYPE = IPV6_OPTION_TYPE(5i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPNSPGETSERVICECLASSINFO = ::core::option::Option i32>; +pub const IP6OPT_JUMBO: IPV6_OPTION_TYPE = IPV6_OPTION_TYPE(194i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPNSPINSTALLSERVICECLASS = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPNSPIOCTL = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -pub type LPNSPLOOKUPSERVICEBEGIN = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPNSPLOOKUPSERVICEEND = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -pub type LPNSPLOOKUPSERVICENEXT = ::core::option::Option i32>; +pub const IP6OPT_NSAP_ADDR: IPV6_OPTION_TYPE = IPV6_OPTION_TYPE(195i32); +impl ::core::marker::Copy for IPV6_OPTION_TYPE {} +impl ::core::clone::Clone for IPV6_OPTION_TYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for IPV6_OPTION_TYPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for IPV6_OPTION_TYPE { + type Abi = Self; +} +impl ::core::fmt::Debug for IPV6_OPTION_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("IPV6_OPTION_TYPE").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPNSPREMOVESERVICECLASS = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -pub type LPNSPSETSERVICE = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] -pub type LPNSPSTARTUP = ::core::option::Option i32>; +pub const IPV6_PKTINFO: u32 = 19u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPNSPV2CLEANUP = ::core::option::Option i32>; +pub const IPV6_PKTINFO_EX: u32 = 51u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPNSPV2CLIENTSESSIONRUNDOWN = ::core::option::Option; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -pub type LPNSPV2LOOKUPSERVICEBEGIN = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPNSPV2LOOKUPSERVICEEND = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -pub type LPNSPV2LOOKUPSERVICENEXTEX = ::core::option::Option; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -pub type LPNSPV2SETSERVICEEX = ::core::option::Option; +pub const IPV6_PROTECTION_LEVEL: u32 = 23u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPNSPV2STARTUP = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPSERVICE_CALLBACK_PROC = ::core::option::Option; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPWPUCLOSEEVENT = ::core::option::Option super::super::Foundation::BOOL>; +pub const IPV6_RECVDSTADDR: u32 = 25u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWPUCLOSESOCKETHANDLE = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPWPUCLOSETHREAD = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPWPUCOMPLETEOVERLAPPEDREQUEST = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPWPUCREATEEVENT = ::core::option::Option super::super::Foundation::HANDLE>; +pub const IPV6_RECVECN: u32 = 50u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWPUCREATESOCKETHANDLE = ::core::option::Option SOCKET>; +pub const IPV6_RECVERR: u32 = 75u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWPUFDISSET = ::core::option::Option i32>; +pub const IPV6_RECVIF: u32 = 24u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWPUGETPROVIDERPATH = ::core::option::Option i32>; +pub const IPV6_RECVRTHDR: u32 = 38u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWPUMODIFYIFSHANDLE = ::core::option::Option SOCKET>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPWPUOPENCURRENTTHREAD = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPWPUPOSTMESSAGE = ::core::option::Option super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPWPUQUERYBLOCKINGCALLBACK = ::core::option::Option i32>; +pub const IPV6_RECVTCLASS: u32 = 40u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWPUQUERYSOCKETHANDLECONTEXT = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPWPUQUEUEAPC = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPWPURESETEVENT = ::core::option::Option super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPWPUSETEVENT = ::core::option::Option super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPWSAOVERLAPPED_COMPLETION_ROUTINE = ::core::option::Option; +pub union IPV6_ROUTER_ADVERTISEMENT_FLAGS { + pub Anonymous: IPV6_ROUTER_ADVERTISEMENT_FLAGS_0, + pub Value: u8, +} +impl ::core::marker::Copy for IPV6_ROUTER_ADVERTISEMENT_FLAGS {} +impl ::core::clone::Clone for IPV6_ROUTER_ADVERTISEMENT_FLAGS { + fn clone(&self) -> Self { + *self + } +} +unsafe impl ::windows::core::Abi for IPV6_ROUTER_ADVERTISEMENT_FLAGS { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IPV6_ROUTER_ADVERTISEMENT_FLAGS { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IPV6_ROUTER_ADVERTISEMENT_FLAGS {} +impl ::core::default::Default for IPV6_ROUTER_ADVERTISEMENT_FLAGS { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSAUSERAPC = ::core::option::Option; +pub struct IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 { + pub _bitfield: u8, +} +impl ::core::marker::Copy for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 {} +impl ::core::clone::Clone for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("IPV6_ROUTER_ADVERTISEMENT_FLAGS_0").field("_bitfield", &self._bitfield).finish() + } +} +unsafe impl ::windows::core::Abi for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 {} +impl ::core::default::Default for IPV6_ROUTER_ADVERTISEMENT_FLAGS_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSCDEINSTALLPROVIDER = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPWSCENABLENSPROVIDER = ::core::option::Option i32>; +pub struct IPV6_ROUTING_HEADER { + pub NextHeader: u8, + pub Length: u8, + pub RoutingType: u8, + pub SegmentsLeft: u8, + pub Reserved: [u8; 4], +} +impl ::core::marker::Copy for IPV6_ROUTING_HEADER {} +impl ::core::clone::Clone for IPV6_ROUTING_HEADER { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for IPV6_ROUTING_HEADER { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("IPV6_ROUTING_HEADER").field("NextHeader", &self.NextHeader).field("Length", &self.Length).field("RoutingType", &self.RoutingType).field("SegmentsLeft", &self.SegmentsLeft).field("Reserved", &self.Reserved).finish() + } +} +unsafe impl ::windows::core::Abi for IPV6_ROUTING_HEADER { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IPV6_ROUTING_HEADER { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IPV6_ROUTING_HEADER {} +impl ::core::default::Default for IPV6_ROUTING_HEADER { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSCENUMPROTOCOLS = ::core::option::Option i32>; +pub const IPV6_RTHDR: u32 = 32u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSCGETPROVIDERPATH = ::core::option::Option i32>; +pub const IPV6_TCLASS: u32 = 39u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSCINSTALLNAMESPACE = ::core::option::Option i32>; +pub const IPV6_TRAFFIC_CLASS_MASK: u32 = 49167u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSCINSTALLPROVIDER = ::core::option::Option i32>; +pub const IPV6_UNICAST_HOPS: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSCUNINSTALLNAMESPACE = ::core::option::Option i32>; +pub const IPV6_UNICAST_IF: u32 = 31u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSCUPDATEPROVIDER = ::core::option::Option i32>; +pub const IPV6_USER_MTU: u32 = 76u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSCWRITENAMESPACEORDER = ::core::option::Option i32>; +pub const IPV6_V6ONLY: u32 = 27u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSCWRITEPROVIDERORDER = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPWSPACCEPT = ::core::option::Option SOCKET>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPWSPADDRESSTOSTRING = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPWSPASYNCSELECT = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type LPWSPBIND = ::core::option::Option i32>; +pub const IPV6_VERSION: u32 = 96u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSPCANCELBLOCKINGCALL = ::core::option::Option i32>; +pub const IPV6_WFP_REDIRECT_CONTEXT: u32 = 70u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSPCLEANUP = ::core::option::Option i32>; +pub const IPV6_WFP_REDIRECT_RECORDS: u32 = 60u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSPCLOSESOCKET = ::core::option::Option i32>; +pub const IPX_ADDRESS: u32 = 16391u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub type LPWSPCONNECT = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSPDUPLICATESOCKET = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +pub struct IPX_ADDRESS_DATA { + pub adapternum: i32, + pub netnum: [u8; 4], + pub nodenum: [u8; 6], + pub wan: super::super::Foundation::BOOLEAN, + pub status: super::super::Foundation::BOOLEAN, + pub maxpkt: i32, + pub linkspeed: u32, +} #[cfg(feature = "Win32_Foundation")] -pub type LPWSPENUMNETWORKEVENTS = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +impl ::core::marker::Copy for IPX_ADDRESS_DATA {} #[cfg(feature = "Win32_Foundation")] -pub type LPWSPEVENTSELECT = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPWSPGETOVERLAPPEDRESULT = ::core::option::Option super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +impl ::core::clone::Clone for IPX_ADDRESS_DATA { + fn clone(&self) -> Self { + *self + } +} #[cfg(feature = "Win32_Foundation")] -pub type LPWSPGETPEERNAME = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +impl ::core::fmt::Debug for IPX_ADDRESS_DATA { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("IPX_ADDRESS_DATA").field("adapternum", &self.adapternum).field("netnum", &self.netnum).field("nodenum", &self.nodenum).field("wan", &self.wan).field("status", &self.status).field("maxpkt", &self.maxpkt).field("linkspeed", &self.linkspeed).finish() + } +} #[cfg(feature = "Win32_Foundation")] -pub type LPWSPGETQOSBYNAME = ::core::option::Option super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +unsafe impl ::windows::core::Abi for IPX_ADDRESS_DATA { + type Abi = Self; +} #[cfg(feature = "Win32_Foundation")] -pub type LPWSPGETSOCKNAME = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSPGETSOCKOPT = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPWSPIOCTL = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +impl ::core::cmp::PartialEq for IPX_ADDRESS_DATA { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} #[cfg(feature = "Win32_Foundation")] -pub type LPWSPJOINLEAF = ::core::option::Option SOCKET>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSPLISTEN = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPWSPRECV = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSPRECVDISCONNECT = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPWSPRECVFROM = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSPSELECT = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPWSPSEND = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSPSENDDISCONNECT = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPWSPSENDTO = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSPSETSOCKOPT = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSPSHUTDOWN = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub type LPWSPSOCKET = ::core::option::Option SOCKET>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub type LPWSPSTARTUP = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +impl ::core::cmp::Eq for IPX_ADDRESS_DATA {} #[cfg(feature = "Win32_Foundation")] -pub type LPWSPSTRINGTOADDRESS = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LSP_CRYPTO_COMPRESS: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LSP_FIREWALL: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LSP_INBOUND_MODIFY: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LSP_INSPECTOR: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LSP_LOCAL_CACHE: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LSP_OUTBOUND_MODIFY: u32 = 32u32; +impl ::core::default::Default for IPX_ADDRESS_DATA { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LSP_PROXY: u32 = 4u32; +pub const IPX_ADDRESS_NOTIFY: u32 = 16396u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LSP_REDIRECTOR: u32 = 2u32; +pub const IPX_DSTYPE: u32 = 16386u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LSP_SYSTEM: u32 = 2147483648u32; +pub const IPX_EXTENDED_ADDRESS: u32 = 16388u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_ADDRCONFIG: u32 = 1048576u32; +pub const IPX_FILTERPTYPE: u32 = 16385u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_API_ANSI: u32 = 16777216u32; +pub const IPX_GETNETINFO: u32 = 16392u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_CONTAINERS: u32 = 2u32; +pub const IPX_GETNETINFO_NORIP: u32 = 16393u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_DEEP: u32 = 1u32; +pub const IPX_IMMEDIATESPXACK: u32 = 16400u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_DISABLE_IDN_ENCODING: u32 = 8388608u32; +pub const IPX_MAXSIZE: u32 = 16390u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_DNS_ONLY: u32 = 131072u32; +pub const IPX_MAX_ADAPTER_NUM: u32 = 16397u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_DUAL_ADDR: u32 = 2097152u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_EXCLUSIVE_CUSTOM_SERVERS: u32 = 134217728u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_EXTENDED_QUERYSET: u32 = 33554432u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_FILESERVER: u32 = 4194304u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_FLUSHCACHE: u32 = 4096u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_FLUSHPREVIOUS: u32 = 8192u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_FORCE_CLEAR_TEXT: u32 = 1073741824u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_NEAREST: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_NOCONTAINERS: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_NON_AUTHORITATIVE: u32 = 16384u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_REQUIRE_SECURE: u32 = 268435456u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_RESOLUTION_HANDLE: u32 = 2147483648u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_RES_SERVICE: u32 = 32768u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_RETURN_ADDR: u32 = 256u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_RETURN_ALIASES: u32 = 1024u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_RETURN_ALL: u32 = 4080u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_RETURN_BLOB: u32 = 512u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_RETURN_COMMENT: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_RETURN_NAME: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_RETURN_PREFERRED_NAMES: u32 = 65536u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_RETURN_QUERY_STRING: u32 = 2048u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_RETURN_RESPONSE_FLAGS: u32 = 262144u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_RETURN_TTL: u32 = 536870912u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_RETURN_TYPE: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_RETURN_VERSION: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_SECURE: u32 = 32768u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LUP_SECURE_WITH_FALLBACK: u32 = 67108864u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LmCharSetASCII: u32 = 0u32; +pub struct IPX_NETNUM_DATA { + pub netnum: [u8; 4], + pub hopcount: u16, + pub netdelay: u16, + pub cardnum: i32, + pub router: [u8; 6], +} +impl ::core::marker::Copy for IPX_NETNUM_DATA {} +impl ::core::clone::Clone for IPX_NETNUM_DATA { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for IPX_NETNUM_DATA { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("IPX_NETNUM_DATA").field("netnum", &self.netnum).field("hopcount", &self.hopcount).field("netdelay", &self.netdelay).field("cardnum", &self.cardnum).field("router", &self.router).finish() + } +} +unsafe impl ::windows::core::Abi for IPX_NETNUM_DATA { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IPX_NETNUM_DATA { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IPX_NETNUM_DATA {} +impl ::core::default::Default for IPX_NETNUM_DATA { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LmCharSetISO_8859_1: u32 = 1u32; +pub const IPX_PTYPE: u32 = 16384u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LmCharSetISO_8859_2: u32 = 2u32; +pub const IPX_RECEIVE_BROADCAST: u32 = 16399u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LmCharSetISO_8859_3: u32 = 3u32; +pub const IPX_RECVHDR: u32 = 16389u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LmCharSetISO_8859_4: u32 = 4u32; +pub const IPX_RERIPNETNUMBER: u32 = 16398u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LmCharSetISO_8859_5: u32 = 5u32; +pub struct IPX_SPXCONNSTATUS_DATA { + pub ConnectionState: u8, + pub WatchDogActive: u8, + pub LocalConnectionId: u16, + pub RemoteConnectionId: u16, + pub LocalSequenceNumber: u16, + pub LocalAckNumber: u16, + pub LocalAllocNumber: u16, + pub RemoteAckNumber: u16, + pub RemoteAllocNumber: u16, + pub LocalSocket: u16, + pub ImmediateAddress: [u8; 6], + pub RemoteNetwork: [u8; 4], + pub RemoteNode: [u8; 6], + pub RemoteSocket: u16, + pub RetransmissionCount: u16, + pub EstimatedRoundTripDelay: u16, + pub RetransmittedPackets: u16, + pub SuppressedPacket: u16, +} +impl ::core::marker::Copy for IPX_SPXCONNSTATUS_DATA {} +impl ::core::clone::Clone for IPX_SPXCONNSTATUS_DATA { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for IPX_SPXCONNSTATUS_DATA { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("IPX_SPXCONNSTATUS_DATA") + .field("ConnectionState", &self.ConnectionState) + .field("WatchDogActive", &self.WatchDogActive) + .field("LocalConnectionId", &self.LocalConnectionId) + .field("RemoteConnectionId", &self.RemoteConnectionId) + .field("LocalSequenceNumber", &self.LocalSequenceNumber) + .field("LocalAckNumber", &self.LocalAckNumber) + .field("LocalAllocNumber", &self.LocalAllocNumber) + .field("RemoteAckNumber", &self.RemoteAckNumber) + .field("RemoteAllocNumber", &self.RemoteAllocNumber) + .field("LocalSocket", &self.LocalSocket) + .field("ImmediateAddress", &self.ImmediateAddress) + .field("RemoteNetwork", &self.RemoteNetwork) + .field("RemoteNode", &self.RemoteNode) + .field("RemoteSocket", &self.RemoteSocket) + .field("RetransmissionCount", &self.RetransmissionCount) + .field("EstimatedRoundTripDelay", &self.EstimatedRoundTripDelay) + .field("RetransmittedPackets", &self.RetransmittedPackets) + .field("SuppressedPacket", &self.SuppressedPacket) + .finish() + } +} +unsafe impl ::windows::core::Abi for IPX_SPXCONNSTATUS_DATA { + type Abi = Self; +} +impl ::core::cmp::PartialEq for IPX_SPXCONNSTATUS_DATA { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for IPX_SPXCONNSTATUS_DATA {} +impl ::core::default::Default for IPX_SPXCONNSTATUS_DATA { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LmCharSetISO_8859_6: u32 = 6u32; +pub const IPX_SPXGETCONNECTIONSTATUS: u32 = 16395u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LmCharSetISO_8859_7: u32 = 7u32; +pub const IPX_STOPFILTERPTYPE: u32 = 16387u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LmCharSetISO_8859_8: u32 = 8u32; +pub const IP_ADD_IFLIST: u32 = 29u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LmCharSetISO_8859_9: u32 = 9u32; +pub const IP_ADD_MEMBERSHIP: u32 = 12u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LmCharSetUNICODE: u32 = 255u32; +pub const IP_ADD_SOURCE_MEMBERSHIP: u32 = 15u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MAXGETHOSTSTRUCT: u32 = 1024u32; +pub const IP_BLOCK_SOURCE: u32 = 17u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MAX_IPV4_HLEN: u32 = 60u32; +pub const IP_DEFAULT_MULTICAST_LOOP: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MAX_IPV4_PACKET: u32 = 65535u32; +pub const IP_DEFAULT_MULTICAST_TTL: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MAX_IPV6_PAYLOAD: u32 = 65535u32; +pub const IP_DEL_IFLIST: u32 = 30u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MAX_MCAST_TTL: u32 = 255u32; +pub const IP_DONTFRAGMENT: u32 = 14u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MAX_PROTOCOL_CHAIN: u32 = 7u32; +pub const IP_DROP_MEMBERSHIP: u32 = 13u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MAX_WINDOW_INCREMENT_PERCENTAGE: u32 = 25u32; +pub const IP_DROP_SOURCE_MEMBERSHIP: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MCAST_BLOCK_SOURCE: u32 = 43u32; +pub const IP_ECN: u32 = 50u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MCAST_JOIN_GROUP: u32 = 41u32; +pub const IP_GET_IFLIST: u32 = 33u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MCAST_JOIN_SOURCE_GROUP: u32 = 45u32; +pub const IP_HDRINCL: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MCAST_LEAVE_GROUP: u32 = 42u32; +pub const IP_HOPLIMIT: u32 = 21u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MCAST_LEAVE_SOURCE_GROUP: u32 = 46u32; +pub const IP_IFLIST: u32 = 28u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MCAST_UNBLOCK_SOURCE: u32 = 44u32; +pub const IP_MAX_MEMBERSHIPS: u32 = 20u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct MLDV2_QUERY_HEADER { - pub IcmpHeader: ICMP_HEADER, - pub Anonymous1: MLDV2_QUERY_HEADER_0, - pub Reserved: u16, - pub MulticastAddress: IN6_ADDR, - pub _bitfield: u8, - pub Anonymous2: MLDV2_QUERY_HEADER_1, - pub SourceCount: u16, +pub struct IP_MREQ { + pub imr_multiaddr: IN_ADDR, + pub imr_interface: IN_ADDR, } -impl ::core::marker::Copy for MLDV2_QUERY_HEADER {} -impl ::core::clone::Clone for MLDV2_QUERY_HEADER { +impl ::core::marker::Copy for IP_MREQ {} +impl ::core::clone::Clone for IP_MREQ { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for MLDV2_QUERY_HEADER { +unsafe impl ::windows::core::Abi for IP_MREQ { type Abi = Self; } -impl ::core::cmp::PartialEq for MLDV2_QUERY_HEADER { +impl ::core::cmp::PartialEq for IP_MREQ { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for MLDV2_QUERY_HEADER {} -impl ::core::default::Default for MLDV2_QUERY_HEADER { +impl ::core::cmp::Eq for IP_MREQ {} +impl ::core::default::Default for IP_MREQ { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union MLDV2_QUERY_HEADER_0 { - pub MaxRespCode: u16, - pub Anonymous: MLDV2_QUERY_HEADER_0_0, +pub struct IP_MREQ_SOURCE { + pub imr_multiaddr: IN_ADDR, + pub imr_sourceaddr: IN_ADDR, + pub imr_interface: IN_ADDR, } -impl ::core::marker::Copy for MLDV2_QUERY_HEADER_0 {} -impl ::core::clone::Clone for MLDV2_QUERY_HEADER_0 { +impl ::core::marker::Copy for IP_MREQ_SOURCE {} +impl ::core::clone::Clone for IP_MREQ_SOURCE { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for MLDV2_QUERY_HEADER_0 { +unsafe impl ::windows::core::Abi for IP_MREQ_SOURCE { type Abi = Self; } -impl ::core::cmp::PartialEq for MLDV2_QUERY_HEADER_0 { +impl ::core::cmp::PartialEq for IP_MREQ_SOURCE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for MLDV2_QUERY_HEADER_0 {} -impl ::core::default::Default for MLDV2_QUERY_HEADER_0 { +impl ::core::cmp::Eq for IP_MREQ_SOURCE {} +impl ::core::default::Default for IP_MREQ_SOURCE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct MLDV2_QUERY_HEADER_0_0 { - pub _bitfield: u16, +pub struct IP_MSFILTER { + pub imsf_multiaddr: IN_ADDR, + pub imsf_interface: IN_ADDR, + pub imsf_fmode: MULTICAST_MODE_TYPE, + pub imsf_numsrc: u32, + pub imsf_slist: [IN_ADDR; 1], } -impl ::core::marker::Copy for MLDV2_QUERY_HEADER_0_0 {} -impl ::core::clone::Clone for MLDV2_QUERY_HEADER_0_0 { +impl ::core::marker::Copy for IP_MSFILTER {} +impl ::core::clone::Clone for IP_MSFILTER { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for MLDV2_QUERY_HEADER_0_0 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("MLDV2_QUERY_HEADER_0_0").field("_bitfield", &self._bitfield).finish() - } -} -unsafe impl ::windows::core::Abi for MLDV2_QUERY_HEADER_0_0 { +unsafe impl ::windows::core::Abi for IP_MSFILTER { type Abi = Self; } -impl ::core::cmp::PartialEq for MLDV2_QUERY_HEADER_0_0 { +impl ::core::cmp::PartialEq for IP_MSFILTER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for MLDV2_QUERY_HEADER_0_0 {} -impl ::core::default::Default for MLDV2_QUERY_HEADER_0_0 { +impl ::core::cmp::Eq for IP_MSFILTER {} +impl ::core::default::Default for IP_MSFILTER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union MLDV2_QUERY_HEADER_1 { - pub QueriersQueryInterfaceCode: u8, - pub Anonymous: MLDV2_QUERY_HEADER_1_0, -} -impl ::core::marker::Copy for MLDV2_QUERY_HEADER_1 {} -impl ::core::clone::Clone for MLDV2_QUERY_HEADER_1 { - fn clone(&self) -> Self { - *self - } -} -unsafe impl ::windows::core::Abi for MLDV2_QUERY_HEADER_1 { - type Abi = Self; -} -impl ::core::cmp::PartialEq for MLDV2_QUERY_HEADER_1 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for MLDV2_QUERY_HEADER_1 {} -impl ::core::default::Default for MLDV2_QUERY_HEADER_1 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub const IP_MTU: u32 = 73u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct MLDV2_QUERY_HEADER_1_0 { - pub _bitfield: u8, -} -impl ::core::marker::Copy for MLDV2_QUERY_HEADER_1_0 {} -impl ::core::clone::Clone for MLDV2_QUERY_HEADER_1_0 { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for MLDV2_QUERY_HEADER_1_0 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("MLDV2_QUERY_HEADER_1_0").field("_bitfield", &self._bitfield).finish() - } -} -unsafe impl ::windows::core::Abi for MLDV2_QUERY_HEADER_1_0 { - type Abi = Self; -} -impl ::core::cmp::PartialEq for MLDV2_QUERY_HEADER_1_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for MLDV2_QUERY_HEADER_1_0 {} -impl ::core::default::Default for MLDV2_QUERY_HEADER_1_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub const IP_MTU_DISCOVER: u32 = 71u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct MLDV2_REPORT_HEADER { - pub IcmpHeader: ICMP_HEADER, - pub Reserved: u16, - pub RecordCount: u16, -} -impl ::core::marker::Copy for MLDV2_REPORT_HEADER {} -impl ::core::clone::Clone for MLDV2_REPORT_HEADER { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for MLDV2_REPORT_HEADER { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("MLDV2_REPORT_HEADER").field("IcmpHeader", &self.IcmpHeader).field("Reserved", &self.Reserved).field("RecordCount", &self.RecordCount).finish() - } -} -unsafe impl ::windows::core::Abi for MLDV2_REPORT_HEADER { - type Abi = Self; -} -impl ::core::cmp::PartialEq for MLDV2_REPORT_HEADER { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for MLDV2_REPORT_HEADER {} -impl ::core::default::Default for MLDV2_REPORT_HEADER { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub const IP_MULTICAST_IF: u32 = 9u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct MLDV2_REPORT_RECORD_HEADER { - pub Type: u8, - pub AuxillaryDataLength: u8, - pub SourceCount: u16, - pub MulticastAddress: IN6_ADDR, -} -impl ::core::marker::Copy for MLDV2_REPORT_RECORD_HEADER {} -impl ::core::clone::Clone for MLDV2_REPORT_RECORD_HEADER { - fn clone(&self) -> Self { - *self - } -} -unsafe impl ::windows::core::Abi for MLDV2_REPORT_RECORD_HEADER { - type Abi = Self; -} -impl ::core::cmp::PartialEq for MLDV2_REPORT_RECORD_HEADER { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for MLDV2_REPORT_RECORD_HEADER {} -impl ::core::default::Default for MLDV2_REPORT_RECORD_HEADER { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub const IP_MULTICAST_LOOP: u32 = 11u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct MLD_HEADER { - pub IcmpHeader: ICMP_HEADER, - pub MaxRespTime: u16, - pub Reserved: u16, - pub MulticastAddress: IN6_ADDR, -} -impl ::core::marker::Copy for MLD_HEADER {} -impl ::core::clone::Clone for MLD_HEADER { - fn clone(&self) -> Self { - *self - } -} -unsafe impl ::windows::core::Abi for MLD_HEADER { - type Abi = Self; -} -impl ::core::cmp::PartialEq for MLD_HEADER { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for MLD_HEADER {} -impl ::core::default::Default for MLD_HEADER { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} +pub const IP_MULTICAST_TTL: u32 = 10u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IP_NRT_INTERFACE: u32 = 74u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IP_OPTIONS: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct MLD_MAX_RESP_CODE_TYPE(pub i32); +pub struct IP_OPTION_TIMESTAMP_FLAGS(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MLD_MAX_RESP_CODE_TYPE_NORMAL: MLD_MAX_RESP_CODE_TYPE = MLD_MAX_RESP_CODE_TYPE(0i32); +pub const IP_OPTION_TIMESTAMP_ONLY: IP_OPTION_TIMESTAMP_FLAGS = IP_OPTION_TIMESTAMP_FLAGS(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MLD_MAX_RESP_CODE_TYPE_FLOAT: MLD_MAX_RESP_CODE_TYPE = MLD_MAX_RESP_CODE_TYPE(1i32); -impl ::core::marker::Copy for MLD_MAX_RESP_CODE_TYPE {} -impl ::core::clone::Clone for MLD_MAX_RESP_CODE_TYPE { +pub const IP_OPTION_TIMESTAMP_ADDRESS: IP_OPTION_TIMESTAMP_FLAGS = IP_OPTION_TIMESTAMP_FLAGS(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IP_OPTION_TIMESTAMP_SPECIFIC_ADDRESS: IP_OPTION_TIMESTAMP_FLAGS = IP_OPTION_TIMESTAMP_FLAGS(3i32); +impl ::core::marker::Copy for IP_OPTION_TIMESTAMP_FLAGS {} +impl ::core::clone::Clone for IP_OPTION_TIMESTAMP_FLAGS { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for MLD_MAX_RESP_CODE_TYPE { +impl ::core::default::Default for IP_OPTION_TIMESTAMP_FLAGS { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for MLD_MAX_RESP_CODE_TYPE { +unsafe impl ::windows::core::Abi for IP_OPTION_TIMESTAMP_FLAGS { type Abi = Self; } -impl ::core::fmt::Debug for MLD_MAX_RESP_CODE_TYPE { +impl ::core::fmt::Debug for IP_OPTION_TIMESTAMP_FLAGS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("MLD_MAX_RESP_CODE_TYPE").field(&self.0).finish() + f.debug_tuple("IP_OPTION_TIMESTAMP_FLAGS").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MSG_BCAST: u32 = 1024u32; +pub const IP_ORIGINAL_ARRIVAL_IF: u32 = 47u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MSG_CTRUNC: u32 = 512u32; +pub const IP_PKTINFO: u32 = 19u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MSG_ERRQUEUE: u32 = 4096u32; +pub const IP_PKTINFO_EX: u32 = 51u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MSG_INTERRUPT: u32 = 16u32; +pub const IP_PROTECTION_LEVEL: u32 = 23u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MSG_MAXIOVLEN: u32 = 16u32; +pub const IP_RECEIVE_BROADCAST: u32 = 22u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MSG_MCAST: u32 = 2048u32; +pub const IP_RECVDSTADDR: u32 = 25u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MSG_PARTIAL: u32 = 32768u32; +pub const IP_RECVECN: u32 = 50u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MSG_TRUNC: u32 = 256u32; +pub const IP_RECVERR: u32 = 75u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct MULTICAST_MODE_TYPE(pub i32); +pub const IP_RECVIF: u32 = 24u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MCAST_INCLUDE: MULTICAST_MODE_TYPE = MULTICAST_MODE_TYPE(0i32); +pub const IP_RECVRTHDR: u32 = 38u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MCAST_EXCLUDE: MULTICAST_MODE_TYPE = MULTICAST_MODE_TYPE(1i32); -impl ::core::marker::Copy for MULTICAST_MODE_TYPE {} -impl ::core::clone::Clone for MULTICAST_MODE_TYPE { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for MULTICAST_MODE_TYPE { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for MULTICAST_MODE_TYPE { - type Abi = Self; -} -impl ::core::fmt::Debug for MULTICAST_MODE_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("MULTICAST_MODE_TYPE").field(&self.0).finish() - } -} -#[repr(C)] +pub const IP_RECVTCLASS: u32 = 40u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct NAPI_DOMAIN_DESCRIPTION_BLOB { - pub AuthLevel: u32, - pub cchDomainName: u32, - pub OffsetNextDomainDescription: u32, - pub OffsetThisDomainName: u32, -} -impl ::core::marker::Copy for NAPI_DOMAIN_DESCRIPTION_BLOB {} -impl ::core::clone::Clone for NAPI_DOMAIN_DESCRIPTION_BLOB { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for NAPI_DOMAIN_DESCRIPTION_BLOB { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NAPI_DOMAIN_DESCRIPTION_BLOB").field("AuthLevel", &self.AuthLevel).field("cchDomainName", &self.cchDomainName).field("OffsetNextDomainDescription", &self.OffsetNextDomainDescription).field("OffsetThisDomainName", &self.OffsetThisDomainName).finish() - } -} -unsafe impl ::windows::core::Abi for NAPI_DOMAIN_DESCRIPTION_BLOB { - type Abi = Self; -} -impl ::core::cmp::PartialEq for NAPI_DOMAIN_DESCRIPTION_BLOB { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for NAPI_DOMAIN_DESCRIPTION_BLOB {} -impl ::core::default::Default for NAPI_DOMAIN_DESCRIPTION_BLOB { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub const IP_RECVTOS: u32 = 40u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct NAPI_PROVIDER_INSTALLATION_BLOB { - pub dwVersion: u32, - pub dwProviderType: u32, - pub fSupportsWildCard: u32, - pub cDomains: u32, - pub OffsetFirstDomain: u32, -} -impl ::core::marker::Copy for NAPI_PROVIDER_INSTALLATION_BLOB {} -impl ::core::clone::Clone for NAPI_PROVIDER_INSTALLATION_BLOB { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for NAPI_PROVIDER_INSTALLATION_BLOB { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NAPI_PROVIDER_INSTALLATION_BLOB").field("dwVersion", &self.dwVersion).field("dwProviderType", &self.dwProviderType).field("fSupportsWildCard", &self.fSupportsWildCard).field("cDomains", &self.cDomains).field("OffsetFirstDomain", &self.OffsetFirstDomain).finish() - } -} -unsafe impl ::windows::core::Abi for NAPI_PROVIDER_INSTALLATION_BLOB { - type Abi = Self; -} -impl ::core::cmp::PartialEq for NAPI_PROVIDER_INSTALLATION_BLOB { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for NAPI_PROVIDER_INSTALLATION_BLOB {} -impl ::core::default::Default for NAPI_PROVIDER_INSTALLATION_BLOB { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} +pub const IP_RECVTTL: u32 = 21u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NAPI_PROVIDER_LEVEL(pub i32); +pub const IP_RTHDR: u32 = 32u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ProviderLevel_None: NAPI_PROVIDER_LEVEL = NAPI_PROVIDER_LEVEL(0i32); +pub const IP_TCLASS: u32 = 39u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ProviderLevel_Secondary: NAPI_PROVIDER_LEVEL = NAPI_PROVIDER_LEVEL(1i32); +pub const IP_TOS: u32 = 3u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ProviderLevel_Primary: NAPI_PROVIDER_LEVEL = NAPI_PROVIDER_LEVEL(2i32); -impl ::core::marker::Copy for NAPI_PROVIDER_LEVEL {} -impl ::core::clone::Clone for NAPI_PROVIDER_LEVEL { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for NAPI_PROVIDER_LEVEL { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for NAPI_PROVIDER_LEVEL { - type Abi = Self; -} -impl ::core::fmt::Debug for NAPI_PROVIDER_LEVEL { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NAPI_PROVIDER_LEVEL").field(&self.0).finish() - } -} +pub const IP_TTL: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NAPI_PROVIDER_TYPE(pub i32); +pub const IP_UNBLOCK_SOURCE: u32 = 18u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ProviderType_Application: NAPI_PROVIDER_TYPE = NAPI_PROVIDER_TYPE(1i32); +pub const IP_UNICAST_IF: u32 = 31u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ProviderType_Service: NAPI_PROVIDER_TYPE = NAPI_PROVIDER_TYPE(2i32); -impl ::core::marker::Copy for NAPI_PROVIDER_TYPE {} -impl ::core::clone::Clone for NAPI_PROVIDER_TYPE { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for NAPI_PROVIDER_TYPE { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for NAPI_PROVIDER_TYPE { - type Abi = Self; -} -impl ::core::fmt::Debug for NAPI_PROVIDER_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NAPI_PROVIDER_TYPE").field(&self.0).finish() - } -} +pub const IP_UNSPECIFIED_HOP_LIMIT: i32 = -1i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_NA_FLAG_OVERRIDE: u32 = 536870912u32; +pub const IP_UNSPECIFIED_TYPE_OF_SERVICE: i32 = -1i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_NA_FLAG_ROUTER: u32 = 2147483648u32; +pub const IP_UNSPECIFIED_USER_MTU: u32 = 4294967295u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_NA_FLAG_SOLICITED: u32 = 1073741824u32; +pub const IP_USER_MTU: u32 = 76u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct ND_OPTION_TYPE(pub i32); +pub const IP_VER_MASK: u32 = 240u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_SOURCE_LINKADDR: ND_OPTION_TYPE = ND_OPTION_TYPE(1i32); +pub const IP_WFP_REDIRECT_CONTEXT: u32 = 70u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_TARGET_LINKADDR: ND_OPTION_TYPE = ND_OPTION_TYPE(2i32); +pub const IP_WFP_REDIRECT_RECORDS: u32 = 60u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_PREFIX_INFORMATION: ND_OPTION_TYPE = ND_OPTION_TYPE(3i32); +pub const IRDA_PROTO_SOCK_STREAM: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_REDIRECTED_HEADER: ND_OPTION_TYPE = ND_OPTION_TYPE(4i32); +pub const IRLMP_9WIRE_MODE: u32 = 22u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_MTU: ND_OPTION_TYPE = ND_OPTION_TYPE(5i32); +pub const IRLMP_DISCOVERY_MODE: u32 = 25u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_NBMA_SHORTCUT_LIMIT: ND_OPTION_TYPE = ND_OPTION_TYPE(6i32); +pub const IRLMP_ENUMDEVICES: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_ADVERTISEMENT_INTERVAL: ND_OPTION_TYPE = ND_OPTION_TYPE(7i32); +pub const IRLMP_EXCLUSIVE_MODE: u32 = 20u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_HOME_AGENT_INFORMATION: ND_OPTION_TYPE = ND_OPTION_TYPE(8i32); +pub const IRLMP_IAS_QUERY: u32 = 18u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_SOURCE_ADDR_LIST: ND_OPTION_TYPE = ND_OPTION_TYPE(9i32); +pub const IRLMP_IAS_SET: u32 = 17u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_TARGET_ADDR_LIST: ND_OPTION_TYPE = ND_OPTION_TYPE(10i32); +pub const IRLMP_IRLPT_MODE: u32 = 21u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_ROUTE_INFO: ND_OPTION_TYPE = ND_OPTION_TYPE(24i32); +pub const IRLMP_PARAMETERS: u32 = 24u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_RDNSS: ND_OPTION_TYPE = ND_OPTION_TYPE(25i32); +pub const IRLMP_SEND_PDU_LEN: u32 = 19u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_DNSSL: ND_OPTION_TYPE = ND_OPTION_TYPE(31i32); -impl ::core::marker::Copy for ND_OPTION_TYPE {} -impl ::core::clone::Clone for ND_OPTION_TYPE { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for ND_OPTION_TYPE { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for ND_OPTION_TYPE { - type Abi = Self; -} -impl ::core::fmt::Debug for ND_OPTION_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ND_OPTION_TYPE").field(&self.0).finish() - } -} +pub const IRLMP_SHARP_MODE: u32 = 32u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_DNSSL_MIN_LEN: u32 = 16u32; +pub const IRLMP_TINYTP_MODE: u32 = 23u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_PI_FLAG_AUTO: u32 = 64u32; +pub const ISOPROTO_CLNP: u32 = 31u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_PI_FLAG_ONLINK: u32 = 128u32; +pub const ISOPROTO_CLTP: u32 = 30u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_PI_FLAG_ROUTE: u32 = 1u32; +pub const ISOPROTO_ESIS: u32 = 34u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_PI_FLAG_ROUTER_ADDR: u32 = 32u32; +pub const ISOPROTO_INACT_NL: u32 = 33u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_PI_FLAG_SITE_PREFIX: u32 = 16u32; +pub const ISOPROTO_INTRAISIS: u32 = 35u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_RDNSS_MIN_LEN: u32 = 24u32; +pub const ISOPROTO_TP: u32 = 29u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_OPT_RI_FLAG_PREFERENCE: u32 = 24u32; +pub const ISOPROTO_TP0: u32 = 25u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_RA_FLAG_HOME_AGENT: u32 = 32u32; +pub const ISOPROTO_TP1: u32 = 26u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_RA_FLAG_MANAGED: u32 = 128u32; +pub const ISOPROTO_TP2: u32 = 27u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_RA_FLAG_OTHER: u32 = 64u32; +pub const ISOPROTO_TP3: u32 = 28u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ND_RA_FLAG_PREFERENCE: u32 = 24u32; +pub const ISOPROTO_TP4: u32 = 29u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NETBIOS_GROUP_NAME: u32 = 1u32; +pub const ISOPROTO_X25: u32 = 32u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NETBIOS_NAME_LENGTH: u32 = 16u32; +pub const ISO_EXP_DATA_NUSE: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NETBIOS_TYPE_QUICK_GROUP: u32 = 3u32; +pub const ISO_EXP_DATA_USE: u32 = 0u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NETBIOS_TYPE_QUICK_UNIQUE: u32 = 2u32; +pub const ISO_HIERARCHICAL: u32 = 0u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NETBIOS_UNIQUE_NAME: u32 = 0u32; -#[repr(C)] +pub const ISO_MAX_ADDR_LENGTH: u32 = 64u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct NETRESOURCE2A { - pub dwScope: u32, - pub dwType: u32, - pub dwUsage: u32, - pub dwDisplayType: u32, - pub lpLocalName: ::windows::core::PSTR, - pub lpRemoteName: ::windows::core::PSTR, - pub lpComment: ::windows::core::PSTR, - pub ns_info: NS_INFOA, - pub ServiceType: ::windows::core::GUID, - pub dwProtocols: u32, - pub lpiProtocols: *mut i32, -} -impl ::core::marker::Copy for NETRESOURCE2A {} -impl ::core::clone::Clone for NETRESOURCE2A { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for NETRESOURCE2A { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NETRESOURCE2A").field("dwScope", &self.dwScope).field("dwType", &self.dwType).field("dwUsage", &self.dwUsage).field("dwDisplayType", &self.dwDisplayType).field("lpLocalName", &self.lpLocalName).field("lpRemoteName", &self.lpRemoteName).field("lpComment", &self.lpComment).field("ns_info", &self.ns_info).field("ServiceType", &self.ServiceType).field("dwProtocols", &self.dwProtocols).field("lpiProtocols", &self.lpiProtocols).finish() - } -} -unsafe impl ::windows::core::Abi for NETRESOURCE2A { - type Abi = Self; -} -impl ::core::cmp::PartialEq for NETRESOURCE2A { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for NETRESOURCE2A {} -impl ::core::default::Default for NETRESOURCE2A { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +pub const ISO_NON_HIERARCHICAL: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn InetNtopW(family: i32, paddr: *const ::core::ffi::c_void, pstringbuf: &mut [u16]) -> ::windows::core::PWSTR { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn InetNtopW(family: i32, paddr: *const ::core::ffi::c_void, pstringbuf: ::windows::core::PWSTR, stringbufsize: usize) -> ::windows::core::PWSTR; } + InetNtopW(family, ::core::mem::transmute(paddr), ::core::mem::transmute(pstringbuf.as_ptr()), pstringbuf.len() as _) } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct NETRESOURCE2W { - pub dwScope: u32, - pub dwType: u32, - pub dwUsage: u32, - pub dwDisplayType: u32, - pub lpLocalName: ::windows::core::PWSTR, - pub lpRemoteName: ::windows::core::PWSTR, - pub lpComment: ::windows::core::PWSTR, - pub ns_info: NS_INFOA, - pub ServiceType: ::windows::core::GUID, - pub dwProtocols: u32, - pub lpiProtocols: *mut i32, -} -impl ::core::marker::Copy for NETRESOURCE2W {} -impl ::core::clone::Clone for NETRESOURCE2W { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for NETRESOURCE2W { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NETRESOURCE2W").field("dwScope", &self.dwScope).field("dwType", &self.dwType).field("dwUsage", &self.dwUsage).field("dwDisplayType", &self.dwDisplayType).field("lpLocalName", &self.lpLocalName).field("lpRemoteName", &self.lpRemoteName).field("lpComment", &self.lpComment).field("ns_info", &self.ns_info).field("ServiceType", &self.ServiceType).field("dwProtocols", &self.dwProtocols).field("lpiProtocols", &self.lpiProtocols).finish() - } -} -unsafe impl ::windows::core::Abi for NETRESOURCE2W { - type Abi = Self; -} -impl ::core::cmp::PartialEq for NETRESOURCE2W { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for NETRESOURCE2W {} -impl ::core::default::Default for NETRESOURCE2W { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[inline] +pub unsafe fn InetPtonW<'a, P0>(family: i32, pszaddrstring: P0, paddrbuf: *mut ::core::ffi::c_void) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn InetPtonW(family: i32, pszaddrstring: ::windows::core::PCWSTR, paddrbuf: *mut ::core::ffi::c_void) -> i32; } + InetPtonW(family, pszaddrstring.into(), ::core::mem::transmute(paddrbuf)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NI_DGRAM: u32 = 16u32; +pub const JL_BOTH: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NI_MAXHOST: u32 = 1025u32; +pub const JL_RECEIVER_ONLY: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NI_MAXSERV: u32 = 32u32; +pub const JL_SENDER_ONLY: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NI_NAMEREQD: u32 = 4u32; +pub const LAYERED_PROTOCOL: u32 = 0u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NI_NOFQDN: u32 = 1u32; +pub const LITTLEENDIAN: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NI_NUMERICHOST: u32 = 2u32; +pub const LM_BAUD_115200: u32 = 115200u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NI_NUMERICSERV: u32 = 8u32; +pub const LM_BAUD_1152K: u32 = 1152000u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NLA_ALLUSERS_NETWORK: u32 = 1u32; +pub const LM_BAUD_1200: u32 = 1200u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_BAUD_16M: u32 = 16000000u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_BAUD_19200: u32 = 19200u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_BAUD_2400: u32 = 2400u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_BAUD_38400: u32 = 38400u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_BAUD_4M: u32 = 4000000u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_BAUD_57600: u32 = 57600u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_BAUD_576K: u32 = 576000u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_BAUD_9600: u32 = 9600u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_HB1_Computer: i32 = 4i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_HB1_Fax: i32 = 32i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_HB1_LANAccess: i32 = 64i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_HB1_Modem: i32 = 16i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_HB1_PDA_Palmtop: i32 = 2i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_HB1_PnP: i32 = 1i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_HB1_Printer: i32 = 8i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_HB2_FileServer: i32 = 2i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_HB2_Telephony: i32 = 1i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LM_HB_Extension: i32 = 128i32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct NLA_BLOB { - pub header: NLA_BLOB_1, - pub data: NLA_BLOB_0, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct LM_IRPARMS { + pub nTXDataBytes: u32, + pub nRXDataBytes: u32, + pub nBaudRate: u32, + pub thresholdTime: u32, + pub discTime: u32, + pub nMSLinkTurn: u16, + pub nTXPackets: u8, + pub nRXPackets: u8, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for NLA_BLOB {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for NLA_BLOB { +impl ::core::marker::Copy for LM_IRPARMS {} +impl ::core::clone::Clone for LM_IRPARMS { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for NLA_BLOB { +impl ::core::fmt::Debug for LM_IRPARMS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("LM_IRPARMS").field("nTXDataBytes", &self.nTXDataBytes).field("nRXDataBytes", &self.nRXDataBytes).field("nBaudRate", &self.nBaudRate).field("thresholdTime", &self.thresholdTime).field("discTime", &self.discTime).field("nMSLinkTurn", &self.nMSLinkTurn).field("nTXPackets", &self.nTXPackets).field("nRXPackets", &self.nRXPackets).finish() + } +} +unsafe impl ::windows::core::Abi for LM_IRPARMS { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for NLA_BLOB { +impl ::core::cmp::PartialEq for LM_IRPARMS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for NLA_BLOB {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for NLA_BLOB { +impl ::core::cmp::Eq for LM_IRPARMS {} +impl ::core::default::Default for LM_IRPARMS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LOG2_BITS_PER_BYTE: u32 = 3u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub union NLA_BLOB_0 { - pub rawData: [super::super::Foundation::CHAR; 1], - pub interfaceData: NLA_BLOB_0_2, - pub locationData: NLA_BLOB_0_3, - pub connectivity: NLA_BLOB_0_1, - pub ICS: NLA_BLOB_0_0, -} +pub type LPBLOCKINGCALLBACK = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPCONDITIONPROC = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPFN_ACCEPTEX = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPFN_CONNECTEX = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPFN_DISCONNECTEX = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for NLA_BLOB_0 {} +pub type LPFN_GETACCEPTEXSOCKADDRS = ::core::option::Option; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPFN_NSPAPI = ::core::option::Option u32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPFN_RIOCLOSECOMPLETIONQUEUE = ::core::option::Option; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for NLA_BLOB_0 { - fn clone(&self) -> Self { - *self - } -} +pub type LPFN_RIOCREATECOMPLETIONQUEUE = ::core::option::Option *mut RIO_CQ_t>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPFN_RIOCREATEREQUESTQUEUE = ::core::option::Option *mut RIO_RQ_t>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPFN_RIODEQUEUECOMPLETION = ::core::option::Option u32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPFN_RIODEREGISTERBUFFER = ::core::option::Option; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPFN_RIONOTIFY = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for NLA_BLOB_0 { - type Abi = Self; -} +pub type LPFN_RIORECEIVE = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPFN_RIORECEIVEEX = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPFN_RIOREGISTERBUFFER = ::core::option::Option *mut RIO_BUFFERID_t>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for NLA_BLOB_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} +pub type LPFN_RIORESIZECOMPLETIONQUEUE = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for NLA_BLOB_0 {} +pub type LPFN_RIORESIZEREQUESTQUEUE = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for NLA_BLOB_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub type LPFN_RIOSEND = ::core::option::Option super::super::Foundation::BOOL>; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct NLA_BLOB_0_0 { - pub remote: NLA_BLOB_0_0_0, -} +pub type LPFN_RIOSENDEX = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPFN_TRANSMITFILE = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPFN_TRANSMITPACKETS = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPFN_WSAPOLL = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPFN_WSARECVMSG = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPFN_WSASENDMSG = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPLOOKUPSERVICE_COMPLETION_ROUTINE = ::core::option::Option; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPNSPCLEANUP = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPNSPGETSERVICECLASSINFO = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPNSPINSTALLSERVICECLASS = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPNSPIOCTL = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +pub type LPNSPLOOKUPSERVICEBEGIN = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for NLA_BLOB_0_0 {} +pub type LPNSPLOOKUPSERVICEEND = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +pub type LPNSPLOOKUPSERVICENEXT = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPNSPREMOVESERVICECLASS = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +pub type LPNSPSETSERVICE = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] +pub type LPNSPSTARTUP = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPNSPV2CLEANUP = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPNSPV2CLIENTSESSIONRUNDOWN = ::core::option::Option; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +pub type LPNSPV2LOOKUPSERVICEBEGIN = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for NLA_BLOB_0_0 { - fn clone(&self) -> Self { - *self - } -} +pub type LPNSPV2LOOKUPSERVICEEND = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +pub type LPNSPV2LOOKUPSERVICENEXTEX = ::core::option::Option; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +pub type LPNSPV2SETSERVICEEX = ::core::option::Option; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPNSPV2STARTUP = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for NLA_BLOB_0_0 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NLA_BLOB_0_0").field("remote", &self.remote).finish() - } -} +pub type LPSERVICE_CALLBACK_PROC = ::core::option::Option; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for NLA_BLOB_0_0 { - type Abi = Self; -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for NLA_BLOB_0_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for NLA_BLOB_0_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for NLA_BLOB_0_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub type LPWPUCLOSEEVENT = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWPUCLOSESOCKETHANDLE = ::core::option::Option i32>; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct NLA_BLOB_0_0_0 { - pub speed: u32, - pub r#type: u32, - pub state: u32, - pub machineName: [u16; 256], - pub sharedAdapterName: [u16; 256], -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for NLA_BLOB_0_0_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for NLA_BLOB_0_0_0 { - fn clone(&self) -> Self { - *self - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for NLA_BLOB_0_0_0 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NLA_BLOB_0_0_0").field("speed", &self.speed).field("type", &self.r#type).field("state", &self.state).field("machineName", &self.machineName).field("sharedAdapterName", &self.sharedAdapterName).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for NLA_BLOB_0_0_0 { - type Abi = Self; -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for NLA_BLOB_0_0_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for NLA_BLOB_0_0_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for NLA_BLOB_0_0_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub type LPWPUCLOSETHREAD = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPWPUCOMPLETEOVERLAPPEDREQUEST = ::core::option::Option i32>; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct NLA_BLOB_0_1 { - pub r#type: NLA_CONNECTIVITY_TYPE, - pub internet: NLA_INTERNET, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for NLA_BLOB_0_1 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for NLA_BLOB_0_1 { - fn clone(&self) -> Self { - *self - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for NLA_BLOB_0_1 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NLA_BLOB_0_1").field("type", &self.r#type).field("internet", &self.internet).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for NLA_BLOB_0_1 { - type Abi = Self; -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for NLA_BLOB_0_1 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for NLA_BLOB_0_1 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for NLA_BLOB_0_1 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub type LPWPUCREATEEVENT = ::core::option::Option super::super::Foundation::HANDLE>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWPUCREATESOCKETHANDLE = ::core::option::Option SOCKET>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWPUFDISSET = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWPUGETPROVIDERPATH = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWPUMODIFYIFSHANDLE = ::core::option::Option SOCKET>; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct NLA_BLOB_0_2 { - pub dwType: u32, - pub dwSpeed: u32, - pub adapterName: [super::super::Foundation::CHAR; 1], -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for NLA_BLOB_0_2 {} +pub type LPWPUOPENCURRENTTHREAD = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for NLA_BLOB_0_2 { - fn clone(&self) -> Self { - *self - } -} +pub type LPWPUPOSTMESSAGE = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for NLA_BLOB_0_2 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NLA_BLOB_0_2").field("dwType", &self.dwType).field("dwSpeed", &self.dwSpeed).field("adapterName", &self.adapterName).finish() - } -} +pub type LPWPUQUERYBLOCKINGCALLBACK = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWPUQUERYSOCKETHANDLECONTEXT = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for NLA_BLOB_0_2 { - type Abi = Self; -} +pub type LPWPUQUEUEAPC = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for NLA_BLOB_0_2 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} +pub type LPWPURESETEVENT = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for NLA_BLOB_0_2 {} +pub type LPWPUSETEVENT = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPWSAOVERLAPPED_COMPLETION_ROUTINE = ::core::option::Option; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSAUSERAPC = ::core::option::Option; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSCDEINSTALLPROVIDER = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for NLA_BLOB_0_2 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub type LPWSCENABLENSPROVIDER = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSCENUMPROTOCOLS = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSCGETPROVIDERPATH = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSCINSTALLNAMESPACE = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSCINSTALLPROVIDER = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSCUNINSTALLNAMESPACE = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSCUPDATEPROVIDER = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSCWRITENAMESPACEORDER = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSCWRITEPROVIDERORDER = ::core::option::Option i32>; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct NLA_BLOB_0_3 { - pub information: [super::super::Foundation::CHAR; 1], -} +pub type LPWSPACCEPT = ::core::option::Option SOCKET>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for NLA_BLOB_0_3 {} +pub type LPWSPADDRESSTOSTRING = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for NLA_BLOB_0_3 { - fn clone(&self) -> Self { - *self - } -} +pub type LPWSPASYNCSELECT = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for NLA_BLOB_0_3 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NLA_BLOB_0_3").field("information", &self.information).finish() - } -} +pub type LPWSPBIND = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSPCANCELBLOCKINGCALL = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSPCLEANUP = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSPCLOSESOCKET = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for NLA_BLOB_0_3 { - type Abi = Self; -} +pub type LPWSPCONNECT = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSPDUPLICATESOCKET = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for NLA_BLOB_0_3 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} +pub type LPWSPENUMNETWORKEVENTS = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for NLA_BLOB_0_3 {} +pub type LPWSPEVENTSELECT = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPWSPGETOVERLAPPEDRESULT = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for NLA_BLOB_0_3 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub type LPWSPGETPEERNAME = ::core::option::Option i32>; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct NLA_BLOB_1 { - pub r#type: NLA_BLOB_DATA_TYPE, - pub dwSize: u32, - pub nextOffset: u32, -} +pub type LPWSPGETQOSBYNAME = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for NLA_BLOB_1 {} +pub type LPWSPGETSOCKNAME = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub type LPWSPGETSOCKOPT = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPWSPIOCTL = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for NLA_BLOB_1 { - fn clone(&self) -> Self { - *self - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for NLA_BLOB_1 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NLA_BLOB_1").field("type", &self.r#type).field("dwSize", &self.dwSize).field("nextOffset", &self.nextOffset).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for NLA_BLOB_1 { - type Abi = Self; -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for NLA_BLOB_1 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for NLA_BLOB_1 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for NLA_BLOB_1 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} +pub type LPWSPJOINLEAF = ::core::option::Option SOCKET>; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NLA_BLOB_DATA_TYPE(pub i32); +pub type LPWSPLISTEN = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPWSPRECV = ::core::option::Option i32>; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NLA_RAW_DATA: NLA_BLOB_DATA_TYPE = NLA_BLOB_DATA_TYPE(0i32); +pub type LPWSPRECVDISCONNECT = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPWSPRECVFROM = ::core::option::Option i32>; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NLA_INTERFACE: NLA_BLOB_DATA_TYPE = NLA_BLOB_DATA_TYPE(1i32); +pub type LPWSPSELECT = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPWSPSEND = ::core::option::Option i32>; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NLA_802_1X_LOCATION: NLA_BLOB_DATA_TYPE = NLA_BLOB_DATA_TYPE(2i32); +pub type LPWSPSENDDISCONNECT = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPWSPSENDTO = ::core::option::Option i32>; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NLA_CONNECTIVITY: NLA_BLOB_DATA_TYPE = NLA_BLOB_DATA_TYPE(3i32); +pub type LPWSPSETSOCKOPT = ::core::option::Option i32>; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NLA_ICS: NLA_BLOB_DATA_TYPE = NLA_BLOB_DATA_TYPE(4i32); -impl ::core::marker::Copy for NLA_BLOB_DATA_TYPE {} -impl ::core::clone::Clone for NLA_BLOB_DATA_TYPE { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for NLA_BLOB_DATA_TYPE { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for NLA_BLOB_DATA_TYPE { - type Abi = Self; -} -impl ::core::fmt::Debug for NLA_BLOB_DATA_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NLA_BLOB_DATA_TYPE").field(&self.0).finish() - } -} +pub type LPWSPSHUTDOWN = ::core::option::Option i32>; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NLA_CONNECTIVITY_TYPE(pub i32); +pub type LPWSPSOCKET = ::core::option::Option SOCKET>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub type LPWSPSTARTUP = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub type LPWSPSTRINGTOADDRESS = ::core::option::Option i32>; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NLA_NETWORK_AD_HOC: NLA_CONNECTIVITY_TYPE = NLA_CONNECTIVITY_TYPE(0i32); +pub const LSP_CRYPTO_COMPRESS: u32 = 64u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NLA_NETWORK_MANAGED: NLA_CONNECTIVITY_TYPE = NLA_CONNECTIVITY_TYPE(1i32); +pub const LSP_FIREWALL: u32 = 8u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NLA_NETWORK_UNMANAGED: NLA_CONNECTIVITY_TYPE = NLA_CONNECTIVITY_TYPE(2i32); +pub const LSP_INBOUND_MODIFY: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NLA_NETWORK_UNKNOWN: NLA_CONNECTIVITY_TYPE = NLA_CONNECTIVITY_TYPE(3i32); -impl ::core::marker::Copy for NLA_CONNECTIVITY_TYPE {} -impl ::core::clone::Clone for NLA_CONNECTIVITY_TYPE { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for NLA_CONNECTIVITY_TYPE { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for NLA_CONNECTIVITY_TYPE { - type Abi = Self; -} -impl ::core::fmt::Debug for NLA_CONNECTIVITY_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NLA_CONNECTIVITY_TYPE").field(&self.0).finish() - } -} +pub const LSP_INSPECTOR: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NLA_FRIENDLY_NAME: u32 = 2u32; +pub const LSP_LOCAL_CACHE: u32 = 128u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NLA_INTERNET(pub i32); +pub const LSP_OUTBOUND_MODIFY: u32 = 32u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NLA_INTERNET_UNKNOWN: NLA_INTERNET = NLA_INTERNET(0i32); +pub const LSP_PROXY: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NLA_INTERNET_NO: NLA_INTERNET = NLA_INTERNET(1i32); +pub const LSP_REDIRECTOR: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NLA_INTERNET_YES: NLA_INTERNET = NLA_INTERNET(2i32); -impl ::core::marker::Copy for NLA_INTERNET {} -impl ::core::clone::Clone for NLA_INTERNET { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for NLA_INTERNET { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for NLA_INTERNET { - type Abi = Self; -} -impl ::core::fmt::Debug for NLA_INTERNET { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NLA_INTERNET").field(&self.0).finish() - } -} +pub const LSP_SYSTEM: u32 = 2147483648u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NL_ADDRESS_TYPE(pub i32); +pub const LUP_ADDRCONFIG: u32 = 1048576u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlatUnspecified: NL_ADDRESS_TYPE = NL_ADDRESS_TYPE(0i32); +pub const LUP_API_ANSI: u32 = 16777216u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlatUnicast: NL_ADDRESS_TYPE = NL_ADDRESS_TYPE(1i32); +pub const LUP_CONTAINERS: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlatAnycast: NL_ADDRESS_TYPE = NL_ADDRESS_TYPE(2i32); +pub const LUP_DEEP: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlatMulticast: NL_ADDRESS_TYPE = NL_ADDRESS_TYPE(3i32); +pub const LUP_DISABLE_IDN_ENCODING: u32 = 8388608u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlatBroadcast: NL_ADDRESS_TYPE = NL_ADDRESS_TYPE(4i32); +pub const LUP_DNS_ONLY: u32 = 131072u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlatInvalid: NL_ADDRESS_TYPE = NL_ADDRESS_TYPE(5i32); -impl ::core::marker::Copy for NL_ADDRESS_TYPE {} -impl ::core::clone::Clone for NL_ADDRESS_TYPE { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for NL_ADDRESS_TYPE { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for NL_ADDRESS_TYPE { - type Abi = Self; -} -impl ::core::fmt::Debug for NL_ADDRESS_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NL_ADDRESS_TYPE").field(&self.0).finish() - } -} +pub const LUP_DUAL_ADDR: u32 = 2097152u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NL_BANDWIDTH_FLAG(pub i32); +pub const LUP_EXCLUSIVE_CUSTOM_SERVERS: u32 = 134217728u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlbwDisabled: NL_BANDWIDTH_FLAG = NL_BANDWIDTH_FLAG(0i32); +pub const LUP_EXTENDED_QUERYSET: u32 = 33554432u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlbwEnabled: NL_BANDWIDTH_FLAG = NL_BANDWIDTH_FLAG(1i32); +pub const LUP_FILESERVER: u32 = 4194304u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlbwUnchanged: NL_BANDWIDTH_FLAG = NL_BANDWIDTH_FLAG(-1i32); -impl ::core::marker::Copy for NL_BANDWIDTH_FLAG {} -impl ::core::clone::Clone for NL_BANDWIDTH_FLAG { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for NL_BANDWIDTH_FLAG { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for NL_BANDWIDTH_FLAG { - type Abi = Self; -} -impl ::core::fmt::Debug for NL_BANDWIDTH_FLAG { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NL_BANDWIDTH_FLAG").field(&self.0).finish() - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct NL_BANDWIDTH_INFORMATION { - pub Bandwidth: u64, - pub Instability: u64, - pub BandwidthPeaked: super::super::Foundation::BOOLEAN, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for NL_BANDWIDTH_INFORMATION {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for NL_BANDWIDTH_INFORMATION { - fn clone(&self) -> Self { - *self - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for NL_BANDWIDTH_INFORMATION { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NL_BANDWIDTH_INFORMATION").field("Bandwidth", &self.Bandwidth).field("Instability", &self.Instability).field("BandwidthPeaked", &self.BandwidthPeaked).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for NL_BANDWIDTH_INFORMATION { - type Abi = Self; -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for NL_BANDWIDTH_INFORMATION { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for NL_BANDWIDTH_INFORMATION {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for NL_BANDWIDTH_INFORMATION { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} +pub const LUP_FLUSHCACHE: u32 = 4096u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NL_DAD_STATE(pub i32); +pub const LUP_FLUSHPREVIOUS: u32 = 8192u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NldsInvalid: NL_DAD_STATE = NL_DAD_STATE(0i32); +pub const LUP_FORCE_CLEAR_TEXT: u32 = 1073741824u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NldsTentative: NL_DAD_STATE = NL_DAD_STATE(1i32); +pub const LUP_NEAREST: u32 = 8u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NldsDuplicate: NL_DAD_STATE = NL_DAD_STATE(2i32); +pub const LUP_NOCONTAINERS: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NldsDeprecated: NL_DAD_STATE = NL_DAD_STATE(3i32); +pub const LUP_NON_AUTHORITATIVE: u32 = 16384u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NldsPreferred: NL_DAD_STATE = NL_DAD_STATE(4i32); +pub const LUP_REQUIRE_SECURE: u32 = 268435456u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpDadStateInvalid: NL_DAD_STATE = NL_DAD_STATE(0i32); +pub const LUP_RESOLUTION_HANDLE: u32 = 2147483648u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpDadStateTentative: NL_DAD_STATE = NL_DAD_STATE(1i32); +pub const LUP_RES_SERVICE: u32 = 32768u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpDadStateDuplicate: NL_DAD_STATE = NL_DAD_STATE(2i32); +pub const LUP_RETURN_ADDR: u32 = 256u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpDadStateDeprecated: NL_DAD_STATE = NL_DAD_STATE(3i32); +pub const LUP_RETURN_ALIASES: u32 = 1024u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpDadStatePreferred: NL_DAD_STATE = NL_DAD_STATE(4i32); -impl ::core::marker::Copy for NL_DAD_STATE {} -impl ::core::clone::Clone for NL_DAD_STATE { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for NL_DAD_STATE { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for NL_DAD_STATE { - type Abi = Self; -} -impl ::core::fmt::Debug for NL_DAD_STATE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NL_DAD_STATE").field(&self.0).finish() - } -} +pub const LUP_RETURN_ALL: u32 = 4080u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NL_INTERFACE_NETWORK_CATEGORY_STATE(pub i32); +pub const LUP_RETURN_BLOB: u32 = 512u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlincCategoryUnknown: NL_INTERFACE_NETWORK_CATEGORY_STATE = NL_INTERFACE_NETWORK_CATEGORY_STATE(0i32); +pub const LUP_RETURN_COMMENT: u32 = 128u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlincPublic: NL_INTERFACE_NETWORK_CATEGORY_STATE = NL_INTERFACE_NETWORK_CATEGORY_STATE(1i32); +pub const LUP_RETURN_NAME: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlincPrivate: NL_INTERFACE_NETWORK_CATEGORY_STATE = NL_INTERFACE_NETWORK_CATEGORY_STATE(2i32); +pub const LUP_RETURN_PREFERRED_NAMES: u32 = 65536u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlincDomainAuthenticated: NL_INTERFACE_NETWORK_CATEGORY_STATE = NL_INTERFACE_NETWORK_CATEGORY_STATE(3i32); +pub const LUP_RETURN_QUERY_STRING: u32 = 2048u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlincCategoryStateMax: NL_INTERFACE_NETWORK_CATEGORY_STATE = NL_INTERFACE_NETWORK_CATEGORY_STATE(4i32); -impl ::core::marker::Copy for NL_INTERFACE_NETWORK_CATEGORY_STATE {} -impl ::core::clone::Clone for NL_INTERFACE_NETWORK_CATEGORY_STATE { +pub const LUP_RETURN_RESPONSE_FLAGS: u32 = 262144u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LUP_RETURN_TTL: u32 = 536870912u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LUP_RETURN_TYPE: u32 = 32u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LUP_RETURN_VERSION: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LUP_SECURE: u32 = 32768u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LUP_SECURE_WITH_FALLBACK: u32 = 67108864u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LmCharSetASCII: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LmCharSetISO_8859_1: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LmCharSetISO_8859_2: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LmCharSetISO_8859_3: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LmCharSetISO_8859_4: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LmCharSetISO_8859_5: u32 = 5u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LmCharSetISO_8859_6: u32 = 6u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LmCharSetISO_8859_7: u32 = 7u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LmCharSetISO_8859_8: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LmCharSetISO_8859_9: u32 = 9u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const LmCharSetUNICODE: u32 = 255u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MAXGETHOSTSTRUCT: u32 = 1024u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MAX_IPV4_HLEN: u32 = 60u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MAX_IPV4_PACKET: u32 = 65535u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MAX_IPV6_PAYLOAD: u32 = 65535u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MAX_MCAST_TTL: u32 = 255u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MAX_PROTOCOL_CHAIN: u32 = 7u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MAX_WINDOW_INCREMENT_PERCENTAGE: u32 = 25u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MCAST_BLOCK_SOURCE: u32 = 43u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MCAST_JOIN_GROUP: u32 = 41u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MCAST_JOIN_SOURCE_GROUP: u32 = 45u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MCAST_LEAVE_GROUP: u32 = 42u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MCAST_LEAVE_SOURCE_GROUP: u32 = 46u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MCAST_UNBLOCK_SOURCE: u32 = 44u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct MLDV2_QUERY_HEADER { + pub IcmpHeader: ICMP_HEADER, + pub Anonymous1: MLDV2_QUERY_HEADER_0, + pub Reserved: u16, + pub MulticastAddress: IN6_ADDR, + pub _bitfield: u8, + pub Anonymous2: MLDV2_QUERY_HEADER_1, + pub SourceCount: u16, +} +impl ::core::marker::Copy for MLDV2_QUERY_HEADER {} +impl ::core::clone::Clone for MLDV2_QUERY_HEADER { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for NL_INTERFACE_NETWORK_CATEGORY_STATE { +unsafe impl ::windows::core::Abi for MLDV2_QUERY_HEADER { + type Abi = Self; +} +impl ::core::cmp::PartialEq for MLDV2_QUERY_HEADER { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for MLDV2_QUERY_HEADER {} +impl ::core::default::Default for MLDV2_QUERY_HEADER { fn default() -> Self { - Self(0) + unsafe { ::core::mem::zeroed() } } } -unsafe impl ::windows::core::Abi for NL_INTERFACE_NETWORK_CATEGORY_STATE { +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub union MLDV2_QUERY_HEADER_0 { + pub MaxRespCode: u16, + pub Anonymous: MLDV2_QUERY_HEADER_0_0, +} +impl ::core::marker::Copy for MLDV2_QUERY_HEADER_0 {} +impl ::core::clone::Clone for MLDV2_QUERY_HEADER_0 { + fn clone(&self) -> Self { + *self + } +} +unsafe impl ::windows::core::Abi for MLDV2_QUERY_HEADER_0 { type Abi = Self; } -impl ::core::fmt::Debug for NL_INTERFACE_NETWORK_CATEGORY_STATE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NL_INTERFACE_NETWORK_CATEGORY_STATE").field(&self.0).finish() +impl ::core::cmp::PartialEq for MLDV2_QUERY_HEADER_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for MLDV2_QUERY_HEADER_0 {} +impl ::core::default::Default for MLDV2_QUERY_HEADER_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct NL_INTERFACE_OFFLOAD_ROD { - pub _bitfield: u8, +pub struct MLDV2_QUERY_HEADER_0_0 { + pub _bitfield: u16, } -impl ::core::marker::Copy for NL_INTERFACE_OFFLOAD_ROD {} -impl ::core::clone::Clone for NL_INTERFACE_OFFLOAD_ROD { +impl ::core::marker::Copy for MLDV2_QUERY_HEADER_0_0 {} +impl ::core::clone::Clone for MLDV2_QUERY_HEADER_0_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for NL_INTERFACE_OFFLOAD_ROD { +impl ::core::fmt::Debug for MLDV2_QUERY_HEADER_0_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NL_INTERFACE_OFFLOAD_ROD").field("_bitfield", &self._bitfield).finish() + f.debug_struct("MLDV2_QUERY_HEADER_0_0").field("_bitfield", &self._bitfield).finish() } } -unsafe impl ::windows::core::Abi for NL_INTERFACE_OFFLOAD_ROD { +unsafe impl ::windows::core::Abi for MLDV2_QUERY_HEADER_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for NL_INTERFACE_OFFLOAD_ROD { +impl ::core::cmp::PartialEq for MLDV2_QUERY_HEADER_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for NL_INTERFACE_OFFLOAD_ROD {} -impl ::core::default::Default for NL_INTERFACE_OFFLOAD_ROD { +impl ::core::cmp::Eq for MLDV2_QUERY_HEADER_0_0 {} +impl ::core::default::Default for MLDV2_QUERY_HEADER_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NL_LINK_LOCAL_ADDRESS_BEHAVIOR(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LinkLocalAlwaysOff: NL_LINK_LOCAL_ADDRESS_BEHAVIOR = NL_LINK_LOCAL_ADDRESS_BEHAVIOR(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LinkLocalDelayed: NL_LINK_LOCAL_ADDRESS_BEHAVIOR = NL_LINK_LOCAL_ADDRESS_BEHAVIOR(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LinkLocalAlwaysOn: NL_LINK_LOCAL_ADDRESS_BEHAVIOR = NL_LINK_LOCAL_ADDRESS_BEHAVIOR(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const LinkLocalUnchanged: NL_LINK_LOCAL_ADDRESS_BEHAVIOR = NL_LINK_LOCAL_ADDRESS_BEHAVIOR(-1i32); -impl ::core::marker::Copy for NL_LINK_LOCAL_ADDRESS_BEHAVIOR {} -impl ::core::clone::Clone for NL_LINK_LOCAL_ADDRESS_BEHAVIOR { +pub union MLDV2_QUERY_HEADER_1 { + pub QueriersQueryInterfaceCode: u8, + pub Anonymous: MLDV2_QUERY_HEADER_1_0, +} +impl ::core::marker::Copy for MLDV2_QUERY_HEADER_1 {} +impl ::core::clone::Clone for MLDV2_QUERY_HEADER_1 { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for NL_LINK_LOCAL_ADDRESS_BEHAVIOR { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for NL_LINK_LOCAL_ADDRESS_BEHAVIOR { +unsafe impl ::windows::core::Abi for MLDV2_QUERY_HEADER_1 { type Abi = Self; } -impl ::core::fmt::Debug for NL_LINK_LOCAL_ADDRESS_BEHAVIOR { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NL_LINK_LOCAL_ADDRESS_BEHAVIOR").field(&self.0).finish() +impl ::core::cmp::PartialEq for MLDV2_QUERY_HEADER_1 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +impl ::core::cmp::Eq for MLDV2_QUERY_HEADER_1 {} +impl ::core::default::Default for MLDV2_QUERY_HEADER_1 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NL_NEIGHBOR_STATE(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlnsUnreachable: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlnsIncomplete: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlnsProbe: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlnsDelay: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(3i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlnsStale: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(4i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlnsReachable: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(5i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlnsPermanent: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(6i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlnsMaximum: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(7i32); -impl ::core::marker::Copy for NL_NEIGHBOR_STATE {} -impl ::core::clone::Clone for NL_NEIGHBOR_STATE { +pub struct MLDV2_QUERY_HEADER_1_0 { + pub _bitfield: u8, +} +impl ::core::marker::Copy for MLDV2_QUERY_HEADER_1_0 {} +impl ::core::clone::Clone for MLDV2_QUERY_HEADER_1_0 { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for NL_NEIGHBOR_STATE { - fn default() -> Self { - Self(0) +impl ::core::fmt::Debug for MLDV2_QUERY_HEADER_1_0 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("MLDV2_QUERY_HEADER_1_0").field("_bitfield", &self._bitfield).finish() } } -unsafe impl ::windows::core::Abi for NL_NEIGHBOR_STATE { +unsafe impl ::windows::core::Abi for MLDV2_QUERY_HEADER_1_0 { type Abi = Self; } -impl ::core::fmt::Debug for NL_NEIGHBOR_STATE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NL_NEIGHBOR_STATE").field(&self.0).finish() - } -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NL_NETWORK_CATEGORY(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkCategoryPublic: NL_NETWORK_CATEGORY = NL_NETWORK_CATEGORY(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkCategoryPrivate: NL_NETWORK_CATEGORY = NL_NETWORK_CATEGORY(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkCategoryDomainAuthenticated: NL_NETWORK_CATEGORY = NL_NETWORK_CATEGORY(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkCategoryUnchanged: NL_NETWORK_CATEGORY = NL_NETWORK_CATEGORY(-1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkCategoryUnknown: NL_NETWORK_CATEGORY = NL_NETWORK_CATEGORY(-1i32); -impl ::core::marker::Copy for NL_NETWORK_CATEGORY {} -impl ::core::clone::Clone for NL_NETWORK_CATEGORY { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for NL_NETWORK_CATEGORY { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for NL_NETWORK_CATEGORY { - type Abi = Self; -} -impl ::core::fmt::Debug for NL_NETWORK_CATEGORY { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NL_NETWORK_CATEGORY").field(&self.0).finish() - } -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NL_NETWORK_CONNECTIVITY_COST_HINT(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkConnectivityCostHintUnknown: NL_NETWORK_CONNECTIVITY_COST_HINT = NL_NETWORK_CONNECTIVITY_COST_HINT(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkConnectivityCostHintUnrestricted: NL_NETWORK_CONNECTIVITY_COST_HINT = NL_NETWORK_CONNECTIVITY_COST_HINT(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkConnectivityCostHintFixed: NL_NETWORK_CONNECTIVITY_COST_HINT = NL_NETWORK_CONNECTIVITY_COST_HINT(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkConnectivityCostHintVariable: NL_NETWORK_CONNECTIVITY_COST_HINT = NL_NETWORK_CONNECTIVITY_COST_HINT(3i32); -impl ::core::marker::Copy for NL_NETWORK_CONNECTIVITY_COST_HINT {} -impl ::core::clone::Clone for NL_NETWORK_CONNECTIVITY_COST_HINT { - fn clone(&self) -> Self { - *self +impl ::core::cmp::PartialEq for MLDV2_QUERY_HEADER_1_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::default::Default for NL_NETWORK_CONNECTIVITY_COST_HINT { +impl ::core::cmp::Eq for MLDV2_QUERY_HEADER_1_0 {} +impl ::core::default::Default for MLDV2_QUERY_HEADER_1_0 { fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for NL_NETWORK_CONNECTIVITY_COST_HINT { - type Abi = Self; -} -impl ::core::fmt::Debug for NL_NETWORK_CONNECTIVITY_COST_HINT { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NL_NETWORK_CONNECTIVITY_COST_HINT").field(&self.0).finish() + unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct NL_NETWORK_CONNECTIVITY_HINT { - pub ConnectivityLevel: NL_NETWORK_CONNECTIVITY_LEVEL_HINT, - pub ConnectivityCost: NL_NETWORK_CONNECTIVITY_COST_HINT, - pub ApproachingDataLimit: super::super::Foundation::BOOLEAN, - pub OverDataLimit: super::super::Foundation::BOOLEAN, - pub Roaming: super::super::Foundation::BOOLEAN, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct MLDV2_REPORT_HEADER { + pub IcmpHeader: ICMP_HEADER, + pub Reserved: u16, + pub RecordCount: u16, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for NL_NETWORK_CONNECTIVITY_HINT {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for NL_NETWORK_CONNECTIVITY_HINT { +impl ::core::marker::Copy for MLDV2_REPORT_HEADER {} +impl ::core::clone::Clone for MLDV2_REPORT_HEADER { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for NL_NETWORK_CONNECTIVITY_HINT { +impl ::core::fmt::Debug for MLDV2_REPORT_HEADER { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NL_NETWORK_CONNECTIVITY_HINT").field("ConnectivityLevel", &self.ConnectivityLevel).field("ConnectivityCost", &self.ConnectivityCost).field("ApproachingDataLimit", &self.ApproachingDataLimit).field("OverDataLimit", &self.OverDataLimit).field("Roaming", &self.Roaming).finish() + f.debug_struct("MLDV2_REPORT_HEADER").field("IcmpHeader", &self.IcmpHeader).field("Reserved", &self.Reserved).field("RecordCount", &self.RecordCount).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for NL_NETWORK_CONNECTIVITY_HINT { +unsafe impl ::windows::core::Abi for MLDV2_REPORT_HEADER { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for NL_NETWORK_CONNECTIVITY_HINT { +impl ::core::cmp::PartialEq for MLDV2_REPORT_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for NL_NETWORK_CONNECTIVITY_HINT {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for NL_NETWORK_CONNECTIVITY_HINT { +impl ::core::cmp::Eq for MLDV2_REPORT_HEADER {} +impl ::core::default::Default for MLDV2_REPORT_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NL_NETWORK_CONNECTIVITY_LEVEL_HINT(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkConnectivityLevelHintUnknown: NL_NETWORK_CONNECTIVITY_LEVEL_HINT = NL_NETWORK_CONNECTIVITY_LEVEL_HINT(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkConnectivityLevelHintNone: NL_NETWORK_CONNECTIVITY_LEVEL_HINT = NL_NETWORK_CONNECTIVITY_LEVEL_HINT(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkConnectivityLevelHintLocalAccess: NL_NETWORK_CONNECTIVITY_LEVEL_HINT = NL_NETWORK_CONNECTIVITY_LEVEL_HINT(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkConnectivityLevelHintInternetAccess: NL_NETWORK_CONNECTIVITY_LEVEL_HINT = NL_NETWORK_CONNECTIVITY_LEVEL_HINT(3i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkConnectivityLevelHintConstrainedInternetAccess: NL_NETWORK_CONNECTIVITY_LEVEL_HINT = NL_NETWORK_CONNECTIVITY_LEVEL_HINT(4i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NetworkConnectivityLevelHintHidden: NL_NETWORK_CONNECTIVITY_LEVEL_HINT = NL_NETWORK_CONNECTIVITY_LEVEL_HINT(5i32); -impl ::core::marker::Copy for NL_NETWORK_CONNECTIVITY_LEVEL_HINT {} -impl ::core::clone::Clone for NL_NETWORK_CONNECTIVITY_LEVEL_HINT { +pub struct MLDV2_REPORT_RECORD_HEADER { + pub Type: u8, + pub AuxillaryDataLength: u8, + pub SourceCount: u16, + pub MulticastAddress: IN6_ADDR, +} +impl ::core::marker::Copy for MLDV2_REPORT_RECORD_HEADER {} +impl ::core::clone::Clone for MLDV2_REPORT_RECORD_HEADER { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for NL_NETWORK_CONNECTIVITY_LEVEL_HINT { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for NL_NETWORK_CONNECTIVITY_LEVEL_HINT { +unsafe impl ::windows::core::Abi for MLDV2_REPORT_RECORD_HEADER { type Abi = Self; } -impl ::core::fmt::Debug for NL_NETWORK_CONNECTIVITY_LEVEL_HINT { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NL_NETWORK_CONNECTIVITY_LEVEL_HINT").field(&self.0).finish() +impl ::core::cmp::PartialEq for MLDV2_REPORT_RECORD_HEADER { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for MLDV2_REPORT_RECORD_HEADER {} +impl ::core::default::Default for MLDV2_REPORT_RECORD_HEADER { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct NL_PATH_BANDWIDTH_ROD { - pub Bandwidth: u64, - pub Instability: u64, - pub BandwidthPeaked: super::super::Foundation::BOOLEAN, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct MLD_HEADER { + pub IcmpHeader: ICMP_HEADER, + pub MaxRespTime: u16, + pub Reserved: u16, + pub MulticastAddress: IN6_ADDR, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for NL_PATH_BANDWIDTH_ROD {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for NL_PATH_BANDWIDTH_ROD { +impl ::core::marker::Copy for MLD_HEADER {} +impl ::core::clone::Clone for MLD_HEADER { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for NL_PATH_BANDWIDTH_ROD { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NL_PATH_BANDWIDTH_ROD").field("Bandwidth", &self.Bandwidth).field("Instability", &self.Instability).field("BandwidthPeaked", &self.BandwidthPeaked).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for NL_PATH_BANDWIDTH_ROD { +unsafe impl ::windows::core::Abi for MLD_HEADER { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for NL_PATH_BANDWIDTH_ROD { +impl ::core::cmp::PartialEq for MLD_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for NL_PATH_BANDWIDTH_ROD {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for NL_PATH_BANDWIDTH_ROD { +impl ::core::cmp::Eq for MLD_HEADER {} +impl ::core::default::Default for MLD_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } @@ -7347,1195 +6682,1026 @@ impl ::core::default::Default for NL_PATH_BANDWIDTH_ROD { #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NL_PREFIX_ORIGIN(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpPrefixOriginOther: NL_PREFIX_ORIGIN = NL_PREFIX_ORIGIN(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpPrefixOriginManual: NL_PREFIX_ORIGIN = NL_PREFIX_ORIGIN(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpPrefixOriginWellKnown: NL_PREFIX_ORIGIN = NL_PREFIX_ORIGIN(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpPrefixOriginDhcp: NL_PREFIX_ORIGIN = NL_PREFIX_ORIGIN(3i32); +pub struct MLD_MAX_RESP_CODE_TYPE(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpPrefixOriginRouterAdvertisement: NL_PREFIX_ORIGIN = NL_PREFIX_ORIGIN(4i32); +pub const MLD_MAX_RESP_CODE_TYPE_NORMAL: MLD_MAX_RESP_CODE_TYPE = MLD_MAX_RESP_CODE_TYPE(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpPrefixOriginUnchanged: NL_PREFIX_ORIGIN = NL_PREFIX_ORIGIN(16i32); -impl ::core::marker::Copy for NL_PREFIX_ORIGIN {} -impl ::core::clone::Clone for NL_PREFIX_ORIGIN { +pub const MLD_MAX_RESP_CODE_TYPE_FLOAT: MLD_MAX_RESP_CODE_TYPE = MLD_MAX_RESP_CODE_TYPE(1i32); +impl ::core::marker::Copy for MLD_MAX_RESP_CODE_TYPE {} +impl ::core::clone::Clone for MLD_MAX_RESP_CODE_TYPE { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for NL_PREFIX_ORIGIN { +impl ::core::default::Default for MLD_MAX_RESP_CODE_TYPE { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for NL_PREFIX_ORIGIN { +unsafe impl ::windows::core::Abi for MLD_MAX_RESP_CODE_TYPE { type Abi = Self; } -impl ::core::fmt::Debug for NL_PREFIX_ORIGIN { +impl ::core::fmt::Debug for MLD_MAX_RESP_CODE_TYPE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NL_PREFIX_ORIGIN").field(&self.0).finish() + f.debug_tuple("MLD_MAX_RESP_CODE_TYPE").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NL_ROUTER_DISCOVERY_BEHAVIOR(pub i32); +pub const MSG_BCAST: u32 = 1024u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouterDiscoveryDisabled: NL_ROUTER_DISCOVERY_BEHAVIOR = NL_ROUTER_DISCOVERY_BEHAVIOR(0i32); +pub const MSG_CTRUNC: u32 = 512u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouterDiscoveryEnabled: NL_ROUTER_DISCOVERY_BEHAVIOR = NL_ROUTER_DISCOVERY_BEHAVIOR(1i32); +pub const MSG_ERRQUEUE: u32 = 4096u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouterDiscoveryDhcp: NL_ROUTER_DISCOVERY_BEHAVIOR = NL_ROUTER_DISCOVERY_BEHAVIOR(2i32); +pub const MSG_INTERRUPT: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouterDiscoveryUnchanged: NL_ROUTER_DISCOVERY_BEHAVIOR = NL_ROUTER_DISCOVERY_BEHAVIOR(-1i32); -impl ::core::marker::Copy for NL_ROUTER_DISCOVERY_BEHAVIOR {} -impl ::core::clone::Clone for NL_ROUTER_DISCOVERY_BEHAVIOR { +pub const MSG_MAXIOVLEN: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MSG_MCAST: u32 = 2048u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MSG_PARTIAL: u32 = 32768u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MSG_TRUNC: u32 = 256u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct MULTICAST_MODE_TYPE(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MCAST_INCLUDE: MULTICAST_MODE_TYPE = MULTICAST_MODE_TYPE(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MCAST_EXCLUDE: MULTICAST_MODE_TYPE = MULTICAST_MODE_TYPE(1i32); +impl ::core::marker::Copy for MULTICAST_MODE_TYPE {} +impl ::core::clone::Clone for MULTICAST_MODE_TYPE { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for NL_ROUTER_DISCOVERY_BEHAVIOR { +impl ::core::default::Default for MULTICAST_MODE_TYPE { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for NL_ROUTER_DISCOVERY_BEHAVIOR { +unsafe impl ::windows::core::Abi for MULTICAST_MODE_TYPE { type Abi = Self; } -impl ::core::fmt::Debug for NL_ROUTER_DISCOVERY_BEHAVIOR { +impl ::core::fmt::Debug for MULTICAST_MODE_TYPE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NL_ROUTER_DISCOVERY_BEHAVIOR").field(&self.0).finish() + f.debug_tuple("MULTICAST_MODE_TYPE").field(&self.0).finish() } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NL_ROUTE_ORIGIN(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlroManual: NL_ROUTE_ORIGIN = NL_ROUTE_ORIGIN(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlroWellKnown: NL_ROUTE_ORIGIN = NL_ROUTE_ORIGIN(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlroDHCP: NL_ROUTE_ORIGIN = NL_ROUTE_ORIGIN(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlroRouterAdvertisement: NL_ROUTE_ORIGIN = NL_ROUTE_ORIGIN(3i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const Nlro6to4: NL_ROUTE_ORIGIN = NL_ROUTE_ORIGIN(4i32); -impl ::core::marker::Copy for NL_ROUTE_ORIGIN {} -impl ::core::clone::Clone for NL_ROUTE_ORIGIN { +pub struct NAPI_DOMAIN_DESCRIPTION_BLOB { + pub AuthLevel: u32, + pub cchDomainName: u32, + pub OffsetNextDomainDescription: u32, + pub OffsetThisDomainName: u32, +} +impl ::core::marker::Copy for NAPI_DOMAIN_DESCRIPTION_BLOB {} +impl ::core::clone::Clone for NAPI_DOMAIN_DESCRIPTION_BLOB { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for NL_ROUTE_ORIGIN { - fn default() -> Self { - Self(0) +impl ::core::fmt::Debug for NAPI_DOMAIN_DESCRIPTION_BLOB { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("NAPI_DOMAIN_DESCRIPTION_BLOB").field("AuthLevel", &self.AuthLevel).field("cchDomainName", &self.cchDomainName).field("OffsetNextDomainDescription", &self.OffsetNextDomainDescription).field("OffsetThisDomainName", &self.OffsetThisDomainName).finish() } } -unsafe impl ::windows::core::Abi for NL_ROUTE_ORIGIN { +unsafe impl ::windows::core::Abi for NAPI_DOMAIN_DESCRIPTION_BLOB { type Abi = Self; } -impl ::core::fmt::Debug for NL_ROUTE_ORIGIN { +impl ::core::cmp::PartialEq for NAPI_DOMAIN_DESCRIPTION_BLOB { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for NAPI_DOMAIN_DESCRIPTION_BLOB {} +impl ::core::default::Default for NAPI_DOMAIN_DESCRIPTION_BLOB { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct NAPI_PROVIDER_INSTALLATION_BLOB { + pub dwVersion: u32, + pub dwProviderType: u32, + pub fSupportsWildCard: u32, + pub cDomains: u32, + pub OffsetFirstDomain: u32, +} +impl ::core::marker::Copy for NAPI_PROVIDER_INSTALLATION_BLOB {} +impl ::core::clone::Clone for NAPI_PROVIDER_INSTALLATION_BLOB { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for NAPI_PROVIDER_INSTALLATION_BLOB { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NL_ROUTE_ORIGIN").field(&self.0).finish() + f.debug_struct("NAPI_PROVIDER_INSTALLATION_BLOB").field("dwVersion", &self.dwVersion).field("dwProviderType", &self.dwProviderType).field("fSupportsWildCard", &self.fSupportsWildCard).field("cDomains", &self.cDomains).field("OffsetFirstDomain", &self.OffsetFirstDomain).finish() + } +} +unsafe impl ::windows::core::Abi for NAPI_PROVIDER_INSTALLATION_BLOB { + type Abi = Self; +} +impl ::core::cmp::PartialEq for NAPI_PROVIDER_INSTALLATION_BLOB { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for NAPI_PROVIDER_INSTALLATION_BLOB {} +impl ::core::default::Default for NAPI_PROVIDER_INSTALLATION_BLOB { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NL_ROUTE_PROTOCOL(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolOther: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolLocal: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolNetMgmt: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(3i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolIcmp: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(4i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolEgp: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(5i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolGgp: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(6i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolHello: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(7i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolRip: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(8i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolIsIs: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(9i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolEsIs: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolCisco: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(11i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolBbn: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(12i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolOspf: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(13i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolBgp: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(14i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolIdpr: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(15i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolEigrp: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(16i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolDvmrp: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(17i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolRpl: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(18i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RouteProtocolDhcp: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(19i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_OTHER: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_OTHER: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_LOCAL: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_LOCAL: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_NETMGMT: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(3i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_NETMGMT: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(3i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_ICMP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(4i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_ICMP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(4i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_EGP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(5i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_EGP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(5i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_GGP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(6i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_GGP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(6i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_HELLO: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(7i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_HELLO: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(7i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_RIP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(8i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_RIP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(8i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_IS_IS: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(9i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_IS_IS: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(9i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_ES_IS: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_ES_IS: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_CISCO: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(11i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_CISCO: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(11i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_BBN: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(12i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_BBN: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(12i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_OSPF: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(13i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_OSPF: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(13i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_BGP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(14i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_BGP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(14i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_IDPR: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(15i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_IDPR: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(15i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_EIGRP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(16i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_EIGRP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(16i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_DVMRP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(17i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_DVMRP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(17i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_RPL: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(18i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_RPL: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(18i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_DHCP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(19i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_DHCP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(19i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_NT_AUTOSTATIC: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10002i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_NT_AUTOSTATIC: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10002i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_NT_STATIC: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10006i32); +pub struct NAPI_PROVIDER_LEVEL(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_NT_STATIC: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10006i32); +pub const ProviderLevel_None: NAPI_PROVIDER_LEVEL = NAPI_PROVIDER_LEVEL(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIB_IPPROTO_NT_STATIC_NON_DOD: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10007i32); +pub const ProviderLevel_Secondary: NAPI_PROVIDER_LEVEL = NAPI_PROVIDER_LEVEL(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTO_IP_NT_STATIC_NON_DOD: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10007i32); -impl ::core::marker::Copy for NL_ROUTE_PROTOCOL {} -impl ::core::clone::Clone for NL_ROUTE_PROTOCOL { +pub const ProviderLevel_Primary: NAPI_PROVIDER_LEVEL = NAPI_PROVIDER_LEVEL(2i32); +impl ::core::marker::Copy for NAPI_PROVIDER_LEVEL {} +impl ::core::clone::Clone for NAPI_PROVIDER_LEVEL { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for NL_ROUTE_PROTOCOL { +impl ::core::default::Default for NAPI_PROVIDER_LEVEL { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for NL_ROUTE_PROTOCOL { +unsafe impl ::windows::core::Abi for NAPI_PROVIDER_LEVEL { type Abi = Self; } -impl ::core::fmt::Debug for NL_ROUTE_PROTOCOL { +impl ::core::fmt::Debug for NAPI_PROVIDER_LEVEL { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NL_ROUTE_PROTOCOL").field(&self.0).finish() + f.debug_tuple("NAPI_PROVIDER_LEVEL").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NL_SUFFIX_ORIGIN(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlsoOther: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlsoManual: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlsoWellKnown: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlsoDhcp: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(3i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlsoLinkLayerAddress: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(4i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NlsoRandom: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(5i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpSuffixOriginOther: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpSuffixOriginManual: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpSuffixOriginWellKnown: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpSuffixOriginDhcp: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(3i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpSuffixOriginLinkLayerAddress: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(4i32); +pub struct NAPI_PROVIDER_TYPE(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpSuffixOriginRandom: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(5i32); +pub const ProviderType_Application: NAPI_PROVIDER_TYPE = NAPI_PROVIDER_TYPE(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IpSuffixOriginUnchanged: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(16i32); -impl ::core::marker::Copy for NL_SUFFIX_ORIGIN {} -impl ::core::clone::Clone for NL_SUFFIX_ORIGIN { +pub const ProviderType_Service: NAPI_PROVIDER_TYPE = NAPI_PROVIDER_TYPE(2i32); +impl ::core::marker::Copy for NAPI_PROVIDER_TYPE {} +impl ::core::clone::Clone for NAPI_PROVIDER_TYPE { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for NL_SUFFIX_ORIGIN { +impl ::core::default::Default for NAPI_PROVIDER_TYPE { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for NL_SUFFIX_ORIGIN { +unsafe impl ::windows::core::Abi for NAPI_PROVIDER_TYPE { type Abi = Self; } -impl ::core::fmt::Debug for NL_SUFFIX_ORIGIN { +impl ::core::fmt::Debug for NAPI_PROVIDER_TYPE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NL_SUFFIX_ORIGIN").field(&self.0).finish() + f.debug_tuple("NAPI_PROVIDER_TYPE").field(&self.0).finish() } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_NA_FLAG_OVERRIDE: u32 = 536870912u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_NA_FLAG_ROUTER: u32 = 2147483648u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_NA_FLAG_SOLICITED: u32 = 1073741824u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct NPI_MODULEID { - pub Length: u16, - pub Type: NPI_MODULEID_TYPE, - pub Anonymous: NPI_MODULEID_0, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ND_NEIGHBOR_ADVERT_HEADER { + pub nd_na_hdr: ICMP_MESSAGE, + pub nd_na_target: IN6_ADDR, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for NPI_MODULEID {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for NPI_MODULEID { +impl ::core::marker::Copy for ND_NEIGHBOR_ADVERT_HEADER {} +impl ::core::clone::Clone for ND_NEIGHBOR_ADVERT_HEADER { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for NPI_MODULEID { +unsafe impl ::windows::core::Abi for ND_NEIGHBOR_ADVERT_HEADER { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for NPI_MODULEID { +impl ::core::cmp::PartialEq for ND_NEIGHBOR_ADVERT_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for NPI_MODULEID {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for NPI_MODULEID { +impl ::core::cmp::Eq for ND_NEIGHBOR_ADVERT_HEADER {} +impl ::core::default::Default for ND_NEIGHBOR_ADVERT_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub union NPI_MODULEID_0 { - pub Guid: ::windows::core::GUID, - pub IfLuid: super::super::Foundation::LUID, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ND_NEIGHBOR_SOLICIT_HEADER { + pub nd_ns_hdr: ICMP_MESSAGE, + pub nd_ns_target: IN6_ADDR, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for NPI_MODULEID_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for NPI_MODULEID_0 { +impl ::core::marker::Copy for ND_NEIGHBOR_SOLICIT_HEADER {} +impl ::core::clone::Clone for ND_NEIGHBOR_SOLICIT_HEADER { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for NPI_MODULEID_0 { +unsafe impl ::windows::core::Abi for ND_NEIGHBOR_SOLICIT_HEADER { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for NPI_MODULEID_0 { +impl ::core::cmp::PartialEq for ND_NEIGHBOR_SOLICIT_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for NPI_MODULEID_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for NPI_MODULEID_0 { +impl ::core::cmp::Eq for ND_NEIGHBOR_SOLICIT_HEADER {} +impl ::core::default::Default for ND_NEIGHBOR_SOLICIT_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct NPI_MODULEID_TYPE(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIT_GUID: NPI_MODULEID_TYPE = NPI_MODULEID_TYPE(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MIT_IF_LUID: NPI_MODULEID_TYPE = NPI_MODULEID_TYPE(2i32); -impl ::core::marker::Copy for NPI_MODULEID_TYPE {} -impl ::core::clone::Clone for NPI_MODULEID_TYPE { +pub struct ND_OPTION_DNSSL { + pub nd_opt_dnssl_type: u8, + pub nd_opt_dnssl_len: u8, + pub nd_opt_dnssl_reserved: u16, + pub nd_opt_dnssl_lifetime: u32, +} +impl ::core::marker::Copy for ND_OPTION_DNSSL {} +impl ::core::clone::Clone for ND_OPTION_DNSSL { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for NPI_MODULEID_TYPE { - fn default() -> Self { - Self(0) +impl ::core::fmt::Debug for ND_OPTION_DNSSL { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ND_OPTION_DNSSL").field("nd_opt_dnssl_type", &self.nd_opt_dnssl_type).field("nd_opt_dnssl_len", &self.nd_opt_dnssl_len).field("nd_opt_dnssl_reserved", &self.nd_opt_dnssl_reserved).field("nd_opt_dnssl_lifetime", &self.nd_opt_dnssl_lifetime).finish() } } -unsafe impl ::windows::core::Abi for NPI_MODULEID_TYPE { +unsafe impl ::windows::core::Abi for ND_OPTION_DNSSL { type Abi = Self; } -impl ::core::fmt::Debug for NPI_MODULEID_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("NPI_MODULEID_TYPE").field(&self.0).finish() +impl ::core::cmp::PartialEq for ND_OPTION_DNSSL { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for ND_OPTION_DNSSL {} +impl ::core::default::Default for ND_OPTION_DNSSL { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NSPROTO_IPX: u32 = 1000u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NSPROTO_SPX: u32 = 1256u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NSPROTO_SPXII: u32 = 1257u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -pub struct NSPV2_ROUTINE { - pub cbSize: u32, - pub dwMajorVersion: u32, - pub dwMinorVersion: u32, - pub NSPv2Startup: LPNSPV2STARTUP, - pub NSPv2Cleanup: LPNSPV2CLEANUP, - pub NSPv2LookupServiceBegin: LPNSPV2LOOKUPSERVICEBEGIN, - pub NSPv2LookupServiceNextEx: LPNSPV2LOOKUPSERVICENEXTEX, - pub NSPv2LookupServiceEnd: LPNSPV2LOOKUPSERVICEEND, - pub NSPv2SetServiceEx: LPNSPV2SETSERVICEEX, - pub NSPv2ClientSessionRundown: LPNSPV2CLIENTSESSIONRUNDOWN, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ND_OPTION_HDR { + pub nd_opt_type: u8, + pub nd_opt_len: u8, } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::marker::Copy for NSPV2_ROUTINE {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::clone::Clone for NSPV2_ROUTINE { +impl ::core::marker::Copy for ND_OPTION_HDR {} +impl ::core::clone::Clone for ND_OPTION_HDR { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::fmt::Debug for NSPV2_ROUTINE { +impl ::core::fmt::Debug for ND_OPTION_HDR { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NSPV2_ROUTINE") - .field("cbSize", &self.cbSize) - .field("dwMajorVersion", &self.dwMajorVersion) - .field("dwMinorVersion", &self.dwMinorVersion) - .field("NSPv2Startup", &self.NSPv2Startup.map(|f| f as usize)) - .field("NSPv2Cleanup", &self.NSPv2Cleanup.map(|f| f as usize)) - .field("NSPv2LookupServiceBegin", &self.NSPv2LookupServiceBegin.map(|f| f as usize)) - .field("NSPv2LookupServiceNextEx", &self.NSPv2LookupServiceNextEx.map(|f| f as usize)) - .field("NSPv2LookupServiceEnd", &self.NSPv2LookupServiceEnd.map(|f| f as usize)) - .field("NSPv2SetServiceEx", &self.NSPv2SetServiceEx.map(|f| f as usize)) - .field("NSPv2ClientSessionRundown", &self.NSPv2ClientSessionRundown.map(|f| f as usize)) - .finish() + f.debug_struct("ND_OPTION_HDR").field("nd_opt_type", &self.nd_opt_type).field("nd_opt_len", &self.nd_opt_len).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -unsafe impl ::windows::core::Abi for NSPV2_ROUTINE { +unsafe impl ::windows::core::Abi for ND_OPTION_HDR { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::cmp::PartialEq for NSPV2_ROUTINE { +impl ::core::cmp::PartialEq for ND_OPTION_HDR { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::cmp::Eq for NSPV2_ROUTINE {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::default::Default for NSPV2_ROUTINE { +impl ::core::cmp::Eq for ND_OPTION_HDR {} +impl ::core::default::Default for ND_OPTION_HDR { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] -pub struct NSP_ROUTINE { - pub cbSize: u32, - pub dwMajorVersion: u32, - pub dwMinorVersion: u32, - pub NSPCleanup: LPNSPCLEANUP, - pub NSPLookupServiceBegin: LPNSPLOOKUPSERVICEBEGIN, - pub NSPLookupServiceNext: LPNSPLOOKUPSERVICENEXT, - pub NSPLookupServiceEnd: LPNSPLOOKUPSERVICEEND, - pub NSPSetService: LPNSPSETSERVICE, - pub NSPInstallServiceClass: LPNSPINSTALLSERVICECLASS, - pub NSPRemoveServiceClass: LPNSPREMOVESERVICECLASS, - pub NSPGetServiceClassInfo: LPNSPGETSERVICECLASSINFO, - pub NSPIoctl: LPNSPIOCTL, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ND_OPTION_MTU { + pub nd_opt_mtu_type: u8, + pub nd_opt_mtu_len: u8, + pub nd_opt_mtu_reserved: u16, + pub nd_opt_mtu_mtu: u32, } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] -impl ::core::marker::Copy for NSP_ROUTINE {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] -impl ::core::clone::Clone for NSP_ROUTINE { +impl ::core::marker::Copy for ND_OPTION_MTU {} +impl ::core::clone::Clone for ND_OPTION_MTU { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] -impl ::core::fmt::Debug for NSP_ROUTINE { +impl ::core::fmt::Debug for ND_OPTION_MTU { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NSP_ROUTINE") - .field("cbSize", &self.cbSize) - .field("dwMajorVersion", &self.dwMajorVersion) - .field("dwMinorVersion", &self.dwMinorVersion) - .field("NSPCleanup", &self.NSPCleanup.map(|f| f as usize)) - .field("NSPLookupServiceBegin", &self.NSPLookupServiceBegin.map(|f| f as usize)) - .field("NSPLookupServiceNext", &self.NSPLookupServiceNext.map(|f| f as usize)) - .field("NSPLookupServiceEnd", &self.NSPLookupServiceEnd.map(|f| f as usize)) - .field("NSPSetService", &self.NSPSetService.map(|f| f as usize)) - .field("NSPInstallServiceClass", &self.NSPInstallServiceClass.map(|f| f as usize)) - .field("NSPRemoveServiceClass", &self.NSPRemoveServiceClass.map(|f| f as usize)) - .field("NSPGetServiceClassInfo", &self.NSPGetServiceClassInfo.map(|f| f as usize)) - .field("NSPIoctl", &self.NSPIoctl.map(|f| f as usize)) - .finish() + f.debug_struct("ND_OPTION_MTU").field("nd_opt_mtu_type", &self.nd_opt_mtu_type).field("nd_opt_mtu_len", &self.nd_opt_mtu_len).field("nd_opt_mtu_reserved", &self.nd_opt_mtu_reserved).field("nd_opt_mtu_mtu", &self.nd_opt_mtu_mtu).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] -unsafe impl ::windows::core::Abi for NSP_ROUTINE { +unsafe impl ::windows::core::Abi for ND_OPTION_MTU { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] -impl ::core::cmp::PartialEq for NSP_ROUTINE { +impl ::core::cmp::PartialEq for ND_OPTION_MTU { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] -impl ::core::cmp::Eq for NSP_ROUTINE {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] -impl ::core::default::Default for NSP_ROUTINE { +impl ::core::cmp::Eq for ND_OPTION_MTU {} +impl ::core::default::Default for ND_OPTION_MTU { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NSTYPE_DYNAMIC: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NSTYPE_ENUMERABLE: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NSTYPE_HIERARCHICAL: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NSTYPE_WORKGROUP: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_ALL: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_DEFAULT: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_DHCP: u32 = 6u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_DNS: u32 = 12u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_EMAIL: u32 = 37u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct NS_INFOA { - pub dwNameSpace: u32, - pub dwNameSpaceFlags: u32, - pub lpNameSpace: ::windows::core::PSTR, +pub struct ND_OPTION_PREFIX_INFO { + pub nd_opt_pi_type: u8, + pub nd_opt_pi_len: u8, + pub nd_opt_pi_prefix_len: u8, + pub Anonymous1: ND_OPTION_PREFIX_INFO_0, + pub nd_opt_pi_valid_time: u32, + pub nd_opt_pi_preferred_time: u32, + pub Anonymous2: ND_OPTION_PREFIX_INFO_1, + pub nd_opt_pi_prefix: IN6_ADDR, } -impl ::core::marker::Copy for NS_INFOA {} -impl ::core::clone::Clone for NS_INFOA { +impl ::core::marker::Copy for ND_OPTION_PREFIX_INFO {} +impl ::core::clone::Clone for ND_OPTION_PREFIX_INFO { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for NS_INFOA { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NS_INFOA").field("dwNameSpace", &self.dwNameSpace).field("dwNameSpaceFlags", &self.dwNameSpaceFlags).field("lpNameSpace", &self.lpNameSpace).finish() +unsafe impl ::windows::core::Abi for ND_OPTION_PREFIX_INFO { + type Abi = Self; +} +impl ::core::cmp::PartialEq for ND_OPTION_PREFIX_INFO { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -unsafe impl ::windows::core::Abi for NS_INFOA { +impl ::core::cmp::Eq for ND_OPTION_PREFIX_INFO {} +impl ::core::default::Default for ND_OPTION_PREFIX_INFO { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub union ND_OPTION_PREFIX_INFO_0 { + pub nd_opt_pi_flags_reserved: u8, + pub Flags: ND_OPTION_PREFIX_INFO_0_0, +} +impl ::core::marker::Copy for ND_OPTION_PREFIX_INFO_0 {} +impl ::core::clone::Clone for ND_OPTION_PREFIX_INFO_0 { + fn clone(&self) -> Self { + *self + } +} +unsafe impl ::windows::core::Abi for ND_OPTION_PREFIX_INFO_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for NS_INFOA { +impl ::core::cmp::PartialEq for ND_OPTION_PREFIX_INFO_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for NS_INFOA {} -impl ::core::default::Default for NS_INFOA { +impl ::core::cmp::Eq for ND_OPTION_PREFIX_INFO_0 {} +impl ::core::default::Default for ND_OPTION_PREFIX_INFO_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct NS_INFOW { - pub dwNameSpace: u32, - pub dwNameSpaceFlags: u32, - pub lpNameSpace: ::windows::core::PWSTR, +pub struct ND_OPTION_PREFIX_INFO_0_0 { + pub _bitfield: u8, } -impl ::core::marker::Copy for NS_INFOW {} -impl ::core::clone::Clone for NS_INFOW { +impl ::core::marker::Copy for ND_OPTION_PREFIX_INFO_0_0 {} +impl ::core::clone::Clone for ND_OPTION_PREFIX_INFO_0_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for NS_INFOW { +impl ::core::fmt::Debug for ND_OPTION_PREFIX_INFO_0_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NS_INFOW").field("dwNameSpace", &self.dwNameSpace).field("dwNameSpaceFlags", &self.dwNameSpaceFlags).field("lpNameSpace", &self.lpNameSpace).finish() + f.debug_struct("ND_OPTION_PREFIX_INFO_0_0").field("_bitfield", &self._bitfield).finish() } } -unsafe impl ::windows::core::Abi for NS_INFOW { +unsafe impl ::windows::core::Abi for ND_OPTION_PREFIX_INFO_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for NS_INFOW { +impl ::core::cmp::PartialEq for ND_OPTION_PREFIX_INFO_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for NS_INFOW {} -impl ::core::default::Default for NS_INFOW { +impl ::core::cmp::Eq for ND_OPTION_PREFIX_INFO_0_0 {} +impl ::core::default::Default for ND_OPTION_PREFIX_INFO_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_LOCALNAME: u32 = 19u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_MS: u32 = 30u32; +pub union ND_OPTION_PREFIX_INFO_1 { + pub nd_opt_pi_reserved2: u32, + pub Anonymous: ND_OPTION_PREFIX_INFO_1_0, +} +impl ::core::marker::Copy for ND_OPTION_PREFIX_INFO_1 {} +impl ::core::clone::Clone for ND_OPTION_PREFIX_INFO_1 { + fn clone(&self) -> Self { + *self + } +} +unsafe impl ::windows::core::Abi for ND_OPTION_PREFIX_INFO_1 { + type Abi = Self; +} +impl ::core::cmp::PartialEq for ND_OPTION_PREFIX_INFO_1 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for ND_OPTION_PREFIX_INFO_1 {} +impl ::core::default::Default for ND_OPTION_PREFIX_INFO_1 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_NBP: u32 = 20u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_NDS: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_NETBT: u32 = 13u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_NETDES: u32 = 60u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_NIS: u32 = 41u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_NISPLUS: u32 = 42u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_NLA: u32 = 15u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_NTDS: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_PEER_BROWSE: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_SAP: u32 = 1u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Com\"`*"] -#[cfg(feature = "Win32_System_Com")] -pub struct NS_SERVICE_INFOA { - pub dwNameSpace: u32, - pub ServiceInfo: SERVICE_INFOA, +pub struct ND_OPTION_PREFIX_INFO_1_0 { + pub nd_opt_pi_reserved3: [u8; 3], + pub nd_opt_pi_site_prefix_len: u8, } -#[cfg(feature = "Win32_System_Com")] -impl ::core::marker::Copy for NS_SERVICE_INFOA {} -#[cfg(feature = "Win32_System_Com")] -impl ::core::clone::Clone for NS_SERVICE_INFOA { +impl ::core::marker::Copy for ND_OPTION_PREFIX_INFO_1_0 {} +impl ::core::clone::Clone for ND_OPTION_PREFIX_INFO_1_0 { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_System_Com")] -impl ::core::fmt::Debug for NS_SERVICE_INFOA { +impl ::core::fmt::Debug for ND_OPTION_PREFIX_INFO_1_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NS_SERVICE_INFOA").field("dwNameSpace", &self.dwNameSpace).field("ServiceInfo", &self.ServiceInfo).finish() + f.debug_struct("ND_OPTION_PREFIX_INFO_1_0").field("nd_opt_pi_reserved3", &self.nd_opt_pi_reserved3).field("nd_opt_pi_site_prefix_len", &self.nd_opt_pi_site_prefix_len).finish() } } -#[cfg(feature = "Win32_System_Com")] -unsafe impl ::windows::core::Abi for NS_SERVICE_INFOA { +unsafe impl ::windows::core::Abi for ND_OPTION_PREFIX_INFO_1_0 { type Abi = Self; } -#[cfg(feature = "Win32_System_Com")] -impl ::core::cmp::PartialEq for NS_SERVICE_INFOA { +impl ::core::cmp::PartialEq for ND_OPTION_PREFIX_INFO_1_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_System_Com")] -impl ::core::cmp::Eq for NS_SERVICE_INFOA {} -#[cfg(feature = "Win32_System_Com")] -impl ::core::default::Default for NS_SERVICE_INFOA { +impl ::core::cmp::Eq for ND_OPTION_PREFIX_INFO_1_0 {} +impl ::core::default::Default for ND_OPTION_PREFIX_INFO_1_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Com\"`*"] -#[cfg(feature = "Win32_System_Com")] -pub struct NS_SERVICE_INFOW { - pub dwNameSpace: u32, - pub ServiceInfo: SERVICE_INFOW, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct ND_OPTION_RDNSS { + pub nd_opt_rdnss_type: u8, + pub nd_opt_rdnss_len: u8, + pub nd_opt_rdnss_reserved: u16, + pub nd_opt_rdnss_lifetime: u32, } -#[cfg(feature = "Win32_System_Com")] -impl ::core::marker::Copy for NS_SERVICE_INFOW {} -#[cfg(feature = "Win32_System_Com")] -impl ::core::clone::Clone for NS_SERVICE_INFOW { +impl ::core::marker::Copy for ND_OPTION_RDNSS {} +impl ::core::clone::Clone for ND_OPTION_RDNSS { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_System_Com")] -impl ::core::fmt::Debug for NS_SERVICE_INFOW { +impl ::core::fmt::Debug for ND_OPTION_RDNSS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("NS_SERVICE_INFOW").field("dwNameSpace", &self.dwNameSpace).field("ServiceInfo", &self.ServiceInfo).finish() + f.debug_struct("ND_OPTION_RDNSS").field("nd_opt_rdnss_type", &self.nd_opt_rdnss_type).field("nd_opt_rdnss_len", &self.nd_opt_rdnss_len).field("nd_opt_rdnss_reserved", &self.nd_opt_rdnss_reserved).field("nd_opt_rdnss_lifetime", &self.nd_opt_rdnss_lifetime).finish() } } -#[cfg(feature = "Win32_System_Com")] -unsafe impl ::windows::core::Abi for NS_SERVICE_INFOW { +unsafe impl ::windows::core::Abi for ND_OPTION_RDNSS { type Abi = Self; } -#[cfg(feature = "Win32_System_Com")] -impl ::core::cmp::PartialEq for NS_SERVICE_INFOW { +impl ::core::cmp::PartialEq for ND_OPTION_RDNSS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_System_Com")] -impl ::core::cmp::Eq for NS_SERVICE_INFOW {} -#[cfg(feature = "Win32_System_Com")] -impl ::core::default::Default for NS_SERVICE_INFOW { +impl ::core::cmp::Eq for ND_OPTION_RDNSS {} +impl ::core::default::Default for ND_OPTION_RDNSS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_SLP: u32 = 5u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_STDA: u32 = 31u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_TCPIP_HOSTS: u32 = 11u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_TCPIP_LOCAL: u32 = 10u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_VNS: u32 = 50u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_WINS: u32 = 14u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_WRQ: u32 = 50u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NS_X500: u32 = 40u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PFL_HIDDEN: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PFL_MATCHES_PROTOCOL_ZERO: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PFL_MULTIPLE_PROTO_ENTRIES: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PFL_NETWORKDIRECT_PROVIDER: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PFL_RECOMMENDED_PROTO_ENTRY: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_APPLETALK: u16 = 16u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_ATM: u16 = 22u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_BAN: u16 = 21u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_CCITT: u16 = 10u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_CHAOS: u16 = 5u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_DATAKIT: u16 = 9u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_DECnet: u16 = 12u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_DLI: u16 = 13u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_ECMA: u16 = 8u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_FIREFOX: u16 = 19u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_HYLINK: u16 = 15u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_IMPLINK: u16 = 3u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_IPX: u16 = 6u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_IRDA: u16 = 26u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_ISO: u16 = 7u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_LAT: u16 = 14u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_MAX: u16 = 29u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_NS: u16 = 6u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_OSI: u16 = 7u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_PUP: u16 = 4u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_SNA: u16 = 11u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_UNIX: u16 = 1u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_UNKNOWN1: u16 = 20u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PF_VOICEVIEW: u16 = 18u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PI_ALLOWED: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PI_NUMBER_NOT_AVAILABLE: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PI_RESTRICTED: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct PMTUD_STATE(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_PMTUDISC_NOT_SET: PMTUD_STATE = PMTUD_STATE(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_PMTUDISC_DO: PMTUD_STATE = PMTUD_STATE(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_PMTUDISC_DONT: PMTUD_STATE = PMTUD_STATE(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_PMTUDISC_PROBE: PMTUD_STATE = PMTUD_STATE(3i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IP_PMTUDISC_MAX: PMTUD_STATE = PMTUD_STATE(4i32); -impl ::core::marker::Copy for PMTUD_STATE {} -impl ::core::clone::Clone for PMTUD_STATE { +pub struct ND_OPTION_RD_HDR { + pub nd_opt_rh_type: u8, + pub nd_opt_rh_len: u8, + pub nd_opt_rh_reserved1: u16, + pub nd_opt_rh_reserved2: u32, +} +impl ::core::marker::Copy for ND_OPTION_RD_HDR {} +impl ::core::clone::Clone for ND_OPTION_RD_HDR { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for PMTUD_STATE { - fn default() -> Self { - Self(0) +impl ::core::fmt::Debug for ND_OPTION_RD_HDR { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("ND_OPTION_RD_HDR").field("nd_opt_rh_type", &self.nd_opt_rh_type).field("nd_opt_rh_len", &self.nd_opt_rh_len).field("nd_opt_rh_reserved1", &self.nd_opt_rh_reserved1).field("nd_opt_rh_reserved2", &self.nd_opt_rh_reserved2).finish() } } -unsafe impl ::windows::core::Abi for PMTUD_STATE { +unsafe impl ::windows::core::Abi for ND_OPTION_RD_HDR { type Abi = Self; } -impl ::core::fmt::Debug for PMTUD_STATE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("PMTUD_STATE").field(&self.0).finish() +impl ::core::cmp::PartialEq for ND_OPTION_RD_HDR { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +impl ::core::cmp::Eq for ND_OPTION_RD_HDR {} +impl ::core::default::Default for ND_OPTION_RD_HDR { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const POLLERR: u16 = 1u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const POLLHUP: u16 = 2u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const POLLIN: u16 = 768u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const POLLNVAL: u16 = 4u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const POLLOUT: u16 = 16u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const POLLPRI: u16 = 1024u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const POLLRDBAND: u16 = 512u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const POLLRDNORM: u16 = 256u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const POLLWRBAND: u16 = 32u16; +pub struct ND_OPTION_ROUTE_INFO { + pub nd_opt_ri_type: u8, + pub nd_opt_ri_len: u8, + pub nd_opt_ri_prefix_len: u8, + pub Anonymous: ND_OPTION_ROUTE_INFO_0, + pub nd_opt_ri_route_lifetime: u32, + pub nd_opt_ri_prefix: IN6_ADDR, +} +impl ::core::marker::Copy for ND_OPTION_ROUTE_INFO {} +impl ::core::clone::Clone for ND_OPTION_ROUTE_INFO { + fn clone(&self) -> Self { + *self + } +} +unsafe impl ::windows::core::Abi for ND_OPTION_ROUTE_INFO { + type Abi = Self; +} +impl ::core::cmp::PartialEq for ND_OPTION_ROUTE_INFO { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for ND_OPTION_ROUTE_INFO {} +impl ::core::default::Default for ND_OPTION_ROUTE_INFO { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const POLLWRNORM: u16 = 16u16; +pub union ND_OPTION_ROUTE_INFO_0 { + pub nd_opt_ri_flags_reserved: u8, + pub Flags: ND_OPTION_ROUTE_INFO_0_0, +} +impl ::core::marker::Copy for ND_OPTION_ROUTE_INFO_0 {} +impl ::core::clone::Clone for ND_OPTION_ROUTE_INFO_0 { + fn clone(&self) -> Self { + *self + } +} +unsafe impl ::windows::core::Abi for ND_OPTION_ROUTE_INFO_0 { + type Abi = Self; +} +impl ::core::cmp::PartialEq for ND_OPTION_ROUTE_INFO_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for ND_OPTION_ROUTE_INFO_0 {} +impl ::core::default::Default for ND_OPTION_ROUTE_INFO_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct PRIORITY_STATUS { - pub Sender: SOCKET_PRIORITY_HINT, - pub Receiver: SOCKET_PRIORITY_HINT, +pub struct ND_OPTION_ROUTE_INFO_0_0 { + pub _bitfield: u8, } -impl ::core::marker::Copy for PRIORITY_STATUS {} -impl ::core::clone::Clone for PRIORITY_STATUS { +impl ::core::marker::Copy for ND_OPTION_ROUTE_INFO_0_0 {} +impl ::core::clone::Clone for ND_OPTION_ROUTE_INFO_0_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for PRIORITY_STATUS { +impl ::core::fmt::Debug for ND_OPTION_ROUTE_INFO_0_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("PRIORITY_STATUS").field("Sender", &self.Sender).field("Receiver", &self.Receiver).finish() + f.debug_struct("ND_OPTION_ROUTE_INFO_0_0").field("_bitfield", &self._bitfield).finish() } } -unsafe impl ::windows::core::Abi for PRIORITY_STATUS { +unsafe impl ::windows::core::Abi for ND_OPTION_ROUTE_INFO_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for PRIORITY_STATUS { +impl ::core::cmp::PartialEq for ND_OPTION_ROUTE_INFO_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for PRIORITY_STATUS {} -impl ::core::default::Default for PRIORITY_STATUS { +impl ::core::cmp::Eq for ND_OPTION_ROUTE_INFO_0_0 {} +impl ::core::default::Default for ND_OPTION_ROUTE_INFO_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROP_ADDRESSES: u32 = 256u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct ND_OPTION_TYPE(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROP_ALL: u32 = 2147483648u32; +pub const ND_OPT_SOURCE_LINKADDR: ND_OPTION_TYPE = ND_OPTION_TYPE(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROP_COMMENT: u32 = 1u32; +pub const ND_OPT_TARGET_LINKADDR: ND_OPTION_TYPE = ND_OPTION_TYPE(2i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROP_DISPLAY_HINT: u32 = 4u32; +pub const ND_OPT_PREFIX_INFORMATION: ND_OPTION_TYPE = ND_OPTION_TYPE(3i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROP_LOCALE: u32 = 2u32; +pub const ND_OPT_REDIRECTED_HEADER: ND_OPTION_TYPE = ND_OPTION_TYPE(4i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROP_MACHINE: u32 = 32u32; +pub const ND_OPT_MTU: ND_OPTION_TYPE = ND_OPTION_TYPE(5i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROP_SD: u32 = 512u32; +pub const ND_OPT_NBMA_SHORTCUT_LIMIT: ND_OPTION_TYPE = ND_OPTION_TYPE(6i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROP_START_TIME: u32 = 16u32; +pub const ND_OPT_ADVERTISEMENT_INTERVAL: ND_OPTION_TYPE = ND_OPTION_TYPE(7i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROP_VERSION: u32 = 8u32; +pub const ND_OPT_HOME_AGENT_INFORMATION: ND_OPTION_TYPE = ND_OPTION_TYPE(8i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTECTION_LEVEL_DEFAULT: u32 = 20u32; +pub const ND_OPT_SOURCE_ADDR_LIST: ND_OPTION_TYPE = ND_OPTION_TYPE(9i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTECTION_LEVEL_EDGERESTRICTED: u32 = 20u32; +pub const ND_OPT_TARGET_ADDR_LIST: ND_OPTION_TYPE = ND_OPTION_TYPE(10i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTECTION_LEVEL_RESTRICTED: u32 = 30u32; +pub const ND_OPT_ROUTE_INFO: ND_OPTION_TYPE = ND_OPTION_TYPE(24i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PROTECTION_LEVEL_UNRESTRICTED: u32 = 10u32; -#[repr(C)] +pub const ND_OPT_RDNSS: ND_OPTION_TYPE = ND_OPTION_TYPE(25i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct PROTOCOL_INFOA { - pub dwServiceFlags: u32, - pub iAddressFamily: i32, - pub iMaxSockAddr: i32, - pub iMinSockAddr: i32, - pub iSocketType: i32, - pub iProtocol: i32, - pub dwMessageSize: u32, - pub lpProtocol: ::windows::core::PSTR, -} -impl ::core::marker::Copy for PROTOCOL_INFOA {} -impl ::core::clone::Clone for PROTOCOL_INFOA { +pub const ND_OPT_DNSSL: ND_OPTION_TYPE = ND_OPTION_TYPE(31i32); +impl ::core::marker::Copy for ND_OPTION_TYPE {} +impl ::core::clone::Clone for ND_OPTION_TYPE { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for PROTOCOL_INFOA { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("PROTOCOL_INFOA").field("dwServiceFlags", &self.dwServiceFlags).field("iAddressFamily", &self.iAddressFamily).field("iMaxSockAddr", &self.iMaxSockAddr).field("iMinSockAddr", &self.iMinSockAddr).field("iSocketType", &self.iSocketType).field("iProtocol", &self.iProtocol).field("dwMessageSize", &self.dwMessageSize).field("lpProtocol", &self.lpProtocol).finish() +impl ::core::default::Default for ND_OPTION_TYPE { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for PROTOCOL_INFOA { +unsafe impl ::windows::core::Abi for ND_OPTION_TYPE { type Abi = Self; } -impl ::core::cmp::PartialEq for PROTOCOL_INFOA { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for PROTOCOL_INFOA {} -impl ::core::default::Default for PROTOCOL_INFOA { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for ND_OPTION_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("ND_OPTION_TYPE").field(&self.0).finish() } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_DNSSL_MIN_LEN: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_PI_FLAG_AUTO: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_PI_FLAG_ONLINK: u32 = 128u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_PI_FLAG_ROUTE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_PI_FLAG_ROUTER_ADDR: u32 = 32u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_PI_FLAG_SITE_PREFIX: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_RDNSS_MIN_LEN: u32 = 24u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_OPT_RI_FLAG_PREFERENCE: u32 = 24u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_RA_FLAG_HOME_AGENT: u32 = 32u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_RA_FLAG_MANAGED: u32 = 128u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_RA_FLAG_OTHER: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ND_RA_FLAG_PREFERENCE: u32 = 24u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct PROTOCOL_INFOW { - pub dwServiceFlags: u32, - pub iAddressFamily: i32, - pub iMaxSockAddr: i32, - pub iMinSockAddr: i32, - pub iSocketType: i32, - pub iProtocol: i32, - pub dwMessageSize: u32, - pub lpProtocol: ::windows::core::PWSTR, +pub struct ND_REDIRECT_HEADER { + pub nd_rd_hdr: ICMP_MESSAGE, + pub nd_rd_target: IN6_ADDR, + pub nd_rd_dst: IN6_ADDR, } -impl ::core::marker::Copy for PROTOCOL_INFOW {} -impl ::core::clone::Clone for PROTOCOL_INFOW { +impl ::core::marker::Copy for ND_REDIRECT_HEADER {} +impl ::core::clone::Clone for ND_REDIRECT_HEADER { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for PROTOCOL_INFOW { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("PROTOCOL_INFOW").field("dwServiceFlags", &self.dwServiceFlags).field("iAddressFamily", &self.iAddressFamily).field("iMaxSockAddr", &self.iMaxSockAddr).field("iMinSockAddr", &self.iMinSockAddr).field("iSocketType", &self.iSocketType).field("iProtocol", &self.iProtocol).field("dwMessageSize", &self.dwMessageSize).field("lpProtocol", &self.lpProtocol).finish() - } -} -unsafe impl ::windows::core::Abi for PROTOCOL_INFOW { +unsafe impl ::windows::core::Abi for ND_REDIRECT_HEADER { type Abi = Self; } -impl ::core::cmp::PartialEq for PROTOCOL_INFOW { +impl ::core::cmp::PartialEq for ND_REDIRECT_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for PROTOCOL_INFOW {} -impl ::core::default::Default for PROTOCOL_INFOW { +impl ::core::cmp::Eq for ND_REDIRECT_HEADER {} +impl ::core::default::Default for ND_REDIRECT_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const PVD_CONFIG: u32 = 12289u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn ProcessSocketNotifications<'a, P0>(completionport: P0, registrationinfos: ::core::option::Option<&mut [SOCK_NOTIFY_REGISTRATION]>, timeoutms: u32, completionportentries: ::core::option::Option<&mut [super::super::System::IO::OVERLAPPED_ENTRY]>, receivedentrycount: ::core::option::Option<&mut u32>) -> u32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn ProcessSocketNotifications(completionport: super::super::Foundation::HANDLE, registrationcount: u32, registrationinfos: *mut SOCK_NOTIFY_REGISTRATION, timeoutms: u32, completioncount: u32, completionportentries: *mut super::super::System::IO::OVERLAPPED_ENTRY, receivedentrycount: *mut u32) -> u32; - } - ProcessSocketNotifications(completionport.into(), registrationinfos.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(registrationinfos.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), timeoutms, completionportentries.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(completionportentries.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), ::core::mem::transmute(receivedentrycount)) -} #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct Q2931_IE { - pub IEType: Q2931_IE_TYPE, - pub IELength: u32, - pub IE: [u8; 1], +pub struct ND_ROUTER_ADVERT_HEADER { + pub nd_ra_hdr: ICMP_MESSAGE, + pub nd_ra_reachable: u32, + pub nd_ra_retransmit: u32, } -impl ::core::marker::Copy for Q2931_IE {} -impl ::core::clone::Clone for Q2931_IE { +impl ::core::marker::Copy for ND_ROUTER_ADVERT_HEADER {} +impl ::core::clone::Clone for ND_ROUTER_ADVERT_HEADER { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for Q2931_IE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("Q2931_IE").field("IEType", &self.IEType).field("IELength", &self.IELength).field("IE", &self.IE).finish() - } -} -unsafe impl ::windows::core::Abi for Q2931_IE { +unsafe impl ::windows::core::Abi for ND_ROUTER_ADVERT_HEADER { type Abi = Self; } -impl ::core::cmp::PartialEq for Q2931_IE { +impl ::core::cmp::PartialEq for ND_ROUTER_ADVERT_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for Q2931_IE {} -impl ::core::default::Default for Q2931_IE { +impl ::core::cmp::Eq for ND_ROUTER_ADVERT_HEADER {} +impl ::core::default::Default for ND_ROUTER_ADVERT_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct Q2931_IE_TYPE(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IE_AALParameters: Q2931_IE_TYPE = Q2931_IE_TYPE(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IE_TrafficDescriptor: Q2931_IE_TYPE = Q2931_IE_TYPE(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IE_BroadbandBearerCapability: Q2931_IE_TYPE = Q2931_IE_TYPE(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IE_BHLI: Q2931_IE_TYPE = Q2931_IE_TYPE(3i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IE_BLLI: Q2931_IE_TYPE = Q2931_IE_TYPE(4i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IE_CalledPartyNumber: Q2931_IE_TYPE = Q2931_IE_TYPE(5i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IE_CalledPartySubaddress: Q2931_IE_TYPE = Q2931_IE_TYPE(6i32); +pub const NETBIOS_GROUP_NAME: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IE_CallingPartyNumber: Q2931_IE_TYPE = Q2931_IE_TYPE(7i32); +pub const NETBIOS_NAME_LENGTH: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IE_CallingPartySubaddress: Q2931_IE_TYPE = Q2931_IE_TYPE(8i32); +pub const NETBIOS_TYPE_QUICK_GROUP: u32 = 3u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IE_Cause: Q2931_IE_TYPE = Q2931_IE_TYPE(9i32); +pub const NETBIOS_TYPE_QUICK_UNIQUE: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IE_QOSClass: Q2931_IE_TYPE = Q2931_IE_TYPE(10i32); +pub const NETBIOS_UNIQUE_NAME: u32 = 0u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const IE_TransitNetworkSelection: Q2931_IE_TYPE = Q2931_IE_TYPE(11i32); -impl ::core::marker::Copy for Q2931_IE_TYPE {} -impl ::core::clone::Clone for Q2931_IE_TYPE { +pub struct NETRESOURCE2A { + pub dwScope: u32, + pub dwType: u32, + pub dwUsage: u32, + pub dwDisplayType: u32, + pub lpLocalName: ::windows::core::PSTR, + pub lpRemoteName: ::windows::core::PSTR, + pub lpComment: ::windows::core::PSTR, + pub ns_info: NS_INFOA, + pub ServiceType: ::windows::core::GUID, + pub dwProtocols: u32, + pub lpiProtocols: *mut i32, +} +impl ::core::marker::Copy for NETRESOURCE2A {} +impl ::core::clone::Clone for NETRESOURCE2A { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for Q2931_IE_TYPE { - fn default() -> Self { - Self(0) +impl ::core::fmt::Debug for NETRESOURCE2A { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("NETRESOURCE2A").field("dwScope", &self.dwScope).field("dwType", &self.dwType).field("dwUsage", &self.dwUsage).field("dwDisplayType", &self.dwDisplayType).field("lpLocalName", &self.lpLocalName).field("lpRemoteName", &self.lpRemoteName).field("lpComment", &self.lpComment).field("ns_info", &self.ns_info).field("ServiceType", &self.ServiceType).field("dwProtocols", &self.dwProtocols).field("lpiProtocols", &self.lpiProtocols).finish() } } -unsafe impl ::windows::core::Abi for Q2931_IE_TYPE { +unsafe impl ::windows::core::Abi for NETRESOURCE2A { type Abi = Self; } -impl ::core::fmt::Debug for Q2931_IE_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("Q2931_IE_TYPE").field(&self.0).finish() +impl ::core::cmp::PartialEq for NETRESOURCE2A { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for NETRESOURCE2A {} +impl ::core::default::Default for NETRESOURCE2A { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct QOS { - pub SendingFlowspec: FLOWSPEC, - pub ReceivingFlowspec: FLOWSPEC, - pub ProviderSpecific: WSABUF, +pub struct NETRESOURCE2W { + pub dwScope: u32, + pub dwType: u32, + pub dwUsage: u32, + pub dwDisplayType: u32, + pub lpLocalName: ::windows::core::PWSTR, + pub lpRemoteName: ::windows::core::PWSTR, + pub lpComment: ::windows::core::PWSTR, + pub ns_info: NS_INFOA, + pub ServiceType: ::windows::core::GUID, + pub dwProtocols: u32, + pub lpiProtocols: *mut i32, } -impl ::core::marker::Copy for QOS {} -impl ::core::clone::Clone for QOS { +impl ::core::marker::Copy for NETRESOURCE2W {} +impl ::core::clone::Clone for NETRESOURCE2W { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for QOS { +impl ::core::fmt::Debug for NETRESOURCE2W { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("QOS").field("SendingFlowspec", &self.SendingFlowspec).field("ReceivingFlowspec", &self.ReceivingFlowspec).field("ProviderSpecific", &self.ProviderSpecific).finish() + f.debug_struct("NETRESOURCE2W").field("dwScope", &self.dwScope).field("dwType", &self.dwType).field("dwUsage", &self.dwUsage).field("dwDisplayType", &self.dwDisplayType).field("lpLocalName", &self.lpLocalName).field("lpRemoteName", &self.lpRemoteName).field("lpComment", &self.lpComment).field("ns_info", &self.ns_info).field("ServiceType", &self.ServiceType).field("dwProtocols", &self.dwProtocols).field("lpiProtocols", &self.lpiProtocols).finish() } } -unsafe impl ::windows::core::Abi for QOS { +unsafe impl ::windows::core::Abi for NETRESOURCE2W { type Abi = Self; } -impl ::core::cmp::PartialEq for QOS { +impl ::core::cmp::PartialEq for NETRESOURCE2W { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for QOS {} -impl ::core::default::Default for QOS { +impl ::core::cmp::Eq for NETRESOURCE2W {} +impl ::core::default::Default for NETRESOURCE2W { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const QOS_CLASS0: u32 = 0u32; +pub const NI_DGRAM: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const QOS_CLASS1: u32 = 1u32; +pub const NI_MAXHOST: u32 = 1025u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const QOS_CLASS2: u32 = 2u32; +pub const NI_MAXSERV: u32 = 32u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const QOS_CLASS3: u32 = 3u32; +pub const NI_NAMEREQD: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const QOS_CLASS4: u32 = 4u32; -#[repr(C)] +pub const NI_NOFQDN: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct RCVALL_IF { - pub Mode: RCVALL_VALUE, - pub Interface: u32, -} -impl ::core::marker::Copy for RCVALL_IF {} -impl ::core::clone::Clone for RCVALL_IF { +pub const NI_NUMERICHOST: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NI_NUMERICSERV: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NLA_ALLUSERS_NETWORK: u32 = 1u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct NLA_BLOB { + pub header: NLA_BLOB_1, + pub data: NLA_BLOB_0, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for NLA_BLOB {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for NLA_BLOB { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for RCVALL_IF { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("RCVALL_IF").field("Mode", &self.Mode).field("Interface", &self.Interface).finish() +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for NLA_BLOB { + type Abi = Self; +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for NLA_BLOB { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -unsafe impl ::windows::core::Abi for RCVALL_IF { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for NLA_BLOB {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for NLA_BLOB { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub union NLA_BLOB_0 { + pub rawData: [super::super::Foundation::CHAR; 1], + pub interfaceData: NLA_BLOB_0_2, + pub locationData: NLA_BLOB_0_3, + pub connectivity: NLA_BLOB_0_1, + pub ICS: NLA_BLOB_0_0, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for NLA_BLOB_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for NLA_BLOB_0 { + fn clone(&self) -> Self { + *self + } +} +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for NLA_BLOB_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for RCVALL_IF { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for NLA_BLOB_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for RCVALL_IF {} -impl ::core::default::Default for RCVALL_IF { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for NLA_BLOB_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for NLA_BLOB_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct RCVALL_VALUE(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RCVALL_OFF: RCVALL_VALUE = RCVALL_VALUE(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RCVALL_ON: RCVALL_VALUE = RCVALL_VALUE(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RCVALL_SOCKETLEVELONLY: RCVALL_VALUE = RCVALL_VALUE(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RCVALL_IPLEVEL: RCVALL_VALUE = RCVALL_VALUE(3i32); -impl ::core::marker::Copy for RCVALL_VALUE {} -impl ::core::clone::Clone for RCVALL_VALUE { +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct NLA_BLOB_0_0 { + pub remote: NLA_BLOB_0_0_0, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for NLA_BLOB_0_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for NLA_BLOB_0_0 { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for RCVALL_VALUE { - fn default() -> Self { - Self(0) +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for NLA_BLOB_0_0 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("NLA_BLOB_0_0").field("remote", &self.remote).finish() } } -unsafe impl ::windows::core::Abi for RCVALL_VALUE { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for NLA_BLOB_0_0 { type Abi = Self; } -impl ::core::fmt::Debug for RCVALL_VALUE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("RCVALL_VALUE").field(&self.0).finish() +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for NLA_BLOB_0_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for NLA_BLOB_0_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for NLA_BLOB_0_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } -pub const REAL_TIME_NOTIFICATION_CAPABILITY: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6b59819a_5cae_492d_a901_2a3c2c50164f); -pub const REAL_TIME_NOTIFICATION_CAPABILITY_EX: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6843da03_154a_4616_a508_44371295f96b); #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct REAL_TIME_NOTIFICATION_SETTING_INPUT { - pub TransportSettingId: TRANSPORT_SETTING_ID, - pub BrokerEventGuid: ::windows::core::GUID, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct NLA_BLOB_0_0_0 { + pub speed: u32, + pub r#type: u32, + pub state: u32, + pub machineName: [u16; 256], + pub sharedAdapterName: [u16; 256], } -impl ::core::marker::Copy for REAL_TIME_NOTIFICATION_SETTING_INPUT {} -impl ::core::clone::Clone for REAL_TIME_NOTIFICATION_SETTING_INPUT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for NLA_BLOB_0_0_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for NLA_BLOB_0_0_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for REAL_TIME_NOTIFICATION_SETTING_INPUT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for NLA_BLOB_0_0_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("REAL_TIME_NOTIFICATION_SETTING_INPUT").field("TransportSettingId", &self.TransportSettingId).field("BrokerEventGuid", &self.BrokerEventGuid).finish() + f.debug_struct("NLA_BLOB_0_0_0").field("speed", &self.speed).field("type", &self.r#type).field("state", &self.state).field("machineName", &self.machineName).field("sharedAdapterName", &self.sharedAdapterName).finish() } } -unsafe impl ::windows::core::Abi for REAL_TIME_NOTIFICATION_SETTING_INPUT { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for NLA_BLOB_0_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for REAL_TIME_NOTIFICATION_SETTING_INPUT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for NLA_BLOB_0_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for REAL_TIME_NOTIFICATION_SETTING_INPUT {} -impl ::core::default::Default for REAL_TIME_NOTIFICATION_SETTING_INPUT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for NLA_BLOB_0_0_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for NLA_BLOB_0_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } @@ -8543,2118 +7709,1908 @@ impl ::core::default::Default for REAL_TIME_NOTIFICATION_SETTING_INPUT { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct REAL_TIME_NOTIFICATION_SETTING_INPUT_EX { - pub TransportSettingId: TRANSPORT_SETTING_ID, - pub BrokerEventGuid: ::windows::core::GUID, - pub Unmark: super::super::Foundation::BOOLEAN, +pub struct NLA_BLOB_0_1 { + pub r#type: NLA_CONNECTIVITY_TYPE, + pub internet: NLA_INTERNET, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for REAL_TIME_NOTIFICATION_SETTING_INPUT_EX {} +impl ::core::marker::Copy for NLA_BLOB_0_1 {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for REAL_TIME_NOTIFICATION_SETTING_INPUT_EX { +impl ::core::clone::Clone for NLA_BLOB_0_1 { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for REAL_TIME_NOTIFICATION_SETTING_INPUT_EX { +impl ::core::fmt::Debug for NLA_BLOB_0_1 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("REAL_TIME_NOTIFICATION_SETTING_INPUT_EX").field("TransportSettingId", &self.TransportSettingId).field("BrokerEventGuid", &self.BrokerEventGuid).field("Unmark", &self.Unmark).finish() + f.debug_struct("NLA_BLOB_0_1").field("type", &self.r#type).field("internet", &self.internet).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for REAL_TIME_NOTIFICATION_SETTING_INPUT_EX { +unsafe impl ::windows::core::Abi for NLA_BLOB_0_1 { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for REAL_TIME_NOTIFICATION_SETTING_INPUT_EX { +impl ::core::cmp::PartialEq for NLA_BLOB_0_1 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for REAL_TIME_NOTIFICATION_SETTING_INPUT_EX {} +impl ::core::cmp::Eq for NLA_BLOB_0_1 {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for REAL_TIME_NOTIFICATION_SETTING_INPUT_EX { +impl ::core::default::Default for NLA_BLOB_0_1 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct REAL_TIME_NOTIFICATION_SETTING_OUTPUT { - pub ChannelStatus: CONTROL_CHANNEL_TRIGGER_STATUS, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct NLA_BLOB_0_2 { + pub dwType: u32, + pub dwSpeed: u32, + pub adapterName: [super::super::Foundation::CHAR; 1], } -impl ::core::marker::Copy for REAL_TIME_NOTIFICATION_SETTING_OUTPUT {} -impl ::core::clone::Clone for REAL_TIME_NOTIFICATION_SETTING_OUTPUT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for NLA_BLOB_0_2 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for NLA_BLOB_0_2 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for REAL_TIME_NOTIFICATION_SETTING_OUTPUT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for NLA_BLOB_0_2 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("REAL_TIME_NOTIFICATION_SETTING_OUTPUT").field("ChannelStatus", &self.ChannelStatus).finish() + f.debug_struct("NLA_BLOB_0_2").field("dwType", &self.dwType).field("dwSpeed", &self.dwSpeed).field("adapterName", &self.adapterName).finish() } } -unsafe impl ::windows::core::Abi for REAL_TIME_NOTIFICATION_SETTING_OUTPUT { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for NLA_BLOB_0_2 { type Abi = Self; } -impl ::core::cmp::PartialEq for REAL_TIME_NOTIFICATION_SETTING_OUTPUT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for NLA_BLOB_0_2 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for REAL_TIME_NOTIFICATION_SETTING_OUTPUT {} -impl ::core::default::Default for REAL_TIME_NOTIFICATION_SETTING_OUTPUT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for NLA_BLOB_0_2 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for NLA_BLOB_0_2 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct RESOURCE_DISPLAY_TYPE(pub u32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RESOURCEDISPLAYTYPE_DOMAIN: RESOURCE_DISPLAY_TYPE = RESOURCE_DISPLAY_TYPE(1u32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RESOURCEDISPLAYTYPE_FILE: RESOURCE_DISPLAY_TYPE = RESOURCE_DISPLAY_TYPE(4u32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RESOURCEDISPLAYTYPE_GENERIC: RESOURCE_DISPLAY_TYPE = RESOURCE_DISPLAY_TYPE(0u32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RESOURCEDISPLAYTYPE_GROUP: RESOURCE_DISPLAY_TYPE = RESOURCE_DISPLAY_TYPE(5u32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RESOURCEDISPLAYTYPE_SERVER: RESOURCE_DISPLAY_TYPE = RESOURCE_DISPLAY_TYPE(2u32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RESOURCEDISPLAYTYPE_SHARE: RESOURCE_DISPLAY_TYPE = RESOURCE_DISPLAY_TYPE(3u32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RESOURCEDISPLAYTYPE_TREE: RESOURCE_DISPLAY_TYPE = RESOURCE_DISPLAY_TYPE(10u32); -impl ::core::marker::Copy for RESOURCE_DISPLAY_TYPE {} -impl ::core::clone::Clone for RESOURCE_DISPLAY_TYPE { +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct NLA_BLOB_0_3 { + pub information: [super::super::Foundation::CHAR; 1], +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for NLA_BLOB_0_3 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for NLA_BLOB_0_3 { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for RESOURCE_DISPLAY_TYPE { - fn default() -> Self { - Self(0) +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for NLA_BLOB_0_3 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("NLA_BLOB_0_3").field("information", &self.information).finish() } } -unsafe impl ::windows::core::Abi for RESOURCE_DISPLAY_TYPE { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for NLA_BLOB_0_3 { type Abi = Self; } -impl ::core::fmt::Debug for RESOURCE_DISPLAY_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("RESOURCE_DISPLAY_TYPE").field(&self.0).finish() - } -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RESULT_IS_ADDED: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RESULT_IS_ALIAS: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RESULT_IS_CHANGED: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RESULT_IS_DELETED: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RES_FIND_MULTIPLE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RES_FLUSH_CACHE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RES_SERVICE: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RES_SOFT_SEARCH: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RES_UNUSED_1: u32 = 1u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct RIORESULT { - pub Status: i32, - pub BytesTransferred: u32, - pub SocketContext: u64, - pub RequestContext: u64, -} -impl ::core::marker::Copy for RIORESULT {} -impl ::core::clone::Clone for RIORESULT { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for RIORESULT { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("RIORESULT").field("Status", &self.Status).field("BytesTransferred", &self.BytesTransferred).field("SocketContext", &self.SocketContext).field("RequestContext", &self.RequestContext).finish() - } -} -unsafe impl ::windows::core::Abi for RIORESULT { - type Abi = Self; -} -impl ::core::cmp::PartialEq for RIORESULT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for NLA_BLOB_0_3 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for RIORESULT {} -impl ::core::default::Default for RIORESULT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for NLA_BLOB_0_3 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for NLA_BLOB_0_3 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct RIO_BUF { - pub BufferId: *mut RIO_BUFFERID_t, - pub Offset: u32, - pub Length: u32, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct NLA_BLOB_1 { + pub r#type: NLA_BLOB_DATA_TYPE, + pub dwSize: u32, + pub nextOffset: u32, } -impl ::core::marker::Copy for RIO_BUF {} -impl ::core::clone::Clone for RIO_BUF { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for NLA_BLOB_1 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for NLA_BLOB_1 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for RIO_BUF { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for NLA_BLOB_1 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("RIO_BUF").field("BufferId", &self.BufferId).field("Offset", &self.Offset).field("Length", &self.Length).finish() + f.debug_struct("NLA_BLOB_1").field("type", &self.r#type).field("dwSize", &self.dwSize).field("nextOffset", &self.nextOffset).finish() } } -unsafe impl ::windows::core::Abi for RIO_BUF { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for NLA_BLOB_1 { type Abi = Self; } -impl ::core::cmp::PartialEq for RIO_BUF { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for NLA_BLOB_1 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for RIO_BUF {} -impl ::core::default::Default for RIO_BUF { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for NLA_BLOB_1 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for NLA_BLOB_1 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] -pub struct RIO_BUFFERID_t(pub u8); -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct RIO_CMSG_BUFFER { - pub TotalLength: u32, -} -impl ::core::marker::Copy for RIO_CMSG_BUFFER {} -impl ::core::clone::Clone for RIO_CMSG_BUFFER { +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NLA_BLOB_DATA_TYPE(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NLA_RAW_DATA: NLA_BLOB_DATA_TYPE = NLA_BLOB_DATA_TYPE(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NLA_INTERFACE: NLA_BLOB_DATA_TYPE = NLA_BLOB_DATA_TYPE(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NLA_802_1X_LOCATION: NLA_BLOB_DATA_TYPE = NLA_BLOB_DATA_TYPE(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NLA_CONNECTIVITY: NLA_BLOB_DATA_TYPE = NLA_BLOB_DATA_TYPE(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NLA_ICS: NLA_BLOB_DATA_TYPE = NLA_BLOB_DATA_TYPE(4i32); +impl ::core::marker::Copy for NLA_BLOB_DATA_TYPE {} +impl ::core::clone::Clone for NLA_BLOB_DATA_TYPE { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for RIO_CMSG_BUFFER { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("RIO_CMSG_BUFFER").field("TotalLength", &self.TotalLength).finish() +impl ::core::default::Default for NLA_BLOB_DATA_TYPE { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for RIO_CMSG_BUFFER { +unsafe impl ::windows::core::Abi for NLA_BLOB_DATA_TYPE { type Abi = Self; } -impl ::core::cmp::PartialEq for RIO_CMSG_BUFFER { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for RIO_CMSG_BUFFER {} -impl ::core::default::Default for RIO_CMSG_BUFFER { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for NLA_BLOB_DATA_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NLA_BLOB_DATA_TYPE").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RIO_CORRUPT_CQ: u32 = 4294967295u32; -#[repr(C)] -pub struct RIO_CQ_t(pub u8); -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct RIO_EXTENSION_FUNCTION_TABLE { - pub cbSize: u32, - pub RIOReceive: LPFN_RIORECEIVE, - pub RIOReceiveEx: LPFN_RIORECEIVEEX, - pub RIOSend: LPFN_RIOSEND, - pub RIOSendEx: LPFN_RIOSENDEX, - pub RIOCloseCompletionQueue: LPFN_RIOCLOSECOMPLETIONQUEUE, - pub RIOCreateCompletionQueue: LPFN_RIOCREATECOMPLETIONQUEUE, - pub RIOCreateRequestQueue: LPFN_RIOCREATEREQUESTQUEUE, - pub RIODequeueCompletion: LPFN_RIODEQUEUECOMPLETION, - pub RIODeregisterBuffer: LPFN_RIODEREGISTERBUFFER, - pub RIONotify: LPFN_RIONOTIFY, - pub RIORegisterBuffer: LPFN_RIOREGISTERBUFFER, - pub RIOResizeCompletionQueue: LPFN_RIORESIZECOMPLETIONQUEUE, - pub RIOResizeRequestQueue: LPFN_RIORESIZEREQUESTQUEUE, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for RIO_EXTENSION_FUNCTION_TABLE {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for RIO_EXTENSION_FUNCTION_TABLE { +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NLA_CONNECTIVITY_TYPE(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NLA_NETWORK_AD_HOC: NLA_CONNECTIVITY_TYPE = NLA_CONNECTIVITY_TYPE(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NLA_NETWORK_MANAGED: NLA_CONNECTIVITY_TYPE = NLA_CONNECTIVITY_TYPE(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NLA_NETWORK_UNMANAGED: NLA_CONNECTIVITY_TYPE = NLA_CONNECTIVITY_TYPE(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NLA_NETWORK_UNKNOWN: NLA_CONNECTIVITY_TYPE = NLA_CONNECTIVITY_TYPE(3i32); +impl ::core::marker::Copy for NLA_CONNECTIVITY_TYPE {} +impl ::core::clone::Clone for NLA_CONNECTIVITY_TYPE { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for RIO_EXTENSION_FUNCTION_TABLE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("RIO_EXTENSION_FUNCTION_TABLE") - .field("cbSize", &self.cbSize) - .field("RIOReceive", &self.RIOReceive.map(|f| f as usize)) - .field("RIOReceiveEx", &self.RIOReceiveEx.map(|f| f as usize)) - .field("RIOSend", &self.RIOSend.map(|f| f as usize)) - .field("RIOSendEx", &self.RIOSendEx.map(|f| f as usize)) - .field("RIOCloseCompletionQueue", &self.RIOCloseCompletionQueue.map(|f| f as usize)) - .field("RIOCreateCompletionQueue", &self.RIOCreateCompletionQueue.map(|f| f as usize)) - .field("RIOCreateRequestQueue", &self.RIOCreateRequestQueue.map(|f| f as usize)) - .field("RIODequeueCompletion", &self.RIODequeueCompletion.map(|f| f as usize)) - .field("RIODeregisterBuffer", &self.RIODeregisterBuffer.map(|f| f as usize)) - .field("RIONotify", &self.RIONotify.map(|f| f as usize)) - .field("RIORegisterBuffer", &self.RIORegisterBuffer.map(|f| f as usize)) - .field("RIOResizeCompletionQueue", &self.RIOResizeCompletionQueue.map(|f| f as usize)) - .field("RIOResizeRequestQueue", &self.RIOResizeRequestQueue.map(|f| f as usize)) - .finish() +impl ::core::default::Default for NLA_CONNECTIVITY_TYPE { + fn default() -> Self { + Self(0) } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for RIO_EXTENSION_FUNCTION_TABLE { +unsafe impl ::windows::core::Abi for NLA_CONNECTIVITY_TYPE { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for RIO_EXTENSION_FUNCTION_TABLE { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for RIO_EXTENSION_FUNCTION_TABLE {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for RIO_EXTENSION_FUNCTION_TABLE { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for NLA_CONNECTIVITY_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NLA_CONNECTIVITY_TYPE").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RIO_MAX_CQ_SIZE: u32 = 134217728u32; +pub const NLA_FRIENDLY_NAME: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RIO_MSG_COMMIT_ONLY: u32 = 8u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NLA_INTERNET(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RIO_MSG_DEFER: u32 = 2u32; +pub const NLA_INTERNET_UNKNOWN: NLA_INTERNET = NLA_INTERNET(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RIO_MSG_DONT_NOTIFY: u32 = 1u32; +pub const NLA_INTERNET_NO: NLA_INTERNET = NLA_INTERNET(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RIO_MSG_WAITALL: u32 = 4u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct RIO_NOTIFICATION_COMPLETION { - pub Type: RIO_NOTIFICATION_COMPLETION_TYPE, - pub Anonymous: RIO_NOTIFICATION_COMPLETION_0, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for RIO_NOTIFICATION_COMPLETION {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for RIO_NOTIFICATION_COMPLETION { +pub const NLA_INTERNET_YES: NLA_INTERNET = NLA_INTERNET(2i32); +impl ::core::marker::Copy for NLA_INTERNET {} +impl ::core::clone::Clone for NLA_INTERNET { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for RIO_NOTIFICATION_COMPLETION { +impl ::core::default::Default for NLA_INTERNET { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for NLA_INTERNET { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for RIO_NOTIFICATION_COMPLETION { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::fmt::Debug for NLA_INTERNET { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NLA_INTERNET").field(&self.0).finish() } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for RIO_NOTIFICATION_COMPLETION {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for RIO_NOTIFICATION_COMPLETION { +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NL_ADDRESS_TYPE(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlatUnspecified: NL_ADDRESS_TYPE = NL_ADDRESS_TYPE(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlatUnicast: NL_ADDRESS_TYPE = NL_ADDRESS_TYPE(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlatAnycast: NL_ADDRESS_TYPE = NL_ADDRESS_TYPE(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlatMulticast: NL_ADDRESS_TYPE = NL_ADDRESS_TYPE(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlatBroadcast: NL_ADDRESS_TYPE = NL_ADDRESS_TYPE(4i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlatInvalid: NL_ADDRESS_TYPE = NL_ADDRESS_TYPE(5i32); +impl ::core::marker::Copy for NL_ADDRESS_TYPE {} +impl ::core::clone::Clone for NL_ADDRESS_TYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for NL_ADDRESS_TYPE { fn default() -> Self { - unsafe { ::core::mem::zeroed() } + Self(0) } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub union RIO_NOTIFICATION_COMPLETION_0 { - pub Event: RIO_NOTIFICATION_COMPLETION_0_0, - pub Iocp: RIO_NOTIFICATION_COMPLETION_0_1, +unsafe impl ::windows::core::Abi for NL_ADDRESS_TYPE { + type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for RIO_NOTIFICATION_COMPLETION_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for RIO_NOTIFICATION_COMPLETION_0 { +impl ::core::fmt::Debug for NL_ADDRESS_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NL_ADDRESS_TYPE").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NL_BANDWIDTH_FLAG(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlbwDisabled: NL_BANDWIDTH_FLAG = NL_BANDWIDTH_FLAG(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlbwEnabled: NL_BANDWIDTH_FLAG = NL_BANDWIDTH_FLAG(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlbwUnchanged: NL_BANDWIDTH_FLAG = NL_BANDWIDTH_FLAG(-1i32); +impl ::core::marker::Copy for NL_BANDWIDTH_FLAG {} +impl ::core::clone::Clone for NL_BANDWIDTH_FLAG { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for RIO_NOTIFICATION_COMPLETION_0 { - type Abi = Self; -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for RIO_NOTIFICATION_COMPLETION_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::default::Default for NL_BANDWIDTH_FLAG { + fn default() -> Self { + Self(0) } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for RIO_NOTIFICATION_COMPLETION_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for RIO_NOTIFICATION_COMPLETION_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +unsafe impl ::windows::core::Abi for NL_BANDWIDTH_FLAG { + type Abi = Self; +} +impl ::core::fmt::Debug for NL_BANDWIDTH_FLAG { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NL_BANDWIDTH_FLAG").field(&self.0).finish() } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct RIO_NOTIFICATION_COMPLETION_0_0 { - pub EventHandle: super::super::Foundation::HANDLE, - pub NotifyReset: super::super::Foundation::BOOL, +pub struct NL_BANDWIDTH_INFORMATION { + pub Bandwidth: u64, + pub Instability: u64, + pub BandwidthPeaked: super::super::Foundation::BOOLEAN, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for RIO_NOTIFICATION_COMPLETION_0_0 {} +impl ::core::marker::Copy for NL_BANDWIDTH_INFORMATION {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for RIO_NOTIFICATION_COMPLETION_0_0 { +impl ::core::clone::Clone for NL_BANDWIDTH_INFORMATION { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for RIO_NOTIFICATION_COMPLETION_0_0 { +impl ::core::fmt::Debug for NL_BANDWIDTH_INFORMATION { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("RIO_NOTIFICATION_COMPLETION_0_0").field("EventHandle", &self.EventHandle).field("NotifyReset", &self.NotifyReset).finish() + f.debug_struct("NL_BANDWIDTH_INFORMATION").field("Bandwidth", &self.Bandwidth).field("Instability", &self.Instability).field("BandwidthPeaked", &self.BandwidthPeaked).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for RIO_NOTIFICATION_COMPLETION_0_0 { +unsafe impl ::windows::core::Abi for NL_BANDWIDTH_INFORMATION { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for RIO_NOTIFICATION_COMPLETION_0_0 { +impl ::core::cmp::PartialEq for NL_BANDWIDTH_INFORMATION { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for RIO_NOTIFICATION_COMPLETION_0_0 {} +impl ::core::cmp::Eq for NL_BANDWIDTH_INFORMATION {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for RIO_NOTIFICATION_COMPLETION_0_0 { +impl ::core::default::Default for NL_BANDWIDTH_INFORMATION { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct RIO_NOTIFICATION_COMPLETION_0_1 { - pub IocpHandle: super::super::Foundation::HANDLE, - pub CompletionKey: *mut ::core::ffi::c_void, - pub Overlapped: *mut ::core::ffi::c_void, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for RIO_NOTIFICATION_COMPLETION_0_1 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for RIO_NOTIFICATION_COMPLETION_0_1 { +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NL_DAD_STATE(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NldsInvalid: NL_DAD_STATE = NL_DAD_STATE(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NldsTentative: NL_DAD_STATE = NL_DAD_STATE(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NldsDuplicate: NL_DAD_STATE = NL_DAD_STATE(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NldsDeprecated: NL_DAD_STATE = NL_DAD_STATE(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NldsPreferred: NL_DAD_STATE = NL_DAD_STATE(4i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IpDadStateInvalid: NL_DAD_STATE = NL_DAD_STATE(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IpDadStateTentative: NL_DAD_STATE = NL_DAD_STATE(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IpDadStateDuplicate: NL_DAD_STATE = NL_DAD_STATE(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IpDadStateDeprecated: NL_DAD_STATE = NL_DAD_STATE(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IpDadStatePreferred: NL_DAD_STATE = NL_DAD_STATE(4i32); +impl ::core::marker::Copy for NL_DAD_STATE {} +impl ::core::clone::Clone for NL_DAD_STATE { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for RIO_NOTIFICATION_COMPLETION_0_1 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("RIO_NOTIFICATION_COMPLETION_0_1").field("IocpHandle", &self.IocpHandle).field("CompletionKey", &self.CompletionKey).field("Overlapped", &self.Overlapped).finish() +impl ::core::default::Default for NL_DAD_STATE { + fn default() -> Self { + Self(0) } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for RIO_NOTIFICATION_COMPLETION_0_1 { +unsafe impl ::windows::core::Abi for NL_DAD_STATE { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for RIO_NOTIFICATION_COMPLETION_0_1 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for RIO_NOTIFICATION_COMPLETION_0_1 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for RIO_NOTIFICATION_COMPLETION_0_1 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for NL_DAD_STATE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NL_DAD_STATE").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct RIO_NOTIFICATION_COMPLETION_TYPE(pub i32); +pub struct NL_INTERFACE_NETWORK_CATEGORY_STATE(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RIO_EVENT_COMPLETION: RIO_NOTIFICATION_COMPLETION_TYPE = RIO_NOTIFICATION_COMPLETION_TYPE(1i32); +pub const NlincCategoryUnknown: NL_INTERFACE_NETWORK_CATEGORY_STATE = NL_INTERFACE_NETWORK_CATEGORY_STATE(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RIO_IOCP_COMPLETION: RIO_NOTIFICATION_COMPLETION_TYPE = RIO_NOTIFICATION_COMPLETION_TYPE(2i32); -impl ::core::marker::Copy for RIO_NOTIFICATION_COMPLETION_TYPE {} -impl ::core::clone::Clone for RIO_NOTIFICATION_COMPLETION_TYPE { +pub const NlincPublic: NL_INTERFACE_NETWORK_CATEGORY_STATE = NL_INTERFACE_NETWORK_CATEGORY_STATE(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlincPrivate: NL_INTERFACE_NETWORK_CATEGORY_STATE = NL_INTERFACE_NETWORK_CATEGORY_STATE(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlincDomainAuthenticated: NL_INTERFACE_NETWORK_CATEGORY_STATE = NL_INTERFACE_NETWORK_CATEGORY_STATE(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlincCategoryStateMax: NL_INTERFACE_NETWORK_CATEGORY_STATE = NL_INTERFACE_NETWORK_CATEGORY_STATE(4i32); +impl ::core::marker::Copy for NL_INTERFACE_NETWORK_CATEGORY_STATE {} +impl ::core::clone::Clone for NL_INTERFACE_NETWORK_CATEGORY_STATE { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for RIO_NOTIFICATION_COMPLETION_TYPE { +impl ::core::default::Default for NL_INTERFACE_NETWORK_CATEGORY_STATE { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for RIO_NOTIFICATION_COMPLETION_TYPE { +unsafe impl ::windows::core::Abi for NL_INTERFACE_NETWORK_CATEGORY_STATE { type Abi = Self; } -impl ::core::fmt::Debug for RIO_NOTIFICATION_COMPLETION_TYPE { +impl ::core::fmt::Debug for NL_INTERFACE_NETWORK_CATEGORY_STATE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("RIO_NOTIFICATION_COMPLETION_TYPE").field(&self.0).finish() + f.debug_tuple("NL_INTERFACE_NETWORK_CATEGORY_STATE").field(&self.0).finish() } } #[repr(C)] -pub struct RIO_RQ_t(pub u8); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_ADD_RECEIVE_IF: u32 = 1008u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_DEL_RECEIVE_IF: u32 = 1009u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct RM_FEC_INFO { - pub FECBlockSize: u16, - pub FECProActivePackets: u16, - pub FECGroupSize: u8, - pub fFECOnDemandParityEnabled: super::super::Foundation::BOOLEAN, +pub struct NL_INTERFACE_OFFLOAD_ROD { + pub _bitfield: u8, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for RM_FEC_INFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for RM_FEC_INFO { +impl ::core::marker::Copy for NL_INTERFACE_OFFLOAD_ROD {} +impl ::core::clone::Clone for NL_INTERFACE_OFFLOAD_ROD { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for RM_FEC_INFO { +impl ::core::fmt::Debug for NL_INTERFACE_OFFLOAD_ROD { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("RM_FEC_INFO").field("FECBlockSize", &self.FECBlockSize).field("FECProActivePackets", &self.FECProActivePackets).field("FECGroupSize", &self.FECGroupSize).field("fFECOnDemandParityEnabled", &self.fFECOnDemandParityEnabled).finish() + f.debug_struct("NL_INTERFACE_OFFLOAD_ROD").field("_bitfield", &self._bitfield).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for RM_FEC_INFO { +unsafe impl ::windows::core::Abi for NL_INTERFACE_OFFLOAD_ROD { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for RM_FEC_INFO { +impl ::core::cmp::PartialEq for NL_INTERFACE_OFFLOAD_ROD { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for RM_FEC_INFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for RM_FEC_INFO { +impl ::core::cmp::Eq for NL_INTERFACE_OFFLOAD_ROD {} +impl ::core::default::Default for NL_INTERFACE_OFFLOAD_ROD { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_FLUSHCACHE: u32 = 1003u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_HIGH_SPEED_INTRANET_OPT: u32 = 1014u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_LATEJOIN: u32 = 1006u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NL_LINK_LOCAL_ADDRESS_BEHAVIOR(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_OPTIONSBASE: u32 = 1000u32; +pub const LinkLocalAlwaysOff: NL_LINK_LOCAL_ADDRESS_BEHAVIOR = NL_LINK_LOCAL_ADDRESS_BEHAVIOR(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_RATE_WINDOW_SIZE: u32 = 1001u32; +pub const LinkLocalDelayed: NL_LINK_LOCAL_ADDRESS_BEHAVIOR = NL_LINK_LOCAL_ADDRESS_BEHAVIOR(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_RECEIVER_STATISTICS: u32 = 1013u32; -#[repr(C)] +pub const LinkLocalAlwaysOn: NL_LINK_LOCAL_ADDRESS_BEHAVIOR = NL_LINK_LOCAL_ADDRESS_BEHAVIOR(2i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct RM_RECEIVER_STATS { - pub NumODataPacketsReceived: u64, - pub NumRDataPacketsReceived: u64, - pub NumDuplicateDataPackets: u64, - pub DataBytesReceived: u64, - pub TotalBytesReceived: u64, - pub RateKBitsPerSecOverall: u64, - pub RateKBitsPerSecLast: u64, - pub TrailingEdgeSeqId: u64, - pub LeadingEdgeSeqId: u64, - pub AverageSequencesInWindow: u64, - pub MinSequencesInWindow: u64, - pub MaxSequencesInWindow: u64, - pub FirstNakSequenceNumber: u64, - pub NumPendingNaks: u64, - pub NumOutstandingNaks: u64, - pub NumDataPacketsBuffered: u64, - pub TotalSelectiveNaksSent: u64, - pub TotalParityNaksSent: u64, -} -impl ::core::marker::Copy for RM_RECEIVER_STATS {} -impl ::core::clone::Clone for RM_RECEIVER_STATS { +pub const LinkLocalUnchanged: NL_LINK_LOCAL_ADDRESS_BEHAVIOR = NL_LINK_LOCAL_ADDRESS_BEHAVIOR(-1i32); +impl ::core::marker::Copy for NL_LINK_LOCAL_ADDRESS_BEHAVIOR {} +impl ::core::clone::Clone for NL_LINK_LOCAL_ADDRESS_BEHAVIOR { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for RM_RECEIVER_STATS { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("RM_RECEIVER_STATS") - .field("NumODataPacketsReceived", &self.NumODataPacketsReceived) - .field("NumRDataPacketsReceived", &self.NumRDataPacketsReceived) - .field("NumDuplicateDataPackets", &self.NumDuplicateDataPackets) - .field("DataBytesReceived", &self.DataBytesReceived) - .field("TotalBytesReceived", &self.TotalBytesReceived) - .field("RateKBitsPerSecOverall", &self.RateKBitsPerSecOverall) - .field("RateKBitsPerSecLast", &self.RateKBitsPerSecLast) - .field("TrailingEdgeSeqId", &self.TrailingEdgeSeqId) - .field("LeadingEdgeSeqId", &self.LeadingEdgeSeqId) - .field("AverageSequencesInWindow", &self.AverageSequencesInWindow) - .field("MinSequencesInWindow", &self.MinSequencesInWindow) - .field("MaxSequencesInWindow", &self.MaxSequencesInWindow) - .field("FirstNakSequenceNumber", &self.FirstNakSequenceNumber) - .field("NumPendingNaks", &self.NumPendingNaks) - .field("NumOutstandingNaks", &self.NumOutstandingNaks) - .field("NumDataPacketsBuffered", &self.NumDataPacketsBuffered) - .field("TotalSelectiveNaksSent", &self.TotalSelectiveNaksSent) - .field("TotalParityNaksSent", &self.TotalParityNaksSent) - .finish() +impl ::core::default::Default for NL_LINK_LOCAL_ADDRESS_BEHAVIOR { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for RM_RECEIVER_STATS { +unsafe impl ::windows::core::Abi for NL_LINK_LOCAL_ADDRESS_BEHAVIOR { type Abi = Self; } -impl ::core::cmp::PartialEq for RM_RECEIVER_STATS { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for RM_RECEIVER_STATS {} -impl ::core::default::Default for RM_RECEIVER_STATS { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for NL_LINK_LOCAL_ADDRESS_BEHAVIOR { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NL_LINK_LOCAL_ADDRESS_BEHAVIOR").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_SENDER_STATISTICS: u32 = 1005u32; -#[repr(C)] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NL_NEIGHBOR_STATE(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct RM_SENDER_STATS { - pub DataBytesSent: u64, - pub TotalBytesSent: u64, - pub NaksReceived: u64, - pub NaksReceivedTooLate: u64, - pub NumOutstandingNaks: u64, - pub NumNaksAfterRData: u64, - pub RepairPacketsSent: u64, - pub BufferSpaceAvailable: u64, - pub TrailingEdgeSeqId: u64, - pub LeadingEdgeSeqId: u64, - pub RateKBitsPerSecOverall: u64, - pub RateKBitsPerSecLast: u64, - pub TotalODataPacketsSent: u64, -} -impl ::core::marker::Copy for RM_SENDER_STATS {} -impl ::core::clone::Clone for RM_SENDER_STATS { +pub const NlnsUnreachable: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlnsIncomplete: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlnsProbe: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlnsDelay: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlnsStale: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(4i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlnsReachable: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(5i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlnsPermanent: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(6i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlnsMaximum: NL_NEIGHBOR_STATE = NL_NEIGHBOR_STATE(7i32); +impl ::core::marker::Copy for NL_NEIGHBOR_STATE {} +impl ::core::clone::Clone for NL_NEIGHBOR_STATE { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for RM_SENDER_STATS { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("RM_SENDER_STATS") - .field("DataBytesSent", &self.DataBytesSent) - .field("TotalBytesSent", &self.TotalBytesSent) - .field("NaksReceived", &self.NaksReceived) - .field("NaksReceivedTooLate", &self.NaksReceivedTooLate) - .field("NumOutstandingNaks", &self.NumOutstandingNaks) - .field("NumNaksAfterRData", &self.NumNaksAfterRData) - .field("RepairPacketsSent", &self.RepairPacketsSent) - .field("BufferSpaceAvailable", &self.BufferSpaceAvailable) - .field("TrailingEdgeSeqId", &self.TrailingEdgeSeqId) - .field("LeadingEdgeSeqId", &self.LeadingEdgeSeqId) - .field("RateKBitsPerSecOverall", &self.RateKBitsPerSecOverall) - .field("RateKBitsPerSecLast", &self.RateKBitsPerSecLast) - .field("TotalODataPacketsSent", &self.TotalODataPacketsSent) - .finish() +impl ::core::default::Default for NL_NEIGHBOR_STATE { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for RM_SENDER_STATS { +unsafe impl ::windows::core::Abi for NL_NEIGHBOR_STATE { type Abi = Self; } -impl ::core::cmp::PartialEq for RM_SENDER_STATS { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for RM_SENDER_STATS {} -impl ::core::default::Default for RM_SENDER_STATS { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for NL_NEIGHBOR_STATE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NL_NEIGHBOR_STATE").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_SENDER_WINDOW_ADVANCE_METHOD: u32 = 1004u32; -#[repr(C)] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NL_NETWORK_CATEGORY(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct RM_SEND_WINDOW { - pub RateKbitsPerSec: u32, - pub WindowSizeInMSecs: u32, - pub WindowSizeInBytes: u32, -} -impl ::core::marker::Copy for RM_SEND_WINDOW {} -impl ::core::clone::Clone for RM_SEND_WINDOW { +pub const NetworkCategoryPublic: NL_NETWORK_CATEGORY = NL_NETWORK_CATEGORY(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NetworkCategoryPrivate: NL_NETWORK_CATEGORY = NL_NETWORK_CATEGORY(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NetworkCategoryDomainAuthenticated: NL_NETWORK_CATEGORY = NL_NETWORK_CATEGORY(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NetworkCategoryUnchanged: NL_NETWORK_CATEGORY = NL_NETWORK_CATEGORY(-1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NetworkCategoryUnknown: NL_NETWORK_CATEGORY = NL_NETWORK_CATEGORY(-1i32); +impl ::core::marker::Copy for NL_NETWORK_CATEGORY {} +impl ::core::clone::Clone for NL_NETWORK_CATEGORY { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for RM_SEND_WINDOW { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("RM_SEND_WINDOW").field("RateKbitsPerSec", &self.RateKbitsPerSec).field("WindowSizeInMSecs", &self.WindowSizeInMSecs).field("WindowSizeInBytes", &self.WindowSizeInBytes).finish() +impl ::core::default::Default for NL_NETWORK_CATEGORY { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for RM_SEND_WINDOW { +unsafe impl ::windows::core::Abi for NL_NETWORK_CATEGORY { type Abi = Self; } -impl ::core::cmp::PartialEq for RM_SEND_WINDOW { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for RM_SEND_WINDOW {} -impl ::core::default::Default for RM_SEND_WINDOW { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for NL_NETWORK_CATEGORY { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NL_NETWORK_CATEGORY").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_SEND_WINDOW_ADV_RATE: u32 = 1010u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NL_NETWORK_CONNECTIVITY_COST_HINT(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_SET_MCAST_TTL: u32 = 1012u32; +pub const NetworkConnectivityCostHintUnknown: NL_NETWORK_CONNECTIVITY_COST_HINT = NL_NETWORK_CONNECTIVITY_COST_HINT(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_SET_MESSAGE_BOUNDARY: u32 = 1002u32; +pub const NetworkConnectivityCostHintUnrestricted: NL_NETWORK_CONNECTIVITY_COST_HINT = NL_NETWORK_CONNECTIVITY_COST_HINT(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_SET_SEND_IF: u32 = 1007u32; +pub const NetworkConnectivityCostHintFixed: NL_NETWORK_CONNECTIVITY_COST_HINT = NL_NETWORK_CONNECTIVITY_COST_HINT(2i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RM_USE_FEC: u32 = 1011u32; +pub const NetworkConnectivityCostHintVariable: NL_NETWORK_CONNECTIVITY_COST_HINT = NL_NETWORK_CONNECTIVITY_COST_HINT(3i32); +impl ::core::marker::Copy for NL_NETWORK_CONNECTIVITY_COST_HINT {} +impl ::core::clone::Clone for NL_NETWORK_CONNECTIVITY_COST_HINT { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for NL_NETWORK_CONNECTIVITY_COST_HINT { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for NL_NETWORK_CONNECTIVITY_COST_HINT { + type Abi = Self; +} +impl ::core::fmt::Debug for NL_NETWORK_CONNECTIVITY_COST_HINT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NL_NETWORK_CONNECTIVITY_COST_HINT").field(&self.0).finish() + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct RSS_SCALABILITY_INFO { - pub RssEnabled: super::super::Foundation::BOOLEAN, +pub struct NL_NETWORK_CONNECTIVITY_HINT { + pub ConnectivityLevel: NL_NETWORK_CONNECTIVITY_LEVEL_HINT, + pub ConnectivityCost: NL_NETWORK_CONNECTIVITY_COST_HINT, + pub ApproachingDataLimit: super::super::Foundation::BOOLEAN, + pub OverDataLimit: super::super::Foundation::BOOLEAN, + pub Roaming: super::super::Foundation::BOOLEAN, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for RSS_SCALABILITY_INFO {} +impl ::core::marker::Copy for NL_NETWORK_CONNECTIVITY_HINT {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for RSS_SCALABILITY_INFO { +impl ::core::clone::Clone for NL_NETWORK_CONNECTIVITY_HINT { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for RSS_SCALABILITY_INFO { +impl ::core::fmt::Debug for NL_NETWORK_CONNECTIVITY_HINT { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("RSS_SCALABILITY_INFO").field("RssEnabled", &self.RssEnabled).finish() + f.debug_struct("NL_NETWORK_CONNECTIVITY_HINT").field("ConnectivityLevel", &self.ConnectivityLevel).field("ConnectivityCost", &self.ConnectivityCost).field("ApproachingDataLimit", &self.ApproachingDataLimit).field("OverDataLimit", &self.OverDataLimit).field("Roaming", &self.Roaming).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for RSS_SCALABILITY_INFO { +unsafe impl ::windows::core::Abi for NL_NETWORK_CONNECTIVITY_HINT { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for RSS_SCALABILITY_INFO { +impl ::core::cmp::PartialEq for NL_NETWORK_CONNECTIVITY_HINT { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for RSS_SCALABILITY_INFO {} +impl ::core::cmp::Eq for NL_NETWORK_CONNECTIVITY_HINT {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for RSS_SCALABILITY_INFO { +impl ::core::default::Default for NL_NETWORK_CONNECTIVITY_HINT { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlEthernetAddressToStringA(addr: &DL_EUI48, s: &mut [u8; 18]) -> ::windows::core::PSTR { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlEthernetAddressToStringA(addr: *const DL_EUI48, s: ::windows::core::PSTR) -> ::windows::core::PSTR; - } - RtlEthernetAddressToStringA(::core::mem::transmute(addr), ::core::mem::transmute(s.as_ptr())) -} +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NL_NETWORK_CONNECTIVITY_LEVEL_HINT(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlEthernetAddressToStringW(addr: &DL_EUI48, s: &mut [u16; 18]) -> ::windows::core::PWSTR { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlEthernetAddressToStringW(addr: *const DL_EUI48, s: ::windows::core::PWSTR) -> ::windows::core::PWSTR; - } - RtlEthernetAddressToStringW(::core::mem::transmute(addr), ::core::mem::transmute(s.as_ptr())) -} +pub const NetworkConnectivityLevelHintUnknown: NL_NETWORK_CONNECTIVITY_LEVEL_HINT = NL_NETWORK_CONNECTIVITY_LEVEL_HINT(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlEthernetStringToAddressA<'a, P0>(s: P0, terminator: &mut ::windows::core::PSTR, addr: &mut DL_EUI48) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlEthernetStringToAddressA(s: ::windows::core::PCSTR, terminator: *mut ::windows::core::PSTR, addr: *mut DL_EUI48) -> i32; - } - RtlEthernetStringToAddressA(s.into(), ::core::mem::transmute(terminator), ::core::mem::transmute(addr)) -} +pub const NetworkConnectivityLevelHintNone: NL_NETWORK_CONNECTIVITY_LEVEL_HINT = NL_NETWORK_CONNECTIVITY_LEVEL_HINT(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlEthernetStringToAddressW<'a, P0>(s: P0, terminator: &mut ::windows::core::PWSTR, addr: &mut DL_EUI48) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlEthernetStringToAddressW(s: ::windows::core::PCWSTR, terminator: *mut ::windows::core::PWSTR, addr: *mut DL_EUI48) -> i32; - } - RtlEthernetStringToAddressW(s.into(), ::core::mem::transmute(terminator), ::core::mem::transmute(addr)) -} +pub const NetworkConnectivityLevelHintLocalAccess: NL_NETWORK_CONNECTIVITY_LEVEL_HINT = NL_NETWORK_CONNECTIVITY_LEVEL_HINT(2i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlIpv4AddressToStringA(addr: &IN_ADDR, s: &mut [u8; 16]) -> ::windows::core::PSTR { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv4AddressToStringA(addr: *const IN_ADDR, s: ::windows::core::PSTR) -> ::windows::core::PSTR; - } - RtlIpv4AddressToStringA(::core::mem::transmute(addr), ::core::mem::transmute(s.as_ptr())) -} +pub const NetworkConnectivityLevelHintInternetAccess: NL_NETWORK_CONNECTIVITY_LEVEL_HINT = NL_NETWORK_CONNECTIVITY_LEVEL_HINT(3i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlIpv4AddressToStringExA(address: &IN_ADDR, port: u16, addressstring: ::windows::core::PSTR, addressstringlength: &mut u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv4AddressToStringExA(address: *const IN_ADDR, port: u16, addressstring: ::windows::core::PSTR, addressstringlength: *mut u32) -> i32; +pub const NetworkConnectivityLevelHintConstrainedInternetAccess: NL_NETWORK_CONNECTIVITY_LEVEL_HINT = NL_NETWORK_CONNECTIVITY_LEVEL_HINT(4i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NetworkConnectivityLevelHintHidden: NL_NETWORK_CONNECTIVITY_LEVEL_HINT = NL_NETWORK_CONNECTIVITY_LEVEL_HINT(5i32); +impl ::core::marker::Copy for NL_NETWORK_CONNECTIVITY_LEVEL_HINT {} +impl ::core::clone::Clone for NL_NETWORK_CONNECTIVITY_LEVEL_HINT { + fn clone(&self) -> Self { + *self } - RtlIpv4AddressToStringExA(::core::mem::transmute(address), port, ::core::mem::transmute(addressstring), ::core::mem::transmute(addressstringlength)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlIpv4AddressToStringExW(address: &IN_ADDR, port: u16, addressstring: ::windows::core::PWSTR, addressstringlength: &mut u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv4AddressToStringExW(address: *const IN_ADDR, port: u16, addressstring: ::windows::core::PWSTR, addressstringlength: *mut u32) -> i32; +impl ::core::default::Default for NL_NETWORK_CONNECTIVITY_LEVEL_HINT { + fn default() -> Self { + Self(0) } - RtlIpv4AddressToStringExW(::core::mem::transmute(address), port, ::core::mem::transmute(addressstring), ::core::mem::transmute(addressstringlength)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlIpv4AddressToStringW(addr: &IN_ADDR, s: &mut [u16; 16]) -> ::windows::core::PWSTR { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv4AddressToStringW(addr: *const IN_ADDR, s: ::windows::core::PWSTR) -> ::windows::core::PWSTR; +unsafe impl ::windows::core::Abi for NL_NETWORK_CONNECTIVITY_LEVEL_HINT { + type Abi = Self; +} +impl ::core::fmt::Debug for NL_NETWORK_CONNECTIVITY_LEVEL_HINT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NL_NETWORK_CONNECTIVITY_LEVEL_HINT").field(&self.0).finish() } - RtlIpv4AddressToStringW(::core::mem::transmute(addr), ::core::mem::transmute(s.as_ptr())) } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn RtlIpv4StringToAddressA<'a, P0, P1>(s: P0, strict: P1, terminator: &mut ::windows::core::PSTR, addr: &mut IN_ADDR) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCSTR>, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv4StringToAddressA(s: ::windows::core::PCSTR, strict: super::super::Foundation::BOOLEAN, terminator: *mut ::windows::core::PSTR, addr: *mut IN_ADDR) -> i32; - } - RtlIpv4StringToAddressA(s.into(), strict.into(), ::core::mem::transmute(terminator), ::core::mem::transmute(addr)) +pub struct NL_PATH_BANDWIDTH_ROD { + pub Bandwidth: u64, + pub Instability: u64, + pub BandwidthPeaked: super::super::Foundation::BOOLEAN, } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn RtlIpv4StringToAddressExA<'a, P0, P1>(addressstring: P0, strict: P1, address: &mut IN_ADDR, port: &mut u16) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCSTR>, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv4StringToAddressExA(addressstring: ::windows::core::PCSTR, strict: super::super::Foundation::BOOLEAN, address: *mut IN_ADDR, port: *mut u16) -> i32; +impl ::core::marker::Copy for NL_PATH_BANDWIDTH_ROD {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for NL_PATH_BANDWIDTH_ROD { + fn clone(&self) -> Self { + *self } - RtlIpv4StringToAddressExA(addressstring.into(), strict.into(), ::core::mem::transmute(address), ::core::mem::transmute(port)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn RtlIpv4StringToAddressExW<'a, P0, P1>(addressstring: P0, strict: P1, address: &mut IN_ADDR, port: &mut u16) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv4StringToAddressExW(addressstring: ::windows::core::PCWSTR, strict: super::super::Foundation::BOOLEAN, address: *mut IN_ADDR, port: *mut u16) -> i32; +impl ::core::fmt::Debug for NL_PATH_BANDWIDTH_ROD { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("NL_PATH_BANDWIDTH_ROD").field("Bandwidth", &self.Bandwidth).field("Instability", &self.Instability).field("BandwidthPeaked", &self.BandwidthPeaked).finish() } - RtlIpv4StringToAddressExW(addressstring.into(), strict.into(), ::core::mem::transmute(address), ::core::mem::transmute(port)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn RtlIpv4StringToAddressW<'a, P0, P1>(s: P0, strict: P1, terminator: &mut ::windows::core::PWSTR, addr: &mut IN_ADDR) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv4StringToAddressW(s: ::windows::core::PCWSTR, strict: super::super::Foundation::BOOLEAN, terminator: *mut ::windows::core::PWSTR, addr: *mut IN_ADDR) -> i32; - } - RtlIpv4StringToAddressW(s.into(), strict.into(), ::core::mem::transmute(terminator), ::core::mem::transmute(addr)) +unsafe impl ::windows::core::Abi for NL_PATH_BANDWIDTH_ROD { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlIpv6AddressToStringA(addr: &IN6_ADDR, s: &mut [u8; 46]) -> ::windows::core::PSTR { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv6AddressToStringA(addr: *const IN6_ADDR, s: ::windows::core::PSTR) -> ::windows::core::PSTR; +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for NL_PATH_BANDWIDTH_ROD { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - RtlIpv6AddressToStringA(::core::mem::transmute(addr), ::core::mem::transmute(s.as_ptr())) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlIpv6AddressToStringExA(address: &IN6_ADDR, scopeid: u32, port: u16, addressstring: ::windows::core::PSTR, addressstringlength: &mut u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv6AddressToStringExA(address: *const IN6_ADDR, scopeid: u32, port: u16, addressstring: ::windows::core::PSTR, addressstringlength: *mut u32) -> i32; +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for NL_PATH_BANDWIDTH_ROD {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for NL_PATH_BANDWIDTH_ROD { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - RtlIpv6AddressToStringExA(::core::mem::transmute(address), scopeid, port, ::core::mem::transmute(addressstring), ::core::mem::transmute(addressstringlength)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlIpv6AddressToStringExW(address: &IN6_ADDR, scopeid: u32, port: u16, addressstring: ::windows::core::PWSTR, addressstringlength: &mut u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv6AddressToStringExW(address: *const IN6_ADDR, scopeid: u32, port: u16, addressstring: ::windows::core::PWSTR, addressstringlength: *mut u32) -> i32; - } - RtlIpv6AddressToStringExW(::core::mem::transmute(address), scopeid, port, ::core::mem::transmute(addressstring), ::core::mem::transmute(addressstringlength)) -} +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NL_PREFIX_ORIGIN(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlIpv6AddressToStringW(addr: &IN6_ADDR, s: &mut [u16; 46]) -> ::windows::core::PWSTR { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv6AddressToStringW(addr: *const IN6_ADDR, s: ::windows::core::PWSTR) -> ::windows::core::PWSTR; - } - RtlIpv6AddressToStringW(::core::mem::transmute(addr), ::core::mem::transmute(s.as_ptr())) -} +pub const IpPrefixOriginOther: NL_PREFIX_ORIGIN = NL_PREFIX_ORIGIN(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlIpv6StringToAddressA<'a, P0>(s: P0, terminator: &mut ::windows::core::PSTR, addr: &mut IN6_ADDR) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv6StringToAddressA(s: ::windows::core::PCSTR, terminator: *mut ::windows::core::PSTR, addr: *mut IN6_ADDR) -> i32; - } - RtlIpv6StringToAddressA(s.into(), ::core::mem::transmute(terminator), ::core::mem::transmute(addr)) -} +pub const IpPrefixOriginManual: NL_PREFIX_ORIGIN = NL_PREFIX_ORIGIN(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlIpv6StringToAddressExA<'a, P0>(addressstring: P0, address: &mut IN6_ADDR, scopeid: &mut u32, port: &mut u16) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv6StringToAddressExA(addressstring: ::windows::core::PCSTR, address: *mut IN6_ADDR, scopeid: *mut u32, port: *mut u16) -> i32; +pub const IpPrefixOriginWellKnown: NL_PREFIX_ORIGIN = NL_PREFIX_ORIGIN(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IpPrefixOriginDhcp: NL_PREFIX_ORIGIN = NL_PREFIX_ORIGIN(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IpPrefixOriginRouterAdvertisement: NL_PREFIX_ORIGIN = NL_PREFIX_ORIGIN(4i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IpPrefixOriginUnchanged: NL_PREFIX_ORIGIN = NL_PREFIX_ORIGIN(16i32); +impl ::core::marker::Copy for NL_PREFIX_ORIGIN {} +impl ::core::clone::Clone for NL_PREFIX_ORIGIN { + fn clone(&self) -> Self { + *self } - RtlIpv6StringToAddressExA(addressstring.into(), ::core::mem::transmute(address), ::core::mem::transmute(scopeid), ::core::mem::transmute(port)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlIpv6StringToAddressExW<'a, P0>(addressstring: P0, address: &mut IN6_ADDR, scopeid: &mut u32, port: &mut u16) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv6StringToAddressExW(addressstring: ::windows::core::PCWSTR, address: *mut IN6_ADDR, scopeid: *mut u32, port: *mut u16) -> i32; +impl ::core::default::Default for NL_PREFIX_ORIGIN { + fn default() -> Self { + Self(0) } - RtlIpv6StringToAddressExW(addressstring.into(), ::core::mem::transmute(address), ::core::mem::transmute(scopeid), ::core::mem::transmute(port)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn RtlIpv6StringToAddressW<'a, P0>(s: P0, terminator: &mut ::windows::core::PWSTR, addr: &mut IN6_ADDR) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RtlIpv6StringToAddressW(s: ::windows::core::PCWSTR, terminator: *mut ::windows::core::PWSTR, addr: *mut IN6_ADDR) -> i32; +unsafe impl ::windows::core::Abi for NL_PREFIX_ORIGIN { + type Abi = Self; +} +impl ::core::fmt::Debug for NL_PREFIX_ORIGIN { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NL_PREFIX_ORIGIN").field(&self.0).finish() } - RtlIpv6StringToAddressW(s.into(), ::core::mem::transmute(terminator), ::core::mem::transmute(addr)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SAP_FIELD_ABSENT: u32 = 4294967294u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NL_ROUTER_DISCOVERY_BEHAVIOR(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SAP_FIELD_ANY: u32 = 4294967295u32; +pub const RouterDiscoveryDisabled: NL_ROUTER_DISCOVERY_BEHAVIOR = NL_ROUTER_DISCOVERY_BEHAVIOR(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SAP_FIELD_ANY_AESA_REST: u32 = 4294967291u32; +pub const RouterDiscoveryEnabled: NL_ROUTER_DISCOVERY_BEHAVIOR = NL_ROUTER_DISCOVERY_BEHAVIOR(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SAP_FIELD_ANY_AESA_SEL: u32 = 4294967290u32; -#[repr(C)] +pub const RouterDiscoveryDhcp: NL_ROUTER_DISCOVERY_BEHAVIOR = NL_ROUTER_DISCOVERY_BEHAVIOR(2i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SCOPE_ID { - pub Anonymous: SCOPE_ID_0, -} -impl ::core::marker::Copy for SCOPE_ID {} -impl ::core::clone::Clone for SCOPE_ID { +pub const RouterDiscoveryUnchanged: NL_ROUTER_DISCOVERY_BEHAVIOR = NL_ROUTER_DISCOVERY_BEHAVIOR(-1i32); +impl ::core::marker::Copy for NL_ROUTER_DISCOVERY_BEHAVIOR {} +impl ::core::clone::Clone for NL_ROUTER_DISCOVERY_BEHAVIOR { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for SCOPE_ID { +impl ::core::default::Default for NL_ROUTER_DISCOVERY_BEHAVIOR { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for NL_ROUTER_DISCOVERY_BEHAVIOR { type Abi = Self; } -impl ::core::cmp::PartialEq for SCOPE_ID { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::fmt::Debug for NL_ROUTER_DISCOVERY_BEHAVIOR { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NL_ROUTER_DISCOVERY_BEHAVIOR").field(&self.0).finish() } } -impl ::core::cmp::Eq for SCOPE_ID {} -impl ::core::default::Default for SCOPE_ID { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union SCOPE_ID_0 { - pub Anonymous: SCOPE_ID_0_0, - pub Value: u32, -} -impl ::core::marker::Copy for SCOPE_ID_0 {} -impl ::core::clone::Clone for SCOPE_ID_0 { - fn clone(&self) -> Self { - *self - } -} -unsafe impl ::windows::core::Abi for SCOPE_ID_0 { - type Abi = Self; -} -impl ::core::cmp::PartialEq for SCOPE_ID_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for SCOPE_ID_0 {} -impl ::core::default::Default for SCOPE_ID_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NL_ROUTE_ORIGIN(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SCOPE_ID_0_0 { - pub _bitfield: u32, -} -impl ::core::marker::Copy for SCOPE_ID_0_0 {} -impl ::core::clone::Clone for SCOPE_ID_0_0 { +pub const NlroManual: NL_ROUTE_ORIGIN = NL_ROUTE_ORIGIN(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlroWellKnown: NL_ROUTE_ORIGIN = NL_ROUTE_ORIGIN(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlroDHCP: NL_ROUTE_ORIGIN = NL_ROUTE_ORIGIN(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NlroRouterAdvertisement: NL_ROUTE_ORIGIN = NL_ROUTE_ORIGIN(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const Nlro6to4: NL_ROUTE_ORIGIN = NL_ROUTE_ORIGIN(4i32); +impl ::core::marker::Copy for NL_ROUTE_ORIGIN {} +impl ::core::clone::Clone for NL_ROUTE_ORIGIN { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for SCOPE_ID_0_0 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SCOPE_ID_0_0").field("_bitfield", &self._bitfield).finish() +impl ::core::default::Default for NL_ROUTE_ORIGIN { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for SCOPE_ID_0_0 { +unsafe impl ::windows::core::Abi for NL_ROUTE_ORIGIN { type Abi = Self; } -impl ::core::cmp::PartialEq for SCOPE_ID_0_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for SCOPE_ID_0_0 {} -impl ::core::default::Default for SCOPE_ID_0_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for NL_ROUTE_ORIGIN { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NL_ROUTE_ORIGIN").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct SCOPE_LEVEL(pub i32); +pub struct NL_ROUTE_PROTOCOL(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ScopeLevelInterface: SCOPE_LEVEL = SCOPE_LEVEL(1i32); +pub const RouteProtocolOther: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ScopeLevelLink: SCOPE_LEVEL = SCOPE_LEVEL(2i32); +pub const RouteProtocolLocal: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(2i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ScopeLevelSubnet: SCOPE_LEVEL = SCOPE_LEVEL(3i32); +pub const RouteProtocolNetMgmt: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(3i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ScopeLevelAdmin: SCOPE_LEVEL = SCOPE_LEVEL(4i32); +pub const RouteProtocolIcmp: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(4i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ScopeLevelSite: SCOPE_LEVEL = SCOPE_LEVEL(5i32); +pub const RouteProtocolEgp: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(5i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ScopeLevelOrganization: SCOPE_LEVEL = SCOPE_LEVEL(8i32); +pub const RouteProtocolGgp: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(6i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ScopeLevelGlobal: SCOPE_LEVEL = SCOPE_LEVEL(14i32); +pub const RouteProtocolHello: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(7i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ScopeLevelCount: SCOPE_LEVEL = SCOPE_LEVEL(16i32); -impl ::core::marker::Copy for SCOPE_LEVEL {} -impl ::core::clone::Clone for SCOPE_LEVEL { +pub const RouteProtocolRip: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(8i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RouteProtocolIsIs: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(9i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RouteProtocolEsIs: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RouteProtocolCisco: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(11i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RouteProtocolBbn: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(12i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RouteProtocolOspf: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(13i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RouteProtocolBgp: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(14i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RouteProtocolIdpr: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(15i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RouteProtocolEigrp: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(16i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RouteProtocolDvmrp: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(17i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RouteProtocolRpl: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(18i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RouteProtocolDhcp: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(19i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_OTHER: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_OTHER: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_LOCAL: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_LOCAL: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_NETMGMT: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_NETMGMT: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_ICMP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(4i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_ICMP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(4i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_EGP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(5i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_EGP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(5i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_GGP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(6i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_GGP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(6i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_HELLO: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(7i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_HELLO: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(7i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_RIP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(8i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_RIP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(8i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_IS_IS: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(9i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_IS_IS: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(9i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_ES_IS: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_ES_IS: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_CISCO: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(11i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_CISCO: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(11i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_BBN: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(12i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_BBN: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(12i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_OSPF: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(13i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_OSPF: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(13i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_BGP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(14i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_BGP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(14i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_IDPR: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(15i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_IDPR: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(15i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_EIGRP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(16i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_EIGRP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(16i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_DVMRP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(17i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_DVMRP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(17i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_RPL: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(18i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_RPL: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(18i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_DHCP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(19i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_DHCP: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(19i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_NT_AUTOSTATIC: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10002i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_NT_AUTOSTATIC: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10002i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_NT_STATIC: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10006i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_NT_STATIC: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10006i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const MIB_IPPROTO_NT_STATIC_NON_DOD: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10007i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const PROTO_IP_NT_STATIC_NON_DOD: NL_ROUTE_PROTOCOL = NL_ROUTE_PROTOCOL(10007i32); +impl ::core::marker::Copy for NL_ROUTE_PROTOCOL {} +impl ::core::clone::Clone for NL_ROUTE_PROTOCOL { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for SCOPE_LEVEL { +impl ::core::default::Default for NL_ROUTE_PROTOCOL { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for SCOPE_LEVEL { +unsafe impl ::windows::core::Abi for NL_ROUTE_PROTOCOL { type Abi = Self; } -impl ::core::fmt::Debug for SCOPE_LEVEL { +impl ::core::fmt::Debug for NL_ROUTE_PROTOCOL { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("SCOPE_LEVEL").field(&self.0).finish() + f.debug_tuple("NL_ROUTE_PROTOCOL").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SD_BOTH: u32 = 2u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NL_SUFFIX_ORIGIN(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SD_RECEIVE: u32 = 0u32; +pub const NlsoOther: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SD_SEND: u32 = 1u32; +pub const NlsoManual: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SECURITY_PROTOCOL_NONE: u32 = 0u32; +pub const NlsoWellKnown: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(2i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SENDER_DEFAULT_LATE_JOINER_PERCENTAGE: u32 = 0u32; +pub const NlsoDhcp: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(3i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SENDER_DEFAULT_RATE_KBITS_PER_SEC: u32 = 56u32; +pub const NlsoLinkLayerAddress: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(4i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SENDER_DEFAULT_WINDOW_ADV_PERCENTAGE: u32 = 15u32; +pub const NlsoRandom: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(5i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SENDER_MAX_LATE_JOINER_PERCENTAGE: u32 = 75u32; +pub const IpSuffixOriginOther: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct SEND_RECV_FLAGS(pub i32); +pub const IpSuffixOriginManual: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MSG_OOB: SEND_RECV_FLAGS = SEND_RECV_FLAGS(1i32); +pub const IpSuffixOriginWellKnown: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(2i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MSG_PEEK: SEND_RECV_FLAGS = SEND_RECV_FLAGS(2i32); +pub const IpSuffixOriginDhcp: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(3i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MSG_DONTROUTE: SEND_RECV_FLAGS = SEND_RECV_FLAGS(4i32); +pub const IpSuffixOriginLinkLayerAddress: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(4i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MSG_WAITALL: SEND_RECV_FLAGS = SEND_RECV_FLAGS(8i32); +pub const IpSuffixOriginRandom: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(5i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const MSG_PUSH_IMMEDIATE: SEND_RECV_FLAGS = SEND_RECV_FLAGS(32i32); -impl ::core::marker::Copy for SEND_RECV_FLAGS {} -impl ::core::clone::Clone for SEND_RECV_FLAGS { +pub const IpSuffixOriginUnchanged: NL_SUFFIX_ORIGIN = NL_SUFFIX_ORIGIN(16i32); +impl ::core::marker::Copy for NL_SUFFIX_ORIGIN {} +impl ::core::clone::Clone for NL_SUFFIX_ORIGIN { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for SEND_RECV_FLAGS { +impl ::core::default::Default for NL_SUFFIX_ORIGIN { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for SEND_RECV_FLAGS { +unsafe impl ::windows::core::Abi for NL_SUFFIX_ORIGIN { type Abi = Self; } -impl ::core::fmt::Debug for SEND_RECV_FLAGS { +impl ::core::fmt::Debug for NL_SUFFIX_ORIGIN { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("SEND_RECV_FLAGS").field(&self.0).finish() - } -} -impl ::core::ops::BitOr for SEND_RECV_FLAGS { - type Output = Self; - fn bitor(self, other: Self) -> Self { - Self(self.0 | other.0) - } -} -impl ::core::ops::BitAnd for SEND_RECV_FLAGS { - type Output = Self; - fn bitand(self, other: Self) -> Self { - Self(self.0 & other.0) - } -} -impl ::core::ops::BitOrAssign for SEND_RECV_FLAGS { - fn bitor_assign(&mut self, other: Self) { - self.0.bitor_assign(other.0) - } -} -impl ::core::ops::BitAndAssign for SEND_RECV_FLAGS { - fn bitand_assign(&mut self, other: Self) { - self.0.bitand_assign(other.0) - } -} -impl ::core::ops::Not for SEND_RECV_FLAGS { - type Output = Self; - fn not(self) -> Self { - Self(self.0.not()) + f.debug_tuple("NL_SUFFIX_ORIGIN").field(&self.0).finish() } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SERVICE_ADDRESS { - pub dwAddressType: u32, - pub dwAddressFlags: u32, - pub dwAddressLength: u32, - pub dwPrincipalLength: u32, - pub lpAddress: *mut u8, - pub lpPrincipal: *mut u8, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct NPI_MODULEID { + pub Length: u16, + pub Type: NPI_MODULEID_TYPE, + pub Anonymous: NPI_MODULEID_0, } -impl ::core::marker::Copy for SERVICE_ADDRESS {} -impl ::core::clone::Clone for SERVICE_ADDRESS { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for NPI_MODULEID {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for NPI_MODULEID { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for SERVICE_ADDRESS { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SERVICE_ADDRESS").field("dwAddressType", &self.dwAddressType).field("dwAddressFlags", &self.dwAddressFlags).field("dwAddressLength", &self.dwAddressLength).field("dwPrincipalLength", &self.dwPrincipalLength).field("lpAddress", &self.lpAddress).field("lpPrincipal", &self.lpPrincipal).finish() - } -} -unsafe impl ::windows::core::Abi for SERVICE_ADDRESS { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for NPI_MODULEID { type Abi = Self; } -impl ::core::cmp::PartialEq for SERVICE_ADDRESS { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for NPI_MODULEID { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for SERVICE_ADDRESS {} -impl ::core::default::Default for SERVICE_ADDRESS { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for NPI_MODULEID {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for NPI_MODULEID { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SERVICE_ADDRESSES { - pub dwAddressCount: u32, - pub Addresses: [SERVICE_ADDRESS; 1], +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub union NPI_MODULEID_0 { + pub Guid: ::windows::core::GUID, + pub IfLuid: super::super::Foundation::LUID, } -impl ::core::marker::Copy for SERVICE_ADDRESSES {} -impl ::core::clone::Clone for SERVICE_ADDRESSES { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for NPI_MODULEID_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for NPI_MODULEID_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for SERVICE_ADDRESSES { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SERVICE_ADDRESSES").field("dwAddressCount", &self.dwAddressCount).field("Addresses", &self.Addresses).finish() - } -} -unsafe impl ::windows::core::Abi for SERVICE_ADDRESSES { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for NPI_MODULEID_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for SERVICE_ADDRESSES { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for NPI_MODULEID_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for SERVICE_ADDRESSES {} -impl ::core::default::Default for SERVICE_ADDRESSES { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for NPI_MODULEID_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for NPI_MODULEID_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_ADDRESS_FLAG_RPC_CN: u32 = 1u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NPI_MODULEID_TYPE(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_ADDRESS_FLAG_RPC_DG: u32 = 2u32; +pub const MIT_GUID: NPI_MODULEID_TYPE = NPI_MODULEID_TYPE(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_ADDRESS_FLAG_RPC_NB: u32 = 4u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct SERVICE_ASYNC_INFO { - pub lpServiceCallbackProc: LPSERVICE_CALLBACK_PROC, - pub lParam: super::super::Foundation::LPARAM, - pub hAsyncTaskHandle: super::super::Foundation::HANDLE, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for SERVICE_ASYNC_INFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for SERVICE_ASYNC_INFO { +pub const MIT_IF_LUID: NPI_MODULEID_TYPE = NPI_MODULEID_TYPE(2i32); +impl ::core::marker::Copy for NPI_MODULEID_TYPE {} +impl ::core::clone::Clone for NPI_MODULEID_TYPE { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for SERVICE_ASYNC_INFO { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SERVICE_ASYNC_INFO").field("lpServiceCallbackProc", &self.lpServiceCallbackProc.map(|f| f as usize)).field("lParam", &self.lParam).field("hAsyncTaskHandle", &self.hAsyncTaskHandle).finish() +impl ::core::default::Default for NPI_MODULEID_TYPE { + fn default() -> Self { + Self(0) } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for SERVICE_ASYNC_INFO { +unsafe impl ::windows::core::Abi for NPI_MODULEID_TYPE { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for SERVICE_ASYNC_INFO { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for SERVICE_ASYNC_INFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for SERVICE_ASYNC_INFO { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for NPI_MODULEID_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NPI_MODULEID_TYPE").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_FLAG_DEFER: u32 = 1u32; +pub const NSPROTO_IPX: u32 = 1000u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_FLAG_HARD: u32 = 2u32; +pub const NSPROTO_SPX: u32 = 1256u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NSPROTO_SPXII: u32 = 1257u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Com\"`*"] -#[cfg(feature = "Win32_System_Com")] -pub struct SERVICE_INFOA { - pub lpServiceType: *mut ::windows::core::GUID, - pub lpServiceName: ::windows::core::PSTR, - pub lpComment: ::windows::core::PSTR, - pub lpLocale: ::windows::core::PSTR, - pub dwDisplayHint: RESOURCE_DISPLAY_TYPE, - pub dwVersion: u32, - pub dwTime: u32, - pub lpMachineName: ::windows::core::PSTR, - pub lpServiceAddress: *mut SERVICE_ADDRESSES, - pub ServiceSpecificInfo: super::super::System::Com::BLOB, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +pub struct NSPV2_ROUTINE { + pub cbSize: u32, + pub dwMajorVersion: u32, + pub dwMinorVersion: u32, + pub NSPv2Startup: LPNSPV2STARTUP, + pub NSPv2Cleanup: LPNSPV2CLEANUP, + pub NSPv2LookupServiceBegin: LPNSPV2LOOKUPSERVICEBEGIN, + pub NSPv2LookupServiceNextEx: LPNSPV2LOOKUPSERVICENEXTEX, + pub NSPv2LookupServiceEnd: LPNSPV2LOOKUPSERVICEEND, + pub NSPv2SetServiceEx: LPNSPV2SETSERVICEEX, + pub NSPv2ClientSessionRundown: LPNSPV2CLIENTSESSIONRUNDOWN, } -#[cfg(feature = "Win32_System_Com")] -impl ::core::marker::Copy for SERVICE_INFOA {} -#[cfg(feature = "Win32_System_Com")] -impl ::core::clone::Clone for SERVICE_INFOA { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::marker::Copy for NSPV2_ROUTINE {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::clone::Clone for NSPV2_ROUTINE { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_System_Com")] -impl ::core::fmt::Debug for SERVICE_INFOA { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::fmt::Debug for NSPV2_ROUTINE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SERVICE_INFOA").field("lpServiceType", &self.lpServiceType).field("lpServiceName", &self.lpServiceName).field("lpComment", &self.lpComment).field("lpLocale", &self.lpLocale).field("dwDisplayHint", &self.dwDisplayHint).field("dwVersion", &self.dwVersion).field("dwTime", &self.dwTime).field("lpMachineName", &self.lpMachineName).field("lpServiceAddress", &self.lpServiceAddress).field("ServiceSpecificInfo", &self.ServiceSpecificInfo).finish() + f.debug_struct("NSPV2_ROUTINE") + .field("cbSize", &self.cbSize) + .field("dwMajorVersion", &self.dwMajorVersion) + .field("dwMinorVersion", &self.dwMinorVersion) + .field("NSPv2Startup", &self.NSPv2Startup.map(|f| f as usize)) + .field("NSPv2Cleanup", &self.NSPv2Cleanup.map(|f| f as usize)) + .field("NSPv2LookupServiceBegin", &self.NSPv2LookupServiceBegin.map(|f| f as usize)) + .field("NSPv2LookupServiceNextEx", &self.NSPv2LookupServiceNextEx.map(|f| f as usize)) + .field("NSPv2LookupServiceEnd", &self.NSPv2LookupServiceEnd.map(|f| f as usize)) + .field("NSPv2SetServiceEx", &self.NSPv2SetServiceEx.map(|f| f as usize)) + .field("NSPv2ClientSessionRundown", &self.NSPv2ClientSessionRundown.map(|f| f as usize)) + .finish() } } -#[cfg(feature = "Win32_System_Com")] -unsafe impl ::windows::core::Abi for SERVICE_INFOA { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +unsafe impl ::windows::core::Abi for NSPV2_ROUTINE { type Abi = Self; } -#[cfg(feature = "Win32_System_Com")] -impl ::core::cmp::PartialEq for SERVICE_INFOA { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::cmp::PartialEq for NSPV2_ROUTINE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_System_Com")] -impl ::core::cmp::Eq for SERVICE_INFOA {} -#[cfg(feature = "Win32_System_Com")] -impl ::core::default::Default for SERVICE_INFOA { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::cmp::Eq for NSPV2_ROUTINE {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::default::Default for NSPV2_ROUTINE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Com\"`*"] -#[cfg(feature = "Win32_System_Com")] -pub struct SERVICE_INFOW { - pub lpServiceType: *mut ::windows::core::GUID, - pub lpServiceName: ::windows::core::PWSTR, - pub lpComment: ::windows::core::PWSTR, - pub lpLocale: ::windows::core::PWSTR, - pub dwDisplayHint: RESOURCE_DISPLAY_TYPE, - pub dwVersion: u32, - pub dwTime: u32, - pub lpMachineName: ::windows::core::PWSTR, - pub lpServiceAddress: *mut SERVICE_ADDRESSES, - pub ServiceSpecificInfo: super::super::System::Com::BLOB, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] +pub struct NSP_ROUTINE { + pub cbSize: u32, + pub dwMajorVersion: u32, + pub dwMinorVersion: u32, + pub NSPCleanup: LPNSPCLEANUP, + pub NSPLookupServiceBegin: LPNSPLOOKUPSERVICEBEGIN, + pub NSPLookupServiceNext: LPNSPLOOKUPSERVICENEXT, + pub NSPLookupServiceEnd: LPNSPLOOKUPSERVICEEND, + pub NSPSetService: LPNSPSETSERVICE, + pub NSPInstallServiceClass: LPNSPINSTALLSERVICECLASS, + pub NSPRemoveServiceClass: LPNSPREMOVESERVICECLASS, + pub NSPGetServiceClassInfo: LPNSPGETSERVICECLASSINFO, + pub NSPIoctl: LPNSPIOCTL, } -#[cfg(feature = "Win32_System_Com")] -impl ::core::marker::Copy for SERVICE_INFOW {} -#[cfg(feature = "Win32_System_Com")] -impl ::core::clone::Clone for SERVICE_INFOW { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] +impl ::core::marker::Copy for NSP_ROUTINE {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] +impl ::core::clone::Clone for NSP_ROUTINE { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_System_Com")] -impl ::core::fmt::Debug for SERVICE_INFOW { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] +impl ::core::fmt::Debug for NSP_ROUTINE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SERVICE_INFOW").field("lpServiceType", &self.lpServiceType).field("lpServiceName", &self.lpServiceName).field("lpComment", &self.lpComment).field("lpLocale", &self.lpLocale).field("dwDisplayHint", &self.dwDisplayHint).field("dwVersion", &self.dwVersion).field("dwTime", &self.dwTime).field("lpMachineName", &self.lpMachineName).field("lpServiceAddress", &self.lpServiceAddress).field("ServiceSpecificInfo", &self.ServiceSpecificInfo).finish() + f.debug_struct("NSP_ROUTINE") + .field("cbSize", &self.cbSize) + .field("dwMajorVersion", &self.dwMajorVersion) + .field("dwMinorVersion", &self.dwMinorVersion) + .field("NSPCleanup", &self.NSPCleanup.map(|f| f as usize)) + .field("NSPLookupServiceBegin", &self.NSPLookupServiceBegin.map(|f| f as usize)) + .field("NSPLookupServiceNext", &self.NSPLookupServiceNext.map(|f| f as usize)) + .field("NSPLookupServiceEnd", &self.NSPLookupServiceEnd.map(|f| f as usize)) + .field("NSPSetService", &self.NSPSetService.map(|f| f as usize)) + .field("NSPInstallServiceClass", &self.NSPInstallServiceClass.map(|f| f as usize)) + .field("NSPRemoveServiceClass", &self.NSPRemoveServiceClass.map(|f| f as usize)) + .field("NSPGetServiceClassInfo", &self.NSPGetServiceClassInfo.map(|f| f as usize)) + .field("NSPIoctl", &self.NSPIoctl.map(|f| f as usize)) + .finish() } } -#[cfg(feature = "Win32_System_Com")] -unsafe impl ::windows::core::Abi for SERVICE_INFOW { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] +unsafe impl ::windows::core::Abi for NSP_ROUTINE { type Abi = Self; } -#[cfg(feature = "Win32_System_Com")] -impl ::core::cmp::PartialEq for SERVICE_INFOW { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] +impl ::core::cmp::PartialEq for NSP_ROUTINE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_System_Com")] -impl ::core::cmp::Eq for SERVICE_INFOW {} -#[cfg(feature = "Win32_System_Com")] -impl ::core::default::Default for SERVICE_INFOW { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] +impl ::core::cmp::Eq for NSP_ROUTINE {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] +impl ::core::default::Default for NSP_ROUTINE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_LOCAL: u32 = 4u32; +pub const NSTYPE_DYNAMIC: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_MULTIPLE: u32 = 1u32; +pub const NSTYPE_ENUMERABLE: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_RESOURCE: u32 = 1u32; +pub const NSTYPE_HIERARCHICAL: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_SERVICE: u32 = 2u32; -#[repr(C)] +pub const NSTYPE_WORKGROUP: u32 = 8u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SERVICE_TYPE_INFO { - pub dwTypeNameOffset: u32, - pub dwValueCount: u32, - pub Values: [SERVICE_TYPE_VALUE; 1], -} -impl ::core::marker::Copy for SERVICE_TYPE_INFO {} -impl ::core::clone::Clone for SERVICE_TYPE_INFO { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for SERVICE_TYPE_INFO { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SERVICE_TYPE_INFO").field("dwTypeNameOffset", &self.dwTypeNameOffset).field("dwValueCount", &self.dwValueCount).field("Values", &self.Values).finish() - } -} -unsafe impl ::windows::core::Abi for SERVICE_TYPE_INFO { - type Abi = Self; -} -impl ::core::cmp::PartialEq for SERVICE_TYPE_INFO { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for SERVICE_TYPE_INFO {} -impl ::core::default::Default for SERVICE_TYPE_INFO { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} +pub const NS_ALL: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_DEFAULT: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_DHCP: u32 = 6u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_DNS: u32 = 12u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_EMAIL: u32 = 37u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SERVICE_TYPE_INFO_ABSA { - pub lpTypeName: ::windows::core::PSTR, - pub dwValueCount: u32, - pub Values: [SERVICE_TYPE_VALUE_ABSA; 1], +pub struct NS_INFOA { + pub dwNameSpace: u32, + pub dwNameSpaceFlags: u32, + pub lpNameSpace: ::windows::core::PSTR, } -impl ::core::marker::Copy for SERVICE_TYPE_INFO_ABSA {} -impl ::core::clone::Clone for SERVICE_TYPE_INFO_ABSA { +impl ::core::marker::Copy for NS_INFOA {} +impl ::core::clone::Clone for NS_INFOA { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for SERVICE_TYPE_INFO_ABSA { +impl ::core::fmt::Debug for NS_INFOA { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SERVICE_TYPE_INFO_ABSA").field("lpTypeName", &self.lpTypeName).field("dwValueCount", &self.dwValueCount).field("Values", &self.Values).finish() + f.debug_struct("NS_INFOA").field("dwNameSpace", &self.dwNameSpace).field("dwNameSpaceFlags", &self.dwNameSpaceFlags).field("lpNameSpace", &self.lpNameSpace).finish() } } -unsafe impl ::windows::core::Abi for SERVICE_TYPE_INFO_ABSA { +unsafe impl ::windows::core::Abi for NS_INFOA { type Abi = Self; } -impl ::core::cmp::PartialEq for SERVICE_TYPE_INFO_ABSA { +impl ::core::cmp::PartialEq for NS_INFOA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for SERVICE_TYPE_INFO_ABSA {} -impl ::core::default::Default for SERVICE_TYPE_INFO_ABSA { +impl ::core::cmp::Eq for NS_INFOA {} +impl ::core::default::Default for NS_INFOA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SERVICE_TYPE_INFO_ABSW { - pub lpTypeName: ::windows::core::PWSTR, - pub dwValueCount: u32, - pub Values: [SERVICE_TYPE_VALUE_ABSW; 1], +pub struct NS_INFOW { + pub dwNameSpace: u32, + pub dwNameSpaceFlags: u32, + pub lpNameSpace: ::windows::core::PWSTR, } -impl ::core::marker::Copy for SERVICE_TYPE_INFO_ABSW {} -impl ::core::clone::Clone for SERVICE_TYPE_INFO_ABSW { +impl ::core::marker::Copy for NS_INFOW {} +impl ::core::clone::Clone for NS_INFOW { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for SERVICE_TYPE_INFO_ABSW { +impl ::core::fmt::Debug for NS_INFOW { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SERVICE_TYPE_INFO_ABSW").field("lpTypeName", &self.lpTypeName).field("dwValueCount", &self.dwValueCount).field("Values", &self.Values).finish() + f.debug_struct("NS_INFOW").field("dwNameSpace", &self.dwNameSpace).field("dwNameSpaceFlags", &self.dwNameSpaceFlags).field("lpNameSpace", &self.lpNameSpace).finish() } } -unsafe impl ::windows::core::Abi for SERVICE_TYPE_INFO_ABSW { +unsafe impl ::windows::core::Abi for NS_INFOW { type Abi = Self; } -impl ::core::cmp::PartialEq for SERVICE_TYPE_INFO_ABSW { +impl ::core::cmp::PartialEq for NS_INFOW { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for SERVICE_TYPE_INFO_ABSW {} -impl ::core::default::Default for SERVICE_TYPE_INFO_ABSW { +impl ::core::cmp::Eq for NS_INFOW {} +impl ::core::default::Default for NS_INFOW { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SERVICE_TYPE_VALUE { +pub const NS_LOCALNAME: u32 = 19u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_MS: u32 = 30u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_NBP: u32 = 20u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_NDS: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_NETBT: u32 = 13u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_NETDES: u32 = 60u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_NIS: u32 = 41u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_NISPLUS: u32 = 42u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_NLA: u32 = 15u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_NTDS: u32 = 32u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_PEER_BROWSE: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const NS_SAP: u32 = 1u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Com\"`*"] +#[cfg(feature = "Win32_System_Com")] +pub struct NS_SERVICE_INFOA { pub dwNameSpace: u32, - pub dwValueType: u32, - pub dwValueSize: u32, - pub dwValueNameOffset: u32, - pub dwValueOffset: u32, + pub ServiceInfo: SERVICE_INFOA, } -impl ::core::marker::Copy for SERVICE_TYPE_VALUE {} -impl ::core::clone::Clone for SERVICE_TYPE_VALUE { +#[cfg(feature = "Win32_System_Com")] +impl ::core::marker::Copy for NS_SERVICE_INFOA {} +#[cfg(feature = "Win32_System_Com")] +impl ::core::clone::Clone for NS_SERVICE_INFOA { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for SERVICE_TYPE_VALUE { +#[cfg(feature = "Win32_System_Com")] +impl ::core::fmt::Debug for NS_SERVICE_INFOA { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SERVICE_TYPE_VALUE").field("dwNameSpace", &self.dwNameSpace).field("dwValueType", &self.dwValueType).field("dwValueSize", &self.dwValueSize).field("dwValueNameOffset", &self.dwValueNameOffset).field("dwValueOffset", &self.dwValueOffset).finish() + f.debug_struct("NS_SERVICE_INFOA").field("dwNameSpace", &self.dwNameSpace).field("ServiceInfo", &self.ServiceInfo).finish() } } -unsafe impl ::windows::core::Abi for SERVICE_TYPE_VALUE { +#[cfg(feature = "Win32_System_Com")] +unsafe impl ::windows::core::Abi for NS_SERVICE_INFOA { type Abi = Self; } -impl ::core::cmp::PartialEq for SERVICE_TYPE_VALUE { +#[cfg(feature = "Win32_System_Com")] +impl ::core::cmp::PartialEq for NS_SERVICE_INFOA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for SERVICE_TYPE_VALUE {} -impl ::core::default::Default for SERVICE_TYPE_VALUE { +#[cfg(feature = "Win32_System_Com")] +impl ::core::cmp::Eq for NS_SERVICE_INFOA {} +#[cfg(feature = "Win32_System_Com")] +impl ::core::default::Default for NS_SERVICE_INFOA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SERVICE_TYPE_VALUE_ABSA { +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Com\"`*"] +#[cfg(feature = "Win32_System_Com")] +pub struct NS_SERVICE_INFOW { pub dwNameSpace: u32, - pub dwValueType: u32, - pub dwValueSize: u32, - pub lpValueName: ::windows::core::PSTR, - pub lpValue: *mut ::core::ffi::c_void, + pub ServiceInfo: SERVICE_INFOW, } -impl ::core::marker::Copy for SERVICE_TYPE_VALUE_ABSA {} -impl ::core::clone::Clone for SERVICE_TYPE_VALUE_ABSA { +#[cfg(feature = "Win32_System_Com")] +impl ::core::marker::Copy for NS_SERVICE_INFOW {} +#[cfg(feature = "Win32_System_Com")] +impl ::core::clone::Clone for NS_SERVICE_INFOW { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for SERVICE_TYPE_VALUE_ABSA { +#[cfg(feature = "Win32_System_Com")] +impl ::core::fmt::Debug for NS_SERVICE_INFOW { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SERVICE_TYPE_VALUE_ABSA").field("dwNameSpace", &self.dwNameSpace).field("dwValueType", &self.dwValueType).field("dwValueSize", &self.dwValueSize).field("lpValueName", &self.lpValueName).field("lpValue", &self.lpValue).finish() + f.debug_struct("NS_SERVICE_INFOW").field("dwNameSpace", &self.dwNameSpace).field("ServiceInfo", &self.ServiceInfo).finish() } } -unsafe impl ::windows::core::Abi for SERVICE_TYPE_VALUE_ABSA { +#[cfg(feature = "Win32_System_Com")] +unsafe impl ::windows::core::Abi for NS_SERVICE_INFOW { type Abi = Self; } -impl ::core::cmp::PartialEq for SERVICE_TYPE_VALUE_ABSA { +#[cfg(feature = "Win32_System_Com")] +impl ::core::cmp::PartialEq for NS_SERVICE_INFOW { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for SERVICE_TYPE_VALUE_ABSA {} -impl ::core::default::Default for SERVICE_TYPE_VALUE_ABSA { +#[cfg(feature = "Win32_System_Com")] +impl ::core::cmp::Eq for NS_SERVICE_INFOW {} +#[cfg(feature = "Win32_System_Com")] +impl ::core::default::Default for NS_SERVICE_INFOW { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SERVICE_TYPE_VALUE_ABSW { - pub dwNameSpace: u32, - pub dwValueType: u32, - pub dwValueSize: u32, - pub lpValueName: ::windows::core::PWSTR, - pub lpValue: *mut ::core::ffi::c_void, -} -impl ::core::marker::Copy for SERVICE_TYPE_VALUE_ABSW {} -impl ::core::clone::Clone for SERVICE_TYPE_VALUE_ABSW { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for SERVICE_TYPE_VALUE_ABSW { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SERVICE_TYPE_VALUE_ABSW").field("dwNameSpace", &self.dwNameSpace).field("dwValueType", &self.dwValueType).field("dwValueSize", &self.dwValueSize).field("lpValueName", &self.lpValueName).field("lpValue", &self.lpValue).finish() - } -} -unsafe impl ::windows::core::Abi for SERVICE_TYPE_VALUE_ABSW { - type Abi = Self; -} -impl ::core::cmp::PartialEq for SERVICE_TYPE_VALUE_ABSW { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for SERVICE_TYPE_VALUE_ABSW {} -impl ::core::default::Default for SERVICE_TYPE_VALUE_ABSW { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} +pub const NS_SLP: u32 = 5u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_CONN: &str = "ConnectionOriented"; +pub const NS_STDA: u32 = 31u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_CONNA: &str = "ConnectionOriented"; +pub const NS_TCPIP_HOSTS: u32 = 11u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_CONNW: &str = "ConnectionOriented"; +pub const NS_TCPIP_LOCAL: u32 = 10u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_IPXPORTA: &str = "IpxSocket"; +pub const NS_VNS: u32 = 50u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_IPXPORTW: &str = "IpxSocket"; +pub const NS_WINS: u32 = 14u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_OBJECTID: &str = "ObjectId"; +pub const NS_WRQ: u32 = 50u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_OBJECTIDA: &str = "ObjectId"; +pub const NS_X500: u32 = 40u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_OBJECTIDW: &str = "ObjectId"; +pub const PFL_HIDDEN: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_SAPID: &str = "SapId"; +pub const PFL_MATCHES_PROTOCOL_ZERO: u32 = 8u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_SAPIDA: &str = "SapId"; +pub const PFL_MULTIPLE_PROTO_ENTRIES: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_SAPIDW: &str = "SapId"; +pub const PFL_NETWORKDIRECT_PROVIDER: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_TCPPORT: &str = "TcpPort"; +pub const PFL_RECOMMENDED_PROTO_ENTRY: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_TCPPORTA: &str = "TcpPort"; +pub const PF_APPLETALK: u16 = 16u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_TCPPORTW: &str = "TcpPort"; +pub const PF_ATM: u16 = 22u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_UDPPORT: &str = "UdpPort"; +pub const PF_BAN: u16 = 21u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_UDPPORTA: &str = "UdpPort"; +pub const PF_CCITT: u16 = 10u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_TYPE_VALUE_UDPPORTW: &str = "UdpPort"; +pub const PF_CHAOS: u16 = 5u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct SET_SERVICE_OPERATION(pub u32); +pub const PF_DATAKIT: u16 = 9u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_REGISTER: SET_SERVICE_OPERATION = SET_SERVICE_OPERATION(1u32); +pub const PF_DECnet: u16 = 12u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_DEREGISTER: SET_SERVICE_OPERATION = SET_SERVICE_OPERATION(2u32); +pub const PF_DLI: u16 = 13u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_FLUSH: SET_SERVICE_OPERATION = SET_SERVICE_OPERATION(3u32); +pub const PF_ECMA: u16 = 8u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_ADD_TYPE: SET_SERVICE_OPERATION = SET_SERVICE_OPERATION(4u32); +pub const PF_FIREFOX: u16 = 19u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SERVICE_DELETE_TYPE: SET_SERVICE_OPERATION = SET_SERVICE_OPERATION(5u32); -impl ::core::marker::Copy for SET_SERVICE_OPERATION {} -impl ::core::clone::Clone for SET_SERVICE_OPERATION { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for SET_SERVICE_OPERATION { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for SET_SERVICE_OPERATION { - type Abi = Self; -} -impl ::core::fmt::Debug for SET_SERVICE_OPERATION { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("SET_SERVICE_OPERATION").field(&self.0).finish() - } -} +pub const PF_HYLINK: u16 = 15u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SET_SERVICE_PARTIAL_SUCCESS: u32 = 1u32; +pub const PF_IMPLINK: u16 = 3u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SG_CONSTRAINED_GROUP: u32 = 2u32; +pub const PF_IPX: u16 = 6u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SG_UNCONSTRAINED_GROUP: u32 = 1u32; +pub const PF_IRDA: u16 = 26u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIOCATMARK: i32 = 1074033415i32; +pub const PF_ISO: u16 = 7u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIOCGHIWAT: i32 = 1074033409i32; +pub const PF_LAT: u16 = 14u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIOCGLOWAT: i32 = 1074033411i32; +pub const PF_MAX: u16 = 29u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIOCSHIWAT: i32 = -2147192064i32; +pub const PF_NS: u16 = 6u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIOCSLOWAT: i32 = -2147192062i32; +pub const PF_OSI: u16 = 7u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_ABSORB_RTRALERT: u32 = 2550136837u32; +pub const PF_PUP: u16 = 4u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_ACQUIRE_PORT_RESERVATION: u32 = 2550136932u32; +pub const PF_SNA: u16 = 11u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_ADDRESS_LIST_CHANGE: u32 = 671088663u32; +pub const PF_UNIX: u16 = 1u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_ADDRESS_LIST_QUERY: u32 = 1207959574u32; +pub const PF_UNKNOWN1: u16 = 20u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_ADDRESS_LIST_SORT: u32 = 3355443225u32; +pub const PF_VOICEVIEW: u16 = 18u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_AF_UNIX_GETPEERPID: u32 = 1476395264u32; +pub const PI_ALLOWED: u32 = 0u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_AF_UNIX_SETBINDPARENTPATH: u32 = 2550137089u32; +pub const PI_NUMBER_NOT_AVAILABLE: u32 = 128u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_AF_UNIX_SETCONNPARENTPATH: u32 = 2550137090u32; +pub const PI_RESTRICTED: u32 = 64u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_APPLY_TRANSPORT_SETTING: u32 = 2550136851u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct PMTUD_STATE(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_ASSOCIATE_HANDLE: u32 = 2281701377u32; +pub const IP_PMTUDISC_NOT_SET: PMTUD_STATE = PMTUD_STATE(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_ASSOCIATE_PORT_RESERVATION: u32 = 2550136934u32; +pub const IP_PMTUDISC_DO: PMTUD_STATE = PMTUD_STATE(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_ASSOCIATE_PVC: u32 = 2417360899u32; +pub const IP_PMTUDISC_DONT: PMTUD_STATE = PMTUD_STATE(2i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_BASE_HANDLE: u32 = 1207959586u32; +pub const IP_PMTUDISC_PROBE: PMTUD_STATE = PMTUD_STATE(3i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_BSP_HANDLE: u32 = 1207959579u32; +pub const IP_PMTUDISC_MAX: PMTUD_STATE = PMTUD_STATE(4i32); +impl ::core::marker::Copy for PMTUD_STATE {} +impl ::core::clone::Clone for PMTUD_STATE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for PMTUD_STATE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for PMTUD_STATE { + type Abi = Self; +} +impl ::core::fmt::Debug for PMTUD_STATE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("PMTUD_STATE").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_BSP_HANDLE_POLL: u32 = 1207959581u32; +pub const POLLERR: u16 = 1u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_BSP_HANDLE_SELECT: u32 = 1207959580u32; +pub const POLLHUP: u16 = 2u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_CPU_AFFINITY: u32 = 2550136853u32; +pub const POLLIN: u16 = 768u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_DELETE_PEER_TARGET_NAME: u32 = 2550137035u32; +pub const POLLNVAL: u16 = 4u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_ENABLE_CIRCULAR_QUEUEING: u32 = 671088642u32; +pub const POLLOUT: u16 = 16u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_EXT_POLL: u32 = 3355443231u32; +pub const POLLPRI: u16 = 1024u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_EXT_SELECT: u32 = 3355443230u32; +pub const POLLRDBAND: u16 = 512u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_EXT_SENDMSG: u32 = 3355443232u32; +pub const POLLRDNORM: u16 = 256u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_FIND_ROUTE: u32 = 1207959555u32; +pub const POLLWRBAND: u16 = 32u16; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_FLUSH: u32 = 671088644u32; +pub const POLLWRNORM: u16 = 16u16; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_GET_ATM_ADDRESS: u32 = 3491102722u32; +pub struct PRIORITY_STATUS { + pub Sender: SOCKET_PRIORITY_HINT, + pub Receiver: SOCKET_PRIORITY_HINT, +} +impl ::core::marker::Copy for PRIORITY_STATUS {} +impl ::core::clone::Clone for PRIORITY_STATUS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for PRIORITY_STATUS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("PRIORITY_STATUS").field("Sender", &self.Sender).field("Receiver", &self.Receiver).finish() + } +} +unsafe impl ::windows::core::Abi for PRIORITY_STATUS { + type Abi = Self; +} +impl ::core::cmp::PartialEq for PRIORITY_STATUS { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for PRIORITY_STATUS {} +impl ::core::default::Default for PRIORITY_STATUS { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_GET_ATM_CONNECTION_ID: u32 = 1343619076u32; +pub const PROP_ADDRESSES: u32 = 256u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_GET_BROADCAST_ADDRESS: u32 = 1207959557u32; +pub const PROP_ALL: u32 = 2147483648u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_GET_EXTENSION_FUNCTION_POINTER: u32 = 3355443206u32; +pub const PROP_COMMENT: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_GET_GROUP_QOS: u32 = 3355443208u32; +pub const PROP_DISPLAY_HINT: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_GET_MULTIPLE_EXTENSION_FUNCTION_POINTER: u32 = 3355443236u32; +pub const PROP_LOCALE: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_GET_NUMBER_OF_ATM_DEVICES: u32 = 1343619073u32; +pub const PROP_MACHINE: u32 = 32u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_GET_QOS: u32 = 3355443207u32; +pub const PROP_SD: u32 = 512u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_GET_TX_TIMESTAMP: u32 = 2550137066u32; +pub const PROP_START_TIME: u32 = 16u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_INDEX_ADD_MCAST: u32 = 2550136842u32; +pub const PROP_VERSION: u32 = 8u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_INDEX_BIND: u32 = 2550136840u32; +pub const PROTECTION_LEVEL_DEFAULT: u32 = 20u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_INDEX_DEL_MCAST: u32 = 2550136843u32; +pub const PROTECTION_LEVEL_EDGERESTRICTED: u32 = 20u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_INDEX_MCASTIF: u32 = 2550136841u32; +pub const PROTECTION_LEVEL_RESTRICTED: u32 = 30u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_KEEPALIVE_VALS: u32 = 2550136836u32; +pub const PROTECTION_LEVEL_UNRESTRICTED: u32 = 10u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_LIMIT_BROADCASTS: u32 = 2550136839u32; +pub struct PROTOCOL_INFOA { + pub dwServiceFlags: u32, + pub iAddressFamily: i32, + pub iMaxSockAddr: i32, + pub iMinSockAddr: i32, + pub iSocketType: i32, + pub iProtocol: i32, + pub dwMessageSize: u32, + pub lpProtocol: ::windows::core::PSTR, +} +impl ::core::marker::Copy for PROTOCOL_INFOA {} +impl ::core::clone::Clone for PROTOCOL_INFOA { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for PROTOCOL_INFOA { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("PROTOCOL_INFOA").field("dwServiceFlags", &self.dwServiceFlags).field("iAddressFamily", &self.iAddressFamily).field("iMaxSockAddr", &self.iMaxSockAddr).field("iMinSockAddr", &self.iMinSockAddr).field("iSocketType", &self.iSocketType).field("iProtocol", &self.iProtocol).field("dwMessageSize", &self.dwMessageSize).field("lpProtocol", &self.lpProtocol).finish() + } +} +unsafe impl ::windows::core::Abi for PROTOCOL_INFOA { + type Abi = Self; +} +impl ::core::cmp::PartialEq for PROTOCOL_INFOA { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for PROTOCOL_INFOA {} +impl ::core::default::Default for PROTOCOL_INFOA { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_LOOPBACK_FAST_PATH: u32 = 2550136848u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_MULTICAST_SCOPE: u32 = 2281701386u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_MULTIPOINT_LOOPBACK: u32 = 2281701385u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_NSP_NOTIFY_CHANGE: u32 = 2281701401u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_PRIORITY_HINT: u32 = 2550136856u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_QUERY_RSS_PROCESSOR_INFO: u32 = 1207959589u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_QUERY_RSS_SCALABILITY_INFO: u32 = 1476395218u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_QUERY_SECURITY: u32 = 3623878857u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_QUERY_TARGET_PNP_HANDLE: u32 = 1207959576u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_QUERY_TRANSPORT_SETTING: u32 = 2550136852u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_QUERY_WFP_ALE_ENDPOINT_HANDLE: u32 = 1476395213u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_QUERY_WFP_CONNECTION_REDIRECT_CONTEXT: u32 = 2550137053u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_QUERY_WFP_CONNECTION_REDIRECT_RECORDS: u32 = 2550137052u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_RCVALL: u32 = 2550136833u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_RCVALL_IF: u32 = 2550136846u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_RCVALL_IGMPMCAST: u32 = 2550136835u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_RCVALL_MCAST: u32 = 2550136834u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_RCVALL_MCAST_IF: u32 = 2550136845u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_RELEASE_PORT_RESERVATION: u32 = 2550136933u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_RESERVED_1: u32 = 2281701402u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_RESERVED_2: u32 = 2281701409u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_ROUTING_INTERFACE_CHANGE: u32 = 2281701397u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_ROUTING_INTERFACE_QUERY: u32 = 3355443220u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_SET_COMPATIBILITY_MODE: u32 = 2550137132u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_SET_GROUP_QOS: u32 = 2281701388u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_SET_PEER_TARGET_NAME: u32 = 2550137034u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_SET_PRIORITY_HINT: u32 = 2550136856u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_SET_QOS: u32 = 2281701387u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_SET_SECURITY: u32 = 2550137032u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_SET_WFP_CONNECTION_REDIRECT_RECORDS: u32 = 2550137054u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_SOCKET_CLOSE_NOTIFY: u32 = 2550136845u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_SOCKET_USAGE_NOTIFICATION: u32 = 2550137036u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_TCP_INFO: u32 = 3623878695u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_TCP_INITIAL_RTO: u32 = 2550136849u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_TCP_SET_ACK_FREQUENCY: u32 = 2550136855u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_TCP_SET_ICW: u32 = 2550136854u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_TIMESTAMPING: u32 = 2550137067u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_TRANSLATE_HANDLE: u32 = 3355443213u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_UCAST_IF: u32 = 2550136838u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_UDP_CONNRESET: u32 = 2550136844u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIO_UDP_NETRESET: u32 = 2550136847u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIZEOF_IP_OPT_ROUTERALERT: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIZEOF_IP_OPT_ROUTING_HEADER: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIZEOF_IP_OPT_SECURITY: u32 = 11u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIZEOF_IP_OPT_STREAMIDENTIFIER: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SIZEOF_IP_OPT_TIMESTAMP_HEADER: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SI_NETWORK: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SI_USER_FAILED: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SI_USER_NOT_SCREENED: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SI_USER_PASSED: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SNAP_CONTROL: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SNAP_DSAP: u32 = 170u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SNAP_HEADER { - pub Dsap: u8, - pub Ssap: u8, - pub Control: u8, - pub Oui: [u8; 3], - pub Type: u16, +pub struct PROTOCOL_INFOW { + pub dwServiceFlags: u32, + pub iAddressFamily: i32, + pub iMaxSockAddr: i32, + pub iMinSockAddr: i32, + pub iSocketType: i32, + pub iProtocol: i32, + pub dwMessageSize: u32, + pub lpProtocol: ::windows::core::PWSTR, } -impl ::core::marker::Copy for SNAP_HEADER {} -impl ::core::clone::Clone for SNAP_HEADER { +impl ::core::marker::Copy for PROTOCOL_INFOW {} +impl ::core::clone::Clone for PROTOCOL_INFOW { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for SNAP_HEADER { +impl ::core::fmt::Debug for PROTOCOL_INFOW { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SNAP_HEADER").field("Dsap", &self.Dsap).field("Ssap", &self.Ssap).field("Control", &self.Control).field("Oui", &self.Oui).field("Type", &self.Type).finish() + f.debug_struct("PROTOCOL_INFOW").field("dwServiceFlags", &self.dwServiceFlags).field("iAddressFamily", &self.iAddressFamily).field("iMaxSockAddr", &self.iMaxSockAddr).field("iMinSockAddr", &self.iMinSockAddr).field("iSocketType", &self.iSocketType).field("iProtocol", &self.iProtocol).field("dwMessageSize", &self.dwMessageSize).field("lpProtocol", &self.lpProtocol).finish() } } -unsafe impl ::windows::core::Abi for SNAP_HEADER { +unsafe impl ::windows::core::Abi for PROTOCOL_INFOW { type Abi = Self; } -impl ::core::cmp::PartialEq for SNAP_HEADER { +impl ::core::cmp::PartialEq for PROTOCOL_INFOW { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for SNAP_HEADER {} -impl ::core::default::Default for SNAP_HEADER { +impl ::core::cmp::Eq for PROTOCOL_INFOW {} +impl ::core::default::Default for PROTOCOL_INFOW { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SNAP_OUI: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SNAP_SSAP: u32 = 170u32; +pub const PVD_CONFIG: u32 = 12289u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn ProcessSocketNotifications<'a, P0>(completionport: P0, registrationinfos: ::core::option::Option<&mut [SOCK_NOTIFY_REGISTRATION]>, timeoutms: u32, completionportentries: ::core::option::Option<&mut [super::super::System::IO::OVERLAPPED_ENTRY]>, receivedentrycount: ::core::option::Option<&mut u32>) -> u32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn ProcessSocketNotifications(completionport: super::super::Foundation::HANDLE, registrationcount: u32, registrationinfos: *mut SOCK_NOTIFY_REGISTRATION, timeoutms: u32, completioncount: u32, completionportentries: *mut super::super::System::IO::OVERLAPPED_ENTRY, receivedentrycount: *mut u32) -> u32; + } + ProcessSocketNotifications(completionport.into(), registrationinfos.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(registrationinfos.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), timeoutms, completionportentries.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(completionportentries.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), ::core::mem::transmute(receivedentrycount)) +} #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct SOCKADDR { - pub sa_family: u16, - pub sa_data: [super::super::Foundation::CHAR; 14], +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct Q2931_IE { + pub IEType: Q2931_IE_TYPE, + pub IELength: u32, + pub IE: [u8; 1], } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for SOCKADDR {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for SOCKADDR { +impl ::core::marker::Copy for Q2931_IE {} +impl ::core::clone::Clone for Q2931_IE { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for SOCKADDR { +impl ::core::fmt::Debug for Q2931_IE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKADDR").field("sa_family", &self.sa_family).field("sa_data", &self.sa_data).finish() + f.debug_struct("Q2931_IE").field("IEType", &self.IEType).field("IELength", &self.IELength).field("IE", &self.IE).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for SOCKADDR { +unsafe impl ::windows::core::Abi for Q2931_IE { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for SOCKADDR { +impl ::core::cmp::PartialEq for Q2931_IE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for SOCKADDR {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for SOCKADDR { +impl ::core::cmp::Eq for Q2931_IE {} +impl ::core::default::Default for Q2931_IE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SOCKADDR_DL { - pub sdl_family: u16, - pub sdl_data: [u8; 8], - pub sdl_zero: [u8; 4], -} -impl ::core::marker::Copy for SOCKADDR_DL {} -impl ::core::clone::Clone for SOCKADDR_DL { +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct Q2931_IE_TYPE(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IE_AALParameters: Q2931_IE_TYPE = Q2931_IE_TYPE(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IE_TrafficDescriptor: Q2931_IE_TYPE = Q2931_IE_TYPE(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IE_BroadbandBearerCapability: Q2931_IE_TYPE = Q2931_IE_TYPE(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IE_BHLI: Q2931_IE_TYPE = Q2931_IE_TYPE(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IE_BLLI: Q2931_IE_TYPE = Q2931_IE_TYPE(4i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IE_CalledPartyNumber: Q2931_IE_TYPE = Q2931_IE_TYPE(5i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IE_CalledPartySubaddress: Q2931_IE_TYPE = Q2931_IE_TYPE(6i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IE_CallingPartyNumber: Q2931_IE_TYPE = Q2931_IE_TYPE(7i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IE_CallingPartySubaddress: Q2931_IE_TYPE = Q2931_IE_TYPE(8i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IE_Cause: Q2931_IE_TYPE = Q2931_IE_TYPE(9i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IE_QOSClass: Q2931_IE_TYPE = Q2931_IE_TYPE(10i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const IE_TransitNetworkSelection: Q2931_IE_TYPE = Q2931_IE_TYPE(11i32); +impl ::core::marker::Copy for Q2931_IE_TYPE {} +impl ::core::clone::Clone for Q2931_IE_TYPE { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for SOCKADDR_DL { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKADDR_DL").field("sdl_family", &self.sdl_family).field("sdl_data", &self.sdl_data).field("sdl_zero", &self.sdl_zero).finish() +impl ::core::default::Default for Q2931_IE_TYPE { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for SOCKADDR_DL { +unsafe impl ::windows::core::Abi for Q2931_IE_TYPE { type Abi = Self; } -impl ::core::cmp::PartialEq for SOCKADDR_DL { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::fmt::Debug for Q2931_IE_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("Q2931_IE_TYPE").field(&self.0).finish() } } -impl ::core::cmp::Eq for SOCKADDR_DL {} -impl ::core::default::Default for SOCKADDR_DL { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct QOS { + pub SendingFlowspec: FLOWSPEC, + pub ReceivingFlowspec: FLOWSPEC, + pub ProviderSpecific: WSABUF, +} +impl ::core::marker::Copy for QOS {} +impl ::core::clone::Clone for QOS { + fn clone(&self) -> Self { + *self } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct SOCKADDR_IN { - pub sin_family: u16, - pub sin_port: u16, - pub sin_addr: IN_ADDR, - pub sin_zero: [super::super::Foundation::CHAR; 8], -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for SOCKADDR_IN {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for SOCKADDR_IN { - fn clone(&self) -> Self { - *self +impl ::core::fmt::Debug for QOS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("QOS").field("SendingFlowspec", &self.SendingFlowspec).field("ReceivingFlowspec", &self.ReceivingFlowspec).field("ProviderSpecific", &self.ProviderSpecific).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for SOCKADDR_IN { +unsafe impl ::windows::core::Abi for QOS { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for SOCKADDR_IN { +impl ::core::cmp::PartialEq for QOS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for SOCKADDR_IN {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for SOCKADDR_IN { +impl ::core::cmp::Eq for QOS {} +impl ::core::default::Default for QOS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -impl ::core::convert::From<::std::net::SocketAddrV4> for SOCKADDR_IN { - fn from(addr: ::std::net::SocketAddrV4) -> Self { - SOCKADDR_IN { sin_family: AF_INET.0 as u16, sin_port: addr.port().to_be(), sin_addr: (*addr.ip()).into(), ..Default::default() } - } -} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const QOS_CLASS0: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const QOS_CLASS1: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const QOS_CLASS2: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const QOS_CLASS3: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const QOS_CLASS4: u32 = 4u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SOCKADDR_IN6 { - pub sin6_family: u16, - pub sin6_port: u16, - pub sin6_flowinfo: u32, - pub sin6_addr: IN6_ADDR, - pub Anonymous: SOCKADDR_IN6_0, +pub struct RCVALL_IF { + pub Mode: RCVALL_VALUE, + pub Interface: u32, } -impl ::core::marker::Copy for SOCKADDR_IN6 {} -impl ::core::clone::Clone for SOCKADDR_IN6 { +impl ::core::marker::Copy for RCVALL_IF {} +impl ::core::clone::Clone for RCVALL_IF { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for SOCKADDR_IN6 { - type Abi = Self; -} -impl ::core::cmp::PartialEq for SOCKADDR_IN6 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for SOCKADDR_IN6 {} -impl ::core::default::Default for SOCKADDR_IN6 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -impl ::core::convert::From<::std::net::SocketAddrV6> for SOCKADDR_IN6 { - fn from(addr: ::std::net::SocketAddrV6) -> Self { - SOCKADDR_IN6 { - sin6_family: AF_INET6.0 as u16, - sin6_port: addr.port().to_be(), - sin6_flowinfo: addr.flowinfo().to_be(), - sin6_addr: (*addr.ip()).into(), - Anonymous: SOCKADDR_IN6_0 { sin6_scope_id: addr.scope_id() }, - ..Default::default() - } - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union SOCKADDR_IN6_0 { - pub sin6_scope_id: u32, - pub sin6_scope_struct: SCOPE_ID, -} -impl ::core::marker::Copy for SOCKADDR_IN6_0 {} -impl ::core::clone::Clone for SOCKADDR_IN6_0 { - fn clone(&self) -> Self { - *self +impl ::core::fmt::Debug for RCVALL_IF { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("RCVALL_IF").field("Mode", &self.Mode).field("Interface", &self.Interface).finish() } } -unsafe impl ::windows::core::Abi for SOCKADDR_IN6_0 { +unsafe impl ::windows::core::Abi for RCVALL_IF { type Abi = Self; } -impl ::core::cmp::PartialEq for SOCKADDR_IN6_0 { +impl ::core::cmp::PartialEq for RCVALL_IF { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for SOCKADDR_IN6_0 {} -impl ::core::default::Default for SOCKADDR_IN6_0 { +impl ::core::cmp::Eq for RCVALL_IF {} +impl ::core::default::Default for RCVALL_IF { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SOCKADDR_IN6_PAIR { - pub SourceAddress: *mut SOCKADDR_IN6, - pub DestinationAddress: *mut SOCKADDR_IN6, -} -impl ::core::marker::Copy for SOCKADDR_IN6_PAIR {} -impl ::core::clone::Clone for SOCKADDR_IN6_PAIR { +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct RCVALL_VALUE(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RCVALL_OFF: RCVALL_VALUE = RCVALL_VALUE(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RCVALL_ON: RCVALL_VALUE = RCVALL_VALUE(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RCVALL_SOCKETLEVELONLY: RCVALL_VALUE = RCVALL_VALUE(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RCVALL_IPLEVEL: RCVALL_VALUE = RCVALL_VALUE(3i32); +impl ::core::marker::Copy for RCVALL_VALUE {} +impl ::core::clone::Clone for RCVALL_VALUE { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for SOCKADDR_IN6_PAIR { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKADDR_IN6_PAIR").field("SourceAddress", &self.SourceAddress).field("DestinationAddress", &self.DestinationAddress).finish() +impl ::core::default::Default for RCVALL_VALUE { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for SOCKADDR_IN6_PAIR { +unsafe impl ::windows::core::Abi for RCVALL_VALUE { type Abi = Self; } -impl ::core::cmp::PartialEq for SOCKADDR_IN6_PAIR { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for SOCKADDR_IN6_PAIR {} -impl ::core::default::Default for SOCKADDR_IN6_PAIR { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for RCVALL_VALUE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("RCVALL_VALUE").field(&self.0).finish() } } +pub const REAL_TIME_NOTIFICATION_CAPABILITY: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6b59819a_5cae_492d_a901_2a3c2c50164f); +pub const REAL_TIME_NOTIFICATION_CAPABILITY_EX: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x6843da03_154a_4616_a508_44371295f96b); #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SOCKADDR_IN6_W2KSP1 { - pub sin6_family: i16, - pub sin6_port: u16, - pub sin6_flowinfo: u32, - pub sin6_addr: IN6_ADDR, - pub sin6_scope_id: u32, +pub struct REAL_TIME_NOTIFICATION_SETTING_INPUT { + pub TransportSettingId: TRANSPORT_SETTING_ID, + pub BrokerEventGuid: ::windows::core::GUID, } -impl ::core::marker::Copy for SOCKADDR_IN6_W2KSP1 {} -impl ::core::clone::Clone for SOCKADDR_IN6_W2KSP1 { +impl ::core::marker::Copy for REAL_TIME_NOTIFICATION_SETTING_INPUT {} +impl ::core::clone::Clone for REAL_TIME_NOTIFICATION_SETTING_INPUT { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for SOCKADDR_IN6_W2KSP1 { +impl ::core::fmt::Debug for REAL_TIME_NOTIFICATION_SETTING_INPUT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("REAL_TIME_NOTIFICATION_SETTING_INPUT").field("TransportSettingId", &self.TransportSettingId).field("BrokerEventGuid", &self.BrokerEventGuid).finish() + } +} +unsafe impl ::windows::core::Abi for REAL_TIME_NOTIFICATION_SETTING_INPUT { type Abi = Self; } -impl ::core::cmp::PartialEq for SOCKADDR_IN6_W2KSP1 { +impl ::core::cmp::PartialEq for REAL_TIME_NOTIFICATION_SETTING_INPUT { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for SOCKADDR_IN6_W2KSP1 {} -impl ::core::default::Default for SOCKADDR_IN6_W2KSP1 { +impl ::core::cmp::Eq for REAL_TIME_NOTIFICATION_SETTING_INPUT {} +impl ::core::default::Default for REAL_TIME_NOTIFICATION_SETTING_INPUT { fn default() -> Self { unsafe { ::core::mem::zeroed() } } @@ -10662,1825 +9618,1951 @@ impl ::core::default::Default for SOCKADDR_IN6_W2KSP1 { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub union SOCKADDR_INET { - pub Ipv4: SOCKADDR_IN, - pub Ipv6: SOCKADDR_IN6, - pub si_family: u16, +pub struct REAL_TIME_NOTIFICATION_SETTING_INPUT_EX { + pub TransportSettingId: TRANSPORT_SETTING_ID, + pub BrokerEventGuid: ::windows::core::GUID, + pub Unmark: super::super::Foundation::BOOLEAN, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for SOCKADDR_INET {} +impl ::core::marker::Copy for REAL_TIME_NOTIFICATION_SETTING_INPUT_EX {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for SOCKADDR_INET { +impl ::core::clone::Clone for REAL_TIME_NOTIFICATION_SETTING_INPUT_EX { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for SOCKADDR_INET { +impl ::core::fmt::Debug for REAL_TIME_NOTIFICATION_SETTING_INPUT_EX { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("REAL_TIME_NOTIFICATION_SETTING_INPUT_EX").field("TransportSettingId", &self.TransportSettingId).field("BrokerEventGuid", &self.BrokerEventGuid).field("Unmark", &self.Unmark).finish() + } +} +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for REAL_TIME_NOTIFICATION_SETTING_INPUT_EX { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for SOCKADDR_INET { +impl ::core::cmp::PartialEq for REAL_TIME_NOTIFICATION_SETTING_INPUT_EX { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for SOCKADDR_INET {} +impl ::core::cmp::Eq for REAL_TIME_NOTIFICATION_SETTING_INPUT_EX {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for SOCKADDR_INET { +impl ::core::default::Default for REAL_TIME_NOTIFICATION_SETTING_INPUT_EX { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -impl ::core::convert::From<::std::net::SocketAddrV4> for SOCKADDR_INET { - fn from(addr: ::std::net::SocketAddrV4) -> Self { - SOCKADDR_INET { Ipv4: addr.into() } - } -} -impl ::core::convert::From<::std::net::SocketAddrV6> for SOCKADDR_INET { - fn from(addr: ::std::net::SocketAddrV6) -> Self { - SOCKADDR_INET { Ipv6: addr.into() } - } -} -impl ::core::convert::From<::std::net::SocketAddr> for SOCKADDR_INET { - fn from(addr: ::std::net::SocketAddr) -> Self { - match addr { - ::std::net::SocketAddr::V4(socket_addr_v4) => socket_addr_v4.into(), - ::std::net::SocketAddr::V6(socket_addr_v6) => socket_addr_v6.into(), - } - } -} #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct SOCKADDR_IRDA { - pub irdaAddressFamily: u16, - pub irdaDeviceID: [u8; 4], - pub irdaServiceName: [super::super::Foundation::CHAR; 25], +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct REAL_TIME_NOTIFICATION_SETTING_OUTPUT { + pub ChannelStatus: CONTROL_CHANNEL_TRIGGER_STATUS, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for SOCKADDR_IRDA {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for SOCKADDR_IRDA { +impl ::core::marker::Copy for REAL_TIME_NOTIFICATION_SETTING_OUTPUT {} +impl ::core::clone::Clone for REAL_TIME_NOTIFICATION_SETTING_OUTPUT { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for SOCKADDR_IRDA { +impl ::core::fmt::Debug for REAL_TIME_NOTIFICATION_SETTING_OUTPUT { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKADDR_IRDA").field("irdaAddressFamily", &self.irdaAddressFamily).field("irdaDeviceID", &self.irdaDeviceID).field("irdaServiceName", &self.irdaServiceName).finish() + f.debug_struct("REAL_TIME_NOTIFICATION_SETTING_OUTPUT").field("ChannelStatus", &self.ChannelStatus).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for SOCKADDR_IRDA { +unsafe impl ::windows::core::Abi for REAL_TIME_NOTIFICATION_SETTING_OUTPUT { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for SOCKADDR_IRDA { +impl ::core::cmp::PartialEq for REAL_TIME_NOTIFICATION_SETTING_OUTPUT { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for SOCKADDR_IRDA {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for SOCKADDR_IRDA { +impl ::core::cmp::Eq for REAL_TIME_NOTIFICATION_SETTING_OUTPUT {} +impl ::core::default::Default for REAL_TIME_NOTIFICATION_SETTING_OUTPUT { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct SOCKADDR_STORAGE { - pub ss_family: u16, - pub __ss_pad1: [super::super::Foundation::CHAR; 6], - pub __ss_align: i64, - pub __ss_pad2: [super::super::Foundation::CHAR; 112], -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for SOCKADDR_STORAGE {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for SOCKADDR_STORAGE { +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct RESOURCE_DISPLAY_TYPE(pub u32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RESOURCEDISPLAYTYPE_DOMAIN: RESOURCE_DISPLAY_TYPE = RESOURCE_DISPLAY_TYPE(1u32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RESOURCEDISPLAYTYPE_FILE: RESOURCE_DISPLAY_TYPE = RESOURCE_DISPLAY_TYPE(4u32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RESOURCEDISPLAYTYPE_GENERIC: RESOURCE_DISPLAY_TYPE = RESOURCE_DISPLAY_TYPE(0u32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RESOURCEDISPLAYTYPE_GROUP: RESOURCE_DISPLAY_TYPE = RESOURCE_DISPLAY_TYPE(5u32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RESOURCEDISPLAYTYPE_SERVER: RESOURCE_DISPLAY_TYPE = RESOURCE_DISPLAY_TYPE(2u32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RESOURCEDISPLAYTYPE_SHARE: RESOURCE_DISPLAY_TYPE = RESOURCE_DISPLAY_TYPE(3u32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RESOURCEDISPLAYTYPE_TREE: RESOURCE_DISPLAY_TYPE = RESOURCE_DISPLAY_TYPE(10u32); +impl ::core::marker::Copy for RESOURCE_DISPLAY_TYPE {} +impl ::core::clone::Clone for RESOURCE_DISPLAY_TYPE { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for SOCKADDR_STORAGE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKADDR_STORAGE").field("ss_family", &self.ss_family).field("__ss_pad1", &self.__ss_pad1).field("__ss_align", &self.__ss_align).field("__ss_pad2", &self.__ss_pad2).finish() +impl ::core::default::Default for RESOURCE_DISPLAY_TYPE { + fn default() -> Self { + Self(0) } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for SOCKADDR_STORAGE { +unsafe impl ::windows::core::Abi for RESOURCE_DISPLAY_TYPE { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for SOCKADDR_STORAGE { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for SOCKADDR_STORAGE {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for SOCKADDR_STORAGE { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for RESOURCE_DISPLAY_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("RESOURCE_DISPLAY_TYPE").field(&self.0).finish() } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RESULT_IS_ADDED: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RESULT_IS_ALIAS: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RESULT_IS_CHANGED: u32 = 32u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RESULT_IS_DELETED: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RES_FIND_MULTIPLE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RES_FLUSH_CACHE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RES_SERVICE: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RES_SOFT_SEARCH: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RES_UNUSED_1: u32 = 1u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct SOCKADDR_STORAGE_XP { - pub ss_family: i16, - pub __ss_pad1: [super::super::Foundation::CHAR; 6], - pub __ss_align: i64, - pub __ss_pad2: [super::super::Foundation::CHAR; 112], +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct RIORESULT { + pub Status: i32, + pub BytesTransferred: u32, + pub SocketContext: u64, + pub RequestContext: u64, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for SOCKADDR_STORAGE_XP {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for SOCKADDR_STORAGE_XP { +impl ::core::marker::Copy for RIORESULT {} +impl ::core::clone::Clone for RIORESULT { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for SOCKADDR_STORAGE_XP { +impl ::core::fmt::Debug for RIORESULT { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKADDR_STORAGE_XP").field("ss_family", &self.ss_family).field("__ss_pad1", &self.__ss_pad1).field("__ss_align", &self.__ss_align).field("__ss_pad2", &self.__ss_pad2).finish() + f.debug_struct("RIORESULT").field("Status", &self.Status).field("BytesTransferred", &self.BytesTransferred).field("SocketContext", &self.SocketContext).field("RequestContext", &self.RequestContext).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for SOCKADDR_STORAGE_XP { +unsafe impl ::windows::core::Abi for RIORESULT { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for SOCKADDR_STORAGE_XP { +impl ::core::cmp::PartialEq for RIORESULT { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for SOCKADDR_STORAGE_XP {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for SOCKADDR_STORAGE_XP { +impl ::core::cmp::Eq for RIORESULT {} +impl ::core::default::Default for RIORESULT { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct SOCKET(pub usize); -impl ::core::default::Default for SOCKET { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct RIO_BUF { + pub BufferId: *mut RIO_BUFFERID_t, + pub Offset: u32, + pub Length: u32, } -impl ::core::clone::Clone for SOCKET { +impl ::core::marker::Copy for RIO_BUF {} +impl ::core::clone::Clone for RIO_BUF { fn clone(&self) -> Self { *self } } -impl ::core::marker::Copy for SOCKET {} -impl ::core::fmt::Debug for SOCKET { +impl ::core::fmt::Debug for RIO_BUF { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("SOCKET").field(&self.0).finish() + f.debug_struct("RIO_BUF").field("BufferId", &self.BufferId).field("Offset", &self.Offset).field("Length", &self.Length).finish() } } -impl ::core::convert::From<::core::option::Option> for SOCKET { - fn from(optional: ::core::option::Option) -> SOCKET { - optional.unwrap_or_default() +unsafe impl ::windows::core::Abi for RIO_BUF { + type Abi = Self; +} +impl ::core::cmp::PartialEq for RIO_BUF { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -unsafe impl ::windows::core::Abi for SOCKET { - type Abi = Self; +impl ::core::cmp::Eq for RIO_BUF {} +impl ::core::default::Default for RIO_BUF { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct SOCKET_ADDRESS { - pub lpSockaddr: *mut SOCKADDR, - pub iSockaddrLength: i32, +pub struct RIO_BUFFERID_t(pub u8); +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct RIO_CMSG_BUFFER { + pub TotalLength: u32, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for SOCKET_ADDRESS {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for SOCKET_ADDRESS { +impl ::core::marker::Copy for RIO_CMSG_BUFFER {} +impl ::core::clone::Clone for RIO_CMSG_BUFFER { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for SOCKET_ADDRESS { +impl ::core::fmt::Debug for RIO_CMSG_BUFFER { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKET_ADDRESS").field("lpSockaddr", &self.lpSockaddr).field("iSockaddrLength", &self.iSockaddrLength).finish() + f.debug_struct("RIO_CMSG_BUFFER").field("TotalLength", &self.TotalLength).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for SOCKET_ADDRESS { +unsafe impl ::windows::core::Abi for RIO_CMSG_BUFFER { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for SOCKET_ADDRESS { +impl ::core::cmp::PartialEq for RIO_CMSG_BUFFER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for SOCKET_ADDRESS {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for SOCKET_ADDRESS { +impl ::core::cmp::Eq for RIO_CMSG_BUFFER {} +impl ::core::default::Default for RIO_CMSG_BUFFER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RIO_CORRUPT_CQ: u32 = 4294967295u32; +#[repr(C)] +pub struct RIO_CQ_t(pub u8); #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct SOCKET_ADDRESS_LIST { - pub iAddressCount: i32, - pub Address: [SOCKET_ADDRESS; 1], +pub struct RIO_EXTENSION_FUNCTION_TABLE { + pub cbSize: u32, + pub RIOReceive: LPFN_RIORECEIVE, + pub RIOReceiveEx: LPFN_RIORECEIVEEX, + pub RIOSend: LPFN_RIOSEND, + pub RIOSendEx: LPFN_RIOSENDEX, + pub RIOCloseCompletionQueue: LPFN_RIOCLOSECOMPLETIONQUEUE, + pub RIOCreateCompletionQueue: LPFN_RIOCREATECOMPLETIONQUEUE, + pub RIOCreateRequestQueue: LPFN_RIOCREATEREQUESTQUEUE, + pub RIODequeueCompletion: LPFN_RIODEQUEUECOMPLETION, + pub RIODeregisterBuffer: LPFN_RIODEREGISTERBUFFER, + pub RIONotify: LPFN_RIONOTIFY, + pub RIORegisterBuffer: LPFN_RIOREGISTERBUFFER, + pub RIOResizeCompletionQueue: LPFN_RIORESIZECOMPLETIONQUEUE, + pub RIOResizeRequestQueue: LPFN_RIORESIZEREQUESTQUEUE, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for SOCKET_ADDRESS_LIST {} +impl ::core::marker::Copy for RIO_EXTENSION_FUNCTION_TABLE {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for SOCKET_ADDRESS_LIST { +impl ::core::clone::Clone for RIO_EXTENSION_FUNCTION_TABLE { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for SOCKET_ADDRESS_LIST { +impl ::core::fmt::Debug for RIO_EXTENSION_FUNCTION_TABLE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKET_ADDRESS_LIST").field("iAddressCount", &self.iAddressCount).field("Address", &self.Address).finish() + f.debug_struct("RIO_EXTENSION_FUNCTION_TABLE") + .field("cbSize", &self.cbSize) + .field("RIOReceive", &self.RIOReceive.map(|f| f as usize)) + .field("RIOReceiveEx", &self.RIOReceiveEx.map(|f| f as usize)) + .field("RIOSend", &self.RIOSend.map(|f| f as usize)) + .field("RIOSendEx", &self.RIOSendEx.map(|f| f as usize)) + .field("RIOCloseCompletionQueue", &self.RIOCloseCompletionQueue.map(|f| f as usize)) + .field("RIOCreateCompletionQueue", &self.RIOCreateCompletionQueue.map(|f| f as usize)) + .field("RIOCreateRequestQueue", &self.RIOCreateRequestQueue.map(|f| f as usize)) + .field("RIODequeueCompletion", &self.RIODequeueCompletion.map(|f| f as usize)) + .field("RIODeregisterBuffer", &self.RIODeregisterBuffer.map(|f| f as usize)) + .field("RIONotify", &self.RIONotify.map(|f| f as usize)) + .field("RIORegisterBuffer", &self.RIORegisterBuffer.map(|f| f as usize)) + .field("RIOResizeCompletionQueue", &self.RIOResizeCompletionQueue.map(|f| f as usize)) + .field("RIOResizeRequestQueue", &self.RIOResizeRequestQueue.map(|f| f as usize)) + .finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for SOCKET_ADDRESS_LIST { +unsafe impl ::windows::core::Abi for RIO_EXTENSION_FUNCTION_TABLE { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for SOCKET_ADDRESS_LIST { +impl ::core::cmp::PartialEq for RIO_EXTENSION_FUNCTION_TABLE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for SOCKET_ADDRESS_LIST {} +impl ::core::cmp::Eq for RIO_EXTENSION_FUNCTION_TABLE {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for SOCKET_ADDRESS_LIST { +impl ::core::default::Default for RIO_EXTENSION_FUNCTION_TABLE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -pub const SOCKET_DEFAULT2_QM_POLICY: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xaec2ef9c_3a4d_4d3e_8842_239942e39a47); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_ERROR: i32 = -1i32; +pub const RIO_MAX_CQ_SIZE: u32 = 134217728u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_INFO_CONNECTION_ENCRYPTED: u32 = 2u32; +pub const RIO_MSG_COMMIT_ONLY: u32 = 8u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_INFO_CONNECTION_IMPERSONATED: u32 = 4u32; +pub const RIO_MSG_DEFER: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_INFO_CONNECTION_SECURED: u32 = 1u32; +pub const RIO_MSG_DONT_NOTIFY: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RIO_MSG_WAITALL: u32 = 4u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct SOCKET_PEER_TARGET_NAME { - pub SecurityProtocol: SOCKET_SECURITY_PROTOCOL, - pub PeerAddress: SOCKADDR_STORAGE, - pub PeerTargetNameStringLen: u32, - pub AllStrings: [u16; 1], +pub struct RIO_NOTIFICATION_COMPLETION { + pub Type: RIO_NOTIFICATION_COMPLETION_TYPE, + pub Anonymous: RIO_NOTIFICATION_COMPLETION_0, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for SOCKET_PEER_TARGET_NAME {} +impl ::core::marker::Copy for RIO_NOTIFICATION_COMPLETION {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for SOCKET_PEER_TARGET_NAME { +impl ::core::clone::Clone for RIO_NOTIFICATION_COMPLETION { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for SOCKET_PEER_TARGET_NAME { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKET_PEER_TARGET_NAME").field("SecurityProtocol", &self.SecurityProtocol).field("PeerAddress", &self.PeerAddress).field("PeerTargetNameStringLen", &self.PeerTargetNameStringLen).field("AllStrings", &self.AllStrings).finish() +unsafe impl ::windows::core::Abi for RIO_NOTIFICATION_COMPLETION { + type Abi = Self; +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for RIO_NOTIFICATION_COMPLETION { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for SOCKET_PEER_TARGET_NAME { +impl ::core::cmp::Eq for RIO_NOTIFICATION_COMPLETION {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for RIO_NOTIFICATION_COMPLETION { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub union RIO_NOTIFICATION_COMPLETION_0 { + pub Event: RIO_NOTIFICATION_COMPLETION_0_0, + pub Iocp: RIO_NOTIFICATION_COMPLETION_0_1, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for RIO_NOTIFICATION_COMPLETION_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for RIO_NOTIFICATION_COMPLETION_0 { + fn clone(&self) -> Self { + *self + } +} +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for RIO_NOTIFICATION_COMPLETION_0 { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for SOCKET_PEER_TARGET_NAME { +impl ::core::cmp::PartialEq for RIO_NOTIFICATION_COMPLETION_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for SOCKET_PEER_TARGET_NAME {} +impl ::core::cmp::Eq for RIO_NOTIFICATION_COMPLETION_0 {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for SOCKET_PEER_TARGET_NAME { +impl ::core::default::Default for RIO_NOTIFICATION_COMPLETION_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct SOCKET_PRIORITY_HINT(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SocketPriorityHintVeryLow: SOCKET_PRIORITY_HINT = SOCKET_PRIORITY_HINT(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SocketPriorityHintLow: SOCKET_PRIORITY_HINT = SOCKET_PRIORITY_HINT(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SocketPriorityHintNormal: SOCKET_PRIORITY_HINT = SOCKET_PRIORITY_HINT(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SocketMaximumPriorityHintType: SOCKET_PRIORITY_HINT = SOCKET_PRIORITY_HINT(3i32); -impl ::core::marker::Copy for SOCKET_PRIORITY_HINT {} -impl ::core::clone::Clone for SOCKET_PRIORITY_HINT { +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct RIO_NOTIFICATION_COMPLETION_0_0 { + pub EventHandle: super::super::Foundation::HANDLE, + pub NotifyReset: super::super::Foundation::BOOL, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for RIO_NOTIFICATION_COMPLETION_0_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for RIO_NOTIFICATION_COMPLETION_0_0 { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for SOCKET_PRIORITY_HINT { - fn default() -> Self { - Self(0) +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for RIO_NOTIFICATION_COMPLETION_0_0 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("RIO_NOTIFICATION_COMPLETION_0_0").field("EventHandle", &self.EventHandle).field("NotifyReset", &self.NotifyReset).finish() } } -unsafe impl ::windows::core::Abi for SOCKET_PRIORITY_HINT { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for RIO_NOTIFICATION_COMPLETION_0_0 { type Abi = Self; } -impl ::core::fmt::Debug for SOCKET_PRIORITY_HINT { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("SOCKET_PRIORITY_HINT").field(&self.0).finish() +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for RIO_NOTIFICATION_COMPLETION_0_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for RIO_NOTIFICATION_COMPLETION_0_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for RIO_NOTIFICATION_COMPLETION_0_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Kernel\"`*"] -#[cfg(feature = "Win32_System_Kernel")] -pub struct SOCKET_PROCESSOR_AFFINITY { - pub Processor: super::super::System::Kernel::PROCESSOR_NUMBER, - pub NumaNodeId: u16, - pub Reserved: u16, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct RIO_NOTIFICATION_COMPLETION_0_1 { + pub IocpHandle: super::super::Foundation::HANDLE, + pub CompletionKey: *mut ::core::ffi::c_void, + pub Overlapped: *mut ::core::ffi::c_void, } -#[cfg(feature = "Win32_System_Kernel")] -impl ::core::marker::Copy for SOCKET_PROCESSOR_AFFINITY {} -#[cfg(feature = "Win32_System_Kernel")] -impl ::core::clone::Clone for SOCKET_PROCESSOR_AFFINITY { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for RIO_NOTIFICATION_COMPLETION_0_1 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for RIO_NOTIFICATION_COMPLETION_0_1 { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_System_Kernel")] -impl ::core::fmt::Debug for SOCKET_PROCESSOR_AFFINITY { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for RIO_NOTIFICATION_COMPLETION_0_1 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKET_PROCESSOR_AFFINITY").field("Processor", &self.Processor).field("NumaNodeId", &self.NumaNodeId).field("Reserved", &self.Reserved).finish() + f.debug_struct("RIO_NOTIFICATION_COMPLETION_0_1").field("IocpHandle", &self.IocpHandle).field("CompletionKey", &self.CompletionKey).field("Overlapped", &self.Overlapped).finish() } } -#[cfg(feature = "Win32_System_Kernel")] -unsafe impl ::windows::core::Abi for SOCKET_PROCESSOR_AFFINITY { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for RIO_NOTIFICATION_COMPLETION_0_1 { type Abi = Self; } -#[cfg(feature = "Win32_System_Kernel")] -impl ::core::cmp::PartialEq for SOCKET_PROCESSOR_AFFINITY { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for RIO_NOTIFICATION_COMPLETION_0_1 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_System_Kernel")] -impl ::core::cmp::Eq for SOCKET_PROCESSOR_AFFINITY {} -#[cfg(feature = "Win32_System_Kernel")] -impl ::core::default::Default for SOCKET_PROCESSOR_AFFINITY { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for RIO_NOTIFICATION_COMPLETION_0_1 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for RIO_NOTIFICATION_COMPLETION_0_1 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_QUERY_IPSEC2_ABORT_CONNECTION_ON_FIELD_CHANGE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_QUERY_IPSEC2_FIELD_MASK_MM_SA_ID: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_QUERY_IPSEC2_FIELD_MASK_QM_SA_ID: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct SOCKET_SECURITY_PROTOCOL(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_SECURITY_PROTOCOL_DEFAULT: SOCKET_SECURITY_PROTOCOL = SOCKET_SECURITY_PROTOCOL(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_SECURITY_PROTOCOL_IPSEC: SOCKET_SECURITY_PROTOCOL = SOCKET_SECURITY_PROTOCOL(1i32); +pub struct RIO_NOTIFICATION_COMPLETION_TYPE(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_SECURITY_PROTOCOL_IPSEC2: SOCKET_SECURITY_PROTOCOL = SOCKET_SECURITY_PROTOCOL(2i32); +pub const RIO_EVENT_COMPLETION: RIO_NOTIFICATION_COMPLETION_TYPE = RIO_NOTIFICATION_COMPLETION_TYPE(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_SECURITY_PROTOCOL_INVALID: SOCKET_SECURITY_PROTOCOL = SOCKET_SECURITY_PROTOCOL(3i32); -impl ::core::marker::Copy for SOCKET_SECURITY_PROTOCOL {} -impl ::core::clone::Clone for SOCKET_SECURITY_PROTOCOL { +pub const RIO_IOCP_COMPLETION: RIO_NOTIFICATION_COMPLETION_TYPE = RIO_NOTIFICATION_COMPLETION_TYPE(2i32); +impl ::core::marker::Copy for RIO_NOTIFICATION_COMPLETION_TYPE {} +impl ::core::clone::Clone for RIO_NOTIFICATION_COMPLETION_TYPE { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for SOCKET_SECURITY_PROTOCOL { +impl ::core::default::Default for RIO_NOTIFICATION_COMPLETION_TYPE { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for SOCKET_SECURITY_PROTOCOL { +unsafe impl ::windows::core::Abi for RIO_NOTIFICATION_COMPLETION_TYPE { type Abi = Self; } -impl ::core::fmt::Debug for SOCKET_SECURITY_PROTOCOL { +impl ::core::fmt::Debug for RIO_NOTIFICATION_COMPLETION_TYPE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("SOCKET_SECURITY_PROTOCOL").field(&self.0).finish() + f.debug_tuple("RIO_NOTIFICATION_COMPLETION_TYPE").field(&self.0).finish() } } #[repr(C)] +pub struct RIO_RQ_t(pub u8); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SOCKET_SECURITY_QUERY_INFO { - pub SecurityProtocol: SOCKET_SECURITY_PROTOCOL, - pub Flags: u32, - pub PeerApplicationAccessTokenHandle: u64, - pub PeerMachineAccessTokenHandle: u64, +pub const RM_ADD_RECEIVE_IF: u32 = 1008u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RM_DEL_RECEIVE_IF: u32 = 1009u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct RM_FEC_INFO { + pub FECBlockSize: u16, + pub FECProActivePackets: u16, + pub FECGroupSize: u8, + pub fFECOnDemandParityEnabled: super::super::Foundation::BOOLEAN, } -impl ::core::marker::Copy for SOCKET_SECURITY_QUERY_INFO {} -impl ::core::clone::Clone for SOCKET_SECURITY_QUERY_INFO { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for RM_FEC_INFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for RM_FEC_INFO { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for SOCKET_SECURITY_QUERY_INFO { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for RM_FEC_INFO { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKET_SECURITY_QUERY_INFO").field("SecurityProtocol", &self.SecurityProtocol).field("Flags", &self.Flags).field("PeerApplicationAccessTokenHandle", &self.PeerApplicationAccessTokenHandle).field("PeerMachineAccessTokenHandle", &self.PeerMachineAccessTokenHandle).finish() + f.debug_struct("RM_FEC_INFO").field("FECBlockSize", &self.FECBlockSize).field("FECProActivePackets", &self.FECProActivePackets).field("FECGroupSize", &self.FECGroupSize).field("fFECOnDemandParityEnabled", &self.fFECOnDemandParityEnabled).finish() } } -unsafe impl ::windows::core::Abi for SOCKET_SECURITY_QUERY_INFO { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for RM_FEC_INFO { type Abi = Self; } -impl ::core::cmp::PartialEq for SOCKET_SECURITY_QUERY_INFO { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for RM_FEC_INFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for SOCKET_SECURITY_QUERY_INFO {} -impl ::core::default::Default for SOCKET_SECURITY_QUERY_INFO { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for RM_FEC_INFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for RM_FEC_INFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RM_FLUSHCACHE: u32 = 1003u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RM_HIGH_SPEED_INTRANET_OPT: u32 = 1014u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RM_LATEJOIN: u32 = 1006u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RM_OPTIONSBASE: u32 = 1000u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RM_RATE_WINDOW_SIZE: u32 = 1001u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RM_RECEIVER_STATISTICS: u32 = 1013u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SOCKET_SECURITY_QUERY_INFO_IPSEC2 { - pub SecurityProtocol: SOCKET_SECURITY_PROTOCOL, - pub Flags: u32, - pub PeerApplicationAccessTokenHandle: u64, - pub PeerMachineAccessTokenHandle: u64, - pub MmSaId: u64, - pub QmSaId: u64, - pub NegotiationWinerr: u32, - pub SaLookupContext: ::windows::core::GUID, -} -impl ::core::marker::Copy for SOCKET_SECURITY_QUERY_INFO_IPSEC2 {} -impl ::core::clone::Clone for SOCKET_SECURITY_QUERY_INFO_IPSEC2 { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for SOCKET_SECURITY_QUERY_INFO_IPSEC2 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKET_SECURITY_QUERY_INFO_IPSEC2").field("SecurityProtocol", &self.SecurityProtocol).field("Flags", &self.Flags).field("PeerApplicationAccessTokenHandle", &self.PeerApplicationAccessTokenHandle).field("PeerMachineAccessTokenHandle", &self.PeerMachineAccessTokenHandle).field("MmSaId", &self.MmSaId).field("QmSaId", &self.QmSaId).field("NegotiationWinerr", &self.NegotiationWinerr).field("SaLookupContext", &self.SaLookupContext).finish() - } -} -unsafe impl ::windows::core::Abi for SOCKET_SECURITY_QUERY_INFO_IPSEC2 { - type Abi = Self; -} -impl ::core::cmp::PartialEq for SOCKET_SECURITY_QUERY_INFO_IPSEC2 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for SOCKET_SECURITY_QUERY_INFO_IPSEC2 {} -impl ::core::default::Default for SOCKET_SECURITY_QUERY_INFO_IPSEC2 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct SOCKET_SECURITY_QUERY_TEMPLATE { - pub SecurityProtocol: SOCKET_SECURITY_PROTOCOL, - pub PeerAddress: SOCKADDR_STORAGE, - pub PeerTokenAccessMask: u32, +pub struct RM_RECEIVER_STATS { + pub NumODataPacketsReceived: u64, + pub NumRDataPacketsReceived: u64, + pub NumDuplicateDataPackets: u64, + pub DataBytesReceived: u64, + pub TotalBytesReceived: u64, + pub RateKBitsPerSecOverall: u64, + pub RateKBitsPerSecLast: u64, + pub TrailingEdgeSeqId: u64, + pub LeadingEdgeSeqId: u64, + pub AverageSequencesInWindow: u64, + pub MinSequencesInWindow: u64, + pub MaxSequencesInWindow: u64, + pub FirstNakSequenceNumber: u64, + pub NumPendingNaks: u64, + pub NumOutstandingNaks: u64, + pub NumDataPacketsBuffered: u64, + pub TotalSelectiveNaksSent: u64, + pub TotalParityNaksSent: u64, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for SOCKET_SECURITY_QUERY_TEMPLATE {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for SOCKET_SECURITY_QUERY_TEMPLATE { +impl ::core::marker::Copy for RM_RECEIVER_STATS {} +impl ::core::clone::Clone for RM_RECEIVER_STATS { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for SOCKET_SECURITY_QUERY_TEMPLATE { +impl ::core::fmt::Debug for RM_RECEIVER_STATS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKET_SECURITY_QUERY_TEMPLATE").field("SecurityProtocol", &self.SecurityProtocol).field("PeerAddress", &self.PeerAddress).field("PeerTokenAccessMask", &self.PeerTokenAccessMask).finish() + f.debug_struct("RM_RECEIVER_STATS") + .field("NumODataPacketsReceived", &self.NumODataPacketsReceived) + .field("NumRDataPacketsReceived", &self.NumRDataPacketsReceived) + .field("NumDuplicateDataPackets", &self.NumDuplicateDataPackets) + .field("DataBytesReceived", &self.DataBytesReceived) + .field("TotalBytesReceived", &self.TotalBytesReceived) + .field("RateKBitsPerSecOverall", &self.RateKBitsPerSecOverall) + .field("RateKBitsPerSecLast", &self.RateKBitsPerSecLast) + .field("TrailingEdgeSeqId", &self.TrailingEdgeSeqId) + .field("LeadingEdgeSeqId", &self.LeadingEdgeSeqId) + .field("AverageSequencesInWindow", &self.AverageSequencesInWindow) + .field("MinSequencesInWindow", &self.MinSequencesInWindow) + .field("MaxSequencesInWindow", &self.MaxSequencesInWindow) + .field("FirstNakSequenceNumber", &self.FirstNakSequenceNumber) + .field("NumPendingNaks", &self.NumPendingNaks) + .field("NumOutstandingNaks", &self.NumOutstandingNaks) + .field("NumDataPacketsBuffered", &self.NumDataPacketsBuffered) + .field("TotalSelectiveNaksSent", &self.TotalSelectiveNaksSent) + .field("TotalParityNaksSent", &self.TotalParityNaksSent) + .finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for SOCKET_SECURITY_QUERY_TEMPLATE { +unsafe impl ::windows::core::Abi for RM_RECEIVER_STATS { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for SOCKET_SECURITY_QUERY_TEMPLATE { +impl ::core::cmp::PartialEq for RM_RECEIVER_STATS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for SOCKET_SECURITY_QUERY_TEMPLATE {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for SOCKET_SECURITY_QUERY_TEMPLATE { +impl ::core::cmp::Eq for RM_RECEIVER_STATS {} +impl ::core::default::Default for RM_RECEIVER_STATS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RM_SENDER_STATISTICS: u32 = 1005u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 { - pub SecurityProtocol: SOCKET_SECURITY_PROTOCOL, - pub PeerAddress: SOCKADDR_STORAGE, - pub PeerTokenAccessMask: u32, - pub Flags: u32, - pub FieldMask: u32, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct RM_SENDER_STATS { + pub DataBytesSent: u64, + pub TotalBytesSent: u64, + pub NaksReceived: u64, + pub NaksReceivedTooLate: u64, + pub NumOutstandingNaks: u64, + pub NumNaksAfterRData: u64, + pub RepairPacketsSent: u64, + pub BufferSpaceAvailable: u64, + pub TrailingEdgeSeqId: u64, + pub LeadingEdgeSeqId: u64, + pub RateKBitsPerSecOverall: u64, + pub RateKBitsPerSecLast: u64, + pub TotalODataPacketsSent: u64, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 { +impl ::core::marker::Copy for RM_SENDER_STATS {} +impl ::core::clone::Clone for RM_SENDER_STATS { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 { +impl ::core::fmt::Debug for RM_SENDER_STATS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2").field("SecurityProtocol", &self.SecurityProtocol).field("PeerAddress", &self.PeerAddress).field("PeerTokenAccessMask", &self.PeerTokenAccessMask).field("Flags", &self.Flags).field("FieldMask", &self.FieldMask).finish() + f.debug_struct("RM_SENDER_STATS") + .field("DataBytesSent", &self.DataBytesSent) + .field("TotalBytesSent", &self.TotalBytesSent) + .field("NaksReceived", &self.NaksReceived) + .field("NaksReceivedTooLate", &self.NaksReceivedTooLate) + .field("NumOutstandingNaks", &self.NumOutstandingNaks) + .field("NumNaksAfterRData", &self.NumNaksAfterRData) + .field("RepairPacketsSent", &self.RepairPacketsSent) + .field("BufferSpaceAvailable", &self.BufferSpaceAvailable) + .field("TrailingEdgeSeqId", &self.TrailingEdgeSeqId) + .field("LeadingEdgeSeqId", &self.LeadingEdgeSeqId) + .field("RateKBitsPerSecOverall", &self.RateKBitsPerSecOverall) + .field("RateKBitsPerSecLast", &self.RateKBitsPerSecLast) + .field("TotalODataPacketsSent", &self.TotalODataPacketsSent) + .finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 { +unsafe impl ::windows::core::Abi for RM_SENDER_STATS { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 { +impl ::core::cmp::PartialEq for RM_SENDER_STATS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 { +impl ::core::cmp::Eq for RM_SENDER_STATS {} +impl ::core::default::Default for RM_SENDER_STATS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RM_SENDER_WINDOW_ADVANCE_METHOD: u32 = 1004u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SOCKET_SECURITY_SETTINGS { - pub SecurityProtocol: SOCKET_SECURITY_PROTOCOL, - pub SecurityFlags: u32, +pub struct RM_SEND_WINDOW { + pub RateKbitsPerSec: u32, + pub WindowSizeInMSecs: u32, + pub WindowSizeInBytes: u32, } -impl ::core::marker::Copy for SOCKET_SECURITY_SETTINGS {} -impl ::core::clone::Clone for SOCKET_SECURITY_SETTINGS { +impl ::core::marker::Copy for RM_SEND_WINDOW {} +impl ::core::clone::Clone for RM_SEND_WINDOW { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for SOCKET_SECURITY_SETTINGS { +impl ::core::fmt::Debug for RM_SEND_WINDOW { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKET_SECURITY_SETTINGS").field("SecurityProtocol", &self.SecurityProtocol).field("SecurityFlags", &self.SecurityFlags).finish() + f.debug_struct("RM_SEND_WINDOW").field("RateKbitsPerSec", &self.RateKbitsPerSec).field("WindowSizeInMSecs", &self.WindowSizeInMSecs).field("WindowSizeInBytes", &self.WindowSizeInBytes).finish() } } -unsafe impl ::windows::core::Abi for SOCKET_SECURITY_SETTINGS { +unsafe impl ::windows::core::Abi for RM_SEND_WINDOW { type Abi = Self; } -impl ::core::cmp::PartialEq for SOCKET_SECURITY_SETTINGS { +impl ::core::cmp::PartialEq for RM_SEND_WINDOW { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for SOCKET_SECURITY_SETTINGS {} -impl ::core::default::Default for SOCKET_SECURITY_SETTINGS { +impl ::core::cmp::Eq for RM_SEND_WINDOW {} +impl ::core::default::Default for RM_SEND_WINDOW { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SOCKET_SECURITY_SETTINGS_IPSEC { - pub SecurityProtocol: SOCKET_SECURITY_PROTOCOL, - pub SecurityFlags: u32, - pub IpsecFlags: u32, - pub AuthipMMPolicyKey: ::windows::core::GUID, - pub AuthipQMPolicyKey: ::windows::core::GUID, - pub Reserved: ::windows::core::GUID, - pub Reserved2: u64, - pub UserNameStringLen: u32, - pub DomainNameStringLen: u32, - pub PasswordStringLen: u32, - pub AllStrings: [u16; 1], +pub const RM_SEND_WINDOW_ADV_RATE: u32 = 1010u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RM_SET_MCAST_TTL: u32 = 1012u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RM_SET_MESSAGE_BOUNDARY: u32 = 1002u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RM_SET_SEND_IF: u32 = 1007u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RM_USE_FEC: u32 = 1011u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct RSS_SCALABILITY_INFO { + pub RssEnabled: super::super::Foundation::BOOLEAN, } -impl ::core::marker::Copy for SOCKET_SECURITY_SETTINGS_IPSEC {} -impl ::core::clone::Clone for SOCKET_SECURITY_SETTINGS_IPSEC { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for RSS_SCALABILITY_INFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for RSS_SCALABILITY_INFO { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for SOCKET_SECURITY_SETTINGS_IPSEC { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for RSS_SCALABILITY_INFO { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCKET_SECURITY_SETTINGS_IPSEC") - .field("SecurityProtocol", &self.SecurityProtocol) - .field("SecurityFlags", &self.SecurityFlags) - .field("IpsecFlags", &self.IpsecFlags) - .field("AuthipMMPolicyKey", &self.AuthipMMPolicyKey) - .field("AuthipQMPolicyKey", &self.AuthipQMPolicyKey) - .field("Reserved", &self.Reserved) - .field("Reserved2", &self.Reserved2) - .field("UserNameStringLen", &self.UserNameStringLen) - .field("DomainNameStringLen", &self.DomainNameStringLen) - .field("PasswordStringLen", &self.PasswordStringLen) - .field("AllStrings", &self.AllStrings) - .finish() + f.debug_struct("RSS_SCALABILITY_INFO").field("RssEnabled", &self.RssEnabled).finish() } } -unsafe impl ::windows::core::Abi for SOCKET_SECURITY_SETTINGS_IPSEC { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for RSS_SCALABILITY_INFO { type Abi = Self; } -impl ::core::cmp::PartialEq for SOCKET_SECURITY_SETTINGS_IPSEC { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for RSS_SCALABILITY_INFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for SOCKET_SECURITY_SETTINGS_IPSEC {} -impl ::core::default::Default for SOCKET_SECURITY_SETTINGS_IPSEC { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for RSS_SCALABILITY_INFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for RSS_SCALABILITY_INFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_SETTINGS_ALLOW_INSECURE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_SETTINGS_GUARANTEE_ENCRYPTION: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_SETTINGS_IPSEC_ALLOW_FIRST_INBOUND_PKT_UNENCRYPTED: u32 = 4u32; +#[inline] +pub unsafe fn RtlEthernetAddressToStringA(addr: &DL_EUI48, s: &mut [u8; 18]) -> ::windows::core::PSTR { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlEthernetAddressToStringA(addr: *const DL_EUI48, s: ::windows::core::PSTR) -> ::windows::core::PSTR; + } + RtlEthernetAddressToStringA(::core::mem::transmute(addr), ::core::mem::transmute(s.as_ptr())) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_SETTINGS_IPSEC_OPTIONAL_PEER_NAME_VERIFICATION: u32 = 2u32; +#[inline] +pub unsafe fn RtlEthernetAddressToStringW(addr: &DL_EUI48, s: &mut [u16; 18]) -> ::windows::core::PWSTR { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlEthernetAddressToStringW(addr: *const DL_EUI48, s: ::windows::core::PWSTR) -> ::windows::core::PWSTR; + } + RtlEthernetAddressToStringW(::core::mem::transmute(addr), ::core::mem::transmute(s.as_ptr())) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_SETTINGS_IPSEC_PEER_NAME_IS_RAW_FORMAT: u32 = 8u32; +#[inline] +pub unsafe fn RtlEthernetStringToAddressA<'a, P0>(s: P0, terminator: &mut ::windows::core::PSTR, addr: &mut DL_EUI48) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlEthernetStringToAddressA(s: ::windows::core::PCSTR, terminator: *mut ::windows::core::PSTR, addr: *mut DL_EUI48) -> i32; + } + RtlEthernetStringToAddressA(s.into(), ::core::mem::transmute(terminator), ::core::mem::transmute(addr)) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCKET_SETTINGS_IPSEC_SKIP_FILTER_INSTANTIATION: u32 = 1u32; +#[inline] +pub unsafe fn RtlEthernetStringToAddressW<'a, P0>(s: P0, terminator: &mut ::windows::core::PWSTR, addr: &mut DL_EUI48) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlEthernetStringToAddressW(s: ::windows::core::PCWSTR, terminator: *mut ::windows::core::PWSTR, addr: *mut DL_EUI48) -> i32; + } + RtlEthernetStringToAddressW(s.into(), ::core::mem::transmute(terminator), ::core::mem::transmute(addr)) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct SOCKET_USAGE_TYPE(pub i32); +#[inline] +pub unsafe fn RtlIpv4AddressToStringA(addr: &IN_ADDR, s: &mut [u8; 16]) -> ::windows::core::PSTR { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv4AddressToStringA(addr: *const IN_ADDR, s: ::windows::core::PSTR) -> ::windows::core::PSTR; + } + RtlIpv4AddressToStringA(::core::mem::transmute(addr), ::core::mem::transmute(s.as_ptr())) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SYSTEM_CRITICAL_SOCKET: SOCKET_USAGE_TYPE = SOCKET_USAGE_TYPE(1i32); -impl ::core::marker::Copy for SOCKET_USAGE_TYPE {} -impl ::core::clone::Clone for SOCKET_USAGE_TYPE { - fn clone(&self) -> Self { - *self +#[inline] +pub unsafe fn RtlIpv4AddressToStringExA(address: &IN_ADDR, port: u16, addressstring: ::windows::core::PSTR, addressstringlength: &mut u32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv4AddressToStringExA(address: *const IN_ADDR, port: u16, addressstring: ::windows::core::PSTR, addressstringlength: *mut u32) -> i32; } + RtlIpv4AddressToStringExA(::core::mem::transmute(address), port, ::core::mem::transmute(addressstring), ::core::mem::transmute(addressstringlength)) } -impl ::core::default::Default for SOCKET_USAGE_TYPE { - fn default() -> Self { - Self(0) +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn RtlIpv4AddressToStringExW(address: &IN_ADDR, port: u16, addressstring: ::windows::core::PWSTR, addressstringlength: &mut u32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv4AddressToStringExW(address: *const IN_ADDR, port: u16, addressstring: ::windows::core::PWSTR, addressstringlength: *mut u32) -> i32; } + RtlIpv4AddressToStringExW(::core::mem::transmute(address), port, ::core::mem::transmute(addressstring), ::core::mem::transmute(addressstringlength)) } -unsafe impl ::windows::core::Abi for SOCKET_USAGE_TYPE { - type Abi = Self; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn RtlIpv4AddressToStringW(addr: &IN_ADDR, s: &mut [u16; 16]) -> ::windows::core::PWSTR { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv4AddressToStringW(addr: *const IN_ADDR, s: ::windows::core::PWSTR) -> ::windows::core::PWSTR; + } + RtlIpv4AddressToStringW(::core::mem::transmute(addr), ::core::mem::transmute(s.as_ptr())) } -impl ::core::fmt::Debug for SOCKET_USAGE_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("SOCKET_USAGE_TYPE").field(&self.0).finish() +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn RtlIpv4StringToAddressA<'a, P0, P1>(s: P0, strict: P1, terminator: &mut ::windows::core::PSTR, addr: &mut IN_ADDR) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCSTR>, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv4StringToAddressA(s: ::windows::core::PCSTR, strict: super::super::Foundation::BOOLEAN, terminator: *mut ::windows::core::PSTR, addr: *mut IN_ADDR) -> i32; } + RtlIpv4StringToAddressA(s.into(), strict.into(), ::core::mem::transmute(terminator), ::core::mem::transmute(addr)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn RtlIpv4StringToAddressExA<'a, P0, P1>(addressstring: P0, strict: P1, address: &mut IN_ADDR, port: &mut u16) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCSTR>, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv4StringToAddressExA(addressstring: ::windows::core::PCSTR, strict: super::super::Foundation::BOOLEAN, address: *mut IN_ADDR, port: *mut u16) -> i32; + } + RtlIpv4StringToAddressExA(addressstring.into(), strict.into(), ::core::mem::transmute(address), ::core::mem::transmute(port)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn RtlIpv4StringToAddressExW<'a, P0, P1>(addressstring: P0, strict: P1, address: &mut IN_ADDR, port: &mut u16) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv4StringToAddressExW(addressstring: ::windows::core::PCWSTR, strict: super::super::Foundation::BOOLEAN, address: *mut IN_ADDR, port: *mut u16) -> i32; + } + RtlIpv4StringToAddressExW(addressstring.into(), strict.into(), ::core::mem::transmute(address), ::core::mem::transmute(port)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn RtlIpv4StringToAddressW<'a, P0, P1>(s: P0, strict: P1, terminator: &mut ::windows::core::PWSTR, addr: &mut IN_ADDR) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv4StringToAddressW(s: ::windows::core::PCWSTR, strict: super::super::Foundation::BOOLEAN, terminator: *mut ::windows::core::PWSTR, addr: *mut IN_ADDR) -> i32; + } + RtlIpv4StringToAddressW(s.into(), strict.into(), ::core::mem::transmute(terminator), ::core::mem::transmute(addr)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_DGRAM: u16 = 2u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_EVENT_ERR: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_EVENT_HANGUP: u32 = 4u32; +#[inline] +pub unsafe fn RtlIpv6AddressToStringA(addr: &IN6_ADDR, s: &mut [u8; 46]) -> ::windows::core::PSTR { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv6AddressToStringA(addr: *const IN6_ADDR, s: ::windows::core::PSTR) -> ::windows::core::PSTR; + } + RtlIpv6AddressToStringA(::core::mem::transmute(addr), ::core::mem::transmute(s.as_ptr())) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_EVENT_IN: u32 = 1u32; +#[inline] +pub unsafe fn RtlIpv6AddressToStringExA(address: &IN6_ADDR, scopeid: u32, port: u16, addressstring: ::windows::core::PSTR, addressstringlength: &mut u32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv6AddressToStringExA(address: *const IN6_ADDR, scopeid: u32, port: u16, addressstring: ::windows::core::PSTR, addressstringlength: *mut u32) -> i32; + } + RtlIpv6AddressToStringExA(::core::mem::transmute(address), scopeid, port, ::core::mem::transmute(addressstring), ::core::mem::transmute(addressstringlength)) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_EVENT_OUT: u32 = 2u32; +#[inline] +pub unsafe fn RtlIpv6AddressToStringExW(address: &IN6_ADDR, scopeid: u32, port: u16, addressstring: ::windows::core::PWSTR, addressstringlength: &mut u32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv6AddressToStringExW(address: *const IN6_ADDR, scopeid: u32, port: u16, addressstring: ::windows::core::PWSTR, addressstringlength: *mut u32) -> i32; + } + RtlIpv6AddressToStringExW(::core::mem::transmute(address), scopeid, port, ::core::mem::transmute(addressstring), ::core::mem::transmute(addressstringlength)) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_EVENT_REMOVE: u32 = 128u32; +#[inline] +pub unsafe fn RtlIpv6AddressToStringW(addr: &IN6_ADDR, s: &mut [u16; 46]) -> ::windows::core::PWSTR { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv6AddressToStringW(addr: *const IN6_ADDR, s: ::windows::core::PWSTR) -> ::windows::core::PWSTR; + } + RtlIpv6AddressToStringW(::core::mem::transmute(addr), ::core::mem::transmute(s.as_ptr())) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_OP_DISABLE: u32 = 2u32; +#[inline] +pub unsafe fn RtlIpv6StringToAddressA<'a, P0>(s: P0, terminator: &mut ::windows::core::PSTR, addr: &mut IN6_ADDR) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv6StringToAddressA(s: ::windows::core::PCSTR, terminator: *mut ::windows::core::PSTR, addr: *mut IN6_ADDR) -> i32; + } + RtlIpv6StringToAddressA(s.into(), ::core::mem::transmute(terminator), ::core::mem::transmute(addr)) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_OP_ENABLE: u32 = 1u32; +#[inline] +pub unsafe fn RtlIpv6StringToAddressExA<'a, P0>(addressstring: P0, address: &mut IN6_ADDR, scopeid: &mut u32, port: &mut u16) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv6StringToAddressExA(addressstring: ::windows::core::PCSTR, address: *mut IN6_ADDR, scopeid: *mut u32, port: *mut u16) -> i32; + } + RtlIpv6StringToAddressExA(addressstring.into(), ::core::mem::transmute(address), ::core::mem::transmute(scopeid), ::core::mem::transmute(port)) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_OP_NONE: u32 = 0u32; +#[inline] +pub unsafe fn RtlIpv6StringToAddressExW<'a, P0>(addressstring: P0, address: &mut IN6_ADDR, scopeid: &mut u32, port: &mut u16) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv6StringToAddressExW(addressstring: ::windows::core::PCWSTR, address: *mut IN6_ADDR, scopeid: *mut u32, port: *mut u16) -> i32; + } + RtlIpv6StringToAddressExW(addressstring.into(), ::core::mem::transmute(address), ::core::mem::transmute(scopeid), ::core::mem::transmute(port)) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_OP_REMOVE: u32 = 4u32; +#[inline] +pub unsafe fn RtlIpv6StringToAddressW<'a, P0>(s: P0, terminator: &mut ::windows::core::PWSTR, addr: &mut IN6_ADDR) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RtlIpv6StringToAddressW(s: ::windows::core::PCWSTR, terminator: *mut ::windows::core::PWSTR, addr: *mut IN6_ADDR) -> i32; + } + RtlIpv6StringToAddressW(s.into(), ::core::mem::transmute(terminator), ::core::mem::transmute(addr)) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_REGISTER_EVENT_HANGUP: u32 = 4u32; +pub const SAP_FIELD_ABSENT: u32 = 4294967294u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_REGISTER_EVENT_IN: u32 = 1u32; +pub const SAP_FIELD_ANY: u32 = 4294967295u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_REGISTER_EVENT_NONE: u32 = 0u32; +pub const SAP_FIELD_ANY_AESA_REST: u32 = 4294967291u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_REGISTER_EVENT_OUT: u32 = 2u32; +pub const SAP_FIELD_ANY_AESA_SEL: u32 = 4294967290u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct SOCK_NOTIFY_REGISTRATION { - pub socket: SOCKET, - pub completionKey: *mut ::core::ffi::c_void, - pub eventFilter: u16, - pub operation: u8, - pub triggerFlags: u8, - pub registrationResult: u32, +pub struct SCOPE_ID { + pub Anonymous: SCOPE_ID_0, } -impl ::core::marker::Copy for SOCK_NOTIFY_REGISTRATION {} -impl ::core::clone::Clone for SOCK_NOTIFY_REGISTRATION { +impl ::core::marker::Copy for SCOPE_ID {} +impl ::core::clone::Clone for SCOPE_ID { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for SOCK_NOTIFY_REGISTRATION { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("SOCK_NOTIFY_REGISTRATION").field("socket", &self.socket).field("completionKey", &self.completionKey).field("eventFilter", &self.eventFilter).field("operation", &self.operation).field("triggerFlags", &self.triggerFlags).field("registrationResult", &self.registrationResult).finish() - } -} -unsafe impl ::windows::core::Abi for SOCK_NOTIFY_REGISTRATION { +unsafe impl ::windows::core::Abi for SCOPE_ID { type Abi = Self; } -impl ::core::cmp::PartialEq for SOCK_NOTIFY_REGISTRATION { +impl ::core::cmp::PartialEq for SCOPE_ID { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for SOCK_NOTIFY_REGISTRATION {} -impl ::core::default::Default for SOCK_NOTIFY_REGISTRATION { +impl ::core::cmp::Eq for SCOPE_ID {} +impl ::core::default::Default for SCOPE_ID { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_TRIGGER_EDGE: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_TRIGGER_LEVEL: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_TRIGGER_ONESHOT: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_NOTIFY_TRIGGER_PERSISTENT: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_RAW: u16 = 3u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_RDM: u16 = 4u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_SEQPACKET: u16 = 5u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOCK_STREAM: u16 = 1u16; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOL_IRLMP: u32 = 255u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOL_SOCKET: u32 = 65535u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SOMAXCONN: u32 = 5u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_ACCEPTCONN: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_BROADCAST: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_BSP_STATE: u32 = 4105u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_COMPARTMENT_ID: u32 = 12292u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_CONDITIONAL_ACCEPT: u32 = 12290u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_CONNDATA: u32 = 28672u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_CONNDATALEN: u32 = 28676u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_CONNECT_TIME: u32 = 28684u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_CONNOPT: u32 = 28673u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_CONNOPTLEN: u32 = 28677u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_DEBUG: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_DISCDATA: u32 = 28674u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_DISCDATALEN: u32 = 28678u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_DISCOPT: u32 = 28675u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_DISCOPTLEN: u32 = 28679u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_DONTROUTE: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_ERROR: u32 = 4103u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_GROUP_ID: u32 = 8193u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_GROUP_PRIORITY: u32 = 8194u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_KEEPALIVE: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_LINGER: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_MAXDG: u32 = 28681u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_MAXPATHDG: u32 = 28682u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_MAX_MSG_SIZE: u32 = 8195u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_OOBINLINE: u32 = 256u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_OPENTYPE: u32 = 28680u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_ORIGINAL_DST: u32 = 12303u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_PAUSE_ACCEPT: u32 = 12291u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_PORT_SCALABILITY: u32 = 12294u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_PROTOCOL_INFO: u32 = 8197u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_PROTOCOL_INFOA: u32 = 8196u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_PROTOCOL_INFOW: u32 = 8197u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_RANDOMIZE_PORT: u32 = 12293u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_RCVBUF: u32 = 4098u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_RCVLOWAT: u32 = 4100u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_RCVTIMEO: u32 = 4102u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_REUSEADDR: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_REUSE_MULTICASTPORT: u32 = 12296u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_REUSE_UNICASTPORT: u32 = 12295u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_SNDBUF: u32 = 4097u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_SNDLOWAT: u32 = 4099u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_SNDTIMEO: u32 = 4101u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_SYNCHRONOUS_ALERT: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_SYNCHRONOUS_NONALERT: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_TIMESTAMP: u32 = 12298u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_TIMESTAMP_ID: u32 = 12299u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_TYPE: u32 = 4104u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_UPDATE_ACCEPT_CONTEXT: u32 = 28683u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_UPDATE_CONNECT_CONTEXT: u32 = 28688u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const SO_USELOOPBACK: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn SetAddrInfoExA<'a, P0, P1>(pname: P0, pservicename: P1, paddresses: ::core::option::Option<&SOCKET_ADDRESS>, dwaddresscount: u32, lpblob: ::core::option::Option<&super::super::System::Com::BLOB>, dwflags: u32, dwnamespace: u32, lpnspid: ::core::option::Option<&::windows::core::GUID>, timeout: ::core::option::Option<&timeval>, lpoverlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPLOOKUPSERVICE_COMPLETION_ROUTINE, lpnamehandle: ::core::option::Option<&mut super::super::Foundation::HANDLE>) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCSTR>, - P1: ::std::convert::Into<::windows::core::PCSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn SetAddrInfoExA(pname: ::windows::core::PCSTR, pservicename: ::windows::core::PCSTR, paddresses: *const SOCKET_ADDRESS, dwaddresscount: u32, lpblob: *const super::super::System::Com::BLOB, dwflags: u32, dwnamespace: u32, lpnspid: *const ::windows::core::GUID, timeout: *const timeval, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void, lpnamehandle: *mut super::super::Foundation::HANDLE) -> i32; +pub union SCOPE_ID_0 { + pub Anonymous: SCOPE_ID_0_0, + pub Value: u32, +} +impl ::core::marker::Copy for SCOPE_ID_0 {} +impl ::core::clone::Clone for SCOPE_ID_0 { + fn clone(&self) -> Self { + *self } - SetAddrInfoExA(pname.into(), pservicename.into(), ::core::mem::transmute(paddresses), dwaddresscount, ::core::mem::transmute(lpblob), dwflags, dwnamespace, ::core::mem::transmute(lpnspid), ::core::mem::transmute(timeout), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine), ::core::mem::transmute(lpnamehandle)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn SetAddrInfoExW<'a, P0, P1>(pname: P0, pservicename: P1, paddresses: ::core::option::Option<&SOCKET_ADDRESS>, dwaddresscount: u32, lpblob: ::core::option::Option<&super::super::System::Com::BLOB>, dwflags: u32, dwnamespace: u32, lpnspid: ::core::option::Option<&::windows::core::GUID>, timeout: ::core::option::Option<&timeval>, lpoverlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPLOOKUPSERVICE_COMPLETION_ROUTINE, lpnamehandle: ::core::option::Option<&mut super::super::Foundation::HANDLE>) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, - P1: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn SetAddrInfoExW(pname: ::windows::core::PCWSTR, pservicename: ::windows::core::PCWSTR, paddresses: *const SOCKET_ADDRESS, dwaddresscount: u32, lpblob: *const super::super::System::Com::BLOB, dwflags: u32, dwnamespace: u32, lpnspid: *const ::windows::core::GUID, timeout: *const timeval, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void, lpnamehandle: *mut super::super::Foundation::HANDLE) -> i32; +unsafe impl ::windows::core::Abi for SCOPE_ID_0 { + type Abi = Self; +} +impl ::core::cmp::PartialEq for SCOPE_ID_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - SetAddrInfoExW(pname.into(), pservicename.into(), ::core::mem::transmute(paddresses), dwaddresscount, ::core::mem::transmute(lpblob), dwflags, dwnamespace, ::core::mem::transmute(lpnspid), ::core::mem::transmute(timeout), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine), ::core::mem::transmute(lpnamehandle)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -#[inline] -pub unsafe fn SetServiceA(dwnamespace: u32, dwoperation: SET_SERVICE_OPERATION, dwflags: u32, lpserviceinfo: &SERVICE_INFOA, lpserviceasyncinfo: ::core::option::Option<&SERVICE_ASYNC_INFO>, lpdwstatusflags: &mut u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn SetServiceA(dwnamespace: u32, dwoperation: SET_SERVICE_OPERATION, dwflags: u32, lpserviceinfo: *const SERVICE_INFOA, lpserviceasyncinfo: *const SERVICE_ASYNC_INFO, lpdwstatusflags: *mut u32) -> i32; +impl ::core::cmp::Eq for SCOPE_ID_0 {} +impl ::core::default::Default for SCOPE_ID_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - SetServiceA(dwnamespace, dwoperation, dwflags, ::core::mem::transmute(lpserviceinfo), ::core::mem::transmute(lpserviceasyncinfo), ::core::mem::transmute(lpdwstatusflags)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -#[inline] -pub unsafe fn SetServiceW(dwnamespace: u32, dwoperation: SET_SERVICE_OPERATION, dwflags: u32, lpserviceinfo: &SERVICE_INFOW, lpserviceasyncinfo: ::core::option::Option<&SERVICE_ASYNC_INFO>, lpdwstatusflags: &mut u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn SetServiceW(dwnamespace: u32, dwoperation: SET_SERVICE_OPERATION, dwflags: u32, lpserviceinfo: *const SERVICE_INFOW, lpserviceasyncinfo: *const SERVICE_ASYNC_INFO, lpdwstatusflags: *mut u32) -> i32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct SCOPE_ID_0_0 { + pub _bitfield: u32, +} +impl ::core::marker::Copy for SCOPE_ID_0_0 {} +impl ::core::clone::Clone for SCOPE_ID_0_0 { + fn clone(&self) -> Self { + *self } - SetServiceW(dwnamespace, dwoperation, dwflags, ::core::mem::transmute(lpserviceinfo), ::core::mem::transmute(lpserviceasyncinfo), ::core::mem::transmute(lpdwstatusflags)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn SetSocketMediaStreamingMode<'a, P0>(value: P0) -> ::windows::core::Result<()> -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn SetSocketMediaStreamingMode(value: super::super::Foundation::BOOL) -> ::windows::core::HRESULT; +impl ::core::fmt::Debug for SCOPE_ID_0_0 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("SCOPE_ID_0_0").field("_bitfield", &self._bitfield).finish() + } +} +unsafe impl ::windows::core::Abi for SCOPE_ID_0_0 { + type Abi = Self; +} +impl ::core::cmp::PartialEq for SCOPE_ID_0_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for SCOPE_ID_0_0 {} +impl ::core::default::Default for SCOPE_ID_0_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - SetSocketMediaStreamingMode(value.into()).ok() } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct TCPSTATE(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCPSTATE_CLOSED: TCPSTATE = TCPSTATE(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCPSTATE_LISTEN: TCPSTATE = TCPSTATE(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCPSTATE_SYN_SENT: TCPSTATE = TCPSTATE(2i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCPSTATE_SYN_RCVD: TCPSTATE = TCPSTATE(3i32); +pub struct SCOPE_LEVEL(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCPSTATE_ESTABLISHED: TCPSTATE = TCPSTATE(4i32); +pub const ScopeLevelInterface: SCOPE_LEVEL = SCOPE_LEVEL(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCPSTATE_FIN_WAIT_1: TCPSTATE = TCPSTATE(5i32); +pub const ScopeLevelLink: SCOPE_LEVEL = SCOPE_LEVEL(2i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCPSTATE_FIN_WAIT_2: TCPSTATE = TCPSTATE(6i32); +pub const ScopeLevelSubnet: SCOPE_LEVEL = SCOPE_LEVEL(3i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCPSTATE_CLOSE_WAIT: TCPSTATE = TCPSTATE(7i32); +pub const ScopeLevelAdmin: SCOPE_LEVEL = SCOPE_LEVEL(4i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCPSTATE_CLOSING: TCPSTATE = TCPSTATE(8i32); +pub const ScopeLevelSite: SCOPE_LEVEL = SCOPE_LEVEL(5i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCPSTATE_LAST_ACK: TCPSTATE = TCPSTATE(9i32); +pub const ScopeLevelOrganization: SCOPE_LEVEL = SCOPE_LEVEL(8i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCPSTATE_TIME_WAIT: TCPSTATE = TCPSTATE(10i32); +pub const ScopeLevelGlobal: SCOPE_LEVEL = SCOPE_LEVEL(14i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCPSTATE_MAX: TCPSTATE = TCPSTATE(11i32); -impl ::core::marker::Copy for TCPSTATE {} -impl ::core::clone::Clone for TCPSTATE { +pub const ScopeLevelCount: SCOPE_LEVEL = SCOPE_LEVEL(16i32); +impl ::core::marker::Copy for SCOPE_LEVEL {} +impl ::core::clone::Clone for SCOPE_LEVEL { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for TCPSTATE { +impl ::core::default::Default for SCOPE_LEVEL { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for TCPSTATE { +unsafe impl ::windows::core::Abi for SCOPE_LEVEL { type Abi = Self; } -impl ::core::fmt::Debug for TCPSTATE { +impl ::core::fmt::Debug for SCOPE_LEVEL { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("TCPSTATE").field(&self.0).finish() + f.debug_tuple("SCOPE_LEVEL").field(&self.0).finish() } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct TCP_ACK_FREQUENCY_PARAMETERS { - pub TcpDelayedAckFrequency: u8, -} -impl ::core::marker::Copy for TCP_ACK_FREQUENCY_PARAMETERS {} -impl ::core::clone::Clone for TCP_ACK_FREQUENCY_PARAMETERS { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for TCP_ACK_FREQUENCY_PARAMETERS { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("TCP_ACK_FREQUENCY_PARAMETERS").field("TcpDelayedAckFrequency", &self.TcpDelayedAckFrequency).finish() - } -} -unsafe impl ::windows::core::Abi for TCP_ACK_FREQUENCY_PARAMETERS { - type Abi = Self; -} -impl ::core::cmp::PartialEq for TCP_ACK_FREQUENCY_PARAMETERS { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for TCP_ACK_FREQUENCY_PARAMETERS {} -impl ::core::default::Default for TCP_ACK_FREQUENCY_PARAMETERS { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_ATMARK: u32 = 8u32; +pub const SD_BOTH: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_BSDURGENT: u32 = 28672u32; +pub const SD_RECEIVE: u32 = 0u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_CONGESTION_ALGORITHM: u32 = 12u32; +pub const SD_SEND: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_DELAY_FIN_ACK: u32 = 13u32; +pub const SECURITY_PROTOCOL_NONE: u32 = 0u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_EXPEDITED_1122: u32 = 2u32; +pub const SENDER_DEFAULT_LATE_JOINER_PERCENTAGE: u32 = 0u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_FAIL_CONNECT_ON_ICMP_ERROR: u32 = 18u32; +pub const SENDER_DEFAULT_RATE_KBITS_PER_SEC: u32 = 56u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_FASTOPEN: u32 = 15u32; +pub const SENDER_DEFAULT_WINDOW_ADV_PERCENTAGE: u32 = 15u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_ICMP_ERROR_INFO: u32 = 19u32; +pub const SENDER_MAX_LATE_JOINER_PERCENTAGE: u32 = 75u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct TCP_ICW_LEVEL(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_ICW_LEVEL_DEFAULT: TCP_ICW_LEVEL = TCP_ICW_LEVEL(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_ICW_LEVEL_HIGH: TCP_ICW_LEVEL = TCP_ICW_LEVEL(1i32); +pub struct SEND_RECV_FLAGS(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_ICW_LEVEL_VERY_HIGH: TCP_ICW_LEVEL = TCP_ICW_LEVEL(2i32); +pub const MSG_OOB: SEND_RECV_FLAGS = SEND_RECV_FLAGS(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_ICW_LEVEL_AGGRESSIVE: TCP_ICW_LEVEL = TCP_ICW_LEVEL(3i32); +pub const MSG_PEEK: SEND_RECV_FLAGS = SEND_RECV_FLAGS(2i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_ICW_LEVEL_EXPERIMENTAL: TCP_ICW_LEVEL = TCP_ICW_LEVEL(4i32); +pub const MSG_DONTROUTE: SEND_RECV_FLAGS = SEND_RECV_FLAGS(4i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_ICW_LEVEL_COMPAT: TCP_ICW_LEVEL = TCP_ICW_LEVEL(254i32); +pub const MSG_WAITALL: SEND_RECV_FLAGS = SEND_RECV_FLAGS(8i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_ICW_LEVEL_MAX: TCP_ICW_LEVEL = TCP_ICW_LEVEL(255i32); -impl ::core::marker::Copy for TCP_ICW_LEVEL {} -impl ::core::clone::Clone for TCP_ICW_LEVEL { +pub const MSG_PUSH_IMMEDIATE: SEND_RECV_FLAGS = SEND_RECV_FLAGS(32i32); +impl ::core::marker::Copy for SEND_RECV_FLAGS {} +impl ::core::clone::Clone for SEND_RECV_FLAGS { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for TCP_ICW_LEVEL { +impl ::core::default::Default for SEND_RECV_FLAGS { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for TCP_ICW_LEVEL { +unsafe impl ::windows::core::Abi for SEND_RECV_FLAGS { type Abi = Self; } -impl ::core::fmt::Debug for TCP_ICW_LEVEL { +impl ::core::fmt::Debug for SEND_RECV_FLAGS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("TCP_ICW_LEVEL").field(&self.0).finish() + f.debug_tuple("SEND_RECV_FLAGS").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for SEND_RECV_FLAGS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for SEND_RECV_FLAGS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for SEND_RECV_FLAGS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for SEND_RECV_FLAGS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for SEND_RECV_FLAGS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct TCP_ICW_PARAMETERS { - pub Level: TCP_ICW_LEVEL, +pub struct SERVICE_ADDRESS { + pub dwAddressType: u32, + pub dwAddressFlags: u32, + pub dwAddressLength: u32, + pub dwPrincipalLength: u32, + pub lpAddress: *mut u8, + pub lpPrincipal: *mut u8, } -impl ::core::marker::Copy for TCP_ICW_PARAMETERS {} -impl ::core::clone::Clone for TCP_ICW_PARAMETERS { +impl ::core::marker::Copy for SERVICE_ADDRESS {} +impl ::core::clone::Clone for SERVICE_ADDRESS { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for TCP_ICW_PARAMETERS { +impl ::core::fmt::Debug for SERVICE_ADDRESS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("TCP_ICW_PARAMETERS").field("Level", &self.Level).finish() + f.debug_struct("SERVICE_ADDRESS").field("dwAddressType", &self.dwAddressType).field("dwAddressFlags", &self.dwAddressFlags).field("dwAddressLength", &self.dwAddressLength).field("dwPrincipalLength", &self.dwPrincipalLength).field("lpAddress", &self.lpAddress).field("lpPrincipal", &self.lpPrincipal).finish() } } -unsafe impl ::windows::core::Abi for TCP_ICW_PARAMETERS { +unsafe impl ::windows::core::Abi for SERVICE_ADDRESS { type Abi = Self; } -impl ::core::cmp::PartialEq for TCP_ICW_PARAMETERS { +impl ::core::cmp::PartialEq for SERVICE_ADDRESS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for TCP_ICW_PARAMETERS {} -impl ::core::default::Default for TCP_ICW_PARAMETERS { +impl ::core::cmp::Eq for SERVICE_ADDRESS {} +impl ::core::default::Default for SERVICE_ADDRESS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct TCP_INFO_v0 { - pub State: TCPSTATE, - pub Mss: u32, - pub ConnectionTimeMs: u64, - pub TimestampsEnabled: super::super::Foundation::BOOLEAN, - pub RttUs: u32, - pub MinRttUs: u32, - pub BytesInFlight: u32, - pub Cwnd: u32, - pub SndWnd: u32, - pub RcvWnd: u32, - pub RcvBuf: u32, - pub BytesOut: u64, - pub BytesIn: u64, - pub BytesReordered: u32, - pub BytesRetrans: u32, - pub FastRetrans: u32, - pub DupAcksIn: u32, - pub TimeoutEpisodes: u32, - pub SynRetrans: u8, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct SERVICE_ADDRESSES { + pub dwAddressCount: u32, + pub Addresses: [SERVICE_ADDRESS; 1], } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for TCP_INFO_v0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for TCP_INFO_v0 { +impl ::core::marker::Copy for SERVICE_ADDRESSES {} +impl ::core::clone::Clone for SERVICE_ADDRESSES { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for TCP_INFO_v0 { +impl ::core::fmt::Debug for SERVICE_ADDRESSES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("TCP_INFO_v0") - .field("State", &self.State) - .field("Mss", &self.Mss) - .field("ConnectionTimeMs", &self.ConnectionTimeMs) - .field("TimestampsEnabled", &self.TimestampsEnabled) - .field("RttUs", &self.RttUs) - .field("MinRttUs", &self.MinRttUs) - .field("BytesInFlight", &self.BytesInFlight) - .field("Cwnd", &self.Cwnd) - .field("SndWnd", &self.SndWnd) - .field("RcvWnd", &self.RcvWnd) - .field("RcvBuf", &self.RcvBuf) - .field("BytesOut", &self.BytesOut) - .field("BytesIn", &self.BytesIn) - .field("BytesReordered", &self.BytesReordered) - .field("BytesRetrans", &self.BytesRetrans) - .field("FastRetrans", &self.FastRetrans) - .field("DupAcksIn", &self.DupAcksIn) - .field("TimeoutEpisodes", &self.TimeoutEpisodes) - .field("SynRetrans", &self.SynRetrans) - .finish() + f.debug_struct("SERVICE_ADDRESSES").field("dwAddressCount", &self.dwAddressCount).field("Addresses", &self.Addresses).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for TCP_INFO_v0 { +unsafe impl ::windows::core::Abi for SERVICE_ADDRESSES { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for TCP_INFO_v0 { +impl ::core::cmp::PartialEq for SERVICE_ADDRESSES { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for TCP_INFO_v0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for TCP_INFO_v0 { +impl ::core::cmp::Eq for SERVICE_ADDRESSES {} +impl ::core::default::Default for SERVICE_ADDRESSES { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_ADDRESS_FLAG_RPC_CN: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_ADDRESS_FLAG_RPC_DG: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_ADDRESS_FLAG_RPC_NB: u32 = 4u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct TCP_INFO_v1 { - pub State: TCPSTATE, - pub Mss: u32, - pub ConnectionTimeMs: u64, - pub TimestampsEnabled: super::super::Foundation::BOOLEAN, - pub RttUs: u32, - pub MinRttUs: u32, - pub BytesInFlight: u32, - pub Cwnd: u32, - pub SndWnd: u32, - pub RcvWnd: u32, - pub RcvBuf: u32, - pub BytesOut: u64, - pub BytesIn: u64, - pub BytesReordered: u32, - pub BytesRetrans: u32, - pub FastRetrans: u32, - pub DupAcksIn: u32, - pub TimeoutEpisodes: u32, - pub SynRetrans: u8, - pub SndLimTransRwin: u32, - pub SndLimTimeRwin: u32, - pub SndLimBytesRwin: u64, - pub SndLimTransCwnd: u32, - pub SndLimTimeCwnd: u32, - pub SndLimBytesCwnd: u64, - pub SndLimTransSnd: u32, - pub SndLimTimeSnd: u32, - pub SndLimBytesSnd: u64, +pub struct SERVICE_ASYNC_INFO { + pub lpServiceCallbackProc: LPSERVICE_CALLBACK_PROC, + pub lParam: super::super::Foundation::LPARAM, + pub hAsyncTaskHandle: super::super::Foundation::HANDLE, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for TCP_INFO_v1 {} +impl ::core::marker::Copy for SERVICE_ASYNC_INFO {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for TCP_INFO_v1 { +impl ::core::clone::Clone for SERVICE_ASYNC_INFO { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for TCP_INFO_v1 { +impl ::core::fmt::Debug for SERVICE_ASYNC_INFO { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("TCP_INFO_v1") - .field("State", &self.State) - .field("Mss", &self.Mss) - .field("ConnectionTimeMs", &self.ConnectionTimeMs) - .field("TimestampsEnabled", &self.TimestampsEnabled) - .field("RttUs", &self.RttUs) - .field("MinRttUs", &self.MinRttUs) - .field("BytesInFlight", &self.BytesInFlight) - .field("Cwnd", &self.Cwnd) - .field("SndWnd", &self.SndWnd) - .field("RcvWnd", &self.RcvWnd) - .field("RcvBuf", &self.RcvBuf) - .field("BytesOut", &self.BytesOut) - .field("BytesIn", &self.BytesIn) - .field("BytesReordered", &self.BytesReordered) - .field("BytesRetrans", &self.BytesRetrans) - .field("FastRetrans", &self.FastRetrans) - .field("DupAcksIn", &self.DupAcksIn) - .field("TimeoutEpisodes", &self.TimeoutEpisodes) - .field("SynRetrans", &self.SynRetrans) - .field("SndLimTransRwin", &self.SndLimTransRwin) - .field("SndLimTimeRwin", &self.SndLimTimeRwin) - .field("SndLimBytesRwin", &self.SndLimBytesRwin) - .field("SndLimTransCwnd", &self.SndLimTransCwnd) - .field("SndLimTimeCwnd", &self.SndLimTimeCwnd) - .field("SndLimBytesCwnd", &self.SndLimBytesCwnd) - .field("SndLimTransSnd", &self.SndLimTransSnd) - .field("SndLimTimeSnd", &self.SndLimTimeSnd) - .field("SndLimBytesSnd", &self.SndLimBytesSnd) - .finish() + f.debug_struct("SERVICE_ASYNC_INFO").field("lpServiceCallbackProc", &self.lpServiceCallbackProc.map(|f| f as usize)).field("lParam", &self.lParam).field("hAsyncTaskHandle", &self.hAsyncTaskHandle).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for TCP_INFO_v1 { +unsafe impl ::windows::core::Abi for SERVICE_ASYNC_INFO { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for TCP_INFO_v1 { +impl ::core::cmp::PartialEq for SERVICE_ASYNC_INFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for TCP_INFO_v1 {} +impl ::core::cmp::Eq for SERVICE_ASYNC_INFO {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for TCP_INFO_v1 { +impl ::core::default::Default for SERVICE_ASYNC_INFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_INITIAL_RTO_DEFAULT_MAX_SYN_RETRANSMISSIONS: u32 = 0u32; +pub const SERVICE_FLAG_DEFER: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_INITIAL_RTO_DEFAULT_RTT: u32 = 0u32; +pub const SERVICE_FLAG_HARD: u32 = 2u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct TCP_INITIAL_RTO_PARAMETERS { - pub Rtt: u16, - pub MaxSynRetransmissions: u8, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Com\"`*"] +#[cfg(feature = "Win32_System_Com")] +pub struct SERVICE_INFOA { + pub lpServiceType: *mut ::windows::core::GUID, + pub lpServiceName: ::windows::core::PSTR, + pub lpComment: ::windows::core::PSTR, + pub lpLocale: ::windows::core::PSTR, + pub dwDisplayHint: RESOURCE_DISPLAY_TYPE, + pub dwVersion: u32, + pub dwTime: u32, + pub lpMachineName: ::windows::core::PSTR, + pub lpServiceAddress: *mut SERVICE_ADDRESSES, + pub ServiceSpecificInfo: super::super::System::Com::BLOB, } -impl ::core::marker::Copy for TCP_INITIAL_RTO_PARAMETERS {} -impl ::core::clone::Clone for TCP_INITIAL_RTO_PARAMETERS { +#[cfg(feature = "Win32_System_Com")] +impl ::core::marker::Copy for SERVICE_INFOA {} +#[cfg(feature = "Win32_System_Com")] +impl ::core::clone::Clone for SERVICE_INFOA { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for TCP_INITIAL_RTO_PARAMETERS { +#[cfg(feature = "Win32_System_Com")] +impl ::core::fmt::Debug for SERVICE_INFOA { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("TCP_INITIAL_RTO_PARAMETERS").field("Rtt", &self.Rtt).field("MaxSynRetransmissions", &self.MaxSynRetransmissions).finish() + f.debug_struct("SERVICE_INFOA").field("lpServiceType", &self.lpServiceType).field("lpServiceName", &self.lpServiceName).field("lpComment", &self.lpComment).field("lpLocale", &self.lpLocale).field("dwDisplayHint", &self.dwDisplayHint).field("dwVersion", &self.dwVersion).field("dwTime", &self.dwTime).field("lpMachineName", &self.lpMachineName).field("lpServiceAddress", &self.lpServiceAddress).field("ServiceSpecificInfo", &self.ServiceSpecificInfo).finish() } } -unsafe impl ::windows::core::Abi for TCP_INITIAL_RTO_PARAMETERS { +#[cfg(feature = "Win32_System_Com")] +unsafe impl ::windows::core::Abi for SERVICE_INFOA { type Abi = Self; } -impl ::core::cmp::PartialEq for TCP_INITIAL_RTO_PARAMETERS { +#[cfg(feature = "Win32_System_Com")] +impl ::core::cmp::PartialEq for SERVICE_INFOA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for TCP_INITIAL_RTO_PARAMETERS {} -impl ::core::default::Default for TCP_INITIAL_RTO_PARAMETERS { +#[cfg(feature = "Win32_System_Com")] +impl ::core::cmp::Eq for SERVICE_INFOA {} +#[cfg(feature = "Win32_System_Com")] +impl ::core::default::Default for SERVICE_INFOA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_KEEPALIVE: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_KEEPCNT: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_KEEPIDLE: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_KEEPINTVL: u32 = 17u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_MAXRT: u32 = 5u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_MAXRTMS: u32 = 14u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_MAXSEG: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_NODELAY: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_NOSYNRETRIES: u32 = 9u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_NOURG: u32 = 7u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_OFFLOAD_NOT_PREFERRED: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_OFFLOAD_NO_PREFERENCE: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_OFFLOAD_PREFERENCE: u32 = 11u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_OFFLOAD_PREFERRED: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_STDURG: u32 = 6u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TCP_TIMESTAMPS: u32 = 10u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TF_DISCONNECT: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TF_REUSE_SOCKET: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TF_USE_DEFAULT_WORKER: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TF_USE_KERNEL_APC: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TF_USE_SYSTEM_THREAD: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TF_WRITE_BEHIND: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_ACK: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_CWR: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_ECE: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_FIN: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_NETDEV: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_OPT_EOL: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_OPT_FASTOPEN: u32 = 34u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_OPT_MSS: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_OPT_NOP: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_OPT_SACK: u32 = 5u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_OPT_SACK_PERMITTED: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_OPT_TS: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_OPT_WS: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_PSH: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_RST: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_SYN: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_TAPI: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TH_URG: u32 = 32u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct TIMESTAMPING_CONFIG { - pub Flags: u32, - pub TxTimestampsBuffered: u16, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Com\"`*"] +#[cfg(feature = "Win32_System_Com")] +pub struct SERVICE_INFOW { + pub lpServiceType: *mut ::windows::core::GUID, + pub lpServiceName: ::windows::core::PWSTR, + pub lpComment: ::windows::core::PWSTR, + pub lpLocale: ::windows::core::PWSTR, + pub dwDisplayHint: RESOURCE_DISPLAY_TYPE, + pub dwVersion: u32, + pub dwTime: u32, + pub lpMachineName: ::windows::core::PWSTR, + pub lpServiceAddress: *mut SERVICE_ADDRESSES, + pub ServiceSpecificInfo: super::super::System::Com::BLOB, } -impl ::core::marker::Copy for TIMESTAMPING_CONFIG {} -impl ::core::clone::Clone for TIMESTAMPING_CONFIG { +#[cfg(feature = "Win32_System_Com")] +impl ::core::marker::Copy for SERVICE_INFOW {} +#[cfg(feature = "Win32_System_Com")] +impl ::core::clone::Clone for SERVICE_INFOW { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for TIMESTAMPING_CONFIG { +#[cfg(feature = "Win32_System_Com")] +impl ::core::fmt::Debug for SERVICE_INFOW { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("TIMESTAMPING_CONFIG").field("Flags", &self.Flags).field("TxTimestampsBuffered", &self.TxTimestampsBuffered).finish() + f.debug_struct("SERVICE_INFOW").field("lpServiceType", &self.lpServiceType).field("lpServiceName", &self.lpServiceName).field("lpComment", &self.lpComment).field("lpLocale", &self.lpLocale).field("dwDisplayHint", &self.dwDisplayHint).field("dwVersion", &self.dwVersion).field("dwTime", &self.dwTime).field("lpMachineName", &self.lpMachineName).field("lpServiceAddress", &self.lpServiceAddress).field("ServiceSpecificInfo", &self.ServiceSpecificInfo).finish() } } -unsafe impl ::windows::core::Abi for TIMESTAMPING_CONFIG { +#[cfg(feature = "Win32_System_Com")] +unsafe impl ::windows::core::Abi for SERVICE_INFOW { type Abi = Self; } -impl ::core::cmp::PartialEq for TIMESTAMPING_CONFIG { +#[cfg(feature = "Win32_System_Com")] +impl ::core::cmp::PartialEq for SERVICE_INFOW { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for TIMESTAMPING_CONFIG {} -impl ::core::default::Default for TIMESTAMPING_CONFIG { +#[cfg(feature = "Win32_System_Com")] +impl ::core::cmp::Eq for SERVICE_INFOW {} +#[cfg(feature = "Win32_System_Com")] +impl ::core::default::Default for SERVICE_INFOW { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TIMESTAMPING_FLAG_RX: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TIMESTAMPING_FLAG_TX: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TNS_PLAN_CARRIER_ID_CODE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TNS_TYPE_NATIONAL: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TP_DISCONNECT: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TP_ELEMENT_EOP: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TP_ELEMENT_FILE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TP_ELEMENT_MEMORY: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TP_REUSE_SOCKET: u32 = 2u32; +pub const SERVICE_LOCAL: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TP_USE_DEFAULT_WORKER: u32 = 0u32; +pub const SERVICE_MULTIPLE: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TP_USE_KERNEL_APC: u32 = 32u32; +pub const SERVICE_RESOURCE: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TP_USE_SYSTEM_THREAD: u32 = 16u32; +pub const SERVICE_SERVICE: u32 = 2u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct TRANSMIT_FILE_BUFFERS { - pub Head: *mut ::core::ffi::c_void, - pub HeadLength: u32, - pub Tail: *mut ::core::ffi::c_void, - pub TailLength: u32, +pub struct SERVICE_TYPE_INFO { + pub dwTypeNameOffset: u32, + pub dwValueCount: u32, + pub Values: [SERVICE_TYPE_VALUE; 1], } -impl ::core::marker::Copy for TRANSMIT_FILE_BUFFERS {} -impl ::core::clone::Clone for TRANSMIT_FILE_BUFFERS { +impl ::core::marker::Copy for SERVICE_TYPE_INFO {} +impl ::core::clone::Clone for SERVICE_TYPE_INFO { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for TRANSMIT_FILE_BUFFERS { +impl ::core::fmt::Debug for SERVICE_TYPE_INFO { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("TRANSMIT_FILE_BUFFERS").field("Head", &self.Head).field("HeadLength", &self.HeadLength).field("Tail", &self.Tail).field("TailLength", &self.TailLength).finish() + f.debug_struct("SERVICE_TYPE_INFO").field("dwTypeNameOffset", &self.dwTypeNameOffset).field("dwValueCount", &self.dwValueCount).field("Values", &self.Values).finish() } } -unsafe impl ::windows::core::Abi for TRANSMIT_FILE_BUFFERS { +unsafe impl ::windows::core::Abi for SERVICE_TYPE_INFO { type Abi = Self; } -impl ::core::cmp::PartialEq for TRANSMIT_FILE_BUFFERS { +impl ::core::cmp::PartialEq for SERVICE_TYPE_INFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for TRANSMIT_FILE_BUFFERS {} -impl ::core::default::Default for TRANSMIT_FILE_BUFFERS { +impl ::core::cmp::Eq for SERVICE_TYPE_INFO {} +impl ::core::default::Default for SERVICE_TYPE_INFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct TRANSMIT_PACKETS_ELEMENT { - pub dwElFlags: u32, - pub cLength: u32, - pub Anonymous: TRANSMIT_PACKETS_ELEMENT_0, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct SERVICE_TYPE_INFO_ABSA { + pub lpTypeName: ::windows::core::PSTR, + pub dwValueCount: u32, + pub Values: [SERVICE_TYPE_VALUE_ABSA; 1], } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for TRANSMIT_PACKETS_ELEMENT {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for TRANSMIT_PACKETS_ELEMENT { +impl ::core::marker::Copy for SERVICE_TYPE_INFO_ABSA {} +impl ::core::clone::Clone for SERVICE_TYPE_INFO_ABSA { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for TRANSMIT_PACKETS_ELEMENT { +impl ::core::fmt::Debug for SERVICE_TYPE_INFO_ABSA { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("SERVICE_TYPE_INFO_ABSA").field("lpTypeName", &self.lpTypeName).field("dwValueCount", &self.dwValueCount).field("Values", &self.Values).finish() + } +} +unsafe impl ::windows::core::Abi for SERVICE_TYPE_INFO_ABSA { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for TRANSMIT_PACKETS_ELEMENT { +impl ::core::cmp::PartialEq for SERVICE_TYPE_INFO_ABSA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for TRANSMIT_PACKETS_ELEMENT {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for TRANSMIT_PACKETS_ELEMENT { +impl ::core::cmp::Eq for SERVICE_TYPE_INFO_ABSA {} +impl ::core::default::Default for SERVICE_TYPE_INFO_ABSA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub union TRANSMIT_PACKETS_ELEMENT_0 { - pub Anonymous: TRANSMIT_PACKETS_ELEMENT_0_0, - pub pBuffer: *mut ::core::ffi::c_void, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct SERVICE_TYPE_INFO_ABSW { + pub lpTypeName: ::windows::core::PWSTR, + pub dwValueCount: u32, + pub Values: [SERVICE_TYPE_VALUE_ABSW; 1], } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for TRANSMIT_PACKETS_ELEMENT_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for TRANSMIT_PACKETS_ELEMENT_0 { +impl ::core::marker::Copy for SERVICE_TYPE_INFO_ABSW {} +impl ::core::clone::Clone for SERVICE_TYPE_INFO_ABSW { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for TRANSMIT_PACKETS_ELEMENT_0 { +impl ::core::fmt::Debug for SERVICE_TYPE_INFO_ABSW { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("SERVICE_TYPE_INFO_ABSW").field("lpTypeName", &self.lpTypeName).field("dwValueCount", &self.dwValueCount).field("Values", &self.Values).finish() + } +} +unsafe impl ::windows::core::Abi for SERVICE_TYPE_INFO_ABSW { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for TRANSMIT_PACKETS_ELEMENT_0 { +impl ::core::cmp::PartialEq for SERVICE_TYPE_INFO_ABSW { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for TRANSMIT_PACKETS_ELEMENT_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for TRANSMIT_PACKETS_ELEMENT_0 { +impl ::core::cmp::Eq for SERVICE_TYPE_INFO_ABSW {} +impl ::core::default::Default for SERVICE_TYPE_INFO_ABSW { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct TRANSMIT_PACKETS_ELEMENT_0_0 { - pub nFileOffset: i64, - pub hFile: super::super::Foundation::HANDLE, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct SERVICE_TYPE_VALUE { + pub dwNameSpace: u32, + pub dwValueType: u32, + pub dwValueSize: u32, + pub dwValueNameOffset: u32, + pub dwValueOffset: u32, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for TRANSMIT_PACKETS_ELEMENT_0_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for TRANSMIT_PACKETS_ELEMENT_0_0 { +impl ::core::marker::Copy for SERVICE_TYPE_VALUE {} +impl ::core::clone::Clone for SERVICE_TYPE_VALUE { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for TRANSMIT_PACKETS_ELEMENT_0_0 { +impl ::core::fmt::Debug for SERVICE_TYPE_VALUE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("TRANSMIT_PACKETS_ELEMENT_0_0").field("nFileOffset", &self.nFileOffset).field("hFile", &self.hFile).finish() + f.debug_struct("SERVICE_TYPE_VALUE").field("dwNameSpace", &self.dwNameSpace).field("dwValueType", &self.dwValueType).field("dwValueSize", &self.dwValueSize).field("dwValueNameOffset", &self.dwValueNameOffset).field("dwValueOffset", &self.dwValueOffset).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for TRANSMIT_PACKETS_ELEMENT_0_0 { +unsafe impl ::windows::core::Abi for SERVICE_TYPE_VALUE { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for TRANSMIT_PACKETS_ELEMENT_0_0 { +impl ::core::cmp::PartialEq for SERVICE_TYPE_VALUE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for TRANSMIT_PACKETS_ELEMENT_0_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for TRANSMIT_PACKETS_ELEMENT_0_0 { +impl ::core::cmp::Eq for SERVICE_TYPE_VALUE {} +impl ::core::default::Default for SERVICE_TYPE_VALUE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct TRANSPORT_SETTING_ID { - pub Guid: ::windows::core::GUID, +pub struct SERVICE_TYPE_VALUE_ABSA { + pub dwNameSpace: u32, + pub dwValueType: u32, + pub dwValueSize: u32, + pub lpValueName: ::windows::core::PSTR, + pub lpValue: *mut ::core::ffi::c_void, } -impl ::core::marker::Copy for TRANSPORT_SETTING_ID {} -impl ::core::clone::Clone for TRANSPORT_SETTING_ID { +impl ::core::marker::Copy for SERVICE_TYPE_VALUE_ABSA {} +impl ::core::clone::Clone for SERVICE_TYPE_VALUE_ABSA { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for TRANSPORT_SETTING_ID { +impl ::core::fmt::Debug for SERVICE_TYPE_VALUE_ABSA { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("TRANSPORT_SETTING_ID").field("Guid", &self.Guid).finish() + f.debug_struct("SERVICE_TYPE_VALUE_ABSA").field("dwNameSpace", &self.dwNameSpace).field("dwValueType", &self.dwValueType).field("dwValueSize", &self.dwValueSize).field("lpValueName", &self.lpValueName).field("lpValue", &self.lpValue).finish() } } -unsafe impl ::windows::core::Abi for TRANSPORT_SETTING_ID { +unsafe impl ::windows::core::Abi for SERVICE_TYPE_VALUE_ABSA { type Abi = Self; } -impl ::core::cmp::PartialEq for TRANSPORT_SETTING_ID { +impl ::core::cmp::PartialEq for SERVICE_TYPE_VALUE_ABSA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for TRANSPORT_SETTING_ID {} -impl ::core::default::Default for TRANSPORT_SETTING_ID { +impl ::core::cmp::Eq for SERVICE_TYPE_VALUE_ABSA {} +impl ::core::default::Default for SERVICE_TYPE_VALUE_ABSA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TR_END_TO_END: u32 = 1u32; +pub struct SERVICE_TYPE_VALUE_ABSW { + pub dwNameSpace: u32, + pub dwValueType: u32, + pub dwValueSize: u32, + pub lpValueName: ::windows::core::PWSTR, + pub lpValue: *mut ::core::ffi::c_void, +} +impl ::core::marker::Copy for SERVICE_TYPE_VALUE_ABSW {} +impl ::core::clone::Clone for SERVICE_TYPE_VALUE_ABSW { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for SERVICE_TYPE_VALUE_ABSW { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("SERVICE_TYPE_VALUE_ABSW").field("dwNameSpace", &self.dwNameSpace).field("dwValueType", &self.dwValueType).field("dwValueSize", &self.dwValueSize).field("lpValueName", &self.lpValueName).field("lpValue", &self.lpValue).finish() + } +} +unsafe impl ::windows::core::Abi for SERVICE_TYPE_VALUE_ABSW { + type Abi = Self; +} +impl ::core::cmp::PartialEq for SERVICE_TYPE_VALUE_ABSW { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for SERVICE_TYPE_VALUE_ABSW {} +impl ::core::default::Default for SERVICE_TYPE_VALUE_ABSW { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TR_NOIND: u32 = 0u32; +pub const SERVICE_TYPE_VALUE_CONN: &str = "ConnectionOriented"; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TR_NO_END_TO_END: u32 = 2u32; +pub const SERVICE_TYPE_VALUE_CONNA: &str = "ConnectionOriented"; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TT_CBR: u32 = 4u32; +pub const SERVICE_TYPE_VALUE_CONNW: &str = "ConnectionOriented"; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TT_NOIND: u32 = 0u32; +pub const SERVICE_TYPE_VALUE_IPXPORTA: &str = "IpxSocket"; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TT_VBR: u32 = 8u32; +pub const SERVICE_TYPE_VALUE_IPXPORTW: &str = "IpxSocket"; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_TYPE_VALUE_OBJECTID: &str = "ObjectId"; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_TYPE_VALUE_OBJECTIDA: &str = "ObjectId"; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_TYPE_VALUE_OBJECTIDW: &str = "ObjectId"; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_TYPE_VALUE_SAPID: &str = "SapId"; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_TYPE_VALUE_SAPIDA: &str = "SapId"; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_TYPE_VALUE_SAPIDW: &str = "SapId"; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_TYPE_VALUE_TCPPORT: &str = "TcpPort"; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_TYPE_VALUE_TCPPORTA: &str = "TcpPort"; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_TYPE_VALUE_TCPPORTW: &str = "TcpPort"; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_TYPE_VALUE_UDPPORT: &str = "UdpPort"; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_TYPE_VALUE_UDPPORTA: &str = "UdpPort"; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_TYPE_VALUE_UDPPORTW: &str = "UdpPort"; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct TUNNEL_SUB_TYPE(pub i32); +pub struct SET_SERVICE_OPERATION(pub u32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TUNNEL_SUB_TYPE_NONE: TUNNEL_SUB_TYPE = TUNNEL_SUB_TYPE(0i32); +pub const SERVICE_REGISTER: SET_SERVICE_OPERATION = SET_SERVICE_OPERATION(1u32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TUNNEL_SUB_TYPE_CP: TUNNEL_SUB_TYPE = TUNNEL_SUB_TYPE(1i32); +pub const SERVICE_DEREGISTER: SET_SERVICE_OPERATION = SET_SERVICE_OPERATION(2u32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TUNNEL_SUB_TYPE_IPTLS: TUNNEL_SUB_TYPE = TUNNEL_SUB_TYPE(2i32); +pub const SERVICE_FLUSH: SET_SERVICE_OPERATION = SET_SERVICE_OPERATION(3u32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const TUNNEL_SUB_TYPE_HA: TUNNEL_SUB_TYPE = TUNNEL_SUB_TYPE(3i32); -impl ::core::marker::Copy for TUNNEL_SUB_TYPE {} -impl ::core::clone::Clone for TUNNEL_SUB_TYPE { +pub const SERVICE_ADD_TYPE: SET_SERVICE_OPERATION = SET_SERVICE_OPERATION(4u32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SERVICE_DELETE_TYPE: SET_SERVICE_OPERATION = SET_SERVICE_OPERATION(5u32); +impl ::core::marker::Copy for SET_SERVICE_OPERATION {} +impl ::core::clone::Clone for SET_SERVICE_OPERATION { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for TUNNEL_SUB_TYPE { +impl ::core::default::Default for SET_SERVICE_OPERATION { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for TUNNEL_SUB_TYPE { +unsafe impl ::windows::core::Abi for SET_SERVICE_OPERATION { type Abi = Self; } -impl ::core::fmt::Debug for TUNNEL_SUB_TYPE { +impl ::core::fmt::Debug for SET_SERVICE_OPERATION { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("TUNNEL_SUB_TYPE").field(&self.0).finish() - } -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn TransmitFile<'a, P0, P1>(hsocket: P0, hfile: P1, nnumberofbytestowrite: u32, nnumberofbytespersend: u32, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lptransmitbuffers: ::core::option::Option<&TRANSMIT_FILE_BUFFERS>, dwreserved: u32) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn TransmitFile(hsocket: SOCKET, hfile: super::super::Foundation::HANDLE, nnumberofbytestowrite: u32, nnumberofbytespersend: u32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lptransmitbuffers: *const TRANSMIT_FILE_BUFFERS, dwreserved: u32) -> super::super::Foundation::BOOL; + f.debug_tuple("SET_SERVICE_OPERATION").field(&self.0).finish() } - TransmitFile(hsocket.into(), hfile.into(), nnumberofbytestowrite, nnumberofbytespersend, ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lptransmitbuffers), dwreserved) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const UDP_CHECKSUM_COVERAGE: u32 = 20u32; +pub const SET_SERVICE_PARTIAL_SUCCESS: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const UDP_COALESCED_INFO: u32 = 3u32; +pub const SG_CONSTRAINED_GROUP: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const UDP_NOCHECKSUM: u32 = 1u32; +pub const SG_UNCONSTRAINED_GROUP: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const UDP_RECV_MAX_COALESCED_SIZE: u32 = 3u32; +pub const SIOCATMARK: i32 = 1074033415i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const UDP_SEND_MSG_SIZE: u32 = 2u32; +pub const SIOCGHIWAT: i32 = 1074033409i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const UNIX_PATH_MAX: u32 = 108u32; +pub const SIOCGLOWAT: i32 = 1074033411i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const UP_P2MP: u32 = 1u32; +pub const SIOCSHIWAT: i32 = -2147192064i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const UP_P2P: u32 = 0u32; -#[repr(C)] +pub const SIOCSLOWAT: i32 = -2147192062i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct VLAN_TAG { - pub Anonymous: VLAN_TAG_0, - pub Type: u16, -} -impl ::core::marker::Copy for VLAN_TAG {} -impl ::core::clone::Clone for VLAN_TAG { - fn clone(&self) -> Self { - *self - } -} -unsafe impl ::windows::core::Abi for VLAN_TAG { - type Abi = Self; -} -impl ::core::cmp::PartialEq for VLAN_TAG { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for VLAN_TAG {} -impl ::core::default::Default for VLAN_TAG { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} +pub const SIO_ABSORB_RTRALERT: u32 = 2550136837u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_ACQUIRE_PORT_RESERVATION: u32 = 2550136932u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_ADDRESS_LIST_CHANGE: u32 = 671088663u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_ADDRESS_LIST_QUERY: u32 = 1207959574u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_ADDRESS_LIST_SORT: u32 = 3355443225u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_AF_UNIX_GETPEERPID: u32 = 1476395264u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_AF_UNIX_SETBINDPARENTPATH: u32 = 2550137089u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_AF_UNIX_SETCONNPARENTPATH: u32 = 2550137090u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_APPLY_TRANSPORT_SETTING: u32 = 2550136851u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_ASSOCIATE_HANDLE: u32 = 2281701377u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_ASSOCIATE_PORT_RESERVATION: u32 = 2550136934u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_ASSOCIATE_PVC: u32 = 2417360899u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_BASE_HANDLE: u32 = 1207959586u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_BSP_HANDLE: u32 = 1207959579u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_BSP_HANDLE_POLL: u32 = 1207959581u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_BSP_HANDLE_SELECT: u32 = 1207959580u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_CPU_AFFINITY: u32 = 2550136853u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_DELETE_PEER_TARGET_NAME: u32 = 2550137035u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_ENABLE_CIRCULAR_QUEUEING: u32 = 671088642u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_EXT_POLL: u32 = 3355443231u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_EXT_SELECT: u32 = 3355443230u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_EXT_SENDMSG: u32 = 3355443232u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_FIND_ROUTE: u32 = 1207959555u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_FLUSH: u32 = 671088644u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_GET_ATM_ADDRESS: u32 = 3491102722u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_GET_ATM_CONNECTION_ID: u32 = 1343619076u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_GET_BROADCAST_ADDRESS: u32 = 1207959557u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_GET_EXTENSION_FUNCTION_POINTER: u32 = 3355443206u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_GET_GROUP_QOS: u32 = 3355443208u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_GET_MULTIPLE_EXTENSION_FUNCTION_POINTER: u32 = 3355443236u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_GET_NUMBER_OF_ATM_DEVICES: u32 = 1343619073u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_GET_QOS: u32 = 3355443207u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_GET_TX_TIMESTAMP: u32 = 2550137066u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_INDEX_ADD_MCAST: u32 = 2550136842u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_INDEX_BIND: u32 = 2550136840u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_INDEX_DEL_MCAST: u32 = 2550136843u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_INDEX_MCASTIF: u32 = 2550136841u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_KEEPALIVE_VALS: u32 = 2550136836u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_LIMIT_BROADCASTS: u32 = 2550136839u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_LOOPBACK_FAST_PATH: u32 = 2550136848u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_MULTICAST_SCOPE: u32 = 2281701386u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_MULTIPOINT_LOOPBACK: u32 = 2281701385u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_NSP_NOTIFY_CHANGE: u32 = 2281701401u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_PRIORITY_HINT: u32 = 2550136856u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_QUERY_RSS_PROCESSOR_INFO: u32 = 1207959589u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_QUERY_RSS_SCALABILITY_INFO: u32 = 1476395218u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_QUERY_SECURITY: u32 = 3623878857u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_QUERY_TARGET_PNP_HANDLE: u32 = 1207959576u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_QUERY_TRANSPORT_SETTING: u32 = 2550136852u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_QUERY_WFP_ALE_ENDPOINT_HANDLE: u32 = 1476395213u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_QUERY_WFP_CONNECTION_REDIRECT_CONTEXT: u32 = 2550137053u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_QUERY_WFP_CONNECTION_REDIRECT_RECORDS: u32 = 2550137052u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_RCVALL: u32 = 2550136833u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_RCVALL_IF: u32 = 2550136846u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_RCVALL_IGMPMCAST: u32 = 2550136835u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_RCVALL_MCAST: u32 = 2550136834u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_RCVALL_MCAST_IF: u32 = 2550136845u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_RELEASE_PORT_RESERVATION: u32 = 2550136933u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_RESERVED_1: u32 = 2281701402u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_RESERVED_2: u32 = 2281701409u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_ROUTING_INTERFACE_CHANGE: u32 = 2281701397u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_ROUTING_INTERFACE_QUERY: u32 = 3355443220u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_SET_COMPATIBILITY_MODE: u32 = 2550137132u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_SET_GROUP_QOS: u32 = 2281701388u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_SET_PEER_TARGET_NAME: u32 = 2550137034u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_SET_PRIORITY_HINT: u32 = 2550136856u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_SET_QOS: u32 = 2281701387u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_SET_SECURITY: u32 = 2550137032u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_SET_WFP_CONNECTION_REDIRECT_RECORDS: u32 = 2550137054u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_SOCKET_CLOSE_NOTIFY: u32 = 2550136845u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_SOCKET_USAGE_NOTIFICATION: u32 = 2550137036u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_TCP_INFO: u32 = 3623878695u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_TCP_INITIAL_RTO: u32 = 2550136849u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_TCP_SET_ACK_FREQUENCY: u32 = 2550136855u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_TCP_SET_ICW: u32 = 2550136854u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_TIMESTAMPING: u32 = 2550137067u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_TRANSLATE_HANDLE: u32 = 3355443213u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_UCAST_IF: u32 = 2550136838u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_UDP_CONNRESET: u32 = 2550136844u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIO_UDP_NETRESET: u32 = 2550136847u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIZEOF_IP_OPT_ROUTERALERT: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIZEOF_IP_OPT_ROUTING_HEADER: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIZEOF_IP_OPT_SECURITY: u32 = 11u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIZEOF_IP_OPT_STREAMIDENTIFIER: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SIZEOF_IP_OPT_TIMESTAMP_HEADER: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SI_NETWORK: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SI_USER_FAILED: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SI_USER_NOT_SCREENED: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SI_USER_PASSED: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SNAP_CONTROL: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SNAP_DSAP: u32 = 170u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union VLAN_TAG_0 { - pub Tag: u16, - pub Anonymous: VLAN_TAG_0_0, +pub struct SNAP_HEADER { + pub Dsap: u8, + pub Ssap: u8, + pub Control: u8, + pub Oui: [u8; 3], + pub Type: u16, } -impl ::core::marker::Copy for VLAN_TAG_0 {} -impl ::core::clone::Clone for VLAN_TAG_0 { +impl ::core::marker::Copy for SNAP_HEADER {} +impl ::core::clone::Clone for SNAP_HEADER { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for VLAN_TAG_0 { +impl ::core::fmt::Debug for SNAP_HEADER { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("SNAP_HEADER").field("Dsap", &self.Dsap).field("Ssap", &self.Ssap).field("Control", &self.Control).field("Oui", &self.Oui).field("Type", &self.Type).finish() + } +} +unsafe impl ::windows::core::Abi for SNAP_HEADER { type Abi = Self; } -impl ::core::cmp::PartialEq for VLAN_TAG_0 { +impl ::core::cmp::PartialEq for SNAP_HEADER { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for VLAN_TAG_0 {} -impl ::core::default::Default for VLAN_TAG_0 { +impl ::core::cmp::Eq for SNAP_HEADER {} +impl ::core::default::Default for SNAP_HEADER { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct VLAN_TAG_0_0 { - pub _bitfield: u16, +pub const SNAP_OUI: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SNAP_SSAP: u32 = 170u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct SOCKADDR { + pub sa_family: u16, + pub sa_data: [super::super::Foundation::CHAR; 14], } -impl ::core::marker::Copy for VLAN_TAG_0_0 {} -impl ::core::clone::Clone for VLAN_TAG_0_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for SOCKADDR {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for SOCKADDR { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for VLAN_TAG_0_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for SOCKADDR { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("VLAN_TAG_0_0").field("_bitfield", &self._bitfield).finish() + f.debug_struct("SOCKADDR").field("sa_family", &self.sa_family).field("sa_data", &self.sa_data).finish() } } -unsafe impl ::windows::core::Abi for VLAN_TAG_0_0 { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for SOCKADDR { type Abi = Self; } -impl ::core::cmp::PartialEq for VLAN_TAG_0_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for SOCKADDR { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for VLAN_TAG_0_0 {} -impl ::core::default::Default for VLAN_TAG_0_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for SOCKADDR {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for SOCKADDR { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const VNSPROTO_IPC: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const VNSPROTO_RELIABLE_IPC: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const VNSPROTO_SPP: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WCE_AF_IRDA: u32 = 22u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct WCE_DEVICELIST { - pub numDevice: u32, - pub Device: [WCE_IRDA_DEVICE_INFO; 1], +pub struct SOCKADDR_DL { + pub sdl_family: u16, + pub sdl_data: [u8; 8], + pub sdl_zero: [u8; 4], } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WCE_DEVICELIST {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WCE_DEVICELIST { +impl ::core::marker::Copy for SOCKADDR_DL {} +impl ::core::clone::Clone for SOCKADDR_DL { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WCE_DEVICELIST { +impl ::core::fmt::Debug for SOCKADDR_DL { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WCE_DEVICELIST").field("numDevice", &self.numDevice).field("Device", &self.Device).finish() + f.debug_struct("SOCKADDR_DL").field("sdl_family", &self.sdl_family).field("sdl_data", &self.sdl_data).field("sdl_zero", &self.sdl_zero).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WCE_DEVICELIST { +unsafe impl ::windows::core::Abi for SOCKADDR_DL { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WCE_DEVICELIST { +impl ::core::cmp::PartialEq for SOCKADDR_DL { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WCE_DEVICELIST {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WCE_DEVICELIST { +impl ::core::cmp::Eq for SOCKADDR_DL {} +impl ::core::default::Default for SOCKADDR_DL { fn default() -> Self { unsafe { ::core::mem::zeroed() } } @@ -12488,191 +11570,166 @@ impl ::core::default::Default for WCE_DEVICELIST { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct WCE_IRDA_DEVICE_INFO { - pub irdaDeviceID: [u8; 4], - pub irdaDeviceName: [super::super::Foundation::CHAR; 22], - pub Reserved: [u8; 2], +pub struct SOCKADDR_IN { + pub sin_family: u16, + pub sin_port: u16, + pub sin_addr: IN_ADDR, + pub sin_zero: [super::super::Foundation::CHAR; 8], } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WCE_IRDA_DEVICE_INFO {} +impl ::core::marker::Copy for SOCKADDR_IN {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WCE_IRDA_DEVICE_INFO { +impl ::core::clone::Clone for SOCKADDR_IN { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WCE_IRDA_DEVICE_INFO { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WCE_IRDA_DEVICE_INFO").field("irdaDeviceID", &self.irdaDeviceID).field("irdaDeviceName", &self.irdaDeviceName).field("Reserved", &self.Reserved).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WCE_IRDA_DEVICE_INFO { +unsafe impl ::windows::core::Abi for SOCKADDR_IN { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WCE_IRDA_DEVICE_INFO { +impl ::core::cmp::PartialEq for SOCKADDR_IN { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WCE_IRDA_DEVICE_INFO {} +impl ::core::cmp::Eq for SOCKADDR_IN {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WCE_IRDA_DEVICE_INFO { +impl ::core::default::Default for SOCKADDR_IN { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WCE_PF_IRDA: u32 = 22u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WINDOWS_AF_IRDA: u32 = 26u32; +impl ::core::convert::From<::std::net::SocketAddrV4> for SOCKADDR_IN { + fn from(addr: ::std::net::SocketAddrV4) -> Self { + SOCKADDR_IN { sin_family: AF_INET.0 as u16, sin_port: addr.port().to_be(), sin_addr: (*addr.ip()).into(), ..Default::default() } + } +} #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct WINDOWS_DEVICELIST { - pub numDevice: u32, - pub Device: [WINDOWS_IRDA_DEVICE_INFO; 1], +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct SOCKADDR_IN6 { + pub sin6_family: u16, + pub sin6_port: u16, + pub sin6_flowinfo: u32, + pub sin6_addr: IN6_ADDR, + pub Anonymous: SOCKADDR_IN6_0, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WINDOWS_DEVICELIST {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WINDOWS_DEVICELIST { +impl ::core::marker::Copy for SOCKADDR_IN6 {} +impl ::core::clone::Clone for SOCKADDR_IN6 { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WINDOWS_DEVICELIST { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WINDOWS_DEVICELIST").field("numDevice", &self.numDevice).field("Device", &self.Device).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WINDOWS_DEVICELIST { +unsafe impl ::windows::core::Abi for SOCKADDR_IN6 { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WINDOWS_DEVICELIST { +impl ::core::cmp::PartialEq for SOCKADDR_IN6 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WINDOWS_DEVICELIST {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WINDOWS_DEVICELIST { +impl ::core::cmp::Eq for SOCKADDR_IN6 {} +impl ::core::default::Default for SOCKADDR_IN6 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +impl ::core::convert::From<::std::net::SocketAddrV6> for SOCKADDR_IN6 { + fn from(addr: ::std::net::SocketAddrV6) -> Self { + SOCKADDR_IN6 { + sin6_family: AF_INET6.0 as u16, + sin6_port: addr.port().to_be(), + sin6_flowinfo: addr.flowinfo().to_be(), + sin6_addr: (*addr.ip()).into(), + Anonymous: SOCKADDR_IN6_0 { sin6_scope_id: addr.scope_id() }, + ..Default::default() + } + } +} #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct WINDOWS_IAS_QUERY { - pub irdaDeviceID: [u8; 4], - pub irdaClassName: [super::super::Foundation::CHAR; 64], - pub irdaAttribName: [super::super::Foundation::CHAR; 256], - pub irdaAttribType: u32, - pub irdaAttribute: WINDOWS_IAS_QUERY_0, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub union SOCKADDR_IN6_0 { + pub sin6_scope_id: u32, + pub sin6_scope_struct: SCOPE_ID, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WINDOWS_IAS_QUERY {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WINDOWS_IAS_QUERY { +impl ::core::marker::Copy for SOCKADDR_IN6_0 {} +impl ::core::clone::Clone for SOCKADDR_IN6_0 { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WINDOWS_IAS_QUERY { +unsafe impl ::windows::core::Abi for SOCKADDR_IN6_0 { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WINDOWS_IAS_QUERY { +impl ::core::cmp::PartialEq for SOCKADDR_IN6_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WINDOWS_IAS_QUERY {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WINDOWS_IAS_QUERY { +impl ::core::cmp::Eq for SOCKADDR_IN6_0 {} +impl ::core::default::Default for SOCKADDR_IN6_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub union WINDOWS_IAS_QUERY_0 { - pub irdaAttribInt: i32, - pub irdaAttribOctetSeq: WINDOWS_IAS_QUERY_0_0, - pub irdaAttribUsrStr: WINDOWS_IAS_QUERY_0_1, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct SOCKADDR_IN6_PAIR { + pub SourceAddress: *mut SOCKADDR_IN6, + pub DestinationAddress: *mut SOCKADDR_IN6, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WINDOWS_IAS_QUERY_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WINDOWS_IAS_QUERY_0 { +impl ::core::marker::Copy for SOCKADDR_IN6_PAIR {} +impl ::core::clone::Clone for SOCKADDR_IN6_PAIR { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WINDOWS_IAS_QUERY_0 { +impl ::core::fmt::Debug for SOCKADDR_IN6_PAIR { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("SOCKADDR_IN6_PAIR").field("SourceAddress", &self.SourceAddress).field("DestinationAddress", &self.DestinationAddress).finish() + } +} +unsafe impl ::windows::core::Abi for SOCKADDR_IN6_PAIR { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WINDOWS_IAS_QUERY_0 { +impl ::core::cmp::PartialEq for SOCKADDR_IN6_PAIR { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WINDOWS_IAS_QUERY_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WINDOWS_IAS_QUERY_0 { +impl ::core::cmp::Eq for SOCKADDR_IN6_PAIR {} +impl ::core::default::Default for SOCKADDR_IN6_PAIR { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct WINDOWS_IAS_QUERY_0_0 { - pub Len: u32, - pub OctetSeq: [u8; 1024], +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct SOCKADDR_IN6_W2KSP1 { + pub sin6_family: i16, + pub sin6_port: u16, + pub sin6_flowinfo: u32, + pub sin6_addr: IN6_ADDR, + pub sin6_scope_id: u32, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WINDOWS_IAS_QUERY_0_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WINDOWS_IAS_QUERY_0_0 { +impl ::core::marker::Copy for SOCKADDR_IN6_W2KSP1 {} +impl ::core::clone::Clone for SOCKADDR_IN6_W2KSP1 { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WINDOWS_IAS_QUERY_0_0 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WINDOWS_IAS_QUERY_0_0").field("Len", &self.Len).field("OctetSeq", &self.OctetSeq).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WINDOWS_IAS_QUERY_0_0 { +unsafe impl ::windows::core::Abi for SOCKADDR_IN6_W2KSP1 { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WINDOWS_IAS_QUERY_0_0 { +impl ::core::cmp::PartialEq for SOCKADDR_IN6_W2KSP1 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WINDOWS_IAS_QUERY_0_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WINDOWS_IAS_QUERY_0_0 { +impl ::core::cmp::Eq for SOCKADDR_IN6_W2KSP1 {} +impl ::core::default::Default for SOCKADDR_IN6_W2KSP1 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } @@ -12680,74 +11737,91 @@ impl ::core::default::Default for WINDOWS_IAS_QUERY_0_0 { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct WINDOWS_IAS_QUERY_0_1 { - pub Len: u32, - pub CharSet: u32, - pub UsrStr: [u8; 256], +pub union SOCKADDR_INET { + pub Ipv4: SOCKADDR_IN, + pub Ipv6: SOCKADDR_IN6, + pub si_family: u16, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WINDOWS_IAS_QUERY_0_1 {} +impl ::core::marker::Copy for SOCKADDR_INET {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WINDOWS_IAS_QUERY_0_1 { +impl ::core::clone::Clone for SOCKADDR_INET { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WINDOWS_IAS_QUERY_0_1 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WINDOWS_IAS_QUERY_0_1").field("Len", &self.Len).field("CharSet", &self.CharSet).field("UsrStr", &self.UsrStr).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WINDOWS_IAS_QUERY_0_1 { +unsafe impl ::windows::core::Abi for SOCKADDR_INET { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WINDOWS_IAS_QUERY_0_1 { +impl ::core::cmp::PartialEq for SOCKADDR_INET { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WINDOWS_IAS_QUERY_0_1 {} +impl ::core::cmp::Eq for SOCKADDR_INET {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WINDOWS_IAS_QUERY_0_1 { +impl ::core::default::Default for SOCKADDR_INET { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +impl ::core::convert::From<::std::net::SocketAddrV4> for SOCKADDR_INET { + fn from(addr: ::std::net::SocketAddrV4) -> Self { + SOCKADDR_INET { Ipv4: addr.into() } + } +} +impl ::core::convert::From<::std::net::SocketAddrV6> for SOCKADDR_INET { + fn from(addr: ::std::net::SocketAddrV6) -> Self { + SOCKADDR_INET { Ipv6: addr.into() } + } +} +impl ::core::convert::From<::std::net::SocketAddr> for SOCKADDR_INET { + fn from(addr: ::std::net::SocketAddr) -> Self { + match addr { + ::std::net::SocketAddr::V4(socket_addr_v4) => socket_addr_v4.into(), + ::std::net::SocketAddr::V6(socket_addr_v6) => socket_addr_v6.into(), + } + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct WINDOWS_IAS_SET { - pub irdaClassName: [super::super::Foundation::CHAR; 64], - pub irdaAttribName: [super::super::Foundation::CHAR; 256], - pub irdaAttribType: u32, - pub irdaAttribute: WINDOWS_IAS_SET_0, +pub struct SOCKADDR_IRDA { + pub irdaAddressFamily: u16, + pub irdaDeviceID: [u8; 4], + pub irdaServiceName: [super::super::Foundation::CHAR; 25], } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WINDOWS_IAS_SET {} +impl ::core::marker::Copy for SOCKADDR_IRDA {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WINDOWS_IAS_SET { +impl ::core::clone::Clone for SOCKADDR_IRDA { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WINDOWS_IAS_SET { +impl ::core::fmt::Debug for SOCKADDR_IRDA { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("SOCKADDR_IRDA").field("irdaAddressFamily", &self.irdaAddressFamily).field("irdaDeviceID", &self.irdaDeviceID).field("irdaServiceName", &self.irdaServiceName).finish() + } +} +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for SOCKADDR_IRDA { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WINDOWS_IAS_SET { +impl ::core::cmp::PartialEq for SOCKADDR_IRDA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WINDOWS_IAS_SET {} +impl ::core::cmp::Eq for SOCKADDR_IRDA {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WINDOWS_IAS_SET { +impl ::core::default::Default for SOCKADDR_IRDA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } @@ -12755,33 +11829,40 @@ impl ::core::default::Default for WINDOWS_IAS_SET { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub union WINDOWS_IAS_SET_0 { - pub irdaAttribInt: i32, - pub irdaAttribOctetSeq: WINDOWS_IAS_SET_0_0, - pub irdaAttribUsrStr: WINDOWS_IAS_SET_0_1, +pub struct SOCKADDR_STORAGE { + pub ss_family: u16, + pub __ss_pad1: [super::super::Foundation::CHAR; 6], + pub __ss_align: i64, + pub __ss_pad2: [super::super::Foundation::CHAR; 112], } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WINDOWS_IAS_SET_0 {} +impl ::core::marker::Copy for SOCKADDR_STORAGE {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WINDOWS_IAS_SET_0 { +impl ::core::clone::Clone for SOCKADDR_STORAGE { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WINDOWS_IAS_SET_0 { +impl ::core::fmt::Debug for SOCKADDR_STORAGE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("SOCKADDR_STORAGE").field("ss_family", &self.ss_family).field("__ss_pad1", &self.__ss_pad1).field("__ss_align", &self.__ss_align).field("__ss_pad2", &self.__ss_pad2).finish() + } +} +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for SOCKADDR_STORAGE { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WINDOWS_IAS_SET_0 { +impl ::core::cmp::PartialEq for SOCKADDR_STORAGE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WINDOWS_IAS_SET_0 {} +impl ::core::cmp::Eq for SOCKADDR_STORAGE {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WINDOWS_IAS_SET_0 { +impl ::core::default::Default for SOCKADDR_STORAGE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } @@ -12789,78 +11870,106 @@ impl ::core::default::Default for WINDOWS_IAS_SET_0 { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct WINDOWS_IAS_SET_0_0 { - pub Len: u16, - pub OctetSeq: [u8; 1024], +pub struct SOCKADDR_STORAGE_XP { + pub ss_family: i16, + pub __ss_pad1: [super::super::Foundation::CHAR; 6], + pub __ss_align: i64, + pub __ss_pad2: [super::super::Foundation::CHAR; 112], } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WINDOWS_IAS_SET_0_0 {} +impl ::core::marker::Copy for SOCKADDR_STORAGE_XP {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WINDOWS_IAS_SET_0_0 { +impl ::core::clone::Clone for SOCKADDR_STORAGE_XP { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WINDOWS_IAS_SET_0_0 { +impl ::core::fmt::Debug for SOCKADDR_STORAGE_XP { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WINDOWS_IAS_SET_0_0").field("Len", &self.Len).field("OctetSeq", &self.OctetSeq).finish() + f.debug_struct("SOCKADDR_STORAGE_XP").field("ss_family", &self.ss_family).field("__ss_pad1", &self.__ss_pad1).field("__ss_align", &self.__ss_align).field("__ss_pad2", &self.__ss_pad2).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WINDOWS_IAS_SET_0_0 { +unsafe impl ::windows::core::Abi for SOCKADDR_STORAGE_XP { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WINDOWS_IAS_SET_0_0 { +impl ::core::cmp::PartialEq for SOCKADDR_STORAGE_XP { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WINDOWS_IAS_SET_0_0 {} +impl ::core::cmp::Eq for SOCKADDR_STORAGE_XP {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WINDOWS_IAS_SET_0_0 { +impl ::core::default::Default for SOCKADDR_STORAGE_XP { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SOCKET(pub usize); +impl ::core::default::Default for SOCKET { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +impl ::core::clone::Clone for SOCKET { + fn clone(&self) -> Self { + *self + } +} +impl ::core::marker::Copy for SOCKET {} +impl ::core::fmt::Debug for SOCKET { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SOCKET").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for SOCKET { + fn from(optional: ::core::option::Option) -> SOCKET { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for SOCKET { + type Abi = Self; +} #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct WINDOWS_IAS_SET_0_1 { - pub Len: u8, - pub CharSet: u8, - pub UsrStr: [u8; 256], +pub struct SOCKET_ADDRESS { + pub lpSockaddr: *mut SOCKADDR, + pub iSockaddrLength: i32, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WINDOWS_IAS_SET_0_1 {} +impl ::core::marker::Copy for SOCKET_ADDRESS {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WINDOWS_IAS_SET_0_1 { +impl ::core::clone::Clone for SOCKET_ADDRESS { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WINDOWS_IAS_SET_0_1 { +impl ::core::fmt::Debug for SOCKET_ADDRESS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WINDOWS_IAS_SET_0_1").field("Len", &self.Len).field("CharSet", &self.CharSet).field("UsrStr", &self.UsrStr).finish() + f.debug_struct("SOCKET_ADDRESS").field("lpSockaddr", &self.lpSockaddr).field("iSockaddrLength", &self.iSockaddrLength).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WINDOWS_IAS_SET_0_1 { +unsafe impl ::windows::core::Abi for SOCKET_ADDRESS { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WINDOWS_IAS_SET_0_1 { +impl ::core::cmp::PartialEq for SOCKET_ADDRESS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WINDOWS_IAS_SET_0_1 {} +impl ::core::cmp::Eq for SOCKET_ADDRESS {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WINDOWS_IAS_SET_0_1 { +impl ::core::default::Default for SOCKET_ADDRESS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } @@ -12868,1147 +11977,1247 @@ impl ::core::default::Default for WINDOWS_IAS_SET_0_1 { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct WINDOWS_IRDA_DEVICE_INFO { - pub irdaDeviceID: [u8; 4], - pub irdaDeviceName: [super::super::Foundation::CHAR; 22], - pub irdaDeviceHints1: u8, - pub irdaDeviceHints2: u8, - pub irdaCharSet: u8, +pub struct SOCKET_ADDRESS_LIST { + pub iAddressCount: i32, + pub Address: [SOCKET_ADDRESS; 1], } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WINDOWS_IRDA_DEVICE_INFO {} +impl ::core::marker::Copy for SOCKET_ADDRESS_LIST {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WINDOWS_IRDA_DEVICE_INFO { +impl ::core::clone::Clone for SOCKET_ADDRESS_LIST { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WINDOWS_IRDA_DEVICE_INFO { +impl ::core::fmt::Debug for SOCKET_ADDRESS_LIST { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WINDOWS_IRDA_DEVICE_INFO").field("irdaDeviceID", &self.irdaDeviceID).field("irdaDeviceName", &self.irdaDeviceName).field("irdaDeviceHints1", &self.irdaDeviceHints1).field("irdaDeviceHints2", &self.irdaDeviceHints2).field("irdaCharSet", &self.irdaCharSet).finish() + f.debug_struct("SOCKET_ADDRESS_LIST").field("iAddressCount", &self.iAddressCount).field("Address", &self.Address).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WINDOWS_IRDA_DEVICE_INFO { +unsafe impl ::windows::core::Abi for SOCKET_ADDRESS_LIST { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WINDOWS_IRDA_DEVICE_INFO { +impl ::core::cmp::PartialEq for SOCKET_ADDRESS_LIST { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WINDOWS_IRDA_DEVICE_INFO {} +impl ::core::cmp::Eq for SOCKET_ADDRESS_LIST {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WINDOWS_IRDA_DEVICE_INFO { +impl ::core::default::Default for SOCKET_ADDRESS_LIST { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +pub const SOCKET_DEFAULT2_QM_POLICY: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xaec2ef9c_3a4d_4d3e_8842_239942e39a47); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WINDOWS_PF_IRDA: u32 = 26u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn WPUCompleteOverlappedRequest<'a, P0>(s: P0, lpoverlapped: &mut super::super::System::IO::OVERLAPPED, dwerror: u32, cbtransferred: u32, lperrno: &mut i32) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WPUCompleteOverlappedRequest(s: SOCKET, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, dwerror: u32, cbtransferred: u32, lperrno: *mut i32) -> i32; - } - WPUCompleteOverlappedRequest(s.into(), ::core::mem::transmute(lpoverlapped), dwerror, cbtransferred, ::core::mem::transmute(lperrno)) -} +pub const SOCKET_ERROR: i32 = -1i32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCKET_INFO_CONNECTION_ENCRYPTED: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCKET_INFO_CONNECTION_IMPERSONATED: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCKET_INFO_CONNECTION_SECURED: u32 = 1u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAAccept<'a, P0>(s: P0, addr: *mut SOCKADDR, addrlen: ::core::option::Option<&mut i32>, lpfncondition: LPCONDITIONPROC, dwcallbackdata: usize) -> SOCKET -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAAccept(s: SOCKET, addr: *mut SOCKADDR, addrlen: *mut i32, lpfncondition: *mut ::core::ffi::c_void, dwcallbackdata: usize) -> SOCKET; +pub struct SOCKET_PEER_TARGET_NAME { + pub SecurityProtocol: SOCKET_SECURITY_PROTOCOL, + pub PeerAddress: SOCKADDR_STORAGE, + pub PeerTargetNameStringLen: u32, + pub AllStrings: [u16; 1], +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for SOCKET_PEER_TARGET_NAME {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for SOCKET_PEER_TARGET_NAME { + fn clone(&self) -> Self { + *self } - WSAAccept(s.into(), ::core::mem::transmute(addr), ::core::mem::transmute(addrlen), ::core::mem::transmute(lpfncondition), dwcallbackdata) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAAddressToStringA(lpsaaddress: &[u8], lpprotocolinfo: ::core::option::Option<&WSAPROTOCOL_INFOA>, lpszaddressstring: ::windows::core::PSTR, lpdwaddressstringlength: &mut u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAAddressToStringA(lpsaaddress: *const SOCKADDR, dwaddresslength: u32, lpprotocolinfo: *const WSAPROTOCOL_INFOA, lpszaddressstring: ::windows::core::PSTR, lpdwaddressstringlength: *mut u32) -> i32; +impl ::core::fmt::Debug for SOCKET_PEER_TARGET_NAME { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("SOCKET_PEER_TARGET_NAME").field("SecurityProtocol", &self.SecurityProtocol).field("PeerAddress", &self.PeerAddress).field("PeerTargetNameStringLen", &self.PeerTargetNameStringLen).field("AllStrings", &self.AllStrings).finish() } - WSAAddressToStringA(::core::mem::transmute(lpsaaddress.as_ptr()), lpsaaddress.len() as _, ::core::mem::transmute(lpprotocolinfo), ::core::mem::transmute(lpszaddressstring), ::core::mem::transmute(lpdwaddressstringlength)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAAddressToStringW(lpsaaddress: &[u8], lpprotocolinfo: ::core::option::Option<&WSAPROTOCOL_INFOW>, lpszaddressstring: ::windows::core::PWSTR, lpdwaddressstringlength: &mut u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAAddressToStringW(lpsaaddress: *const SOCKADDR, dwaddresslength: u32, lpprotocolinfo: *const WSAPROTOCOL_INFOW, lpszaddressstring: ::windows::core::PWSTR, lpdwaddressstringlength: *mut u32) -> i32; +unsafe impl ::windows::core::Abi for SOCKET_PEER_TARGET_NAME { + type Abi = Self; +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for SOCKET_PEER_TARGET_NAME { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - WSAAddressToStringW(::core::mem::transmute(lpsaaddress.as_ptr()), lpsaaddress.len() as _, ::core::mem::transmute(lpprotocolinfo), ::core::mem::transmute(lpszaddressstring), ::core::mem::transmute(lpdwaddressstringlength)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -#[inline] -pub unsafe fn WSAAdvertiseProvider(puuidproviderid: &::windows::core::GUID, pnspv2routine: &NSPV2_ROUTINE) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAAdvertiseProvider(puuidproviderid: *const ::windows::core::GUID, pnspv2routine: *const NSPV2_ROUTINE) -> i32; - } - WSAAdvertiseProvider(::core::mem::transmute(puuidproviderid), ::core::mem::transmute(pnspv2routine)) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAAsyncGetHostByAddr<'a, P0>(hwnd: P0, wmsg: u32, addr: &[u8], r#type: i32, buf: &mut [u8]) -> super::super::Foundation::HANDLE -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAAsyncGetHostByAddr(hwnd: super::super::Foundation::HWND, wmsg: u32, addr: ::windows::core::PCSTR, len: i32, r#type: i32, buf: ::windows::core::PSTR, buflen: i32) -> super::super::Foundation::HANDLE; - } - WSAAsyncGetHostByAddr(hwnd.into(), wmsg, ::core::mem::transmute(addr.as_ptr()), addr.len() as _, r#type, ::core::mem::transmute(buf.as_ptr()), buf.len() as _) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAAsyncGetHostByName<'a, P0, P1>(hwnd: P0, wmsg: u32, name: P1, buf: &mut [u8]) -> super::super::Foundation::HANDLE -where - P0: ::std::convert::Into, - P1: ::std::convert::Into<::windows::core::PCSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAAsyncGetHostByName(hwnd: super::super::Foundation::HWND, wmsg: u32, name: ::windows::core::PCSTR, buf: ::windows::core::PSTR, buflen: i32) -> super::super::Foundation::HANDLE; - } - WSAAsyncGetHostByName(hwnd.into(), wmsg, name.into(), ::core::mem::transmute(buf.as_ptr()), buf.len() as _) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +impl ::core::cmp::Eq for SOCKET_PEER_TARGET_NAME {} #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAAsyncGetProtoByName<'a, P0, P1>(hwnd: P0, wmsg: u32, name: P1, buf: &mut [u8]) -> super::super::Foundation::HANDLE -where - P0: ::std::convert::Into, - P1: ::std::convert::Into<::windows::core::PCSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAAsyncGetProtoByName(hwnd: super::super::Foundation::HWND, wmsg: u32, name: ::windows::core::PCSTR, buf: ::windows::core::PSTR, buflen: i32) -> super::super::Foundation::HANDLE; +impl ::core::default::Default for SOCKET_PEER_TARGET_NAME { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - WSAAsyncGetProtoByName(hwnd.into(), wmsg, name.into(), ::core::mem::transmute(buf.as_ptr()), buf.len() as _) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAAsyncGetProtoByNumber<'a, P0>(hwnd: P0, wmsg: u32, number: i32, buf: &mut [u8]) -> super::super::Foundation::HANDLE -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAAsyncGetProtoByNumber(hwnd: super::super::Foundation::HWND, wmsg: u32, number: i32, buf: ::windows::core::PSTR, buflen: i32) -> super::super::Foundation::HANDLE; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SOCKET_PRIORITY_HINT(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SocketPriorityHintVeryLow: SOCKET_PRIORITY_HINT = SOCKET_PRIORITY_HINT(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SocketPriorityHintLow: SOCKET_PRIORITY_HINT = SOCKET_PRIORITY_HINT(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SocketPriorityHintNormal: SOCKET_PRIORITY_HINT = SOCKET_PRIORITY_HINT(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SocketMaximumPriorityHintType: SOCKET_PRIORITY_HINT = SOCKET_PRIORITY_HINT(3i32); +impl ::core::marker::Copy for SOCKET_PRIORITY_HINT {} +impl ::core::clone::Clone for SOCKET_PRIORITY_HINT { + fn clone(&self) -> Self { + *self } - WSAAsyncGetProtoByNumber(hwnd.into(), wmsg, number, ::core::mem::transmute(buf.as_ptr()), buf.len() as _) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAAsyncGetServByName<'a, P0, P1, P2>(hwnd: P0, wmsg: u32, name: P1, proto: P2, buf: &mut [u8]) -> super::super::Foundation::HANDLE -where - P0: ::std::convert::Into, - P1: ::std::convert::Into<::windows::core::PCSTR>, - P2: ::std::convert::Into<::windows::core::PCSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAAsyncGetServByName(hwnd: super::super::Foundation::HWND, wmsg: u32, name: ::windows::core::PCSTR, proto: ::windows::core::PCSTR, buf: ::windows::core::PSTR, buflen: i32) -> super::super::Foundation::HANDLE; +impl ::core::default::Default for SOCKET_PRIORITY_HINT { + fn default() -> Self { + Self(0) } - WSAAsyncGetServByName(hwnd.into(), wmsg, name.into(), proto.into(), ::core::mem::transmute(buf.as_ptr()), buf.len() as _) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAAsyncGetServByPort<'a, P0, P1>(hwnd: P0, wmsg: u32, port: i32, proto: P1, buf: &mut [u8]) -> super::super::Foundation::HANDLE -where - P0: ::std::convert::Into, - P1: ::std::convert::Into<::windows::core::PCSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAAsyncGetServByPort(hwnd: super::super::Foundation::HWND, wmsg: u32, port: i32, proto: ::windows::core::PCSTR, buf: ::windows::core::PSTR, buflen: i32) -> super::super::Foundation::HANDLE; - } - WSAAsyncGetServByPort(hwnd.into(), wmsg, port, proto.into(), ::core::mem::transmute(buf.as_ptr()), buf.len() as _) +unsafe impl ::windows::core::Abi for SOCKET_PRIORITY_HINT { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAAsyncSelect<'a, P0, P1>(s: P0, hwnd: P1, wmsg: u32, levent: i32) -> i32 -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAAsyncSelect(s: SOCKET, hwnd: super::super::Foundation::HWND, wmsg: u32, levent: i32) -> i32; +impl ::core::fmt::Debug for SOCKET_PRIORITY_HINT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SOCKET_PRIORITY_HINT").field(&self.0).finish() } - WSAAsyncSelect(s.into(), hwnd.into(), wmsg, levent) } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct WSABUF { - pub len: u32, - pub buf: ::windows::core::PSTR, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Kernel\"`*"] +#[cfg(feature = "Win32_System_Kernel")] +pub struct SOCKET_PROCESSOR_AFFINITY { + pub Processor: super::super::System::Kernel::PROCESSOR_NUMBER, + pub NumaNodeId: u16, + pub Reserved: u16, } -impl ::core::marker::Copy for WSABUF {} -impl ::core::clone::Clone for WSABUF { +#[cfg(feature = "Win32_System_Kernel")] +impl ::core::marker::Copy for SOCKET_PROCESSOR_AFFINITY {} +#[cfg(feature = "Win32_System_Kernel")] +impl ::core::clone::Clone for SOCKET_PROCESSOR_AFFINITY { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for WSABUF { +#[cfg(feature = "Win32_System_Kernel")] +impl ::core::fmt::Debug for SOCKET_PROCESSOR_AFFINITY { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSABUF").field("len", &self.len).field("buf", &self.buf).finish() + f.debug_struct("SOCKET_PROCESSOR_AFFINITY").field("Processor", &self.Processor).field("NumaNodeId", &self.NumaNodeId).field("Reserved", &self.Reserved).finish() } } -unsafe impl ::windows::core::Abi for WSABUF { +#[cfg(feature = "Win32_System_Kernel")] +unsafe impl ::windows::core::Abi for SOCKET_PROCESSOR_AFFINITY { type Abi = Self; } -impl ::core::cmp::PartialEq for WSABUF { +#[cfg(feature = "Win32_System_Kernel")] +impl ::core::cmp::PartialEq for SOCKET_PROCESSOR_AFFINITY { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for WSABUF {} -impl ::core::default::Default for WSABUF { +#[cfg(feature = "Win32_System_Kernel")] +impl ::core::cmp::Eq for SOCKET_PROCESSOR_AFFINITY {} +#[cfg(feature = "Win32_System_Kernel")] +impl ::core::default::Default for SOCKET_PROCESSOR_AFFINITY { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub struct WSACOMPLETION { - pub Type: WSACOMPLETIONTYPE, - pub Parameters: WSACOMPLETION_0, -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::marker::Copy for WSACOMPLETION {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::clone::Clone for WSACOMPLETION { +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCKET_QUERY_IPSEC2_ABORT_CONNECTION_ON_FIELD_CHANGE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCKET_QUERY_IPSEC2_FIELD_MASK_MM_SA_ID: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCKET_QUERY_IPSEC2_FIELD_MASK_QM_SA_ID: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SOCKET_SECURITY_PROTOCOL(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCKET_SECURITY_PROTOCOL_DEFAULT: SOCKET_SECURITY_PROTOCOL = SOCKET_SECURITY_PROTOCOL(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCKET_SECURITY_PROTOCOL_IPSEC: SOCKET_SECURITY_PROTOCOL = SOCKET_SECURITY_PROTOCOL(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCKET_SECURITY_PROTOCOL_IPSEC2: SOCKET_SECURITY_PROTOCOL = SOCKET_SECURITY_PROTOCOL(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCKET_SECURITY_PROTOCOL_INVALID: SOCKET_SECURITY_PROTOCOL = SOCKET_SECURITY_PROTOCOL(3i32); +impl ::core::marker::Copy for SOCKET_SECURITY_PROTOCOL {} +impl ::core::clone::Clone for SOCKET_SECURITY_PROTOCOL { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -unsafe impl ::windows::core::Abi for WSACOMPLETION { - type Abi = Self; -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::PartialEq for WSACOMPLETION { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::default::Default for SOCKET_SECURITY_PROTOCOL { + fn default() -> Self { + Self(0) } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::Eq for WSACOMPLETION {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::default::Default for WSACOMPLETION { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +unsafe impl ::windows::core::Abi for SOCKET_SECURITY_PROTOCOL { + type Abi = Self; +} +impl ::core::fmt::Debug for SOCKET_SECURITY_PROTOCOL { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SOCKET_SECURITY_PROTOCOL").field(&self.0).finish() } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub union WSACOMPLETION_0 { - pub WindowMessage: WSACOMPLETION_0_3, - pub Event: WSACOMPLETION_0_1, - pub Apc: WSACOMPLETION_0_0, - pub Port: WSACOMPLETION_0_2, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct SOCKET_SECURITY_QUERY_INFO { + pub SecurityProtocol: SOCKET_SECURITY_PROTOCOL, + pub Flags: u32, + pub PeerApplicationAccessTokenHandle: u64, + pub PeerMachineAccessTokenHandle: u64, } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::marker::Copy for WSACOMPLETION_0 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::clone::Clone for WSACOMPLETION_0 { +impl ::core::marker::Copy for SOCKET_SECURITY_QUERY_INFO {} +impl ::core::clone::Clone for SOCKET_SECURITY_QUERY_INFO { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -unsafe impl ::windows::core::Abi for WSACOMPLETION_0 { +impl ::core::fmt::Debug for SOCKET_SECURITY_QUERY_INFO { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("SOCKET_SECURITY_QUERY_INFO").field("SecurityProtocol", &self.SecurityProtocol).field("Flags", &self.Flags).field("PeerApplicationAccessTokenHandle", &self.PeerApplicationAccessTokenHandle).field("PeerMachineAccessTokenHandle", &self.PeerMachineAccessTokenHandle).finish() + } +} +unsafe impl ::windows::core::Abi for SOCKET_SECURITY_QUERY_INFO { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::PartialEq for WSACOMPLETION_0 { +impl ::core::cmp::PartialEq for SOCKET_SECURITY_QUERY_INFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::Eq for WSACOMPLETION_0 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::default::Default for WSACOMPLETION_0 { +impl ::core::cmp::Eq for SOCKET_SECURITY_QUERY_INFO {} +impl ::core::default::Default for SOCKET_SECURITY_QUERY_INFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub struct WSACOMPLETION_0_0 { - pub lpOverlapped: *mut super::super::System::IO::OVERLAPPED, - pub lpfnCompletionProc: LPWSAOVERLAPPED_COMPLETION_ROUTINE, -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::marker::Copy for WSACOMPLETION_0_0 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::clone::Clone for WSACOMPLETION_0_0 { +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct SOCKET_SECURITY_QUERY_INFO_IPSEC2 { + pub SecurityProtocol: SOCKET_SECURITY_PROTOCOL, + pub Flags: u32, + pub PeerApplicationAccessTokenHandle: u64, + pub PeerMachineAccessTokenHandle: u64, + pub MmSaId: u64, + pub QmSaId: u64, + pub NegotiationWinerr: u32, + pub SaLookupContext: ::windows::core::GUID, +} +impl ::core::marker::Copy for SOCKET_SECURITY_QUERY_INFO_IPSEC2 {} +impl ::core::clone::Clone for SOCKET_SECURITY_QUERY_INFO_IPSEC2 { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::fmt::Debug for WSACOMPLETION_0_0 { +impl ::core::fmt::Debug for SOCKET_SECURITY_QUERY_INFO_IPSEC2 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSACOMPLETION_0_0").field("lpOverlapped", &self.lpOverlapped).field("lpfnCompletionProc", &self.lpfnCompletionProc.map(|f| f as usize)).finish() + f.debug_struct("SOCKET_SECURITY_QUERY_INFO_IPSEC2").field("SecurityProtocol", &self.SecurityProtocol).field("Flags", &self.Flags).field("PeerApplicationAccessTokenHandle", &self.PeerApplicationAccessTokenHandle).field("PeerMachineAccessTokenHandle", &self.PeerMachineAccessTokenHandle).field("MmSaId", &self.MmSaId).field("QmSaId", &self.QmSaId).field("NegotiationWinerr", &self.NegotiationWinerr).field("SaLookupContext", &self.SaLookupContext).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -unsafe impl ::windows::core::Abi for WSACOMPLETION_0_0 { +unsafe impl ::windows::core::Abi for SOCKET_SECURITY_QUERY_INFO_IPSEC2 { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::PartialEq for WSACOMPLETION_0_0 { +impl ::core::cmp::PartialEq for SOCKET_SECURITY_QUERY_INFO_IPSEC2 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::Eq for WSACOMPLETION_0_0 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::default::Default for WSACOMPLETION_0_0 { +impl ::core::cmp::Eq for SOCKET_SECURITY_QUERY_INFO_IPSEC2 {} +impl ::core::default::Default for SOCKET_SECURITY_QUERY_INFO_IPSEC2 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub struct WSACOMPLETION_0_1 { - pub lpOverlapped: *mut super::super::System::IO::OVERLAPPED, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct SOCKET_SECURITY_QUERY_TEMPLATE { + pub SecurityProtocol: SOCKET_SECURITY_PROTOCOL, + pub PeerAddress: SOCKADDR_STORAGE, + pub PeerTokenAccessMask: u32, } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::marker::Copy for WSACOMPLETION_0_1 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::clone::Clone for WSACOMPLETION_0_1 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for SOCKET_SECURITY_QUERY_TEMPLATE {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for SOCKET_SECURITY_QUERY_TEMPLATE { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::fmt::Debug for WSACOMPLETION_0_1 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for SOCKET_SECURITY_QUERY_TEMPLATE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSACOMPLETION_0_1").field("lpOverlapped", &self.lpOverlapped).finish() + f.debug_struct("SOCKET_SECURITY_QUERY_TEMPLATE").field("SecurityProtocol", &self.SecurityProtocol).field("PeerAddress", &self.PeerAddress).field("PeerTokenAccessMask", &self.PeerTokenAccessMask).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -unsafe impl ::windows::core::Abi for WSACOMPLETION_0_1 { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for SOCKET_SECURITY_QUERY_TEMPLATE { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::PartialEq for WSACOMPLETION_0_1 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for SOCKET_SECURITY_QUERY_TEMPLATE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::Eq for WSACOMPLETION_0_1 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::default::Default for WSACOMPLETION_0_1 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for SOCKET_SECURITY_QUERY_TEMPLATE {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for SOCKET_SECURITY_QUERY_TEMPLATE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub struct WSACOMPLETION_0_2 { - pub lpOverlapped: *mut super::super::System::IO::OVERLAPPED, - pub hPort: super::super::Foundation::HANDLE, - pub Key: usize, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 { + pub SecurityProtocol: SOCKET_SECURITY_PROTOCOL, + pub PeerAddress: SOCKADDR_STORAGE, + pub PeerTokenAccessMask: u32, + pub Flags: u32, + pub FieldMask: u32, } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::marker::Copy for WSACOMPLETION_0_2 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::clone::Clone for WSACOMPLETION_0_2 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::fmt::Debug for WSACOMPLETION_0_2 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSACOMPLETION_0_2").field("lpOverlapped", &self.lpOverlapped).field("hPort", &self.hPort).field("Key", &self.Key).finish() + f.debug_struct("SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2").field("SecurityProtocol", &self.SecurityProtocol).field("PeerAddress", &self.PeerAddress).field("PeerTokenAccessMask", &self.PeerTokenAccessMask).field("Flags", &self.Flags).field("FieldMask", &self.FieldMask).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -unsafe impl ::windows::core::Abi for WSACOMPLETION_0_2 { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::PartialEq for WSACOMPLETION_0_2 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::Eq for WSACOMPLETION_0_2 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::default::Default for WSACOMPLETION_0_2 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for SOCKET_SECURITY_QUERY_TEMPLATE_IPSEC2 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub struct WSACOMPLETION_0_3 { - pub hWnd: super::super::Foundation::HWND, - pub uMsg: u32, - pub context: super::super::Foundation::WPARAM, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct SOCKET_SECURITY_SETTINGS { + pub SecurityProtocol: SOCKET_SECURITY_PROTOCOL, + pub SecurityFlags: u32, } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::marker::Copy for WSACOMPLETION_0_3 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::clone::Clone for WSACOMPLETION_0_3 { +impl ::core::marker::Copy for SOCKET_SECURITY_SETTINGS {} +impl ::core::clone::Clone for SOCKET_SECURITY_SETTINGS { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::fmt::Debug for WSACOMPLETION_0_3 { +impl ::core::fmt::Debug for SOCKET_SECURITY_SETTINGS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSACOMPLETION_0_3").field("hWnd", &self.hWnd).field("uMsg", &self.uMsg).field("context", &self.context).finish() + f.debug_struct("SOCKET_SECURITY_SETTINGS").field("SecurityProtocol", &self.SecurityProtocol).field("SecurityFlags", &self.SecurityFlags).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -unsafe impl ::windows::core::Abi for WSACOMPLETION_0_3 { +unsafe impl ::windows::core::Abi for SOCKET_SECURITY_SETTINGS { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::PartialEq for WSACOMPLETION_0_3 { +impl ::core::cmp::PartialEq for SOCKET_SECURITY_SETTINGS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::Eq for WSACOMPLETION_0_3 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::default::Default for WSACOMPLETION_0_3 { +impl ::core::cmp::Eq for SOCKET_SECURITY_SETTINGS {} +impl ::core::default::Default for SOCKET_SECURITY_SETTINGS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct WSACOMPLETIONTYPE(pub i32); +pub struct SOCKET_SECURITY_SETTINGS_IPSEC { + pub SecurityProtocol: SOCKET_SECURITY_PROTOCOL, + pub SecurityFlags: u32, + pub IpsecFlags: u32, + pub AuthipMMPolicyKey: ::windows::core::GUID, + pub AuthipQMPolicyKey: ::windows::core::GUID, + pub Reserved: ::windows::core::GUID, + pub Reserved2: u64, + pub UserNameStringLen: u32, + pub DomainNameStringLen: u32, + pub PasswordStringLen: u32, + pub AllStrings: [u16; 1], +} +impl ::core::marker::Copy for SOCKET_SECURITY_SETTINGS_IPSEC {} +impl ::core::clone::Clone for SOCKET_SECURITY_SETTINGS_IPSEC { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for SOCKET_SECURITY_SETTINGS_IPSEC { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("SOCKET_SECURITY_SETTINGS_IPSEC") + .field("SecurityProtocol", &self.SecurityProtocol) + .field("SecurityFlags", &self.SecurityFlags) + .field("IpsecFlags", &self.IpsecFlags) + .field("AuthipMMPolicyKey", &self.AuthipMMPolicyKey) + .field("AuthipQMPolicyKey", &self.AuthipQMPolicyKey) + .field("Reserved", &self.Reserved) + .field("Reserved2", &self.Reserved2) + .field("UserNameStringLen", &self.UserNameStringLen) + .field("DomainNameStringLen", &self.DomainNameStringLen) + .field("PasswordStringLen", &self.PasswordStringLen) + .field("AllStrings", &self.AllStrings) + .finish() + } +} +unsafe impl ::windows::core::Abi for SOCKET_SECURITY_SETTINGS_IPSEC { + type Abi = Self; +} +impl ::core::cmp::PartialEq for SOCKET_SECURITY_SETTINGS_IPSEC { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for SOCKET_SECURITY_SETTINGS_IPSEC {} +impl ::core::default::Default for SOCKET_SECURITY_SETTINGS_IPSEC { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NSP_NOTIFY_IMMEDIATELY: WSACOMPLETIONTYPE = WSACOMPLETIONTYPE(0i32); +pub const SOCKET_SETTINGS_ALLOW_INSECURE: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NSP_NOTIFY_HWND: WSACOMPLETIONTYPE = WSACOMPLETIONTYPE(1i32); +pub const SOCKET_SETTINGS_GUARANTEE_ENCRYPTION: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NSP_NOTIFY_EVENT: WSACOMPLETIONTYPE = WSACOMPLETIONTYPE(2i32); +pub const SOCKET_SETTINGS_IPSEC_ALLOW_FIRST_INBOUND_PKT_UNENCRYPTED: u32 = 4u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NSP_NOTIFY_PORT: WSACOMPLETIONTYPE = WSACOMPLETIONTYPE(3i32); +pub const SOCKET_SETTINGS_IPSEC_OPTIONAL_PEER_NAME_VERIFICATION: u32 = 2u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const NSP_NOTIFY_APC: WSACOMPLETIONTYPE = WSACOMPLETIONTYPE(4i32); -impl ::core::marker::Copy for WSACOMPLETIONTYPE {} -impl ::core::clone::Clone for WSACOMPLETIONTYPE { +pub const SOCKET_SETTINGS_IPSEC_PEER_NAME_IS_RAW_FORMAT: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCKET_SETTINGS_IPSEC_SKIP_FILTER_INSTANTIATION: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SOCKET_USAGE_TYPE(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SYSTEM_CRITICAL_SOCKET: SOCKET_USAGE_TYPE = SOCKET_USAGE_TYPE(1i32); +impl ::core::marker::Copy for SOCKET_USAGE_TYPE {} +impl ::core::clone::Clone for SOCKET_USAGE_TYPE { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for WSACOMPLETIONTYPE { +impl ::core::default::Default for SOCKET_USAGE_TYPE { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for WSACOMPLETIONTYPE { +unsafe impl ::windows::core::Abi for SOCKET_USAGE_TYPE { type Abi = Self; } -impl ::core::fmt::Debug for WSACOMPLETIONTYPE { +impl ::core::fmt::Debug for SOCKET_USAGE_TYPE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("WSACOMPLETIONTYPE").field(&self.0).finish() - } -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSACancelAsyncRequest<'a, P0>(hasynctaskhandle: P0) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSACancelAsyncRequest(hasynctaskhandle: super::super::Foundation::HANDLE) -> i32; + f.debug_tuple("SOCKET_USAGE_TYPE").field(&self.0).finish() } - WSACancelAsyncRequest(hasynctaskhandle.into()) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSACancelBlockingCall() -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSACancelBlockingCall() -> i32; +pub const SOCK_DGRAM: u16 = 2u16; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_EVENT_ERR: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_EVENT_HANGUP: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_EVENT_IN: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_EVENT_OUT: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_EVENT_REMOVE: u32 = 128u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_OP_DISABLE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_OP_ENABLE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_OP_NONE: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_OP_REMOVE: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_REGISTER_EVENT_HANGUP: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_REGISTER_EVENT_IN: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_REGISTER_EVENT_NONE: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_REGISTER_EVENT_OUT: u32 = 2u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct SOCK_NOTIFY_REGISTRATION { + pub socket: SOCKET, + pub completionKey: *mut ::core::ffi::c_void, + pub eventFilter: u16, + pub operation: u8, + pub triggerFlags: u8, + pub registrationResult: u32, +} +impl ::core::marker::Copy for SOCK_NOTIFY_REGISTRATION {} +impl ::core::clone::Clone for SOCK_NOTIFY_REGISTRATION { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for SOCK_NOTIFY_REGISTRATION { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("SOCK_NOTIFY_REGISTRATION").field("socket", &self.socket).field("completionKey", &self.completionKey).field("eventFilter", &self.eventFilter).field("operation", &self.operation).field("triggerFlags", &self.triggerFlags).field("registrationResult", &self.registrationResult).finish() + } +} +unsafe impl ::windows::core::Abi for SOCK_NOTIFY_REGISTRATION { + type Abi = Self; +} +impl ::core::cmp::PartialEq for SOCK_NOTIFY_REGISTRATION { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for SOCK_NOTIFY_REGISTRATION {} +impl ::core::default::Default for SOCK_NOTIFY_REGISTRATION { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - WSACancelBlockingCall() } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_TRIGGER_EDGE: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_TRIGGER_LEVEL: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_TRIGGER_ONESHOT: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_NOTIFY_TRIGGER_PERSISTENT: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_RAW: u16 = 3u16; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_RDM: u16 = 4u16; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_SEQPACKET: u16 = 5u16; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOCK_STREAM: u16 = 1u16; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOL_IRLMP: u32 = 255u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOL_SOCKET: u32 = 65535u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SOMAXCONN: u32 = 5u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_ACCEPTCONN: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_BROADCAST: u32 = 32u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_BSP_STATE: u32 = 4105u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_COMPARTMENT_ID: u32 = 12292u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_CONDITIONAL_ACCEPT: u32 = 12290u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_CONNDATA: u32 = 28672u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_CONNDATALEN: u32 = 28676u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_CONNECT_TIME: u32 = 28684u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_CONNOPT: u32 = 28673u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_CONNOPTLEN: u32 = 28677u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_DEBUG: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_DISCDATA: u32 = 28674u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_DISCDATALEN: u32 = 28678u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_DISCOPT: u32 = 28675u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_DISCOPTLEN: u32 = 28679u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_DONTROUTE: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_ERROR: u32 = 4103u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_GROUP_ID: u32 = 8193u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_GROUP_PRIORITY: u32 = 8194u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_KEEPALIVE: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_LINGER: u32 = 128u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_MAXDG: u32 = 28681u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_MAXPATHDG: u32 = 28682u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_MAX_MSG_SIZE: u32 = 8195u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_OOBINLINE: u32 = 256u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_OPENTYPE: u32 = 28680u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_ORIGINAL_DST: u32 = 12303u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_PAUSE_ACCEPT: u32 = 12291u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_PORT_SCALABILITY: u32 = 12294u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_PROTOCOL_INFO: u32 = 8197u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_PROTOCOL_INFOA: u32 = 8196u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_PROTOCOL_INFOW: u32 = 8197u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_RANDOMIZE_PORT: u32 = 12293u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_RCVBUF: u32 = 4098u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_RCVLOWAT: u32 = 4100u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_RCVTIMEO: u32 = 4102u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_REUSEADDR: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_REUSE_MULTICASTPORT: u32 = 12296u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_REUSE_UNICASTPORT: u32 = 12295u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_SNDBUF: u32 = 4097u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_SNDLOWAT: u32 = 4099u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_SNDTIMEO: u32 = 4101u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_SYNCHRONOUS_ALERT: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_SYNCHRONOUS_NONALERT: u32 = 32u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_TIMESTAMP: u32 = 12298u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_TIMESTAMP_ID: u32 = 12299u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_TYPE: u32 = 4104u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_UPDATE_ACCEPT_CONTEXT: u32 = 28683u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_UPDATE_CONNECT_CONTEXT: u32 = 28688u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const SO_USELOOPBACK: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] #[inline] -pub unsafe fn WSACleanup() -> i32 { +pub unsafe fn SetAddrInfoExA<'a, P0, P1>(pname: P0, pservicename: P1, paddresses: ::core::option::Option<&SOCKET_ADDRESS>, dwaddresscount: u32, lpblob: ::core::option::Option<&super::super::System::Com::BLOB>, dwflags: u32, dwnamespace: u32, lpnspid: ::core::option::Option<&::windows::core::GUID>, timeout: ::core::option::Option<&timeval>, lpoverlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPLOOKUPSERVICE_COMPLETION_ROUTINE, lpnamehandle: ::core::option::Option<&mut super::super::Foundation::HANDLE>) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCSTR>, + P1: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSACleanup() -> i32; + fn SetAddrInfoExA(pname: ::windows::core::PCSTR, pservicename: ::windows::core::PCSTR, paddresses: *const SOCKET_ADDRESS, dwaddresscount: u32, lpblob: *const super::super::System::Com::BLOB, dwflags: u32, dwnamespace: u32, lpnspid: *const ::windows::core::GUID, timeout: *const timeval, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void, lpnamehandle: *mut super::super::Foundation::HANDLE) -> i32; } - WSACleanup() + SetAddrInfoExA(pname.into(), pservicename.into(), ::core::mem::transmute(paddresses), dwaddresscount, ::core::mem::transmute(lpblob), dwflags, dwnamespace, ::core::mem::transmute(lpnspid), ::core::mem::transmute(timeout), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine), ::core::mem::transmute(lpnamehandle)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_IO"))] #[inline] -pub unsafe fn WSACloseEvent<'a, P0>(hevent: P0) -> super::super::Foundation::BOOL +pub unsafe fn SetAddrInfoExW<'a, P0, P1>(pname: P0, pservicename: P1, paddresses: ::core::option::Option<&SOCKET_ADDRESS>, dwaddresscount: u32, lpblob: ::core::option::Option<&super::super::System::Com::BLOB>, dwflags: u32, dwnamespace: u32, lpnspid: ::core::option::Option<&::windows::core::GUID>, timeout: ::core::option::Option<&timeval>, lpoverlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPLOOKUPSERVICE_COMPLETION_ROUTINE, lpnamehandle: ::core::option::Option<&mut super::super::Foundation::HANDLE>) -> i32 where - P0: ::std::convert::Into, + P0: ::std::convert::Into<::windows::core::PCWSTR>, + P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSACloseEvent(hevent: super::super::Foundation::HANDLE) -> super::super::Foundation::BOOL; + fn SetAddrInfoExW(pname: ::windows::core::PCWSTR, pservicename: ::windows::core::PCWSTR, paddresses: *const SOCKET_ADDRESS, dwaddresscount: u32, lpblob: *const super::super::System::Com::BLOB, dwflags: u32, dwnamespace: u32, lpnspid: *const ::windows::core::GUID, timeout: *const timeval, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void, lpnamehandle: *mut super::super::Foundation::HANDLE) -> i32; } - WSACloseEvent(hevent.into()) + SetAddrInfoExW(pname.into(), pservicename.into(), ::core::mem::transmute(paddresses), dwaddresscount, ::core::mem::transmute(lpblob), dwflags, dwnamespace, ::core::mem::transmute(lpnspid), ::core::mem::transmute(timeout), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine), ::core::mem::transmute(lpnamehandle)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] #[inline] -pub unsafe fn WSAConnect<'a, P0>(s: P0, name: &[u8], lpcallerdata: ::core::option::Option<&WSABUF>, lpcalleedata: ::core::option::Option<&mut WSABUF>, lpsqos: ::core::option::Option<&QOS>, lpgqos: ::core::option::Option<&QOS>) -> i32 -where - P0: ::std::convert::Into, -{ +pub unsafe fn SetServiceA(dwnamespace: u32, dwoperation: SET_SERVICE_OPERATION, dwflags: u32, lpserviceinfo: &SERVICE_INFOA, lpserviceasyncinfo: ::core::option::Option<&SERVICE_ASYNC_INFO>, lpdwstatusflags: &mut u32) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSAConnect(s: SOCKET, name: *const SOCKADDR, namelen: i32, lpcallerdata: *const WSABUF, lpcalleedata: *mut WSABUF, lpsqos: *const QOS, lpgqos: *const QOS) -> i32; + fn SetServiceA(dwnamespace: u32, dwoperation: SET_SERVICE_OPERATION, dwflags: u32, lpserviceinfo: *const SERVICE_INFOA, lpserviceasyncinfo: *const SERVICE_ASYNC_INFO, lpdwstatusflags: *mut u32) -> i32; } - WSAConnect(s.into(), ::core::mem::transmute(name.as_ptr()), name.len() as _, ::core::mem::transmute(lpcallerdata), ::core::mem::transmute(lpcalleedata), ::core::mem::transmute(lpsqos), ::core::mem::transmute(lpgqos)) + SetServiceA(dwnamespace, dwoperation, dwflags, ::core::mem::transmute(lpserviceinfo), ::core::mem::transmute(lpserviceasyncinfo), ::core::mem::transmute(lpdwstatusflags)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] #[inline] -pub unsafe fn WSAConnectByList<'a, P0>(s: P0, socketaddress: &SOCKET_ADDRESS_LIST, localaddresslength: ::core::option::Option<&mut u32>, localaddress: *mut SOCKADDR, remoteaddresslength: ::core::option::Option<&mut u32>, remoteaddress: *mut SOCKADDR, timeout: ::core::option::Option<&timeval>, reserved: &mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ +pub unsafe fn SetServiceW(dwnamespace: u32, dwoperation: SET_SERVICE_OPERATION, dwflags: u32, lpserviceinfo: &SERVICE_INFOW, lpserviceasyncinfo: ::core::option::Option<&SERVICE_ASYNC_INFO>, lpdwstatusflags: &mut u32) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSAConnectByList(s: SOCKET, socketaddress: *const SOCKET_ADDRESS_LIST, localaddresslength: *mut u32, localaddress: *mut SOCKADDR, remoteaddresslength: *mut u32, remoteaddress: *mut SOCKADDR, timeout: *const timeval, reserved: *mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL; + fn SetServiceW(dwnamespace: u32, dwoperation: SET_SERVICE_OPERATION, dwflags: u32, lpserviceinfo: *const SERVICE_INFOW, lpserviceasyncinfo: *const SERVICE_ASYNC_INFO, lpdwstatusflags: *mut u32) -> i32; } - WSAConnectByList(s.into(), ::core::mem::transmute(socketaddress), ::core::mem::transmute(localaddresslength), ::core::mem::transmute(localaddress), ::core::mem::transmute(remoteaddresslength), ::core::mem::transmute(remoteaddress), ::core::mem::transmute(timeout), ::core::mem::transmute(reserved)) + SetServiceW(dwnamespace, dwoperation, dwflags, ::core::mem::transmute(lpserviceinfo), ::core::mem::transmute(lpserviceasyncinfo), ::core::mem::transmute(lpdwstatusflags)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSAConnectByNameA<'a, P0, P1, P2>(s: P0, nodename: P1, servicename: P2, localaddresslength: ::core::option::Option<&mut u32>, localaddress: *mut SOCKADDR, remoteaddresslength: ::core::option::Option<&mut u32>, remoteaddress: *mut SOCKADDR, timeout: ::core::option::Option<&timeval>, reserved: &mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL +pub unsafe fn SetSocketMediaStreamingMode<'a, P0>(value: P0) -> ::windows::core::Result<()> where - P0: ::std::convert::Into, - P1: ::std::convert::Into<::windows::core::PCSTR>, - P2: ::std::convert::Into<::windows::core::PCSTR>, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSAConnectByNameA(s: SOCKET, nodename: ::windows::core::PCSTR, servicename: ::windows::core::PCSTR, localaddresslength: *mut u32, localaddress: *mut SOCKADDR, remoteaddresslength: *mut u32, remoteaddress: *mut SOCKADDR, timeout: *const timeval, reserved: *mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL; + fn SetSocketMediaStreamingMode(value: super::super::Foundation::BOOL) -> ::windows::core::HRESULT; } - WSAConnectByNameA(s.into(), nodename.into(), servicename.into(), ::core::mem::transmute(localaddresslength), ::core::mem::transmute(localaddress), ::core::mem::transmute(remoteaddresslength), ::core::mem::transmute(remoteaddress), ::core::mem::transmute(timeout), ::core::mem::transmute(reserved)) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn WSAConnectByNameW<'a, P0, P1, P2>(s: P0, nodename: P1, servicename: P2, localaddresslength: ::core::option::Option<&mut u32>, localaddress: *mut SOCKADDR, remoteaddresslength: ::core::option::Option<&mut u32>, remoteaddress: *mut SOCKADDR, timeout: ::core::option::Option<&timeval>, reserved: &mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, - P1: ::std::convert::Into<::windows::core::PCWSTR>, - P2: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAConnectByNameW(s: SOCKET, nodename: ::windows::core::PCWSTR, servicename: ::windows::core::PCWSTR, localaddresslength: *mut u32, localaddress: *mut SOCKADDR, remoteaddresslength: *mut u32, remoteaddress: *mut SOCKADDR, timeout: *const timeval, reserved: *mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL; - } - WSAConnectByNameW(s.into(), nodename.into(), servicename.into(), ::core::mem::transmute(localaddresslength), ::core::mem::transmute(localaddress), ::core::mem::transmute(remoteaddresslength), ::core::mem::transmute(remoteaddress), ::core::mem::transmute(timeout), ::core::mem::transmute(reserved)) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSACreateEvent() -> super::super::Foundation::HANDLE { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSACreateEvent() -> super::super::Foundation::HANDLE; - } - WSACreateEvent() + SetSocketMediaStreamingMode(value.into()).ok() } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSADESCRIPTION_LEN: u32 = 256u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[cfg(feature = "Win32_Foundation")] -pub struct WSAData { - pub wVersion: u16, - pub wHighVersion: u16, - pub iMaxSockets: u16, - pub iMaxUdpDg: u16, - pub lpVendorInfo: ::windows::core::PSTR, - pub szDescription: [super::super::Foundation::CHAR; 257], - pub szSystemStatus: [super::super::Foundation::CHAR; 129], -} -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WSAData {} -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WSAData { +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TCPSTATE(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCPSTATE_CLOSED: TCPSTATE = TCPSTATE(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCPSTATE_LISTEN: TCPSTATE = TCPSTATE(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCPSTATE_SYN_SENT: TCPSTATE = TCPSTATE(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCPSTATE_SYN_RCVD: TCPSTATE = TCPSTATE(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCPSTATE_ESTABLISHED: TCPSTATE = TCPSTATE(4i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCPSTATE_FIN_WAIT_1: TCPSTATE = TCPSTATE(5i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCPSTATE_FIN_WAIT_2: TCPSTATE = TCPSTATE(6i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCPSTATE_CLOSE_WAIT: TCPSTATE = TCPSTATE(7i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCPSTATE_CLOSING: TCPSTATE = TCPSTATE(8i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCPSTATE_LAST_ACK: TCPSTATE = TCPSTATE(9i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCPSTATE_TIME_WAIT: TCPSTATE = TCPSTATE(10i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCPSTATE_MAX: TCPSTATE = TCPSTATE(11i32); +impl ::core::marker::Copy for TCPSTATE {} +impl ::core::clone::Clone for TCPSTATE { fn clone(&self) -> Self { *self } } -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WSAData { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSAData").field("wVersion", &self.wVersion).field("wHighVersion", &self.wHighVersion).field("iMaxSockets", &self.iMaxSockets).field("iMaxUdpDg", &self.iMaxUdpDg).field("lpVendorInfo", &self.lpVendorInfo).field("szDescription", &self.szDescription).field("szSystemStatus", &self.szSystemStatus).finish() +impl ::core::default::Default for TCPSTATE { + fn default() -> Self { + Self(0) } } -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WSAData { +unsafe impl ::windows::core::Abi for TCPSTATE { type Abi = Self; } -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WSAData { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WSAData {} -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WSAData { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for TCPSTATE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TCPSTATE").field(&self.0).finish() } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(target_arch = "x86")] -#[cfg(feature = "Win32_Foundation")] -pub struct WSAData { - pub wVersion: u16, - pub wHighVersion: u16, - pub szDescription: [super::super::Foundation::CHAR; 257], - pub szSystemStatus: [super::super::Foundation::CHAR; 129], - pub iMaxSockets: u16, - pub iMaxUdpDg: u16, - pub lpVendorInfo: ::windows::core::PSTR, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct TCP_ACK_FREQUENCY_PARAMETERS { + pub TcpDelayedAckFrequency: u8, } -#[cfg(target_arch = "x86")] -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WSAData {} -#[cfg(target_arch = "x86")] -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WSAData { +impl ::core::marker::Copy for TCP_ACK_FREQUENCY_PARAMETERS {} +impl ::core::clone::Clone for TCP_ACK_FREQUENCY_PARAMETERS { fn clone(&self) -> Self { *self } } -#[cfg(target_arch = "x86")] -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WSAData { +impl ::core::fmt::Debug for TCP_ACK_FREQUENCY_PARAMETERS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSAData").field("wVersion", &self.wVersion).field("wHighVersion", &self.wHighVersion).field("szDescription", &self.szDescription).field("szSystemStatus", &self.szSystemStatus).field("iMaxSockets", &self.iMaxSockets).field("iMaxUdpDg", &self.iMaxUdpDg).field("lpVendorInfo", &self.lpVendorInfo).finish() + f.debug_struct("TCP_ACK_FREQUENCY_PARAMETERS").field("TcpDelayedAckFrequency", &self.TcpDelayedAckFrequency).finish() } } -#[cfg(target_arch = "x86")] -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WSAData { +unsafe impl ::windows::core::Abi for TCP_ACK_FREQUENCY_PARAMETERS { type Abi = Self; } -#[cfg(target_arch = "x86")] -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WSAData { +impl ::core::cmp::PartialEq for TCP_ACK_FREQUENCY_PARAMETERS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(target_arch = "x86")] -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WSAData {} -#[cfg(target_arch = "x86")] -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WSAData { +impl ::core::cmp::Eq for TCP_ACK_FREQUENCY_PARAMETERS {} +impl ::core::default::Default for TCP_ACK_FREQUENCY_PARAMETERS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn WSADeleteSocketPeerTargetName<'a, P0>(socket: P0, peeraddr: &[u8], overlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, completionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSADeleteSocketPeerTargetName(socket: SOCKET, peeraddr: *const SOCKADDR, peeraddrlen: u32, overlapped: *const super::super::System::IO::OVERLAPPED, completionroutine: *mut ::core::ffi::c_void) -> i32; - } - WSADeleteSocketPeerTargetName(socket.into(), ::core::mem::transmute(peeraddr.as_ptr()), peeraddr.len() as _, ::core::mem::transmute(overlapped), ::core::mem::transmute(completionroutine)) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSADuplicateSocketA<'a, P0>(s: P0, dwprocessid: u32, lpprotocolinfo: &mut WSAPROTOCOL_INFOA) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSADuplicateSocketA(s: SOCKET, dwprocessid: u32, lpprotocolinfo: *mut WSAPROTOCOL_INFOA) -> i32; - } - WSADuplicateSocketA(s.into(), dwprocessid, ::core::mem::transmute(lpprotocolinfo)) -} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSADuplicateSocketW<'a, P0>(s: P0, dwprocessid: u32, lpprotocolinfo: &mut WSAPROTOCOL_INFOW) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSADuplicateSocketW(s: SOCKET, dwprocessid: u32, lpprotocolinfo: *mut WSAPROTOCOL_INFOW) -> i32; - } - WSADuplicateSocketW(s.into(), dwprocessid, ::core::mem::transmute(lpprotocolinfo)) -} +pub const TCP_ATMARK: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_BSDURGENT: u32 = 28672u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_CONGESTION_ALGORITHM: u32 = 12u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_DELAY_FIN_ACK: u32 = 13u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_EXPEDITED_1122: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_FAIL_CONNECT_ON_ICMP_ERROR: u32 = 18u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_FASTOPEN: u32 = 15u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_ICMP_ERROR_INFO: u32 = 19u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct WSAECOMPARATOR(pub i32); +pub struct TCP_ICW_LEVEL(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const COMP_EQUAL: WSAECOMPARATOR = WSAECOMPARATOR(0i32); +pub const TCP_ICW_LEVEL_DEFAULT: TCP_ICW_LEVEL = TCP_ICW_LEVEL(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const COMP_NOTLESS: WSAECOMPARATOR = WSAECOMPARATOR(1i32); -impl ::core::marker::Copy for WSAECOMPARATOR {} -impl ::core::clone::Clone for WSAECOMPARATOR { +pub const TCP_ICW_LEVEL_HIGH: TCP_ICW_LEVEL = TCP_ICW_LEVEL(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_ICW_LEVEL_VERY_HIGH: TCP_ICW_LEVEL = TCP_ICW_LEVEL(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_ICW_LEVEL_AGGRESSIVE: TCP_ICW_LEVEL = TCP_ICW_LEVEL(3i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_ICW_LEVEL_EXPERIMENTAL: TCP_ICW_LEVEL = TCP_ICW_LEVEL(4i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_ICW_LEVEL_COMPAT: TCP_ICW_LEVEL = TCP_ICW_LEVEL(254i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_ICW_LEVEL_MAX: TCP_ICW_LEVEL = TCP_ICW_LEVEL(255i32); +impl ::core::marker::Copy for TCP_ICW_LEVEL {} +impl ::core::clone::Clone for TCP_ICW_LEVEL { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for WSAECOMPARATOR { +impl ::core::default::Default for TCP_ICW_LEVEL { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for WSAECOMPARATOR { +unsafe impl ::windows::core::Abi for TCP_ICW_LEVEL { type Abi = Self; } -impl ::core::fmt::Debug for WSAECOMPARATOR { +impl ::core::fmt::Debug for TCP_ICW_LEVEL { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("WSAECOMPARATOR").field(&self.0).finish() + f.debug_tuple("TCP_ICW_LEVEL").field(&self.0).finish() } } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct WSAESETSERVICEOP(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RNRSERVICE_REGISTER: WSAESETSERVICEOP = WSAESETSERVICEOP(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RNRSERVICE_DEREGISTER: WSAESETSERVICEOP = WSAESETSERVICEOP(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const RNRSERVICE_DELETE: WSAESETSERVICEOP = WSAESETSERVICEOP(2i32); -impl ::core::marker::Copy for WSAESETSERVICEOP {} -impl ::core::clone::Clone for WSAESETSERVICEOP { +pub struct TCP_ICW_PARAMETERS { + pub Level: TCP_ICW_LEVEL, +} +impl ::core::marker::Copy for TCP_ICW_PARAMETERS {} +impl ::core::clone::Clone for TCP_ICW_PARAMETERS { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for WSAESETSERVICEOP { - fn default() -> Self { - Self(0) +impl ::core::fmt::Debug for TCP_ICW_PARAMETERS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("TCP_ICW_PARAMETERS").field("Level", &self.Level).finish() } } -unsafe impl ::windows::core::Abi for WSAESETSERVICEOP { +unsafe impl ::windows::core::Abi for TCP_ICW_PARAMETERS { type Abi = Self; } -impl ::core::fmt::Debug for WSAESETSERVICEOP { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("WSAESETSERVICEOP").field(&self.0).finish() - } -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAEnumNameSpaceProvidersA(lpdwbufferlength: &mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOA) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAEnumNameSpaceProvidersA(lpdwbufferlength: *mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOA) -> i32; - } - WSAEnumNameSpaceProvidersA(::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpnspbuffer)) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -#[inline] -pub unsafe fn WSAEnumNameSpaceProvidersExA(lpdwbufferlength: &mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOEXA) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAEnumNameSpaceProvidersExA(lpdwbufferlength: *mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOEXA) -> i32; +impl ::core::cmp::PartialEq for TCP_ICW_PARAMETERS { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - WSAEnumNameSpaceProvidersExA(::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpnspbuffer)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -#[inline] -pub unsafe fn WSAEnumNameSpaceProvidersExW(lpdwbufferlength: &mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOEXW) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAEnumNameSpaceProvidersExW(lpdwbufferlength: *mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOEXW) -> i32; +impl ::core::cmp::Eq for TCP_ICW_PARAMETERS {} +impl ::core::default::Default for TCP_ICW_PARAMETERS { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - WSAEnumNameSpaceProvidersExW(::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpnspbuffer)) } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAEnumNameSpaceProvidersW(lpdwbufferlength: &mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOW) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAEnumNameSpaceProvidersW(lpdwbufferlength: *mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOW) -> i32; +pub struct TCP_INFO_v0 { + pub State: TCPSTATE, + pub Mss: u32, + pub ConnectionTimeMs: u64, + pub TimestampsEnabled: super::super::Foundation::BOOLEAN, + pub RttUs: u32, + pub MinRttUs: u32, + pub BytesInFlight: u32, + pub Cwnd: u32, + pub SndWnd: u32, + pub RcvWnd: u32, + pub RcvBuf: u32, + pub BytesOut: u64, + pub BytesIn: u64, + pub BytesReordered: u32, + pub BytesRetrans: u32, + pub FastRetrans: u32, + pub DupAcksIn: u32, + pub TimeoutEpisodes: u32, + pub SynRetrans: u8, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for TCP_INFO_v0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for TCP_INFO_v0 { + fn clone(&self) -> Self { + *self } - WSAEnumNameSpaceProvidersW(::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpnspbuffer)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAEnumNetworkEvents<'a, P0, P1>(s: P0, heventobject: P1, lpnetworkevents: &mut WSANETWORKEVENTS) -> i32 -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAEnumNetworkEvents(s: SOCKET, heventobject: super::super::Foundation::HANDLE, lpnetworkevents: *mut WSANETWORKEVENTS) -> i32; +impl ::core::fmt::Debug for TCP_INFO_v0 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("TCP_INFO_v0") + .field("State", &self.State) + .field("Mss", &self.Mss) + .field("ConnectionTimeMs", &self.ConnectionTimeMs) + .field("TimestampsEnabled", &self.TimestampsEnabled) + .field("RttUs", &self.RttUs) + .field("MinRttUs", &self.MinRttUs) + .field("BytesInFlight", &self.BytesInFlight) + .field("Cwnd", &self.Cwnd) + .field("SndWnd", &self.SndWnd) + .field("RcvWnd", &self.RcvWnd) + .field("RcvBuf", &self.RcvBuf) + .field("BytesOut", &self.BytesOut) + .field("BytesIn", &self.BytesIn) + .field("BytesReordered", &self.BytesReordered) + .field("BytesRetrans", &self.BytesRetrans) + .field("FastRetrans", &self.FastRetrans) + .field("DupAcksIn", &self.DupAcksIn) + .field("TimeoutEpisodes", &self.TimeoutEpisodes) + .field("SynRetrans", &self.SynRetrans) + .finish() } - WSAEnumNetworkEvents(s.into(), heventobject.into(), ::core::mem::transmute(lpnetworkevents)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAEnumProtocolsA(lpiprotocols: ::core::option::Option<&i32>, lpprotocolbuffer: *mut WSAPROTOCOL_INFOA, lpdwbufferlength: &mut u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAEnumProtocolsA(lpiprotocols: *const i32, lpprotocolbuffer: *mut WSAPROTOCOL_INFOA, lpdwbufferlength: *mut u32) -> i32; +unsafe impl ::windows::core::Abi for TCP_INFO_v0 { + type Abi = Self; +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for TCP_INFO_v0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - WSAEnumProtocolsA(::core::mem::transmute(lpiprotocols), ::core::mem::transmute(lpprotocolbuffer), ::core::mem::transmute(lpdwbufferlength)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSAEnumProtocolsW(lpiprotocols: ::core::option::Option<&i32>, lpprotocolbuffer: *mut WSAPROTOCOL_INFOW, lpdwbufferlength: &mut u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAEnumProtocolsW(lpiprotocols: *const i32, lpprotocolbuffer: *mut WSAPROTOCOL_INFOW, lpdwbufferlength: *mut u32) -> i32; +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for TCP_INFO_v0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for TCP_INFO_v0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - WSAEnumProtocolsW(::core::mem::transmute(lpiprotocols), ::core::mem::transmute(lpprotocolbuffer), ::core::mem::transmute(lpdwbufferlength)) } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAEventSelect<'a, P0, P1>(s: P0, heventobject: P1, lnetworkevents: i32) -> i32 -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAEventSelect(s: SOCKET, heventobject: super::super::Foundation::HANDLE, lnetworkevents: i32) -> i32; +pub struct TCP_INFO_v1 { + pub State: TCPSTATE, + pub Mss: u32, + pub ConnectionTimeMs: u64, + pub TimestampsEnabled: super::super::Foundation::BOOLEAN, + pub RttUs: u32, + pub MinRttUs: u32, + pub BytesInFlight: u32, + pub Cwnd: u32, + pub SndWnd: u32, + pub RcvWnd: u32, + pub RcvBuf: u32, + pub BytesOut: u64, + pub BytesIn: u64, + pub BytesReordered: u32, + pub BytesRetrans: u32, + pub FastRetrans: u32, + pub DupAcksIn: u32, + pub TimeoutEpisodes: u32, + pub SynRetrans: u8, + pub SndLimTransRwin: u32, + pub SndLimTimeRwin: u32, + pub SndLimBytesRwin: u64, + pub SndLimTransCwnd: u32, + pub SndLimTimeCwnd: u32, + pub SndLimBytesCwnd: u64, + pub SndLimTransSnd: u32, + pub SndLimTimeSnd: u32, + pub SndLimBytesSnd: u64, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for TCP_INFO_v1 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for TCP_INFO_v1 { + fn clone(&self) -> Self { + *self } - WSAEventSelect(s.into(), heventobject.into(), lnetworkevents) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSAGetLastError() -> WSA_ERROR { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAGetLastError() -> WSA_ERROR; +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for TCP_INFO_v1 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("TCP_INFO_v1") + .field("State", &self.State) + .field("Mss", &self.Mss) + .field("ConnectionTimeMs", &self.ConnectionTimeMs) + .field("TimestampsEnabled", &self.TimestampsEnabled) + .field("RttUs", &self.RttUs) + .field("MinRttUs", &self.MinRttUs) + .field("BytesInFlight", &self.BytesInFlight) + .field("Cwnd", &self.Cwnd) + .field("SndWnd", &self.SndWnd) + .field("RcvWnd", &self.RcvWnd) + .field("RcvBuf", &self.RcvBuf) + .field("BytesOut", &self.BytesOut) + .field("BytesIn", &self.BytesIn) + .field("BytesReordered", &self.BytesReordered) + .field("BytesRetrans", &self.BytesRetrans) + .field("FastRetrans", &self.FastRetrans) + .field("DupAcksIn", &self.DupAcksIn) + .field("TimeoutEpisodes", &self.TimeoutEpisodes) + .field("SynRetrans", &self.SynRetrans) + .field("SndLimTransRwin", &self.SndLimTransRwin) + .field("SndLimTimeRwin", &self.SndLimTimeRwin) + .field("SndLimBytesRwin", &self.SndLimBytesRwin) + .field("SndLimTransCwnd", &self.SndLimTransCwnd) + .field("SndLimTimeCwnd", &self.SndLimTimeCwnd) + .field("SndLimBytesCwnd", &self.SndLimBytesCwnd) + .field("SndLimTransSnd", &self.SndLimTransSnd) + .field("SndLimTimeSnd", &self.SndLimTimeSnd) + .field("SndLimBytesSnd", &self.SndLimBytesSnd) + .finish() } - WSAGetLastError() } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn WSAGetOverlappedResult<'a, P0, P1>(s: P0, lpoverlapped: &super::super::System::IO::OVERLAPPED, lpcbtransfer: &mut u32, fwait: P1, lpdwflags: &mut u32) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAGetOverlappedResult(s: SOCKET, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpcbtransfer: *mut u32, fwait: super::super::Foundation::BOOL, lpdwflags: *mut u32) -> super::super::Foundation::BOOL; +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for TCP_INFO_v1 { + type Abi = Self; +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for TCP_INFO_v1 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - WSAGetOverlappedResult(s.into(), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcbtransfer), fwait.into(), ::core::mem::transmute(lpdwflags)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAGetQOSByName<'a, P0>(s: P0, lpqosname: &WSABUF, lpqos: &mut QOS) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAGetQOSByName(s: SOCKET, lpqosname: *const WSABUF, lpqos: *mut QOS) -> super::super::Foundation::BOOL; +impl ::core::cmp::Eq for TCP_INFO_v1 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for TCP_INFO_v1 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - WSAGetQOSByName(s.into(), ::core::mem::transmute(lpqosname), ::core::mem::transmute(lpqos)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSAGetServiceClassInfoA(lpproviderid: &::windows::core::GUID, lpserviceclassid: &::windows::core::GUID, lpdwbufsize: &mut u32, lpserviceclassinfo: *mut WSASERVICECLASSINFOA) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAGetServiceClassInfoA(lpproviderid: *const ::windows::core::GUID, lpserviceclassid: *const ::windows::core::GUID, lpdwbufsize: *mut u32, lpserviceclassinfo: *mut WSASERVICECLASSINFOA) -> i32; - } - WSAGetServiceClassInfoA(::core::mem::transmute(lpproviderid), ::core::mem::transmute(lpserviceclassid), ::core::mem::transmute(lpdwbufsize), ::core::mem::transmute(lpserviceclassinfo)) -} +pub const TCP_INITIAL_RTO_DEFAULT_MAX_SYN_RETRANSMISSIONS: u32 = 0u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSAGetServiceClassInfoW(lpproviderid: &::windows::core::GUID, lpserviceclassid: &::windows::core::GUID, lpdwbufsize: &mut u32, lpserviceclassinfo: *mut WSASERVICECLASSINFOW) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAGetServiceClassInfoW(lpproviderid: *const ::windows::core::GUID, lpserviceclassid: *const ::windows::core::GUID, lpdwbufsize: *mut u32, lpserviceclassinfo: *mut WSASERVICECLASSINFOW) -> i32; - } - WSAGetServiceClassInfoW(::core::mem::transmute(lpproviderid), ::core::mem::transmute(lpserviceclassid), ::core::mem::transmute(lpdwbufsize), ::core::mem::transmute(lpserviceclassinfo)) -} +pub const TCP_INITIAL_RTO_DEFAULT_RTT: u32 = 0u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSAGetServiceClassNameByClassIdA(lpserviceclassid: &::windows::core::GUID, lpszserviceclassname: ::windows::core::PSTR, lpdwbufferlength: &mut u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAGetServiceClassNameByClassIdA(lpserviceclassid: *const ::windows::core::GUID, lpszserviceclassname: ::windows::core::PSTR, lpdwbufferlength: *mut u32) -> i32; - } - WSAGetServiceClassNameByClassIdA(::core::mem::transmute(lpserviceclassid), ::core::mem::transmute(lpszserviceclassname), ::core::mem::transmute(lpdwbufferlength)) +pub struct TCP_INITIAL_RTO_PARAMETERS { + pub Rtt: u16, + pub MaxSynRetransmissions: u8, } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSAGetServiceClassNameByClassIdW(lpserviceclassid: &::windows::core::GUID, lpszserviceclassname: ::windows::core::PWSTR, lpdwbufferlength: &mut u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAGetServiceClassNameByClassIdW(lpserviceclassid: *const ::windows::core::GUID, lpszserviceclassname: ::windows::core::PWSTR, lpdwbufferlength: *mut u32) -> i32; +impl ::core::marker::Copy for TCP_INITIAL_RTO_PARAMETERS {} +impl ::core::clone::Clone for TCP_INITIAL_RTO_PARAMETERS { + fn clone(&self) -> Self { + *self } - WSAGetServiceClassNameByClassIdW(::core::mem::transmute(lpserviceclassid), ::core::mem::transmute(lpszserviceclassname), ::core::mem::transmute(lpdwbufferlength)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSAHtonl<'a, P0>(s: P0, hostlong: u32, lpnetlong: &mut u32) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAHtonl(s: SOCKET, hostlong: u32, lpnetlong: *mut u32) -> i32; +impl ::core::fmt::Debug for TCP_INITIAL_RTO_PARAMETERS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("TCP_INITIAL_RTO_PARAMETERS").field("Rtt", &self.Rtt).field("MaxSynRetransmissions", &self.MaxSynRetransmissions).finish() } - WSAHtonl(s.into(), hostlong, ::core::mem::transmute(lpnetlong)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSAHtons<'a, P0>(s: P0, hostshort: u16, lpnetshort: &mut u16) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAHtons(s: SOCKET, hostshort: u16, lpnetshort: *mut u16) -> i32; - } - WSAHtons(s.into(), hostshort, ::core::mem::transmute(lpnetshort)) +unsafe impl ::windows::core::Abi for TCP_INITIAL_RTO_PARAMETERS { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAImpersonateSocketPeer<'a, P0>(socket: P0, peeraddr: ::core::option::Option<&[u8]>) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAImpersonateSocketPeer(socket: SOCKET, peeraddr: *const SOCKADDR, peeraddrlen: u32) -> i32; +impl ::core::cmp::PartialEq for TCP_INITIAL_RTO_PARAMETERS { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - WSAImpersonateSocketPeer(socket.into(), ::core::mem::transmute(peeraddr.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), peeraddr.as_deref().map_or(0, |slice| slice.len() as _)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSAInstallServiceClassA(lpserviceclassinfo: &WSASERVICECLASSINFOA) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAInstallServiceClassA(lpserviceclassinfo: *const WSASERVICECLASSINFOA) -> i32; +impl ::core::cmp::Eq for TCP_INITIAL_RTO_PARAMETERS {} +impl ::core::default::Default for TCP_INITIAL_RTO_PARAMETERS { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - WSAInstallServiceClassA(::core::mem::transmute(lpserviceclassinfo)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSAInstallServiceClassW(lpserviceclassinfo: &WSASERVICECLASSINFOW) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAInstallServiceClassW(lpserviceclassinfo: *const WSASERVICECLASSINFOW) -> i32; - } - WSAInstallServiceClassW(::core::mem::transmute(lpserviceclassinfo)) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn WSAIoctl<'a, P0>(s: P0, dwiocontrolcode: u32, lpvinbuffer: ::core::option::Option<&[u8]>, lpvoutbuffer: ::core::option::Option<&mut [u8]>, lpcbbytesreturned: &mut u32, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAIoctl(s: SOCKET, dwiocontrolcode: u32, lpvinbuffer: *const ::core::ffi::c_void, cbinbuffer: u32, lpvoutbuffer: *mut ::core::ffi::c_void, cboutbuffer: u32, lpcbbytesreturned: *mut u32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void) -> i32; - } - WSAIoctl(s.into(), dwiocontrolcode, ::core::mem::transmute(lpvinbuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpvinbuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(lpvoutbuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpvoutbuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(lpcbbytesreturned), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine)) +pub const TCP_KEEPALIVE: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_KEEPCNT: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_KEEPIDLE: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_KEEPINTVL: u32 = 17u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_MAXRT: u32 = 5u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_MAXRTMS: u32 = 14u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_MAXSEG: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_NODELAY: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_NOSYNRETRIES: u32 = 9u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_NOURG: u32 = 7u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_OFFLOAD_NOT_PREFERRED: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_OFFLOAD_NO_PREFERENCE: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_OFFLOAD_PREFERENCE: u32 = 11u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_OFFLOAD_PREFERRED: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_STDURG: u32 = 6u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TCP_TIMESTAMPS: u32 = 10u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TF_DISCONNECT: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TF_REUSE_SOCKET: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TF_USE_DEFAULT_WORKER: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TF_USE_KERNEL_APC: u32 = 32u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TF_USE_SYSTEM_THREAD: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TF_WRITE_BEHIND: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_ACK: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_CWR: u32 = 128u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_ECE: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_FIN: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_NETDEV: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_OPT_EOL: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_OPT_FASTOPEN: u32 = 34u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_OPT_MSS: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_OPT_NOP: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_OPT_SACK: u32 = 5u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_OPT_SACK_PERMITTED: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_OPT_TS: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_OPT_WS: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_PSH: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_RST: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_SYN: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_TAPI: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TH_URG: u32 = 32u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct TIMESTAMPING_CONFIG { + pub Flags: u32, + pub TxTimestampsBuffered: u16, } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAIsBlocking() -> super::super::Foundation::BOOL { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAIsBlocking() -> super::super::Foundation::BOOL; +impl ::core::marker::Copy for TIMESTAMPING_CONFIG {} +impl ::core::clone::Clone for TIMESTAMPING_CONFIG { + fn clone(&self) -> Self { + *self } - WSAIsBlocking() } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAJoinLeaf<'a, P0>(s: P0, name: &[u8], lpcallerdata: ::core::option::Option<&WSABUF>, lpcalleedata: ::core::option::Option<&mut WSABUF>, lpsqos: ::core::option::Option<&QOS>, lpgqos: ::core::option::Option<&QOS>, dwflags: u32) -> SOCKET -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAJoinLeaf(s: SOCKET, name: *const SOCKADDR, namelen: i32, lpcallerdata: *const WSABUF, lpcalleedata: *mut WSABUF, lpsqos: *const QOS, lpgqos: *const QOS, dwflags: u32) -> SOCKET; +impl ::core::fmt::Debug for TIMESTAMPING_CONFIG { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("TIMESTAMPING_CONFIG").field("Flags", &self.Flags).field("TxTimestampsBuffered", &self.TxTimestampsBuffered).finish() } - WSAJoinLeaf(s.into(), ::core::mem::transmute(name.as_ptr()), name.len() as _, ::core::mem::transmute(lpcallerdata), ::core::mem::transmute(lpcalleedata), ::core::mem::transmute(lpsqos), ::core::mem::transmute(lpgqos), dwflags) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -#[inline] -pub unsafe fn WSALookupServiceBeginA(lpqsrestrictions: &WSAQUERYSETA, dwcontrolflags: u32, lphlookup: &mut super::super::Foundation::HANDLE) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSALookupServiceBeginA(lpqsrestrictions: *const WSAQUERYSETA, dwcontrolflags: u32, lphlookup: *mut super::super::Foundation::HANDLE) -> i32; - } - WSALookupServiceBeginA(::core::mem::transmute(lpqsrestrictions), dwcontrolflags, ::core::mem::transmute(lphlookup)) +unsafe impl ::windows::core::Abi for TIMESTAMPING_CONFIG { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -#[inline] -pub unsafe fn WSALookupServiceBeginW(lpqsrestrictions: &WSAQUERYSETW, dwcontrolflags: u32, lphlookup: &mut super::super::Foundation::HANDLE) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSALookupServiceBeginW(lpqsrestrictions: *const WSAQUERYSETW, dwcontrolflags: u32, lphlookup: *mut super::super::Foundation::HANDLE) -> i32; +impl ::core::cmp::PartialEq for TIMESTAMPING_CONFIG { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - WSALookupServiceBeginW(::core::mem::transmute(lpqsrestrictions), dwcontrolflags, ::core::mem::transmute(lphlookup)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSALookupServiceEnd<'a, P0>(hlookup: P0) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSALookupServiceEnd(hlookup: super::super::Foundation::HANDLE) -> i32; +impl ::core::cmp::Eq for TIMESTAMPING_CONFIG {} +impl ::core::default::Default for TIMESTAMPING_CONFIG { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - WSALookupServiceEnd(hlookup.into()) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -#[inline] -pub unsafe fn WSALookupServiceNextA<'a, P0>(hlookup: P0, dwcontrolflags: u32, lpdwbufferlength: &mut u32, lpqsresults: *mut WSAQUERYSETA) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSALookupServiceNextA(hlookup: super::super::Foundation::HANDLE, dwcontrolflags: u32, lpdwbufferlength: *mut u32, lpqsresults: *mut WSAQUERYSETA) -> i32; - } - WSALookupServiceNextA(hlookup.into(), dwcontrolflags, ::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpqsresults)) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -#[inline] -pub unsafe fn WSALookupServiceNextW<'a, P0>(hlookup: P0, dwcontrolflags: u32, lpdwbufferlength: &mut u32, lpqsresults: *mut WSAQUERYSETW) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSALookupServiceNextW(hlookup: super::super::Foundation::HANDLE, dwcontrolflags: u32, lpdwbufferlength: *mut u32, lpqsresults: *mut WSAQUERYSETW) -> i32; - } - WSALookupServiceNextW(hlookup.into(), dwcontrolflags, ::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpqsresults)) } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TIMESTAMPING_FLAG_RX: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TIMESTAMPING_FLAG_TX: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TNS_PLAN_CARRIER_ID_CODE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TNS_TYPE_NATIONAL: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TP_DISCONNECT: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TP_ELEMENT_EOP: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TP_ELEMENT_FILE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TP_ELEMENT_MEMORY: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TP_REUSE_SOCKET: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TP_USE_DEFAULT_WORKER: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TP_USE_KERNEL_APC: u32 = 32u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TP_USE_SYSTEM_THREAD: u32 = 16u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct WSAMSG { - pub name: *mut SOCKADDR, - pub namelen: i32, - pub lpBuffers: *mut WSABUF, - pub dwBufferCount: u32, - pub Control: WSABUF, - pub dwFlags: u32, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct TRANSMIT_FILE_BUFFERS { + pub Head: *mut ::core::ffi::c_void, + pub HeadLength: u32, + pub Tail: *mut ::core::ffi::c_void, + pub TailLength: u32, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WSAMSG {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WSAMSG { +impl ::core::marker::Copy for TRANSMIT_FILE_BUFFERS {} +impl ::core::clone::Clone for TRANSMIT_FILE_BUFFERS { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WSAMSG { +impl ::core::fmt::Debug for TRANSMIT_FILE_BUFFERS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSAMSG").field("name", &self.name).field("namelen", &self.namelen).field("lpBuffers", &self.lpBuffers).field("dwBufferCount", &self.dwBufferCount).field("Control", &self.Control).field("dwFlags", &self.dwFlags).finish() + f.debug_struct("TRANSMIT_FILE_BUFFERS").field("Head", &self.Head).field("HeadLength", &self.HeadLength).field("Tail", &self.Tail).field("TailLength", &self.TailLength).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WSAMSG { +unsafe impl ::windows::core::Abi for TRANSMIT_FILE_BUFFERS { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WSAMSG { +impl ::core::cmp::PartialEq for TRANSMIT_FILE_BUFFERS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WSAMSG {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WSAMSG { +impl ::core::cmp::Eq for TRANSMIT_FILE_BUFFERS {} +impl ::core::default::Default for TRANSMIT_FILE_BUFFERS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } @@ -14016,127 +13225,66 @@ impl ::core::default::Default for WSAMSG { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct WSANAMESPACE_INFOA { - pub NSProviderId: ::windows::core::GUID, - pub dwNameSpace: u32, - pub fActive: super::super::Foundation::BOOL, - pub dwVersion: u32, - pub lpszIdentifier: ::windows::core::PSTR, +pub struct TRANSMIT_PACKETS_ELEMENT { + pub dwElFlags: u32, + pub cLength: u32, + pub Anonymous: TRANSMIT_PACKETS_ELEMENT_0, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WSANAMESPACE_INFOA {} +impl ::core::marker::Copy for TRANSMIT_PACKETS_ELEMENT {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WSANAMESPACE_INFOA { +impl ::core::clone::Clone for TRANSMIT_PACKETS_ELEMENT { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WSANAMESPACE_INFOA { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSANAMESPACE_INFOA").field("NSProviderId", &self.NSProviderId).field("dwNameSpace", &self.dwNameSpace).field("fActive", &self.fActive).field("dwVersion", &self.dwVersion).field("lpszIdentifier", &self.lpszIdentifier).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WSANAMESPACE_INFOA { +unsafe impl ::windows::core::Abi for TRANSMIT_PACKETS_ELEMENT { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WSANAMESPACE_INFOA { +impl ::core::cmp::PartialEq for TRANSMIT_PACKETS_ELEMENT { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WSANAMESPACE_INFOA {} +impl ::core::cmp::Eq for TRANSMIT_PACKETS_ELEMENT {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WSANAMESPACE_INFOA { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -pub struct WSANAMESPACE_INFOEXA { - pub NSProviderId: ::windows::core::GUID, - pub dwNameSpace: u32, - pub fActive: super::super::Foundation::BOOL, - pub dwVersion: u32, - pub lpszIdentifier: ::windows::core::PSTR, - pub ProviderSpecific: super::super::System::Com::BLOB, -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::marker::Copy for WSANAMESPACE_INFOEXA {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::clone::Clone for WSANAMESPACE_INFOEXA { - fn clone(&self) -> Self { - *self - } -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::fmt::Debug for WSANAMESPACE_INFOEXA { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSANAMESPACE_INFOEXA").field("NSProviderId", &self.NSProviderId).field("dwNameSpace", &self.dwNameSpace).field("fActive", &self.fActive).field("dwVersion", &self.dwVersion).field("lpszIdentifier", &self.lpszIdentifier).field("ProviderSpecific", &self.ProviderSpecific).finish() - } -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -unsafe impl ::windows::core::Abi for WSANAMESPACE_INFOEXA { - type Abi = Self; -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::cmp::PartialEq for WSANAMESPACE_INFOEXA { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::cmp::Eq for WSANAMESPACE_INFOEXA {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::default::Default for WSANAMESPACE_INFOEXA { +impl ::core::default::Default for TRANSMIT_PACKETS_ELEMENT { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -pub struct WSANAMESPACE_INFOEXW { - pub NSProviderId: ::windows::core::GUID, - pub dwNameSpace: u32, - pub fActive: super::super::Foundation::BOOL, - pub dwVersion: u32, - pub lpszIdentifier: ::windows::core::PWSTR, - pub ProviderSpecific: super::super::System::Com::BLOB, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub union TRANSMIT_PACKETS_ELEMENT_0 { + pub Anonymous: TRANSMIT_PACKETS_ELEMENT_0_0, + pub pBuffer: *mut ::core::ffi::c_void, } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::marker::Copy for WSANAMESPACE_INFOEXW {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::clone::Clone for WSANAMESPACE_INFOEXW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for TRANSMIT_PACKETS_ELEMENT_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for TRANSMIT_PACKETS_ELEMENT_0 { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::fmt::Debug for WSANAMESPACE_INFOEXW { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSANAMESPACE_INFOEXW").field("NSProviderId", &self.NSProviderId).field("dwNameSpace", &self.dwNameSpace).field("fActive", &self.fActive).field("dwVersion", &self.dwVersion).field("lpszIdentifier", &self.lpszIdentifier).field("ProviderSpecific", &self.ProviderSpecific).finish() - } -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -unsafe impl ::windows::core::Abi for WSANAMESPACE_INFOEXW { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for TRANSMIT_PACKETS_ELEMENT_0 { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::cmp::PartialEq for WSANAMESPACE_INFOEXW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for TRANSMIT_PACKETS_ELEMENT_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::cmp::Eq for WSANAMESPACE_INFOEXW {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::default::Default for WSANAMESPACE_INFOEXW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for TRANSMIT_PACKETS_ELEMENT_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for TRANSMIT_PACKETS_ELEMENT_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } @@ -14144,1273 +13292,1103 @@ impl ::core::default::Default for WSANAMESPACE_INFOEXW { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct WSANAMESPACE_INFOW { - pub NSProviderId: ::windows::core::GUID, - pub dwNameSpace: u32, - pub fActive: super::super::Foundation::BOOL, - pub dwVersion: u32, - pub lpszIdentifier: ::windows::core::PWSTR, +pub struct TRANSMIT_PACKETS_ELEMENT_0_0 { + pub nFileOffset: i64, + pub hFile: super::super::Foundation::HANDLE, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WSANAMESPACE_INFOW {} +impl ::core::marker::Copy for TRANSMIT_PACKETS_ELEMENT_0_0 {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WSANAMESPACE_INFOW { +impl ::core::clone::Clone for TRANSMIT_PACKETS_ELEMENT_0_0 { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WSANAMESPACE_INFOW { +impl ::core::fmt::Debug for TRANSMIT_PACKETS_ELEMENT_0_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSANAMESPACE_INFOW").field("NSProviderId", &self.NSProviderId).field("dwNameSpace", &self.dwNameSpace).field("fActive", &self.fActive).field("dwVersion", &self.dwVersion).field("lpszIdentifier", &self.lpszIdentifier).finish() + f.debug_struct("TRANSMIT_PACKETS_ELEMENT_0_0").field("nFileOffset", &self.nFileOffset).field("hFile", &self.hFile).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WSANAMESPACE_INFOW { +unsafe impl ::windows::core::Abi for TRANSMIT_PACKETS_ELEMENT_0_0 { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WSANAMESPACE_INFOW { +impl ::core::cmp::PartialEq for TRANSMIT_PACKETS_ELEMENT_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WSANAMESPACE_INFOW {} +impl ::core::cmp::Eq for TRANSMIT_PACKETS_ELEMENT_0_0 {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WSANAMESPACE_INFOW { +impl ::core::default::Default for TRANSMIT_PACKETS_ELEMENT_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct WSANETWORKEVENTS { - pub lNetworkEvents: i32, - pub iErrorCode: [i32; 10], +pub struct TRANSPORT_SETTING_ID { + pub Guid: ::windows::core::GUID, } -impl ::core::marker::Copy for WSANETWORKEVENTS {} -impl ::core::clone::Clone for WSANETWORKEVENTS { +impl ::core::marker::Copy for TRANSPORT_SETTING_ID {} +impl ::core::clone::Clone for TRANSPORT_SETTING_ID { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for WSANETWORKEVENTS { +impl ::core::fmt::Debug for TRANSPORT_SETTING_ID { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSANETWORKEVENTS").field("lNetworkEvents", &self.lNetworkEvents).field("iErrorCode", &self.iErrorCode).finish() + f.debug_struct("TRANSPORT_SETTING_ID").field("Guid", &self.Guid).finish() } } -unsafe impl ::windows::core::Abi for WSANETWORKEVENTS { +unsafe impl ::windows::core::Abi for TRANSPORT_SETTING_ID { type Abi = Self; } -impl ::core::cmp::PartialEq for WSANETWORKEVENTS { +impl ::core::cmp::PartialEq for TRANSPORT_SETTING_ID { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for WSANETWORKEVENTS {} -impl ::core::default::Default for WSANETWORKEVENTS { +impl ::core::cmp::Eq for TRANSPORT_SETTING_ID {} +impl ::core::default::Default for TRANSPORT_SETTING_ID { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct WSANSCLASSINFOA { - pub lpszName: ::windows::core::PSTR, - pub dwNameSpace: u32, - pub dwValueType: u32, - pub dwValueSize: u32, - pub lpValue: *mut ::core::ffi::c_void, -} -impl ::core::marker::Copy for WSANSCLASSINFOA {} -impl ::core::clone::Clone for WSANSCLASSINFOA { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for WSANSCLASSINFOA { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSANSCLASSINFOA").field("lpszName", &self.lpszName).field("dwNameSpace", &self.dwNameSpace).field("dwValueType", &self.dwValueType).field("dwValueSize", &self.dwValueSize).field("lpValue", &self.lpValue).finish() - } -} -unsafe impl ::windows::core::Abi for WSANSCLASSINFOA { - type Abi = Self; -} -impl ::core::cmp::PartialEq for WSANSCLASSINFOA { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for WSANSCLASSINFOA {} -impl ::core::default::Default for WSANSCLASSINFOA { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub const TR_END_TO_END: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct WSANSCLASSINFOW { - pub lpszName: ::windows::core::PWSTR, - pub dwNameSpace: u32, - pub dwValueType: u32, - pub dwValueSize: u32, - pub lpValue: *mut ::core::ffi::c_void, -} -impl ::core::marker::Copy for WSANSCLASSINFOW {} -impl ::core::clone::Clone for WSANSCLASSINFOW { +pub const TR_NOIND: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TR_NO_END_TO_END: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TT_CBR: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TT_NOIND: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TT_VBR: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TUNNEL_SUB_TYPE(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TUNNEL_SUB_TYPE_NONE: TUNNEL_SUB_TYPE = TUNNEL_SUB_TYPE(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TUNNEL_SUB_TYPE_CP: TUNNEL_SUB_TYPE = TUNNEL_SUB_TYPE(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TUNNEL_SUB_TYPE_IPTLS: TUNNEL_SUB_TYPE = TUNNEL_SUB_TYPE(2i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const TUNNEL_SUB_TYPE_HA: TUNNEL_SUB_TYPE = TUNNEL_SUB_TYPE(3i32); +impl ::core::marker::Copy for TUNNEL_SUB_TYPE {} +impl ::core::clone::Clone for TUNNEL_SUB_TYPE { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for WSANSCLASSINFOW { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSANSCLASSINFOW").field("lpszName", &self.lpszName).field("dwNameSpace", &self.dwNameSpace).field("dwValueType", &self.dwValueType).field("dwValueSize", &self.dwValueSize).field("lpValue", &self.lpValue).finish() +impl ::core::default::Default for TUNNEL_SUB_TYPE { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for WSANSCLASSINFOW { +unsafe impl ::windows::core::Abi for TUNNEL_SUB_TYPE { type Abi = Self; } -impl ::core::cmp::PartialEq for WSANSCLASSINFOW { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for WSANSCLASSINFOW {} -impl ::core::default::Default for WSANSCLASSINFOW { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for TUNNEL_SUB_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TUNNEL_SUB_TYPE").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] #[inline] -pub unsafe fn WSANSPIoctl<'a, P0>(hlookup: P0, dwcontrolcode: u32, lpvinbuffer: ::core::option::Option<&[u8]>, lpvoutbuffer: ::core::option::Option<&mut [u8]>, lpcbbytesreturned: &mut u32, lpcompletion: ::core::option::Option<&WSACOMPLETION>) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSANSPIoctl(hlookup: super::super::Foundation::HANDLE, dwcontrolcode: u32, lpvinbuffer: *const ::core::ffi::c_void, cbinbuffer: u32, lpvoutbuffer: *mut ::core::ffi::c_void, cboutbuffer: u32, lpcbbytesreturned: *mut u32, lpcompletion: *const WSACOMPLETION) -> i32; - } - WSANSPIoctl(hlookup.into(), dwcontrolcode, ::core::mem::transmute(lpvinbuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpvinbuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(lpvoutbuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpvoutbuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(lpcbbytesreturned), ::core::mem::transmute(lpcompletion)) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSANtohl<'a, P0>(s: P0, netlong: u32, lphostlong: &mut u32) -> i32 +pub unsafe fn TransmitFile<'a, P0, P1>(hsocket: P0, hfile: P1, nnumberofbytestowrite: u32, nnumberofbytespersend: u32, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lptransmitbuffers: ::core::option::Option<&TRANSMIT_FILE_BUFFERS>, dwreserved: u32) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSANtohl(s: SOCKET, netlong: u32, lphostlong: *mut u32) -> i32; + fn TransmitFile(hsocket: SOCKET, hfile: super::super::Foundation::HANDLE, nnumberofbytestowrite: u32, nnumberofbytespersend: u32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lptransmitbuffers: *const TRANSMIT_FILE_BUFFERS, dwreserved: u32) -> super::super::Foundation::BOOL; } - WSANtohl(s.into(), netlong, ::core::mem::transmute(lphostlong)) + TransmitFile(hsocket.into(), hfile.into(), nnumberofbytestowrite, nnumberofbytespersend, ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lptransmitbuffers), dwreserved) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSANtohs<'a, P0>(s: P0, netshort: u16, lphostshort: &mut u16) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSANtohs(s: SOCKET, netshort: u16, lphostshort: *mut u16) -> i32; - } - WSANtohs(s.into(), netshort, ::core::mem::transmute(lphostshort)) -} +pub const UDP_CHECKSUM_COVERAGE: u32 = 20u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const UDP_COALESCED_INFO: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const UDP_NOCHECKSUM: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const UDP_RECV_MAX_COALESCED_SIZE: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const UDP_SEND_MSG_SIZE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const UNIX_PATH_MAX: u32 = 108u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const UP_P2MP: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const UP_P2P: u32 = 0u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct WSAPOLLDATA { - pub result: i32, - pub fds: u32, - pub timeout: i32, - pub fdArray: [WSAPOLLFD; 1], +pub struct VLAN_TAG { + pub Anonymous: VLAN_TAG_0, + pub Type: u16, } -impl ::core::marker::Copy for WSAPOLLDATA {} -impl ::core::clone::Clone for WSAPOLLDATA { +impl ::core::marker::Copy for VLAN_TAG {} +impl ::core::clone::Clone for VLAN_TAG { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for WSAPOLLDATA { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSAPOLLDATA").field("result", &self.result).field("fds", &self.fds).field("timeout", &self.timeout).field("fdArray", &self.fdArray).finish() - } -} -unsafe impl ::windows::core::Abi for WSAPOLLDATA { +unsafe impl ::windows::core::Abi for VLAN_TAG { type Abi = Self; } -impl ::core::cmp::PartialEq for WSAPOLLDATA { +impl ::core::cmp::PartialEq for VLAN_TAG { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for WSAPOLLDATA {} -impl ::core::default::Default for WSAPOLLDATA { +impl ::core::cmp::Eq for VLAN_TAG {} +impl ::core::default::Default for VLAN_TAG { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct WSAPOLLFD { - pub fd: SOCKET, - pub events: i16, - pub revents: i16, +pub union VLAN_TAG_0 { + pub Tag: u16, + pub Anonymous: VLAN_TAG_0_0, } -impl ::core::marker::Copy for WSAPOLLFD {} -impl ::core::clone::Clone for WSAPOLLFD { +impl ::core::marker::Copy for VLAN_TAG_0 {} +impl ::core::clone::Clone for VLAN_TAG_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for WSAPOLLFD { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSAPOLLFD").field("fd", &self.fd).field("events", &self.events).field("revents", &self.revents).finish() - } -} -unsafe impl ::windows::core::Abi for WSAPOLLFD { +unsafe impl ::windows::core::Abi for VLAN_TAG_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for WSAPOLLFD { +impl ::core::cmp::PartialEq for VLAN_TAG_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for WSAPOLLFD {} -impl ::core::default::Default for WSAPOLLFD { +impl ::core::cmp::Eq for VLAN_TAG_0 {} +impl ::core::default::Default for VLAN_TAG_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct WSAPROTOCOLCHAIN { - pub ChainLen: i32, - pub ChainEntries: [u32; 7], +pub struct VLAN_TAG_0_0 { + pub _bitfield: u16, } -impl ::core::marker::Copy for WSAPROTOCOLCHAIN {} -impl ::core::clone::Clone for WSAPROTOCOLCHAIN { +impl ::core::marker::Copy for VLAN_TAG_0_0 {} +impl ::core::clone::Clone for VLAN_TAG_0_0 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for WSAPROTOCOLCHAIN { +impl ::core::fmt::Debug for VLAN_TAG_0_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSAPROTOCOLCHAIN").field("ChainLen", &self.ChainLen).field("ChainEntries", &self.ChainEntries).finish() + f.debug_struct("VLAN_TAG_0_0").field("_bitfield", &self._bitfield).finish() } } -unsafe impl ::windows::core::Abi for WSAPROTOCOLCHAIN { +unsafe impl ::windows::core::Abi for VLAN_TAG_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for WSAPROTOCOLCHAIN { +impl ::core::cmp::PartialEq for VLAN_TAG_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for WSAPROTOCOLCHAIN {} -impl ::core::default::Default for WSAPROTOCOLCHAIN { +impl ::core::cmp::Eq for VLAN_TAG_0_0 {} +impl ::core::default::Default for VLAN_TAG_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const VNSPROTO_IPC: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const VNSPROTO_RELIABLE_IPC: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const VNSPROTO_SPP: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WCE_AF_IRDA: u32 = 22u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct WSAPROTOCOL_INFOA { - pub dwServiceFlags1: u32, - pub dwServiceFlags2: u32, - pub dwServiceFlags3: u32, - pub dwServiceFlags4: u32, - pub dwProviderFlags: u32, - pub ProviderId: ::windows::core::GUID, - pub dwCatalogEntryId: u32, - pub ProtocolChain: WSAPROTOCOLCHAIN, - pub iVersion: i32, - pub iAddressFamily: i32, - pub iMaxSockAddr: i32, - pub iMinSockAddr: i32, - pub iSocketType: i32, - pub iProtocol: i32, - pub iProtocolMaxOffset: i32, - pub iNetworkByteOrder: i32, - pub iSecurityScheme: i32, - pub dwMessageSize: u32, - pub dwProviderReserved: u32, - pub szProtocol: [super::super::Foundation::CHAR; 256], +pub struct WCE_DEVICELIST { + pub numDevice: u32, + pub Device: [WCE_IRDA_DEVICE_INFO; 1], } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WSAPROTOCOL_INFOA {} +impl ::core::marker::Copy for WCE_DEVICELIST {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WSAPROTOCOL_INFOA { +impl ::core::clone::Clone for WCE_DEVICELIST { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WSAPROTOCOL_INFOA { +impl ::core::fmt::Debug for WCE_DEVICELIST { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSAPROTOCOL_INFOA") - .field("dwServiceFlags1", &self.dwServiceFlags1) - .field("dwServiceFlags2", &self.dwServiceFlags2) - .field("dwServiceFlags3", &self.dwServiceFlags3) - .field("dwServiceFlags4", &self.dwServiceFlags4) - .field("dwProviderFlags", &self.dwProviderFlags) - .field("ProviderId", &self.ProviderId) - .field("dwCatalogEntryId", &self.dwCatalogEntryId) - .field("ProtocolChain", &self.ProtocolChain) - .field("iVersion", &self.iVersion) - .field("iAddressFamily", &self.iAddressFamily) - .field("iMaxSockAddr", &self.iMaxSockAddr) - .field("iMinSockAddr", &self.iMinSockAddr) - .field("iSocketType", &self.iSocketType) - .field("iProtocol", &self.iProtocol) - .field("iProtocolMaxOffset", &self.iProtocolMaxOffset) - .field("iNetworkByteOrder", &self.iNetworkByteOrder) - .field("iSecurityScheme", &self.iSecurityScheme) - .field("dwMessageSize", &self.dwMessageSize) - .field("dwProviderReserved", &self.dwProviderReserved) - .field("szProtocol", &self.szProtocol) - .finish() + f.debug_struct("WCE_DEVICELIST").field("numDevice", &self.numDevice).field("Device", &self.Device).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WSAPROTOCOL_INFOA { +unsafe impl ::windows::core::Abi for WCE_DEVICELIST { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WSAPROTOCOL_INFOA { +impl ::core::cmp::PartialEq for WCE_DEVICELIST { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WSAPROTOCOL_INFOA {} +impl ::core::cmp::Eq for WCE_DEVICELIST {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WSAPROTOCOL_INFOA { +impl ::core::default::Default for WCE_DEVICELIST { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct WSAPROTOCOL_INFOW { - pub dwServiceFlags1: u32, - pub dwServiceFlags2: u32, - pub dwServiceFlags3: u32, - pub dwServiceFlags4: u32, - pub dwProviderFlags: u32, - pub ProviderId: ::windows::core::GUID, - pub dwCatalogEntryId: u32, - pub ProtocolChain: WSAPROTOCOLCHAIN, - pub iVersion: i32, - pub iAddressFamily: i32, - pub iMaxSockAddr: i32, - pub iMinSockAddr: i32, - pub iSocketType: i32, - pub iProtocol: i32, - pub iProtocolMaxOffset: i32, - pub iNetworkByteOrder: i32, - pub iSecurityScheme: i32, - pub dwMessageSize: u32, - pub dwProviderReserved: u32, - pub szProtocol: [u16; 256], +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct WCE_IRDA_DEVICE_INFO { + pub irdaDeviceID: [u8; 4], + pub irdaDeviceName: [super::super::Foundation::CHAR; 22], + pub Reserved: [u8; 2], } -impl ::core::marker::Copy for WSAPROTOCOL_INFOW {} -impl ::core::clone::Clone for WSAPROTOCOL_INFOW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WCE_IRDA_DEVICE_INFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WCE_IRDA_DEVICE_INFO { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for WSAPROTOCOL_INFOW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for WCE_IRDA_DEVICE_INFO { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSAPROTOCOL_INFOW") - .field("dwServiceFlags1", &self.dwServiceFlags1) - .field("dwServiceFlags2", &self.dwServiceFlags2) - .field("dwServiceFlags3", &self.dwServiceFlags3) - .field("dwServiceFlags4", &self.dwServiceFlags4) - .field("dwProviderFlags", &self.dwProviderFlags) - .field("ProviderId", &self.ProviderId) - .field("dwCatalogEntryId", &self.dwCatalogEntryId) - .field("ProtocolChain", &self.ProtocolChain) - .field("iVersion", &self.iVersion) - .field("iAddressFamily", &self.iAddressFamily) - .field("iMaxSockAddr", &self.iMaxSockAddr) - .field("iMinSockAddr", &self.iMinSockAddr) - .field("iSocketType", &self.iSocketType) - .field("iProtocol", &self.iProtocol) - .field("iProtocolMaxOffset", &self.iProtocolMaxOffset) - .field("iNetworkByteOrder", &self.iNetworkByteOrder) - .field("iSecurityScheme", &self.iSecurityScheme) - .field("dwMessageSize", &self.dwMessageSize) - .field("dwProviderReserved", &self.dwProviderReserved) - .field("szProtocol", &self.szProtocol) - .finish() + f.debug_struct("WCE_IRDA_DEVICE_INFO").field("irdaDeviceID", &self.irdaDeviceID).field("irdaDeviceName", &self.irdaDeviceName).field("Reserved", &self.Reserved).finish() } } -unsafe impl ::windows::core::Abi for WSAPROTOCOL_INFOW { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WCE_IRDA_DEVICE_INFO { type Abi = Self; } -impl ::core::cmp::PartialEq for WSAPROTOCOL_INFOW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WCE_IRDA_DEVICE_INFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for WSAPROTOCOL_INFOW {} -impl ::core::default::Default for WSAPROTOCOL_INFOW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WCE_IRDA_DEVICE_INFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WCE_IRDA_DEVICE_INFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAPROTOCOL_LEN: u32 = 255u32; +pub const WCE_PF_IRDA: u32 = 22u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSAPoll(fdarray: &mut WSAPOLLFD, fds: u32, timeout: i32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAPoll(fdarray: *mut WSAPOLLFD, fds: u32, timeout: i32) -> i32; - } - WSAPoll(::core::mem::transmute(fdarray), fds, timeout) -} +pub const WINDOWS_AF_IRDA: u32 = 26u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAProviderCompleteAsyncCall<'a, P0>(hasynccall: P0, iretcode: i32) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAProviderCompleteAsyncCall(hasynccall: super::super::Foundation::HANDLE, iretcode: i32) -> i32; - } - WSAProviderCompleteAsyncCall(hasynccall.into(), iretcode) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn WSAProviderConfigChange(lpnotificationhandle: &mut super::super::Foundation::HANDLE, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAProviderConfigChange(lpnotificationhandle: *mut super::super::Foundation::HANDLE, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void) -> i32; - } - WSAProviderConfigChange(::core::mem::transmute(lpnotificationhandle), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine)) -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -pub struct WSAQUERYSET2A { - pub dwSize: u32, - pub lpszServiceInstanceName: ::windows::core::PSTR, - pub lpVersion: *mut WSAVERSION, - pub lpszComment: ::windows::core::PSTR, - pub dwNameSpace: u32, - pub lpNSProviderId: *mut ::windows::core::GUID, - pub lpszContext: ::windows::core::PSTR, - pub dwNumberOfProtocols: u32, - pub lpafpProtocols: *mut AFPROTOCOLS, - pub lpszQueryString: ::windows::core::PSTR, - pub dwNumberOfCsAddrs: u32, - pub lpcsaBuffer: *mut CSADDR_INFO, - pub dwOutputFlags: u32, - pub lpBlob: *mut super::super::System::Com::BLOB, +pub struct WINDOWS_DEVICELIST { + pub numDevice: u32, + pub Device: [WINDOWS_IRDA_DEVICE_INFO; 1], } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::marker::Copy for WSAQUERYSET2A {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::clone::Clone for WSAQUERYSET2A { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WINDOWS_DEVICELIST {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WINDOWS_DEVICELIST { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::fmt::Debug for WSAQUERYSET2A { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for WINDOWS_DEVICELIST { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSAQUERYSET2A") - .field("dwSize", &self.dwSize) - .field("lpszServiceInstanceName", &self.lpszServiceInstanceName) - .field("lpVersion", &self.lpVersion) - .field("lpszComment", &self.lpszComment) - .field("dwNameSpace", &self.dwNameSpace) - .field("lpNSProviderId", &self.lpNSProviderId) - .field("lpszContext", &self.lpszContext) - .field("dwNumberOfProtocols", &self.dwNumberOfProtocols) - .field("lpafpProtocols", &self.lpafpProtocols) - .field("lpszQueryString", &self.lpszQueryString) - .field("dwNumberOfCsAddrs", &self.dwNumberOfCsAddrs) - .field("lpcsaBuffer", &self.lpcsaBuffer) - .field("dwOutputFlags", &self.dwOutputFlags) - .field("lpBlob", &self.lpBlob) - .finish() + f.debug_struct("WINDOWS_DEVICELIST").field("numDevice", &self.numDevice).field("Device", &self.Device).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -unsafe impl ::windows::core::Abi for WSAQUERYSET2A { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WINDOWS_DEVICELIST { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::cmp::PartialEq for WSAQUERYSET2A { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WINDOWS_DEVICELIST { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::cmp::Eq for WSAQUERYSET2A {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::default::Default for WSAQUERYSET2A { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WINDOWS_DEVICELIST {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WINDOWS_DEVICELIST { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -pub struct WSAQUERYSET2W { - pub dwSize: u32, - pub lpszServiceInstanceName: ::windows::core::PWSTR, - pub lpVersion: *mut WSAVERSION, - pub lpszComment: ::windows::core::PWSTR, - pub dwNameSpace: u32, - pub lpNSProviderId: *mut ::windows::core::GUID, - pub lpszContext: ::windows::core::PWSTR, - pub dwNumberOfProtocols: u32, - pub lpafpProtocols: *mut AFPROTOCOLS, - pub lpszQueryString: ::windows::core::PWSTR, - pub dwNumberOfCsAddrs: u32, - pub lpcsaBuffer: *mut CSADDR_INFO, - pub dwOutputFlags: u32, - pub lpBlob: *mut super::super::System::Com::BLOB, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct WINDOWS_IAS_QUERY { + pub irdaDeviceID: [u8; 4], + pub irdaClassName: [super::super::Foundation::CHAR; 64], + pub irdaAttribName: [super::super::Foundation::CHAR; 256], + pub irdaAttribType: u32, + pub irdaAttribute: WINDOWS_IAS_QUERY_0, } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::marker::Copy for WSAQUERYSET2W {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::clone::Clone for WSAQUERYSET2W { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WINDOWS_IAS_QUERY {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WINDOWS_IAS_QUERY { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::fmt::Debug for WSAQUERYSET2W { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSAQUERYSET2W") - .field("dwSize", &self.dwSize) - .field("lpszServiceInstanceName", &self.lpszServiceInstanceName) - .field("lpVersion", &self.lpVersion) - .field("lpszComment", &self.lpszComment) - .field("dwNameSpace", &self.dwNameSpace) - .field("lpNSProviderId", &self.lpNSProviderId) - .field("lpszContext", &self.lpszContext) - .field("dwNumberOfProtocols", &self.dwNumberOfProtocols) - .field("lpafpProtocols", &self.lpafpProtocols) - .field("lpszQueryString", &self.lpszQueryString) - .field("dwNumberOfCsAddrs", &self.dwNumberOfCsAddrs) - .field("lpcsaBuffer", &self.lpcsaBuffer) - .field("dwOutputFlags", &self.dwOutputFlags) - .field("lpBlob", &self.lpBlob) - .finish() - } -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -unsafe impl ::windows::core::Abi for WSAQUERYSET2W { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WINDOWS_IAS_QUERY { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::cmp::PartialEq for WSAQUERYSET2W { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WINDOWS_IAS_QUERY { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::cmp::Eq for WSAQUERYSET2W {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::default::Default for WSAQUERYSET2W { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WINDOWS_IAS_QUERY {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WINDOWS_IAS_QUERY { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -pub struct WSAQUERYSETA { - pub dwSize: u32, - pub lpszServiceInstanceName: ::windows::core::PSTR, - pub lpServiceClassId: *mut ::windows::core::GUID, - pub lpVersion: *mut WSAVERSION, - pub lpszComment: ::windows::core::PSTR, - pub dwNameSpace: u32, - pub lpNSProviderId: *mut ::windows::core::GUID, - pub lpszContext: ::windows::core::PSTR, - pub dwNumberOfProtocols: u32, - pub lpafpProtocols: *mut AFPROTOCOLS, - pub lpszQueryString: ::windows::core::PSTR, - pub dwNumberOfCsAddrs: u32, - pub lpcsaBuffer: *mut CSADDR_INFO, - pub dwOutputFlags: u32, - pub lpBlob: *mut super::super::System::Com::BLOB, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub union WINDOWS_IAS_QUERY_0 { + pub irdaAttribInt: i32, + pub irdaAttribOctetSeq: WINDOWS_IAS_QUERY_0_0, + pub irdaAttribUsrStr: WINDOWS_IAS_QUERY_0_1, } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::marker::Copy for WSAQUERYSETA {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::clone::Clone for WSAQUERYSETA { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WINDOWS_IAS_QUERY_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WINDOWS_IAS_QUERY_0 { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::fmt::Debug for WSAQUERYSETA { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSAQUERYSETA") - .field("dwSize", &self.dwSize) - .field("lpszServiceInstanceName", &self.lpszServiceInstanceName) - .field("lpServiceClassId", &self.lpServiceClassId) - .field("lpVersion", &self.lpVersion) - .field("lpszComment", &self.lpszComment) - .field("dwNameSpace", &self.dwNameSpace) - .field("lpNSProviderId", &self.lpNSProviderId) - .field("lpszContext", &self.lpszContext) - .field("dwNumberOfProtocols", &self.dwNumberOfProtocols) - .field("lpafpProtocols", &self.lpafpProtocols) - .field("lpszQueryString", &self.lpszQueryString) - .field("dwNumberOfCsAddrs", &self.dwNumberOfCsAddrs) - .field("lpcsaBuffer", &self.lpcsaBuffer) - .field("dwOutputFlags", &self.dwOutputFlags) - .field("lpBlob", &self.lpBlob) - .finish() - } -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -unsafe impl ::windows::core::Abi for WSAQUERYSETA { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WINDOWS_IAS_QUERY_0 { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::cmp::PartialEq for WSAQUERYSETA { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WINDOWS_IAS_QUERY_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::cmp::Eq for WSAQUERYSETA {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::default::Default for WSAQUERYSETA { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WINDOWS_IAS_QUERY_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WINDOWS_IAS_QUERY_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -pub struct WSAQUERYSETW { - pub dwSize: u32, - pub lpszServiceInstanceName: ::windows::core::PWSTR, - pub lpServiceClassId: *mut ::windows::core::GUID, - pub lpVersion: *mut WSAVERSION, - pub lpszComment: ::windows::core::PWSTR, - pub dwNameSpace: u32, - pub lpNSProviderId: *mut ::windows::core::GUID, - pub lpszContext: ::windows::core::PWSTR, - pub dwNumberOfProtocols: u32, - pub lpafpProtocols: *mut AFPROTOCOLS, - pub lpszQueryString: ::windows::core::PWSTR, - pub dwNumberOfCsAddrs: u32, - pub lpcsaBuffer: *mut CSADDR_INFO, - pub dwOutputFlags: u32, - pub lpBlob: *mut super::super::System::Com::BLOB, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct WINDOWS_IAS_QUERY_0_0 { + pub Len: u32, + pub OctetSeq: [u8; 1024], } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::marker::Copy for WSAQUERYSETW {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::clone::Clone for WSAQUERYSETW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WINDOWS_IAS_QUERY_0_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WINDOWS_IAS_QUERY_0_0 { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::fmt::Debug for WSAQUERYSETW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for WINDOWS_IAS_QUERY_0_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSAQUERYSETW") - .field("dwSize", &self.dwSize) - .field("lpszServiceInstanceName", &self.lpszServiceInstanceName) - .field("lpServiceClassId", &self.lpServiceClassId) - .field("lpVersion", &self.lpVersion) - .field("lpszComment", &self.lpszComment) - .field("dwNameSpace", &self.dwNameSpace) - .field("lpNSProviderId", &self.lpNSProviderId) - .field("lpszContext", &self.lpszContext) - .field("dwNumberOfProtocols", &self.dwNumberOfProtocols) - .field("lpafpProtocols", &self.lpafpProtocols) - .field("lpszQueryString", &self.lpszQueryString) - .field("dwNumberOfCsAddrs", &self.dwNumberOfCsAddrs) - .field("lpcsaBuffer", &self.lpcsaBuffer) - .field("dwOutputFlags", &self.dwOutputFlags) - .field("lpBlob", &self.lpBlob) - .finish() + f.debug_struct("WINDOWS_IAS_QUERY_0_0").field("Len", &self.Len).field("OctetSeq", &self.OctetSeq).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -unsafe impl ::windows::core::Abi for WSAQUERYSETW { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WINDOWS_IAS_QUERY_0_0 { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::cmp::PartialEq for WSAQUERYSETW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WINDOWS_IAS_QUERY_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::cmp::Eq for WSAQUERYSETW {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -impl ::core::default::Default for WSAQUERYSETW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WINDOWS_IAS_QUERY_0_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WINDOWS_IAS_QUERY_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn WSAQuerySocketSecurity<'a, P0>(socket: P0, securityquerytemplate: ::core::option::Option<&[u8]>, securityqueryinfo: *mut SOCKET_SECURITY_QUERY_INFO, securityqueryinfolen: &mut u32, overlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, completionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAQuerySocketSecurity(socket: SOCKET, securityquerytemplate: *const SOCKET_SECURITY_QUERY_TEMPLATE, securityquerytemplatelen: u32, securityqueryinfo: *mut SOCKET_SECURITY_QUERY_INFO, securityqueryinfolen: *mut u32, overlapped: *const super::super::System::IO::OVERLAPPED, completionroutine: *mut ::core::ffi::c_void) -> i32; - } - WSAQuerySocketSecurity(socket.into(), ::core::mem::transmute(securityquerytemplate.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), securityquerytemplate.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(securityqueryinfo), ::core::mem::transmute(securityqueryinfolen), ::core::mem::transmute(overlapped), ::core::mem::transmute(completionroutine)) +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct WINDOWS_IAS_QUERY_0_1 { + pub Len: u32, + pub CharSet: u32, + pub UsrStr: [u8; 256], } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn WSARecv<'a, P0>(s: P0, lpbuffers: &[WSABUF], lpnumberofbytesrecvd: ::core::option::Option<&mut u32>, lpflags: &mut u32, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSARecv(s: SOCKET, lpbuffers: *const WSABUF, dwbuffercount: u32, lpnumberofbytesrecvd: *mut u32, lpflags: *mut u32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void) -> i32; +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WINDOWS_IAS_QUERY_0_1 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WINDOWS_IAS_QUERY_0_1 { + fn clone(&self) -> Self { + *self } - WSARecv(s.into(), ::core::mem::transmute(lpbuffers.as_ptr()), lpbuffers.len() as _, ::core::mem::transmute(lpnumberofbytesrecvd), ::core::mem::transmute(lpflags), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSARecvDisconnect<'a, P0>(s: P0, lpinbounddisconnectdata: ::core::option::Option<&WSABUF>) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSARecvDisconnect(s: SOCKET, lpinbounddisconnectdata: *const WSABUF) -> i32; +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for WINDOWS_IAS_QUERY_0_1 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WINDOWS_IAS_QUERY_0_1").field("Len", &self.Len).field("CharSet", &self.CharSet).field("UsrStr", &self.UsrStr).finish() } - WSARecvDisconnect(s.into(), ::core::mem::transmute(lpinbounddisconnectdata)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSARecvEx<'a, P0>(s: P0, buf: &mut [u8], flags: &mut i32) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSARecvEx(s: SOCKET, buf: ::windows::core::PSTR, len: i32, flags: *mut i32) -> i32; - } - WSARecvEx(s.into(), ::core::mem::transmute(buf.as_ptr()), buf.len() as _, ::core::mem::transmute(flags)) +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WINDOWS_IAS_QUERY_0_1 { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn WSARecvFrom<'a, P0>(s: P0, lpbuffers: &[WSABUF], lpnumberofbytesrecvd: ::core::option::Option<&mut u32>, lpflags: &mut u32, lpfrom: *mut SOCKADDR, lpfromlen: ::core::option::Option<&mut i32>, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSARecvFrom(s: SOCKET, lpbuffers: *const WSABUF, dwbuffercount: u32, lpnumberofbytesrecvd: *mut u32, lpflags: *mut u32, lpfrom: *mut SOCKADDR, lpfromlen: *mut i32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void) -> i32; +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WINDOWS_IAS_QUERY_0_1 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - WSARecvFrom(s.into(), ::core::mem::transmute(lpbuffers.as_ptr()), lpbuffers.len() as _, ::core::mem::transmute(lpnumberofbytesrecvd), ::core::mem::transmute(lpflags), ::core::mem::transmute(lpfrom), ::core::mem::transmute(lpfromlen), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSARemoveServiceClass(lpserviceclassid: &::windows::core::GUID) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSARemoveServiceClass(lpserviceclassid: *const ::windows::core::GUID) -> i32; +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WINDOWS_IAS_QUERY_0_1 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WINDOWS_IAS_QUERY_0_1 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - WSARemoveServiceClass(::core::mem::transmute(lpserviceclassid)) } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAResetEvent<'a, P0>(hevent: P0) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAResetEvent(hevent: super::super::Foundation::HANDLE) -> super::super::Foundation::BOOL; +pub struct WINDOWS_IAS_SET { + pub irdaClassName: [super::super::Foundation::CHAR; 64], + pub irdaAttribName: [super::super::Foundation::CHAR; 256], + pub irdaAttribType: u32, + pub irdaAttribute: WINDOWS_IAS_SET_0, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WINDOWS_IAS_SET {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WINDOWS_IAS_SET { + fn clone(&self) -> Self { + *self } - WSAResetEvent(hevent.into()) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSARevertImpersonation() -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSARevertImpersonation() -> i32; +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WINDOWS_IAS_SET { + type Abi = Self; +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WINDOWS_IAS_SET { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WINDOWS_IAS_SET {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WINDOWS_IAS_SET { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - WSARevertImpersonation() } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub struct WSASENDMSG { - pub lpMsg: *mut WSAMSG, - pub dwFlags: u32, - pub lpNumberOfBytesSent: *mut u32, - pub lpOverlapped: *mut super::super::System::IO::OVERLAPPED, - pub lpCompletionRoutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub union WINDOWS_IAS_SET_0 { + pub irdaAttribInt: i32, + pub irdaAttribOctetSeq: WINDOWS_IAS_SET_0_0, + pub irdaAttribUsrStr: WINDOWS_IAS_SET_0_1, } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::marker::Copy for WSASENDMSG {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::clone::Clone for WSASENDMSG { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WINDOWS_IAS_SET_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WINDOWS_IAS_SET_0 { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::fmt::Debug for WSASENDMSG { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WINDOWS_IAS_SET_0 { + type Abi = Self; +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WINDOWS_IAS_SET_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WINDOWS_IAS_SET_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WINDOWS_IAS_SET_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct WINDOWS_IAS_SET_0_0 { + pub Len: u16, + pub OctetSeq: [u8; 1024], +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WINDOWS_IAS_SET_0_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WINDOWS_IAS_SET_0_0 { + fn clone(&self) -> Self { + *self + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for WINDOWS_IAS_SET_0_0 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSASENDMSG").field("lpMsg", &self.lpMsg).field("dwFlags", &self.dwFlags).field("lpNumberOfBytesSent", &self.lpNumberOfBytesSent).field("lpOverlapped", &self.lpOverlapped).field("lpCompletionRoutine", &self.lpCompletionRoutine.map(|f| f as usize)).finish() + f.debug_struct("WINDOWS_IAS_SET_0_0").field("Len", &self.Len).field("OctetSeq", &self.OctetSeq).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -unsafe impl ::windows::core::Abi for WSASENDMSG { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WINDOWS_IAS_SET_0_0 { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::PartialEq for WSASENDMSG { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WINDOWS_IAS_SET_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::Eq for WSASENDMSG {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::default::Default for WSASENDMSG { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WINDOWS_IAS_SET_0_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WINDOWS_IAS_SET_0_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct WSASERVICECLASSINFOA { - pub lpServiceClassId: *mut ::windows::core::GUID, - pub lpszServiceClassName: ::windows::core::PSTR, - pub dwCount: u32, - pub lpClassInfos: *mut WSANSCLASSINFOA, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct WINDOWS_IAS_SET_0_1 { + pub Len: u8, + pub CharSet: u8, + pub UsrStr: [u8; 256], } -impl ::core::marker::Copy for WSASERVICECLASSINFOA {} -impl ::core::clone::Clone for WSASERVICECLASSINFOA { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WINDOWS_IAS_SET_0_1 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WINDOWS_IAS_SET_0_1 { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for WSASERVICECLASSINFOA { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for WINDOWS_IAS_SET_0_1 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSASERVICECLASSINFOA").field("lpServiceClassId", &self.lpServiceClassId).field("lpszServiceClassName", &self.lpszServiceClassName).field("dwCount", &self.dwCount).field("lpClassInfos", &self.lpClassInfos).finish() + f.debug_struct("WINDOWS_IAS_SET_0_1").field("Len", &self.Len).field("CharSet", &self.CharSet).field("UsrStr", &self.UsrStr).finish() } } -unsafe impl ::windows::core::Abi for WSASERVICECLASSINFOA { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WINDOWS_IAS_SET_0_1 { type Abi = Self; } -impl ::core::cmp::PartialEq for WSASERVICECLASSINFOA { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WINDOWS_IAS_SET_0_1 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for WSASERVICECLASSINFOA {} -impl ::core::default::Default for WSASERVICECLASSINFOA { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WINDOWS_IAS_SET_0_1 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WINDOWS_IAS_SET_0_1 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct WSASERVICECLASSINFOW { - pub lpServiceClassId: *mut ::windows::core::GUID, - pub lpszServiceClassName: ::windows::core::PWSTR, - pub dwCount: u32, - pub lpClassInfos: *mut WSANSCLASSINFOW, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct WINDOWS_IRDA_DEVICE_INFO { + pub irdaDeviceID: [u8; 4], + pub irdaDeviceName: [super::super::Foundation::CHAR; 22], + pub irdaDeviceHints1: u8, + pub irdaDeviceHints2: u8, + pub irdaCharSet: u8, } -impl ::core::marker::Copy for WSASERVICECLASSINFOW {} -impl ::core::clone::Clone for WSASERVICECLASSINFOW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WINDOWS_IRDA_DEVICE_INFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WINDOWS_IRDA_DEVICE_INFO { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for WSASERVICECLASSINFOW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for WINDOWS_IRDA_DEVICE_INFO { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSASERVICECLASSINFOW").field("lpServiceClassId", &self.lpServiceClassId).field("lpszServiceClassName", &self.lpszServiceClassName).field("dwCount", &self.dwCount).field("lpClassInfos", &self.lpClassInfos).finish() + f.debug_struct("WINDOWS_IRDA_DEVICE_INFO").field("irdaDeviceID", &self.irdaDeviceID).field("irdaDeviceName", &self.irdaDeviceName).field("irdaDeviceHints1", &self.irdaDeviceHints1).field("irdaDeviceHints2", &self.irdaDeviceHints2).field("irdaCharSet", &self.irdaCharSet).finish() } } -unsafe impl ::windows::core::Abi for WSASERVICECLASSINFOW { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WINDOWS_IRDA_DEVICE_INFO { type Abi = Self; } -impl ::core::cmp::PartialEq for WSASERVICECLASSINFOW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WINDOWS_IRDA_DEVICE_INFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for WSASERVICECLASSINFOW {} -impl ::core::default::Default for WSASERVICECLASSINFOW { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WINDOWS_IRDA_DEVICE_INFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WINDOWS_IRDA_DEVICE_INFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSASYS_STATUS_LEN: u32 = 128u32; +pub const WINDOWS_PF_IRDA: u32 = 26u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] #[inline] -pub unsafe fn WSASend<'a, P0>(s: P0, lpbuffers: &[WSABUF], lpnumberofbytessent: ::core::option::Option<&mut u32>, dwflags: u32, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 +pub unsafe fn WPUCompleteOverlappedRequest<'a, P0>(s: P0, lpoverlapped: &mut super::super::System::IO::OVERLAPPED, dwerror: u32, cbtransferred: u32, lperrno: &mut i32) -> i32 where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSASend(s: SOCKET, lpbuffers: *const WSABUF, dwbuffercount: u32, lpnumberofbytessent: *mut u32, dwflags: u32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void) -> i32; + fn WPUCompleteOverlappedRequest(s: SOCKET, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, dwerror: u32, cbtransferred: u32, lperrno: *mut i32) -> i32; } - WSASend(s.into(), ::core::mem::transmute(lpbuffers.as_ptr()), lpbuffers.len() as _, ::core::mem::transmute(lpnumberofbytessent), dwflags, ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine)) + WPUCompleteOverlappedRequest(s.into(), ::core::mem::transmute(lpoverlapped), dwerror, cbtransferred, ::core::mem::transmute(lperrno)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSASendDisconnect<'a, P0>(s: P0, lpoutbounddisconnectdata: ::core::option::Option<&WSABUF>) -> i32 +pub unsafe fn WSAAccept<'a, P0>(s: P0, addr: *mut SOCKADDR, addrlen: ::core::option::Option<&mut i32>, lpfncondition: LPCONDITIONPROC, dwcallbackdata: usize) -> SOCKET where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSASendDisconnect(s: SOCKET, lpoutbounddisconnectdata: *const WSABUF) -> i32; + fn WSAAccept(s: SOCKET, addr: *mut SOCKADDR, addrlen: *mut i32, lpfncondition: *mut ::core::ffi::c_void, dwcallbackdata: usize) -> SOCKET; } - WSASendDisconnect(s.into(), ::core::mem::transmute(lpoutbounddisconnectdata)) + WSAAccept(s.into(), ::core::mem::transmute(addr), ::core::mem::transmute(addrlen), ::core::mem::transmute(lpfncondition), dwcallbackdata) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSASendMsg<'a, P0>(handle: P0, lpmsg: &WSAMSG, dwflags: u32, lpnumberofbytessent: ::core::option::Option<&mut u32>, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 -where - P0: ::std::convert::Into, -{ +pub unsafe fn WSAAddressToStringA(lpsaaddress: &[u8], lpprotocolinfo: ::core::option::Option<&WSAPROTOCOL_INFOA>, lpszaddressstring: ::windows::core::PSTR, lpdwaddressstringlength: &mut u32) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSASendMsg(handle: SOCKET, lpmsg: *const WSAMSG, dwflags: u32, lpnumberofbytessent: *mut u32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void) -> i32; + fn WSAAddressToStringA(lpsaaddress: *const SOCKADDR, dwaddresslength: u32, lpprotocolinfo: *const WSAPROTOCOL_INFOA, lpszaddressstring: ::windows::core::PSTR, lpdwaddressstringlength: *mut u32) -> i32; } - WSASendMsg(handle.into(), ::core::mem::transmute(lpmsg), dwflags, ::core::mem::transmute(lpnumberofbytessent), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine)) + WSAAddressToStringA(::core::mem::transmute(lpsaaddress.as_ptr()), lpsaaddress.len() as _, ::core::mem::transmute(lpprotocolinfo), ::core::mem::transmute(lpszaddressstring), ::core::mem::transmute(lpdwaddressstringlength)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSASendTo<'a, P0>(s: P0, lpbuffers: &[WSABUF], lpnumberofbytessent: ::core::option::Option<&mut u32>, dwflags: u32, lpto: ::core::option::Option<&[u8]>, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 -where - P0: ::std::convert::Into, -{ +pub unsafe fn WSAAddressToStringW(lpsaaddress: &[u8], lpprotocolinfo: ::core::option::Option<&WSAPROTOCOL_INFOW>, lpszaddressstring: ::windows::core::PWSTR, lpdwaddressstringlength: &mut u32) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSASendTo(s: SOCKET, lpbuffers: *const WSABUF, dwbuffercount: u32, lpnumberofbytessent: *mut u32, dwflags: u32, lpto: *const SOCKADDR, itolen: i32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void) -> i32; + fn WSAAddressToStringW(lpsaaddress: *const SOCKADDR, dwaddresslength: u32, lpprotocolinfo: *const WSAPROTOCOL_INFOW, lpszaddressstring: ::windows::core::PWSTR, lpdwaddressstringlength: *mut u32) -> i32; } - WSASendTo(s.into(), ::core::mem::transmute(lpbuffers.as_ptr()), lpbuffers.len() as _, ::core::mem::transmute(lpnumberofbytessent), dwflags, ::core::mem::transmute(lpto.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpto.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine)) + WSAAddressToStringW(::core::mem::transmute(lpsaaddress.as_ptr()), lpsaaddress.len() as _, ::core::mem::transmute(lpprotocolinfo), ::core::mem::transmute(lpszaddressstring), ::core::mem::transmute(lpdwaddressstringlength)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] #[inline] -pub unsafe fn WSASetBlockingHook(lpblockfunc: super::super::Foundation::FARPROC) -> super::super::Foundation::FARPROC { +pub unsafe fn WSAAdvertiseProvider(puuidproviderid: &::windows::core::GUID, pnspv2routine: &NSPV2_ROUTINE) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSASetBlockingHook(lpblockfunc: *mut ::core::ffi::c_void) -> super::super::Foundation::FARPROC; + fn WSAAdvertiseProvider(puuidproviderid: *const ::windows::core::GUID, pnspv2routine: *const NSPV2_ROUTINE) -> i32; } - WSASetBlockingHook(::core::mem::transmute(lpblockfunc)) + WSAAdvertiseProvider(::core::mem::transmute(puuidproviderid), ::core::mem::transmute(pnspv2routine)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSASetEvent<'a, P0>(hevent: P0) -> super::super::Foundation::BOOL +pub unsafe fn WSAAsyncGetHostByAddr<'a, P0>(hwnd: P0, wmsg: u32, addr: &[u8], r#type: i32, buf: &mut [u8]) -> super::super::Foundation::HANDLE where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSASetEvent(hevent: super::super::Foundation::HANDLE) -> super::super::Foundation::BOOL; + fn WSAAsyncGetHostByAddr(hwnd: super::super::Foundation::HWND, wmsg: u32, addr: ::windows::core::PCSTR, len: i32, r#type: i32, buf: ::windows::core::PSTR, buflen: i32) -> super::super::Foundation::HANDLE; } - WSASetEvent(hevent.into()) + WSAAsyncGetHostByAddr(hwnd.into(), wmsg, ::core::mem::transmute(addr.as_ptr()), addr.len() as _, r#type, ::core::mem::transmute(buf.as_ptr()), buf.len() as _) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSASetLastError(ierror: i32) { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSASetLastError(ierror: i32); - } - WSASetLastError(ierror) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -#[inline] -pub unsafe fn WSASetServiceA(lpqsreginfo: &WSAQUERYSETA, essoperation: WSAESETSERVICEOP, dwcontrolflags: u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSASetServiceA(lpqsreginfo: *const WSAQUERYSETA, essoperation: WSAESETSERVICEOP, dwcontrolflags: u32) -> i32; - } - WSASetServiceA(::core::mem::transmute(lpqsreginfo), essoperation, dwcontrolflags) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] -#[inline] -pub unsafe fn WSASetServiceW(lpqsreginfo: &WSAQUERYSETW, essoperation: WSAESETSERVICEOP, dwcontrolflags: u32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSASetServiceW(lpqsreginfo: *const WSAQUERYSETW, essoperation: WSAESETSERVICEOP, dwcontrolflags: u32) -> i32; - } - WSASetServiceW(::core::mem::transmute(lpqsreginfo), essoperation, dwcontrolflags) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -#[inline] -pub unsafe fn WSASetSocketPeerTargetName<'a, P0>(socket: P0, peertargetname: &[u8], overlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, completionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 +pub unsafe fn WSAAsyncGetHostByName<'a, P0, P1>(hwnd: P0, wmsg: u32, name: P1, buf: &mut [u8]) -> super::super::Foundation::HANDLE where - P0: ::std::convert::Into, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSASetSocketPeerTargetName(socket: SOCKET, peertargetname: *const SOCKET_PEER_TARGET_NAME, peertargetnamelen: u32, overlapped: *const super::super::System::IO::OVERLAPPED, completionroutine: *mut ::core::ffi::c_void) -> i32; + fn WSAAsyncGetHostByName(hwnd: super::super::Foundation::HWND, wmsg: u32, name: ::windows::core::PCSTR, buf: ::windows::core::PSTR, buflen: i32) -> super::super::Foundation::HANDLE; } - WSASetSocketPeerTargetName(socket.into(), ::core::mem::transmute(peertargetname.as_ptr()), peertargetname.len() as _, ::core::mem::transmute(overlapped), ::core::mem::transmute(completionroutine)) + WSAAsyncGetHostByName(hwnd.into(), wmsg, name.into(), ::core::mem::transmute(buf.as_ptr()), buf.len() as _) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSASetSocketSecurity<'a, P0>(socket: P0, securitysettings: ::core::option::Option<&[u8]>, overlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, completionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 +pub unsafe fn WSAAsyncGetProtoByName<'a, P0, P1>(hwnd: P0, wmsg: u32, name: P1, buf: &mut [u8]) -> super::super::Foundation::HANDLE where - P0: ::std::convert::Into, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSASetSocketSecurity(socket: SOCKET, securitysettings: *const SOCKET_SECURITY_SETTINGS, securitysettingslen: u32, overlapped: *const super::super::System::IO::OVERLAPPED, completionroutine: *mut ::core::ffi::c_void) -> i32; + fn WSAAsyncGetProtoByName(hwnd: super::super::Foundation::HWND, wmsg: u32, name: ::windows::core::PCSTR, buf: ::windows::core::PSTR, buflen: i32) -> super::super::Foundation::HANDLE; } - WSASetSocketSecurity(socket.into(), ::core::mem::transmute(securitysettings.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), securitysettings.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(overlapped), ::core::mem::transmute(completionroutine)) + WSAAsyncGetProtoByName(hwnd.into(), wmsg, name.into(), ::core::mem::transmute(buf.as_ptr()), buf.len() as _) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSASocketA(af: i32, r#type: i32, protocol: i32, lpprotocolinfo: ::core::option::Option<&WSAPROTOCOL_INFOA>, g: u32, dwflags: u32) -> SOCKET { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSASocketA(af: i32, r#type: i32, protocol: i32, lpprotocolinfo: *const WSAPROTOCOL_INFOA, g: u32, dwflags: u32) -> SOCKET; - } - WSASocketA(af, r#type, protocol, ::core::mem::transmute(lpprotocolinfo), g, dwflags) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSASocketW(af: i32, r#type: i32, protocol: i32, lpprotocolinfo: ::core::option::Option<&WSAPROTOCOL_INFOW>, g: u32, dwflags: u32) -> SOCKET { +pub unsafe fn WSAAsyncGetProtoByNumber<'a, P0>(hwnd: P0, wmsg: u32, number: i32, buf: &mut [u8]) -> super::super::Foundation::HANDLE +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSASocketW(af: i32, r#type: i32, protocol: i32, lpprotocolinfo: *const WSAPROTOCOL_INFOW, g: u32, dwflags: u32) -> SOCKET; + fn WSAAsyncGetProtoByNumber(hwnd: super::super::Foundation::HWND, wmsg: u32, number: i32, buf: ::windows::core::PSTR, buflen: i32) -> super::super::Foundation::HANDLE; } - WSASocketW(af, r#type, protocol, ::core::mem::transmute(lpprotocolinfo), g, dwflags) + WSAAsyncGetProtoByNumber(hwnd.into(), wmsg, number, ::core::mem::transmute(buf.as_ptr()), buf.len() as _) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSAStartup(wversionrequested: u16, lpwsadata: &mut WSAData) -> i32 { +pub unsafe fn WSAAsyncGetServByName<'a, P0, P1, P2>(hwnd: P0, wmsg: u32, name: P1, proto: P2, buf: &mut [u8]) -> super::super::Foundation::HANDLE +where + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCSTR>, + P2: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSAStartup(wversionrequested: u16, lpwsadata: *mut WSAData) -> i32; + fn WSAAsyncGetServByName(hwnd: super::super::Foundation::HWND, wmsg: u32, name: ::windows::core::PCSTR, proto: ::windows::core::PCSTR, buf: ::windows::core::PSTR, buflen: i32) -> super::super::Foundation::HANDLE; } - WSAStartup(wversionrequested, ::core::mem::transmute(lpwsadata)) + WSAAsyncGetServByName(hwnd.into(), wmsg, name.into(), proto.into(), ::core::mem::transmute(buf.as_ptr()), buf.len() as _) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSAStringToAddressA<'a, P0>(addressstring: P0, addressfamily: i32, lpprotocolinfo: ::core::option::Option<&WSAPROTOCOL_INFOA>, lpaddress: *mut SOCKADDR, lpaddresslength: &mut i32) -> i32 +pub unsafe fn WSAAsyncGetServByPort<'a, P0, P1>(hwnd: P0, wmsg: u32, port: i32, proto: P1, buf: &mut [u8]) -> super::super::Foundation::HANDLE where - P0: ::std::convert::Into<::windows::core::PCSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSAStringToAddressA(addressstring: ::windows::core::PCSTR, addressfamily: i32, lpprotocolinfo: *const WSAPROTOCOL_INFOA, lpaddress: *mut SOCKADDR, lpaddresslength: *mut i32) -> i32; + fn WSAAsyncGetServByPort(hwnd: super::super::Foundation::HWND, wmsg: u32, port: i32, proto: ::windows::core::PCSTR, buf: ::windows::core::PSTR, buflen: i32) -> super::super::Foundation::HANDLE; } - WSAStringToAddressA(addressstring.into(), addressfamily, ::core::mem::transmute(lpprotocolinfo), ::core::mem::transmute(lpaddress), ::core::mem::transmute(lpaddresslength)) + WSAAsyncGetServByPort(hwnd.into(), wmsg, port, proto.into(), ::core::mem::transmute(buf.as_ptr()), buf.len() as _) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSAStringToAddressW<'a, P0>(addressstring: P0, addressfamily: i32, lpprotocolinfo: ::core::option::Option<&WSAPROTOCOL_INFOW>, lpaddress: *mut SOCKADDR, lpaddresslength: &mut i32) -> i32 +pub unsafe fn WSAAsyncSelect<'a, P0, P1>(s: P0, hwnd: P1, wmsg: u32, levent: i32) -> i32 where - P0: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSAStringToAddressW(addressstring: ::windows::core::PCWSTR, addressfamily: i32, lpprotocolinfo: *const WSAPROTOCOL_INFOW, lpaddress: *mut SOCKADDR, lpaddresslength: *mut i32) -> i32; + fn WSAAsyncSelect(s: SOCKET, hwnd: super::super::Foundation::HWND, wmsg: u32, levent: i32) -> i32; } - WSAStringToAddressW(addressstring.into(), addressfamily, ::core::mem::transmute(lpprotocolinfo), ::core::mem::transmute(lpaddress), ::core::mem::transmute(lpaddresslength)) + WSAAsyncSelect(s.into(), hwnd.into(), wmsg, levent) } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct WSATHREADID { - pub ThreadHandle: super::super::Foundation::HANDLE, - pub Reserved: usize, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct WSABUF { + pub len: u32, + pub buf: ::windows::core::PSTR, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WSATHREADID {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WSATHREADID { +impl ::core::marker::Copy for WSABUF {} +impl ::core::clone::Clone for WSABUF { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WSATHREADID { +impl ::core::fmt::Debug for WSABUF { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSATHREADID").field("ThreadHandle", &self.ThreadHandle).field("Reserved", &self.Reserved).finish() + f.debug_struct("WSABUF").field("len", &self.len).field("buf", &self.buf).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WSATHREADID { +unsafe impl ::windows::core::Abi for WSABUF { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WSATHREADID { +impl ::core::cmp::PartialEq for WSABUF { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WSATHREADID {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WSATHREADID { +impl ::core::cmp::Eq for WSABUF {} +impl ::core::default::Default for WSABUF { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSAUnadvertiseProvider(puuidproviderid: &::windows::core::GUID) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAUnadvertiseProvider(puuidproviderid: *const ::windows::core::GUID) -> i32; - } - WSAUnadvertiseProvider(::core::mem::transmute(puuidproviderid)) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSAUnhookBlockingHook() -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAUnhookBlockingHook() -> i32; - } - WSAUnhookBlockingHook() -} #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct WSAVERSION { - pub dwVersion: u32, - pub ecHow: WSAECOMPARATOR, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub struct WSACOMPLETION { + pub Type: WSACOMPLETIONTYPE, + pub Parameters: WSACOMPLETION_0, } -impl ::core::marker::Copy for WSAVERSION {} -impl ::core::clone::Clone for WSAVERSION { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::marker::Copy for WSACOMPLETION {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::clone::Clone for WSACOMPLETION { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for WSAVERSION { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSAVERSION").field("dwVersion", &self.dwVersion).field("ecHow", &self.ecHow).finish() - } -} -unsafe impl ::windows::core::Abi for WSAVERSION { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +unsafe impl ::windows::core::Abi for WSACOMPLETION { type Abi = Self; } -impl ::core::cmp::PartialEq for WSAVERSION { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::PartialEq for WSACOMPLETION { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for WSAVERSION {} -impl ::core::default::Default for WSAVERSION { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::Eq for WSACOMPLETION {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::default::Default for WSACOMPLETION { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn WSAWaitForMultipleEvents<'a, P0, P1>(lphevents: &[super::super::Foundation::HANDLE], fwaitall: P0, dwtimeout: u32, falertable: P1) -> u32 -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSAWaitForMultipleEvents(cevents: u32, lphevents: *const super::super::Foundation::HANDLE, fwaitall: super::super::Foundation::BOOL, dwtimeout: u32, falertable: super::super::Foundation::BOOL) -> u32; - } - WSAWaitForMultipleEvents(lphevents.len() as _, ::core::mem::transmute(lphevents.as_ptr()), fwaitall.into(), dwtimeout, falertable.into()) +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub union WSACOMPLETION_0 { + pub WindowMessage: WSACOMPLETION_0_3, + pub Event: WSACOMPLETION_0_1, + pub Apc: WSACOMPLETION_0_0, + pub Port: WSACOMPLETION_0_2, } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct WSA_COMPATIBILITY_BEHAVIOR_ID(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WsaBehaviorAll: WSA_COMPATIBILITY_BEHAVIOR_ID = WSA_COMPATIBILITY_BEHAVIOR_ID(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WsaBehaviorReceiveBuffering: WSA_COMPATIBILITY_BEHAVIOR_ID = WSA_COMPATIBILITY_BEHAVIOR_ID(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WsaBehaviorAutoTuning: WSA_COMPATIBILITY_BEHAVIOR_ID = WSA_COMPATIBILITY_BEHAVIOR_ID(2i32); -impl ::core::marker::Copy for WSA_COMPATIBILITY_BEHAVIOR_ID {} -impl ::core::clone::Clone for WSA_COMPATIBILITY_BEHAVIOR_ID { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::marker::Copy for WSACOMPLETION_0 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::clone::Clone for WSACOMPLETION_0 { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for WSA_COMPATIBILITY_BEHAVIOR_ID { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for WSA_COMPATIBILITY_BEHAVIOR_ID { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +unsafe impl ::windows::core::Abi for WSACOMPLETION_0 { type Abi = Self; } -impl ::core::fmt::Debug for WSA_COMPATIBILITY_BEHAVIOR_ID { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("WSA_COMPATIBILITY_BEHAVIOR_ID").field(&self.0).finish() +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::PartialEq for WSACOMPLETION_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct WSA_COMPATIBILITY_MODE { - pub BehaviorId: WSA_COMPATIBILITY_BEHAVIOR_ID, - pub TargetOsVersion: u32, -} -impl ::core::marker::Copy for WSA_COMPATIBILITY_MODE {} -impl ::core::clone::Clone for WSA_COMPATIBILITY_MODE { - fn clone(&self) -> Self { - *self +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::Eq for WSACOMPLETION_0 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::default::Default for WSACOMPLETION_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } -impl ::core::fmt::Debug for WSA_COMPATIBILITY_MODE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSA_COMPATIBILITY_MODE").field("BehaviorId", &self.BehaviorId).field("TargetOsVersion", &self.TargetOsVersion).finish() +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub struct WSACOMPLETION_0_0 { + pub lpOverlapped: *mut super::super::System::IO::OVERLAPPED, + pub lpfnCompletionProc: LPWSAOVERLAPPED_COMPLETION_ROUTINE, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::marker::Copy for WSACOMPLETION_0_0 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::clone::Clone for WSACOMPLETION_0_0 { + fn clone(&self) -> Self { + *self } } -unsafe impl ::windows::core::Abi for WSA_COMPATIBILITY_MODE { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::fmt::Debug for WSACOMPLETION_0_0 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSACOMPLETION_0_0").field("lpOverlapped", &self.lpOverlapped).field("lpfnCompletionProc", &self.lpfnCompletionProc.map(|f| f as usize)).finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +unsafe impl ::windows::core::Abi for WSACOMPLETION_0_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for WSA_COMPATIBILITY_MODE { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::PartialEq for WSACOMPLETION_0_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for WSA_COMPATIBILITY_MODE {} -impl ::core::default::Default for WSA_COMPATIBILITY_MODE { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::Eq for WSACOMPLETION_0_0 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::default::Default for WSACOMPLETION_0_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub struct WSACOMPLETION_0_1 { + pub lpOverlapped: *mut super::super::System::IO::OVERLAPPED, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::marker::Copy for WSACOMPLETION_0_1 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::clone::Clone for WSACOMPLETION_0_1 { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::fmt::Debug for WSACOMPLETION_0_1 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSACOMPLETION_0_1").field("lpOverlapped", &self.lpOverlapped).finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +unsafe impl ::windows::core::Abi for WSACOMPLETION_0_1 { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::PartialEq for WSACOMPLETION_0_1 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::Eq for WSACOMPLETION_0_1 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::default::Default for WSACOMPLETION_0_1 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub struct WSACOMPLETION_0_2 { + pub lpOverlapped: *mut super::super::System::IO::OVERLAPPED, + pub hPort: super::super::Foundation::HANDLE, + pub Key: usize, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::marker::Copy for WSACOMPLETION_0_2 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::clone::Clone for WSACOMPLETION_0_2 { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::fmt::Debug for WSACOMPLETION_0_2 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSACOMPLETION_0_2").field("lpOverlapped", &self.lpOverlapped).field("hPort", &self.hPort).field("Key", &self.Key).finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +unsafe impl ::windows::core::Abi for WSACOMPLETION_0_2 { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::PartialEq for WSACOMPLETION_0_2 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::Eq for WSACOMPLETION_0_2 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::default::Default for WSACOMPLETION_0_2 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub struct WSACOMPLETION_0_3 { + pub hWnd: super::super::Foundation::HWND, + pub uMsg: u32, + pub context: super::super::Foundation::WPARAM, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::marker::Copy for WSACOMPLETION_0_3 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::clone::Clone for WSACOMPLETION_0_3 { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::fmt::Debug for WSACOMPLETION_0_3 { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSACOMPLETION_0_3").field("hWnd", &self.hWnd).field("uMsg", &self.uMsg).field("context", &self.context).finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +unsafe impl ::windows::core::Abi for WSACOMPLETION_0_3 { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::PartialEq for WSACOMPLETION_0_3 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::Eq for WSACOMPLETION_0_3 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::default::Default for WSACOMPLETION_0_3 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } @@ -15418,1060 +14396,822 @@ impl ::core::default::Default for WSA_COMPATIBILITY_MODE { #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct WSA_ERROR(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_IO_PENDING: WSA_ERROR = WSA_ERROR(997i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_IO_INCOMPLETE: WSA_ERROR = WSA_ERROR(996i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_INVALID_HANDLE: WSA_ERROR = WSA_ERROR(6i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_INVALID_PARAMETER: WSA_ERROR = WSA_ERROR(87i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_NOT_ENOUGH_MEMORY: WSA_ERROR = WSA_ERROR(8i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_OPERATION_ABORTED: WSA_ERROR = WSA_ERROR(995i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_WAIT_EVENT_0: WSA_ERROR = WSA_ERROR(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_WAIT_IO_COMPLETION: WSA_ERROR = WSA_ERROR(129i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSABASEERR: WSA_ERROR = WSA_ERROR(10000i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEINTR: WSA_ERROR = WSA_ERROR(10004i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEBADF: WSA_ERROR = WSA_ERROR(10009i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEACCES: WSA_ERROR = WSA_ERROR(10013i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEFAULT: WSA_ERROR = WSA_ERROR(10014i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEINVAL: WSA_ERROR = WSA_ERROR(10022i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEMFILE: WSA_ERROR = WSA_ERROR(10024i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEWOULDBLOCK: WSA_ERROR = WSA_ERROR(10035i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEINPROGRESS: WSA_ERROR = WSA_ERROR(10036i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEALREADY: WSA_ERROR = WSA_ERROR(10037i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAENOTSOCK: WSA_ERROR = WSA_ERROR(10038i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEDESTADDRREQ: WSA_ERROR = WSA_ERROR(10039i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEMSGSIZE: WSA_ERROR = WSA_ERROR(10040i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEPROTOTYPE: WSA_ERROR = WSA_ERROR(10041i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAENOPROTOOPT: WSA_ERROR = WSA_ERROR(10042i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEPROTONOSUPPORT: WSA_ERROR = WSA_ERROR(10043i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAESOCKTNOSUPPORT: WSA_ERROR = WSA_ERROR(10044i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEOPNOTSUPP: WSA_ERROR = WSA_ERROR(10045i32); +pub struct WSACOMPLETIONTYPE(pub i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEPFNOSUPPORT: WSA_ERROR = WSA_ERROR(10046i32); +pub const NSP_NOTIFY_IMMEDIATELY: WSACOMPLETIONTYPE = WSACOMPLETIONTYPE(0i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEAFNOSUPPORT: WSA_ERROR = WSA_ERROR(10047i32); +pub const NSP_NOTIFY_HWND: WSACOMPLETIONTYPE = WSACOMPLETIONTYPE(1i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEADDRINUSE: WSA_ERROR = WSA_ERROR(10048i32); +pub const NSP_NOTIFY_EVENT: WSACOMPLETIONTYPE = WSACOMPLETIONTYPE(2i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEADDRNOTAVAIL: WSA_ERROR = WSA_ERROR(10049i32); +pub const NSP_NOTIFY_PORT: WSACOMPLETIONTYPE = WSACOMPLETIONTYPE(3i32); #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAENETDOWN: WSA_ERROR = WSA_ERROR(10050i32); +pub const NSP_NOTIFY_APC: WSACOMPLETIONTYPE = WSACOMPLETIONTYPE(4i32); +impl ::core::marker::Copy for WSACOMPLETIONTYPE {} +impl ::core::clone::Clone for WSACOMPLETIONTYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for WSACOMPLETIONTYPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for WSACOMPLETIONTYPE { + type Abi = Self; +} +impl ::core::fmt::Debug for WSACOMPLETIONTYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("WSACOMPLETIONTYPE").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSACancelAsyncRequest<'a, P0>(hasynctaskhandle: P0) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSACancelAsyncRequest(hasynctaskhandle: super::super::Foundation::HANDLE) -> i32; + } + WSACancelAsyncRequest(hasynctaskhandle.into()) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAENETUNREACH: WSA_ERROR = WSA_ERROR(10051i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAENETRESET: WSA_ERROR = WSA_ERROR(10052i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAECONNABORTED: WSA_ERROR = WSA_ERROR(10053i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAECONNRESET: WSA_ERROR = WSA_ERROR(10054i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAENOBUFS: WSA_ERROR = WSA_ERROR(10055i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEISCONN: WSA_ERROR = WSA_ERROR(10056i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAENOTCONN: WSA_ERROR = WSA_ERROR(10057i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAESHUTDOWN: WSA_ERROR = WSA_ERROR(10058i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAETOOMANYREFS: WSA_ERROR = WSA_ERROR(10059i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAETIMEDOUT: WSA_ERROR = WSA_ERROR(10060i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAECONNREFUSED: WSA_ERROR = WSA_ERROR(10061i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAELOOP: WSA_ERROR = WSA_ERROR(10062i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAENAMETOOLONG: WSA_ERROR = WSA_ERROR(10063i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEHOSTDOWN: WSA_ERROR = WSA_ERROR(10064i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEHOSTUNREACH: WSA_ERROR = WSA_ERROR(10065i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAENOTEMPTY: WSA_ERROR = WSA_ERROR(10066i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEPROCLIM: WSA_ERROR = WSA_ERROR(10067i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEUSERS: WSA_ERROR = WSA_ERROR(10068i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEDQUOT: WSA_ERROR = WSA_ERROR(10069i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAESTALE: WSA_ERROR = WSA_ERROR(10070i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEREMOTE: WSA_ERROR = WSA_ERROR(10071i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSASYSNOTREADY: WSA_ERROR = WSA_ERROR(10091i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAVERNOTSUPPORTED: WSA_ERROR = WSA_ERROR(10092i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSANOTINITIALISED: WSA_ERROR = WSA_ERROR(10093i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEDISCON: WSA_ERROR = WSA_ERROR(10101i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAENOMORE: WSA_ERROR = WSA_ERROR(10102i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAECANCELLED: WSA_ERROR = WSA_ERROR(10103i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEINVALIDPROCTABLE: WSA_ERROR = WSA_ERROR(10104i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEINVALIDPROVIDER: WSA_ERROR = WSA_ERROR(10105i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEPROVIDERFAILEDINIT: WSA_ERROR = WSA_ERROR(10106i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSASYSCALLFAILURE: WSA_ERROR = WSA_ERROR(10107i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSASERVICE_NOT_FOUND: WSA_ERROR = WSA_ERROR(10108i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSATYPE_NOT_FOUND: WSA_ERROR = WSA_ERROR(10109i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_E_NO_MORE: WSA_ERROR = WSA_ERROR(10110i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_E_CANCELLED: WSA_ERROR = WSA_ERROR(10111i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAEREFUSED: WSA_ERROR = WSA_ERROR(10112i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSAHOST_NOT_FOUND: WSA_ERROR = WSA_ERROR(11001i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSATRY_AGAIN: WSA_ERROR = WSA_ERROR(11002i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSANO_RECOVERY: WSA_ERROR = WSA_ERROR(11003i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSANO_DATA: WSA_ERROR = WSA_ERROR(11004i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_RECEIVERS: WSA_ERROR = WSA_ERROR(11005i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_SENDERS: WSA_ERROR = WSA_ERROR(11006i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_NO_SENDERS: WSA_ERROR = WSA_ERROR(11007i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_NO_RECEIVERS: WSA_ERROR = WSA_ERROR(11008i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_REQUEST_CONFIRMED: WSA_ERROR = WSA_ERROR(11009i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_ADMISSION_FAILURE: WSA_ERROR = WSA_ERROR(11010i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_POLICY_FAILURE: WSA_ERROR = WSA_ERROR(11011i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_BAD_STYLE: WSA_ERROR = WSA_ERROR(11012i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_BAD_OBJECT: WSA_ERROR = WSA_ERROR(11013i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_TRAFFIC_CTRL_ERROR: WSA_ERROR = WSA_ERROR(11014i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_GENERIC_ERROR: WSA_ERROR = WSA_ERROR(11015i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_ESERVICETYPE: WSA_ERROR = WSA_ERROR(11016i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_EFLOWSPEC: WSA_ERROR = WSA_ERROR(11017i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_EPROVSPECBUF: WSA_ERROR = WSA_ERROR(11018i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_EFILTERSTYLE: WSA_ERROR = WSA_ERROR(11019i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_EFILTERTYPE: WSA_ERROR = WSA_ERROR(11020i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_EFILTERCOUNT: WSA_ERROR = WSA_ERROR(11021i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_EOBJLENGTH: WSA_ERROR = WSA_ERROR(11022i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_EFLOWCOUNT: WSA_ERROR = WSA_ERROR(11023i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_EUNKOWNPSOBJ: WSA_ERROR = WSA_ERROR(11024i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_EPOLICYOBJ: WSA_ERROR = WSA_ERROR(11025i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_EFLOWDESC: WSA_ERROR = WSA_ERROR(11026i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_EPSFLOWSPEC: WSA_ERROR = WSA_ERROR(11027i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_EPSFILTERSPEC: WSA_ERROR = WSA_ERROR(11028i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_ESDMODEOBJ: WSA_ERROR = WSA_ERROR(11029i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_ESHAPERATEOBJ: WSA_ERROR = WSA_ERROR(11030i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_QOS_RESERVED_PETYPE: WSA_ERROR = WSA_ERROR(11031i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_SECURE_HOST_NOT_FOUND: WSA_ERROR = WSA_ERROR(11032i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_IPSEC_NAME_POLICY_ERROR: WSA_ERROR = WSA_ERROR(11033i32); -impl ::core::marker::Copy for WSA_ERROR {} -impl ::core::clone::Clone for WSA_ERROR { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for WSA_ERROR { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for WSA_ERROR { - type Abi = Self; -} -impl ::core::fmt::Debug for WSA_ERROR { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("WSA_ERROR").field(&self.0).finish() - } -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_FLAG_ACCESS_SYSTEM_SECURITY: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_FLAG_MULTIPOINT_C_LEAF: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_FLAG_MULTIPOINT_C_ROOT: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_FLAG_MULTIPOINT_D_LEAF: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_FLAG_MULTIPOINT_D_ROOT: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_FLAG_NO_HANDLE_INHERIT: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_FLAG_OVERLAPPED: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_FLAG_REGISTERED_IO: u32 = 256u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_INFINITE: u32 = 4294967295u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_MAXIMUM_WAIT_EVENTS: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSA_WAIT_FAILED: u32 = 4294967295u32; +#[inline] +pub unsafe fn WSACancelBlockingCall() -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSACancelBlockingCall() -> i32; + } + WSACancelBlockingCall() +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[inline] -pub unsafe fn WSCDeinstallProvider(lpproviderid: &::windows::core::GUID, lperrno: &mut i32) -> i32 { +pub unsafe fn WSACleanup() -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCDeinstallProvider(lpproviderid: *const ::windows::core::GUID, lperrno: *mut i32) -> i32; + fn WSACleanup() -> i32; } - WSCDeinstallProvider(::core::mem::transmute(lpproviderid), ::core::mem::transmute(lperrno)) + WSACleanup() } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSCDeinstallProvider32(lpproviderid: &::windows::core::GUID, lperrno: &mut i32) -> i32 { +pub unsafe fn WSACloseEvent<'a, P0>(hevent: P0) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCDeinstallProvider32(lpproviderid: *const ::windows::core::GUID, lperrno: *mut i32) -> i32; + fn WSACloseEvent(hevent: super::super::Foundation::HANDLE) -> super::super::Foundation::BOOL; } - WSCDeinstallProvider32(::core::mem::transmute(lpproviderid), ::core::mem::transmute(lperrno)) + WSACloseEvent(hevent.into()) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSCEnableNSProvider<'a, P0>(lpproviderid: &::windows::core::GUID, fenable: P0) -> i32 +pub unsafe fn WSAConnect<'a, P0>(s: P0, name: &[u8], lpcallerdata: ::core::option::Option<&WSABUF>, lpcalleedata: ::core::option::Option<&mut WSABUF>, lpsqos: ::core::option::Option<&QOS>, lpgqos: ::core::option::Option<&QOS>) -> i32 where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCEnableNSProvider(lpproviderid: *const ::windows::core::GUID, fenable: super::super::Foundation::BOOL) -> i32; + fn WSAConnect(s: SOCKET, name: *const SOCKADDR, namelen: i32, lpcallerdata: *const WSABUF, lpcalleedata: *mut WSABUF, lpsqos: *const QOS, lpgqos: *const QOS) -> i32; } - WSCEnableNSProvider(::core::mem::transmute(lpproviderid), fenable.into()) + WSAConnect(s.into(), ::core::mem::transmute(name.as_ptr()), name.len() as _, ::core::mem::transmute(lpcallerdata), ::core::mem::transmute(lpcalleedata), ::core::mem::transmute(lpsqos), ::core::mem::transmute(lpgqos)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] #[inline] -pub unsafe fn WSCEnableNSProvider32<'a, P0>(lpproviderid: &::windows::core::GUID, fenable: P0) -> i32 +pub unsafe fn WSAConnectByList<'a, P0>(s: P0, socketaddress: &SOCKET_ADDRESS_LIST, localaddresslength: ::core::option::Option<&mut u32>, localaddress: *mut SOCKADDR, remoteaddresslength: ::core::option::Option<&mut u32>, remoteaddress: *mut SOCKADDR, timeout: ::core::option::Option<&timeval>, reserved: &mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCEnableNSProvider32(lpproviderid: *const ::windows::core::GUID, fenable: super::super::Foundation::BOOL) -> i32; + fn WSAConnectByList(s: SOCKET, socketaddress: *const SOCKET_ADDRESS_LIST, localaddresslength: *mut u32, localaddress: *mut SOCKADDR, remoteaddresslength: *mut u32, remoteaddress: *mut SOCKADDR, timeout: *const timeval, reserved: *mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL; } - WSCEnableNSProvider32(::core::mem::transmute(lpproviderid), fenable.into()) + WSAConnectByList(s.into(), ::core::mem::transmute(socketaddress), ::core::mem::transmute(localaddresslength), ::core::mem::transmute(localaddress), ::core::mem::transmute(remoteaddresslength), ::core::mem::transmute(remoteaddress), ::core::mem::transmute(timeout), ::core::mem::transmute(reserved)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] #[inline] -pub unsafe fn WSCEnumNameSpaceProviders32(lpdwbufferlength: &mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOW) -> i32 { +pub unsafe fn WSAConnectByNameA<'a, P0, P1, P2>(s: P0, nodename: P1, servicename: P2, localaddresslength: ::core::option::Option<&mut u32>, localaddress: *mut SOCKADDR, remoteaddresslength: ::core::option::Option<&mut u32>, remoteaddress: *mut SOCKADDR, timeout: ::core::option::Option<&timeval>, reserved: &mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCSTR>, + P2: ::std::convert::Into<::windows::core::PCSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCEnumNameSpaceProviders32(lpdwbufferlength: *mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOW) -> i32; + fn WSAConnectByNameA(s: SOCKET, nodename: ::windows::core::PCSTR, servicename: ::windows::core::PCSTR, localaddresslength: *mut u32, localaddress: *mut SOCKADDR, remoteaddresslength: *mut u32, remoteaddress: *mut SOCKADDR, timeout: *const timeval, reserved: *mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL; } - WSCEnumNameSpaceProviders32(::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpnspbuffer)) + WSAConnectByNameA(s.into(), nodename.into(), servicename.into(), ::core::mem::transmute(localaddresslength), ::core::mem::transmute(localaddress), ::core::mem::transmute(remoteaddresslength), ::core::mem::transmute(remoteaddress), ::core::mem::transmute(timeout), ::core::mem::transmute(reserved)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] #[inline] -pub unsafe fn WSCEnumNameSpaceProvidersEx32(lpdwbufferlength: &mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOEXW) -> i32 { +pub unsafe fn WSAConnectByNameW<'a, P0, P1, P2>(s: P0, nodename: P1, servicename: P2, localaddresslength: ::core::option::Option<&mut u32>, localaddress: *mut SOCKADDR, remoteaddresslength: ::core::option::Option<&mut u32>, remoteaddress: *mut SOCKADDR, timeout: ::core::option::Option<&timeval>, reserved: &mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCWSTR>, + P2: ::std::convert::Into<::windows::core::PCWSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCEnumNameSpaceProvidersEx32(lpdwbufferlength: *mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOEXW) -> i32; + fn WSAConnectByNameW(s: SOCKET, nodename: ::windows::core::PCWSTR, servicename: ::windows::core::PCWSTR, localaddresslength: *mut u32, localaddress: *mut SOCKADDR, remoteaddresslength: *mut u32, remoteaddress: *mut SOCKADDR, timeout: *const timeval, reserved: *mut super::super::System::IO::OVERLAPPED) -> super::super::Foundation::BOOL; } - WSCEnumNameSpaceProvidersEx32(::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpnspbuffer)) + WSAConnectByNameW(s.into(), nodename.into(), servicename.into(), ::core::mem::transmute(localaddresslength), ::core::mem::transmute(localaddress), ::core::mem::transmute(remoteaddresslength), ::core::mem::transmute(remoteaddress), ::core::mem::transmute(timeout), ::core::mem::transmute(reserved)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSCEnumProtocols(lpiprotocols: ::core::option::Option<&i32>, lpprotocolbuffer: *mut WSAPROTOCOL_INFOW, lpdwbufferlength: &mut u32, lperrno: &mut i32) -> i32 { +pub unsafe fn WSACreateEvent() -> super::super::Foundation::HANDLE { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCEnumProtocols(lpiprotocols: *const i32, lpprotocolbuffer: *mut WSAPROTOCOL_INFOW, lpdwbufferlength: *mut u32, lperrno: *mut i32) -> i32; + fn WSACreateEvent() -> super::super::Foundation::HANDLE; } - WSCEnumProtocols(::core::mem::transmute(lpiprotocols), ::core::mem::transmute(lpprotocolbuffer), ::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lperrno)) + WSACreateEvent() } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSADESCRIPTION_LEN: u32 = 256u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[inline] -pub unsafe fn WSCEnumProtocols32(lpiprotocols: ::core::option::Option<&i32>, lpprotocolbuffer: *mut WSAPROTOCOL_INFOW, lpdwbufferlength: &mut u32, lperrno: &mut i32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSCEnumProtocols32(lpiprotocols: *const i32, lpprotocolbuffer: *mut WSAPROTOCOL_INFOW, lpdwbufferlength: *mut u32, lperrno: *mut i32) -> i32; - } - WSCEnumProtocols32(::core::mem::transmute(lpiprotocols), ::core::mem::transmute(lpprotocolbuffer), ::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lperrno)) +#[cfg(feature = "Win32_Foundation")] +pub struct WSAData { + pub wVersion: u16, + pub wHighVersion: u16, + pub iMaxSockets: u16, + pub iMaxUdpDg: u16, + pub lpVendorInfo: ::windows::core::PSTR, + pub szDescription: [super::super::Foundation::CHAR; 257], + pub szSystemStatus: [super::super::Foundation::CHAR; 129], } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSCGetApplicationCategory(path: &[u16], extra: ::core::option::Option<&[u16]>, ppermittedlspcategories: &mut u32, lperrno: &mut i32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSCGetApplicationCategory(path: ::windows::core::PCWSTR, pathlength: u32, extra: ::windows::core::PCWSTR, extralength: u32, ppermittedlspcategories: *mut u32, lperrno: *mut i32) -> i32; +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WSAData {} +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WSAData { + fn clone(&self) -> Self { + *self } - WSCGetApplicationCategory(::core::mem::transmute(path.as_ptr()), path.len() as _, ::core::mem::transmute(extra.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), extra.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(ppermittedlspcategories), ::core::mem::transmute(lperrno)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSCGetProviderInfo(lpproviderid: &::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: *mut u8, infosize: &mut usize, flags: u32, lperrno: &mut i32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSCGetProviderInfo(lpproviderid: *const ::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: *mut u8, infosize: *mut usize, flags: u32, lperrno: *mut i32) -> i32; +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for WSAData { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSAData").field("wVersion", &self.wVersion).field("wHighVersion", &self.wHighVersion).field("iMaxSockets", &self.iMaxSockets).field("iMaxUdpDg", &self.iMaxUdpDg).field("lpVendorInfo", &self.lpVendorInfo).field("szDescription", &self.szDescription).field("szSystemStatus", &self.szSystemStatus).finish() } - WSCGetProviderInfo(::core::mem::transmute(lpproviderid), infotype, ::core::mem::transmute(info), ::core::mem::transmute(infosize), flags, ::core::mem::transmute(lperrno)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[inline] -pub unsafe fn WSCGetProviderInfo32(lpproviderid: &::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: *mut u8, infosize: &mut usize, flags: u32, lperrno: &mut i32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSCGetProviderInfo32(lpproviderid: *const ::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: *mut u8, infosize: *mut usize, flags: u32, lperrno: *mut i32) -> i32; - } - WSCGetProviderInfo32(::core::mem::transmute(lpproviderid), infotype, ::core::mem::transmute(info), ::core::mem::transmute(infosize), flags, ::core::mem::transmute(lperrno)) +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WSAData { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSCGetProviderPath(lpproviderid: &::windows::core::GUID, lpszproviderdllpath: ::windows::core::PWSTR, lpproviderdllpathlen: &mut i32, lperrno: &mut i32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSCGetProviderPath(lpproviderid: *const ::windows::core::GUID, lpszproviderdllpath: ::windows::core::PWSTR, lpproviderdllpathlen: *mut i32, lperrno: *mut i32) -> i32; +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WSAData { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - WSCGetProviderPath(::core::mem::transmute(lpproviderid), ::core::mem::transmute(lpszproviderdllpath), ::core::mem::transmute(lpproviderdllpathlen), ::core::mem::transmute(lperrno)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[inline] -pub unsafe fn WSCGetProviderPath32(lpproviderid: &::windows::core::GUID, lpszproviderdllpath: ::windows::core::PWSTR, lpproviderdllpathlen: &mut i32, lperrno: &mut i32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSCGetProviderPath32(lpproviderid: *const ::windows::core::GUID, lpszproviderdllpath: ::windows::core::PWSTR, lpproviderdllpathlen: *mut i32, lperrno: *mut i32) -> i32; +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WSAData {} +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WSAData { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - WSCGetProviderPath32(::core::mem::transmute(lpproviderid), ::core::mem::transmute(lpszproviderdllpath), ::core::mem::transmute(lpproviderdllpathlen), ::core::mem::transmute(lperrno)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSCInstallNameSpace<'a, P0, P1>(lpszidentifier: P0, lpszpathname: P1, dwnamespace: u32, dwversion: u32, lpproviderid: &::windows::core::GUID) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, - P1: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSCInstallNameSpace(lpszidentifier: ::windows::core::PCWSTR, lpszpathname: ::windows::core::PCWSTR, dwnamespace: u32, dwversion: u32, lpproviderid: *const ::windows::core::GUID) -> i32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(target_arch = "x86")] +#[cfg(feature = "Win32_Foundation")] +pub struct WSAData { + pub wVersion: u16, + pub wHighVersion: u16, + pub szDescription: [super::super::Foundation::CHAR; 257], + pub szSystemStatus: [super::super::Foundation::CHAR; 129], + pub iMaxSockets: u16, + pub iMaxUdpDg: u16, + pub lpVendorInfo: ::windows::core::PSTR, +} +#[cfg(target_arch = "x86")] +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WSAData {} +#[cfg(target_arch = "x86")] +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WSAData { + fn clone(&self) -> Self { + *self } - WSCInstallNameSpace(lpszidentifier.into(), lpszpathname.into(), dwnamespace, dwversion, ::core::mem::transmute(lpproviderid)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[inline] -pub unsafe fn WSCInstallNameSpace32<'a, P0, P1>(lpszidentifier: P0, lpszpathname: P1, dwnamespace: u32, dwversion: u32, lpproviderid: &::windows::core::GUID) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, - P1: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSCInstallNameSpace32(lpszidentifier: ::windows::core::PCWSTR, lpszpathname: ::windows::core::PCWSTR, dwnamespace: u32, dwversion: u32, lpproviderid: *const ::windows::core::GUID) -> i32; +#[cfg(target_arch = "x86")] +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for WSAData { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSAData").field("wVersion", &self.wVersion).field("wHighVersion", &self.wHighVersion).field("szDescription", &self.szDescription).field("szSystemStatus", &self.szSystemStatus).field("iMaxSockets", &self.iMaxSockets).field("iMaxUdpDg", &self.iMaxUdpDg).field("lpVendorInfo", &self.lpVendorInfo).finish() } - WSCInstallNameSpace32(lpszidentifier.into(), lpszpathname.into(), dwnamespace, dwversion, ::core::mem::transmute(lpproviderid)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Com\"`*"] -#[cfg(feature = "Win32_System_Com")] -#[inline] -pub unsafe fn WSCInstallNameSpaceEx<'a, P0, P1>(lpszidentifier: P0, lpszpathname: P1, dwnamespace: u32, dwversion: u32, lpproviderid: &::windows::core::GUID, lpproviderspecific: &super::super::System::Com::BLOB) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, - P1: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSCInstallNameSpaceEx(lpszidentifier: ::windows::core::PCWSTR, lpszpathname: ::windows::core::PCWSTR, dwnamespace: u32, dwversion: u32, lpproviderid: *const ::windows::core::GUID, lpproviderspecific: *const super::super::System::Com::BLOB) -> i32; +#[cfg(target_arch = "x86")] +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WSAData { + type Abi = Self; +} +#[cfg(target_arch = "x86")] +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WSAData { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - WSCInstallNameSpaceEx(lpszidentifier.into(), lpszpathname.into(), dwnamespace, dwversion, ::core::mem::transmute(lpproviderid), ::core::mem::transmute(lpproviderspecific)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Com\"`*"] -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[cfg(feature = "Win32_System_Com")] -#[inline] -pub unsafe fn WSCInstallNameSpaceEx32<'a, P0, P1>(lpszidentifier: P0, lpszpathname: P1, dwnamespace: u32, dwversion: u32, lpproviderid: &::windows::core::GUID, lpproviderspecific: &super::super::System::Com::BLOB) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, - P1: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSCInstallNameSpaceEx32(lpszidentifier: ::windows::core::PCWSTR, lpszpathname: ::windows::core::PCWSTR, dwnamespace: u32, dwversion: u32, lpproviderid: *const ::windows::core::GUID, lpproviderspecific: *const super::super::System::Com::BLOB) -> i32; +#[cfg(target_arch = "x86")] +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WSAData {} +#[cfg(target_arch = "x86")] +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WSAData { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - WSCInstallNameSpaceEx32(lpszidentifier.into(), lpszpathname.into(), dwnamespace, dwversion, ::core::mem::transmute(lpproviderid), ::core::mem::transmute(lpproviderspecific)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] #[inline] -pub unsafe fn WSCInstallProvider<'a, P0>(lpproviderid: &::windows::core::GUID, lpszproviderdllpath: P0, lpprotocolinfolist: &[WSAPROTOCOL_INFOW], lperrno: &mut i32) -> i32 +pub unsafe fn WSADeleteSocketPeerTargetName<'a, P0>(socket: P0, peeraddr: &[u8], overlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, completionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 where - P0: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCInstallProvider(lpproviderid: *const ::windows::core::GUID, lpszproviderdllpath: ::windows::core::PCWSTR, lpprotocolinfolist: *const WSAPROTOCOL_INFOW, dwnumberofentries: u32, lperrno: *mut i32) -> i32; + fn WSADeleteSocketPeerTargetName(socket: SOCKET, peeraddr: *const SOCKADDR, peeraddrlen: u32, overlapped: *const super::super::System::IO::OVERLAPPED, completionroutine: *mut ::core::ffi::c_void) -> i32; } - WSCInstallProvider(::core::mem::transmute(lpproviderid), lpszproviderdllpath.into(), ::core::mem::transmute(lpprotocolinfolist.as_ptr()), lpprotocolinfolist.len() as _, ::core::mem::transmute(lperrno)) + WSADeleteSocketPeerTargetName(socket.into(), ::core::mem::transmute(peeraddr.as_ptr()), peeraddr.len() as _, ::core::mem::transmute(overlapped), ::core::mem::transmute(completionroutine)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSCInstallProvider64_32<'a, P0>(lpproviderid: &::windows::core::GUID, lpszproviderdllpath: P0, lpprotocolinfolist: &[WSAPROTOCOL_INFOW], lperrno: &mut i32) -> i32 +pub unsafe fn WSADuplicateSocketA<'a, P0>(s: P0, dwprocessid: u32, lpprotocolinfo: &mut WSAPROTOCOL_INFOA) -> i32 where - P0: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCInstallProvider64_32(lpproviderid: *const ::windows::core::GUID, lpszproviderdllpath: ::windows::core::PCWSTR, lpprotocolinfolist: *const WSAPROTOCOL_INFOW, dwnumberofentries: u32, lperrno: *mut i32) -> i32; + fn WSADuplicateSocketA(s: SOCKET, dwprocessid: u32, lpprotocolinfo: *mut WSAPROTOCOL_INFOA) -> i32; } - WSCInstallProvider64_32(::core::mem::transmute(lpproviderid), lpszproviderdllpath.into(), ::core::mem::transmute(lpprotocolinfolist.as_ptr()), lpprotocolinfolist.len() as _, ::core::mem::transmute(lperrno)) + WSADuplicateSocketA(s.into(), dwprocessid, ::core::mem::transmute(lpprotocolinfo)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] #[inline] -pub unsafe fn WSCInstallProviderAndChains64_32<'a, P0, P1, P2>(lpproviderid: &::windows::core::GUID, lpszproviderdllpath: P0, lpszproviderdllpath32: P1, lpszlspname: P2, dwserviceflags: u32, lpprotocolinfolist: &mut [WSAPROTOCOL_INFOW], lpdwcatalogentryid: ::core::option::Option<&mut u32>, lperrno: &mut i32) -> i32 +pub unsafe fn WSADuplicateSocketW<'a, P0>(s: P0, dwprocessid: u32, lpprotocolinfo: &mut WSAPROTOCOL_INFOW) -> i32 where - P0: ::std::convert::Into<::windows::core::PCWSTR>, - P1: ::std::convert::Into<::windows::core::PCWSTR>, - P2: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCInstallProviderAndChains64_32(lpproviderid: *const ::windows::core::GUID, lpszproviderdllpath: ::windows::core::PCWSTR, lpszproviderdllpath32: ::windows::core::PCWSTR, lpszlspname: ::windows::core::PCWSTR, dwserviceflags: u32, lpprotocolinfolist: *mut WSAPROTOCOL_INFOW, dwnumberofentries: u32, lpdwcatalogentryid: *mut u32, lperrno: *mut i32) -> i32; + fn WSADuplicateSocketW(s: SOCKET, dwprocessid: u32, lpprotocolinfo: *mut WSAPROTOCOL_INFOW) -> i32; } - WSCInstallProviderAndChains64_32(::core::mem::transmute(lpproviderid), lpszproviderdllpath.into(), lpszproviderdllpath32.into(), lpszlspname.into(), dwserviceflags, ::core::mem::transmute(lpprotocolinfolist.as_ptr()), lpprotocolinfolist.len() as _, ::core::mem::transmute(lpdwcatalogentryid), ::core::mem::transmute(lperrno)) + WSADuplicateSocketW(s.into(), dwprocessid, ::core::mem::transmute(lpprotocolinfo)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSCSetApplicationCategory(path: &[u16], extra: ::core::option::Option<&[u16]>, permittedlspcategories: u32, pprevpermlspcat: ::core::option::Option<&mut u32>, lperrno: &mut i32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSCSetApplicationCategory(path: ::windows::core::PCWSTR, pathlength: u32, extra: ::windows::core::PCWSTR, extralength: u32, permittedlspcategories: u32, pprevpermlspcat: *mut u32, lperrno: *mut i32) -> i32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct WSAECOMPARATOR(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const COMP_EQUAL: WSAECOMPARATOR = WSAECOMPARATOR(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const COMP_NOTLESS: WSAECOMPARATOR = WSAECOMPARATOR(1i32); +impl ::core::marker::Copy for WSAECOMPARATOR {} +impl ::core::clone::Clone for WSAECOMPARATOR { + fn clone(&self) -> Self { + *self } - WSCSetApplicationCategory(::core::mem::transmute(path.as_ptr()), path.len() as _, ::core::mem::transmute(extra.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), extra.as_deref().map_or(0, |slice| slice.len() as _), permittedlspcategories, ::core::mem::transmute(pprevpermlspcat), ::core::mem::transmute(lperrno)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSCSetProviderInfo(lpproviderid: &::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: &[u8], flags: u32, lperrno: &mut i32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSCSetProviderInfo(lpproviderid: *const ::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: *const u8, infosize: usize, flags: u32, lperrno: *mut i32) -> i32; +impl ::core::default::Default for WSAECOMPARATOR { + fn default() -> Self { + Self(0) } - WSCSetProviderInfo(::core::mem::transmute(lpproviderid), infotype, ::core::mem::transmute(info.as_ptr()), info.len() as _, flags, ::core::mem::transmute(lperrno)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] -#[inline] -pub unsafe fn WSCSetProviderInfo32(lpproviderid: &::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: &[u8], flags: u32, lperrno: &mut i32) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSCSetProviderInfo32(lpproviderid: *const ::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: *const u8, infosize: usize, flags: u32, lperrno: *mut i32) -> i32; +unsafe impl ::windows::core::Abi for WSAECOMPARATOR { + type Abi = Self; +} +impl ::core::fmt::Debug for WSAECOMPARATOR { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("WSAECOMPARATOR").field(&self.0).finish() } - WSCSetProviderInfo32(::core::mem::transmute(lpproviderid), infotype, ::core::mem::transmute(info.as_ptr()), info.len() as _, flags, ::core::mem::transmute(lperrno)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn WSCUnInstallNameSpace(lpproviderid: &::windows::core::GUID) -> i32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn WSCUnInstallNameSpace(lpproviderid: *const ::windows::core::GUID) -> i32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct WSAESETSERVICEOP(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RNRSERVICE_REGISTER: WSAESETSERVICEOP = WSAESETSERVICEOP(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RNRSERVICE_DEREGISTER: WSAESETSERVICEOP = WSAESETSERVICEOP(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const RNRSERVICE_DELETE: WSAESETSERVICEOP = WSAESETSERVICEOP(2i32); +impl ::core::marker::Copy for WSAESETSERVICEOP {} +impl ::core::clone::Clone for WSAESETSERVICEOP { + fn clone(&self) -> Self { + *self } - WSCUnInstallNameSpace(::core::mem::transmute(lpproviderid)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +impl ::core::default::Default for WSAESETSERVICEOP { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for WSAESETSERVICEOP { + type Abi = Self; +} +impl ::core::fmt::Debug for WSAESETSERVICEOP { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("WSAESETSERVICEOP").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSCUnInstallNameSpace32(lpproviderid: &::windows::core::GUID) -> i32 { +pub unsafe fn WSAEnumNameSpaceProvidersA(lpdwbufferlength: &mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOA) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCUnInstallNameSpace32(lpproviderid: *const ::windows::core::GUID) -> i32; + fn WSAEnumNameSpaceProvidersA(lpdwbufferlength: *mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOA) -> i32; } - WSCUnInstallNameSpace32(::core::mem::transmute(lpproviderid)) + WSAEnumNameSpaceProvidersA(::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpnspbuffer)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] #[inline] -pub unsafe fn WSCUpdateProvider<'a, P0>(lpproviderid: &::windows::core::GUID, lpszproviderdllpath: P0, lpprotocolinfolist: &[WSAPROTOCOL_INFOW], lperrno: &mut i32) -> i32 +pub unsafe fn WSAEnumNameSpaceProvidersExA(lpdwbufferlength: &mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOEXA) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAEnumNameSpaceProvidersExA(lpdwbufferlength: *mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOEXA) -> i32; + } + WSAEnumNameSpaceProvidersExA(::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpnspbuffer)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +#[inline] +pub unsafe fn WSAEnumNameSpaceProvidersExW(lpdwbufferlength: &mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOEXW) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAEnumNameSpaceProvidersExW(lpdwbufferlength: *mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOEXW) -> i32; + } + WSAEnumNameSpaceProvidersExW(::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpnspbuffer)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSAEnumNameSpaceProvidersW(lpdwbufferlength: &mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOW) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAEnumNameSpaceProvidersW(lpdwbufferlength: *mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOW) -> i32; + } + WSAEnumNameSpaceProvidersW(::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpnspbuffer)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSAEnumNetworkEvents<'a, P0, P1>(s: P0, heventobject: P1, lpnetworkevents: &mut WSANETWORKEVENTS) -> i32 where - P0: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCUpdateProvider(lpproviderid: *const ::windows::core::GUID, lpszproviderdllpath: ::windows::core::PCWSTR, lpprotocolinfolist: *const WSAPROTOCOL_INFOW, dwnumberofentries: u32, lperrno: *mut i32) -> i32; + fn WSAEnumNetworkEvents(s: SOCKET, heventobject: super::super::Foundation::HANDLE, lpnetworkevents: *mut WSANETWORKEVENTS) -> i32; } - WSCUpdateProvider(::core::mem::transmute(lpproviderid), lpszproviderdllpath.into(), ::core::mem::transmute(lpprotocolinfolist.as_ptr()), lpprotocolinfolist.len() as _, ::core::mem::transmute(lperrno)) + WSAEnumNetworkEvents(s.into(), heventobject.into(), ::core::mem::transmute(lpnetworkevents)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSAEnumProtocolsA(lpiprotocols: ::core::option::Option<&i32>, lpprotocolbuffer: *mut WSAPROTOCOL_INFOA, lpdwbufferlength: &mut u32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAEnumProtocolsA(lpiprotocols: *const i32, lpprotocolbuffer: *mut WSAPROTOCOL_INFOA, lpdwbufferlength: *mut u32) -> i32; + } + WSAEnumProtocolsA(::core::mem::transmute(lpiprotocols), ::core::mem::transmute(lpprotocolbuffer), ::core::mem::transmute(lpdwbufferlength)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] #[inline] -pub unsafe fn WSCUpdateProvider32<'a, P0>(lpproviderid: &::windows::core::GUID, lpszproviderdllpath: P0, lpprotocolinfolist: &[WSAPROTOCOL_INFOW], lperrno: &mut i32) -> i32 +pub unsafe fn WSAEnumProtocolsW(lpiprotocols: ::core::option::Option<&i32>, lpprotocolbuffer: *mut WSAPROTOCOL_INFOW, lpdwbufferlength: &mut u32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAEnumProtocolsW(lpiprotocols: *const i32, lpprotocolbuffer: *mut WSAPROTOCOL_INFOW, lpdwbufferlength: *mut u32) -> i32; + } + WSAEnumProtocolsW(::core::mem::transmute(lpiprotocols), ::core::mem::transmute(lpprotocolbuffer), ::core::mem::transmute(lpdwbufferlength)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSAEventSelect<'a, P0, P1>(s: P0, heventobject: P1, lnetworkevents: i32) -> i32 where - P0: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCUpdateProvider32(lpproviderid: *const ::windows::core::GUID, lpszproviderdllpath: ::windows::core::PCWSTR, lpprotocolinfolist: *const WSAPROTOCOL_INFOW, dwnumberofentries: u32, lperrno: *mut i32) -> i32; + fn WSAEventSelect(s: SOCKET, heventobject: super::super::Foundation::HANDLE, lnetworkevents: i32) -> i32; } - WSCUpdateProvider32(::core::mem::transmute(lpproviderid), lpszproviderdllpath.into(), ::core::mem::transmute(lpprotocolinfolist.as_ptr()), lpprotocolinfolist.len() as _, ::core::mem::transmute(lperrno)) + WSAEventSelect(s.into(), heventobject.into(), lnetworkevents) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[inline] -pub unsafe fn WSCWriteNameSpaceOrder(lpproviderid: &mut ::windows::core::GUID, dwnumberofentries: u32) -> i32 { +pub unsafe fn WSAGetLastError() -> WSA_ERROR { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCWriteNameSpaceOrder(lpproviderid: *mut ::windows::core::GUID, dwnumberofentries: u32) -> i32; + fn WSAGetLastError() -> WSA_ERROR; } - WSCWriteNameSpaceOrder(::core::mem::transmute(lpproviderid), dwnumberofentries) + WSAGetLastError() } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] #[inline] -pub unsafe fn WSCWriteNameSpaceOrder32(lpproviderid: &mut ::windows::core::GUID, dwnumberofentries: u32) -> i32 { +pub unsafe fn WSAGetOverlappedResult<'a, P0, P1>(s: P0, lpoverlapped: &super::super::System::IO::OVERLAPPED, lpcbtransfer: &mut u32, fwait: P1, lpdwflags: &mut u32) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCWriteNameSpaceOrder32(lpproviderid: *mut ::windows::core::GUID, dwnumberofentries: u32) -> i32; + fn WSAGetOverlappedResult(s: SOCKET, lpoverlapped: *const super::super::System::IO::OVERLAPPED, lpcbtransfer: *mut u32, fwait: super::super::Foundation::BOOL, lpdwflags: *mut u32) -> super::super::Foundation::BOOL; } - WSCWriteNameSpaceOrder32(::core::mem::transmute(lpproviderid), dwnumberofentries) + WSAGetOverlappedResult(s.into(), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcbtransfer), fwait.into(), ::core::mem::transmute(lpdwflags)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn WSCWriteProviderOrder(lpwdcatalogentryid: &mut u32, dwnumberofentries: u32) -> i32 { +pub unsafe fn WSAGetQOSByName<'a, P0>(s: P0, lpqosname: &WSABUF, lpqos: &mut QOS) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCWriteProviderOrder(lpwdcatalogentryid: *mut u32, dwnumberofentries: u32) -> i32; + fn WSAGetQOSByName(s: SOCKET, lpqosname: *const WSABUF, lpqos: *mut QOS) -> super::super::Foundation::BOOL; } - WSCWriteProviderOrder(::core::mem::transmute(lpwdcatalogentryid), dwnumberofentries) + WSAGetQOSByName(s.into(), ::core::mem::transmute(lpqosname), ::core::mem::transmute(lpqos)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] #[inline] -pub unsafe fn WSCWriteProviderOrder32(lpwdcatalogentryid: &mut u32, dwnumberofentries: u32) -> i32 { +pub unsafe fn WSAGetServiceClassInfoA(lpproviderid: &::windows::core::GUID, lpserviceclassid: &::windows::core::GUID, lpdwbufsize: &mut u32, lpserviceclassinfo: *mut WSASERVICECLASSINFOA) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn WSCWriteProviderOrder32(lpwdcatalogentryid: *mut u32, dwnumberofentries: u32) -> i32; + fn WSAGetServiceClassInfoA(lpproviderid: *const ::windows::core::GUID, lpserviceclassid: *const ::windows::core::GUID, lpdwbufsize: *mut u32, lpserviceclassinfo: *mut WSASERVICECLASSINFOA) -> i32; } - WSCWriteProviderOrder32(::core::mem::transmute(lpwdcatalogentryid), dwnumberofentries) + WSAGetServiceClassInfoA(::core::mem::transmute(lpproviderid), ::core::mem::transmute(lpserviceclassid), ::core::mem::transmute(lpdwbufsize), ::core::mem::transmute(lpserviceclassinfo)) } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct WSC_PROVIDER_AUDIT_INFO { - pub RecordSize: u32, - pub Reserved: *mut ::core::ffi::c_void, -} -impl ::core::marker::Copy for WSC_PROVIDER_AUDIT_INFO {} -impl ::core::clone::Clone for WSC_PROVIDER_AUDIT_INFO { - fn clone(&self) -> Self { - *self +#[inline] +pub unsafe fn WSAGetServiceClassInfoW(lpproviderid: &::windows::core::GUID, lpserviceclassid: &::windows::core::GUID, lpdwbufsize: &mut u32, lpserviceclassinfo: *mut WSASERVICECLASSINFOW) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAGetServiceClassInfoW(lpproviderid: *const ::windows::core::GUID, lpserviceclassid: *const ::windows::core::GUID, lpdwbufsize: *mut u32, lpserviceclassinfo: *mut WSASERVICECLASSINFOW) -> i32; } + WSAGetServiceClassInfoW(::core::mem::transmute(lpproviderid), ::core::mem::transmute(lpserviceclassid), ::core::mem::transmute(lpdwbufsize), ::core::mem::transmute(lpserviceclassinfo)) } -impl ::core::fmt::Debug for WSC_PROVIDER_AUDIT_INFO { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSC_PROVIDER_AUDIT_INFO").field("RecordSize", &self.RecordSize).field("Reserved", &self.Reserved).finish() +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSAGetServiceClassNameByClassIdA(lpserviceclassid: &::windows::core::GUID, lpszserviceclassname: ::windows::core::PSTR, lpdwbufferlength: &mut u32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAGetServiceClassNameByClassIdA(lpserviceclassid: *const ::windows::core::GUID, lpszserviceclassname: ::windows::core::PSTR, lpdwbufferlength: *mut u32) -> i32; } + WSAGetServiceClassNameByClassIdA(::core::mem::transmute(lpserviceclassid), ::core::mem::transmute(lpszserviceclassname), ::core::mem::transmute(lpdwbufferlength)) } -unsafe impl ::windows::core::Abi for WSC_PROVIDER_AUDIT_INFO { - type Abi = Self; -} -impl ::core::cmp::PartialEq for WSC_PROVIDER_AUDIT_INFO { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSAGetServiceClassNameByClassIdW(lpserviceclassid: &::windows::core::GUID, lpszserviceclassname: ::windows::core::PWSTR, lpdwbufferlength: &mut u32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAGetServiceClassNameByClassIdW(lpserviceclassid: *const ::windows::core::GUID, lpszserviceclassname: ::windows::core::PWSTR, lpdwbufferlength: *mut u32) -> i32; } + WSAGetServiceClassNameByClassIdW(::core::mem::transmute(lpserviceclassid), ::core::mem::transmute(lpszserviceclassname), ::core::mem::transmute(lpdwbufferlength)) } -impl ::core::cmp::Eq for WSC_PROVIDER_AUDIT_INFO {} -impl ::core::default::Default for WSC_PROVIDER_AUDIT_INFO { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSAHtonl<'a, P0>(s: P0, hostlong: u32, lpnetlong: &mut u32) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAHtonl(s: SOCKET, hostlong: u32, lpnetlong: *mut u32) -> i32; } + WSAHtonl(s.into(), hostlong, ::core::mem::transmute(lpnetlong)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct WSC_PROVIDER_INFO_TYPE(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ProviderInfoLspCategories: WSC_PROVIDER_INFO_TYPE = WSC_PROVIDER_INFO_TYPE(0i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const ProviderInfoAudit: WSC_PROVIDER_INFO_TYPE = WSC_PROVIDER_INFO_TYPE(1i32); -impl ::core::marker::Copy for WSC_PROVIDER_INFO_TYPE {} -impl ::core::clone::Clone for WSC_PROVIDER_INFO_TYPE { - fn clone(&self) -> Self { - *self +#[inline] +pub unsafe fn WSAHtons<'a, P0>(s: P0, hostshort: u16, lpnetshort: &mut u16) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAHtons(s: SOCKET, hostshort: u16, lpnetshort: *mut u16) -> i32; } + WSAHtons(s.into(), hostshort, ::core::mem::transmute(lpnetshort)) } -impl ::core::default::Default for WSC_PROVIDER_INFO_TYPE { - fn default() -> Self { - Self(0) +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSAImpersonateSocketPeer<'a, P0>(socket: P0, peeraddr: ::core::option::Option<&[u8]>) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAImpersonateSocketPeer(socket: SOCKET, peeraddr: *const SOCKADDR, peeraddrlen: u32) -> i32; } + WSAImpersonateSocketPeer(socket.into(), ::core::mem::transmute(peeraddr.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), peeraddr.as_deref().map_or(0, |slice| slice.len() as _)) } -unsafe impl ::windows::core::Abi for WSC_PROVIDER_INFO_TYPE { - type Abi = Self; -} -impl ::core::fmt::Debug for WSC_PROVIDER_INFO_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("WSC_PROVIDER_INFO_TYPE").field(&self.0).finish() +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSAInstallServiceClassA(lpserviceclassinfo: &WSASERVICECLASSINFOA) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAInstallServiceClassA(lpserviceclassinfo: *const WSASERVICECLASSINFOA) -> i32; } + WSAInstallServiceClassA(::core::mem::transmute(lpserviceclassinfo)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSK_SO_BASE: u32 = 16384u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSPDESCRIPTION_LEN: u32 = 255u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct WSPData { - pub wVersion: u16, - pub wHighVersion: u16, - pub szDescription: [u16; 256], -} -impl ::core::marker::Copy for WSPData {} -impl ::core::clone::Clone for WSPData { - fn clone(&self) -> Self { - *self +#[inline] +pub unsafe fn WSAInstallServiceClassW(lpserviceclassinfo: &WSASERVICECLASSINFOW) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAInstallServiceClassW(lpserviceclassinfo: *const WSASERVICECLASSINFOW) -> i32; } + WSAInstallServiceClassW(::core::mem::transmute(lpserviceclassinfo)) } -impl ::core::fmt::Debug for WSPData { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSPData").field("wVersion", &self.wVersion).field("wHighVersion", &self.wHighVersion).field("szDescription", &self.szDescription).finish() +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn WSAIoctl<'a, P0>(s: P0, dwiocontrolcode: u32, lpvinbuffer: ::core::option::Option<&[u8]>, lpvoutbuffer: ::core::option::Option<&mut [u8]>, lpcbbytesreturned: &mut u32, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAIoctl(s: SOCKET, dwiocontrolcode: u32, lpvinbuffer: *const ::core::ffi::c_void, cbinbuffer: u32, lpvoutbuffer: *mut ::core::ffi::c_void, cboutbuffer: u32, lpcbbytesreturned: *mut u32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void) -> i32; } + WSAIoctl(s.into(), dwiocontrolcode, ::core::mem::transmute(lpvinbuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpvinbuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(lpvoutbuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpvoutbuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(lpcbbytesreturned), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine)) } -unsafe impl ::windows::core::Abi for WSPData { - type Abi = Self; -} -impl ::core::cmp::PartialEq for WSPData { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSAIsBlocking() -> super::super::Foundation::BOOL { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAIsBlocking() -> super::super::Foundation::BOOL; } + WSAIsBlocking() } -impl ::core::cmp::Eq for WSPData {} -impl ::core::default::Default for WSPData { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSAJoinLeaf<'a, P0>(s: P0, name: &[u8], lpcallerdata: ::core::option::Option<&WSABUF>, lpcalleedata: ::core::option::Option<&mut WSABUF>, lpsqos: ::core::option::Option<&QOS>, lpgqos: ::core::option::Option<&QOS>, dwflags: u32) -> SOCKET +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAJoinLeaf(s: SOCKET, name: *const SOCKADDR, namelen: i32, lpcallerdata: *const WSABUF, lpcalleedata: *mut WSABUF, lpsqos: *const QOS, lpgqos: *const QOS, dwflags: u32) -> SOCKET; } + WSAJoinLeaf(s.into(), ::core::mem::transmute(name.as_ptr()), name.len() as _, ::core::mem::transmute(lpcallerdata), ::core::mem::transmute(lpcalleedata), ::core::mem::transmute(lpsqos), ::core::mem::transmute(lpgqos), dwflags) } -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -pub struct WSPPROC_TABLE { - pub lpWSPAccept: LPWSPACCEPT, - pub lpWSPAddressToString: LPWSPADDRESSTOSTRING, - pub lpWSPAsyncSelect: LPWSPASYNCSELECT, - pub lpWSPBind: LPWSPBIND, - pub lpWSPCancelBlockingCall: LPWSPCANCELBLOCKINGCALL, - pub lpWSPCleanup: LPWSPCLEANUP, - pub lpWSPCloseSocket: LPWSPCLOSESOCKET, - pub lpWSPConnect: LPWSPCONNECT, - pub lpWSPDuplicateSocket: LPWSPDUPLICATESOCKET, - pub lpWSPEnumNetworkEvents: LPWSPENUMNETWORKEVENTS, - pub lpWSPEventSelect: LPWSPEVENTSELECT, - pub lpWSPGetOverlappedResult: LPWSPGETOVERLAPPEDRESULT, - pub lpWSPGetPeerName: LPWSPGETPEERNAME, - pub lpWSPGetSockName: LPWSPGETSOCKNAME, - pub lpWSPGetSockOpt: LPWSPGETSOCKOPT, - pub lpWSPGetQOSByName: LPWSPGETQOSBYNAME, - pub lpWSPIoctl: LPWSPIOCTL, - pub lpWSPJoinLeaf: LPWSPJOINLEAF, - pub lpWSPListen: LPWSPLISTEN, - pub lpWSPRecv: LPWSPRECV, - pub lpWSPRecvDisconnect: LPWSPRECVDISCONNECT, - pub lpWSPRecvFrom: LPWSPRECVFROM, - pub lpWSPSelect: LPWSPSELECT, - pub lpWSPSend: LPWSPSEND, - pub lpWSPSendDisconnect: LPWSPSENDDISCONNECT, - pub lpWSPSendTo: LPWSPSENDTO, - pub lpWSPSetSockOpt: LPWSPSETSOCKOPT, - pub lpWSPShutdown: LPWSPSHUTDOWN, - pub lpWSPSocket: LPWSPSOCKET, - pub lpWSPStringToAddress: LPWSPSTRINGTOADDRESS, -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::marker::Copy for WSPPROC_TABLE {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::clone::Clone for WSPPROC_TABLE { - fn clone(&self) -> Self { - *self +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +#[inline] +pub unsafe fn WSALookupServiceBeginA(lpqsrestrictions: &WSAQUERYSETA, dwcontrolflags: u32, lphlookup: &mut super::super::Foundation::HANDLE) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSALookupServiceBeginA(lpqsrestrictions: *const WSAQUERYSETA, dwcontrolflags: u32, lphlookup: *mut super::super::Foundation::HANDLE) -> i32; } + WSALookupServiceBeginA(::core::mem::transmute(lpqsrestrictions), dwcontrolflags, ::core::mem::transmute(lphlookup)) } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::fmt::Debug for WSPPROC_TABLE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSPPROC_TABLE") - .field("lpWSPAccept", &self.lpWSPAccept.map(|f| f as usize)) - .field("lpWSPAddressToString", &self.lpWSPAddressToString.map(|f| f as usize)) - .field("lpWSPAsyncSelect", &self.lpWSPAsyncSelect.map(|f| f as usize)) - .field("lpWSPBind", &self.lpWSPBind.map(|f| f as usize)) - .field("lpWSPCancelBlockingCall", &self.lpWSPCancelBlockingCall.map(|f| f as usize)) - .field("lpWSPCleanup", &self.lpWSPCleanup.map(|f| f as usize)) - .field("lpWSPCloseSocket", &self.lpWSPCloseSocket.map(|f| f as usize)) - .field("lpWSPConnect", &self.lpWSPConnect.map(|f| f as usize)) - .field("lpWSPDuplicateSocket", &self.lpWSPDuplicateSocket.map(|f| f as usize)) - .field("lpWSPEnumNetworkEvents", &self.lpWSPEnumNetworkEvents.map(|f| f as usize)) - .field("lpWSPEventSelect", &self.lpWSPEventSelect.map(|f| f as usize)) - .field("lpWSPGetOverlappedResult", &self.lpWSPGetOverlappedResult.map(|f| f as usize)) - .field("lpWSPGetPeerName", &self.lpWSPGetPeerName.map(|f| f as usize)) - .field("lpWSPGetSockName", &self.lpWSPGetSockName.map(|f| f as usize)) - .field("lpWSPGetSockOpt", &self.lpWSPGetSockOpt.map(|f| f as usize)) - .field("lpWSPGetQOSByName", &self.lpWSPGetQOSByName.map(|f| f as usize)) - .field("lpWSPIoctl", &self.lpWSPIoctl.map(|f| f as usize)) - .field("lpWSPJoinLeaf", &self.lpWSPJoinLeaf.map(|f| f as usize)) - .field("lpWSPListen", &self.lpWSPListen.map(|f| f as usize)) - .field("lpWSPRecv", &self.lpWSPRecv.map(|f| f as usize)) - .field("lpWSPRecvDisconnect", &self.lpWSPRecvDisconnect.map(|f| f as usize)) - .field("lpWSPRecvFrom", &self.lpWSPRecvFrom.map(|f| f as usize)) - .field("lpWSPSelect", &self.lpWSPSelect.map(|f| f as usize)) - .field("lpWSPSend", &self.lpWSPSend.map(|f| f as usize)) - .field("lpWSPSendDisconnect", &self.lpWSPSendDisconnect.map(|f| f as usize)) - .field("lpWSPSendTo", &self.lpWSPSendTo.map(|f| f as usize)) - .field("lpWSPSetSockOpt", &self.lpWSPSetSockOpt.map(|f| f as usize)) - .field("lpWSPShutdown", &self.lpWSPShutdown.map(|f| f as usize)) - .field("lpWSPSocket", &self.lpWSPSocket.map(|f| f as usize)) - .field("lpWSPStringToAddress", &self.lpWSPStringToAddress.map(|f| f as usize)) - .finish() +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +#[inline] +pub unsafe fn WSALookupServiceBeginW(lpqsrestrictions: &WSAQUERYSETW, dwcontrolflags: u32, lphlookup: &mut super::super::Foundation::HANDLE) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSALookupServiceBeginW(lpqsrestrictions: *const WSAQUERYSETW, dwcontrolflags: u32, lphlookup: *mut super::super::Foundation::HANDLE) -> i32; } + WSALookupServiceBeginW(::core::mem::transmute(lpqsrestrictions), dwcontrolflags, ::core::mem::transmute(lphlookup)) } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -unsafe impl ::windows::core::Abi for WSPPROC_TABLE { - type Abi = Self; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSALookupServiceEnd<'a, P0>(hlookup: P0) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSALookupServiceEnd(hlookup: super::super::Foundation::HANDLE) -> i32; + } + WSALookupServiceEnd(hlookup.into()) } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::PartialEq for WSPPROC_TABLE { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +#[inline] +pub unsafe fn WSALookupServiceNextA<'a, P0>(hlookup: P0, dwcontrolflags: u32, lpdwbufferlength: &mut u32, lpqsresults: *mut WSAQUERYSETA) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSALookupServiceNextA(hlookup: super::super::Foundation::HANDLE, dwcontrolflags: u32, lpdwbufferlength: *mut u32, lpqsresults: *mut WSAQUERYSETA) -> i32; } + WSALookupServiceNextA(hlookup.into(), dwcontrolflags, ::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpqsresults)) } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::cmp::Eq for WSPPROC_TABLE {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] -impl ::core::default::Default for WSPPROC_TABLE { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +#[inline] +pub unsafe fn WSALookupServiceNextW<'a, P0>(hlookup: P0, dwcontrolflags: u32, lpdwbufferlength: &mut u32, lpqsresults: *mut WSAQUERYSETW) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSALookupServiceNextW(hlookup: super::super::Foundation::HANDLE, dwcontrolflags: u32, lpdwbufferlength: *mut u32, lpqsresults: *mut WSAQUERYSETW) -> i32; } + WSALookupServiceNextW(hlookup.into(), dwcontrolflags, ::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpqsresults)) } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct WSPUPCALLTABLE { - pub lpWPUCloseEvent: LPWPUCLOSEEVENT, - pub lpWPUCloseSocketHandle: LPWPUCLOSESOCKETHANDLE, - pub lpWPUCreateEvent: LPWPUCREATEEVENT, - pub lpWPUCreateSocketHandle: LPWPUCREATESOCKETHANDLE, - pub lpWPUFDIsSet: LPWPUFDISSET, - pub lpWPUGetProviderPath: LPWPUGETPROVIDERPATH, - pub lpWPUModifyIFSHandle: LPWPUMODIFYIFSHANDLE, - pub lpWPUPostMessage: LPWPUPOSTMESSAGE, - pub lpWPUQueryBlockingCallback: LPWPUQUERYBLOCKINGCALLBACK, - pub lpWPUQuerySocketHandleContext: LPWPUQUERYSOCKETHANDLECONTEXT, - pub lpWPUQueueApc: LPWPUQUEUEAPC, - pub lpWPUResetEvent: LPWPURESETEVENT, - pub lpWPUSetEvent: LPWPUSETEVENT, - pub lpWPUOpenCurrentThread: LPWPUOPENCURRENTTHREAD, - pub lpWPUCloseThread: LPWPUCLOSETHREAD, +pub struct WSAMSG { + pub name: *mut SOCKADDR, + pub namelen: i32, + pub lpBuffers: *mut WSABUF, + pub dwBufferCount: u32, + pub Control: WSABUF, + pub dwFlags: u32, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WSPUPCALLTABLE {} +impl ::core::marker::Copy for WSAMSG {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WSPUPCALLTABLE { +impl ::core::clone::Clone for WSAMSG { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for WSPUPCALLTABLE { +impl ::core::fmt::Debug for WSAMSG { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSPUPCALLTABLE") - .field("lpWPUCloseEvent", &self.lpWPUCloseEvent.map(|f| f as usize)) - .field("lpWPUCloseSocketHandle", &self.lpWPUCloseSocketHandle.map(|f| f as usize)) - .field("lpWPUCreateEvent", &self.lpWPUCreateEvent.map(|f| f as usize)) - .field("lpWPUCreateSocketHandle", &self.lpWPUCreateSocketHandle.map(|f| f as usize)) - .field("lpWPUFDIsSet", &self.lpWPUFDIsSet.map(|f| f as usize)) - .field("lpWPUGetProviderPath", &self.lpWPUGetProviderPath.map(|f| f as usize)) - .field("lpWPUModifyIFSHandle", &self.lpWPUModifyIFSHandle.map(|f| f as usize)) - .field("lpWPUPostMessage", &self.lpWPUPostMessage.map(|f| f as usize)) - .field("lpWPUQueryBlockingCallback", &self.lpWPUQueryBlockingCallback.map(|f| f as usize)) - .field("lpWPUQuerySocketHandleContext", &self.lpWPUQuerySocketHandleContext.map(|f| f as usize)) - .field("lpWPUQueueApc", &self.lpWPUQueueApc.map(|f| f as usize)) - .field("lpWPUResetEvent", &self.lpWPUResetEvent.map(|f| f as usize)) - .field("lpWPUSetEvent", &self.lpWPUSetEvent.map(|f| f as usize)) - .field("lpWPUOpenCurrentThread", &self.lpWPUOpenCurrentThread.map(|f| f as usize)) - .field("lpWPUCloseThread", &self.lpWPUCloseThread.map(|f| f as usize)) - .finish() + f.debug_struct("WSAMSG").field("name", &self.name).field("namelen", &self.namelen).field("lpBuffers", &self.lpBuffers).field("dwBufferCount", &self.dwBufferCount).field("Control", &self.Control).field("dwFlags", &self.dwFlags).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for WSPUPCALLTABLE { +unsafe impl ::windows::core::Abi for WSAMSG { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for WSPUPCALLTABLE { +impl ::core::cmp::PartialEq for WSAMSG { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for WSPUPCALLTABLE {} +impl ::core::cmp::Eq for WSAMSG {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for WSPUPCALLTABLE { +impl ::core::default::Default for WSAMSG { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const WSS_OPERATION_IN_PROGRESS: i32 = 259i32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_CONNECTIONLESS: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_CONNECT_DATA: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_DISCONNECT_DATA: u32 = 256u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_EXPEDITED_DATA: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_GRACEFUL_CLOSE: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_GUARANTEED_DELIVERY: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_GUARANTEED_ORDER: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_IFS_HANDLES: u32 = 131072u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_INTERRUPT: u32 = 16384u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_MESSAGE_ORIENTED: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_MULTIPOINT_CONTROL_PLANE: u32 = 2048u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_MULTIPOINT_DATA_PLANE: u32 = 4096u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_PARTIAL_MESSAGE: u32 = 262144u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_PSEUDO_STREAM: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_QOS_SUPPORTED: u32 = 8192u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_SAN_SUPPORT_SDP: u32 = 524288u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_SUPPORT_BROADCAST: u32 = 512u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_SUPPORT_MULTIPOINT: u32 = 1024u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_UNI_RECV: u32 = 65536u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP1_UNI_SEND: u32 = 32768u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP_BANDWIDTH_ALLOCATION: u32 = 2048u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP_CONNECTIONLESS: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP_CONNECT_DATA: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP_DISCONNECT_DATA: u32 = 256u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP_ENCRYPTS: u32 = 8192u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP_EXPEDITED_DATA: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP_FRAGMENTATION: u32 = 4096u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP_GRACEFUL_CLOSE: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP_GUARANTEED_DELIVERY: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP_GUARANTEED_ORDER: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP_MESSAGE_ORIENTED: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP_PSEUDO_STREAM: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP_SUPPORTS_BROADCAST: u32 = 512u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const XP_SUPPORTS_MULTICAST: u32 = 1024u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const _BIG_ENDIAN: u32 = 4321u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const _LITTLE_ENDIAN: u32 = 1234u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const _PDP_ENDIAN: u32 = 3412u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const _SS_MAXSIZE: u32 = 128u32; -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn __WSAFDIsSet<'a, P0>(fd: P0, param1: &mut fd_set) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn __WSAFDIsSet(fd: SOCKET, param1: *mut fd_set) -> i32; - } - __WSAFDIsSet(fd.into(), ::core::mem::transmute(param1)) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn accept<'a, P0>(s: P0, addr: *mut SOCKADDR, addrlen: ::core::option::Option<&mut i32>) -> SOCKET -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn accept(s: SOCKET, addr: *mut SOCKADDR, addrlen: *mut i32) -> SOCKET; - } - accept(s.into(), ::core::mem::transmute(addr), ::core::mem::transmute(addrlen)) -} #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct addrinfoW { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows::core::PWSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_next: *mut addrinfoW, +pub struct WSANAMESPACE_INFOA { + pub NSProviderId: ::windows::core::GUID, + pub dwNameSpace: u32, + pub fActive: super::super::Foundation::BOOL, + pub dwVersion: u32, + pub lpszIdentifier: ::windows::core::PSTR, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoW {} +impl ::core::marker::Copy for WSANAMESPACE_INFOA {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoW { +impl ::core::clone::Clone for WSANAMESPACE_INFOA { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for addrinfoW { +impl ::core::fmt::Debug for WSANAMESPACE_INFOA { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("addrinfoW").field("ai_flags", &self.ai_flags).field("ai_family", &self.ai_family).field("ai_socktype", &self.ai_socktype).field("ai_protocol", &self.ai_protocol).field("ai_addrlen", &self.ai_addrlen).field("ai_canonname", &self.ai_canonname).field("ai_addr", &self.ai_addr).field("ai_next", &self.ai_next).finish() + f.debug_struct("WSANAMESPACE_INFOA").field("NSProviderId", &self.NSProviderId).field("dwNameSpace", &self.dwNameSpace).field("fActive", &self.fActive).field("dwVersion", &self.dwVersion).field("lpszIdentifier", &self.lpszIdentifier).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for addrinfoW { +unsafe impl ::windows::core::Abi for WSANAMESPACE_INFOA { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for addrinfoW { +impl ::core::cmp::PartialEq for WSANAMESPACE_INFOA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for addrinfoW {} +impl ::core::cmp::Eq for WSANAMESPACE_INFOA {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for addrinfoW { +impl ::core::default::Default for WSANAMESPACE_INFOA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfo_dns_server { - pub ai_servertype: u32, - pub ai_flags: u64, - pub ai_addrlen: u32, - pub ai_addr: *mut SOCKADDR, - pub Anonymous: addrinfo_dns_server_0, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +pub struct WSANAMESPACE_INFOEXA { + pub NSProviderId: ::windows::core::GUID, + pub dwNameSpace: u32, + pub fActive: super::super::Foundation::BOOL, + pub dwVersion: u32, + pub lpszIdentifier: ::windows::core::PSTR, + pub ProviderSpecific: super::super::System::Com::BLOB, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfo_dns_server {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfo_dns_server { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::marker::Copy for WSANAMESPACE_INFOEXA {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::clone::Clone for WSANAMESPACE_INFOEXA { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for addrinfo_dns_server { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::fmt::Debug for WSANAMESPACE_INFOEXA { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSANAMESPACE_INFOEXA").field("NSProviderId", &self.NSProviderId).field("dwNameSpace", &self.dwNameSpace).field("fActive", &self.fActive).field("dwVersion", &self.dwVersion).field("lpszIdentifier", &self.lpszIdentifier).field("ProviderSpecific", &self.ProviderSpecific).finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +unsafe impl ::windows::core::Abi for WSANAMESPACE_INFOEXA { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for addrinfo_dns_server { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::cmp::PartialEq for WSANAMESPACE_INFOEXA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for addrinfo_dns_server {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for addrinfo_dns_server { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::cmp::Eq for WSANAMESPACE_INFOEXA {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::default::Default for WSANAMESPACE_INFOEXA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub union addrinfo_dns_server_0 { - pub ai_template: ::windows::core::PWSTR, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +pub struct WSANAMESPACE_INFOEXW { + pub NSProviderId: ::windows::core::GUID, + pub dwNameSpace: u32, + pub fActive: super::super::Foundation::BOOL, + pub dwVersion: u32, + pub lpszIdentifier: ::windows::core::PWSTR, + pub ProviderSpecific: super::super::System::Com::BLOB, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfo_dns_server_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfo_dns_server_0 { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::marker::Copy for WSANAMESPACE_INFOEXW {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::clone::Clone for WSANAMESPACE_INFOEXW { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for addrinfo_dns_server_0 { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::fmt::Debug for WSANAMESPACE_INFOEXW { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSANAMESPACE_INFOEXW").field("NSProviderId", &self.NSProviderId).field("dwNameSpace", &self.dwNameSpace).field("fActive", &self.fActive).field("dwVersion", &self.dwVersion).field("lpszIdentifier", &self.lpszIdentifier).field("ProviderSpecific", &self.ProviderSpecific).finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +unsafe impl ::windows::core::Abi for WSANAMESPACE_INFOEXW { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for addrinfo_dns_server_0 { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::cmp::PartialEq for WSANAMESPACE_INFOEXW { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for addrinfo_dns_server_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for addrinfo_dns_server_0 { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::cmp::Eq for WSANAMESPACE_INFOEXW {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::default::Default for WSANAMESPACE_INFOEXW { fn default() -> Self { unsafe { ::core::mem::zeroed() } } @@ -16479,455 +15219,273 @@ impl ::core::default::Default for addrinfo_dns_server_0 { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct addrinfoex2A { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows::core::PSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows::core::GUID, - pub ai_next: *mut addrinfoex2A, - pub ai_version: i32, - pub ai_fqdn: ::windows::core::PSTR, +pub struct WSANAMESPACE_INFOW { + pub NSProviderId: ::windows::core::GUID, + pub dwNameSpace: u32, + pub fActive: super::super::Foundation::BOOL, + pub dwVersion: u32, + pub lpszIdentifier: ::windows::core::PWSTR, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoex2A {} +impl ::core::marker::Copy for WSANAMESPACE_INFOW {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoex2A { +impl ::core::clone::Clone for WSANAMESPACE_INFOW { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for addrinfoex2A { +impl ::core::fmt::Debug for WSANAMESPACE_INFOW { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("addrinfoex2A") - .field("ai_flags", &self.ai_flags) - .field("ai_family", &self.ai_family) - .field("ai_socktype", &self.ai_socktype) - .field("ai_protocol", &self.ai_protocol) - .field("ai_addrlen", &self.ai_addrlen) - .field("ai_canonname", &self.ai_canonname) - .field("ai_addr", &self.ai_addr) - .field("ai_blob", &self.ai_blob) - .field("ai_bloblen", &self.ai_bloblen) - .field("ai_provider", &self.ai_provider) - .field("ai_next", &self.ai_next) - .field("ai_version", &self.ai_version) - .field("ai_fqdn", &self.ai_fqdn) - .finish() + f.debug_struct("WSANAMESPACE_INFOW").field("NSProviderId", &self.NSProviderId).field("dwNameSpace", &self.dwNameSpace).field("fActive", &self.fActive).field("dwVersion", &self.dwVersion).field("lpszIdentifier", &self.lpszIdentifier).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for addrinfoex2A { +unsafe impl ::windows::core::Abi for WSANAMESPACE_INFOW { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for addrinfoex2A { +impl ::core::cmp::PartialEq for WSANAMESPACE_INFOW { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for addrinfoex2A {} +impl ::core::cmp::Eq for WSANAMESPACE_INFOW {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for addrinfoex2A { +impl ::core::default::Default for WSANAMESPACE_INFOW { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfoex2W { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows::core::PWSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows::core::GUID, - pub ai_next: *mut addrinfoex2W, - pub ai_version: i32, - pub ai_fqdn: ::windows::core::PWSTR, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct WSANETWORKEVENTS { + pub lNetworkEvents: i32, + pub iErrorCode: [i32; 10], } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoex2W {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoex2W { +impl ::core::marker::Copy for WSANETWORKEVENTS {} +impl ::core::clone::Clone for WSANETWORKEVENTS { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for addrinfoex2W { +impl ::core::fmt::Debug for WSANETWORKEVENTS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("addrinfoex2W") - .field("ai_flags", &self.ai_flags) - .field("ai_family", &self.ai_family) - .field("ai_socktype", &self.ai_socktype) - .field("ai_protocol", &self.ai_protocol) - .field("ai_addrlen", &self.ai_addrlen) - .field("ai_canonname", &self.ai_canonname) - .field("ai_addr", &self.ai_addr) - .field("ai_blob", &self.ai_blob) - .field("ai_bloblen", &self.ai_bloblen) - .field("ai_provider", &self.ai_provider) - .field("ai_next", &self.ai_next) - .field("ai_version", &self.ai_version) - .field("ai_fqdn", &self.ai_fqdn) - .finish() + f.debug_struct("WSANETWORKEVENTS").field("lNetworkEvents", &self.lNetworkEvents).field("iErrorCode", &self.iErrorCode).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for addrinfoex2W { +unsafe impl ::windows::core::Abi for WSANETWORKEVENTS { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for addrinfoex2W { +impl ::core::cmp::PartialEq for WSANETWORKEVENTS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for addrinfoex2W {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for addrinfoex2W { +impl ::core::cmp::Eq for WSANETWORKEVENTS {} +impl ::core::default::Default for WSANETWORKEVENTS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfoex3 { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows::core::PWSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows::core::GUID, - pub ai_next: *mut addrinfoex3, - pub ai_version: i32, - pub ai_fqdn: ::windows::core::PWSTR, - pub ai_interfaceindex: i32, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct WSANSCLASSINFOA { + pub lpszName: ::windows::core::PSTR, + pub dwNameSpace: u32, + pub dwValueType: u32, + pub dwValueSize: u32, + pub lpValue: *mut ::core::ffi::c_void, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoex3 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoex3 { +impl ::core::marker::Copy for WSANSCLASSINFOA {} +impl ::core::clone::Clone for WSANSCLASSINFOA { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for addrinfoex3 { +impl ::core::fmt::Debug for WSANSCLASSINFOA { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("addrinfoex3") - .field("ai_flags", &self.ai_flags) - .field("ai_family", &self.ai_family) - .field("ai_socktype", &self.ai_socktype) - .field("ai_protocol", &self.ai_protocol) - .field("ai_addrlen", &self.ai_addrlen) - .field("ai_canonname", &self.ai_canonname) - .field("ai_addr", &self.ai_addr) - .field("ai_blob", &self.ai_blob) - .field("ai_bloblen", &self.ai_bloblen) - .field("ai_provider", &self.ai_provider) - .field("ai_next", &self.ai_next) - .field("ai_version", &self.ai_version) - .field("ai_fqdn", &self.ai_fqdn) - .field("ai_interfaceindex", &self.ai_interfaceindex) - .finish() + f.debug_struct("WSANSCLASSINFOA").field("lpszName", &self.lpszName).field("dwNameSpace", &self.dwNameSpace).field("dwValueType", &self.dwValueType).field("dwValueSize", &self.dwValueSize).field("lpValue", &self.lpValue).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for addrinfoex3 { +unsafe impl ::windows::core::Abi for WSANSCLASSINFOA { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for addrinfoex3 { +impl ::core::cmp::PartialEq for WSANSCLASSINFOA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for addrinfoex3 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for addrinfoex3 { +impl ::core::cmp::Eq for WSANSCLASSINFOA {} +impl ::core::default::Default for WSANSCLASSINFOA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfoex4 { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows::core::PWSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows::core::GUID, - pub ai_next: *mut addrinfoex4, - pub ai_version: i32, - pub ai_fqdn: ::windows::core::PWSTR, - pub ai_interfaceindex: i32, - pub ai_resolutionhandle: super::super::Foundation::HANDLE, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct WSANSCLASSINFOW { + pub lpszName: ::windows::core::PWSTR, + pub dwNameSpace: u32, + pub dwValueType: u32, + pub dwValueSize: u32, + pub lpValue: *mut ::core::ffi::c_void, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoex4 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoex4 { +impl ::core::marker::Copy for WSANSCLASSINFOW {} +impl ::core::clone::Clone for WSANSCLASSINFOW { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for addrinfoex4 { +impl ::core::fmt::Debug for WSANSCLASSINFOW { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("addrinfoex4") - .field("ai_flags", &self.ai_flags) - .field("ai_family", &self.ai_family) - .field("ai_socktype", &self.ai_socktype) - .field("ai_protocol", &self.ai_protocol) - .field("ai_addrlen", &self.ai_addrlen) - .field("ai_canonname", &self.ai_canonname) - .field("ai_addr", &self.ai_addr) - .field("ai_blob", &self.ai_blob) - .field("ai_bloblen", &self.ai_bloblen) - .field("ai_provider", &self.ai_provider) - .field("ai_next", &self.ai_next) - .field("ai_version", &self.ai_version) - .field("ai_fqdn", &self.ai_fqdn) - .field("ai_interfaceindex", &self.ai_interfaceindex) - .field("ai_resolutionhandle", &self.ai_resolutionhandle) - .finish() + f.debug_struct("WSANSCLASSINFOW").field("lpszName", &self.lpszName).field("dwNameSpace", &self.dwNameSpace).field("dwValueType", &self.dwValueType).field("dwValueSize", &self.dwValueSize).field("lpValue", &self.lpValue).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for addrinfoex4 { +unsafe impl ::windows::core::Abi for WSANSCLASSINFOW { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for addrinfoex4 { +impl ::core::cmp::PartialEq for WSANSCLASSINFOW { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for addrinfoex4 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for addrinfoex4 { +impl ::core::cmp::Eq for WSANSCLASSINFOW {} +impl ::core::default::Default for WSANSCLASSINFOW { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn WSANSPIoctl<'a, P0>(hlookup: P0, dwcontrolcode: u32, lpvinbuffer: ::core::option::Option<&[u8]>, lpvoutbuffer: ::core::option::Option<&mut [u8]>, lpcbbytesreturned: &mut u32, lpcompletion: ::core::option::Option<&WSACOMPLETION>) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSANSPIoctl(hlookup: super::super::Foundation::HANDLE, dwcontrolcode: u32, lpvinbuffer: *const ::core::ffi::c_void, cbinbuffer: u32, lpvoutbuffer: *mut ::core::ffi::c_void, cboutbuffer: u32, lpcbbytesreturned: *mut u32, lpcompletion: *const WSACOMPLETION) -> i32; + } + WSANSPIoctl(hlookup.into(), dwcontrolcode, ::core::mem::transmute(lpvinbuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpvinbuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(lpvoutbuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpvoutbuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(lpcbbytesreturned), ::core::mem::transmute(lpcompletion)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSANtohl<'a, P0>(s: P0, netlong: u32, lphostlong: &mut u32) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSANtohl(s: SOCKET, netlong: u32, lphostlong: *mut u32) -> i32; + } + WSANtohl(s.into(), netlong, ::core::mem::transmute(lphostlong)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSANtohs<'a, P0>(s: P0, netshort: u16, lphostshort: &mut u16) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSANtohs(s: SOCKET, netshort: u16, lphostshort: *mut u16) -> i32; + } + WSANtohs(s.into(), netshort, ::core::mem::transmute(lphostshort)) +} #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfoex5 { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows::core::PWSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows::core::GUID, - pub ai_next: *mut addrinfoex5, - pub ai_version: i32, - pub ai_fqdn: ::windows::core::PWSTR, - pub ai_interfaceindex: i32, - pub ai_resolutionhandle: super::super::Foundation::HANDLE, - pub ai_ttl: u32, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct WSAPOLLDATA { + pub result: i32, + pub fds: u32, + pub timeout: i32, + pub fdArray: [WSAPOLLFD; 1], } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoex5 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoex5 { +impl ::core::marker::Copy for WSAPOLLDATA {} +impl ::core::clone::Clone for WSAPOLLDATA { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for addrinfoex5 { +impl ::core::fmt::Debug for WSAPOLLDATA { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("addrinfoex5") - .field("ai_flags", &self.ai_flags) - .field("ai_family", &self.ai_family) - .field("ai_socktype", &self.ai_socktype) - .field("ai_protocol", &self.ai_protocol) - .field("ai_addrlen", &self.ai_addrlen) - .field("ai_canonname", &self.ai_canonname) - .field("ai_addr", &self.ai_addr) - .field("ai_blob", &self.ai_blob) - .field("ai_bloblen", &self.ai_bloblen) - .field("ai_provider", &self.ai_provider) - .field("ai_next", &self.ai_next) - .field("ai_version", &self.ai_version) - .field("ai_fqdn", &self.ai_fqdn) - .field("ai_interfaceindex", &self.ai_interfaceindex) - .field("ai_resolutionhandle", &self.ai_resolutionhandle) - .field("ai_ttl", &self.ai_ttl) - .finish() + f.debug_struct("WSAPOLLDATA").field("result", &self.result).field("fds", &self.fds).field("timeout", &self.timeout).field("fdArray", &self.fdArray).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for addrinfoex5 { +unsafe impl ::windows::core::Abi for WSAPOLLDATA { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for addrinfoex5 { +impl ::core::cmp::PartialEq for WSAPOLLDATA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for addrinfoex5 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for addrinfoex5 { +impl ::core::cmp::Eq for WSAPOLLDATA {} +impl ::core::default::Default for WSAPOLLDATA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfoex6 { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows::core::PWSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows::core::GUID, - pub ai_next: *mut addrinfoex5, - pub ai_version: i32, - pub ai_fqdn: ::windows::core::PWSTR, - pub ai_interfaceindex: i32, - pub ai_resolutionhandle: super::super::Foundation::HANDLE, - pub ai_ttl: u32, - pub ai_numservers: u32, - pub ai_servers: *mut addrinfo_dns_server, - pub ai_responseflags: u64, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct WSAPOLLFD { + pub fd: SOCKET, + pub events: i16, + pub revents: i16, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoex6 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoex6 { +impl ::core::marker::Copy for WSAPOLLFD {} +impl ::core::clone::Clone for WSAPOLLFD { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for addrinfoex6 { +impl ::core::fmt::Debug for WSAPOLLFD { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("addrinfoex6") - .field("ai_flags", &self.ai_flags) - .field("ai_family", &self.ai_family) - .field("ai_socktype", &self.ai_socktype) - .field("ai_protocol", &self.ai_protocol) - .field("ai_addrlen", &self.ai_addrlen) - .field("ai_canonname", &self.ai_canonname) - .field("ai_addr", &self.ai_addr) - .field("ai_blob", &self.ai_blob) - .field("ai_bloblen", &self.ai_bloblen) - .field("ai_provider", &self.ai_provider) - .field("ai_next", &self.ai_next) - .field("ai_version", &self.ai_version) - .field("ai_fqdn", &self.ai_fqdn) - .field("ai_interfaceindex", &self.ai_interfaceindex) - .field("ai_resolutionhandle", &self.ai_resolutionhandle) - .field("ai_ttl", &self.ai_ttl) - .field("ai_numservers", &self.ai_numservers) - .field("ai_servers", &self.ai_servers) - .field("ai_responseflags", &self.ai_responseflags) - .finish() + f.debug_struct("WSAPOLLFD").field("fd", &self.fd).field("events", &self.events).field("revents", &self.revents).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for addrinfoex6 { +unsafe impl ::windows::core::Abi for WSAPOLLFD { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for addrinfoex6 { +impl ::core::cmp::PartialEq for WSAPOLLFD { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for addrinfoex6 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for addrinfoex6 { +impl ::core::cmp::Eq for WSAPOLLFD {} +impl ::core::default::Default for WSAPOLLFD { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct addrinfoexA { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows::core::PSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows::core::GUID, - pub ai_next: *mut addrinfoexA, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct WSAPROTOCOLCHAIN { + pub ChainLen: i32, + pub ChainEntries: [u32; 7], } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoexA {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoexA { +impl ::core::marker::Copy for WSAPROTOCOLCHAIN {} +impl ::core::clone::Clone for WSAPROTOCOLCHAIN { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for addrinfoexA { +impl ::core::fmt::Debug for WSAPROTOCOLCHAIN { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("addrinfoexA").field("ai_flags", &self.ai_flags).field("ai_family", &self.ai_family).field("ai_socktype", &self.ai_socktype).field("ai_protocol", &self.ai_protocol).field("ai_addrlen", &self.ai_addrlen).field("ai_canonname", &self.ai_canonname).field("ai_addr", &self.ai_addr).field("ai_blob", &self.ai_blob).field("ai_bloblen", &self.ai_bloblen).field("ai_provider", &self.ai_provider).field("ai_next", &self.ai_next).finish() + f.debug_struct("WSAPROTOCOLCHAIN").field("ChainLen", &self.ChainLen).field("ChainEntries", &self.ChainEntries).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for addrinfoexA { +unsafe impl ::windows::core::Abi for WSAPROTOCOLCHAIN { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for addrinfoexA { +impl ::core::cmp::PartialEq for WSAPROTOCOLCHAIN { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for addrinfoexA {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for addrinfoexA { +impl ::core::cmp::Eq for WSAPROTOCOLCHAIN {} +impl ::core::default::Default for WSAPROTOCOLCHAIN { fn default() -> Self { unsafe { ::core::mem::zeroed() } } @@ -16935,1001 +15493,2443 @@ impl ::core::default::Default for addrinfoexA { #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct addrinfoexW { - pub ai_flags: i32, - pub ai_family: i32, - pub ai_socktype: i32, - pub ai_protocol: i32, - pub ai_addrlen: usize, - pub ai_canonname: ::windows::core::PWSTR, - pub ai_addr: *mut SOCKADDR, - pub ai_blob: *mut ::core::ffi::c_void, - pub ai_bloblen: usize, - pub ai_provider: *mut ::windows::core::GUID, - pub ai_next: *mut addrinfoexW, +pub struct WSAPROTOCOL_INFOA { + pub dwServiceFlags1: u32, + pub dwServiceFlags2: u32, + pub dwServiceFlags3: u32, + pub dwServiceFlags4: u32, + pub dwProviderFlags: u32, + pub ProviderId: ::windows::core::GUID, + pub dwCatalogEntryId: u32, + pub ProtocolChain: WSAPROTOCOLCHAIN, + pub iVersion: i32, + pub iAddressFamily: i32, + pub iMaxSockAddr: i32, + pub iMinSockAddr: i32, + pub iSocketType: i32, + pub iProtocol: i32, + pub iProtocolMaxOffset: i32, + pub iNetworkByteOrder: i32, + pub iSecurityScheme: i32, + pub dwMessageSize: u32, + pub dwProviderReserved: u32, + pub szProtocol: [super::super::Foundation::CHAR; 256], } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for addrinfoexW {} +impl ::core::marker::Copy for WSAPROTOCOL_INFOA {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for addrinfoexW { +impl ::core::clone::Clone for WSAPROTOCOL_INFOA { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for addrinfoexW { +impl ::core::fmt::Debug for WSAPROTOCOL_INFOA { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("addrinfoexW").field("ai_flags", &self.ai_flags).field("ai_family", &self.ai_family).field("ai_socktype", &self.ai_socktype).field("ai_protocol", &self.ai_protocol).field("ai_addrlen", &self.ai_addrlen).field("ai_canonname", &self.ai_canonname).field("ai_addr", &self.ai_addr).field("ai_blob", &self.ai_blob).field("ai_bloblen", &self.ai_bloblen).field("ai_provider", &self.ai_provider).field("ai_next", &self.ai_next).finish() + f.debug_struct("WSAPROTOCOL_INFOA") + .field("dwServiceFlags1", &self.dwServiceFlags1) + .field("dwServiceFlags2", &self.dwServiceFlags2) + .field("dwServiceFlags3", &self.dwServiceFlags3) + .field("dwServiceFlags4", &self.dwServiceFlags4) + .field("dwProviderFlags", &self.dwProviderFlags) + .field("ProviderId", &self.ProviderId) + .field("dwCatalogEntryId", &self.dwCatalogEntryId) + .field("ProtocolChain", &self.ProtocolChain) + .field("iVersion", &self.iVersion) + .field("iAddressFamily", &self.iAddressFamily) + .field("iMaxSockAddr", &self.iMaxSockAddr) + .field("iMinSockAddr", &self.iMinSockAddr) + .field("iSocketType", &self.iSocketType) + .field("iProtocol", &self.iProtocol) + .field("iProtocolMaxOffset", &self.iProtocolMaxOffset) + .field("iNetworkByteOrder", &self.iNetworkByteOrder) + .field("iSecurityScheme", &self.iSecurityScheme) + .field("dwMessageSize", &self.dwMessageSize) + .field("dwProviderReserved", &self.dwProviderReserved) + .field("szProtocol", &self.szProtocol) + .finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for addrinfoexW { +unsafe impl ::windows::core::Abi for WSAPROTOCOL_INFOA { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for addrinfoexW { +impl ::core::cmp::PartialEq for WSAPROTOCOL_INFOA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for addrinfoexW {} +impl ::core::cmp::Eq for WSAPROTOCOL_INFOA {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for addrinfoexW { +impl ::core::default::Default for WSAPROTOCOL_INFOA { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct WSAPROTOCOL_INFOW { + pub dwServiceFlags1: u32, + pub dwServiceFlags2: u32, + pub dwServiceFlags3: u32, + pub dwServiceFlags4: u32, + pub dwProviderFlags: u32, + pub ProviderId: ::windows::core::GUID, + pub dwCatalogEntryId: u32, + pub ProtocolChain: WSAPROTOCOLCHAIN, + pub iVersion: i32, + pub iAddressFamily: i32, + pub iMaxSockAddr: i32, + pub iMinSockAddr: i32, + pub iSocketType: i32, + pub iProtocol: i32, + pub iProtocolMaxOffset: i32, + pub iNetworkByteOrder: i32, + pub iSecurityScheme: i32, + pub dwMessageSize: u32, + pub dwProviderReserved: u32, + pub szProtocol: [u16; 256], +} +impl ::core::marker::Copy for WSAPROTOCOL_INFOW {} +impl ::core::clone::Clone for WSAPROTOCOL_INFOW { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for WSAPROTOCOL_INFOW { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSAPROTOCOL_INFOW") + .field("dwServiceFlags1", &self.dwServiceFlags1) + .field("dwServiceFlags2", &self.dwServiceFlags2) + .field("dwServiceFlags3", &self.dwServiceFlags3) + .field("dwServiceFlags4", &self.dwServiceFlags4) + .field("dwProviderFlags", &self.dwProviderFlags) + .field("ProviderId", &self.ProviderId) + .field("dwCatalogEntryId", &self.dwCatalogEntryId) + .field("ProtocolChain", &self.ProtocolChain) + .field("iVersion", &self.iVersion) + .field("iAddressFamily", &self.iAddressFamily) + .field("iMaxSockAddr", &self.iMaxSockAddr) + .field("iMinSockAddr", &self.iMinSockAddr) + .field("iSocketType", &self.iSocketType) + .field("iProtocol", &self.iProtocol) + .field("iProtocolMaxOffset", &self.iProtocolMaxOffset) + .field("iNetworkByteOrder", &self.iNetworkByteOrder) + .field("iSecurityScheme", &self.iSecurityScheme) + .field("dwMessageSize", &self.dwMessageSize) + .field("dwProviderReserved", &self.dwProviderReserved) + .field("szProtocol", &self.szProtocol) + .finish() + } +} +unsafe impl ::windows::core::Abi for WSAPROTOCOL_INFOW { + type Abi = Self; +} +impl ::core::cmp::PartialEq for WSAPROTOCOL_INFOW { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for WSAPROTOCOL_INFOW {} +impl ::core::default::Default for WSAPROTOCOL_INFOW { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAPROTOCOL_LEN: u32 = 255u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSAPoll(fdarray: &mut WSAPOLLFD, fds: u32, timeout: i32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAPoll(fdarray: *mut WSAPOLLFD, fds: u32, timeout: i32) -> i32; + } + WSAPoll(::core::mem::transmute(fdarray), fds, timeout) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSAProviderCompleteAsyncCall<'a, P0>(hasynccall: P0, iretcode: i32) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAProviderCompleteAsyncCall(hasynccall: super::super::Foundation::HANDLE, iretcode: i32) -> i32; + } + WSAProviderCompleteAsyncCall(hasynccall.into(), iretcode) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn WSAProviderConfigChange(lpnotificationhandle: &mut super::super::Foundation::HANDLE, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAProviderConfigChange(lpnotificationhandle: *mut super::super::Foundation::HANDLE, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void) -> i32; + } + WSAProviderConfigChange(::core::mem::transmute(lpnotificationhandle), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine)) +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +pub struct WSAQUERYSET2A { + pub dwSize: u32, + pub lpszServiceInstanceName: ::windows::core::PSTR, + pub lpVersion: *mut WSAVERSION, + pub lpszComment: ::windows::core::PSTR, + pub dwNameSpace: u32, + pub lpNSProviderId: *mut ::windows::core::GUID, + pub lpszContext: ::windows::core::PSTR, + pub dwNumberOfProtocols: u32, + pub lpafpProtocols: *mut AFPROTOCOLS, + pub lpszQueryString: ::windows::core::PSTR, + pub dwNumberOfCsAddrs: u32, + pub lpcsaBuffer: *mut CSADDR_INFO, + pub dwOutputFlags: u32, + pub lpBlob: *mut super::super::System::Com::BLOB, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::marker::Copy for WSAQUERYSET2A {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::clone::Clone for WSAQUERYSET2A { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::fmt::Debug for WSAQUERYSET2A { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSAQUERYSET2A") + .field("dwSize", &self.dwSize) + .field("lpszServiceInstanceName", &self.lpszServiceInstanceName) + .field("lpVersion", &self.lpVersion) + .field("lpszComment", &self.lpszComment) + .field("dwNameSpace", &self.dwNameSpace) + .field("lpNSProviderId", &self.lpNSProviderId) + .field("lpszContext", &self.lpszContext) + .field("dwNumberOfProtocols", &self.dwNumberOfProtocols) + .field("lpafpProtocols", &self.lpafpProtocols) + .field("lpszQueryString", &self.lpszQueryString) + .field("dwNumberOfCsAddrs", &self.dwNumberOfCsAddrs) + .field("lpcsaBuffer", &self.lpcsaBuffer) + .field("dwOutputFlags", &self.dwOutputFlags) + .field("lpBlob", &self.lpBlob) + .finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +unsafe impl ::windows::core::Abi for WSAQUERYSET2A { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::cmp::PartialEq for WSAQUERYSET2A { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::cmp::Eq for WSAQUERYSET2A {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::default::Default for WSAQUERYSET2A { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +pub struct WSAQUERYSET2W { + pub dwSize: u32, + pub lpszServiceInstanceName: ::windows::core::PWSTR, + pub lpVersion: *mut WSAVERSION, + pub lpszComment: ::windows::core::PWSTR, + pub dwNameSpace: u32, + pub lpNSProviderId: *mut ::windows::core::GUID, + pub lpszContext: ::windows::core::PWSTR, + pub dwNumberOfProtocols: u32, + pub lpafpProtocols: *mut AFPROTOCOLS, + pub lpszQueryString: ::windows::core::PWSTR, + pub dwNumberOfCsAddrs: u32, + pub lpcsaBuffer: *mut CSADDR_INFO, + pub dwOutputFlags: u32, + pub lpBlob: *mut super::super::System::Com::BLOB, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::marker::Copy for WSAQUERYSET2W {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::clone::Clone for WSAQUERYSET2W { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::fmt::Debug for WSAQUERYSET2W { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSAQUERYSET2W") + .field("dwSize", &self.dwSize) + .field("lpszServiceInstanceName", &self.lpszServiceInstanceName) + .field("lpVersion", &self.lpVersion) + .field("lpszComment", &self.lpszComment) + .field("dwNameSpace", &self.dwNameSpace) + .field("lpNSProviderId", &self.lpNSProviderId) + .field("lpszContext", &self.lpszContext) + .field("dwNumberOfProtocols", &self.dwNumberOfProtocols) + .field("lpafpProtocols", &self.lpafpProtocols) + .field("lpszQueryString", &self.lpszQueryString) + .field("dwNumberOfCsAddrs", &self.dwNumberOfCsAddrs) + .field("lpcsaBuffer", &self.lpcsaBuffer) + .field("dwOutputFlags", &self.dwOutputFlags) + .field("lpBlob", &self.lpBlob) + .finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +unsafe impl ::windows::core::Abi for WSAQUERYSET2W { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::cmp::PartialEq for WSAQUERYSET2W { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::cmp::Eq for WSAQUERYSET2W {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::default::Default for WSAQUERYSET2W { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +pub struct WSAQUERYSETA { + pub dwSize: u32, + pub lpszServiceInstanceName: ::windows::core::PSTR, + pub lpServiceClassId: *mut ::windows::core::GUID, + pub lpVersion: *mut WSAVERSION, + pub lpszComment: ::windows::core::PSTR, + pub dwNameSpace: u32, + pub lpNSProviderId: *mut ::windows::core::GUID, + pub lpszContext: ::windows::core::PSTR, + pub dwNumberOfProtocols: u32, + pub lpafpProtocols: *mut AFPROTOCOLS, + pub lpszQueryString: ::windows::core::PSTR, + pub dwNumberOfCsAddrs: u32, + pub lpcsaBuffer: *mut CSADDR_INFO, + pub dwOutputFlags: u32, + pub lpBlob: *mut super::super::System::Com::BLOB, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::marker::Copy for WSAQUERYSETA {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::clone::Clone for WSAQUERYSETA { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::fmt::Debug for WSAQUERYSETA { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSAQUERYSETA") + .field("dwSize", &self.dwSize) + .field("lpszServiceInstanceName", &self.lpszServiceInstanceName) + .field("lpServiceClassId", &self.lpServiceClassId) + .field("lpVersion", &self.lpVersion) + .field("lpszComment", &self.lpszComment) + .field("dwNameSpace", &self.dwNameSpace) + .field("lpNSProviderId", &self.lpNSProviderId) + .field("lpszContext", &self.lpszContext) + .field("dwNumberOfProtocols", &self.dwNumberOfProtocols) + .field("lpafpProtocols", &self.lpafpProtocols) + .field("lpszQueryString", &self.lpszQueryString) + .field("dwNumberOfCsAddrs", &self.dwNumberOfCsAddrs) + .field("lpcsaBuffer", &self.lpcsaBuffer) + .field("dwOutputFlags", &self.dwOutputFlags) + .field("lpBlob", &self.lpBlob) + .finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +unsafe impl ::windows::core::Abi for WSAQUERYSETA { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::cmp::PartialEq for WSAQUERYSETA { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::cmp::Eq for WSAQUERYSETA {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::default::Default for WSAQUERYSETA { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +pub struct WSAQUERYSETW { + pub dwSize: u32, + pub lpszServiceInstanceName: ::windows::core::PWSTR, + pub lpServiceClassId: *mut ::windows::core::GUID, + pub lpVersion: *mut WSAVERSION, + pub lpszComment: ::windows::core::PWSTR, + pub dwNameSpace: u32, + pub lpNSProviderId: *mut ::windows::core::GUID, + pub lpszContext: ::windows::core::PWSTR, + pub dwNumberOfProtocols: u32, + pub lpafpProtocols: *mut AFPROTOCOLS, + pub lpszQueryString: ::windows::core::PWSTR, + pub dwNumberOfCsAddrs: u32, + pub lpcsaBuffer: *mut CSADDR_INFO, + pub dwOutputFlags: u32, + pub lpBlob: *mut super::super::System::Com::BLOB, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::marker::Copy for WSAQUERYSETW {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::clone::Clone for WSAQUERYSETW { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::fmt::Debug for WSAQUERYSETW { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSAQUERYSETW") + .field("dwSize", &self.dwSize) + .field("lpszServiceInstanceName", &self.lpszServiceInstanceName) + .field("lpServiceClassId", &self.lpServiceClassId) + .field("lpVersion", &self.lpVersion) + .field("lpszComment", &self.lpszComment) + .field("dwNameSpace", &self.dwNameSpace) + .field("lpNSProviderId", &self.lpNSProviderId) + .field("lpszContext", &self.lpszContext) + .field("dwNumberOfProtocols", &self.dwNumberOfProtocols) + .field("lpafpProtocols", &self.lpafpProtocols) + .field("lpszQueryString", &self.lpszQueryString) + .field("dwNumberOfCsAddrs", &self.dwNumberOfCsAddrs) + .field("lpcsaBuffer", &self.lpcsaBuffer) + .field("dwOutputFlags", &self.dwOutputFlags) + .field("lpBlob", &self.lpBlob) + .finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +unsafe impl ::windows::core::Abi for WSAQUERYSETW { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::cmp::PartialEq for WSAQUERYSETW { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::cmp::Eq for WSAQUERYSETW {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +impl ::core::default::Default for WSAQUERYSETW { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn WSAQuerySocketSecurity<'a, P0>(socket: P0, securityquerytemplate: ::core::option::Option<&[u8]>, securityqueryinfo: *mut SOCKET_SECURITY_QUERY_INFO, securityqueryinfolen: &mut u32, overlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, completionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAQuerySocketSecurity(socket: SOCKET, securityquerytemplate: *const SOCKET_SECURITY_QUERY_TEMPLATE, securityquerytemplatelen: u32, securityqueryinfo: *mut SOCKET_SECURITY_QUERY_INFO, securityqueryinfolen: *mut u32, overlapped: *const super::super::System::IO::OVERLAPPED, completionroutine: *mut ::core::ffi::c_void) -> i32; + } + WSAQuerySocketSecurity(socket.into(), ::core::mem::transmute(securityquerytemplate.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), securityquerytemplate.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(securityqueryinfo), ::core::mem::transmute(securityqueryinfolen), ::core::mem::transmute(overlapped), ::core::mem::transmute(completionroutine)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn WSARecv<'a, P0>(s: P0, lpbuffers: &[WSABUF], lpnumberofbytesrecvd: ::core::option::Option<&mut u32>, lpflags: &mut u32, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSARecv(s: SOCKET, lpbuffers: *const WSABUF, dwbuffercount: u32, lpnumberofbytesrecvd: *mut u32, lpflags: *mut u32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void) -> i32; + } + WSARecv(s.into(), ::core::mem::transmute(lpbuffers.as_ptr()), lpbuffers.len() as _, ::core::mem::transmute(lpnumberofbytesrecvd), ::core::mem::transmute(lpflags), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSARecvDisconnect<'a, P0>(s: P0, lpinbounddisconnectdata: ::core::option::Option<&WSABUF>) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSARecvDisconnect(s: SOCKET, lpinbounddisconnectdata: *const WSABUF) -> i32; + } + WSARecvDisconnect(s.into(), ::core::mem::transmute(lpinbounddisconnectdata)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSARecvEx<'a, P0>(s: P0, buf: &mut [u8], flags: &mut i32) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSARecvEx(s: SOCKET, buf: ::windows::core::PSTR, len: i32, flags: *mut i32) -> i32; + } + WSARecvEx(s.into(), ::core::mem::transmute(buf.as_ptr()), buf.len() as _, ::core::mem::transmute(flags)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn WSARecvFrom<'a, P0>(s: P0, lpbuffers: &[WSABUF], lpnumberofbytesrecvd: ::core::option::Option<&mut u32>, lpflags: &mut u32, lpfrom: *mut SOCKADDR, lpfromlen: ::core::option::Option<&mut i32>, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSARecvFrom(s: SOCKET, lpbuffers: *const WSABUF, dwbuffercount: u32, lpnumberofbytesrecvd: *mut u32, lpflags: *mut u32, lpfrom: *mut SOCKADDR, lpfromlen: *mut i32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void) -> i32; + } + WSARecvFrom(s.into(), ::core::mem::transmute(lpbuffers.as_ptr()), lpbuffers.len() as _, ::core::mem::transmute(lpnumberofbytesrecvd), ::core::mem::transmute(lpflags), ::core::mem::transmute(lpfrom), ::core::mem::transmute(lpfromlen), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSARemoveServiceClass(lpserviceclassid: &::windows::core::GUID) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSARemoveServiceClass(lpserviceclassid: *const ::windows::core::GUID) -> i32; + } + WSARemoveServiceClass(::core::mem::transmute(lpserviceclassid)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSAResetEvent<'a, P0>(hevent: P0) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAResetEvent(hevent: super::super::Foundation::HANDLE) -> super::super::Foundation::BOOL; + } + WSAResetEvent(hevent.into()) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSARevertImpersonation() -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSARevertImpersonation() -> i32; + } + WSARevertImpersonation() +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub struct WSASENDMSG { + pub lpMsg: *mut WSAMSG, + pub dwFlags: u32, + pub lpNumberOfBytesSent: *mut u32, + pub lpOverlapped: *mut super::super::System::IO::OVERLAPPED, + pub lpCompletionRoutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::marker::Copy for WSASENDMSG {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::clone::Clone for WSASENDMSG { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::fmt::Debug for WSASENDMSG { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSASENDMSG").field("lpMsg", &self.lpMsg).field("dwFlags", &self.dwFlags).field("lpNumberOfBytesSent", &self.lpNumberOfBytesSent).field("lpOverlapped", &self.lpOverlapped).field("lpCompletionRoutine", &self.lpCompletionRoutine.map(|f| f as usize)).finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +unsafe impl ::windows::core::Abi for WSASENDMSG { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::PartialEq for WSASENDMSG { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::Eq for WSASENDMSG {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::default::Default for WSASENDMSG { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct WSASERVICECLASSINFOA { + pub lpServiceClassId: *mut ::windows::core::GUID, + pub lpszServiceClassName: ::windows::core::PSTR, + pub dwCount: u32, + pub lpClassInfos: *mut WSANSCLASSINFOA, +} +impl ::core::marker::Copy for WSASERVICECLASSINFOA {} +impl ::core::clone::Clone for WSASERVICECLASSINFOA { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for WSASERVICECLASSINFOA { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSASERVICECLASSINFOA").field("lpServiceClassId", &self.lpServiceClassId).field("lpszServiceClassName", &self.lpszServiceClassName).field("dwCount", &self.dwCount).field("lpClassInfos", &self.lpClassInfos).finish() + } +} +unsafe impl ::windows::core::Abi for WSASERVICECLASSINFOA { + type Abi = Self; +} +impl ::core::cmp::PartialEq for WSASERVICECLASSINFOA { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for WSASERVICECLASSINFOA {} +impl ::core::default::Default for WSASERVICECLASSINFOA { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct WSASERVICECLASSINFOW { + pub lpServiceClassId: *mut ::windows::core::GUID, + pub lpszServiceClassName: ::windows::core::PWSTR, + pub dwCount: u32, + pub lpClassInfos: *mut WSANSCLASSINFOW, +} +impl ::core::marker::Copy for WSASERVICECLASSINFOW {} +impl ::core::clone::Clone for WSASERVICECLASSINFOW { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for WSASERVICECLASSINFOW { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSASERVICECLASSINFOW").field("lpServiceClassId", &self.lpServiceClassId).field("lpszServiceClassName", &self.lpszServiceClassName).field("dwCount", &self.dwCount).field("lpClassInfos", &self.lpClassInfos).finish() + } +} +unsafe impl ::windows::core::Abi for WSASERVICECLASSINFOW { + type Abi = Self; +} +impl ::core::cmp::PartialEq for WSASERVICECLASSINFOW { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for WSASERVICECLASSINFOW {} +impl ::core::default::Default for WSASERVICECLASSINFOW { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSASYS_STATUS_LEN: u32 = 128u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn WSASend<'a, P0>(s: P0, lpbuffers: &[WSABUF], lpnumberofbytessent: ::core::option::Option<&mut u32>, dwflags: u32, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSASend(s: SOCKET, lpbuffers: *const WSABUF, dwbuffercount: u32, lpnumberofbytessent: *mut u32, dwflags: u32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void) -> i32; + } + WSASend(s.into(), ::core::mem::transmute(lpbuffers.as_ptr()), lpbuffers.len() as _, ::core::mem::transmute(lpnumberofbytessent), dwflags, ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSASendDisconnect<'a, P0>(s: P0, lpoutbounddisconnectdata: ::core::option::Option<&WSABUF>) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSASendDisconnect(s: SOCKET, lpoutbounddisconnectdata: *const WSABUF) -> i32; + } + WSASendDisconnect(s.into(), ::core::mem::transmute(lpoutbounddisconnectdata)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn WSASendMsg<'a, P0>(handle: P0, lpmsg: &WSAMSG, dwflags: u32, lpnumberofbytessent: ::core::option::Option<&mut u32>, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSASendMsg(handle: SOCKET, lpmsg: *const WSAMSG, dwflags: u32, lpnumberofbytessent: *mut u32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void) -> i32; + } + WSASendMsg(handle.into(), ::core::mem::transmute(lpmsg), dwflags, ::core::mem::transmute(lpnumberofbytessent), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn WSASendTo<'a, P0>(s: P0, lpbuffers: &[WSABUF], lpnumberofbytessent: ::core::option::Option<&mut u32>, dwflags: u32, lpto: ::core::option::Option<&[u8]>, lpoverlapped: ::core::option::Option<&mut super::super::System::IO::OVERLAPPED>, lpcompletionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSASendTo(s: SOCKET, lpbuffers: *const WSABUF, dwbuffercount: u32, lpnumberofbytessent: *mut u32, dwflags: u32, lpto: *const SOCKADDR, itolen: i32, lpoverlapped: *mut super::super::System::IO::OVERLAPPED, lpcompletionroutine: *mut ::core::ffi::c_void) -> i32; + } + WSASendTo(s.into(), ::core::mem::transmute(lpbuffers.as_ptr()), lpbuffers.len() as _, ::core::mem::transmute(lpnumberofbytessent), dwflags, ::core::mem::transmute(lpto.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpto.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(lpoverlapped), ::core::mem::transmute(lpcompletionroutine)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSASetBlockingHook(lpblockfunc: super::super::Foundation::FARPROC) -> super::super::Foundation::FARPROC { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSASetBlockingHook(lpblockfunc: *mut ::core::ffi::c_void) -> super::super::Foundation::FARPROC; + } + WSASetBlockingHook(::core::mem::transmute(lpblockfunc)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSASetEvent<'a, P0>(hevent: P0) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSASetEvent(hevent: super::super::Foundation::HANDLE) -> super::super::Foundation::BOOL; + } + WSASetEvent(hevent.into()) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSASetLastError(ierror: i32) { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSASetLastError(ierror: i32); + } + WSASetLastError(ierror) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +#[inline] +pub unsafe fn WSASetServiceA(lpqsreginfo: &WSAQUERYSETA, essoperation: WSAESETSERVICEOP, dwcontrolflags: u32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSASetServiceA(lpqsreginfo: *const WSAQUERYSETA, essoperation: WSAESETSERVICEOP, dwcontrolflags: u32) -> i32; + } + WSASetServiceA(::core::mem::transmute(lpqsreginfo), essoperation, dwcontrolflags) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +#[inline] +pub unsafe fn WSASetServiceW(lpqsreginfo: &WSAQUERYSETW, essoperation: WSAESETSERVICEOP, dwcontrolflags: u32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSASetServiceW(lpqsreginfo: *const WSAQUERYSETW, essoperation: WSAESETSERVICEOP, dwcontrolflags: u32) -> i32; + } + WSASetServiceW(::core::mem::transmute(lpqsreginfo), essoperation, dwcontrolflags) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn WSASetSocketPeerTargetName<'a, P0>(socket: P0, peertargetname: &[u8], overlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, completionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSASetSocketPeerTargetName(socket: SOCKET, peertargetname: *const SOCKET_PEER_TARGET_NAME, peertargetnamelen: u32, overlapped: *const super::super::System::IO::OVERLAPPED, completionroutine: *mut ::core::ffi::c_void) -> i32; + } + WSASetSocketPeerTargetName(socket.into(), ::core::mem::transmute(peertargetname.as_ptr()), peertargetname.len() as _, ::core::mem::transmute(overlapped), ::core::mem::transmute(completionroutine)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +#[inline] +pub unsafe fn WSASetSocketSecurity<'a, P0>(socket: P0, securitysettings: ::core::option::Option<&[u8]>, overlapped: ::core::option::Option<&super::super::System::IO::OVERLAPPED>, completionroutine: LPWSAOVERLAPPED_COMPLETION_ROUTINE) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSASetSocketSecurity(socket: SOCKET, securitysettings: *const SOCKET_SECURITY_SETTINGS, securitysettingslen: u32, overlapped: *const super::super::System::IO::OVERLAPPED, completionroutine: *mut ::core::ffi::c_void) -> i32; + } + WSASetSocketSecurity(socket.into(), ::core::mem::transmute(securitysettings.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), securitysettings.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(overlapped), ::core::mem::transmute(completionroutine)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSASocketA(af: i32, r#type: i32, protocol: i32, lpprotocolinfo: ::core::option::Option<&WSAPROTOCOL_INFOA>, g: u32, dwflags: u32) -> SOCKET { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSASocketA(af: i32, r#type: i32, protocol: i32, lpprotocolinfo: *const WSAPROTOCOL_INFOA, g: u32, dwflags: u32) -> SOCKET; + } + WSASocketA(af, r#type, protocol, ::core::mem::transmute(lpprotocolinfo), g, dwflags) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSASocketW(af: i32, r#type: i32, protocol: i32, lpprotocolinfo: ::core::option::Option<&WSAPROTOCOL_INFOW>, g: u32, dwflags: u32) -> SOCKET { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSASocketW(af: i32, r#type: i32, protocol: i32, lpprotocolinfo: *const WSAPROTOCOL_INFOW, g: u32, dwflags: u32) -> SOCKET; + } + WSASocketW(af, r#type, protocol, ::core::mem::transmute(lpprotocolinfo), g, dwflags) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSAStartup(wversionrequested: u16, lpwsadata: &mut WSAData) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAStartup(wversionrequested: u16, lpwsadata: *mut WSAData) -> i32; + } + WSAStartup(wversionrequested, ::core::mem::transmute(lpwsadata)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSAStringToAddressA<'a, P0>(addressstring: P0, addressfamily: i32, lpprotocolinfo: ::core::option::Option<&WSAPROTOCOL_INFOA>, lpaddress: *mut SOCKADDR, lpaddresslength: &mut i32) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAStringToAddressA(addressstring: ::windows::core::PCSTR, addressfamily: i32, lpprotocolinfo: *const WSAPROTOCOL_INFOA, lpaddress: *mut SOCKADDR, lpaddresslength: *mut i32) -> i32; + } + WSAStringToAddressA(addressstring.into(), addressfamily, ::core::mem::transmute(lpprotocolinfo), ::core::mem::transmute(lpaddress), ::core::mem::transmute(lpaddresslength)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSAStringToAddressW<'a, P0>(addressstring: P0, addressfamily: i32, lpprotocolinfo: ::core::option::Option<&WSAPROTOCOL_INFOW>, lpaddress: *mut SOCKADDR, lpaddresslength: &mut i32) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAStringToAddressW(addressstring: ::windows::core::PCWSTR, addressfamily: i32, lpprotocolinfo: *const WSAPROTOCOL_INFOW, lpaddress: *mut SOCKADDR, lpaddresslength: *mut i32) -> i32; + } + WSAStringToAddressW(addressstring.into(), addressfamily, ::core::mem::transmute(lpprotocolinfo), ::core::mem::transmute(lpaddress), ::core::mem::transmute(lpaddresslength)) +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct WSATHREADID { + pub ThreadHandle: super::super::Foundation::HANDLE, + pub Reserved: usize, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WSATHREADID {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WSATHREADID { + fn clone(&self) -> Self { + *self + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for WSATHREADID { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSATHREADID").field("ThreadHandle", &self.ThreadHandle).field("Reserved", &self.Reserved).finish() + } +} +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WSATHREADID { + type Abi = Self; +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WSATHREADID { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WSATHREADID {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WSATHREADID { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSAUnadvertiseProvider(puuidproviderid: &::windows::core::GUID) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAUnadvertiseProvider(puuidproviderid: *const ::windows::core::GUID) -> i32; + } + WSAUnadvertiseProvider(::core::mem::transmute(puuidproviderid)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSAUnhookBlockingHook() -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAUnhookBlockingHook() -> i32; + } + WSAUnhookBlockingHook() +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct WSAVERSION { + pub dwVersion: u32, + pub ecHow: WSAECOMPARATOR, +} +impl ::core::marker::Copy for WSAVERSION {} +impl ::core::clone::Clone for WSAVERSION { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for WSAVERSION { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSAVERSION").field("dwVersion", &self.dwVersion).field("ecHow", &self.ecHow).finish() + } +} +unsafe impl ::windows::core::Abi for WSAVERSION { + type Abi = Self; +} +impl ::core::cmp::PartialEq for WSAVERSION { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for WSAVERSION {} +impl ::core::default::Default for WSAVERSION { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSAWaitForMultipleEvents<'a, P0, P1>(lphevents: &[super::super::Foundation::HANDLE], fwaitall: P0, dwtimeout: u32, falertable: P1) -> u32 +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSAWaitForMultipleEvents(cevents: u32, lphevents: *const super::super::Foundation::HANDLE, fwaitall: super::super::Foundation::BOOL, dwtimeout: u32, falertable: super::super::Foundation::BOOL) -> u32; + } + WSAWaitForMultipleEvents(lphevents.len() as _, ::core::mem::transmute(lphevents.as_ptr()), fwaitall.into(), dwtimeout, falertable.into()) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct WSA_COMPATIBILITY_BEHAVIOR_ID(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WsaBehaviorAll: WSA_COMPATIBILITY_BEHAVIOR_ID = WSA_COMPATIBILITY_BEHAVIOR_ID(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WsaBehaviorReceiveBuffering: WSA_COMPATIBILITY_BEHAVIOR_ID = WSA_COMPATIBILITY_BEHAVIOR_ID(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WsaBehaviorAutoTuning: WSA_COMPATIBILITY_BEHAVIOR_ID = WSA_COMPATIBILITY_BEHAVIOR_ID(2i32); +impl ::core::marker::Copy for WSA_COMPATIBILITY_BEHAVIOR_ID {} +impl ::core::clone::Clone for WSA_COMPATIBILITY_BEHAVIOR_ID { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for WSA_COMPATIBILITY_BEHAVIOR_ID { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for WSA_COMPATIBILITY_BEHAVIOR_ID { + type Abi = Self; +} +impl ::core::fmt::Debug for WSA_COMPATIBILITY_BEHAVIOR_ID { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("WSA_COMPATIBILITY_BEHAVIOR_ID").field(&self.0).finish() + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub struct WSA_COMPATIBILITY_MODE { + pub BehaviorId: WSA_COMPATIBILITY_BEHAVIOR_ID, + pub TargetOsVersion: u32, +} +impl ::core::marker::Copy for WSA_COMPATIBILITY_MODE {} +impl ::core::clone::Clone for WSA_COMPATIBILITY_MODE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for WSA_COMPATIBILITY_MODE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSA_COMPATIBILITY_MODE").field("BehaviorId", &self.BehaviorId).field("TargetOsVersion", &self.TargetOsVersion).finish() + } +} +unsafe impl ::windows::core::Abi for WSA_COMPATIBILITY_MODE { + type Abi = Self; +} +impl ::core::cmp::PartialEq for WSA_COMPATIBILITY_MODE { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for WSA_COMPATIBILITY_MODE {} +impl ::core::default::Default for WSA_COMPATIBILITY_MODE { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct WSA_ERROR(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_IO_PENDING: WSA_ERROR = WSA_ERROR(997i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_IO_INCOMPLETE: WSA_ERROR = WSA_ERROR(996i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_INVALID_HANDLE: WSA_ERROR = WSA_ERROR(6i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_INVALID_PARAMETER: WSA_ERROR = WSA_ERROR(87i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_NOT_ENOUGH_MEMORY: WSA_ERROR = WSA_ERROR(8i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_OPERATION_ABORTED: WSA_ERROR = WSA_ERROR(995i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_WAIT_EVENT_0: WSA_ERROR = WSA_ERROR(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_WAIT_IO_COMPLETION: WSA_ERROR = WSA_ERROR(192i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSABASEERR: WSA_ERROR = WSA_ERROR(10000i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEINTR: WSA_ERROR = WSA_ERROR(10004i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEBADF: WSA_ERROR = WSA_ERROR(10009i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEACCES: WSA_ERROR = WSA_ERROR(10013i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEFAULT: WSA_ERROR = WSA_ERROR(10014i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEINVAL: WSA_ERROR = WSA_ERROR(10022i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEMFILE: WSA_ERROR = WSA_ERROR(10024i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEWOULDBLOCK: WSA_ERROR = WSA_ERROR(10035i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEINPROGRESS: WSA_ERROR = WSA_ERROR(10036i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEALREADY: WSA_ERROR = WSA_ERROR(10037i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAENOTSOCK: WSA_ERROR = WSA_ERROR(10038i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEDESTADDRREQ: WSA_ERROR = WSA_ERROR(10039i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEMSGSIZE: WSA_ERROR = WSA_ERROR(10040i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEPROTOTYPE: WSA_ERROR = WSA_ERROR(10041i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAENOPROTOOPT: WSA_ERROR = WSA_ERROR(10042i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEPROTONOSUPPORT: WSA_ERROR = WSA_ERROR(10043i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAESOCKTNOSUPPORT: WSA_ERROR = WSA_ERROR(10044i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEOPNOTSUPP: WSA_ERROR = WSA_ERROR(10045i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEPFNOSUPPORT: WSA_ERROR = WSA_ERROR(10046i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEAFNOSUPPORT: WSA_ERROR = WSA_ERROR(10047i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEADDRINUSE: WSA_ERROR = WSA_ERROR(10048i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEADDRNOTAVAIL: WSA_ERROR = WSA_ERROR(10049i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAENETDOWN: WSA_ERROR = WSA_ERROR(10050i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAENETUNREACH: WSA_ERROR = WSA_ERROR(10051i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAENETRESET: WSA_ERROR = WSA_ERROR(10052i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAECONNABORTED: WSA_ERROR = WSA_ERROR(10053i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAECONNRESET: WSA_ERROR = WSA_ERROR(10054i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAENOBUFS: WSA_ERROR = WSA_ERROR(10055i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEISCONN: WSA_ERROR = WSA_ERROR(10056i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAENOTCONN: WSA_ERROR = WSA_ERROR(10057i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAESHUTDOWN: WSA_ERROR = WSA_ERROR(10058i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAETOOMANYREFS: WSA_ERROR = WSA_ERROR(10059i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAETIMEDOUT: WSA_ERROR = WSA_ERROR(10060i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAECONNREFUSED: WSA_ERROR = WSA_ERROR(10061i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAELOOP: WSA_ERROR = WSA_ERROR(10062i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAENAMETOOLONG: WSA_ERROR = WSA_ERROR(10063i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEHOSTDOWN: WSA_ERROR = WSA_ERROR(10064i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEHOSTUNREACH: WSA_ERROR = WSA_ERROR(10065i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAENOTEMPTY: WSA_ERROR = WSA_ERROR(10066i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEPROCLIM: WSA_ERROR = WSA_ERROR(10067i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEUSERS: WSA_ERROR = WSA_ERROR(10068i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEDQUOT: WSA_ERROR = WSA_ERROR(10069i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAESTALE: WSA_ERROR = WSA_ERROR(10070i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEREMOTE: WSA_ERROR = WSA_ERROR(10071i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSASYSNOTREADY: WSA_ERROR = WSA_ERROR(10091i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAVERNOTSUPPORTED: WSA_ERROR = WSA_ERROR(10092i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSANOTINITIALISED: WSA_ERROR = WSA_ERROR(10093i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEDISCON: WSA_ERROR = WSA_ERROR(10101i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAENOMORE: WSA_ERROR = WSA_ERROR(10102i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAECANCELLED: WSA_ERROR = WSA_ERROR(10103i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEINVALIDPROCTABLE: WSA_ERROR = WSA_ERROR(10104i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEINVALIDPROVIDER: WSA_ERROR = WSA_ERROR(10105i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEPROVIDERFAILEDINIT: WSA_ERROR = WSA_ERROR(10106i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSASYSCALLFAILURE: WSA_ERROR = WSA_ERROR(10107i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSASERVICE_NOT_FOUND: WSA_ERROR = WSA_ERROR(10108i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSATYPE_NOT_FOUND: WSA_ERROR = WSA_ERROR(10109i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_E_NO_MORE: WSA_ERROR = WSA_ERROR(10110i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_E_CANCELLED: WSA_ERROR = WSA_ERROR(10111i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAEREFUSED: WSA_ERROR = WSA_ERROR(10112i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSAHOST_NOT_FOUND: WSA_ERROR = WSA_ERROR(11001i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSATRY_AGAIN: WSA_ERROR = WSA_ERROR(11002i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSANO_RECOVERY: WSA_ERROR = WSA_ERROR(11003i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSANO_DATA: WSA_ERROR = WSA_ERROR(11004i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_RECEIVERS: WSA_ERROR = WSA_ERROR(11005i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_SENDERS: WSA_ERROR = WSA_ERROR(11006i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_NO_SENDERS: WSA_ERROR = WSA_ERROR(11007i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_NO_RECEIVERS: WSA_ERROR = WSA_ERROR(11008i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_REQUEST_CONFIRMED: WSA_ERROR = WSA_ERROR(11009i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_ADMISSION_FAILURE: WSA_ERROR = WSA_ERROR(11010i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_POLICY_FAILURE: WSA_ERROR = WSA_ERROR(11011i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_BAD_STYLE: WSA_ERROR = WSA_ERROR(11012i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_BAD_OBJECT: WSA_ERROR = WSA_ERROR(11013i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_TRAFFIC_CTRL_ERROR: WSA_ERROR = WSA_ERROR(11014i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_GENERIC_ERROR: WSA_ERROR = WSA_ERROR(11015i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_ESERVICETYPE: WSA_ERROR = WSA_ERROR(11016i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_EFLOWSPEC: WSA_ERROR = WSA_ERROR(11017i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_EPROVSPECBUF: WSA_ERROR = WSA_ERROR(11018i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_EFILTERSTYLE: WSA_ERROR = WSA_ERROR(11019i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_EFILTERTYPE: WSA_ERROR = WSA_ERROR(11020i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_EFILTERCOUNT: WSA_ERROR = WSA_ERROR(11021i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_EOBJLENGTH: WSA_ERROR = WSA_ERROR(11022i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_EFLOWCOUNT: WSA_ERROR = WSA_ERROR(11023i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_EUNKOWNPSOBJ: WSA_ERROR = WSA_ERROR(11024i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_EPOLICYOBJ: WSA_ERROR = WSA_ERROR(11025i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_EFLOWDESC: WSA_ERROR = WSA_ERROR(11026i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_EPSFLOWSPEC: WSA_ERROR = WSA_ERROR(11027i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_EPSFILTERSPEC: WSA_ERROR = WSA_ERROR(11028i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_ESDMODEOBJ: WSA_ERROR = WSA_ERROR(11029i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_ESHAPERATEOBJ: WSA_ERROR = WSA_ERROR(11030i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_QOS_RESERVED_PETYPE: WSA_ERROR = WSA_ERROR(11031i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_SECURE_HOST_NOT_FOUND: WSA_ERROR = WSA_ERROR(11032i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_IPSEC_NAME_POLICY_ERROR: WSA_ERROR = WSA_ERROR(11033i32); +impl ::core::marker::Copy for WSA_ERROR {} +impl ::core::clone::Clone for WSA_ERROR { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for WSA_ERROR { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for WSA_ERROR { + type Abi = Self; +} +impl ::core::fmt::Debug for WSA_ERROR { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("WSA_ERROR").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_FLAG_ACCESS_SYSTEM_SECURITY: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_FLAG_MULTIPOINT_C_LEAF: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_FLAG_MULTIPOINT_C_ROOT: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_FLAG_MULTIPOINT_D_LEAF: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_FLAG_MULTIPOINT_D_ROOT: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_FLAG_NO_HANDLE_INHERIT: u32 = 128u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_FLAG_OVERLAPPED: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_FLAG_REGISTERED_IO: u32 = 256u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_INFINITE: u32 = 4294967295u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_MAXIMUM_WAIT_EVENTS: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSA_WAIT_FAILED: u32 = 4294967295u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSCDeinstallProvider(lpproviderid: &::windows::core::GUID, lperrno: &mut i32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCDeinstallProvider(lpproviderid: *const ::windows::core::GUID, lperrno: *mut i32) -> i32; + } + WSCDeinstallProvider(::core::mem::transmute(lpproviderid), ::core::mem::transmute(lperrno)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[inline] +pub unsafe fn WSCDeinstallProvider32(lpproviderid: &::windows::core::GUID, lperrno: &mut i32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCDeinstallProvider32(lpproviderid: *const ::windows::core::GUID, lperrno: *mut i32) -> i32; + } + WSCDeinstallProvider32(::core::mem::transmute(lpproviderid), ::core::mem::transmute(lperrno)) +} #[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn bind<'a, P0>(s: P0, name: &[u8]) -> i32 +pub unsafe fn WSCEnableNSProvider<'a, P0>(lpproviderid: &::windows::core::GUID, fenable: P0) -> i32 where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn bind(s: SOCKET, name: *const SOCKADDR, namelen: i32) -> i32; + fn WSCEnableNSProvider(lpproviderid: *const ::windows::core::GUID, fenable: super::super::Foundation::BOOL) -> i32; } - bind(s.into(), ::core::mem::transmute(name.as_ptr()), name.len() as _) + WSCEnableNSProvider(::core::mem::transmute(lpproviderid), fenable.into()) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn closesocket<'a, P0>(s: P0) -> i32 +pub unsafe fn WSCEnableNSProvider32<'a, P0>(lpproviderid: &::windows::core::GUID, fenable: P0) -> i32 where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn closesocket(s: SOCKET) -> i32; + fn WSCEnableNSProvider32(lpproviderid: *const ::windows::core::GUID, fenable: super::super::Foundation::BOOL) -> i32; } - closesocket(s.into()) -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct cmsghdr { - pub cmsg_len: usize, - pub cmsg_level: i32, - pub cmsg_type: i32, + WSCEnableNSProvider32(::core::mem::transmute(lpproviderid), fenable.into()) } -impl ::core::marker::Copy for cmsghdr {} -impl ::core::clone::Clone for cmsghdr { - fn clone(&self) -> Self { - *self +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn WSCEnumNameSpaceProviders32(lpdwbufferlength: &mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOW) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCEnumNameSpaceProviders32(lpdwbufferlength: *mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOW) -> i32; } + WSCEnumNameSpaceProviders32(::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpnspbuffer)) } -impl ::core::fmt::Debug for cmsghdr { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("cmsghdr").field("cmsg_len", &self.cmsg_len).field("cmsg_level", &self.cmsg_level).field("cmsg_type", &self.cmsg_type).finish() +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] +#[inline] +pub unsafe fn WSCEnumNameSpaceProvidersEx32(lpdwbufferlength: &mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOEXW) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCEnumNameSpaceProvidersEx32(lpdwbufferlength: *mut u32, lpnspbuffer: *mut WSANAMESPACE_INFOEXW) -> i32; } + WSCEnumNameSpaceProvidersEx32(::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lpnspbuffer)) } -unsafe impl ::windows::core::Abi for cmsghdr { - type Abi = Self; -} -impl ::core::cmp::PartialEq for cmsghdr { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSCEnumProtocols(lpiprotocols: ::core::option::Option<&i32>, lpprotocolbuffer: *mut WSAPROTOCOL_INFOW, lpdwbufferlength: &mut u32, lperrno: &mut i32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCEnumProtocols(lpiprotocols: *const i32, lpprotocolbuffer: *mut WSAPROTOCOL_INFOW, lpdwbufferlength: *mut u32, lperrno: *mut i32) -> i32; } + WSCEnumProtocols(::core::mem::transmute(lpiprotocols), ::core::mem::transmute(lpprotocolbuffer), ::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lperrno)) } -impl ::core::cmp::Eq for cmsghdr {} -impl ::core::default::Default for cmsghdr { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[inline] +pub unsafe fn WSCEnumProtocols32(lpiprotocols: ::core::option::Option<&i32>, lpprotocolbuffer: *mut WSAPROTOCOL_INFOW, lpdwbufferlength: &mut u32, lperrno: &mut i32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCEnumProtocols32(lpiprotocols: *const i32, lpprotocolbuffer: *mut WSAPROTOCOL_INFOW, lpdwbufferlength: *mut u32, lperrno: *mut i32) -> i32; } + WSCEnumProtocols32(::core::mem::transmute(lpiprotocols), ::core::mem::transmute(lpprotocolbuffer), ::core::mem::transmute(lpdwbufferlength), ::core::mem::transmute(lperrno)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[inline] -pub unsafe fn connect<'a, P0>(s: P0, name: &[u8]) -> i32 -where - P0: ::std::convert::Into, -{ +pub unsafe fn WSCGetApplicationCategory(path: &[u16], extra: ::core::option::Option<&[u16]>, ppermittedlspcategories: &mut u32, lperrno: &mut i32) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn connect(s: SOCKET, name: *const SOCKADDR, namelen: i32) -> i32; + fn WSCGetApplicationCategory(path: ::windows::core::PCWSTR, pathlength: u32, extra: ::windows::core::PCWSTR, extralength: u32, ppermittedlspcategories: *mut u32, lperrno: *mut i32) -> i32; } - connect(s.into(), ::core::mem::transmute(name.as_ptr()), name.len() as _) + WSCGetApplicationCategory(::core::mem::transmute(path.as_ptr()), path.len() as _, ::core::mem::transmute(extra.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), extra.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(ppermittedlspcategories), ::core::mem::transmute(lperrno)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct eWINDOW_ADVANCE_METHOD(pub i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const E_WINDOW_ADVANCE_BY_TIME: eWINDOW_ADVANCE_METHOD = eWINDOW_ADVANCE_METHOD(1i32); -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub const E_WINDOW_USE_AS_DATA_CACHE: eWINDOW_ADVANCE_METHOD = eWINDOW_ADVANCE_METHOD(2i32); -impl ::core::marker::Copy for eWINDOW_ADVANCE_METHOD {} -impl ::core::clone::Clone for eWINDOW_ADVANCE_METHOD { - fn clone(&self) -> Self { - *self +#[inline] +pub unsafe fn WSCGetProviderInfo(lpproviderid: &::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: *mut u8, infosize: &mut usize, flags: u32, lperrno: &mut i32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCGetProviderInfo(lpproviderid: *const ::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: *mut u8, infosize: *mut usize, flags: u32, lperrno: *mut i32) -> i32; } + WSCGetProviderInfo(::core::mem::transmute(lpproviderid), infotype, ::core::mem::transmute(info), ::core::mem::transmute(infosize), flags, ::core::mem::transmute(lperrno)) } -impl ::core::default::Default for eWINDOW_ADVANCE_METHOD { - fn default() -> Self { - Self(0) +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[inline] +pub unsafe fn WSCGetProviderInfo32(lpproviderid: &::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: *mut u8, infosize: &mut usize, flags: u32, lperrno: &mut i32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCGetProviderInfo32(lpproviderid: *const ::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: *mut u8, infosize: *mut usize, flags: u32, lperrno: *mut i32) -> i32; } + WSCGetProviderInfo32(::core::mem::transmute(lpproviderid), infotype, ::core::mem::transmute(info), ::core::mem::transmute(infosize), flags, ::core::mem::transmute(lperrno)) } -unsafe impl ::windows::core::Abi for eWINDOW_ADVANCE_METHOD { - type Abi = Self; -} -impl ::core::fmt::Debug for eWINDOW_ADVANCE_METHOD { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("eWINDOW_ADVANCE_METHOD").field(&self.0).finish() +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSCGetProviderPath(lpproviderid: &::windows::core::GUID, lpszproviderdllpath: ::windows::core::PWSTR, lpproviderdllpathlen: &mut i32, lperrno: &mut i32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCGetProviderPath(lpproviderid: *const ::windows::core::GUID, lpszproviderdllpath: ::windows::core::PWSTR, lpproviderdllpathlen: *mut i32, lperrno: *mut i32) -> i32; } + WSCGetProviderPath(::core::mem::transmute(lpproviderid), ::core::mem::transmute(lpszproviderdllpath), ::core::mem::transmute(lpproviderdllpathlen), ::core::mem::transmute(lperrno)) } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct fd_set { - pub fd_count: u32, - pub fd_array: [SOCKET; 64], +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[inline] +pub unsafe fn WSCGetProviderPath32(lpproviderid: &::windows::core::GUID, lpszproviderdllpath: ::windows::core::PWSTR, lpproviderdllpathlen: &mut i32, lperrno: &mut i32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCGetProviderPath32(lpproviderid: *const ::windows::core::GUID, lpszproviderdllpath: ::windows::core::PWSTR, lpproviderdllpathlen: *mut i32, lperrno: *mut i32) -> i32; + } + WSCGetProviderPath32(::core::mem::transmute(lpproviderid), ::core::mem::transmute(lpszproviderdllpath), ::core::mem::transmute(lpproviderdllpathlen), ::core::mem::transmute(lperrno)) } -impl ::core::marker::Copy for fd_set {} -impl ::core::clone::Clone for fd_set { - fn clone(&self) -> Self { - *self +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSCInstallNameSpace<'a, P0, P1>(lpszidentifier: P0, lpszpathname: P1, dwnamespace: u32, dwversion: u32, lpproviderid: &::windows::core::GUID) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, + P1: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCInstallNameSpace(lpszidentifier: ::windows::core::PCWSTR, lpszpathname: ::windows::core::PCWSTR, dwnamespace: u32, dwversion: u32, lpproviderid: *const ::windows::core::GUID) -> i32; } + WSCInstallNameSpace(lpszidentifier.into(), lpszpathname.into(), dwnamespace, dwversion, ::core::mem::transmute(lpproviderid)) } -impl ::core::fmt::Debug for fd_set { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("fd_set").field("fd_count", &self.fd_count).field("fd_array", &self.fd_array).finish() +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[inline] +pub unsafe fn WSCInstallNameSpace32<'a, P0, P1>(lpszidentifier: P0, lpszpathname: P1, dwnamespace: u32, dwversion: u32, lpproviderid: &::windows::core::GUID) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, + P1: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCInstallNameSpace32(lpszidentifier: ::windows::core::PCWSTR, lpszpathname: ::windows::core::PCWSTR, dwnamespace: u32, dwversion: u32, lpproviderid: *const ::windows::core::GUID) -> i32; } + WSCInstallNameSpace32(lpszidentifier.into(), lpszpathname.into(), dwnamespace, dwversion, ::core::mem::transmute(lpproviderid)) } -unsafe impl ::windows::core::Abi for fd_set { - type Abi = Self; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Com\"`*"] +#[cfg(feature = "Win32_System_Com")] +#[inline] +pub unsafe fn WSCInstallNameSpaceEx<'a, P0, P1>(lpszidentifier: P0, lpszpathname: P1, dwnamespace: u32, dwversion: u32, lpproviderid: &::windows::core::GUID, lpproviderspecific: &super::super::System::Com::BLOB) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, + P1: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCInstallNameSpaceEx(lpszidentifier: ::windows::core::PCWSTR, lpszpathname: ::windows::core::PCWSTR, dwnamespace: u32, dwversion: u32, lpproviderid: *const ::windows::core::GUID, lpproviderspecific: *const super::super::System::Com::BLOB) -> i32; + } + WSCInstallNameSpaceEx(lpszidentifier.into(), lpszpathname.into(), dwnamespace, dwversion, ::core::mem::transmute(lpproviderid), ::core::mem::transmute(lpproviderspecific)) } -impl ::core::cmp::PartialEq for fd_set { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_System_Com\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] +#[cfg(feature = "Win32_System_Com")] +#[inline] +pub unsafe fn WSCInstallNameSpaceEx32<'a, P0, P1>(lpszidentifier: P0, lpszpathname: P1, dwnamespace: u32, dwversion: u32, lpproviderid: &::windows::core::GUID, lpproviderspecific: &super::super::System::Com::BLOB) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, + P1: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCInstallNameSpaceEx32(lpszidentifier: ::windows::core::PCWSTR, lpszpathname: ::windows::core::PCWSTR, dwnamespace: u32, dwversion: u32, lpproviderid: *const ::windows::core::GUID, lpproviderspecific: *const super::super::System::Com::BLOB) -> i32; } + WSCInstallNameSpaceEx32(lpszidentifier.into(), lpszpathname.into(), dwnamespace, dwversion, ::core::mem::transmute(lpproviderid), ::core::mem::transmute(lpproviderspecific)) } -impl ::core::cmp::Eq for fd_set {} -impl ::core::default::Default for fd_set { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSCInstallProvider<'a, P0>(lpproviderid: &::windows::core::GUID, lpszproviderdllpath: P0, lpprotocolinfolist: &[WSAPROTOCOL_INFOW], lperrno: &mut i32) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCInstallProvider(lpproviderid: *const ::windows::core::GUID, lpszproviderdllpath: ::windows::core::PCWSTR, lpprotocolinfolist: *const WSAPROTOCOL_INFOW, dwnumberofentries: u32, lperrno: *mut i32) -> i32; } + WSCInstallProvider(::core::mem::transmute(lpproviderid), lpszproviderdllpath.into(), ::core::mem::transmute(lpprotocolinfolist.as_ptr()), lpprotocolinfolist.len() as _, ::core::mem::transmute(lperrno)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] #[inline] -pub unsafe fn freeaddrinfo(paddrinfo: ::core::option::Option<&ADDRINFOA>) { +pub unsafe fn WSCInstallProvider64_32<'a, P0>(lpproviderid: &::windows::core::GUID, lpszproviderdllpath: P0, lpprotocolinfolist: &[WSAPROTOCOL_INFOW], lperrno: &mut i32) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn freeaddrinfo(paddrinfo: *const ADDRINFOA); + fn WSCInstallProvider64_32(lpproviderid: *const ::windows::core::GUID, lpszproviderdllpath: ::windows::core::PCWSTR, lpprotocolinfolist: *const WSAPROTOCOL_INFOW, dwnumberofentries: u32, lperrno: *mut i32) -> i32; } - freeaddrinfo(::core::mem::transmute(paddrinfo)) + WSCInstallProvider64_32(::core::mem::transmute(lpproviderid), lpszproviderdllpath.into(), ::core::mem::transmute(lpprotocolinfolist.as_ptr()), lpprotocolinfolist.len() as _, ::core::mem::transmute(lperrno)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] #[inline] -pub unsafe fn getaddrinfo<'a, P0, P1>(pnodename: P0, pservicename: P1, phints: ::core::option::Option<&ADDRINFOA>, ppresult: &mut *mut ADDRINFOA) -> i32 +pub unsafe fn WSCInstallProviderAndChains64_32<'a, P0, P1, P2>(lpproviderid: &::windows::core::GUID, lpszproviderdllpath: P0, lpszproviderdllpath32: P1, lpszlspname: P2, dwserviceflags: u32, lpprotocolinfolist: &mut [WSAPROTOCOL_INFOW], lpdwcatalogentryid: ::core::option::Option<&mut u32>, lperrno: &mut i32) -> i32 where - P0: ::std::convert::Into<::windows::core::PCSTR>, - P1: ::std::convert::Into<::windows::core::PCSTR>, + P0: ::std::convert::Into<::windows::core::PCWSTR>, + P1: ::std::convert::Into<::windows::core::PCWSTR>, + P2: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn getaddrinfo(pnodename: ::windows::core::PCSTR, pservicename: ::windows::core::PCSTR, phints: *const ADDRINFOA, ppresult: *mut *mut ADDRINFOA) -> i32; + fn WSCInstallProviderAndChains64_32(lpproviderid: *const ::windows::core::GUID, lpszproviderdllpath: ::windows::core::PCWSTR, lpszproviderdllpath32: ::windows::core::PCWSTR, lpszlspname: ::windows::core::PCWSTR, dwserviceflags: u32, lpprotocolinfolist: *mut WSAPROTOCOL_INFOW, dwnumberofentries: u32, lpdwcatalogentryid: *mut u32, lperrno: *mut i32) -> i32; + } + WSCInstallProviderAndChains64_32(::core::mem::transmute(lpproviderid), lpszproviderdllpath.into(), lpszproviderdllpath32.into(), lpszlspname.into(), dwserviceflags, ::core::mem::transmute(lpprotocolinfolist.as_ptr()), lpprotocolinfolist.len() as _, ::core::mem::transmute(lpdwcatalogentryid), ::core::mem::transmute(lperrno)) +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn WSCSetApplicationCategory(path: &[u16], extra: ::core::option::Option<&[u16]>, permittedlspcategories: u32, pprevpermlspcat: ::core::option::Option<&mut u32>, lperrno: &mut i32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn WSCSetApplicationCategory(path: ::windows::core::PCWSTR, pathlength: u32, extra: ::windows::core::PCWSTR, extralength: u32, permittedlspcategories: u32, pprevpermlspcat: *mut u32, lperrno: *mut i32) -> i32; } - getaddrinfo(pnodename.into(), pservicename.into(), ::core::mem::transmute(phints), ::core::mem::transmute(ppresult)) + WSCSetApplicationCategory(::core::mem::transmute(path.as_ptr()), path.len() as _, ::core::mem::transmute(extra.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), extra.as_deref().map_or(0, |slice| slice.len() as _), permittedlspcategories, ::core::mem::transmute(pprevpermlspcat), ::core::mem::transmute(lperrno)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[inline] -pub unsafe fn gethostbyaddr(addr: &[u8], r#type: i32) -> *mut hostent { +pub unsafe fn WSCSetProviderInfo(lpproviderid: &::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: &[u8], flags: u32, lperrno: &mut i32) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn gethostbyaddr(addr: ::windows::core::PCSTR, len: i32, r#type: i32) -> *mut hostent; + fn WSCSetProviderInfo(lpproviderid: *const ::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: *const u8, infosize: usize, flags: u32, lperrno: *mut i32) -> i32; } - gethostbyaddr(::core::mem::transmute(addr.as_ptr()), addr.len() as _, r#type) + WSCSetProviderInfo(::core::mem::transmute(lpproviderid), infotype, ::core::mem::transmute(info.as_ptr()), info.len() as _, flags, ::core::mem::transmute(lperrno)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] #[inline] -pub unsafe fn gethostbyname<'a, P0>(name: P0) -> *mut hostent -where - P0: ::std::convert::Into<::windows::core::PCSTR>, -{ +pub unsafe fn WSCSetProviderInfo32(lpproviderid: &::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: &[u8], flags: u32, lperrno: &mut i32) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn gethostbyname(name: ::windows::core::PCSTR) -> *mut hostent; + fn WSCSetProviderInfo32(lpproviderid: *const ::windows::core::GUID, infotype: WSC_PROVIDER_INFO_TYPE, info: *const u8, infosize: usize, flags: u32, lperrno: *mut i32) -> i32; } - gethostbyname(name.into()) + WSCSetProviderInfo32(::core::mem::transmute(lpproviderid), infotype, ::core::mem::transmute(info.as_ptr()), info.len() as _, flags, ::core::mem::transmute(lperrno)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[inline] -pub unsafe fn gethostname(name: &mut [u8]) -> i32 { +pub unsafe fn WSCUnInstallNameSpace(lpproviderid: &::windows::core::GUID) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn gethostname(name: ::windows::core::PSTR, namelen: i32) -> i32; + fn WSCUnInstallNameSpace(lpproviderid: *const ::windows::core::GUID) -> i32; } - gethostname(::core::mem::transmute(name.as_ptr()), name.len() as _) + WSCUnInstallNameSpace(::core::mem::transmute(lpproviderid)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] #[inline] -pub unsafe fn getnameinfo(psockaddr: &[u8], pnodebuffer: ::core::option::Option<&mut [u8]>, pservicebuffer: ::core::option::Option<&mut [u8]>, flags: i32) -> i32 { +pub unsafe fn WSCUnInstallNameSpace32(lpproviderid: &::windows::core::GUID) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn getnameinfo(psockaddr: *const SOCKADDR, sockaddrlength: i32, pnodebuffer: ::windows::core::PSTR, nodebuffersize: u32, pservicebuffer: ::windows::core::PSTR, servicebuffersize: u32, flags: i32) -> i32; + fn WSCUnInstallNameSpace32(lpproviderid: *const ::windows::core::GUID) -> i32; } - getnameinfo(::core::mem::transmute(psockaddr.as_ptr()), psockaddr.len() as _, ::core::mem::transmute(pnodebuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pnodebuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pservicebuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pservicebuffer.as_deref().map_or(0, |slice| slice.len() as _), flags) + WSCUnInstallNameSpace32(::core::mem::transmute(lpproviderid)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[inline] -pub unsafe fn getpeername<'a, P0>(s: P0, name: *mut SOCKADDR, namelen: &mut i32) -> i32 +pub unsafe fn WSCUpdateProvider<'a, P0>(lpproviderid: &::windows::core::GUID, lpszproviderdllpath: P0, lpprotocolinfolist: &[WSAPROTOCOL_INFOW], lperrno: &mut i32) -> i32 where - P0: ::std::convert::Into, + P0: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn getpeername(s: SOCKET, name: *mut SOCKADDR, namelen: *mut i32) -> i32; + fn WSCUpdateProvider(lpproviderid: *const ::windows::core::GUID, lpszproviderdllpath: ::windows::core::PCWSTR, lpprotocolinfolist: *const WSAPROTOCOL_INFOW, dwnumberofentries: u32, lperrno: *mut i32) -> i32; } - getpeername(s.into(), ::core::mem::transmute(name), ::core::mem::transmute(namelen)) + WSCUpdateProvider(::core::mem::transmute(lpproviderid), lpszproviderdllpath.into(), ::core::mem::transmute(lpprotocolinfolist.as_ptr()), lpprotocolinfolist.len() as _, ::core::mem::transmute(lperrno)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] #[inline] -pub unsafe fn getprotobyname<'a, P0>(name: P0) -> *mut protoent +pub unsafe fn WSCUpdateProvider32<'a, P0>(lpproviderid: &::windows::core::GUID, lpszproviderdllpath: P0, lpprotocolinfolist: &[WSAPROTOCOL_INFOW], lperrno: &mut i32) -> i32 where - P0: ::std::convert::Into<::windows::core::PCSTR>, + P0: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn getprotobyname(name: ::windows::core::PCSTR) -> *mut protoent; + fn WSCUpdateProvider32(lpproviderid: *const ::windows::core::GUID, lpszproviderdllpath: ::windows::core::PCWSTR, lpprotocolinfolist: *const WSAPROTOCOL_INFOW, dwnumberofentries: u32, lperrno: *mut i32) -> i32; } - getprotobyname(name.into()) + WSCUpdateProvider32(::core::mem::transmute(lpproviderid), lpszproviderdllpath.into(), ::core::mem::transmute(lpprotocolinfolist.as_ptr()), lpprotocolinfolist.len() as _, ::core::mem::transmute(lperrno)) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[inline] -pub unsafe fn getprotobynumber(number: i32) -> *mut protoent { +pub unsafe fn WSCWriteNameSpaceOrder(lpproviderid: &mut ::windows::core::GUID, dwnumberofentries: u32) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn getprotobynumber(number: i32) -> *mut protoent; + fn WSCWriteNameSpaceOrder(lpproviderid: *mut ::windows::core::GUID, dwnumberofentries: u32) -> i32; } - getprotobynumber(number) + WSCWriteNameSpaceOrder(::core::mem::transmute(lpproviderid), dwnumberofentries) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] #[inline] -pub unsafe fn getservbyname<'a, P0, P1>(name: P0, proto: P1) -> *mut servent -where - P0: ::std::convert::Into<::windows::core::PCSTR>, - P1: ::std::convert::Into<::windows::core::PCSTR>, -{ +pub unsafe fn WSCWriteNameSpaceOrder32(lpproviderid: &mut ::windows::core::GUID, dwnumberofentries: u32) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn getservbyname(name: ::windows::core::PCSTR, proto: ::windows::core::PCSTR) -> *mut servent; + fn WSCWriteNameSpaceOrder32(lpproviderid: *mut ::windows::core::GUID, dwnumberofentries: u32) -> i32; } - getservbyname(name.into(), proto.into()) + WSCWriteNameSpaceOrder32(::core::mem::transmute(lpproviderid), dwnumberofentries) } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[inline] -pub unsafe fn getservbyport<'a, P0>(port: i32, proto: P0) -> *mut servent -where - P0: ::std::convert::Into<::windows::core::PCSTR>, -{ +pub unsafe fn WSCWriteProviderOrder(lpwdcatalogentryid: &mut u32, dwnumberofentries: u32) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn getservbyport(port: i32, proto: ::windows::core::PCSTR) -> *mut servent; + fn WSCWriteProviderOrder(lpwdcatalogentryid: *mut u32, dwnumberofentries: u32) -> i32; } - getservbyport(port, proto.into()) + WSCWriteProviderOrder(::core::mem::transmute(lpwdcatalogentryid), dwnumberofentries) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] #[inline] -pub unsafe fn getsockname<'a, P0>(s: P0, name: *mut SOCKADDR, namelen: &mut i32) -> i32 -where - P0: ::std::convert::Into, -{ +pub unsafe fn WSCWriteProviderOrder32(lpwdcatalogentryid: &mut u32, dwnumberofentries: u32) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn getsockname(s: SOCKET, name: *mut SOCKADDR, namelen: *mut i32) -> i32; + fn WSCWriteProviderOrder32(lpwdcatalogentryid: *mut u32, dwnumberofentries: u32) -> i32; } - getsockname(s.into(), ::core::mem::transmute(name), ::core::mem::transmute(namelen)) + WSCWriteProviderOrder32(::core::mem::transmute(lpwdcatalogentryid), dwnumberofentries) } +#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn getsockopt<'a, P0>(s: P0, level: i32, optname: i32, optval: ::windows::core::PSTR, optlen: &mut i32) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn getsockopt(s: SOCKET, level: i32, optname: i32, optval: ::windows::core::PSTR, optlen: *mut i32) -> i32; +pub struct WSC_PROVIDER_AUDIT_INFO { + pub RecordSize: u32, + pub Reserved: *mut ::core::ffi::c_void, +} +impl ::core::marker::Copy for WSC_PROVIDER_AUDIT_INFO {} +impl ::core::clone::Clone for WSC_PROVIDER_AUDIT_INFO { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for WSC_PROVIDER_AUDIT_INFO { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSC_PROVIDER_AUDIT_INFO").field("RecordSize", &self.RecordSize).field("Reserved", &self.Reserved).finish() + } +} +unsafe impl ::windows::core::Abi for WSC_PROVIDER_AUDIT_INFO { + type Abi = Self; +} +impl ::core::cmp::PartialEq for WSC_PROVIDER_AUDIT_INFO { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for WSC_PROVIDER_AUDIT_INFO {} +impl ::core::default::Default for WSC_PROVIDER_AUDIT_INFO { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct WSC_PROVIDER_INFO_TYPE(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ProviderInfoLspCategories: WSC_PROVIDER_INFO_TYPE = WSC_PROVIDER_INFO_TYPE(0i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const ProviderInfoAudit: WSC_PROVIDER_INFO_TYPE = WSC_PROVIDER_INFO_TYPE(1i32); +impl ::core::marker::Copy for WSC_PROVIDER_INFO_TYPE {} +impl ::core::clone::Clone for WSC_PROVIDER_INFO_TYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for WSC_PROVIDER_INFO_TYPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for WSC_PROVIDER_INFO_TYPE { + type Abi = Self; +} +impl ::core::fmt::Debug for WSC_PROVIDER_INFO_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("WSC_PROVIDER_INFO_TYPE").field(&self.0).finish() } - getsockopt(s.into(), level, optname, ::core::mem::transmute(optval), ::core::mem::transmute(optlen)) } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSK_SO_BASE: u32 = 16384u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const WSPDESCRIPTION_LEN: u32 = 255u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct hostent { - pub h_name: ::windows::core::PSTR, - pub h_aliases: *mut *mut i8, - pub h_addrtype: i16, - pub h_length: i16, - pub h_addr_list: *mut *mut i8, +pub struct WSPData { + pub wVersion: u16, + pub wHighVersion: u16, + pub szDescription: [u16; 256], } -impl ::core::marker::Copy for hostent {} -impl ::core::clone::Clone for hostent { +impl ::core::marker::Copy for WSPData {} +impl ::core::clone::Clone for WSPData { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for hostent { +impl ::core::fmt::Debug for WSPData { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("hostent").field("h_name", &self.h_name).field("h_aliases", &self.h_aliases).field("h_addrtype", &self.h_addrtype).field("h_length", &self.h_length).field("h_addr_list", &self.h_addr_list).finish() + f.debug_struct("WSPData").field("wVersion", &self.wVersion).field("wHighVersion", &self.wHighVersion).field("szDescription", &self.szDescription).finish() + } +} +unsafe impl ::windows::core::Abi for WSPData { + type Abi = Self; +} +impl ::core::cmp::PartialEq for WSPData { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for WSPData {} +impl ::core::default::Default for WSPData { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`, `\"Win32_System_IO\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +pub struct WSPPROC_TABLE { + pub lpWSPAccept: LPWSPACCEPT, + pub lpWSPAddressToString: LPWSPADDRESSTOSTRING, + pub lpWSPAsyncSelect: LPWSPASYNCSELECT, + pub lpWSPBind: LPWSPBIND, + pub lpWSPCancelBlockingCall: LPWSPCANCELBLOCKINGCALL, + pub lpWSPCleanup: LPWSPCLEANUP, + pub lpWSPCloseSocket: LPWSPCLOSESOCKET, + pub lpWSPConnect: LPWSPCONNECT, + pub lpWSPDuplicateSocket: LPWSPDUPLICATESOCKET, + pub lpWSPEnumNetworkEvents: LPWSPENUMNETWORKEVENTS, + pub lpWSPEventSelect: LPWSPEVENTSELECT, + pub lpWSPGetOverlappedResult: LPWSPGETOVERLAPPEDRESULT, + pub lpWSPGetPeerName: LPWSPGETPEERNAME, + pub lpWSPGetSockName: LPWSPGETSOCKNAME, + pub lpWSPGetSockOpt: LPWSPGETSOCKOPT, + pub lpWSPGetQOSByName: LPWSPGETQOSBYNAME, + pub lpWSPIoctl: LPWSPIOCTL, + pub lpWSPJoinLeaf: LPWSPJOINLEAF, + pub lpWSPListen: LPWSPLISTEN, + pub lpWSPRecv: LPWSPRECV, + pub lpWSPRecvDisconnect: LPWSPRECVDISCONNECT, + pub lpWSPRecvFrom: LPWSPRECVFROM, + pub lpWSPSelect: LPWSPSELECT, + pub lpWSPSend: LPWSPSEND, + pub lpWSPSendDisconnect: LPWSPSENDDISCONNECT, + pub lpWSPSendTo: LPWSPSENDTO, + pub lpWSPSetSockOpt: LPWSPSETSOCKOPT, + pub lpWSPShutdown: LPWSPSHUTDOWN, + pub lpWSPSocket: LPWSPSOCKET, + pub lpWSPStringToAddress: LPWSPSTRINGTOADDRESS, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::marker::Copy for WSPPROC_TABLE {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::clone::Clone for WSPPROC_TABLE { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::fmt::Debug for WSPPROC_TABLE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSPPROC_TABLE") + .field("lpWSPAccept", &self.lpWSPAccept.map(|f| f as usize)) + .field("lpWSPAddressToString", &self.lpWSPAddressToString.map(|f| f as usize)) + .field("lpWSPAsyncSelect", &self.lpWSPAsyncSelect.map(|f| f as usize)) + .field("lpWSPBind", &self.lpWSPBind.map(|f| f as usize)) + .field("lpWSPCancelBlockingCall", &self.lpWSPCancelBlockingCall.map(|f| f as usize)) + .field("lpWSPCleanup", &self.lpWSPCleanup.map(|f| f as usize)) + .field("lpWSPCloseSocket", &self.lpWSPCloseSocket.map(|f| f as usize)) + .field("lpWSPConnect", &self.lpWSPConnect.map(|f| f as usize)) + .field("lpWSPDuplicateSocket", &self.lpWSPDuplicateSocket.map(|f| f as usize)) + .field("lpWSPEnumNetworkEvents", &self.lpWSPEnumNetworkEvents.map(|f| f as usize)) + .field("lpWSPEventSelect", &self.lpWSPEventSelect.map(|f| f as usize)) + .field("lpWSPGetOverlappedResult", &self.lpWSPGetOverlappedResult.map(|f| f as usize)) + .field("lpWSPGetPeerName", &self.lpWSPGetPeerName.map(|f| f as usize)) + .field("lpWSPGetSockName", &self.lpWSPGetSockName.map(|f| f as usize)) + .field("lpWSPGetSockOpt", &self.lpWSPGetSockOpt.map(|f| f as usize)) + .field("lpWSPGetQOSByName", &self.lpWSPGetQOSByName.map(|f| f as usize)) + .field("lpWSPIoctl", &self.lpWSPIoctl.map(|f| f as usize)) + .field("lpWSPJoinLeaf", &self.lpWSPJoinLeaf.map(|f| f as usize)) + .field("lpWSPListen", &self.lpWSPListen.map(|f| f as usize)) + .field("lpWSPRecv", &self.lpWSPRecv.map(|f| f as usize)) + .field("lpWSPRecvDisconnect", &self.lpWSPRecvDisconnect.map(|f| f as usize)) + .field("lpWSPRecvFrom", &self.lpWSPRecvFrom.map(|f| f as usize)) + .field("lpWSPSelect", &self.lpWSPSelect.map(|f| f as usize)) + .field("lpWSPSend", &self.lpWSPSend.map(|f| f as usize)) + .field("lpWSPSendDisconnect", &self.lpWSPSendDisconnect.map(|f| f as usize)) + .field("lpWSPSendTo", &self.lpWSPSendTo.map(|f| f as usize)) + .field("lpWSPSetSockOpt", &self.lpWSPSetSockOpt.map(|f| f as usize)) + .field("lpWSPShutdown", &self.lpWSPShutdown.map(|f| f as usize)) + .field("lpWSPSocket", &self.lpWSPSocket.map(|f| f as usize)) + .field("lpWSPStringToAddress", &self.lpWSPStringToAddress.map(|f| f as usize)) + .finish() } } -unsafe impl ::windows::core::Abi for hostent { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +unsafe impl ::windows::core::Abi for WSPPROC_TABLE { type Abi = Self; } -impl ::core::cmp::PartialEq for hostent { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::PartialEq for WSPPROC_TABLE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for hostent {} -impl ::core::default::Default for hostent { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::cmp::Eq for WSPPROC_TABLE {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_IO"))] +impl ::core::default::Default for WSPPROC_TABLE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn htonl(hostlong: u32) -> u32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn htonl(hostlong: u32) -> u32; - } - htonl(hostlong) -} -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn htons(hostshort: u16) -> u16 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn htons(hostshort: u16) -> u16; - } - htons(hostshort) -} #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct in6_pktinfo_ex { - pub pkt_info: IN6_PKTINFO, - pub scope_id: SCOPE_ID, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct WSPUPCALLTABLE { + pub lpWPUCloseEvent: LPWPUCLOSEEVENT, + pub lpWPUCloseSocketHandle: LPWPUCLOSESOCKETHANDLE, + pub lpWPUCreateEvent: LPWPUCREATEEVENT, + pub lpWPUCreateSocketHandle: LPWPUCREATESOCKETHANDLE, + pub lpWPUFDIsSet: LPWPUFDISSET, + pub lpWPUGetProviderPath: LPWPUGETPROVIDERPATH, + pub lpWPUModifyIFSHandle: LPWPUMODIFYIFSHANDLE, + pub lpWPUPostMessage: LPWPUPOSTMESSAGE, + pub lpWPUQueryBlockingCallback: LPWPUQUERYBLOCKINGCALLBACK, + pub lpWPUQuerySocketHandleContext: LPWPUQUERYSOCKETHANDLECONTEXT, + pub lpWPUQueueApc: LPWPUQUEUEAPC, + pub lpWPUResetEvent: LPWPURESETEVENT, + pub lpWPUSetEvent: LPWPUSETEVENT, + pub lpWPUOpenCurrentThread: LPWPUOPENCURRENTTHREAD, + pub lpWPUCloseThread: LPWPUCLOSETHREAD, } -impl ::core::marker::Copy for in6_pktinfo_ex {} -impl ::core::clone::Clone for in6_pktinfo_ex { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WSPUPCALLTABLE {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WSPUPCALLTABLE { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for in6_pktinfo_ex { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for WSPUPCALLTABLE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("WSPUPCALLTABLE") + .field("lpWPUCloseEvent", &self.lpWPUCloseEvent.map(|f| f as usize)) + .field("lpWPUCloseSocketHandle", &self.lpWPUCloseSocketHandle.map(|f| f as usize)) + .field("lpWPUCreateEvent", &self.lpWPUCreateEvent.map(|f| f as usize)) + .field("lpWPUCreateSocketHandle", &self.lpWPUCreateSocketHandle.map(|f| f as usize)) + .field("lpWPUFDIsSet", &self.lpWPUFDIsSet.map(|f| f as usize)) + .field("lpWPUGetProviderPath", &self.lpWPUGetProviderPath.map(|f| f as usize)) + .field("lpWPUModifyIFSHandle", &self.lpWPUModifyIFSHandle.map(|f| f as usize)) + .field("lpWPUPostMessage", &self.lpWPUPostMessage.map(|f| f as usize)) + .field("lpWPUQueryBlockingCallback", &self.lpWPUQueryBlockingCallback.map(|f| f as usize)) + .field("lpWPUQuerySocketHandleContext", &self.lpWPUQuerySocketHandleContext.map(|f| f as usize)) + .field("lpWPUQueueApc", &self.lpWPUQueueApc.map(|f| f as usize)) + .field("lpWPUResetEvent", &self.lpWPUResetEvent.map(|f| f as usize)) + .field("lpWPUSetEvent", &self.lpWPUSetEvent.map(|f| f as usize)) + .field("lpWPUOpenCurrentThread", &self.lpWPUOpenCurrentThread.map(|f| f as usize)) + .field("lpWPUCloseThread", &self.lpWPUCloseThread.map(|f| f as usize)) + .finish() + } +} +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for WSPUPCALLTABLE { type Abi = Self; } -impl ::core::cmp::PartialEq for in6_pktinfo_ex { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for WSPUPCALLTABLE { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for in6_pktinfo_ex {} -impl ::core::default::Default for in6_pktinfo_ex { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for WSPUPCALLTABLE {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for WSPUPCALLTABLE { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn inet_addr<'a, P0>(cp: P0) -> u32 -where - P0: ::std::convert::Into<::windows::core::PCSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn inet_addr(cp: ::windows::core::PCSTR) -> u32; - } - inet_addr(cp.into()) -} +pub const WSS_OPERATION_IN_PROGRESS: i32 = 259i32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn inet_ntoa(r#in: IN_ADDR) -> ::windows::core::PSTR { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn inet_ntoa(r#in: IN_ADDR) -> ::windows::core::PSTR; - } - inet_ntoa(::core::mem::transmute(r#in)) -} +pub const XP1_CONNECTIONLESS: u32 = 1u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn inet_ntop(family: i32, paddr: *const ::core::ffi::c_void, pstringbuf: &mut [u8]) -> ::windows::core::PSTR { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn inet_ntop(family: i32, paddr: *const ::core::ffi::c_void, pstringbuf: ::windows::core::PSTR, stringbufsize: usize) -> ::windows::core::PSTR; - } - inet_ntop(family, ::core::mem::transmute(paddr), ::core::mem::transmute(pstringbuf.as_ptr()), pstringbuf.len() as _) -} +pub const XP1_CONNECT_DATA: u32 = 128u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -#[inline] -pub unsafe fn inet_pton<'a, P0>(family: i32, pszaddrstring: P0, paddrbuf: *mut ::core::ffi::c_void) -> i32 -where - P0: ::std::convert::Into<::windows::core::PCSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn inet_pton(family: i32, pszaddrstring: ::windows::core::PCSTR, paddrbuf: *mut ::core::ffi::c_void) -> i32; - } - inet_pton(family, pszaddrstring.into(), ::core::mem::transmute(paddrbuf)) -} +pub const XP1_DISCONNECT_DATA: u32 = 256u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_EXPEDITED_DATA: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_GRACEFUL_CLOSE: u32 = 32u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_GUARANTEED_DELIVERY: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_GUARANTEED_ORDER: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_IFS_HANDLES: u32 = 131072u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_INTERRUPT: u32 = 16384u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_MESSAGE_ORIENTED: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_MULTIPOINT_CONTROL_PLANE: u32 = 2048u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_MULTIPOINT_DATA_PLANE: u32 = 4096u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_PARTIAL_MESSAGE: u32 = 262144u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_PSEUDO_STREAM: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_QOS_SUPPORTED: u32 = 8192u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_SAN_SUPPORT_SDP: u32 = 524288u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_SUPPORT_BROADCAST: u32 = 512u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_SUPPORT_MULTIPOINT: u32 = 1024u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_UNI_RECV: u32 = 65536u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP1_UNI_SEND: u32 = 32768u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP_BANDWIDTH_ALLOCATION: u32 = 2048u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP_CONNECTIONLESS: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP_CONNECT_DATA: u32 = 128u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP_DISCONNECT_DATA: u32 = 256u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP_ENCRYPTS: u32 = 8192u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP_EXPEDITED_DATA: u32 = 64u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP_FRAGMENTATION: u32 = 4096u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP_GRACEFUL_CLOSE: u32 = 32u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP_GUARANTEED_DELIVERY: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP_GUARANTEED_ORDER: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP_MESSAGE_ORIENTED: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP_PSEUDO_STREAM: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP_SUPPORTS_BROADCAST: u32 = 512u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const XP_SUPPORTS_MULTICAST: u32 = 1024u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const _BIG_ENDIAN: u32 = 4321u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const _LITTLE_ENDIAN: u32 = 1234u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const _PDP_ENDIAN: u32 = 3412u32; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const _SS_MAXSIZE: u32 = 128u32; #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] #[inline] -pub unsafe fn ioctlsocket<'a, P0>(s: P0, cmd: i32, argp: &mut u32) -> i32 +pub unsafe fn __WSAFDIsSet<'a, P0>(fd: P0, param1: &mut fd_set) -> i32 where P0: ::std::convert::Into, { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn ioctlsocket(s: SOCKET, cmd: i32, argp: *mut u32) -> i32; - } - ioctlsocket(s.into(), cmd, ::core::mem::transmute(argp)) -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct linger { - pub l_onoff: u16, - pub l_linger: u16, -} -impl ::core::marker::Copy for linger {} -impl ::core::clone::Clone for linger { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for linger { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("linger").field("l_onoff", &self.l_onoff).field("l_linger", &self.l_linger).finish() - } -} -unsafe impl ::windows::core::Abi for linger { - type Abi = Self; -} -impl ::core::cmp::PartialEq for linger { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for linger {} -impl ::core::default::Default for linger { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn __WSAFDIsSet(fd: SOCKET, param1: *mut fd_set) -> i32; } + __WSAFDIsSet(fd.into(), ::core::mem::transmute(param1)) } -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn listen<'a, P0>(s: P0, backlog: i32) -> i32 +pub unsafe fn accept<'a, P0>(s: P0, addr: *mut SOCKADDR, addrlen: ::core::option::Option<&mut i32>) -> SOCKET where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn listen(s: SOCKET, backlog: i32) -> i32; + fn accept(s: SOCKET, addr: *mut SOCKADDR, addrlen: *mut i32) -> SOCKET; } - listen(s.into(), backlog) + accept(s.into(), ::core::mem::transmute(addr), ::core::mem::transmute(addrlen)) } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_neighbor_advert { - pub nd_na_hdr: ICMP_MESSAGE, - pub nd_na_target: IN6_ADDR, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct addrinfo_dns_server { + pub ai_servertype: u32, + pub ai_flags: u64, + pub ai_addrlen: u32, + pub ai_addr: *mut SOCKADDR, + pub Anonymous: addrinfo_dns_server_0, } -impl ::core::marker::Copy for nd_neighbor_advert {} -impl ::core::clone::Clone for nd_neighbor_advert { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for addrinfo_dns_server {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for addrinfo_dns_server { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for nd_neighbor_advert { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for addrinfo_dns_server { type Abi = Self; } -impl ::core::cmp::PartialEq for nd_neighbor_advert { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for addrinfo_dns_server { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for nd_neighbor_advert {} -impl ::core::default::Default for nd_neighbor_advert { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for addrinfo_dns_server {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for addrinfo_dns_server { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_neighbor_solicit { - pub nd_ns_hdr: ICMP_MESSAGE, - pub nd_ns_target: IN6_ADDR, +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub union addrinfo_dns_server_0 { + pub ai_template: ::windows::core::PWSTR, } -impl ::core::marker::Copy for nd_neighbor_solicit {} -impl ::core::clone::Clone for nd_neighbor_solicit { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for addrinfo_dns_server_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for addrinfo_dns_server_0 { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for nd_neighbor_solicit { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for addrinfo_dns_server_0 { type Abi = Self; } -impl ::core::cmp::PartialEq for nd_neighbor_solicit { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for addrinfo_dns_server_0 { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for nd_neighbor_solicit {} -impl ::core::default::Default for nd_neighbor_solicit { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for addrinfo_dns_server_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for addrinfo_dns_server_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_dnssl { - pub nd_opt_dnssl_type: u8, - pub nd_opt_dnssl_len: u8, - pub nd_opt_dnssl_reserved: u16, - pub nd_opt_dnssl_lifetime: u32, -} -impl ::core::marker::Copy for nd_opt_dnssl {} -impl ::core::clone::Clone for nd_opt_dnssl { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for nd_opt_dnssl { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("nd_opt_dnssl").field("nd_opt_dnssl_type", &self.nd_opt_dnssl_type).field("nd_opt_dnssl_len", &self.nd_opt_dnssl_len).field("nd_opt_dnssl_reserved", &self.nd_opt_dnssl_reserved).field("nd_opt_dnssl_lifetime", &self.nd_opt_dnssl_lifetime).finish() - } -} -unsafe impl ::windows::core::Abi for nd_opt_dnssl { - type Abi = Self; -} -impl ::core::cmp::PartialEq for nd_opt_dnssl { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn bind<'a, P0>(s: P0, name: &[u8]) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn bind(s: SOCKET, name: *const SOCKADDR, namelen: i32) -> i32; } + bind(s.into(), ::core::mem::transmute(name.as_ptr()), name.len() as _) } -impl ::core::cmp::Eq for nd_opt_dnssl {} -impl ::core::default::Default for nd_opt_dnssl { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn closesocket<'a, P0>(s: P0) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn closesocket(s: SOCKET) -> i32; } + closesocket(s.into()) } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_hdr { - pub nd_opt_type: u8, - pub nd_opt_len: u8, +pub struct cmsghdr { + pub cmsg_len: usize, + pub cmsg_level: i32, + pub cmsg_type: i32, } -impl ::core::marker::Copy for nd_opt_hdr {} -impl ::core::clone::Clone for nd_opt_hdr { +impl ::core::marker::Copy for cmsghdr {} +impl ::core::clone::Clone for cmsghdr { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for nd_opt_hdr { +impl ::core::fmt::Debug for cmsghdr { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("nd_opt_hdr").field("nd_opt_type", &self.nd_opt_type).field("nd_opt_len", &self.nd_opt_len).finish() + f.debug_struct("cmsghdr").field("cmsg_len", &self.cmsg_len).field("cmsg_level", &self.cmsg_level).field("cmsg_type", &self.cmsg_type).finish() } } -unsafe impl ::windows::core::Abi for nd_opt_hdr { +unsafe impl ::windows::core::Abi for cmsghdr { type Abi = Self; } -impl ::core::cmp::PartialEq for nd_opt_hdr { +impl ::core::cmp::PartialEq for cmsghdr { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for nd_opt_hdr {} -impl ::core::default::Default for nd_opt_hdr { +impl ::core::cmp::Eq for cmsghdr {} +impl ::core::default::Default for cmsghdr { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_mtu { - pub nd_opt_mtu_type: u8, - pub nd_opt_mtu_len: u8, - pub nd_opt_mtu_reserved: u16, - pub nd_opt_mtu_mtu: u32, -} -impl ::core::marker::Copy for nd_opt_mtu {} -impl ::core::clone::Clone for nd_opt_mtu { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for nd_opt_mtu { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("nd_opt_mtu").field("nd_opt_mtu_type", &self.nd_opt_mtu_type).field("nd_opt_mtu_len", &self.nd_opt_mtu_len).field("nd_opt_mtu_reserved", &self.nd_opt_mtu_reserved).field("nd_opt_mtu_mtu", &self.nd_opt_mtu_mtu).finish() - } -} -unsafe impl ::windows::core::Abi for nd_opt_mtu { - type Abi = Self; -} -impl ::core::cmp::PartialEq for nd_opt_mtu { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for nd_opt_mtu {} -impl ::core::default::Default for nd_opt_mtu { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn connect<'a, P0>(s: P0, name: &[u8]) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn connect(s: SOCKET, name: *const SOCKADDR, namelen: i32) -> i32; } + connect(s.into(), ::core::mem::transmute(name.as_ptr()), name.len() as _) } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_prefix_info { - pub nd_opt_pi_type: u8, - pub nd_opt_pi_len: u8, - pub nd_opt_pi_prefix_len: u8, - pub Anonymous1: nd_opt_prefix_info_0, - pub nd_opt_pi_valid_time: u32, - pub nd_opt_pi_preferred_time: u32, - pub Anonymous2: nd_opt_prefix_info_1, - pub nd_opt_pi_prefix: IN6_ADDR, -} -impl ::core::marker::Copy for nd_opt_prefix_info {} -impl ::core::clone::Clone for nd_opt_prefix_info { +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct eWINDOW_ADVANCE_METHOD(pub i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const E_WINDOW_ADVANCE_BY_TIME: eWINDOW_ADVANCE_METHOD = eWINDOW_ADVANCE_METHOD(1i32); +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +pub const E_WINDOW_USE_AS_DATA_CACHE: eWINDOW_ADVANCE_METHOD = eWINDOW_ADVANCE_METHOD(2i32); +impl ::core::marker::Copy for eWINDOW_ADVANCE_METHOD {} +impl ::core::clone::Clone for eWINDOW_ADVANCE_METHOD { fn clone(&self) -> Self { *self } } -unsafe impl ::windows::core::Abi for nd_opt_prefix_info { - type Abi = Self; -} -impl ::core::cmp::PartialEq for nd_opt_prefix_info { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for nd_opt_prefix_info {} -impl ::core::default::Default for nd_opt_prefix_info { +impl ::core::default::Default for eWINDOW_ADVANCE_METHOD { fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union nd_opt_prefix_info_0 { - pub nd_opt_pi_flags_reserved: u8, - pub Flags: nd_opt_prefix_info_0_0, -} -impl ::core::marker::Copy for nd_opt_prefix_info_0 {} -impl ::core::clone::Clone for nd_opt_prefix_info_0 { - fn clone(&self) -> Self { - *self + Self(0) } } -unsafe impl ::windows::core::Abi for nd_opt_prefix_info_0 { +unsafe impl ::windows::core::Abi for eWINDOW_ADVANCE_METHOD { type Abi = Self; } -impl ::core::cmp::PartialEq for nd_opt_prefix_info_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for nd_opt_prefix_info_0 {} -impl ::core::default::Default for nd_opt_prefix_info_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for eWINDOW_ADVANCE_METHOD { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("eWINDOW_ADVANCE_METHOD").field(&self.0).finish() } } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_prefix_info_0_0 { - pub _bitfield: u8, +pub struct fd_set { + pub fd_count: u32, + pub fd_array: [SOCKET; 64], } -impl ::core::marker::Copy for nd_opt_prefix_info_0_0 {} -impl ::core::clone::Clone for nd_opt_prefix_info_0_0 { +impl ::core::marker::Copy for fd_set {} +impl ::core::clone::Clone for fd_set { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for nd_opt_prefix_info_0_0 { +impl ::core::fmt::Debug for fd_set { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("nd_opt_prefix_info_0_0").field("_bitfield", &self._bitfield).finish() + f.debug_struct("fd_set").field("fd_count", &self.fd_count).field("fd_array", &self.fd_array).finish() } } -unsafe impl ::windows::core::Abi for nd_opt_prefix_info_0_0 { +unsafe impl ::windows::core::Abi for fd_set { type Abi = Self; } -impl ::core::cmp::PartialEq for nd_opt_prefix_info_0_0 { +impl ::core::cmp::PartialEq for fd_set { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for nd_opt_prefix_info_0_0 {} -impl ::core::default::Default for nd_opt_prefix_info_0_0 { +impl ::core::cmp::Eq for fd_set {} +impl ::core::default::Default for fd_set { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union nd_opt_prefix_info_1 { - pub nd_opt_pi_reserved2: u32, - pub Anonymous: nd_opt_prefix_info_1_0, -} -impl ::core::marker::Copy for nd_opt_prefix_info_1 {} -impl ::core::clone::Clone for nd_opt_prefix_info_1 { - fn clone(&self) -> Self { - *self +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn freeaddrinfo(paddrinfo: ::core::option::Option<&ADDRINFOA>) { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn freeaddrinfo(paddrinfo: *const ADDRINFOA); } + freeaddrinfo(::core::mem::transmute(paddrinfo)) } -unsafe impl ::windows::core::Abi for nd_opt_prefix_info_1 { - type Abi = Self; -} -impl ::core::cmp::PartialEq for nd_opt_prefix_info_1 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn getaddrinfo<'a, P0, P1>(pnodename: P0, pservicename: P1, phints: ::core::option::Option<&ADDRINFOA>, ppresult: &mut *mut ADDRINFOA) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCSTR>, + P1: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn getaddrinfo(pnodename: ::windows::core::PCSTR, pservicename: ::windows::core::PCSTR, phints: *const ADDRINFOA, ppresult: *mut *mut ADDRINFOA) -> i32; } + getaddrinfo(pnodename.into(), pservicename.into(), ::core::mem::transmute(phints), ::core::mem::transmute(ppresult)) } -impl ::core::cmp::Eq for nd_opt_prefix_info_1 {} -impl ::core::default::Default for nd_opt_prefix_info_1 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn gethostbyaddr(addr: &[u8], r#type: i32) -> *mut hostent { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn gethostbyaddr(addr: ::windows::core::PCSTR, len: i32, r#type: i32) -> *mut hostent; } + gethostbyaddr(::core::mem::transmute(addr.as_ptr()), addr.len() as _, r#type) } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_prefix_info_1_0 { - pub nd_opt_pi_reserved3: [u8; 3], - pub nd_opt_pi_site_prefix_len: u8, +#[inline] +pub unsafe fn gethostbyname<'a, P0>(name: P0) -> *mut hostent +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn gethostbyname(name: ::windows::core::PCSTR) -> *mut hostent; + } + gethostbyname(name.into()) } -impl ::core::marker::Copy for nd_opt_prefix_info_1_0 {} -impl ::core::clone::Clone for nd_opt_prefix_info_1_0 { - fn clone(&self) -> Self { - *self +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn gethostname(name: &mut [u8]) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn gethostname(name: ::windows::core::PSTR, namelen: i32) -> i32; } + gethostname(::core::mem::transmute(name.as_ptr()), name.len() as _) } -impl ::core::fmt::Debug for nd_opt_prefix_info_1_0 { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("nd_opt_prefix_info_1_0").field("nd_opt_pi_reserved3", &self.nd_opt_pi_reserved3).field("nd_opt_pi_site_prefix_len", &self.nd_opt_pi_site_prefix_len).finish() +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn getnameinfo(psockaddr: &[u8], pnodebuffer: ::core::option::Option<&mut [u8]>, pservicebuffer: ::core::option::Option<&mut [u8]>, flags: i32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn getnameinfo(psockaddr: *const SOCKADDR, sockaddrlength: i32, pnodebuffer: ::windows::core::PSTR, nodebuffersize: u32, pservicebuffer: ::windows::core::PSTR, servicebuffersize: u32, flags: i32) -> i32; } + getnameinfo(::core::mem::transmute(psockaddr.as_ptr()), psockaddr.len() as _, ::core::mem::transmute(pnodebuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pnodebuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pservicebuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pservicebuffer.as_deref().map_or(0, |slice| slice.len() as _), flags) } -unsafe impl ::windows::core::Abi for nd_opt_prefix_info_1_0 { - type Abi = Self; -} -impl ::core::cmp::PartialEq for nd_opt_prefix_info_1_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn getpeername<'a, P0>(s: P0, name: *mut SOCKADDR, namelen: &mut i32) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn getpeername(s: SOCKET, name: *mut SOCKADDR, namelen: *mut i32) -> i32; } + getpeername(s.into(), ::core::mem::transmute(name), ::core::mem::transmute(namelen)) } -impl ::core::cmp::Eq for nd_opt_prefix_info_1_0 {} -impl ::core::default::Default for nd_opt_prefix_info_1_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn getprotobyname<'a, P0>(name: P0) -> *mut protoent +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn getprotobyname(name: ::windows::core::PCSTR) -> *mut protoent; } + getprotobyname(name.into()) } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_rd_hdr { - pub nd_opt_rh_type: u8, - pub nd_opt_rh_len: u8, - pub nd_opt_rh_reserved1: u16, - pub nd_opt_rh_reserved2: u32, -} -impl ::core::marker::Copy for nd_opt_rd_hdr {} -impl ::core::clone::Clone for nd_opt_rd_hdr { - fn clone(&self) -> Self { - *self +#[inline] +pub unsafe fn getprotobynumber(number: i32) -> *mut protoent { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn getprotobynumber(number: i32) -> *mut protoent; } + getprotobynumber(number) } -impl ::core::fmt::Debug for nd_opt_rd_hdr { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("nd_opt_rd_hdr").field("nd_opt_rh_type", &self.nd_opt_rh_type).field("nd_opt_rh_len", &self.nd_opt_rh_len).field("nd_opt_rh_reserved1", &self.nd_opt_rh_reserved1).field("nd_opt_rh_reserved2", &self.nd_opt_rh_reserved2).finish() +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn getservbyname<'a, P0, P1>(name: P0, proto: P1) -> *mut servent +where + P0: ::std::convert::Into<::windows::core::PCSTR>, + P1: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn getservbyname(name: ::windows::core::PCSTR, proto: ::windows::core::PCSTR) -> *mut servent; } + getservbyname(name.into(), proto.into()) } -unsafe impl ::windows::core::Abi for nd_opt_rd_hdr { - type Abi = Self; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn getservbyport<'a, P0>(port: i32, proto: P0) -> *mut servent +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn getservbyport(port: i32, proto: ::windows::core::PCSTR) -> *mut servent; + } + getservbyport(port, proto.into()) } -impl ::core::cmp::PartialEq for nd_opt_rd_hdr { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn getsockname<'a, P0>(s: P0, name: *mut SOCKADDR, namelen: &mut i32) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn getsockname(s: SOCKET, name: *mut SOCKADDR, namelen: *mut i32) -> i32; } + getsockname(s.into(), ::core::mem::transmute(name), ::core::mem::transmute(namelen)) } -impl ::core::cmp::Eq for nd_opt_rd_hdr {} -impl ::core::default::Default for nd_opt_rd_hdr { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn getsockopt<'a, P0>(s: P0, level: i32, optname: i32, optval: ::windows::core::PSTR, optlen: &mut i32) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn getsockopt(s: SOCKET, level: i32, optname: i32, optval: ::windows::core::PSTR, optlen: *mut i32) -> i32; } + getsockopt(s.into(), level, optname, ::core::mem::transmute(optval), ::core::mem::transmute(optlen)) } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_rdnss { - pub nd_opt_rdnss_type: u8, - pub nd_opt_rdnss_len: u8, - pub nd_opt_rdnss_reserved: u16, - pub nd_opt_rdnss_lifetime: u32, +pub struct hostent { + pub h_name: ::windows::core::PSTR, + pub h_aliases: *mut *mut i8, + pub h_addrtype: i16, + pub h_length: i16, + pub h_addr_list: *mut *mut i8, } -impl ::core::marker::Copy for nd_opt_rdnss {} -impl ::core::clone::Clone for nd_opt_rdnss { +impl ::core::marker::Copy for hostent {} +impl ::core::clone::Clone for hostent { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for nd_opt_rdnss { +impl ::core::fmt::Debug for hostent { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("nd_opt_rdnss").field("nd_opt_rdnss_type", &self.nd_opt_rdnss_type).field("nd_opt_rdnss_len", &self.nd_opt_rdnss_len).field("nd_opt_rdnss_reserved", &self.nd_opt_rdnss_reserved).field("nd_opt_rdnss_lifetime", &self.nd_opt_rdnss_lifetime).finish() + f.debug_struct("hostent").field("h_name", &self.h_name).field("h_aliases", &self.h_aliases).field("h_addrtype", &self.h_addrtype).field("h_length", &self.h_length).field("h_addr_list", &self.h_addr_list).finish() } } -unsafe impl ::windows::core::Abi for nd_opt_rdnss { +unsafe impl ::windows::core::Abi for hostent { type Abi = Self; } -impl ::core::cmp::PartialEq for nd_opt_rdnss { +impl ::core::cmp::PartialEq for hostent { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for nd_opt_rdnss {} -impl ::core::default::Default for nd_opt_rdnss { +impl ::core::cmp::Eq for hostent {} +impl ::core::default::Default for hostent { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_route_info { - pub nd_opt_ri_type: u8, - pub nd_opt_ri_len: u8, - pub nd_opt_ri_prefix_len: u8, - pub Anonymous: nd_opt_route_info_0, - pub nd_opt_ri_route_lifetime: u32, - pub nd_opt_ri_prefix: IN6_ADDR, -} -impl ::core::marker::Copy for nd_opt_route_info {} -impl ::core::clone::Clone for nd_opt_route_info { - fn clone(&self) -> Self { - *self +#[inline] +pub unsafe fn htonl(hostlong: u32) -> u32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn htonl(hostlong: u32) -> u32; } + htonl(hostlong) } -unsafe impl ::windows::core::Abi for nd_opt_route_info { - type Abi = Self; -} -impl ::core::cmp::PartialEq for nd_opt_route_info { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn htons(hostshort: u16) -> u16 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn htons(hostshort: u16) -> u16; } + htons(hostshort) } -impl ::core::cmp::Eq for nd_opt_route_info {} -impl ::core::default::Default for nd_opt_route_info { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn inet_addr<'a, P0>(cp: P0) -> u32 +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn inet_addr(cp: ::windows::core::PCSTR) -> u32; } + inet_addr(cp.into()) } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub union nd_opt_route_info_0 { - pub nd_opt_ri_flags_reserved: u8, - pub Flags: nd_opt_route_info_0_0, -} -impl ::core::marker::Copy for nd_opt_route_info_0 {} -impl ::core::clone::Clone for nd_opt_route_info_0 { - fn clone(&self) -> Self { - *self +#[inline] +pub unsafe fn inet_ntoa(r#in: IN_ADDR) -> ::windows::core::PSTR { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn inet_ntoa(r#in: IN_ADDR) -> ::windows::core::PSTR; } + inet_ntoa(::core::mem::transmute(r#in)) } -unsafe impl ::windows::core::Abi for nd_opt_route_info_0 { - type Abi = Self; +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn inet_ntop(family: i32, paddr: *const ::core::ffi::c_void, pstringbuf: &mut [u8]) -> ::windows::core::PSTR { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn inet_ntop(family: i32, paddr: *const ::core::ffi::c_void, pstringbuf: ::windows::core::PSTR, stringbufsize: usize) -> ::windows::core::PSTR; + } + inet_ntop(family, ::core::mem::transmute(paddr), ::core::mem::transmute(pstringbuf.as_ptr()), pstringbuf.len() as _) } -impl ::core::cmp::PartialEq for nd_opt_route_info_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn inet_pton<'a, P0>(family: i32, pszaddrstring: P0, paddrbuf: *mut ::core::ffi::c_void) -> i32 +where + P0: ::std::convert::Into<::windows::core::PCSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn inet_pton(family: i32, pszaddrstring: ::windows::core::PCSTR, paddrbuf: *mut ::core::ffi::c_void) -> i32; } + inet_pton(family, pszaddrstring.into(), ::core::mem::transmute(paddrbuf)) } -impl ::core::cmp::Eq for nd_opt_route_info_0 {} -impl ::core::default::Default for nd_opt_route_info_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] +#[inline] +pub unsafe fn ioctlsocket<'a, P0>(s: P0, cmd: i32, argp: &mut u32) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn ioctlsocket(s: SOCKET, cmd: i32, argp: *mut u32) -> i32; } + ioctlsocket(s.into(), cmd, ::core::mem::transmute(argp)) } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_opt_route_info_0_0 { - pub _bitfield: u8, +pub struct linger { + pub l_onoff: u16, + pub l_linger: u16, } -impl ::core::marker::Copy for nd_opt_route_info_0_0 {} -impl ::core::clone::Clone for nd_opt_route_info_0_0 { +impl ::core::marker::Copy for linger {} +impl ::core::clone::Clone for linger { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for nd_opt_route_info_0_0 { +impl ::core::fmt::Debug for linger { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("nd_opt_route_info_0_0").field("_bitfield", &self._bitfield).finish() - } -} -unsafe impl ::windows::core::Abi for nd_opt_route_info_0_0 { - type Abi = Self; -} -impl ::core::cmp::PartialEq for nd_opt_route_info_0_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for nd_opt_route_info_0_0 {} -impl ::core::default::Default for nd_opt_route_info_0_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_redirect { - pub nd_rd_hdr: ICMP_MESSAGE, - pub nd_rd_target: IN6_ADDR, - pub nd_rd_dst: IN6_ADDR, -} -impl ::core::marker::Copy for nd_redirect {} -impl ::core::clone::Clone for nd_redirect { - fn clone(&self) -> Self { - *self + f.debug_struct("linger").field("l_onoff", &self.l_onoff).field("l_linger", &self.l_linger).finish() } } -unsafe impl ::windows::core::Abi for nd_redirect { +unsafe impl ::windows::core::Abi for linger { type Abi = Self; } -impl ::core::cmp::PartialEq for nd_redirect { +impl ::core::cmp::PartialEq for linger { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for nd_redirect {} -impl ::core::default::Default for nd_redirect { +impl ::core::cmp::Eq for linger {} +impl ::core::default::Default for linger { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] -pub struct nd_router_advert { - pub nd_ra_hdr: ICMP_MESSAGE, - pub nd_ra_reachable: u32, - pub nd_ra_retransmit: u32, -} -impl ::core::marker::Copy for nd_router_advert {} -impl ::core::clone::Clone for nd_router_advert { - fn clone(&self) -> Self { - *self - } -} -unsafe impl ::windows::core::Abi for nd_router_advert { - type Abi = Self; -} -impl ::core::cmp::PartialEq for nd_router_advert { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for nd_router_advert {} -impl ::core::default::Default for nd_router_advert { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[inline] +pub unsafe fn listen<'a, P0>(s: P0, backlog: i32) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn listen(s: SOCKET, backlog: i32) -> i32; } + listen(s.into(), backlog) } #[repr(C)] #[doc = "*Required features: `\"Win32_Networking_WinSock\"`*"] diff --git a/crates/libs/windows/src/Windows/Win32/Security/Authentication/Identity/mod.rs b/crates/libs/windows/src/Windows/Win32/Security/Authentication/Identity/mod.rs index c0e8468a81..67d28e4b03 100644 --- a/crates/libs/windows/src/Windows/Win32/Security/Authentication/Identity/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Security/Authentication/Identity/mod.rs @@ -1,134 +1,134 @@ #[cfg(feature = "Win32_Security_Authentication_Identity_Provider")] pub mod Provider; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] +#[cfg(feature = "Win32_Security_Credentials")] +pub type ACCEPT_SECURITY_CONTEXT_FN = ::core::option::Option ::windows::core::HRESULT>; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ACCOUNT_ADJUST_PRIVILEGES: i32 = 2i32; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ACCOUNT_ADJUST_QUOTAS: i32 = 4i32; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ACCOUNT_ADJUST_SYSTEM_ACCESS: i32 = 8i32; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ACCOUNT_VIEW: i32 = 1i32; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] +#[cfg(feature = "Win32_Security_Credentials")] +pub type ACQUIRE_CREDENTIALS_HANDLE_FN_A = ::core::option::Option ::windows::core::HRESULT>; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] +#[cfg(feature = "Win32_Security_Credentials")] +pub type ACQUIRE_CREDENTIALS_HANDLE_FN_W = ::core::option::Option ::windows::core::HRESULT>; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] +#[cfg(feature = "Win32_Security_Credentials")] +pub type ADD_CREDENTIALS_FN_A = ::core::option::Option ::windows::core::HRESULT>; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] +#[cfg(feature = "Win32_Security_Credentials")] +pub type ADD_CREDENTIALS_FN_W = ::core::option::Option ::windows::core::HRESULT>; +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] +#[cfg(feature = "Win32_Security_Credentials")] +pub type APPLY_CONTROL_TOKEN_FN = ::core::option::Option ::windows::core::HRESULT>; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ(pub u32); +pub struct ASC_REQ_FLAGS(pub u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_DELEGATE: ASC_REQ_FLAGS = ASC_REQ_FLAGS(1u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_MUTUAL_AUTH: ASC_REQ_FLAGS = ASC_REQ_FLAGS(2u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_REPLAY_DETECT: ASC_REQ_FLAGS = ASC_REQ_FLAGS(4u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_SEQUENCE_DETECT: ASC_REQ_FLAGS = ASC_REQ_FLAGS(8u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_CONFIDENTIALITY: ASC_REQ_FLAGS = ASC_REQ_FLAGS(16u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_USE_SESSION_KEY: ASC_REQ_FLAGS = ASC_REQ_FLAGS(32u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_SESSION_TICKET: ASC_REQ_FLAGS = ASC_REQ_FLAGS(64u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_ALLOCATE_MEMORY: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ(256u32); +pub const ASC_REQ_ALLOCATE_MEMORY: ASC_REQ_FLAGS = ASC_REQ_FLAGS(256u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_CONNECTION: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ(2048u32); +pub const ASC_REQ_USE_DCE_STYLE: ASC_REQ_FLAGS = ASC_REQ_FLAGS(512u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_DELEGATE: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ(1u32); +pub const ASC_REQ_DATAGRAM: ASC_REQ_FLAGS = ASC_REQ_FLAGS(1024u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_EXTENDED_ERROR: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ(32768u32); +pub const ASC_REQ_CONNECTION: ASC_REQ_FLAGS = ASC_REQ_FLAGS(2048u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_REPLAY_DETECT: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ(4u32); +pub const ASC_REQ_CALL_LEVEL: ASC_REQ_FLAGS = ASC_REQ_FLAGS(4096u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_SEQUENCE_DETECT: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ(8u32); +pub const ASC_REQ_FRAGMENT_SUPPLIED: ASC_REQ_FLAGS = ASC_REQ_FLAGS(8192u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_STREAM: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ = ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ(65536u32); -impl ::core::marker::Copy for ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ {} -impl ::core::clone::Clone for ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ { +pub const ASC_REQ_EXTENDED_ERROR: ASC_REQ_FLAGS = ASC_REQ_FLAGS(32768u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_STREAM: ASC_REQ_FLAGS = ASC_REQ_FLAGS(65536u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_INTEGRITY: ASC_REQ_FLAGS = ASC_REQ_FLAGS(131072u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_LICENSING: ASC_REQ_FLAGS = ASC_REQ_FLAGS(262144u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_IDENTIFY: ASC_REQ_FLAGS = ASC_REQ_FLAGS(524288u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_ALLOW_NULL_SESSION: ASC_REQ_FLAGS = ASC_REQ_FLAGS(1048576u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_ALLOW_NON_USER_LOGONS: ASC_REQ_FLAGS = ASC_REQ_FLAGS(2097152u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_ALLOW_CONTEXT_REPLAY: ASC_REQ_FLAGS = ASC_REQ_FLAGS(4194304u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_FRAGMENT_TO_FIT: ASC_REQ_FLAGS = ASC_REQ_FLAGS(8388608u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_NO_TOKEN: ASC_REQ_FLAGS = ASC_REQ_FLAGS(16777216u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_PROXY_BINDINGS: ASC_REQ_FLAGS = ASC_REQ_FLAGS(67108864u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_ALLOW_MISSING_BINDINGS: ASC_REQ_FLAGS = ASC_REQ_FLAGS(268435456u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ASC_REQ_MESSAGES: ASC_REQ_FLAGS = ASC_REQ_FLAGS(4294967296u64); +impl ::core::marker::Copy for ASC_REQ_FLAGS {} +impl ::core::clone::Clone for ASC_REQ_FLAGS { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ { +impl ::core::default::Default for ASC_REQ_FLAGS { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ { +unsafe impl ::windows::core::Abi for ASC_REQ_FLAGS { type Abi = Self; } -impl ::core::fmt::Debug for ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ { +impl ::core::fmt::Debug for ASC_REQ_FLAGS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ").field(&self.0).finish() + f.debug_tuple("ASC_REQ_FLAGS").field(&self.0).finish() } } -impl ::core::ops::BitOr for ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ { +impl ::core::ops::BitOr for ASC_REQ_FLAGS { type Output = Self; fn bitor(self, other: Self) -> Self { Self(self.0 | other.0) } } -impl ::core::ops::BitAnd for ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ { +impl ::core::ops::BitAnd for ASC_REQ_FLAGS { type Output = Self; fn bitand(self, other: Self) -> Self { Self(self.0 & other.0) } } -impl ::core::ops::BitOrAssign for ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ { +impl ::core::ops::BitOrAssign for ASC_REQ_FLAGS { fn bitor_assign(&mut self, other: Self) { self.0.bitor_assign(other.0) } } -impl ::core::ops::BitAndAssign for ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ { +impl ::core::ops::BitAndAssign for ASC_REQ_FLAGS { fn bitand_assign(&mut self, other: Self) { self.0.bitand_assign(other.0) } } -impl ::core::ops::Not for ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ { +impl ::core::ops::Not for ASC_REQ_FLAGS { type Output = Self; fn not(self) -> Self { Self(self.0.not()) } } -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] -#[cfg(feature = "Win32_Security_Credentials")] -pub type ACCEPT_SECURITY_CONTEXT_FN = ::core::option::Option ::windows::core::HRESULT>; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ACCOUNT_ADJUST_PRIVILEGES: i32 = 2i32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ACCOUNT_ADJUST_QUOTAS: i32 = 4i32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ACCOUNT_ADJUST_SYSTEM_ACCESS: i32 = 8i32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ACCOUNT_VIEW: i32 = 1i32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] -#[cfg(feature = "Win32_Security_Credentials")] -pub type ACQUIRE_CREDENTIALS_HANDLE_FN_A = ::core::option::Option ::windows::core::HRESULT>; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] -#[cfg(feature = "Win32_Security_Credentials")] -pub type ACQUIRE_CREDENTIALS_HANDLE_FN_W = ::core::option::Option ::windows::core::HRESULT>; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] -#[cfg(feature = "Win32_Security_Credentials")] -pub type ADD_CREDENTIALS_FN_A = ::core::option::Option ::windows::core::HRESULT>; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] -#[cfg(feature = "Win32_Security_Credentials")] -pub type ADD_CREDENTIALS_FN_W = ::core::option::Option ::windows::core::HRESULT>; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] -#[cfg(feature = "Win32_Security_Credentials")] -pub type APPLY_CONTROL_TOKEN_FN = ::core::option::Option ::windows::core::HRESULT>; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_ALLOW_CONTEXT_REPLAY: u32 = 4194304u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_ALLOW_MISSING_BINDINGS: u32 = 268435456u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_ALLOW_NON_USER_LOGONS: u32 = 2097152u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_ALLOW_NULL_SESSION: u32 = 1048576u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_CALL_LEVEL: u32 = 4096u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_CONFIDENTIALITY: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_DATAGRAM: u32 = 1024u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_FRAGMENT_SUPPLIED: u32 = 8192u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_FRAGMENT_TO_FIT: u32 = 8388608u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_IDENTIFY: u32 = 524288u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_INTEGRITY: u32 = 131072u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_LICENSING: u32 = 262144u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_MESSAGES: u64 = 4294967296u64; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_MUTUAL_AUTH: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_NO_TOKEN: u32 = 16777216u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_PROXY_BINDINGS: u32 = 67108864u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_SESSION_TICKET: u32 = 64u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_USE_DCE_STYLE: u32 = 512u32; -#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ASC_REQ_USE_SESSION_KEY: u32 = 32u32; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] pub const ASC_RET_ALLOCATED_MEMORY: u32 = 256u32; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] @@ -252,12 +252,12 @@ pub const AUTH_REQ_VALIDATE_CLIENT: u32 = 128u32; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] #[inline] -pub unsafe fn AcceptSecurityContext(phcredential: ::core::option::Option<&super::super::Credentials::SecHandle>, phcontext: ::core::option::Option<&super::super::Credentials::SecHandle>, pinput: ::core::option::Option<&SecBufferDesc>, fcontextreq: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ, targetdatarep: u32, phnewcontext: ::core::option::Option<&mut super::super::Credentials::SecHandle>, poutput: ::core::option::Option<&mut SecBufferDesc>, pfcontextattr: &mut u32, ptsexpiry: ::core::option::Option<&mut i64>) -> ::windows::core::Result<()> { +pub unsafe fn AcceptSecurityContext(phcredential: ::core::option::Option<&super::super::Credentials::SecHandle>, phcontext: ::core::option::Option<&super::super::Credentials::SecHandle>, pinput: ::core::option::Option<&SecBufferDesc>, fcontextreq: ASC_REQ_FLAGS, targetdatarep: u32, phnewcontext: ::core::option::Option<&mut super::super::Credentials::SecHandle>, poutput: ::core::option::Option<&mut SecBufferDesc>, pfcontextattr: &mut u32, ptsexpiry: ::core::option::Option<&mut i64>) -> ::windows::core::HRESULT { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn AcceptSecurityContext(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, pinput: *const SecBufferDesc, fcontextreq: ACCEPT_SECURITY_CONTEXT_CONTEXT_REQ, targetdatarep: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows::core::HRESULT; + fn AcceptSecurityContext(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, pinput: *const SecBufferDesc, fcontextreq: ASC_REQ_FLAGS, targetdatarep: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows::core::HRESULT; } - AcceptSecurityContext(::core::mem::transmute(phcredential), ::core::mem::transmute(phcontext), ::core::mem::transmute(pinput), fcontextreq, targetdatarep, ::core::mem::transmute(phnewcontext), ::core::mem::transmute(poutput), ::core::mem::transmute(pfcontextattr), ::core::mem::transmute(ptsexpiry)).ok() + AcceptSecurityContext(::core::mem::transmute(phcredential), ::core::mem::transmute(phcontext), ::core::mem::transmute(pinput), fcontextreq, targetdatarep, ::core::mem::transmute(phnewcontext), ::core::mem::transmute(poutput), ::core::mem::transmute(pfcontextattr), ::core::mem::transmute(ptsexpiry)) } #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] @@ -1054,13 +1054,12 @@ pub const DS_UNKNOWN_ADDRESS_TYPE: u32 = 0u32; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] #[inline] -pub unsafe fn DecryptMessage(phcontext: &super::super::Credentials::SecHandle, pmessage: &SecBufferDesc, messageseqno: u32) -> ::windows::core::Result { +pub unsafe fn DecryptMessage(phcontext: &super::super::Credentials::SecHandle, pmessage: &SecBufferDesc, messageseqno: u32, pfqop: ::core::option::Option<&mut u32>) -> ::windows::core::HRESULT { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn DecryptMessage(phcontext: *const super::super::Credentials::SecHandle, pmessage: *const SecBufferDesc, messageseqno: u32, pfqop: *mut u32) -> ::windows::core::HRESULT; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - DecryptMessage(::core::mem::transmute(phcontext), ::core::mem::transmute(pmessage), messageseqno, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DecryptMessage(::core::mem::transmute(phcontext), ::core::mem::transmute(pmessage), messageseqno, ::core::mem::transmute(pfqop)) } #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] @@ -1256,12 +1255,12 @@ pub const E_RM_UNKNOWN_ERROR: ::windows::core::HRESULT = ::windows::core::HRESUL #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] #[inline] -pub unsafe fn EncryptMessage(phcontext: &super::super::Credentials::SecHandle, fqop: u32, pmessage: &SecBufferDesc, messageseqno: u32) -> ::windows::core::Result<()> { +pub unsafe fn EncryptMessage(phcontext: &super::super::Credentials::SecHandle, fqop: u32, pmessage: &SecBufferDesc, messageseqno: u32) -> ::windows::core::HRESULT { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn EncryptMessage(phcontext: *const super::super::Credentials::SecHandle, fqop: u32, pmessage: *const SecBufferDesc, messageseqno: u32) -> ::windows::core::HRESULT; } - EncryptMessage(::core::mem::transmute(phcontext), fqop, ::core::mem::transmute(pmessage), messageseqno).ok() + EncryptMessage(::core::mem::transmute(phcontext), fqop, ::core::mem::transmute(pmessage), messageseqno) } #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] #[inline] @@ -1433,63 +1432,114 @@ pub type INIT_SECURITY_INTERFACE_A = ::core::option::Option *mut SecurityFunctionTableW>; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_ALLOCATE_MEMORY: u32 = 256u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct ISC_REQ_FLAGS(pub u64); +#[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] +pub const ISC_REQ_DELEGATE: ISC_REQ_FLAGS = ISC_REQ_FLAGS(1u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_CALL_LEVEL: u32 = 4096u32; +pub const ISC_REQ_MUTUAL_AUTH: ISC_REQ_FLAGS = ISC_REQ_FLAGS(2u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_CONFIDENTIALITY: u32 = 16u32; +pub const ISC_REQ_REPLAY_DETECT: ISC_REQ_FLAGS = ISC_REQ_FLAGS(4u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_CONFIDENTIALITY_ONLY: u32 = 1073741824u32; +pub const ISC_REQ_SEQUENCE_DETECT: ISC_REQ_FLAGS = ISC_REQ_FLAGS(8u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_CONNECTION: u32 = 2048u32; +pub const ISC_REQ_CONFIDENTIALITY: ISC_REQ_FLAGS = ISC_REQ_FLAGS(16u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_DATAGRAM: u32 = 1024u32; +pub const ISC_REQ_USE_SESSION_KEY: ISC_REQ_FLAGS = ISC_REQ_FLAGS(32u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_DEFERRED_CRED_VALIDATION: u64 = 8589934592u64; +pub const ISC_REQ_PROMPT_FOR_CREDS: ISC_REQ_FLAGS = ISC_REQ_FLAGS(64u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_DELEGATE: u32 = 1u32; +pub const ISC_REQ_USE_SUPPLIED_CREDS: ISC_REQ_FLAGS = ISC_REQ_FLAGS(128u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_EXTENDED_ERROR: u32 = 16384u32; +pub const ISC_REQ_ALLOCATE_MEMORY: ISC_REQ_FLAGS = ISC_REQ_FLAGS(256u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_FORWARD_CREDENTIALS: u32 = 4194304u32; +pub const ISC_REQ_USE_DCE_STYLE: ISC_REQ_FLAGS = ISC_REQ_FLAGS(512u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_FRAGMENT_SUPPLIED: u32 = 8192u32; +pub const ISC_REQ_DATAGRAM: ISC_REQ_FLAGS = ISC_REQ_FLAGS(1024u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_FRAGMENT_TO_FIT: u32 = 2097152u32; +pub const ISC_REQ_CONNECTION: ISC_REQ_FLAGS = ISC_REQ_FLAGS(2048u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_IDENTIFY: u32 = 131072u32; +pub const ISC_REQ_CALL_LEVEL: ISC_REQ_FLAGS = ISC_REQ_FLAGS(4096u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_INTEGRITY: u32 = 65536u32; +pub const ISC_REQ_FRAGMENT_SUPPLIED: ISC_REQ_FLAGS = ISC_REQ_FLAGS(8192u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_MANUAL_CRED_VALIDATION: u32 = 524288u32; +pub const ISC_REQ_EXTENDED_ERROR: ISC_REQ_FLAGS = ISC_REQ_FLAGS(16384u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_MESSAGES: u64 = 4294967296u64; +pub const ISC_REQ_STREAM: ISC_REQ_FLAGS = ISC_REQ_FLAGS(32768u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_MUTUAL_AUTH: u32 = 2u32; +pub const ISC_REQ_INTEGRITY: ISC_REQ_FLAGS = ISC_REQ_FLAGS(65536u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_NO_INTEGRITY: u32 = 8388608u32; +pub const ISC_REQ_IDENTIFY: ISC_REQ_FLAGS = ISC_REQ_FLAGS(131072u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_NULL_SESSION: u32 = 262144u32; +pub const ISC_REQ_NULL_SESSION: ISC_REQ_FLAGS = ISC_REQ_FLAGS(262144u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_PROMPT_FOR_CREDS: u32 = 64u32; +pub const ISC_REQ_MANUAL_CRED_VALIDATION: ISC_REQ_FLAGS = ISC_REQ_FLAGS(524288u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_REPLAY_DETECT: u32 = 4u32; +pub const ISC_REQ_RESERVED1: ISC_REQ_FLAGS = ISC_REQ_FLAGS(1048576u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_RESERVED1: u32 = 1048576u32; +pub const ISC_REQ_FRAGMENT_TO_FIT: ISC_REQ_FLAGS = ISC_REQ_FLAGS(2097152u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_SEQUENCE_DETECT: u32 = 8u32; +pub const ISC_REQ_FORWARD_CREDENTIALS: ISC_REQ_FLAGS = ISC_REQ_FLAGS(4194304u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_STREAM: u32 = 32768u32; +pub const ISC_REQ_NO_INTEGRITY: ISC_REQ_FLAGS = ISC_REQ_FLAGS(8388608u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_UNVERIFIED_TARGET_NAME: u32 = 536870912u32; +pub const ISC_REQ_USE_HTTP_STYLE: ISC_REQ_FLAGS = ISC_REQ_FLAGS(16777216u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_USE_DCE_STYLE: u32 = 512u32; +pub const ISC_REQ_UNVERIFIED_TARGET_NAME: ISC_REQ_FLAGS = ISC_REQ_FLAGS(536870912u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_USE_HTTP_STYLE: u32 = 16777216u32; +pub const ISC_REQ_CONFIDENTIALITY_ONLY: ISC_REQ_FLAGS = ISC_REQ_FLAGS(1073741824u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_USE_SESSION_KEY: u32 = 32u32; +pub const ISC_REQ_MESSAGES: ISC_REQ_FLAGS = ISC_REQ_FLAGS(4294967296u64); #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] -pub const ISC_REQ_USE_SUPPLIED_CREDS: u32 = 128u32; +pub const ISC_REQ_DEFERRED_CRED_VALIDATION: ISC_REQ_FLAGS = ISC_REQ_FLAGS(8589934592u64); +impl ::core::marker::Copy for ISC_REQ_FLAGS {} +impl ::core::clone::Clone for ISC_REQ_FLAGS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for ISC_REQ_FLAGS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for ISC_REQ_FLAGS { + type Abi = Self; +} +impl ::core::fmt::Debug for ISC_REQ_FLAGS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("ISC_REQ_FLAGS").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for ISC_REQ_FLAGS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for ISC_REQ_FLAGS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for ISC_REQ_FLAGS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for ISC_REQ_FLAGS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for ISC_REQ_FLAGS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] pub const ISC_RET_ALLOCATED_MEMORY: u32 = 256u32; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] @@ -1613,22 +1663,22 @@ pub unsafe fn InitSecurityInterfaceW() -> *mut SecurityFunctionTableW { #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] #[inline] -pub unsafe fn InitializeSecurityContextA(phcredential: ::core::option::Option<&super::super::Credentials::SecHandle>, phcontext: ::core::option::Option<&super::super::Credentials::SecHandle>, psztargetname: ::core::option::Option<&i8>, fcontextreq: u32, reserved1: u32, targetdatarep: u32, pinput: ::core::option::Option<&SecBufferDesc>, reserved2: u32, phnewcontext: ::core::option::Option<&mut super::super::Credentials::SecHandle>, poutput: ::core::option::Option<&mut SecBufferDesc>, pfcontextattr: &mut u32, ptsexpiry: ::core::option::Option<&mut i64>) -> ::windows::core::Result<()> { +pub unsafe fn InitializeSecurityContextA(phcredential: ::core::option::Option<&super::super::Credentials::SecHandle>, phcontext: ::core::option::Option<&super::super::Credentials::SecHandle>, psztargetname: ::core::option::Option<&i8>, fcontextreq: ISC_REQ_FLAGS, reserved1: u32, targetdatarep: u32, pinput: ::core::option::Option<&SecBufferDesc>, reserved2: u32, phnewcontext: ::core::option::Option<&mut super::super::Credentials::SecHandle>, poutput: ::core::option::Option<&mut SecBufferDesc>, pfcontextattr: &mut u32, ptsexpiry: ::core::option::Option<&mut i64>) -> ::windows::core::HRESULT { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn InitializeSecurityContextA(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: *const i8, fcontextreq: u32, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows::core::HRESULT; + fn InitializeSecurityContextA(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: *const i8, fcontextreq: ISC_REQ_FLAGS, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows::core::HRESULT; } - InitializeSecurityContextA(::core::mem::transmute(phcredential), ::core::mem::transmute(phcontext), ::core::mem::transmute(psztargetname), fcontextreq, reserved1, targetdatarep, ::core::mem::transmute(pinput), reserved2, ::core::mem::transmute(phnewcontext), ::core::mem::transmute(poutput), ::core::mem::transmute(pfcontextattr), ::core::mem::transmute(ptsexpiry)).ok() + InitializeSecurityContextA(::core::mem::transmute(phcredential), ::core::mem::transmute(phcontext), ::core::mem::transmute(psztargetname), fcontextreq, reserved1, targetdatarep, ::core::mem::transmute(pinput), reserved2, ::core::mem::transmute(phnewcontext), ::core::mem::transmute(poutput), ::core::mem::transmute(pfcontextattr), ::core::mem::transmute(ptsexpiry)) } #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] #[inline] -pub unsafe fn InitializeSecurityContextW(phcredential: ::core::option::Option<&super::super::Credentials::SecHandle>, phcontext: ::core::option::Option<&super::super::Credentials::SecHandle>, psztargetname: ::core::option::Option<&u16>, fcontextreq: u32, reserved1: u32, targetdatarep: u32, pinput: ::core::option::Option<&SecBufferDesc>, reserved2: u32, phnewcontext: ::core::option::Option<&mut super::super::Credentials::SecHandle>, poutput: ::core::option::Option<&mut SecBufferDesc>, pfcontextattr: &mut u32, ptsexpiry: ::core::option::Option<&mut i64>) -> ::windows::core::Result<()> { +pub unsafe fn InitializeSecurityContextW(phcredential: ::core::option::Option<&super::super::Credentials::SecHandle>, phcontext: ::core::option::Option<&super::super::Credentials::SecHandle>, psztargetname: ::core::option::Option<&u16>, fcontextreq: ISC_REQ_FLAGS, reserved1: u32, targetdatarep: u32, pinput: ::core::option::Option<&SecBufferDesc>, reserved2: u32, phnewcontext: ::core::option::Option<&mut super::super::Credentials::SecHandle>, poutput: ::core::option::Option<&mut SecBufferDesc>, pfcontextattr: &mut u32, ptsexpiry: ::core::option::Option<&mut i64>) -> ::windows::core::HRESULT { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn InitializeSecurityContextW(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: *const u16, fcontextreq: u32, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows::core::HRESULT; + fn InitializeSecurityContextW(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: *const u16, fcontextreq: ISC_REQ_FLAGS, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows::core::HRESULT; } - InitializeSecurityContextW(::core::mem::transmute(phcredential), ::core::mem::transmute(phcontext), ::core::mem::transmute(psztargetname), fcontextreq, reserved1, targetdatarep, ::core::mem::transmute(pinput), reserved2, ::core::mem::transmute(phnewcontext), ::core::mem::transmute(poutput), ::core::mem::transmute(pfcontextattr), ::core::mem::transmute(ptsexpiry)).ok() + InitializeSecurityContextW(::core::mem::transmute(phcredential), ::core::mem::transmute(phcontext), ::core::mem::transmute(psztargetname), fcontextreq, reserved1, targetdatarep, ::core::mem::transmute(pinput), reserved2, ::core::mem::transmute(phnewcontext), ::core::mem::transmute(poutput), ::core::mem::transmute(pfcontextattr), ::core::mem::transmute(ptsexpiry)) } #[repr(C)] #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Foundation\"`*"] @@ -16798,12 +16848,12 @@ pub const SZ_ALG_MAX_SIZE: u32 = 64u32; #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] #[inline] -pub unsafe fn SaslAcceptSecurityContext(phcredential: ::core::option::Option<&super::super::Credentials::SecHandle>, phcontext: ::core::option::Option<&super::super::Credentials::SecHandle>, pinput: ::core::option::Option<&SecBufferDesc>, fcontextreq: u32, targetdatarep: u32, phnewcontext: ::core::option::Option<&mut super::super::Credentials::SecHandle>, poutput: ::core::option::Option<&mut SecBufferDesc>, pfcontextattr: &mut u32, ptsexpiry: ::core::option::Option<&mut i64>) -> ::windows::core::Result<()> { +pub unsafe fn SaslAcceptSecurityContext(phcredential: ::core::option::Option<&super::super::Credentials::SecHandle>, phcontext: ::core::option::Option<&super::super::Credentials::SecHandle>, pinput: ::core::option::Option<&SecBufferDesc>, fcontextreq: ASC_REQ_FLAGS, targetdatarep: u32, phnewcontext: ::core::option::Option<&mut super::super::Credentials::SecHandle>, poutput: ::core::option::Option<&mut SecBufferDesc>, pfcontextattr: &mut u32, ptsexpiry: ::core::option::Option<&mut i64>) -> ::windows::core::HRESULT { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SaslAcceptSecurityContext(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, pinput: *const SecBufferDesc, fcontextreq: u32, targetdatarep: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows::core::HRESULT; + fn SaslAcceptSecurityContext(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, pinput: *const SecBufferDesc, fcontextreq: ASC_REQ_FLAGS, targetdatarep: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows::core::HRESULT; } - SaslAcceptSecurityContext(::core::mem::transmute(phcredential), ::core::mem::transmute(phcontext), ::core::mem::transmute(pinput), fcontextreq, targetdatarep, ::core::mem::transmute(phnewcontext), ::core::mem::transmute(poutput), ::core::mem::transmute(pfcontextattr), ::core::mem::transmute(ptsexpiry)).ok() + SaslAcceptSecurityContext(::core::mem::transmute(phcredential), ::core::mem::transmute(phcontext), ::core::mem::transmute(pinput), fcontextreq, targetdatarep, ::core::mem::transmute(phnewcontext), ::core::mem::transmute(poutput), ::core::mem::transmute(pfcontextattr), ::core::mem::transmute(ptsexpiry)) } #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`*"] #[inline] @@ -16882,28 +16932,28 @@ pub unsafe fn SaslIdentifyPackageW(pinput: &SecBufferDesc) -> ::windows::core::R #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] #[inline] -pub unsafe fn SaslInitializeSecurityContextA<'a, P0>(phcredential: ::core::option::Option<&super::super::Credentials::SecHandle>, phcontext: ::core::option::Option<&super::super::Credentials::SecHandle>, psztargetname: P0, fcontextreq: u32, reserved1: u32, targetdatarep: u32, pinput: ::core::option::Option<&SecBufferDesc>, reserved2: u32, phnewcontext: ::core::option::Option<&mut super::super::Credentials::SecHandle>, poutput: ::core::option::Option<&mut SecBufferDesc>, pfcontextattr: &mut u32, ptsexpiry: ::core::option::Option<&mut i64>) -> ::windows::core::Result<()> +pub unsafe fn SaslInitializeSecurityContextA<'a, P0>(phcredential: ::core::option::Option<&super::super::Credentials::SecHandle>, phcontext: ::core::option::Option<&super::super::Credentials::SecHandle>, psztargetname: P0, fcontextreq: ISC_REQ_FLAGS, reserved1: u32, targetdatarep: u32, pinput: ::core::option::Option<&SecBufferDesc>, reserved2: u32, phnewcontext: ::core::option::Option<&mut super::super::Credentials::SecHandle>, poutput: ::core::option::Option<&mut SecBufferDesc>, pfcontextattr: &mut u32, ptsexpiry: ::core::option::Option<&mut i64>) -> ::windows::core::HRESULT where P0: ::std::convert::Into<::windows::core::PCSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SaslInitializeSecurityContextA(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: ::windows::core::PCSTR, fcontextreq: u32, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows::core::HRESULT; + fn SaslInitializeSecurityContextA(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: ::windows::core::PCSTR, fcontextreq: ISC_REQ_FLAGS, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows::core::HRESULT; } - SaslInitializeSecurityContextA(::core::mem::transmute(phcredential), ::core::mem::transmute(phcontext), psztargetname.into(), fcontextreq, reserved1, targetdatarep, ::core::mem::transmute(pinput), reserved2, ::core::mem::transmute(phnewcontext), ::core::mem::transmute(poutput), ::core::mem::transmute(pfcontextattr), ::core::mem::transmute(ptsexpiry)).ok() + SaslInitializeSecurityContextA(::core::mem::transmute(phcredential), ::core::mem::transmute(phcontext), psztargetname.into(), fcontextreq, reserved1, targetdatarep, ::core::mem::transmute(pinput), reserved2, ::core::mem::transmute(phnewcontext), ::core::mem::transmute(poutput), ::core::mem::transmute(pfcontextattr), ::core::mem::transmute(ptsexpiry)) } #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] #[inline] -pub unsafe fn SaslInitializeSecurityContextW<'a, P0>(phcredential: ::core::option::Option<&super::super::Credentials::SecHandle>, phcontext: ::core::option::Option<&super::super::Credentials::SecHandle>, psztargetname: P0, fcontextreq: u32, reserved1: u32, targetdatarep: u32, pinput: ::core::option::Option<&SecBufferDesc>, reserved2: u32, phnewcontext: ::core::option::Option<&mut super::super::Credentials::SecHandle>, poutput: ::core::option::Option<&mut SecBufferDesc>, pfcontextattr: &mut u32, ptsexpiry: ::core::option::Option<&mut i64>) -> ::windows::core::Result<()> +pub unsafe fn SaslInitializeSecurityContextW<'a, P0>(phcredential: ::core::option::Option<&super::super::Credentials::SecHandle>, phcontext: ::core::option::Option<&super::super::Credentials::SecHandle>, psztargetname: P0, fcontextreq: ISC_REQ_FLAGS, reserved1: u32, targetdatarep: u32, pinput: ::core::option::Option<&SecBufferDesc>, reserved2: u32, phnewcontext: ::core::option::Option<&mut super::super::Credentials::SecHandle>, poutput: ::core::option::Option<&mut SecBufferDesc>, pfcontextattr: &mut u32, ptsexpiry: ::core::option::Option<&mut i64>) -> ::windows::core::HRESULT where P0: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SaslInitializeSecurityContextW(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: ::windows::core::PCWSTR, fcontextreq: u32, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows::core::HRESULT; + fn SaslInitializeSecurityContextW(phcredential: *const super::super::Credentials::SecHandle, phcontext: *const super::super::Credentials::SecHandle, psztargetname: ::windows::core::PCWSTR, fcontextreq: ISC_REQ_FLAGS, reserved1: u32, targetdatarep: u32, pinput: *const SecBufferDesc, reserved2: u32, phnewcontext: *mut super::super::Credentials::SecHandle, poutput: *mut SecBufferDesc, pfcontextattr: *mut u32, ptsexpiry: *mut i64) -> ::windows::core::HRESULT; } - SaslInitializeSecurityContextW(::core::mem::transmute(phcredential), ::core::mem::transmute(phcontext), psztargetname.into(), fcontextreq, reserved1, targetdatarep, ::core::mem::transmute(pinput), reserved2, ::core::mem::transmute(phnewcontext), ::core::mem::transmute(poutput), ::core::mem::transmute(pfcontextattr), ::core::mem::transmute(ptsexpiry)).ok() + SaslInitializeSecurityContextW(::core::mem::transmute(phcredential), ::core::mem::transmute(phcontext), psztargetname.into(), fcontextreq, reserved1, targetdatarep, ::core::mem::transmute(pinput), reserved2, ::core::mem::transmute(phnewcontext), ::core::mem::transmute(poutput), ::core::mem::transmute(pfcontextattr), ::core::mem::transmute(ptsexpiry)) } #[doc = "*Required features: `\"Win32_Security_Authentication_Identity\"`, `\"Win32_Security_Credentials\"`*"] #[cfg(feature = "Win32_Security_Credentials")] diff --git a/crates/libs/windows/src/Windows/Win32/Security/Authorization/mod.rs b/crates/libs/windows/src/Windows/Win32/Security/Authorization/mod.rs index 257d9629a0..d4239cef5f 100644 --- a/crates/libs/windows/src/Windows/Win32/Security/Authorization/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Security/Authorization/mod.rs @@ -2350,13 +2350,13 @@ where #[doc = "*Required features: `\"Win32_Security_Authorization\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn AuthzAddSidsToContext<'a, P0>(hauthzclientcontext: P0, sids: ::core::option::Option<&super::SID_AND_ATTRIBUTES>, sidcount: u32, restrictedsids: ::core::option::Option<&super::SID_AND_ATTRIBUTES>, restrictedsidcount: u32, phnewauthzclientcontext: &mut isize) -> super::super::Foundation::BOOL +pub unsafe fn AuthzAddSidsToContext<'a, P0>(hauthzclientcontext: P0, sids: ::core::option::Option<&super::SID_AND_ATTRIBUTES>, sidcount: u32, restrictedsids: ::core::option::Option<&super::SID_AND_ATTRIBUTES>, restrictedsidcount: u32, phnewauthzclientcontext: &mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn AuthzAddSidsToContext(hauthzclientcontext: AUTHZ_CLIENT_CONTEXT_HANDLE, sids: *const super::SID_AND_ATTRIBUTES, sidcount: u32, restrictedsids: *const super::SID_AND_ATTRIBUTES, restrictedsidcount: u32, phnewauthzclientcontext: *mut isize) -> super::super::Foundation::BOOL; + fn AuthzAddSidsToContext(hauthzclientcontext: AUTHZ_CLIENT_CONTEXT_HANDLE, sids: *const super::SID_AND_ATTRIBUTES, sidcount: u32, restrictedsids: *const super::SID_AND_ATTRIBUTES, restrictedsidcount: u32, phnewauthzclientcontext: *mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL; } AuthzAddSidsToContext(hauthzclientcontext.into(), ::core::mem::transmute(sids), sidcount, ::core::mem::transmute(restrictedsids), restrictedsidcount, ::core::mem::transmute(phnewauthzclientcontext)) } @@ -2476,55 +2476,55 @@ where #[doc = "*Required features: `\"Win32_Security_Authorization\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn AuthzInitializeCompoundContext<'a, P0, P1>(usercontext: P0, devicecontext: P1, phcompoundcontext: &mut isize) -> super::super::Foundation::BOOL +pub unsafe fn AuthzInitializeCompoundContext<'a, P0, P1>(usercontext: P0, devicecontext: P1, phcompoundcontext: &mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn AuthzInitializeCompoundContext(usercontext: AUTHZ_CLIENT_CONTEXT_HANDLE, devicecontext: AUTHZ_CLIENT_CONTEXT_HANDLE, phcompoundcontext: *mut isize) -> super::super::Foundation::BOOL; + fn AuthzInitializeCompoundContext(usercontext: AUTHZ_CLIENT_CONTEXT_HANDLE, devicecontext: AUTHZ_CLIENT_CONTEXT_HANDLE, phcompoundcontext: *mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL; } AuthzInitializeCompoundContext(usercontext.into(), devicecontext.into(), ::core::mem::transmute(phcompoundcontext)) } #[doc = "*Required features: `\"Win32_Security_Authorization\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn AuthzInitializeContextFromAuthzContext<'a, P0>(flags: u32, hauthzclientcontext: P0, pexpirationtime: ::core::option::Option<&i64>, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phnewauthzclientcontext: &mut isize) -> super::super::Foundation::BOOL +pub unsafe fn AuthzInitializeContextFromAuthzContext<'a, P0>(flags: u32, hauthzclientcontext: P0, pexpirationtime: ::core::option::Option<&i64>, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phnewauthzclientcontext: &mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn AuthzInitializeContextFromAuthzContext(flags: u32, hauthzclientcontext: AUTHZ_CLIENT_CONTEXT_HANDLE, pexpirationtime: *const i64, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phnewauthzclientcontext: *mut isize) -> super::super::Foundation::BOOL; + fn AuthzInitializeContextFromAuthzContext(flags: u32, hauthzclientcontext: AUTHZ_CLIENT_CONTEXT_HANDLE, pexpirationtime: *const i64, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phnewauthzclientcontext: *mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL; } AuthzInitializeContextFromAuthzContext(flags, hauthzclientcontext.into(), ::core::mem::transmute(pexpirationtime), ::core::mem::transmute(identifier), ::core::mem::transmute(dynamicgroupargs), ::core::mem::transmute(phnewauthzclientcontext)) } #[doc = "*Required features: `\"Win32_Security_Authorization\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn AuthzInitializeContextFromSid<'a, P0, P1>(flags: u32, usersid: P0, hauthzresourcemanager: P1, pexpirationtime: ::core::option::Option<&i64>, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phauthzclientcontext: &mut isize) -> super::super::Foundation::BOOL +pub unsafe fn AuthzInitializeContextFromSid<'a, P0, P1>(flags: u32, usersid: P0, hauthzresourcemanager: P1, pexpirationtime: ::core::option::Option<&i64>, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phauthzclientcontext: &mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn AuthzInitializeContextFromSid(flags: u32, usersid: super::super::Foundation::PSID, hauthzresourcemanager: AUTHZ_RESOURCE_MANAGER_HANDLE, pexpirationtime: *const i64, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phauthzclientcontext: *mut isize) -> super::super::Foundation::BOOL; + fn AuthzInitializeContextFromSid(flags: u32, usersid: super::super::Foundation::PSID, hauthzresourcemanager: AUTHZ_RESOURCE_MANAGER_HANDLE, pexpirationtime: *const i64, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phauthzclientcontext: *mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL; } AuthzInitializeContextFromSid(flags, usersid.into(), hauthzresourcemanager.into(), ::core::mem::transmute(pexpirationtime), ::core::mem::transmute(identifier), ::core::mem::transmute(dynamicgroupargs), ::core::mem::transmute(phauthzclientcontext)) } #[doc = "*Required features: `\"Win32_Security_Authorization\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn AuthzInitializeContextFromToken<'a, P0, P1>(flags: u32, tokenhandle: P0, hauthzresourcemanager: P1, pexpirationtime: ::core::option::Option<&i64>, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phauthzclientcontext: &mut isize) -> super::super::Foundation::BOOL +pub unsafe fn AuthzInitializeContextFromToken<'a, P0, P1>(flags: u32, tokenhandle: P0, hauthzresourcemanager: P1, pexpirationtime: ::core::option::Option<&i64>, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phauthzclientcontext: &mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn AuthzInitializeContextFromToken(flags: u32, tokenhandle: super::super::Foundation::HANDLE, hauthzresourcemanager: AUTHZ_RESOURCE_MANAGER_HANDLE, pexpirationtime: *const i64, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phauthzclientcontext: *mut isize) -> super::super::Foundation::BOOL; + fn AuthzInitializeContextFromToken(flags: u32, tokenhandle: super::super::Foundation::HANDLE, hauthzresourcemanager: AUTHZ_RESOURCE_MANAGER_HANDLE, pexpirationtime: *const i64, identifier: super::super::Foundation::LUID, dynamicgroupargs: *const ::core::ffi::c_void, phauthzclientcontext: *mut AUTHZ_CLIENT_CONTEXT_HANDLE) -> super::super::Foundation::BOOL; } AuthzInitializeContextFromToken(flags, tokenhandle.into(), hauthzresourcemanager.into(), ::core::mem::transmute(pexpirationtime), ::core::mem::transmute(identifier), ::core::mem::transmute(dynamicgroupargs), ::core::mem::transmute(phauthzclientcontext)) } diff --git a/crates/libs/windows/src/Windows/Win32/Security/Credentials/mod.rs b/crates/libs/windows/src/Windows/Win32/Security/Credentials/mod.rs index 899cc4ad7d..e1a9bf3407 100644 --- a/crates/libs/windows/src/Windows/Win32/Security/Credentials/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Security/Credentials/mod.rs @@ -688,10 +688,14 @@ impl ::core::default::Default for CREDUI_INFOW { #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CREDUI_MAX_CAPTION_LENGTH: u32 = 128u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] +pub const CREDUI_MAX_DOMAIN_TARGET_LENGTH: u32 = 337u32; +#[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CREDUI_MAX_GENERIC_TARGET_LENGTH: u32 = 32767u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CREDUI_MAX_MESSAGE_LENGTH: u32 = 1024u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] +pub const CREDUI_MAX_USERNAME_LENGTH: u32 = 513u32; +#[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CRED_ALLOW_NAME_RESOLUTION: u32 = 1u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CRED_CACHE_TARGET_INFORMATION: u32 = 1u32; @@ -857,6 +861,10 @@ impl ::core::fmt::Debug for CRED_MARSHAL_TYPE { #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CRED_MAX_ATTRIBUTES: u32 = 64u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] +pub const CRED_MAX_CREDENTIAL_BLOB_SIZE: u32 = 2560u32; +#[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] +pub const CRED_MAX_DOMAIN_TARGET_NAME_LENGTH: u32 = 337u32; +#[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CRED_MAX_GENERIC_TARGET_NAME_LENGTH: u32 = 32767u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CRED_MAX_STRING_LENGTH: u32 = 256u32; @@ -865,6 +873,8 @@ pub const CRED_MAX_TARGETNAME_ATTRIBUTE_LENGTH: u32 = 256u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CRED_MAX_TARGETNAME_NAMESPACE_LENGTH: u32 = 256u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] +pub const CRED_MAX_USERNAME_LENGTH: u32 = 513u32; +#[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] pub const CRED_MAX_VALUE_SIZE: u32 = 256u32; #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] #[repr(transparent)] @@ -3737,7 +3747,7 @@ pub unsafe fn SCardState(hcard: usize, pdwstate: &mut u32, pdwprotocol: &mut u32 } #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] #[inline] -pub unsafe fn SCardStatusA(hcard: usize, mszreadernames: ::windows::core::PSTR, pcchreaderlen: ::core::option::Option<&mut u32>, pdwstate: ::core::option::Option<&mut u32>, pdwprotocol: ::core::option::Option<&mut u32>, pbatr: ::core::option::Option<&mut u8>, pcbatrlen: ::core::option::Option<&mut u32>) -> i32 { +pub unsafe fn SCardStatusA(hcard: usize, mszreadernames: ::windows::core::PSTR, pcchreaderlen: ::core::option::Option<&mut u32>, pdwstate: ::core::option::Option<&mut u32>, pdwprotocol: ::core::option::Option<&mut u32>, pbatr: *mut u8, pcbatrlen: ::core::option::Option<&mut u32>) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn SCardStatusA(hcard: usize, mszreadernames: ::windows::core::PSTR, pcchreaderlen: *mut u32, pdwstate: *mut u32, pdwprotocol: *mut u32, pbatr: *mut u8, pcbatrlen: *mut u32) -> i32; @@ -3746,7 +3756,7 @@ pub unsafe fn SCardStatusA(hcard: usize, mszreadernames: ::windows::core::PSTR, } #[doc = "*Required features: `\"Win32_Security_Credentials\"`*"] #[inline] -pub unsafe fn SCardStatusW(hcard: usize, mszreadernames: ::windows::core::PWSTR, pcchreaderlen: ::core::option::Option<&mut u32>, pdwstate: ::core::option::Option<&mut u32>, pdwprotocol: ::core::option::Option<&mut u32>, pbatr: ::core::option::Option<&mut u8>, pcbatrlen: ::core::option::Option<&mut u32>) -> i32 { +pub unsafe fn SCardStatusW(hcard: usize, mszreadernames: ::windows::core::PWSTR, pcchreaderlen: ::core::option::Option<&mut u32>, pdwstate: ::core::option::Option<&mut u32>, pdwprotocol: ::core::option::Option<&mut u32>, pbatr: *mut u8, pcbatrlen: ::core::option::Option<&mut u32>) -> i32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn SCardStatusW(hcard: usize, mszreadernames: ::windows::core::PWSTR, pcchreaderlen: *mut u32, pdwstate: *mut u32, pdwprotocol: *mut u32, pbatr: *mut u8, pcbatrlen: *mut u32) -> i32; diff --git a/crates/libs/windows/src/Windows/Win32/Security/Cryptography/mod.rs b/crates/libs/windows/src/Windows/Win32/Security/Cryptography/mod.rs index 35f9e2da32..b01e5a8ec0 100644 --- a/crates/libs/windows/src/Windows/Win32/Security/Cryptography/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Security/Cryptography/mod.rs @@ -393,6 +393,11 @@ impl ::core::convert::From<::core::option::Option> for BCRYPT unsafe impl ::windows::core::Abi for BCRYPT_ALG_HANDLE { type Abi = Self; } +impl ::core::convert::From for BCRYPT_HANDLE { + fn from(item: BCRYPT_ALG_HANDLE) -> BCRYPT_HANDLE { + BCRYPT_HANDLE(item.0) + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] pub struct BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO { @@ -1075,8 +1080,77 @@ pub const BCRYPT_EXTENDED_KEYSIZE: u32 = 128u32; pub const BCRYPT_GENERATE_IV: u32 = 32u32; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] pub const BCRYPT_GLOBAL_PARAMETERS: &str = "SecretAgreementParam"; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BCRYPT_HANDLE(pub isize); +impl BCRYPT_HANDLE { + pub fn is_invalid(&self) -> bool { + self.0 == 0 + } +} +impl ::core::default::Default for BCRYPT_HANDLE { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for BCRYPT_HANDLE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::marker::Copy for BCRYPT_HANDLE {} +impl ::core::fmt::Debug for BCRYPT_HANDLE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BCRYPT_HANDLE").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for BCRYPT_HANDLE { + fn from(optional: ::core::option::Option) -> BCRYPT_HANDLE { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for BCRYPT_HANDLE { + type Abi = Self; +} #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] pub const BCRYPT_HASH_BLOCK_LENGTH: &str = "HashBlockLength"; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BCRYPT_HASH_HANDLE(pub isize); +impl BCRYPT_HASH_HANDLE { + pub fn is_invalid(&self) -> bool { + self.0 == 0 + } +} +impl ::core::default::Default for BCRYPT_HASH_HANDLE { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for BCRYPT_HASH_HANDLE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::marker::Copy for BCRYPT_HASH_HANDLE {} +impl ::core::fmt::Debug for BCRYPT_HASH_HANDLE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BCRYPT_HASH_HANDLE").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for BCRYPT_HASH_HANDLE { + fn from(optional: ::core::option::Option) -> BCRYPT_HASH_HANDLE { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for BCRYPT_HASH_HANDLE { + type Abi = Self; +} +impl ::core::convert::From for BCRYPT_HANDLE { + fn from(item: BCRYPT_HASH_HANDLE) -> BCRYPT_HANDLE { + BCRYPT_HANDLE(item.0) + } +} #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] pub const BCRYPT_HASH_INTERFACE_MAJORVERSION_2: u32 = 2u32; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] @@ -1330,6 +1404,11 @@ impl ::core::convert::From<::core::option::Option> for BCRYPT unsafe impl ::windows::core::Abi for BCRYPT_KEY_HANDLE { type Abi = Self; } +impl ::core::convert::From for BCRYPT_HANDLE { + fn from(item: BCRYPT_KEY_HANDLE) -> BCRYPT_HANDLE { + BCRYPT_HANDLE(item.0) + } +} #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] pub const BCRYPT_KEY_LENGTH: &str = "KeyLength"; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] @@ -2010,6 +2089,43 @@ pub const BCRYPT_RSA_ALG_HANDLE: BCRYPT_ALG_HANDLE = BCRYPT_ALG_HANDLE(225u32 as pub const BCRYPT_RSA_SIGN_ALGORITHM: &str = "RSA_SIGN"; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] pub const BCRYPT_RSA_SIGN_ALG_HANDLE: BCRYPT_ALG_HANDLE = BCRYPT_ALG_HANDLE(785u32 as _); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BCRYPT_SECRET_HANDLE(pub isize); +impl BCRYPT_SECRET_HANDLE { + pub fn is_invalid(&self) -> bool { + self.0 == 0 + } +} +impl ::core::default::Default for BCRYPT_SECRET_HANDLE { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for BCRYPT_SECRET_HANDLE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::marker::Copy for BCRYPT_SECRET_HANDLE {} +impl ::core::fmt::Debug for BCRYPT_SECRET_HANDLE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BCRYPT_SECRET_HANDLE").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for BCRYPT_SECRET_HANDLE { + fn from(optional: ::core::option::Option) -> BCRYPT_SECRET_HANDLE { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for BCRYPT_SECRET_HANDLE { + type Abi = Self; +} +impl ::core::convert::From for BCRYPT_HANDLE { + fn from(item: BCRYPT_SECRET_HANDLE) -> BCRYPT_HANDLE { + BCRYPT_HANDLE(item.0) + } +} #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] pub const BCRYPT_SHA1_ALGORITHM: &str = "SHA1"; #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] @@ -2223,28 +2339,28 @@ where #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptCreateHash<'a, P0>(halgorithm: P0, phhash: *mut *mut ::core::ffi::c_void, pbhashobject: ::core::option::Option<&mut u8>, cbhashobject: u32, pbsecret: ::core::option::Option<&[u8]>, dwflags: u32) -> ::windows::core::Result<()> +pub unsafe fn BCryptCreateHash<'a, P0>(halgorithm: P0, phhash: &mut BCRYPT_HASH_HANDLE, pbhashobject: ::core::option::Option<&mut [u8]>, pbsecret: ::core::option::Option<&[u8]>, dwflags: u32) -> ::windows::core::Result<()> where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn BCryptCreateHash(halgorithm: BCRYPT_ALG_HANDLE, phhash: *mut *mut ::core::ffi::c_void, pbhashobject: *mut u8, cbhashobject: u32, pbsecret: *const u8, cbsecret: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + fn BCryptCreateHash(halgorithm: BCRYPT_ALG_HANDLE, phhash: *mut BCRYPT_HASH_HANDLE, pbhashobject: *mut u8, cbhashobject: u32, pbsecret: *const u8, cbsecret: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; } - BCryptCreateHash(halgorithm.into(), ::core::mem::transmute(phhash), ::core::mem::transmute(pbhashobject), cbhashobject, ::core::mem::transmute(pbsecret.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pbsecret.as_deref().map_or(0, |slice| slice.len() as _), dwflags).ok() + BCryptCreateHash(halgorithm.into(), ::core::mem::transmute(phhash), ::core::mem::transmute(pbhashobject.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pbhashobject.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pbsecret.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pbsecret.as_deref().map_or(0, |slice| slice.len() as _), dwflags).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptCreateMultiHash<'a, P0>(halgorithm: P0, phhash: *mut *mut ::core::ffi::c_void, nhashes: u32, pbhashobject: ::core::option::Option<&mut u8>, cbhashobject: u32, pbsecret: ::core::option::Option<&[u8]>, dwflags: u32) -> ::windows::core::Result<()> +pub unsafe fn BCryptCreateMultiHash<'a, P0>(halgorithm: P0, phhash: &mut BCRYPT_HASH_HANDLE, nhashes: u32, pbhashobject: ::core::option::Option<&mut [u8]>, pbsecret: ::core::option::Option<&[u8]>, dwflags: u32) -> ::windows::core::Result<()> where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn BCryptCreateMultiHash(halgorithm: BCRYPT_ALG_HANDLE, phhash: *mut *mut ::core::ffi::c_void, nhashes: u32, pbhashobject: *mut u8, cbhashobject: u32, pbsecret: *const u8, cbsecret: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + fn BCryptCreateMultiHash(halgorithm: BCRYPT_ALG_HANDLE, phhash: *mut BCRYPT_HASH_HANDLE, nhashes: u32, pbhashobject: *mut u8, cbhashobject: u32, pbsecret: *const u8, cbsecret: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; } - BCryptCreateMultiHash(halgorithm.into(), ::core::mem::transmute(phhash), nhashes, ::core::mem::transmute(pbhashobject), cbhashobject, ::core::mem::transmute(pbsecret.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pbsecret.as_deref().map_or(0, |slice| slice.len() as _), dwflags).ok() + BCryptCreateMultiHash(halgorithm.into(), ::core::mem::transmute(phhash), nhashes, ::core::mem::transmute(pbhashobject.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pbhashobject.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pbsecret.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pbsecret.as_deref().map_or(0, |slice| slice.len() as _), dwflags).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -2287,28 +2403,30 @@ where #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptDeriveKey<'a, P0>(hsharedsecret: *const ::core::ffi::c_void, pwszkdf: P0, pparameterlist: ::core::option::Option<&BCryptBufferDesc>, pbderivedkey: ::core::option::Option<&mut [u8]>, pcbresult: &mut u32, dwflags: u32) -> ::windows::core::Result<()> +pub unsafe fn BCryptDeriveKey<'a, P0, P1>(hsharedsecret: P0, pwszkdf: P1, pparameterlist: ::core::option::Option<&BCryptBufferDesc>, pbderivedkey: ::core::option::Option<&mut [u8]>, pcbresult: &mut u32, dwflags: u32) -> ::windows::core::Result<()> where - P0: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn BCryptDeriveKey(hsharedsecret: *const ::core::ffi::c_void, pwszkdf: ::windows::core::PCWSTR, pparameterlist: *const BCryptBufferDesc, pbderivedkey: *mut u8, cbderivedkey: u32, pcbresult: *mut u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + fn BCryptDeriveKey(hsharedsecret: BCRYPT_SECRET_HANDLE, pwszkdf: ::windows::core::PCWSTR, pparameterlist: *const BCryptBufferDesc, pbderivedkey: *mut u8, cbderivedkey: u32, pcbresult: *mut u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; } - BCryptDeriveKey(::core::mem::transmute(hsharedsecret), pwszkdf.into(), ::core::mem::transmute(pparameterlist), ::core::mem::transmute(pbderivedkey.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pbderivedkey.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pcbresult), dwflags).ok() + BCryptDeriveKey(hsharedsecret.into(), pwszkdf.into(), ::core::mem::transmute(pparameterlist), ::core::mem::transmute(pbderivedkey.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pbderivedkey.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pcbresult), dwflags).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptDeriveKeyCapi<'a, P0>(hhash: *const ::core::ffi::c_void, htargetalg: P0, pbderivedkey: &mut [u8], dwflags: u32) -> ::windows::core::Result<()> +pub unsafe fn BCryptDeriveKeyCapi<'a, P0, P1>(hhash: P0, htargetalg: P1, pbderivedkey: &mut [u8], dwflags: u32) -> ::windows::core::Result<()> where - P0: ::std::convert::Into, + P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn BCryptDeriveKeyCapi(hhash: *const ::core::ffi::c_void, htargetalg: BCRYPT_ALG_HANDLE, pbderivedkey: *mut u8, cbderivedkey: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + fn BCryptDeriveKeyCapi(hhash: BCRYPT_HASH_HANDLE, htargetalg: BCRYPT_ALG_HANDLE, pbderivedkey: *mut u8, cbderivedkey: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; } - BCryptDeriveKeyCapi(::core::mem::transmute(hhash), htargetalg.into(), ::core::mem::transmute(pbderivedkey.as_ptr()), pbderivedkey.len() as _, dwflags).ok() + BCryptDeriveKeyCapi(hhash.into(), htargetalg.into(), ::core::mem::transmute(pbderivedkey.as_ptr()), pbderivedkey.len() as _, dwflags).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -2326,12 +2444,15 @@ where #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptDestroyHash(hhash: *mut ::core::ffi::c_void) -> ::windows::core::Result<()> { +pub unsafe fn BCryptDestroyHash<'a, P0>(hhash: P0) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn BCryptDestroyHash(hhash: *mut ::core::ffi::c_void) -> super::super::Foundation::NTSTATUS; + fn BCryptDestroyHash(hhash: BCRYPT_HASH_HANDLE) -> super::super::Foundation::NTSTATUS; } - BCryptDestroyHash(::core::mem::transmute(hhash)).ok() + BCryptDestroyHash(hhash.into()).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -2349,27 +2470,33 @@ where #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptDestroySecret(hsecret: *mut ::core::ffi::c_void) -> ::windows::core::Result<()> { +pub unsafe fn BCryptDestroySecret<'a, P0>(hsecret: P0) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn BCryptDestroySecret(hsecret: *mut ::core::ffi::c_void) -> super::super::Foundation::NTSTATUS; + fn BCryptDestroySecret(hsecret: BCRYPT_SECRET_HANDLE) -> super::super::Foundation::NTSTATUS; } - BCryptDestroySecret(::core::mem::transmute(hsecret)).ok() + BCryptDestroySecret(hsecret.into()).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptDuplicateHash(hhash: *const ::core::ffi::c_void, phnewhash: *mut *mut ::core::ffi::c_void, pbhashobject: ::core::option::Option<&mut u8>, cbhashobject: u32, dwflags: u32) -> ::windows::core::Result<()> { +pub unsafe fn BCryptDuplicateHash<'a, P0>(hhash: P0, phnewhash: &mut BCRYPT_HASH_HANDLE, pbhashobject: ::core::option::Option<&mut [u8]>, dwflags: u32) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn BCryptDuplicateHash(hhash: *const ::core::ffi::c_void, phnewhash: *mut *mut ::core::ffi::c_void, pbhashobject: *mut u8, cbhashobject: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + fn BCryptDuplicateHash(hhash: BCRYPT_HASH_HANDLE, phnewhash: *mut BCRYPT_HASH_HANDLE, pbhashobject: *mut u8, cbhashobject: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; } - BCryptDuplicateHash(::core::mem::transmute(hhash), ::core::mem::transmute(phnewhash), ::core::mem::transmute(pbhashobject), cbhashobject, dwflags).ok() + BCryptDuplicateHash(hhash.into(), ::core::mem::transmute(phnewhash), ::core::mem::transmute(pbhashobject.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pbhashobject.as_deref().map_or(0, |slice| slice.len() as _), dwflags).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptDuplicateKey<'a, P0>(hkey: P0, phnewkey: &mut BCRYPT_KEY_HANDLE, pbkeyobject: ::core::option::Option<&mut u8>, cbkeyobject: u32, dwflags: u32) -> ::windows::core::Result<()> +pub unsafe fn BCryptDuplicateKey<'a, P0>(hkey: P0, phnewkey: &mut BCRYPT_KEY_HANDLE, pbkeyobject: ::core::option::Option<&mut [u8]>, dwflags: u32) -> ::windows::core::Result<()> where P0: ::std::convert::Into, { @@ -2377,7 +2504,7 @@ where extern "system" { fn BCryptDuplicateKey(hkey: BCRYPT_KEY_HANDLE, phnewkey: *mut BCRYPT_KEY_HANDLE, pbkeyobject: *mut u8, cbkeyobject: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; } - BCryptDuplicateKey(hkey.into(), ::core::mem::transmute(phnewkey), ::core::mem::transmute(pbkeyobject), cbkeyobject, dwflags).ok() + BCryptDuplicateKey(hkey.into(), ::core::mem::transmute(phnewkey), ::core::mem::transmute(pbkeyobject.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pbkeyobject.as_deref().map_or(0, |slice| slice.len() as _), dwflags).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -2505,12 +2632,15 @@ where #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptFinishHash(hhash: *mut ::core::ffi::c_void, pboutput: &mut u8, cboutput: u32, dwflags: u32) -> ::windows::core::Result<()> { +pub unsafe fn BCryptFinishHash<'a, P0>(hhash: P0, pboutput: &mut [u8], dwflags: u32) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn BCryptFinishHash(hhash: *mut ::core::ffi::c_void, pboutput: *mut u8, cboutput: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + fn BCryptFinishHash(hhash: BCRYPT_HASH_HANDLE, pboutput: *mut u8, cboutput: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; } - BCryptFinishHash(::core::mem::transmute(hhash), ::core::mem::transmute(pboutput), cboutput, dwflags).ok() + BCryptFinishHash(hhash.into(), ::core::mem::transmute(pboutput.as_ptr()), pboutput.len() as _, dwflags).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`*"] #[inline] @@ -2550,7 +2680,7 @@ where #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptGenerateSymmetricKey<'a, P0>(halgorithm: P0, phkey: &mut BCRYPT_KEY_HANDLE, pbkeyobject: ::core::option::Option<&mut u8>, cbkeyobject: u32, pbsecret: &[u8], dwflags: u32) -> ::windows::core::Result<()> +pub unsafe fn BCryptGenerateSymmetricKey<'a, P0>(halgorithm: P0, phkey: &mut BCRYPT_KEY_HANDLE, pbkeyobject: ::core::option::Option<&mut [u8]>, pbsecret: &[u8], dwflags: u32) -> ::windows::core::Result<()> where P0: ::std::convert::Into, { @@ -2558,7 +2688,7 @@ where extern "system" { fn BCryptGenerateSymmetricKey(halgorithm: BCRYPT_ALG_HANDLE, phkey: *mut BCRYPT_KEY_HANDLE, pbkeyobject: *mut u8, cbkeyobject: u32, pbsecret: *const u8, cbsecret: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; } - BCryptGenerateSymmetricKey(halgorithm.into(), ::core::mem::transmute(phkey), ::core::mem::transmute(pbkeyobject), cbkeyobject, ::core::mem::transmute(pbsecret.as_ptr()), pbsecret.len() as _, dwflags).ok() + BCryptGenerateSymmetricKey(halgorithm.into(), ::core::mem::transmute(phkey), ::core::mem::transmute(pbkeyobject.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pbkeyobject.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pbsecret.as_ptr()), pbsecret.len() as _, dwflags).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -2573,20 +2703,21 @@ pub unsafe fn BCryptGetFipsAlgorithmMode(pfenabled: &mut u8) -> ::windows::core: #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptGetProperty<'a, P0>(hobject: *const ::core::ffi::c_void, pszproperty: P0, pboutput: ::core::option::Option<&mut [u8]>, pcbresult: &mut u32, dwflags: u32) -> ::windows::core::Result<()> +pub unsafe fn BCryptGetProperty<'a, P0, P1>(hobject: P0, pszproperty: P1, pboutput: ::core::option::Option<&mut [u8]>, pcbresult: &mut u32, dwflags: u32) -> ::windows::core::Result<()> where - P0: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn BCryptGetProperty(hobject: *const ::core::ffi::c_void, pszproperty: ::windows::core::PCWSTR, pboutput: *mut u8, cboutput: u32, pcbresult: *mut u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + fn BCryptGetProperty(hobject: BCRYPT_HANDLE, pszproperty: ::windows::core::PCWSTR, pboutput: *mut u8, cboutput: u32, pcbresult: *mut u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; } - BCryptGetProperty(::core::mem::transmute(hobject), pszproperty.into(), ::core::mem::transmute(pboutput.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pboutput.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pcbresult), dwflags).ok() + BCryptGetProperty(hobject.into(), pszproperty.into(), ::core::mem::transmute(pboutput.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pboutput.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pcbresult), dwflags).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptHash<'a, P0>(halgorithm: P0, pbsecret: ::core::option::Option<&[u8]>, pbinput: &[u8], pboutput: &mut u8, cboutput: u32) -> ::windows::core::Result<()> +pub unsafe fn BCryptHash<'a, P0>(halgorithm: P0, pbsecret: ::core::option::Option<&[u8]>, pbinput: &[u8], pboutput: &mut [u8]) -> ::windows::core::Result<()> where P0: ::std::convert::Into, { @@ -2594,22 +2725,25 @@ where extern "system" { fn BCryptHash(halgorithm: BCRYPT_ALG_HANDLE, pbsecret: *const u8, cbsecret: u32, pbinput: *const u8, cbinput: u32, pboutput: *mut u8, cboutput: u32) -> super::super::Foundation::NTSTATUS; } - BCryptHash(halgorithm.into(), ::core::mem::transmute(pbsecret.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pbsecret.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pbinput.as_ptr()), pbinput.len() as _, ::core::mem::transmute(pboutput), cboutput).ok() + BCryptHash(halgorithm.into(), ::core::mem::transmute(pbsecret.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pbsecret.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pbinput.as_ptr()), pbinput.len() as _, ::core::mem::transmute(pboutput.as_ptr()), pboutput.len() as _).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptHashData(hhash: *mut ::core::ffi::c_void, pbinput: &[u8], dwflags: u32) -> ::windows::core::Result<()> { +pub unsafe fn BCryptHashData<'a, P0>(hhash: P0, pbinput: &[u8], dwflags: u32) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn BCryptHashData(hhash: *mut ::core::ffi::c_void, pbinput: *const u8, cbinput: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + fn BCryptHashData(hhash: BCRYPT_HASH_HANDLE, pbinput: *const u8, cbinput: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; } - BCryptHashData(::core::mem::transmute(hhash), ::core::mem::transmute(pbinput.as_ptr()), pbinput.len() as _, dwflags).ok() + BCryptHashData(hhash.into(), ::core::mem::transmute(pbinput.as_ptr()), pbinput.len() as _, dwflags).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptImportKey<'a, P0, P1, P2>(halgorithm: P0, himportkey: P1, pszblobtype: P2, phkey: &mut BCRYPT_KEY_HANDLE, pbkeyobject: ::core::option::Option<&mut u8>, cbkeyobject: u32, pbinput: &[u8], dwflags: u32) -> ::windows::core::Result<()> +pub unsafe fn BCryptImportKey<'a, P0, P1, P2>(halgorithm: P0, himportkey: P1, pszblobtype: P2, phkey: &mut BCRYPT_KEY_HANDLE, pbkeyobject: ::core::option::Option<&mut [u8]>, pbinput: &[u8], dwflags: u32) -> ::windows::core::Result<()> where P0: ::std::convert::Into, P1: ::std::convert::Into, @@ -2619,7 +2753,7 @@ where extern "system" { fn BCryptImportKey(halgorithm: BCRYPT_ALG_HANDLE, himportkey: BCRYPT_KEY_HANDLE, pszblobtype: ::windows::core::PCWSTR, phkey: *mut BCRYPT_KEY_HANDLE, pbkeyobject: *mut u8, cbkeyobject: u32, pbinput: *const u8, cbinput: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; } - BCryptImportKey(halgorithm.into(), himportkey.into(), pszblobtype.into(), ::core::mem::transmute(phkey), ::core::mem::transmute(pbkeyobject), cbkeyobject, ::core::mem::transmute(pbinput.as_ptr()), pbinput.len() as _, dwflags).ok() + BCryptImportKey(halgorithm.into(), himportkey.into(), pszblobtype.into(), ::core::mem::transmute(phkey), ::core::mem::transmute(pbkeyobject.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pbkeyobject.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pbinput.as_ptr()), pbinput.len() as _, dwflags).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -2666,12 +2800,15 @@ where #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptProcessMultiOperations(hobject: *mut ::core::ffi::c_void, operationtype: BCRYPT_MULTI_OPERATION_TYPE, poperations: &[u8], dwflags: u32) -> ::windows::core::Result<()> { +pub unsafe fn BCryptProcessMultiOperations<'a, P0>(hobject: P0, operationtype: BCRYPT_MULTI_OPERATION_TYPE, poperations: &[u8], dwflags: u32) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn BCryptProcessMultiOperations(hobject: *mut ::core::ffi::c_void, operationtype: BCRYPT_MULTI_OPERATION_TYPE, poperations: *const ::core::ffi::c_void, cboperations: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + fn BCryptProcessMultiOperations(hobject: BCRYPT_HANDLE, operationtype: BCRYPT_MULTI_OPERATION_TYPE, poperations: *const ::core::ffi::c_void, cboperations: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; } - BCryptProcessMultiOperations(::core::mem::transmute(hobject), operationtype, ::core::mem::transmute(poperations.as_ptr()), poperations.len() as _, dwflags).ok() + BCryptProcessMultiOperations(hobject.into(), operationtype, ::core::mem::transmute(poperations.as_ptr()), poperations.len() as _, dwflags).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -2770,14 +2907,14 @@ where #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptSecretAgreement<'a, P0, P1>(hprivkey: P0, hpubkey: P1, phagreedsecret: *mut *mut ::core::ffi::c_void, dwflags: u32) -> ::windows::core::Result<()> +pub unsafe fn BCryptSecretAgreement<'a, P0, P1>(hprivkey: P0, hpubkey: P1, phagreedsecret: &mut BCRYPT_SECRET_HANDLE, dwflags: u32) -> ::windows::core::Result<()> where P0: ::std::convert::Into, P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn BCryptSecretAgreement(hprivkey: BCRYPT_KEY_HANDLE, hpubkey: BCRYPT_KEY_HANDLE, phagreedsecret: *mut *mut ::core::ffi::c_void, dwflags: u32) -> super::super::Foundation::NTSTATUS; + fn BCryptSecretAgreement(hprivkey: BCRYPT_KEY_HANDLE, hpubkey: BCRYPT_KEY_HANDLE, phagreedsecret: *mut BCRYPT_SECRET_HANDLE, dwflags: u32) -> super::super::Foundation::NTSTATUS; } BCryptSecretAgreement(hprivkey.into(), hpubkey.into(), ::core::mem::transmute(phagreedsecret), dwflags).ok() } @@ -2799,15 +2936,16 @@ where #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn BCryptSetProperty<'a, P0>(hobject: *mut ::core::ffi::c_void, pszproperty: P0, pbinput: &[u8], dwflags: u32) -> ::windows::core::Result<()> +pub unsafe fn BCryptSetProperty<'a, P0, P1>(hobject: P0, pszproperty: P1, pbinput: &[u8], dwflags: u32) -> ::windows::core::Result<()> where - P0: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn BCryptSetProperty(hobject: *mut ::core::ffi::c_void, pszproperty: ::windows::core::PCWSTR, pbinput: *const u8, cbinput: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; + fn BCryptSetProperty(hobject: BCRYPT_HANDLE, pszproperty: ::windows::core::PCWSTR, pbinput: *const u8, cbinput: u32, dwflags: u32) -> super::super::Foundation::NTSTATUS; } - BCryptSetProperty(::core::mem::transmute(hobject), pszproperty.into(), ::core::mem::transmute(pbinput.as_ptr()), pbinput.len() as _, dwflags).ok() + BCryptSetProperty(hobject.into(), pszproperty.into(), ::core::mem::transmute(pbinput.as_ptr()), pbinput.len() as _, dwflags).ok() } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -19399,12 +19537,12 @@ pub unsafe fn CertGetEnhancedKeyUsage(pcertcontext: &CERT_CONTEXT, dwflags: u32, #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn CertGetIntendedKeyUsage(dwcertencodingtype: u32, pcertinfo: &CERT_INFO, pbkeyusage: &mut u8, cbkeyusage: u32) -> super::super::Foundation::BOOL { +pub unsafe fn CertGetIntendedKeyUsage(dwcertencodingtype: u32, pcertinfo: &CERT_INFO, pbkeyusage: &mut [u8]) -> super::super::Foundation::BOOL { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn CertGetIntendedKeyUsage(dwcertencodingtype: u32, pcertinfo: *const CERT_INFO, pbkeyusage: *mut u8, cbkeyusage: u32) -> super::super::Foundation::BOOL; } - CertGetIntendedKeyUsage(dwcertencodingtype, ::core::mem::transmute(pcertinfo), ::core::mem::transmute(pbkeyusage), cbkeyusage) + CertGetIntendedKeyUsage(dwcertencodingtype, ::core::mem::transmute(pcertinfo), ::core::mem::transmute(pbkeyusage.as_ptr()), pbkeyusage.len() as _) } #[doc = "*Required features: `\"Win32_Security_Cryptography\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] diff --git a/crates/libs/windows/src/Windows/Win32/Security/EnterpriseData/mod.rs b/crates/libs/windows/src/Windows/Win32/Security/EnterpriseData/mod.rs index 12f501024b..3eab60db4a 100644 --- a/crates/libs/windows/src/Windows/Win32/Security/EnterpriseData/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Security/EnterpriseData/mod.rs @@ -60,7 +60,7 @@ impl ::core::ops::Not for ENTERPRISE_DATA_POLICIES { #[repr(C)] #[doc = "*Required features: `\"Win32_Security_EnterpriseData\"`*"] pub struct FILE_UNPROTECT_OPTIONS { - pub audit: bool, + pub audit: u8, } impl ::core::marker::Copy for FILE_UNPROTECT_OPTIONS {} impl ::core::clone::Clone for FILE_UNPROTECT_OPTIONS { diff --git a/crates/libs/windows/src/Windows/Win32/Storage/CloudFilters/mod.rs b/crates/libs/windows/src/Windows/Win32/Storage/CloudFilters/mod.rs index dd00463c5c..4a77abde4f 100644 --- a/crates/libs/windows/src/Windows/Win32/Storage/CloudFilters/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Storage/CloudFilters/mod.rs @@ -1357,7 +1357,7 @@ impl ::core::ops::Not for CF_CALLBACK_VALIDATE_DATA_FLAGS { } #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct CF_CONNECTION_KEY(pub isize); +pub struct CF_CONNECTION_KEY(pub i64); impl CF_CONNECTION_KEY { pub fn is_invalid(&self) -> bool { self.0 == -1 || self.0 == 0 diff --git a/crates/libs/windows/src/Windows/Win32/Storage/FileSystem/mod.rs b/crates/libs/windows/src/Windows/Win32/Storage/FileSystem/mod.rs index 26af34eb11..9b4074ab58 100644 --- a/crates/libs/windows/src/Windows/Win32/Storage/FileSystem/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/Storage/FileSystem/mod.rs @@ -4059,8 +4059,14 @@ pub const FILE_READ_ATTRIBUTES: FILE_ACCESS_FLAGS = FILE_ACCESS_FLAGS(128u32); #[doc = "*Required features: `\"Win32_Storage_FileSystem\"`*"] pub const FILE_WRITE_ATTRIBUTES: FILE_ACCESS_FLAGS = FILE_ACCESS_FLAGS(256u32); #[doc = "*Required features: `\"Win32_Storage_FileSystem\"`*"] +pub const DELETE: FILE_ACCESS_FLAGS = FILE_ACCESS_FLAGS(65536u32); +#[doc = "*Required features: `\"Win32_Storage_FileSystem\"`*"] pub const READ_CONTROL: FILE_ACCESS_FLAGS = FILE_ACCESS_FLAGS(131072u32); #[doc = "*Required features: `\"Win32_Storage_FileSystem\"`*"] +pub const WRITE_DAC: FILE_ACCESS_FLAGS = FILE_ACCESS_FLAGS(262144u32); +#[doc = "*Required features: `\"Win32_Storage_FileSystem\"`*"] +pub const WRITE_OWNER: FILE_ACCESS_FLAGS = FILE_ACCESS_FLAGS(524288u32); +#[doc = "*Required features: `\"Win32_Storage_FileSystem\"`*"] pub const SYNCHRONIZE: FILE_ACCESS_FLAGS = FILE_ACCESS_FLAGS(1048576u32); #[doc = "*Required features: `\"Win32_Storage_FileSystem\"`*"] pub const STANDARD_RIGHTS_REQUIRED: FILE_ACCESS_FLAGS = FILE_ACCESS_FLAGS(983040u32); @@ -4390,7 +4396,7 @@ impl ::core::fmt::Debug for FILE_DEVICE_TYPE { #[doc = "*Required features: `\"Win32_Storage_FileSystem\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct FILE_DISPOSITION_INFO { - pub DeleteFileA: super::super::Foundation::BOOLEAN, + pub DeleteFile: super::super::Foundation::BOOLEAN, } #[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for FILE_DISPOSITION_INFO {} @@ -4403,7 +4409,7 @@ impl ::core::clone::Clone for FILE_DISPOSITION_INFO { #[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for FILE_DISPOSITION_INFO { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("FILE_DISPOSITION_INFO").field("DeleteFileA", &self.DeleteFileA).finish() + f.debug_struct("FILE_DISPOSITION_INFO").field("DeleteFile", &self.DeleteFile).finish() } } #[cfg(feature = "Win32_Foundation")] @@ -6439,11 +6445,11 @@ where #[inline] pub unsafe fn FindNextFileW<'a, P0>(hfindfile: P0, lpfindfiledata: &mut WIN32_FIND_DATAW) -> super::super::Foundation::BOOL where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn FindNextFileW(hfindfile: super::super::Foundation::HANDLE, lpfindfiledata: *mut WIN32_FIND_DATAW) -> super::super::Foundation::BOOL; + fn FindNextFileW(hfindfile: FindFileHandle, lpfindfiledata: *mut WIN32_FIND_DATAW) -> super::super::Foundation::BOOL; } FindNextFileW(hfindfile.into(), ::core::mem::transmute(lpfindfiledata)) } diff --git a/crates/libs/windows/src/Windows/Win32/System/ApplicationInstallationAndServicing/mod.rs b/crates/libs/windows/src/Windows/Win32/System/ApplicationInstallationAndServicing/mod.rs index c33ec6cfd3..e6c01d5636 100644 --- a/crates/libs/windows/src/Windows/Win32/System/ApplicationInstallationAndServicing/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/ApplicationInstallationAndServicing/mod.rs @@ -288,7 +288,7 @@ impl ::core::default::Default for ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATI #[doc = "*Required features: `\"Win32_System_ApplicationInstallationAndServicing\"`*"] pub struct ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION { pub ElementCount: u32, - pub Elements: [COMPATIBILITY_CONTEXT_ELEMENT; 1], + pub Elements: *mut COMPATIBILITY_CONTEXT_ELEMENT, } impl ::core::marker::Copy for ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION {} impl ::core::clone::Clone for ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION { diff --git a/crates/libs/windows/src/Windows/Win32/System/Com/StructuredStorage/mod.rs b/crates/libs/windows/src/Windows/Win32/System/Com/StructuredStorage/mod.rs index 902ce891e8..99ee33cc9c 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Com/StructuredStorage/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Com/StructuredStorage/mod.rs @@ -2102,7 +2102,7 @@ impl ::core::default::Default for OLESTREAMVTBL { } #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] #[inline] -pub unsafe fn OleConvertIStorageToOLESTREAM<'a, P0>(pstg: P0, lpolestream: &mut OLESTREAM) -> ::windows::core::Result<()> +pub unsafe fn OleConvertIStorageToOLESTREAM<'a, P0>(pstg: P0) -> ::windows::core::Result where P0: ::std::convert::Into<::windows::core::InParam<'a, IStorage>>, { @@ -2110,43 +2110,45 @@ where extern "system" { fn OleConvertIStorageToOLESTREAM(pstg: *mut ::core::ffi::c_void, lpolestream: *mut OLESTREAM) -> ::windows::core::HRESULT; } - OleConvertIStorageToOLESTREAM(pstg.into().abi(), ::core::mem::transmute(lpolestream)).ok() + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + OleConvertIStorageToOLESTREAM(pstg.into().abi(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] #[inline] -pub unsafe fn OleConvertIStorageToOLESTREAMEx<'a, P0>(pstg: P0, cfformat: u16, lwidth: i32, lheight: i32, dwsize: u32, pmedium: &mut super::STGMEDIUM, polestm: &mut OLESTREAM) -> ::windows::core::Result<()> +pub unsafe fn OleConvertIStorageToOLESTREAMEx<'a, P0>(pstg: P0, cfformat: u16, lwidth: i32, lheight: i32, dwsize: u32, pmedium: &super::STGMEDIUM) -> ::windows::core::Result where P0: ::std::convert::Into<::windows::core::InParam<'a, IStorage>>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleConvertIStorageToOLESTREAMEx(pstg: *mut ::core::ffi::c_void, cfformat: u16, lwidth: i32, lheight: i32, dwsize: u32, pmedium: *mut super::STGMEDIUM, polestm: *mut OLESTREAM) -> ::windows::core::HRESULT; + fn OleConvertIStorageToOLESTREAMEx(pstg: *mut ::core::ffi::c_void, cfformat: u16, lwidth: i32, lheight: i32, dwsize: u32, pmedium: *const super::STGMEDIUM, polestm: *mut OLESTREAM) -> ::windows::core::HRESULT; } - OleConvertIStorageToOLESTREAMEx(pstg.into().abi(), cfformat, lwidth, lheight, dwsize, ::core::mem::transmute(pmedium), ::core::mem::transmute(polestm)).ok() + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + OleConvertIStorageToOLESTREAMEx(pstg.into().abi(), cfformat, lwidth, lheight, dwsize, ::core::mem::transmute(pmedium), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] #[inline] -pub unsafe fn OleConvertOLESTREAMToIStorage<'a, P0>(lpolestream: &mut OLESTREAM, pstg: P0, ptd: &super::DVTARGETDEVICE) -> ::windows::core::Result<()> +pub unsafe fn OleConvertOLESTREAMToIStorage<'a, P0>(lpolestream: &OLESTREAM, pstg: P0, ptd: &super::DVTARGETDEVICE) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, IStorage>>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleConvertOLESTREAMToIStorage(lpolestream: *mut OLESTREAM, pstg: *mut ::core::ffi::c_void, ptd: *const super::DVTARGETDEVICE) -> ::windows::core::HRESULT; + fn OleConvertOLESTREAMToIStorage(lpolestream: *const OLESTREAM, pstg: *mut ::core::ffi::c_void, ptd: *const super::DVTARGETDEVICE) -> ::windows::core::HRESULT; } OleConvertOLESTREAMToIStorage(::core::mem::transmute(lpolestream), pstg.into().abi(), ::core::mem::transmute(ptd)).ok() } #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] #[inline] -pub unsafe fn OleConvertOLESTREAMToIStorageEx<'a, P0>(polestm: &mut OLESTREAM, pstg: P0, pcfformat: &mut u16, plwwidth: &mut i32, plheight: &mut i32, pdwsize: &mut u32, pmedium: &mut super::STGMEDIUM) -> ::windows::core::Result<()> +pub unsafe fn OleConvertOLESTREAMToIStorageEx<'a, P0>(polestm: &OLESTREAM, pstg: P0, pcfformat: &mut u16, plwwidth: &mut i32, plheight: &mut i32, pdwsize: &mut u32, pmedium: &mut super::STGMEDIUM) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, IStorage>>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleConvertOLESTREAMToIStorageEx(polestm: *mut OLESTREAM, pstg: *mut ::core::ffi::c_void, pcfformat: *mut u16, plwwidth: *mut i32, plheight: *mut i32, pdwsize: *mut u32, pmedium: *mut super::STGMEDIUM) -> ::windows::core::HRESULT; + fn OleConvertOLESTREAMToIStorageEx(polestm: *const OLESTREAM, pstg: *mut ::core::ffi::c_void, pcfformat: *mut u16, plwwidth: *mut i32, plheight: *mut i32, pdwsize: *mut u32, pmedium: *mut super::STGMEDIUM) -> ::windows::core::HRESULT; } OleConvertOLESTREAMToIStorageEx(::core::mem::transmute(polestm), pstg.into().abi(), ::core::mem::transmute(pcfformat), ::core::mem::transmute(plwwidth), ::core::mem::transmute(plheight), ::core::mem::transmute(pdwsize), ::core::mem::transmute(pmedium)).ok() } @@ -2309,7 +2311,7 @@ pub struct PMemoryAllocator(pub u8); #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`*"] pub struct PROPBAG2 { pub dwType: u32, - pub vt: u16, + pub vt: super::VARENUM, pub cfType: u16, pub dwHint: u32, pub pstrName: ::windows::core::PWSTR, @@ -2498,7 +2500,7 @@ impl ::core::default::Default for PROPVARIANT_0 { #[doc = "*Required features: `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct PROPVARIANT_0_0 { - pub vt: u16, + pub vt: super::VARENUM, pub wReserved1: u16, pub wReserved2: u16, pub wReserved3: u16, @@ -2844,7 +2846,7 @@ impl ::core::default::Default for STATPROPSETSTG { pub struct STATPROPSTG { pub lpwstrName: ::windows::core::PWSTR, pub propid: u32, - pub vt: u16, + pub vt: super::VARENUM, } impl ::core::marker::Copy for STATPROPSTG {} impl ::core::clone::Clone for STATPROPSTG { diff --git a/crates/libs/windows/src/Windows/Win32/System/Com/Urlmon/mod.rs b/crates/libs/windows/src/Windows/Win32/System/Com/Urlmon/mod.rs index 94cf4499d4..1f99d23600 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Com/Urlmon/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Com/Urlmon/mod.rs @@ -2391,8 +2391,8 @@ impl IInternetHostSecurityManager { pub unsafe fn GetSecurityId(&self, pbsecurityid: *mut u8, pcbsecurityid: &mut u32, dwreserved: usize) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetSecurityId)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pbsecurityid), ::core::mem::transmute(pcbsecurityid), dwreserved).ok() } - pub unsafe fn ProcessUrlAction(&self, dwaction: u32, ppolicy: &mut u8, cbpolicy: u32, pcontext: ::core::option::Option<&[u8]>, dwflags: u32, dwreserved: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).ProcessUrlAction)(::windows::core::Interface::as_raw(self), dwaction, ::core::mem::transmute(ppolicy), cbpolicy, ::core::mem::transmute(pcontext.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pcontext.as_deref().map_or(0, |slice| slice.len() as _), dwflags, dwreserved).ok() + pub unsafe fn ProcessUrlAction(&self, dwaction: u32, ppolicy: &mut [u8], pcontext: ::core::option::Option<&[u8]>, dwflags: u32, dwreserved: u32) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).ProcessUrlAction)(::windows::core::Interface::as_raw(self), dwaction, ::core::mem::transmute(ppolicy.as_ptr()), ppolicy.len() as _, ::core::mem::transmute(pcontext.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pcontext.as_deref().map_or(0, |slice| slice.len() as _), dwflags, dwreserved).ok() } pub unsafe fn QueryCustomPolicy(&self, guidkey: &::windows::core::GUID, pppolicy: *mut *mut u8, pcbpolicy: &mut u32, pcontext: &[u8], dwreserved: u32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).QueryCustomPolicy)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(guidkey), ::core::mem::transmute(pppolicy), ::core::mem::transmute(pcbpolicy), ::core::mem::transmute(pcontext.as_ptr()), pcontext.len() as _, dwreserved).ok() diff --git a/crates/libs/windows/src/Windows/Win32/System/Com/impl.rs b/crates/libs/windows/src/Windows/Win32/System/Com/impl.rs index ccf9921e61..50ce20f85c 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Com/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Com/impl.rs @@ -1484,7 +1484,7 @@ impl IDataAdviseHolder_Vtbl { pub trait IDataObject_Impl: Sized { fn GetData(&self, pformatetcin: *const FORMATETC) -> ::windows::core::Result; fn GetDataHere(&self, pformatetc: *const FORMATETC, pmedium: *mut STGMEDIUM) -> ::windows::core::Result<()>; - fn QueryGetData(&self, pformatetc: *const FORMATETC) -> ::windows::core::Result<()>; + fn QueryGetData(&self, pformatetc: *const FORMATETC) -> ::windows::core::HRESULT; fn GetCanonicalFormatEtc(&self, pformatectin: *const FORMATETC, pformatetcout: *mut FORMATETC) -> ::windows::core::HRESULT; fn SetData(&self, pformatetc: *const FORMATETC, pmedium: *const STGMEDIUM, frelease: super::super::Foundation::BOOL) -> ::windows::core::Result<()>; fn EnumFormatEtc(&self, dwdirection: u32) -> ::windows::core::Result; @@ -1516,7 +1516,7 @@ impl IDataObject_Vtbl { unsafe extern "system" fn QueryGetData, Impl: IDataObject_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pformatetc: *const FORMATETC) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); - this.QueryGetData(::core::mem::transmute_copy(&pformatetc)).into() + this.QueryGetData(::core::mem::transmute_copy(&pformatetc)) } unsafe extern "system" fn GetCanonicalFormatEtc, Impl: IDataObject_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pformatectin: *const FORMATETC, pformatetcout: *mut FORMATETC) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; diff --git a/crates/libs/windows/src/Windows/Win32/System/Com/mod.rs b/crates/libs/windows/src/Windows/Win32/System/Com/mod.rs index e8a7ab74d1..aa4118acb8 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Com/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Com/mod.rs @@ -897,7 +897,7 @@ impl ::core::default::Default for BIND_OPTS { #[repr(C)] #[doc = "*Required features: `\"Win32_System_Com\"`*"] pub struct BIND_OPTS2 { - pub __AnonymousBase_objidl_L9017_C36: BIND_OPTS, + pub Base: BIND_OPTS, pub dwTrackFlags: u32, pub dwClassContext: u32, pub locale: u32, @@ -911,7 +911,7 @@ impl ::core::clone::Clone for BIND_OPTS2 { } impl ::core::fmt::Debug for BIND_OPTS2 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("BIND_OPTS2").field("__AnonymousBase_objidl_L9017_C36", &self.__AnonymousBase_objidl_L9017_C36).field("dwTrackFlags", &self.dwTrackFlags).field("dwClassContext", &self.dwClassContext).field("locale", &self.locale).field("pServerInfo", &self.pServerInfo).finish() + f.debug_struct("BIND_OPTS2").field("Base", &self.Base).field("dwTrackFlags", &self.dwTrackFlags).field("dwClassContext", &self.dwClassContext).field("locale", &self.locale).field("pServerInfo", &self.pServerInfo).finish() } } unsafe impl ::windows::core::Abi for BIND_OPTS2 { @@ -932,7 +932,7 @@ impl ::core::default::Default for BIND_OPTS2 { #[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct BIND_OPTS3 { - pub __AnonymousBase_objidl_L9041_C36: BIND_OPTS2, + pub Base: BIND_OPTS2, pub hwnd: super::super::Foundation::HWND, } #[cfg(feature = "Win32_Foundation")] @@ -946,7 +946,7 @@ impl ::core::clone::Clone for BIND_OPTS3 { #[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for BIND_OPTS3 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("BIND_OPTS3").field("__AnonymousBase_objidl_L9041_C36", &self.__AnonymousBase_objidl_L9041_C36).field("hwnd", &self.hwnd).finish() + f.debug_struct("BIND_OPTS3").field("Base", &self.Base).field("hwnd", &self.hwnd).finish() } } #[cfg(feature = "Win32_Foundation")] @@ -5983,8 +5983,8 @@ impl IDataObject { pub unsafe fn GetDataHere(&self, pformatetc: &FORMATETC, pmedium: &mut STGMEDIUM) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetDataHere)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pformatetc), ::core::mem::transmute(pmedium)).ok() } - pub unsafe fn QueryGetData(&self, pformatetc: &FORMATETC) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).QueryGetData)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pformatetc)).ok() + pub unsafe fn QueryGetData(&self, pformatetc: &FORMATETC) -> ::windows::core::HRESULT { + (::windows::core::Interface::vtable(self).QueryGetData)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pformatetc)) } pub unsafe fn GetCanonicalFormatEtc(&self, pformatectin: &FORMATETC, pformatetcout: &mut FORMATETC) -> ::windows::core::HRESULT { (::windows::core::Interface::vtable(self).GetCanonicalFormatEtc)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pformatectin), ::core::mem::transmute(pformatetcout)) @@ -13550,7 +13550,7 @@ impl ::core::default::Default for TYPEATTR { #[cfg(feature = "Win32_System_Ole")] pub struct TYPEDESC { pub Anonymous: TYPEDESC_0, - pub vt: u16, + pub vt: VARENUM, } #[cfg(feature = "Win32_System_Ole")] impl ::core::marker::Copy for TYPEDESC {} @@ -13916,6 +13916,133 @@ impl ::core::default::Default for VARDESC_0 { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct VARENUM(pub u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_EMPTY: VARENUM = VARENUM(0u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_NULL: VARENUM = VARENUM(1u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_I2: VARENUM = VARENUM(2u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_I4: VARENUM = VARENUM(3u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_R4: VARENUM = VARENUM(4u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_R8: VARENUM = VARENUM(5u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_CY: VARENUM = VARENUM(6u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_DATE: VARENUM = VARENUM(7u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_BSTR: VARENUM = VARENUM(8u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_DISPATCH: VARENUM = VARENUM(9u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_ERROR: VARENUM = VARENUM(10u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_BOOL: VARENUM = VARENUM(11u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_VARIANT: VARENUM = VARENUM(12u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_UNKNOWN: VARENUM = VARENUM(13u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_DECIMAL: VARENUM = VARENUM(14u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_I1: VARENUM = VARENUM(16u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_UI1: VARENUM = VARENUM(17u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_UI2: VARENUM = VARENUM(18u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_UI4: VARENUM = VARENUM(19u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_I8: VARENUM = VARENUM(20u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_UI8: VARENUM = VARENUM(21u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_INT: VARENUM = VARENUM(22u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_UINT: VARENUM = VARENUM(23u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_VOID: VARENUM = VARENUM(24u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_HRESULT: VARENUM = VARENUM(25u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_PTR: VARENUM = VARENUM(26u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_SAFEARRAY: VARENUM = VARENUM(27u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_CARRAY: VARENUM = VARENUM(28u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_USERDEFINED: VARENUM = VARENUM(29u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_LPSTR: VARENUM = VARENUM(30u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_LPWSTR: VARENUM = VARENUM(31u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_RECORD: VARENUM = VARENUM(36u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_INT_PTR: VARENUM = VARENUM(37u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_UINT_PTR: VARENUM = VARENUM(38u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_FILETIME: VARENUM = VARENUM(64u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_BLOB: VARENUM = VARENUM(65u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_STREAM: VARENUM = VARENUM(66u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_STORAGE: VARENUM = VARENUM(67u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_STREAMED_OBJECT: VARENUM = VARENUM(68u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_STORED_OBJECT: VARENUM = VARENUM(69u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_BLOB_OBJECT: VARENUM = VARENUM(70u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_CF: VARENUM = VARENUM(71u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_CLSID: VARENUM = VARENUM(72u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_VERSIONED_STREAM: VARENUM = VARENUM(73u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_BSTR_BLOB: VARENUM = VARENUM(4095u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_VECTOR: VARENUM = VARENUM(4096u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_ARRAY: VARENUM = VARENUM(8192u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_BYREF: VARENUM = VARENUM(16384u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_RESERVED: VARENUM = VARENUM(32768u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_ILLEGAL: VARENUM = VARENUM(65535u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_ILLEGALMASKED: VARENUM = VARENUM(4095u16); +#[doc = "*Required features: `\"Win32_System_Com\"`*"] +pub const VT_TYPEMASK: VARENUM = VARENUM(4095u16); +impl ::core::marker::Copy for VARENUM {} +impl ::core::clone::Clone for VARENUM { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for VARENUM { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for VARENUM { + type Abi = Self; +} +impl ::core::fmt::Debug for VARENUM { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("VARENUM").field(&self.0).finish() + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))] @@ -13981,7 +14108,7 @@ impl ::core::default::Default for VARIANT_0 { #[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_Foundation\"`, `\"Win32_System_Ole\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole"))] pub struct VARIANT_0_0 { - pub vt: u16, + pub vt: VARENUM, pub wReserved1: u16, pub wReserved2: u16, pub wReserved3: u16, diff --git a/crates/libs/windows/src/Windows/Win32/System/Console/mod.rs b/crates/libs/windows/src/Windows/Win32/System/Console/mod.rs index c3726bc122..f5bb7bbe4c 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Console/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Console/mod.rs @@ -53,14 +53,6 @@ pub unsafe fn AttachConsole(dwprocessid: u32) -> super::super::Foundation::BOOL AttachConsole(dwprocessid) } #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const BACKGROUND_BLUE: u32 = 16u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const BACKGROUND_GREEN: u32 = 32u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const BACKGROUND_INTENSITY: u32 = 128u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const BACKGROUND_RED: u32 = 64u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] pub const CAPSLOCK_ON: u32 = 128u32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Console\"`, `\"Win32_Foundation\"`*"] @@ -129,21 +121,88 @@ impl ::core::default::Default for CHAR_INFO_0 { } } #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_GRID_HORIZONTAL: u32 = 1024u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CONSOLE_CHARACTER_ATTRIBUTES(pub u16); +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const FOREGROUND_BLUE: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(1u16); +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const FOREGROUND_GREEN: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(2u16); +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const FOREGROUND_RED: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(4u16); +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const FOREGROUND_INTENSITY: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(8u16); +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const BACKGROUND_BLUE: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(16u16); +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const BACKGROUND_GREEN: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(32u16); +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const BACKGROUND_RED: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(64u16); +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const BACKGROUND_INTENSITY: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(128u16); #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_GRID_LVERTICAL: u32 = 2048u32; +pub const COMMON_LVB_LEADING_BYTE: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(256u16); #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_GRID_RVERTICAL: u32 = 4096u32; +pub const COMMON_LVB_TRAILING_BYTE: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(512u16); #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_LEADING_BYTE: u32 = 256u32; +pub const COMMON_LVB_GRID_HORIZONTAL: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(1024u16); #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_REVERSE_VIDEO: u32 = 16384u32; +pub const COMMON_LVB_GRID_LVERTICAL: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(2048u16); #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_SBCSDBCS: u32 = 768u32; +pub const COMMON_LVB_GRID_RVERTICAL: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(4096u16); #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_TRAILING_BYTE: u32 = 512u32; +pub const COMMON_LVB_REVERSE_VIDEO: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(16384u16); #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const COMMON_LVB_UNDERSCORE: u32 = 32768u32; +pub const COMMON_LVB_UNDERSCORE: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(32768u16); +#[doc = "*Required features: `\"Win32_System_Console\"`*"] +pub const COMMON_LVB_SBCSDBCS: CONSOLE_CHARACTER_ATTRIBUTES = CONSOLE_CHARACTER_ATTRIBUTES(768u16); +impl ::core::marker::Copy for CONSOLE_CHARACTER_ATTRIBUTES {} +impl ::core::clone::Clone for CONSOLE_CHARACTER_ATTRIBUTES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for CONSOLE_CHARACTER_ATTRIBUTES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for CONSOLE_CHARACTER_ATTRIBUTES { + type Abi = Self; +} +impl ::core::fmt::Debug for CONSOLE_CHARACTER_ATTRIBUTES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CONSOLE_CHARACTER_ATTRIBUTES").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for CONSOLE_CHARACTER_ATTRIBUTES { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for CONSOLE_CHARACTER_ATTRIBUTES { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for CONSOLE_CHARACTER_ATTRIBUTES { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for CONSOLE_CHARACTER_ATTRIBUTES { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for CONSOLE_CHARACTER_ATTRIBUTES { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_System_Console\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -413,7 +472,7 @@ impl ::core::default::Default for CONSOLE_READCONSOLE_CONTROL { pub struct CONSOLE_SCREEN_BUFFER_INFO { pub dwSize: COORD, pub dwCursorPosition: COORD, - pub wAttributes: u16, + pub wAttributes: CONSOLE_CHARACTER_ATTRIBUTES, pub srWindow: SMALL_RECT, pub dwMaximumWindowSize: COORD, } @@ -449,12 +508,12 @@ pub struct CONSOLE_SCREEN_BUFFER_INFOEX { pub cbSize: u32, pub dwSize: COORD, pub dwCursorPosition: COORD, - pub wAttributes: u16, + pub wAttributes: CONSOLE_CHARACTER_ATTRIBUTES, pub srWindow: SMALL_RECT, pub dwMaximumWindowSize: COORD, pub wPopupAttributes: u16, pub bFullscreenSupported: super::super::Foundation::BOOL, - pub ColorTable: [u32; 16], + pub ColorTable: [super::super::Foundation::COLORREF; 16], } #[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for CONSOLE_SCREEN_BUFFER_INFOEX {} @@ -676,14 +735,6 @@ impl ::core::default::Default for FOCUS_EVENT_RECORD { } } #[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const FOREGROUND_BLUE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const FOREGROUND_GREEN: u32 = 2u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const FOREGROUND_INTENSITY: u32 = 8u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] -pub const FOREGROUND_RED: u32 = 4u32; -#[doc = "*Required features: `\"Win32_System_Console\"`*"] pub const FROM_LEFT_1ST_BUTTON_PRESSED: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_Console\"`*"] pub const FROM_LEFT_2ND_BUTTON_PRESSED: u32 = 4u32; @@ -1854,13 +1905,13 @@ where #[doc = "*Required features: `\"Win32_System_Console\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn SetConsoleTextAttribute<'a, P0>(hconsoleoutput: P0, wattributes: u16) -> super::super::Foundation::BOOL +pub unsafe fn SetConsoleTextAttribute<'a, P0>(hconsoleoutput: P0, wattributes: CONSOLE_CHARACTER_ATTRIBUTES) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SetConsoleTextAttribute(hconsoleoutput: super::super::Foundation::HANDLE, wattributes: u16) -> super::super::Foundation::BOOL; + fn SetConsoleTextAttribute(hconsoleoutput: super::super::Foundation::HANDLE, wattributes: CONSOLE_CHARACTER_ATTRIBUTES) -> super::super::Foundation::BOOL; } SetConsoleTextAttribute(hconsoleoutput.into(), wattributes) } diff --git a/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Debug/impl.rs b/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Debug/impl.rs index a5aea06754..e731919f3a 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Debug/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Debug/impl.rs @@ -20245,7 +20245,7 @@ impl IDebugDocumentHelper64_Vtbl { } #[cfg(feature = "Win32_Foundation")] pub trait IDebugDocumentHost_Impl: Sized { - fn GetDeferredText(&self, dwtextstartcookie: u32, pchartext: ::windows::core::PWSTR, pstatextattr: *mut u16, pcnumchars: *mut u32, cmaxchars: u32) -> ::windows::core::Result<()>; + fn GetDeferredText(&self, dwtextstartcookie: u32, pchartext: &::windows::core::PWSTR, pstatextattr: *mut u16, pcnumchars: *mut u32, cmaxchars: u32) -> ::windows::core::Result<()>; fn GetScriptTextAttributes(&self, pstrcode: &::windows::core::PCWSTR, unumcodechars: u32, pstrdelimiter: &::windows::core::PCWSTR, dwflags: u32, pattr: *mut u16) -> ::windows::core::Result<()>; fn OnCreateDocumentContext(&self) -> ::windows::core::Result<::windows::core::IUnknown>; fn GetPathName(&self, pbstrlongname: *mut super::super::super::Foundation::BSTR, pfisoriginalfile: *mut super::super::super::Foundation::BOOL) -> ::windows::core::Result<()>; @@ -20260,7 +20260,7 @@ impl IDebugDocumentHost_Vtbl { unsafe extern "system" fn GetDeferredText, Impl: IDebugDocumentHost_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, dwtextstartcookie: u32, pchartext: ::windows::core::PWSTR, pstatextattr: *mut u16, pcnumchars: *mut u32, cmaxchars: u32) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); - this.GetDeferredText(::core::mem::transmute_copy(&dwtextstartcookie), ::core::mem::transmute_copy(&pchartext), ::core::mem::transmute_copy(&pstatextattr), ::core::mem::transmute_copy(&pcnumchars), ::core::mem::transmute_copy(&cmaxchars)).into() + this.GetDeferredText(::core::mem::transmute_copy(&dwtextstartcookie), ::core::mem::transmute(&pchartext), ::core::mem::transmute_copy(&pstatextattr), ::core::mem::transmute_copy(&pcnumchars), ::core::mem::transmute_copy(&cmaxchars)).into() } unsafe extern "system" fn GetScriptTextAttributes, Impl: IDebugDocumentHost_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pstrcode: ::windows::core::PCWSTR, unumcodechars: u32, pstrdelimiter: ::windows::core::PCWSTR, dwflags: u32, pattr: *mut u16) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; @@ -20387,7 +20387,7 @@ pub trait IDebugDocumentText_Impl: Sized + IDebugDocumentInfo_Impl + IDebugDocum fn GetSize(&self, pcnumlines: *mut u32, pcnumchars: *mut u32) -> ::windows::core::Result<()>; fn GetPositionOfLine(&self, clinenumber: u32) -> ::windows::core::Result; fn GetLineOfPosition(&self, ccharacterposition: u32, pclinenumber: *mut u32, pccharacteroffsetinline: *mut u32) -> ::windows::core::Result<()>; - fn GetText(&self, ccharacterposition: u32, pchartext: ::windows::core::PWSTR, pstatextattr: *mut u16, pcnumchars: *mut u32, cmaxchars: u32) -> ::windows::core::Result<()>; + fn GetText(&self, ccharacterposition: u32, pchartext: &::windows::core::PWSTR, pstatextattr: *mut u16, pcnumchars: *mut u32, cmaxchars: u32) -> ::windows::core::Result<()>; fn GetPositionOfContext(&self, psc: &::core::option::Option, pccharacterposition: *mut u32, cnumchars: *mut u32) -> ::windows::core::Result<()>; fn GetContextOfPosition(&self, ccharacterposition: u32, cnumchars: u32) -> ::windows::core::Result; } @@ -20431,7 +20431,7 @@ impl IDebugDocumentText_Vtbl { unsafe extern "system" fn GetText, Impl: IDebugDocumentText_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, ccharacterposition: u32, pchartext: ::windows::core::PWSTR, pstatextattr: *mut u16, pcnumchars: *mut u32, cmaxchars: u32) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); - this.GetText(::core::mem::transmute_copy(&ccharacterposition), ::core::mem::transmute_copy(&pchartext), ::core::mem::transmute_copy(&pstatextattr), ::core::mem::transmute_copy(&pcnumchars), ::core::mem::transmute_copy(&cmaxchars)).into() + this.GetText(::core::mem::transmute_copy(&ccharacterposition), ::core::mem::transmute(&pchartext), ::core::mem::transmute_copy(&pstatextattr), ::core::mem::transmute_copy(&pcnumchars), ::core::mem::transmute_copy(&cmaxchars)).into() } unsafe extern "system" fn GetPositionOfContext, Impl: IDebugDocumentText_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, psc: *mut ::core::ffi::c_void, pccharacterposition: *mut u32, cnumchars: *mut u32) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; @@ -21126,7 +21126,7 @@ impl IDebugExtendedProperty_Vtbl { pub trait IDebugFormatter_Impl: Sized { fn GetStringForVariant(&self, pvar: *const super::super::Com::VARIANT, nradix: u32) -> ::windows::core::Result; fn GetVariantForString(&self, pwstrvalue: &::windows::core::PCWSTR) -> ::windows::core::Result; - fn GetStringForVarType(&self, vt: u16, ptdescarraytype: *const super::super::Com::TYPEDESC) -> ::windows::core::Result; + fn GetStringForVarType(&self, vt: super::super::Com::VARENUM, ptdescarraytype: *const super::super::Com::TYPEDESC) -> ::windows::core::Result; } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))] impl ::windows::core::RuntimeName for IDebugFormatter {} @@ -21155,7 +21155,7 @@ impl IDebugFormatter_Vtbl { ::core::result::Result::Err(err) => err.into(), } } - unsafe extern "system" fn GetStringForVarType, Impl: IDebugFormatter_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, vt: u16, ptdescarraytype: *const super::super::Com::TYPEDESC, pbstr: *mut super::super::super::Foundation::BSTR) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetStringForVarType, Impl: IDebugFormatter_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, vt: super::super::Com::VARENUM, ptdescarraytype: *const super::super::Com::TYPEDESC, pbstr: *mut super::super::super::Foundation::BSTR) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetStringForVarType(::core::mem::transmute_copy(&vt), ::core::mem::transmute_copy(&ptdescarraytype)) { @@ -31398,7 +31398,7 @@ pub trait IModelObject_Impl: Sized { fn GetContext(&self) -> ::windows::core::Result; fn GetKind(&self) -> ::windows::core::Result; fn GetIntrinsicValue(&self) -> ::windows::core::Result; - fn GetIntrinsicValueAs(&self, vt: u16) -> ::windows::core::Result; + fn GetIntrinsicValueAs(&self, vt: super::super::Com::VARENUM) -> ::windows::core::Result; fn GetKeyValue(&self, key: &::windows::core::PCWSTR, object: *mut ::core::option::Option, metadata: *mut ::core::option::Option) -> ::windows::core::Result<()>; fn SetKeyValue(&self, key: &::windows::core::PCWSTR, object: &::core::option::Option) -> ::windows::core::Result<()>; fn EnumerateKeyValues(&self) -> ::windows::core::Result; @@ -31467,7 +31467,7 @@ impl IModelObject_Vtbl { ::core::result::Result::Err(err) => err.into(), } } - unsafe extern "system" fn GetIntrinsicValueAs, Impl: IModelObject_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, vt: u16, intrinsicdata: *mut super::super::Com::VARIANT) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetIntrinsicValueAs, Impl: IModelObject_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, vt: super::super::Com::VARENUM, intrinsicdata: *mut super::super::Com::VARIANT) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetIntrinsicValueAs(::core::mem::transmute_copy(&vt)) { diff --git a/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Debug/mod.rs b/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Debug/mod.rs index f461209b1a..8bc19e5ced 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Debug/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Debug/mod.rs @@ -29681,7 +29681,7 @@ impl IDebugFormatter { } #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))] - pub unsafe fn GetStringForVarType(&self, vt: u16, ptdescarraytype: &super::super::Com::TYPEDESC) -> ::windows::core::Result { + pub unsafe fn GetStringForVarType(&self, vt: super::super::Com::VARENUM, ptdescarraytype: &super::super::Com::TYPEDESC) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); (::windows::core::Interface::vtable(self).GetStringForVarType)(::windows::core::Interface::as_raw(self), vt, ::core::mem::transmute(ptdescarraytype), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } @@ -29734,7 +29734,7 @@ pub struct IDebugFormatter_Vtbl { #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))] GetVariantForString: usize, #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))] - pub GetStringForVarType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vt: u16, ptdescarraytype: *const super::super::Com::TYPEDESC, pbstr: *mut super::super::super::Foundation::BSTR) -> ::windows::core::HRESULT, + pub GetStringForVarType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vt: super::super::Com::VARENUM, ptdescarraytype: *const super::super::Com::TYPEDESC, pbstr: *mut super::super::super::Foundation::BSTR) -> ::windows::core::HRESULT, #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))] GetStringForVarType: usize, } @@ -43918,7 +43918,7 @@ impl IModelObject { } #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))] - pub unsafe fn GetIntrinsicValueAs(&self, vt: u16) -> ::windows::core::Result { + pub unsafe fn GetIntrinsicValueAs(&self, vt: super::super::Com::VARENUM) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); (::windows::core::Interface::vtable(self).GetIntrinsicValueAs)(::windows::core::Interface::as_raw(self), vt, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } @@ -44119,7 +44119,7 @@ pub struct IModelObject_Vtbl { #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))] GetIntrinsicValue: usize, #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))] - pub GetIntrinsicValueAs: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vt: u16, intrinsicdata: *mut super::super::Com::VARIANT) -> ::windows::core::HRESULT, + pub GetIntrinsicValueAs: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vt: super::super::Com::VARENUM, intrinsicdata: *mut super::super::Com::VARIANT) -> ::windows::core::HRESULT, #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))] GetIntrinsicValueAs: usize, pub GetKeyValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, key: ::windows::core::PCWSTR, object: *mut *mut ::core::ffi::c_void, metadata: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, @@ -56440,7 +56440,7 @@ impl ::core::default::Default for ScriptDebugEventInformation_0_0 { #[repr(C)] #[doc = "*Required features: `\"Win32_System_Diagnostics_Debug\"`*"] pub struct ScriptDebugEventInformation_0_1 { - pub IsUncaught: bool, + pub IsUncaught: u8, } impl ::core::marker::Copy for ScriptDebugEventInformation_0_1 {} impl ::core::clone::Clone for ScriptDebugEventInformation_0_1 { diff --git a/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Etw/impl.rs b/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Etw/impl.rs index 8edaa5e025..4dbdbbb412 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Etw/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Etw/impl.rs @@ -149,11 +149,11 @@ impl ITraceEventCallback_Vtbl { } #[cfg(feature = "Win32_Foundation")] pub trait ITraceRelogger_Impl: Sized { - fn AddLogfileTraceStream(&self, logfilename: &super::super::super::Foundation::BSTR, usercontext: *const ::core::ffi::c_void) -> ::windows::core::Result; - fn AddRealtimeTraceStream(&self, loggername: &super::super::super::Foundation::BSTR, usercontext: *const ::core::ffi::c_void) -> ::windows::core::Result; + fn AddLogfileTraceStream(&self, logfilename: &super::super::super::Foundation::BSTR, usercontext: *const ::core::ffi::c_void) -> ::windows::core::Result; + fn AddRealtimeTraceStream(&self, loggername: &super::super::super::Foundation::BSTR, usercontext: *const ::core::ffi::c_void) -> ::windows::core::Result; fn RegisterCallback(&self, callback: &::core::option::Option) -> ::windows::core::Result<()>; fn Inject(&self, event: &::core::option::Option) -> ::windows::core::Result<()>; - fn CreateEventInstance(&self, tracehandle: u64, flags: u32) -> ::windows::core::Result; + fn CreateEventInstance(&self, tracehandle: RELOGSTREAM_HANDLE, flags: u32) -> ::windows::core::Result; fn ProcessTrace(&self) -> ::windows::core::Result<()>; fn SetOutputFilename(&self, logfilename: &super::super::super::Foundation::BSTR) -> ::windows::core::Result<()>; fn SetCompressionMode(&self, compressionmode: super::super::super::Foundation::BOOLEAN) -> ::windows::core::Result<()>; @@ -164,7 +164,7 @@ impl ::windows::core::RuntimeName for ITraceRelogger {} #[cfg(feature = "Win32_Foundation")] impl ITraceRelogger_Vtbl { pub const fn new, Impl: ITraceRelogger_Impl, const OFFSET: isize>() -> ITraceRelogger_Vtbl { - unsafe extern "system" fn AddLogfileTraceStream, Impl: ITraceRelogger_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, logfilename: ::core::mem::ManuallyDrop, usercontext: *const ::core::ffi::c_void, tracehandle: *mut u64) -> ::windows::core::HRESULT { + unsafe extern "system" fn AddLogfileTraceStream, Impl: ITraceRelogger_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, logfilename: ::core::mem::ManuallyDrop, usercontext: *const ::core::ffi::c_void, tracehandle: *mut RELOGSTREAM_HANDLE) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.AddLogfileTraceStream(::core::mem::transmute(&logfilename), ::core::mem::transmute_copy(&usercontext)) { @@ -175,7 +175,7 @@ impl ITraceRelogger_Vtbl { ::core::result::Result::Err(err) => err.into(), } } - unsafe extern "system" fn AddRealtimeTraceStream, Impl: ITraceRelogger_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, loggername: ::core::mem::ManuallyDrop, usercontext: *const ::core::ffi::c_void, tracehandle: *mut u64) -> ::windows::core::HRESULT { + unsafe extern "system" fn AddRealtimeTraceStream, Impl: ITraceRelogger_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, loggername: ::core::mem::ManuallyDrop, usercontext: *const ::core::ffi::c_void, tracehandle: *mut RELOGSTREAM_HANDLE) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.AddRealtimeTraceStream(::core::mem::transmute(&loggername), ::core::mem::transmute_copy(&usercontext)) { @@ -196,7 +196,7 @@ impl ITraceRelogger_Vtbl { let this = (*this).get_impl(); this.Inject(::core::mem::transmute(&event)).into() } - unsafe extern "system" fn CreateEventInstance, Impl: ITraceRelogger_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, tracehandle: u64, flags: u32, event: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { + unsafe extern "system" fn CreateEventInstance, Impl: ITraceRelogger_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, tracehandle: RELOGSTREAM_HANDLE, flags: u32, event: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.CreateEventInstance(::core::mem::transmute_copy(&tracehandle), ::core::mem::transmute_copy(&flags)) { diff --git a/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Etw/mod.rs b/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Etw/mod.rs index c3d9ee48b6..c89b08dd7d 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Etw/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Diagnostics/Etw/mod.rs @@ -1,3 +1,4 @@ +pub const ALPCGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x45d8cccd_539f_4b72_a8b7_5c683142609a); #[repr(C)] #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub struct CLASSIC_EVENT_ID { @@ -31,52 +32,90 @@ impl ::core::default::Default for CLASSIC_EVENT_ID { } } pub const CLSID_TraceRelogger: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7b40792d_05ff_44c4_9058_f440c71f17d4); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CONTROLTRACE_HANDLE(pub u64); +impl CONTROLTRACE_HANDLE { + pub fn is_invalid(&self) -> bool { + self.0 == 0 + } +} +impl ::core::default::Default for CONTROLTRACE_HANDLE { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for CONTROLTRACE_HANDLE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::marker::Copy for CONTROLTRACE_HANDLE {} +impl ::core::fmt::Debug for CONTROLTRACE_HANDLE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CONTROLTRACE_HANDLE").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for CONTROLTRACE_HANDLE { + fn from(optional: ::core::option::Option) -> CONTROLTRACE_HANDLE { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for CONTROLTRACE_HANDLE { + type Abi = Self; +} pub const CTraceRelogger: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x7b40792d_05ff_44c4_9058_f440c71f17d4); -#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] +#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn CloseTrace(tracehandle: u64) -> u32 { +pub unsafe fn CloseTrace<'a, P0>(tracehandle: P0) -> super::super::super::Foundation::WIN32_ERROR +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CloseTrace(tracehandle: u64) -> u32; + fn CloseTrace(tracehandle: PROCESSTRACE_HANDLE) -> super::super::super::Foundation::WIN32_ERROR; } - CloseTrace(tracehandle) + CloseTrace(tracehandle.into()) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn ControlTraceA<'a, P0>(tracehandle: u64, instancename: P0, properties: &mut EVENT_TRACE_PROPERTIES, controlcode: EVENT_TRACE_CONTROL) -> u32 +pub unsafe fn ControlTraceA<'a, P0, P1>(tracehandle: P0, instancename: P1, properties: &mut EVENT_TRACE_PROPERTIES, controlcode: EVENT_TRACE_CONTROL) -> super::super::super::Foundation::WIN32_ERROR where - P0: ::std::convert::Into<::windows::core::PCSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ControlTraceA(tracehandle: u64, instancename: ::windows::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES, controlcode: EVENT_TRACE_CONTROL) -> u32; + fn ControlTraceA(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES, controlcode: EVENT_TRACE_CONTROL) -> super::super::super::Foundation::WIN32_ERROR; } - ControlTraceA(tracehandle, instancename.into(), ::core::mem::transmute(properties), controlcode) + ControlTraceA(tracehandle.into(), instancename.into(), ::core::mem::transmute(properties), controlcode) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn ControlTraceW<'a, P0>(tracehandle: u64, instancename: P0, properties: &mut EVENT_TRACE_PROPERTIES, controlcode: EVENT_TRACE_CONTROL) -> u32 +pub unsafe fn ControlTraceW<'a, P0, P1>(tracehandle: P0, instancename: P1, properties: &mut EVENT_TRACE_PROPERTIES, controlcode: EVENT_TRACE_CONTROL) -> super::super::super::Foundation::WIN32_ERROR where - P0: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ControlTraceW(tracehandle: u64, instancename: ::windows::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES, controlcode: EVENT_TRACE_CONTROL) -> u32; + fn ControlTraceW(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES, controlcode: EVENT_TRACE_CONTROL) -> super::super::super::Foundation::WIN32_ERROR; } - ControlTraceW(tracehandle, instancename.into(), ::core::mem::transmute(properties), controlcode) + ControlTraceW(tracehandle.into(), instancename.into(), ::core::mem::transmute(properties), controlcode) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn CreateTraceInstanceId<'a, P0>(reghandle: P0, instinfo: &mut EVENT_INSTANCE_INFO) -> u32 +pub unsafe fn CreateTraceInstanceId<'a, P0>(reghandle: P0, instinfo: &mut EVENT_INSTANCE_INFO) -> super::super::super::Foundation::WIN32_ERROR where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CreateTraceInstanceId(reghandle: super::super::super::Foundation::HANDLE, instinfo: *mut EVENT_INSTANCE_INFO) -> u32; + fn CreateTraceInstanceId(reghandle: super::super::super::Foundation::HANDLE, instinfo: *mut EVENT_INSTANCE_INFO) -> super::super::super::Foundation::WIN32_ERROR; } CreateTraceInstanceId(reghandle.into(), ::core::mem::transmute(instinfo)) } @@ -131,6 +170,7 @@ pub const DIAG_LOGGER_NAMEA: &str = "DiagLog"; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub const DIAG_LOGGER_NAMEW: &str = "DiagLog"; pub const DefaultTraceSecurityGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0811c1af_7a07_4a06_82ed_869455cdf713); +pub const DiskIoGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3d6fa8d4_fe05_11d0_9dda_00c04fd7ba7c); #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] @@ -3649,49 +3689,62 @@ pub const EVENT_TRACE_USE_PROCTIME: u32 = 1u32; pub const EVENT_WRITE_FLAG_INPRIVATE: u32 = 2u32; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub const EVENT_WRITE_FLAG_NO_FAULTING: u32 = 1u32; -#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] +#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn EnableTrace(enable: u32, enableflag: u32, enablelevel: u32, controlguid: &::windows::core::GUID, tracehandle: u64) -> u32 { +pub unsafe fn EnableTrace<'a, P0>(enable: u32, enableflag: u32, enablelevel: u32, controlguid: &::windows::core::GUID, tracehandle: P0) -> super::super::super::Foundation::WIN32_ERROR +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn EnableTrace(enable: u32, enableflag: u32, enablelevel: u32, controlguid: *const ::windows::core::GUID, tracehandle: u64) -> u32; + fn EnableTrace(enable: u32, enableflag: u32, enablelevel: u32, controlguid: *const ::windows::core::GUID, tracehandle: CONTROLTRACE_HANDLE) -> super::super::super::Foundation::WIN32_ERROR; } - EnableTrace(enable, enableflag, enablelevel, ::core::mem::transmute(controlguid), tracehandle) + EnableTrace(enable, enableflag, enablelevel, ::core::mem::transmute(controlguid), tracehandle.into()) } -#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] +#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn EnableTraceEx(providerid: &::windows::core::GUID, sourceid: ::core::option::Option<&::windows::core::GUID>, tracehandle: u64, isenabled: u32, level: u8, matchanykeyword: u64, matchallkeyword: u64, enableproperty: u32, enablefilterdesc: ::core::option::Option<&EVENT_FILTER_DESCRIPTOR>) -> u32 { +pub unsafe fn EnableTraceEx<'a, P0>(providerid: &::windows::core::GUID, sourceid: ::core::option::Option<&::windows::core::GUID>, tracehandle: P0, isenabled: u32, level: u8, matchanykeyword: u64, matchallkeyword: u64, enableproperty: u32, enablefilterdesc: ::core::option::Option<&EVENT_FILTER_DESCRIPTOR>) -> super::super::super::Foundation::WIN32_ERROR +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn EnableTraceEx(providerid: *const ::windows::core::GUID, sourceid: *const ::windows::core::GUID, tracehandle: u64, isenabled: u32, level: u8, matchanykeyword: u64, matchallkeyword: u64, enableproperty: u32, enablefilterdesc: *const EVENT_FILTER_DESCRIPTOR) -> u32; + fn EnableTraceEx(providerid: *const ::windows::core::GUID, sourceid: *const ::windows::core::GUID, tracehandle: CONTROLTRACE_HANDLE, isenabled: u32, level: u8, matchanykeyword: u64, matchallkeyword: u64, enableproperty: u32, enablefilterdesc: *const EVENT_FILTER_DESCRIPTOR) -> super::super::super::Foundation::WIN32_ERROR; } - EnableTraceEx(::core::mem::transmute(providerid), ::core::mem::transmute(sourceid), tracehandle, isenabled, level, matchanykeyword, matchallkeyword, enableproperty, ::core::mem::transmute(enablefilterdesc)) + EnableTraceEx(::core::mem::transmute(providerid), ::core::mem::transmute(sourceid), tracehandle.into(), isenabled, level, matchanykeyword, matchallkeyword, enableproperty, ::core::mem::transmute(enablefilterdesc)) } -#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] +#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn EnableTraceEx2(tracehandle: u64, providerid: &::windows::core::GUID, controlcode: u32, level: u8, matchanykeyword: u64, matchallkeyword: u64, timeout: u32, enableparameters: ::core::option::Option<&ENABLE_TRACE_PARAMETERS>) -> u32 { +pub unsafe fn EnableTraceEx2<'a, P0>(tracehandle: P0, providerid: &::windows::core::GUID, controlcode: u32, level: u8, matchanykeyword: u64, matchallkeyword: u64, timeout: u32, enableparameters: ::core::option::Option<&ENABLE_TRACE_PARAMETERS>) -> super::super::super::Foundation::WIN32_ERROR +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn EnableTraceEx2(tracehandle: u64, providerid: *const ::windows::core::GUID, controlcode: u32, level: u8, matchanykeyword: u64, matchallkeyword: u64, timeout: u32, enableparameters: *const ENABLE_TRACE_PARAMETERS) -> u32; + fn EnableTraceEx2(tracehandle: CONTROLTRACE_HANDLE, providerid: *const ::windows::core::GUID, controlcode: u32, level: u8, matchanykeyword: u64, matchallkeyword: u64, timeout: u32, enableparameters: *const ENABLE_TRACE_PARAMETERS) -> super::super::super::Foundation::WIN32_ERROR; } - EnableTraceEx2(tracehandle, ::core::mem::transmute(providerid), controlcode, level, matchanykeyword, matchallkeyword, timeout, ::core::mem::transmute(enableparameters)) + EnableTraceEx2(tracehandle.into(), ::core::mem::transmute(providerid), controlcode, level, matchanykeyword, matchallkeyword, timeout, ::core::mem::transmute(enableparameters)) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn EnumerateTraceGuids(guidpropertiesarray: &mut [*mut TRACE_GUID_PROPERTIES], guidcount: &mut u32) -> u32 { +pub unsafe fn EnumerateTraceGuids(guidpropertiesarray: &mut [*mut TRACE_GUID_PROPERTIES], guidcount: &mut u32) -> super::super::super::Foundation::WIN32_ERROR { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn EnumerateTraceGuids(guidpropertiesarray: *mut *mut TRACE_GUID_PROPERTIES, propertyarraycount: u32, guidcount: *mut u32) -> u32; + fn EnumerateTraceGuids(guidpropertiesarray: *mut *mut TRACE_GUID_PROPERTIES, propertyarraycount: u32, guidcount: *mut u32) -> super::super::super::Foundation::WIN32_ERROR; } EnumerateTraceGuids(::core::mem::transmute(guidpropertiesarray.as_ptr()), guidpropertiesarray.len() as _, ::core::mem::transmute(guidcount)) } -#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] +#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn EnumerateTraceGuidsEx(tracequeryinfoclass: TRACE_QUERY_INFO_CLASS, inbuffer: ::core::option::Option<&[u8]>, outbuffer: ::core::option::Option<&mut [u8]>, returnlength: &mut u32) -> u32 { +pub unsafe fn EnumerateTraceGuidsEx(tracequeryinfoclass: TRACE_QUERY_INFO_CLASS, inbuffer: ::core::option::Option<&[u8]>, outbuffer: ::core::option::Option<&mut [u8]>, returnlength: &mut u32) -> super::super::super::Foundation::WIN32_ERROR { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn EnumerateTraceGuidsEx(tracequeryinfoclass: TRACE_QUERY_INFO_CLASS, inbuffer: *const ::core::ffi::c_void, inbuffersize: u32, outbuffer: *mut ::core::ffi::c_void, outbuffersize: u32, returnlength: *mut u32) -> u32; + fn EnumerateTraceGuidsEx(tracequeryinfoclass: TRACE_QUERY_INFO_CLASS, inbuffer: *const ::core::ffi::c_void, inbuffersize: u32, outbuffer: *mut ::core::ffi::c_void, outbuffersize: u32, returnlength: *mut u32) -> super::super::super::Foundation::WIN32_ERROR; } EnumerateTraceGuidsEx(tracequeryinfoclass, ::core::mem::transmute(inbuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), inbuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(outbuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), outbuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(returnlength)) } @@ -3825,31 +3878,34 @@ pub unsafe fn EventWriteTransfer(reghandle: u64, eventdescriptor: &EVENT_DESCRIP } EventWriteTransfer(reghandle, ::core::mem::transmute(eventdescriptor), ::core::mem::transmute(activityid), ::core::mem::transmute(relatedactivityid), userdata.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(userdata.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr()))) } +pub const FileIoGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x90cbdc39_4a3e_11d1_84f4_0000f80464e3); #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn FlushTraceA<'a, P0>(tracehandle: u64, instancename: P0, properties: &mut EVENT_TRACE_PROPERTIES) -> u32 +pub unsafe fn FlushTraceA<'a, P0, P1>(tracehandle: P0, instancename: P1, properties: &mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR where - P0: ::std::convert::Into<::windows::core::PCSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn FlushTraceA(tracehandle: u64, instancename: ::windows::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + fn FlushTraceA(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; } - FlushTraceA(tracehandle, instancename.into(), ::core::mem::transmute(properties)) + FlushTraceA(tracehandle.into(), instancename.into(), ::core::mem::transmute(properties)) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn FlushTraceW<'a, P0>(tracehandle: u64, instancename: P0, properties: &mut EVENT_TRACE_PROPERTIES) -> u32 +pub unsafe fn FlushTraceW<'a, P0, P1>(tracehandle: P0, instancename: P1, properties: &mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR where - P0: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn FlushTraceW(tracehandle: u64, instancename: ::windows::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + fn FlushTraceW(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; } - FlushTraceW(tracehandle, instancename.into(), ::core::mem::transmute(properties)) + FlushTraceW(tracehandle.into(), instancename.into(), ::core::mem::transmute(properties)) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub const GLOBAL_LOGGER_NAME: &str = "GlobalLogger"; @@ -4054,21 +4110,21 @@ pub struct ITraceRelogger(::windows::core::IUnknown); impl ITraceRelogger { #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub unsafe fn AddLogfileTraceStream<'a, P0>(&self, logfilename: P0, usercontext: *const ::core::ffi::c_void) -> ::windows::core::Result + pub unsafe fn AddLogfileTraceStream<'a, P0>(&self, logfilename: P0, usercontext: *const ::core::ffi::c_void) -> ::windows::core::Result where P0: ::std::convert::Into<::windows::core::InParam<'a, super::super::super::Foundation::BSTR>>, { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).AddLogfileTraceStream)(::windows::core::Interface::as_raw(self), logfilename.into().abi(), ::core::mem::transmute(usercontext), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).AddLogfileTraceStream)(::windows::core::Interface::as_raw(self), logfilename.into().abi(), ::core::mem::transmute(usercontext), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } #[doc = "*Required features: `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub unsafe fn AddRealtimeTraceStream<'a, P0>(&self, loggername: P0, usercontext: *const ::core::ffi::c_void) -> ::windows::core::Result + pub unsafe fn AddRealtimeTraceStream<'a, P0>(&self, loggername: P0, usercontext: *const ::core::ffi::c_void) -> ::windows::core::Result where P0: ::std::convert::Into<::windows::core::InParam<'a, super::super::super::Foundation::BSTR>>, { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).AddRealtimeTraceStream)(::windows::core::Interface::as_raw(self), loggername.into().abi(), ::core::mem::transmute(usercontext), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).AddRealtimeTraceStream)(::windows::core::Interface::as_raw(self), loggername.into().abi(), ::core::mem::transmute(usercontext), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } pub unsafe fn RegisterCallback<'a, P0>(&self, callback: P0) -> ::windows::core::Result<()> where @@ -4082,9 +4138,12 @@ impl ITraceRelogger { { (::windows::core::Interface::vtable(self).Inject)(::windows::core::Interface::as_raw(self), event.into().abi()).ok() } - pub unsafe fn CreateEventInstance(&self, tracehandle: u64, flags: u32) -> ::windows::core::Result { + pub unsafe fn CreateEventInstance<'a, P0>(&self, tracehandle: P0, flags: u32) -> ::windows::core::Result + where + P0: ::std::convert::Into, + { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).CreateEventInstance)(::windows::core::Interface::as_raw(self), tracehandle, flags, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).CreateEventInstance)(::windows::core::Interface::as_raw(self), tracehandle.into(), flags, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } pub unsafe fn ProcessTrace(&self) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).ProcessTrace)(::windows::core::Interface::as_raw(self)).ok() @@ -4149,16 +4208,16 @@ unsafe impl ::windows::core::Interface for ITraceRelogger { pub struct ITraceRelogger_Vtbl { pub base__: ::windows::core::IUnknownVtbl, #[cfg(feature = "Win32_Foundation")] - pub AddLogfileTraceStream: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, logfilename: ::core::mem::ManuallyDrop, usercontext: *const ::core::ffi::c_void, tracehandle: *mut u64) -> ::windows::core::HRESULT, + pub AddLogfileTraceStream: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, logfilename: ::core::mem::ManuallyDrop, usercontext: *const ::core::ffi::c_void, tracehandle: *mut RELOGSTREAM_HANDLE) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] AddLogfileTraceStream: usize, #[cfg(feature = "Win32_Foundation")] - pub AddRealtimeTraceStream: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, loggername: ::core::mem::ManuallyDrop, usercontext: *const ::core::ffi::c_void, tracehandle: *mut u64) -> ::windows::core::HRESULT, + pub AddRealtimeTraceStream: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, loggername: ::core::mem::ManuallyDrop, usercontext: *const ::core::ffi::c_void, tracehandle: *mut RELOGSTREAM_HANDLE) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] AddRealtimeTraceStream: usize, pub RegisterCallback: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, callback: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, pub Inject: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, event: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, - pub CreateEventInstance: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, tracehandle: u64, flags: u32, event: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, + pub CreateEventInstance: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, tracehandle: RELOGSTREAM_HANDLE, flags: u32, event: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, pub ProcessTrace: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, #[cfg(feature = "Win32_Foundation")] pub SetOutputFilename: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, logfilename: ::core::mem::ManuallyDrop) -> ::windows::core::HRESULT, @@ -4170,6 +4229,7 @@ pub struct ITraceRelogger_Vtbl { SetCompressionMode: usize, pub Cancel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, } +pub const ImageLoadGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x2cb15d1d_5fc1_11d2_abe1_00a0c911f518); #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub const KERNEL_LOGGER_NAME: &str = "NT Kernel Logger"; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] @@ -4324,20 +4384,20 @@ impl ::core::default::Default for OFFSETINSTANCEDATAANDLENGTH { #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`, `\"Win32_System_Time\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Time"))] #[inline] -pub unsafe fn OpenTraceA(logfile: &mut EVENT_TRACE_LOGFILEA) -> u64 { +pub unsafe fn OpenTraceA(logfile: &mut EVENT_TRACE_LOGFILEA) -> PROCESSTRACE_HANDLE { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OpenTraceA(logfile: *mut EVENT_TRACE_LOGFILEA) -> u64; + fn OpenTraceA(logfile: *mut EVENT_TRACE_LOGFILEA) -> PROCESSTRACE_HANDLE; } OpenTraceA(::core::mem::transmute(logfile)) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`, `\"Win32_System_Time\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Time"))] #[inline] -pub unsafe fn OpenTraceW(logfile: &mut EVENT_TRACE_LOGFILEW) -> u64 { +pub unsafe fn OpenTraceW(logfile: &mut EVENT_TRACE_LOGFILEW) -> PROCESSTRACE_HANDLE { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OpenTraceW(logfile: *mut EVENT_TRACE_LOGFILEW) -> u64; + fn OpenTraceW(logfile: *mut EVENT_TRACE_LOGFILEW) -> PROCESSTRACE_HANDLE; } OpenTraceW(::core::mem::transmute(logfile)) } @@ -4436,6 +4496,33 @@ pub type PEVENT_TRACE_BUFFER_CALLBACKA = ::core::option::Option u32>; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct PROCESSTRACE_HANDLE(pub u64); +impl ::core::default::Default for PROCESSTRACE_HANDLE { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for PROCESSTRACE_HANDLE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::marker::Copy for PROCESSTRACE_HANDLE {} +impl ::core::fmt::Debug for PROCESSTRACE_HANDLE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("PROCESSTRACE_HANDLE").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for PROCESSTRACE_HANDLE { + fn from(optional: ::core::option::Option) -> PROCESSTRACE_HANDLE { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for PROCESSTRACE_HANDLE { + type Abi = Self; +} #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub const PROCESS_TRACE_MODE_EVENT_RECORD: u32 = 268435456u32; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] @@ -4706,71 +4793,112 @@ impl ::core::default::Default for PROVIDER_FILTER_INFO { unsafe { ::core::mem::zeroed() } } } +pub const PageFaultGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3d6fa8d3_fe05_11d0_9dda_00c04fd7ba7c); +pub const PerfInfoGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xce1dbfb4_137e_4da6_87b0_3f59aa102cbc); pub const PrivateLoggerNotificationGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3595ab5c_042a_4c8e_b942_2d059bfeb1b1); +pub const ProcessGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3d6fa8d0_fe05_11d0_9dda_00c04fd7ba7c); #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn ProcessTrace(handlearray: &[u64], starttime: ::core::option::Option<&super::super::super::Foundation::FILETIME>, endtime: ::core::option::Option<&super::super::super::Foundation::FILETIME>) -> u32 { +pub unsafe fn ProcessTrace(handlearray: &[PROCESSTRACE_HANDLE], starttime: ::core::option::Option<&super::super::super::Foundation::FILETIME>, endtime: ::core::option::Option<&super::super::super::Foundation::FILETIME>) -> super::super::super::Foundation::WIN32_ERROR { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ProcessTrace(handlearray: *const u64, handlecount: u32, starttime: *const super::super::super::Foundation::FILETIME, endtime: *const super::super::super::Foundation::FILETIME) -> u32; + fn ProcessTrace(handlearray: *const PROCESSTRACE_HANDLE, handlecount: u32, starttime: *const super::super::super::Foundation::FILETIME, endtime: *const super::super::super::Foundation::FILETIME) -> super::super::super::Foundation::WIN32_ERROR; } ProcessTrace(::core::mem::transmute(handlearray.as_ptr()), handlearray.len() as _, ::core::mem::transmute(starttime), ::core::mem::transmute(endtime)) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn QueryAllTracesA(propertyarray: &mut [*mut EVENT_TRACE_PROPERTIES], loggercount: &mut u32) -> u32 { +pub unsafe fn QueryAllTracesA(propertyarray: &mut [*mut EVENT_TRACE_PROPERTIES], loggercount: &mut u32) -> super::super::super::Foundation::WIN32_ERROR { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn QueryAllTracesA(propertyarray: *mut *mut EVENT_TRACE_PROPERTIES, propertyarraycount: u32, loggercount: *mut u32) -> u32; + fn QueryAllTracesA(propertyarray: *mut *mut EVENT_TRACE_PROPERTIES, propertyarraycount: u32, loggercount: *mut u32) -> super::super::super::Foundation::WIN32_ERROR; } QueryAllTracesA(::core::mem::transmute(propertyarray.as_ptr()), propertyarray.len() as _, ::core::mem::transmute(loggercount)) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn QueryAllTracesW(propertyarray: &mut [*mut EVENT_TRACE_PROPERTIES], loggercount: &mut u32) -> u32 { +pub unsafe fn QueryAllTracesW(propertyarray: &mut [*mut EVENT_TRACE_PROPERTIES], loggercount: &mut u32) -> super::super::super::Foundation::WIN32_ERROR { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn QueryAllTracesW(propertyarray: *mut *mut EVENT_TRACE_PROPERTIES, propertyarraycount: u32, loggercount: *mut u32) -> u32; + fn QueryAllTracesW(propertyarray: *mut *mut EVENT_TRACE_PROPERTIES, propertyarraycount: u32, loggercount: *mut u32) -> super::super::super::Foundation::WIN32_ERROR; } QueryAllTracesW(::core::mem::transmute(propertyarray.as_ptr()), propertyarray.len() as _, ::core::mem::transmute(loggercount)) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn QueryTraceA<'a, P0>(tracehandle: u64, instancename: P0, properties: &mut EVENT_TRACE_PROPERTIES) -> u32 +pub unsafe fn QueryTraceA<'a, P0, P1>(tracehandle: P0, instancename: P1, properties: &mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR where - P0: ::std::convert::Into<::windows::core::PCSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn QueryTraceA(tracehandle: u64, instancename: ::windows::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + fn QueryTraceA(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; } - QueryTraceA(tracehandle, instancename.into(), ::core::mem::transmute(properties)) + QueryTraceA(tracehandle.into(), instancename.into(), ::core::mem::transmute(properties)) } -#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] +#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn QueryTraceProcessingHandle(processinghandle: u64, informationclass: ETW_PROCESS_HANDLE_INFO_TYPE, inbuffer: *const ::core::ffi::c_void, inbuffersize: u32, outbuffer: *mut ::core::ffi::c_void, outbuffersize: u32, returnlength: &mut u32) -> u32 { +pub unsafe fn QueryTraceProcessingHandle<'a, P0>(processinghandle: P0, informationclass: ETW_PROCESS_HANDLE_INFO_TYPE, inbuffer: *const ::core::ffi::c_void, inbuffersize: u32, outbuffer: *mut ::core::ffi::c_void, outbuffersize: u32, returnlength: &mut u32) -> super::super::super::Foundation::WIN32_ERROR +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn QueryTraceProcessingHandle(processinghandle: u64, informationclass: ETW_PROCESS_HANDLE_INFO_TYPE, inbuffer: *const ::core::ffi::c_void, inbuffersize: u32, outbuffer: *mut ::core::ffi::c_void, outbuffersize: u32, returnlength: *mut u32) -> u32; + fn QueryTraceProcessingHandle(processinghandle: PROCESSTRACE_HANDLE, informationclass: ETW_PROCESS_HANDLE_INFO_TYPE, inbuffer: *const ::core::ffi::c_void, inbuffersize: u32, outbuffer: *mut ::core::ffi::c_void, outbuffersize: u32, returnlength: *mut u32) -> super::super::super::Foundation::WIN32_ERROR; } - QueryTraceProcessingHandle(processinghandle, informationclass, ::core::mem::transmute(inbuffer), inbuffersize, ::core::mem::transmute(outbuffer), outbuffersize, ::core::mem::transmute(returnlength)) + QueryTraceProcessingHandle(processinghandle.into(), informationclass, ::core::mem::transmute(inbuffer), inbuffersize, ::core::mem::transmute(outbuffer), outbuffersize, ::core::mem::transmute(returnlength)) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn QueryTraceW<'a, P0>(tracehandle: u64, instancename: P0, properties: &mut EVENT_TRACE_PROPERTIES) -> u32 +pub unsafe fn QueryTraceW<'a, P0, P1>(tracehandle: P0, instancename: P1, properties: &mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR where - P0: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn QueryTraceW(tracehandle: u64, instancename: ::windows::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + fn QueryTraceW(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; + } + QueryTraceW(tracehandle.into(), instancename.into(), ::core::mem::transmute(properties)) +} +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct RELOGSTREAM_HANDLE(pub u64); +impl RELOGSTREAM_HANDLE { + pub fn is_invalid(&self) -> bool { + self.0 == 0 + } +} +impl ::core::default::Default for RELOGSTREAM_HANDLE { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for RELOGSTREAM_HANDLE { + fn clone(&self) -> Self { + *self } - QueryTraceW(tracehandle, instancename.into(), ::core::mem::transmute(properties)) +} +impl ::core::marker::Copy for RELOGSTREAM_HANDLE {} +impl ::core::fmt::Debug for RELOGSTREAM_HANDLE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("RELOGSTREAM_HANDLE").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for RELOGSTREAM_HANDLE { + fn from(optional: ::core::option::Option) -> RELOGSTREAM_HANDLE { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for RELOGSTREAM_HANDLE { + type Abi = Self; } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -4800,12 +4928,14 @@ where } RegisterTraceGuidsW(::core::mem::transmute(requestaddress), ::core::mem::transmute(requestcontext), ::core::mem::transmute(controlguid), traceguidreg.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(traceguidreg.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), mofimagepath.into(), mofresourcename.into(), ::core::mem::transmute(registrationhandle)) } -#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] +pub const RegistryGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xae53722e_c863_11d2_8659_00c04fa321a1); +#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn RemoveTraceCallback(pguid: &::windows::core::GUID) -> u32 { +pub unsafe fn RemoveTraceCallback(pguid: &::windows::core::GUID) -> super::super::super::Foundation::WIN32_ERROR { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn RemoveTraceCallback(pguid: *const ::windows::core::GUID) -> u32; + fn RemoveTraceCallback(pguid: *const ::windows::core::GUID) -> super::super::super::Foundation::WIN32_ERROR; } RemoveTraceCallback(::core::mem::transmute(pguid)) } @@ -4999,66 +5129,70 @@ pub const SYSTEM_SYSCALL_KW_GENERAL: u64 = 1u64; pub const SYSTEM_TIMER_KW_CLOCK_TIMER: u64 = 2u64; #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub const SYSTEM_TIMER_KW_GENERAL: u64 = 1u64; -#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] +#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn SetTraceCallback(pguid: &::windows::core::GUID, eventcallback: PEVENT_CALLBACK) -> u32 { +pub unsafe fn SetTraceCallback(pguid: &::windows::core::GUID, eventcallback: PEVENT_CALLBACK) -> super::super::super::Foundation::WIN32_ERROR { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SetTraceCallback(pguid: *const ::windows::core::GUID, eventcallback: *mut ::core::ffi::c_void) -> u32; + fn SetTraceCallback(pguid: *const ::windows::core::GUID, eventcallback: *mut ::core::ffi::c_void) -> super::super::super::Foundation::WIN32_ERROR; } SetTraceCallback(::core::mem::transmute(pguid), ::core::mem::transmute(eventcallback)) } +pub const SplitIoGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd837ca92_12b9_44a5_ad6a_3a65b3578aa8); #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn StartTraceA<'a, P0>(tracehandle: &mut u64, instancename: P0, properties: &mut EVENT_TRACE_PROPERTIES) -> u32 +pub unsafe fn StartTraceA<'a, P0>(tracehandle: &mut CONTROLTRACE_HANDLE, instancename: P0, properties: &mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR where P0: ::std::convert::Into<::windows::core::PCSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn StartTraceA(tracehandle: *mut u64, instancename: ::windows::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + fn StartTraceA(tracehandle: *mut CONTROLTRACE_HANDLE, instancename: ::windows::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; } StartTraceA(::core::mem::transmute(tracehandle), instancename.into(), ::core::mem::transmute(properties)) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn StartTraceW<'a, P0>(tracehandle: &mut u64, instancename: P0, properties: &mut EVENT_TRACE_PROPERTIES) -> u32 +pub unsafe fn StartTraceW<'a, P0>(tracehandle: &mut CONTROLTRACE_HANDLE, instancename: P0, properties: &mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR where P0: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn StartTraceW(tracehandle: *mut u64, instancename: ::windows::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + fn StartTraceW(tracehandle: *mut CONTROLTRACE_HANDLE, instancename: ::windows::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; } StartTraceW(::core::mem::transmute(tracehandle), instancename.into(), ::core::mem::transmute(properties)) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn StopTraceA<'a, P0>(tracehandle: u64, instancename: P0, properties: &mut EVENT_TRACE_PROPERTIES) -> u32 +pub unsafe fn StopTraceA<'a, P0, P1>(tracehandle: P0, instancename: P1, properties: &mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR where - P0: ::std::convert::Into<::windows::core::PCSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn StopTraceA(tracehandle: u64, instancename: ::windows::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + fn StopTraceA(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; } - StopTraceA(tracehandle, instancename.into(), ::core::mem::transmute(properties)) + StopTraceA(tracehandle.into(), instancename.into(), ::core::mem::transmute(properties)) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn StopTraceW<'a, P0>(tracehandle: u64, instancename: P0, properties: &mut EVENT_TRACE_PROPERTIES) -> u32 +pub unsafe fn StopTraceW<'a, P0, P1>(tracehandle: P0, instancename: P1, properties: &mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR where - P0: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn StopTraceW(tracehandle: u64, instancename: ::windows::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + fn StopTraceW(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; } - StopTraceW(tracehandle, instancename.into(), ::core::mem::transmute(properties)) + StopTraceW(tracehandle.into(), instancename.into(), ::core::mem::transmute(properties)) } pub const SystemAlpcProviderGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfcb9baaf_e529_4980_92e9_ced1a6aadfdf); pub const SystemConfigProviderGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfef3a8b6_318d_4b67_a96a_3b0f6b8f18fe); @@ -6500,6 +6634,7 @@ impl ::core::default::Default for TRACE_VERSION_INFO { unsafe { ::core::mem::zeroed() } } } +pub const TcpIpGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9a280ac0_c8e0_11d1_84e2_00c04fb998a2); #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] @@ -6776,12 +6911,14 @@ pub unsafe fn TdhUnloadManifestFromMemory(pdata: &[u8]) -> u32 { } TdhUnloadManifestFromMemory(::core::mem::transmute(pdata.as_ptr()), pdata.len() as _) } -#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] +pub const ThreadGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3d6fa8d1_fe05_11d0_9dda_00c04fd7ba7c); +#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn TraceEvent(tracehandle: u64, eventtrace: &EVENT_TRACE_HEADER) -> u32 { +pub unsafe fn TraceEvent(tracehandle: u64, eventtrace: &EVENT_TRACE_HEADER) -> super::super::super::Foundation::WIN32_ERROR { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn TraceEvent(tracehandle: u64, eventtrace: *const EVENT_TRACE_HEADER) -> u32; + fn TraceEvent(tracehandle: u64, eventtrace: *const EVENT_TRACE_HEADER) -> super::super::super::Foundation::WIN32_ERROR; } TraceEvent(tracehandle, ::core::mem::transmute(eventtrace)) } @@ -6795,42 +6932,53 @@ pub unsafe fn TraceEventInstance(tracehandle: u64, eventtrace: &EVENT_INSTANCE_H } TraceEventInstance(tracehandle, ::core::mem::transmute(eventtrace), ::core::mem::transmute(instinfo), ::core::mem::transmute(parentinstinfo)) } -#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] +#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn TraceMessage(loggerhandle: u64, messageflags: TRACE_MESSAGE_FLAGS, messageguid: &::windows::core::GUID, messagenumber: u16) -> u32 { +pub unsafe fn TraceMessage(loggerhandle: u64, messageflags: TRACE_MESSAGE_FLAGS, messageguid: &::windows::core::GUID, messagenumber: u16) -> super::super::super::Foundation::WIN32_ERROR { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn TraceMessage(loggerhandle: u64, messageflags: TRACE_MESSAGE_FLAGS, messageguid: *const ::windows::core::GUID, messagenumber: u16) -> u32; + fn TraceMessage(loggerhandle: u64, messageflags: TRACE_MESSAGE_FLAGS, messageguid: *const ::windows::core::GUID, messagenumber: u16) -> super::super::super::Foundation::WIN32_ERROR; } TraceMessage(loggerhandle, messageflags, ::core::mem::transmute(messageguid), messagenumber) } -#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] +#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn TraceMessageVa(loggerhandle: u64, messageflags: TRACE_MESSAGE_FLAGS, messageguid: &::windows::core::GUID, messagenumber: u16, messagearglist: &i8) -> u32 { +pub unsafe fn TraceMessageVa(loggerhandle: u64, messageflags: TRACE_MESSAGE_FLAGS, messageguid: &::windows::core::GUID, messagenumber: u16, messagearglist: &i8) -> super::super::super::Foundation::WIN32_ERROR { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn TraceMessageVa(loggerhandle: u64, messageflags: TRACE_MESSAGE_FLAGS, messageguid: *const ::windows::core::GUID, messagenumber: u16, messagearglist: *const i8) -> u32; + fn TraceMessageVa(loggerhandle: u64, messageflags: TRACE_MESSAGE_FLAGS, messageguid: *const ::windows::core::GUID, messagenumber: u16, messagearglist: *const i8) -> super::super::super::Foundation::WIN32_ERROR; } TraceMessageVa(loggerhandle, messageflags, ::core::mem::transmute(messageguid), messagenumber, ::core::mem::transmute(messagearglist)) } -#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] +#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn TraceQueryInformation(sessionhandle: u64, informationclass: TRACE_QUERY_INFO_CLASS, traceinformation: &mut [u8], returnlength: ::core::option::Option<&mut u32>) -> u32 { +pub unsafe fn TraceQueryInformation<'a, P0>(sessionhandle: P0, informationclass: TRACE_QUERY_INFO_CLASS, traceinformation: &mut [u8], returnlength: ::core::option::Option<&mut u32>) -> super::super::super::Foundation::WIN32_ERROR +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn TraceQueryInformation(sessionhandle: u64, informationclass: TRACE_QUERY_INFO_CLASS, traceinformation: *mut ::core::ffi::c_void, informationlength: u32, returnlength: *mut u32) -> u32; + fn TraceQueryInformation(sessionhandle: CONTROLTRACE_HANDLE, informationclass: TRACE_QUERY_INFO_CLASS, traceinformation: *mut ::core::ffi::c_void, informationlength: u32, returnlength: *mut u32) -> super::super::super::Foundation::WIN32_ERROR; } - TraceQueryInformation(sessionhandle, informationclass, ::core::mem::transmute(traceinformation.as_ptr()), traceinformation.len() as _, ::core::mem::transmute(returnlength)) + TraceQueryInformation(sessionhandle.into(), informationclass, ::core::mem::transmute(traceinformation.as_ptr()), traceinformation.len() as _, ::core::mem::transmute(returnlength)) } -#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] +#[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn TraceSetInformation(sessionhandle: u64, informationclass: TRACE_QUERY_INFO_CLASS, traceinformation: &[u8]) -> u32 { +pub unsafe fn TraceSetInformation<'a, P0>(sessionhandle: P0, informationclass: TRACE_QUERY_INFO_CLASS, traceinformation: &[u8]) -> super::super::super::Foundation::WIN32_ERROR +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn TraceSetInformation(sessionhandle: u64, informationclass: TRACE_QUERY_INFO_CLASS, traceinformation: *const ::core::ffi::c_void, informationlength: u32) -> u32; + fn TraceSetInformation(sessionhandle: CONTROLTRACE_HANDLE, informationclass: TRACE_QUERY_INFO_CLASS, traceinformation: *const ::core::ffi::c_void, informationlength: u32) -> super::super::super::Foundation::WIN32_ERROR; } - TraceSetInformation(sessionhandle, informationclass, ::core::mem::transmute(traceinformation.as_ptr()), traceinformation.len() as _) + TraceSetInformation(sessionhandle.into(), informationclass, ::core::mem::transmute(traceinformation.as_ptr()), traceinformation.len() as _) } +pub const UdpIpGuid: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbf3a50c5_a9c9_4988_a005_2df0b7c80f80); #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] #[inline] pub unsafe fn UnregisterTraceGuids(registrationhandle: u64) -> u32 { @@ -6843,28 +6991,30 @@ pub unsafe fn UnregisterTraceGuids(registrationhandle: u64) -> u32 { #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn UpdateTraceA<'a, P0>(tracehandle: u64, instancename: P0, properties: &mut EVENT_TRACE_PROPERTIES) -> u32 +pub unsafe fn UpdateTraceA<'a, P0, P1>(tracehandle: P0, instancename: P1, properties: &mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR where - P0: ::std::convert::Into<::windows::core::PCSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn UpdateTraceA(tracehandle: u64, instancename: ::windows::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + fn UpdateTraceA(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows::core::PCSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; } - UpdateTraceA(tracehandle, instancename.into(), ::core::mem::transmute(properties)) + UpdateTraceA(tracehandle.into(), instancename.into(), ::core::mem::transmute(properties)) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn UpdateTraceW<'a, P0>(tracehandle: u64, instancename: P0, properties: &mut EVENT_TRACE_PROPERTIES) -> u32 +pub unsafe fn UpdateTraceW<'a, P0, P1>(tracehandle: P0, instancename: P1, properties: &mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR where - P0: ::std::convert::Into<::windows::core::PCWSTR>, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn UpdateTraceW(tracehandle: u64, instancename: ::windows::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> u32; + fn UpdateTraceW(tracehandle: CONTROLTRACE_HANDLE, instancename: ::windows::core::PCWSTR, properties: *mut EVENT_TRACE_PROPERTIES) -> super::super::super::Foundation::WIN32_ERROR; } - UpdateTraceW(tracehandle, instancename.into(), ::core::mem::transmute(properties)) + UpdateTraceW(tracehandle.into(), instancename.into(), ::core::mem::transmute(properties)) } #[doc = "*Required features: `\"Win32_System_Diagnostics_Etw\"`*"] pub type WMIDPREQUEST = ::core::option::Option u32>; diff --git a/crates/libs/windows/src/Windows/Win32/System/HostComputeNetwork/mod.rs b/crates/libs/windows/src/Windows/Win32/System/HostComputeNetwork/mod.rs index 6e08a3ed2d..39bfd36d17 100644 --- a/crates/libs/windows/src/Windows/Win32/System/HostComputeNetwork/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/HostComputeNetwork/mod.rs @@ -347,7 +347,7 @@ where } #[doc = "*Required features: `\"Win32_System_HostComputeNetwork\"`*"] #[inline] -pub unsafe fn HcnEnumerateGuestNetworkPortReservations(returncount: &mut u32, portentries: &mut *mut HCN_PORT_RANGE_ENTRY) -> ::windows::core::Result<()> { +pub unsafe fn HcnEnumerateGuestNetworkPortReservations(returncount: &mut u32, portentries: *mut *mut HCN_PORT_RANGE_ENTRY) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn HcnEnumerateGuestNetworkPortReservations(returncount: *mut u32, portentries: *mut *mut HCN_PORT_RANGE_ENTRY) -> ::windows::core::HRESULT; diff --git a/crates/libs/windows/src/Windows/Win32/System/MessageQueuing/mod.rs b/crates/libs/windows/src/Windows/Win32/System/MessageQueuing/mod.rs index aedebc6f78..4e1b5ba36a 100644 --- a/crates/libs/windows/src/Windows/Win32/System/MessageQueuing/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/MessageQueuing/mod.rs @@ -9715,14 +9715,10 @@ impl ::core::fmt::Debug for MQPRIVLEVEL { } } #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] -pub const MQSEC_CHANGE_QUEUE_PERMISSIONS: u32 = 262144u32; -#[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] pub const MQSEC_DELETE_JOURNAL_MESSAGE: u32 = 8u32; #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] pub const MQSEC_DELETE_MESSAGE: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] -pub const MQSEC_DELETE_QUEUE: u32 = 65536u32; -#[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] pub const MQSEC_GET_QUEUE_PROPERTIES: u32 = 32u32; #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] pub const MQSEC_PEEK_MESSAGE: u32 = 2u32; @@ -9731,8 +9727,6 @@ pub const MQSEC_QUEUE_GENERIC_EXECUTE: u32 = 0u32; #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] pub const MQSEC_SET_QUEUE_PROPERTIES: u32 = 16u32; #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] -pub const MQSEC_TAKE_QUEUE_OWNERSHIP: u32 = 524288u32; -#[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] pub const MQSEC_WRITE_MESSAGE: u32 = 4u32; #[doc = "*Required features: `\"Win32_System_MessageQueuing\"`*"] #[repr(transparent)] diff --git a/crates/libs/windows/src/Windows/Win32/System/Mmc/impl.rs b/crates/libs/windows/src/Windows/Win32/System/Mmc/impl.rs index 3d65a09836..911aaa13bd 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Mmc/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Mmc/impl.rs @@ -1858,11 +1858,14 @@ impl IHeaderCtrl2_Vtbl { iid == &::IID || iid == &::IID } } +#[cfg(feature = "Win32_Foundation")] pub trait IImageList_Impl: Sized { fn ImageListSetIcon(&self, picon: *const isize, nloc: i32) -> ::windows::core::Result<()>; - fn ImageListSetStrip(&self, pbmapsm: *const isize, pbmaplg: *const isize, nstartloc: i32, cmask: u32) -> ::windows::core::Result<()>; + fn ImageListSetStrip(&self, pbmapsm: *const isize, pbmaplg: *const isize, nstartloc: i32, cmask: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; } +#[cfg(feature = "Win32_Foundation")] impl ::windows::core::RuntimeName for IImageList {} +#[cfg(feature = "Win32_Foundation")] impl IImageList_Vtbl { pub const fn new, Impl: IImageList_Impl, const OFFSET: isize>() -> IImageList_Vtbl { unsafe extern "system" fn ImageListSetIcon, Impl: IImageList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, picon: *const isize, nloc: i32) -> ::windows::core::HRESULT { @@ -1870,7 +1873,7 @@ impl IImageList_Vtbl { let this = (*this).get_impl(); this.ImageListSetIcon(::core::mem::transmute_copy(&picon), ::core::mem::transmute_copy(&nloc)).into() } - unsafe extern "system" fn ImageListSetStrip, Impl: IImageList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbmapsm: *const isize, pbmaplg: *const isize, nstartloc: i32, cmask: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn ImageListSetStrip, Impl: IImageList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pbmapsm: *const isize, pbmaplg: *const isize, nstartloc: i32, cmask: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.ImageListSetStrip(::core::mem::transmute_copy(&pbmapsm), ::core::mem::transmute_copy(&pbmaplg), ::core::mem::transmute_copy(&nstartloc), ::core::mem::transmute_copy(&cmask)).into() @@ -2375,17 +2378,17 @@ impl IResultOwnerData_Vtbl { iid == &::IID } } -#[cfg(all(feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] pub trait ISnapinAbout_Impl: Sized { fn GetSnapinDescription(&self) -> ::windows::core::Result<::windows::core::PWSTR>; fn GetProvider(&self) -> ::windows::core::Result<::windows::core::PWSTR>; fn GetSnapinVersion(&self) -> ::windows::core::Result<::windows::core::PWSTR>; fn GetSnapinImage(&self) -> ::windows::core::Result; - fn GetStaticFolderImage(&self, hsmallimage: *mut super::super::Graphics::Gdi::HBITMAP, hsmallimageopen: *mut super::super::Graphics::Gdi::HBITMAP, hlargeimage: *mut super::super::Graphics::Gdi::HBITMAP, cmask: *mut u32) -> ::windows::core::Result<()>; + fn GetStaticFolderImage(&self, hsmallimage: *mut super::super::Graphics::Gdi::HBITMAP, hsmallimageopen: *mut super::super::Graphics::Gdi::HBITMAP, hlargeimage: *mut super::super::Graphics::Gdi::HBITMAP, cmask: *mut super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; } -#[cfg(all(feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] impl ::windows::core::RuntimeName for ISnapinAbout {} -#[cfg(all(feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] impl ISnapinAbout_Vtbl { pub const fn new, Impl: ISnapinAbout_Impl, const OFFSET: isize>() -> ISnapinAbout_Vtbl { unsafe extern "system" fn GetSnapinDescription, Impl: ISnapinAbout_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, lpdescription: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT { @@ -2432,7 +2435,7 @@ impl ISnapinAbout_Vtbl { ::core::result::Result::Err(err) => err.into(), } } - unsafe extern "system" fn GetStaticFolderImage, Impl: ISnapinAbout_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hsmallimage: *mut super::super::Graphics::Gdi::HBITMAP, hsmallimageopen: *mut super::super::Graphics::Gdi::HBITMAP, hlargeimage: *mut super::super::Graphics::Gdi::HBITMAP, cmask: *mut u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetStaticFolderImage, Impl: ISnapinAbout_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hsmallimage: *mut super::super::Graphics::Gdi::HBITMAP, hsmallimageopen: *mut super::super::Graphics::Gdi::HBITMAP, hlargeimage: *mut super::super::Graphics::Gdi::HBITMAP, cmask: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.GetStaticFolderImage(::core::mem::transmute_copy(&hsmallimage), ::core::mem::transmute_copy(&hsmallimageopen), ::core::mem::transmute_copy(&hlargeimage), ::core::mem::transmute_copy(&cmask)).into() @@ -2641,7 +2644,7 @@ impl IStringTable_Vtbl { } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub trait IToolbar_Impl: Sized { - fn AddBitmap(&self, nimages: i32, hbmp: super::super::Graphics::Gdi::HBITMAP, cxsize: i32, cysize: i32, crmask: u32) -> ::windows::core::Result<()>; + fn AddBitmap(&self, nimages: i32, hbmp: super::super::Graphics::Gdi::HBITMAP, cxsize: i32, cysize: i32, crmask: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; fn AddButtons(&self, nbuttons: i32, lpbuttons: *const MMCBUTTON) -> ::windows::core::Result<()>; fn InsertButton(&self, nindex: i32, lpbutton: *const MMCBUTTON) -> ::windows::core::Result<()>; fn DeleteButton(&self, nindex: i32) -> ::windows::core::Result<()>; @@ -2653,7 +2656,7 @@ impl ::windows::core::RuntimeName for IToolbar {} #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl IToolbar_Vtbl { pub const fn new, Impl: IToolbar_Impl, const OFFSET: isize>() -> IToolbar_Vtbl { - unsafe extern "system" fn AddBitmap, Impl: IToolbar_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, nimages: i32, hbmp: super::super::Graphics::Gdi::HBITMAP, cxsize: i32, cysize: i32, crmask: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn AddBitmap, Impl: IToolbar_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, nimages: i32, hbmp: super::super::Graphics::Gdi::HBITMAP, cxsize: i32, cysize: i32, crmask: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.AddBitmap(::core::mem::transmute_copy(&nimages), ::core::mem::transmute_copy(&hbmp), ::core::mem::transmute_copy(&cxsize), ::core::mem::transmute_copy(&cysize), ::core::mem::transmute_copy(&crmask)).into() diff --git a/crates/libs/windows/src/Windows/Win32/System/Mmc/mod.rs b/crates/libs/windows/src/Windows/Win32/System/Mmc/mod.rs index 0199923725..9f3668bccb 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Mmc/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Mmc/mod.rs @@ -3522,8 +3522,13 @@ impl IImageList { pub unsafe fn ImageListSetIcon(&self, picon: &isize, nloc: i32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).ImageListSetIcon)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(picon), nloc).ok() } - pub unsafe fn ImageListSetStrip(&self, pbmapsm: &isize, pbmaplg: &isize, nstartloc: i32, cmask: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).ImageListSetStrip)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pbmapsm), ::core::mem::transmute(pbmaplg), nstartloc, cmask).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn ImageListSetStrip<'a, P0>(&self, pbmapsm: &isize, pbmaplg: &isize, nstartloc: i32, cmask: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).ImageListSetStrip)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pbmapsm), ::core::mem::transmute(pbmaplg), nstartloc, cmask.into()).ok() } } impl ::core::convert::From for ::windows::core::IUnknown { @@ -3566,7 +3571,10 @@ unsafe impl ::windows::core::Interface for IImageList { pub struct IImageList_Vtbl { pub base__: ::windows::core::IUnknownVtbl, pub ImageListSetIcon: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, picon: *const isize, nloc: i32) -> ::windows::core::HRESULT, - pub ImageListSetStrip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbmapsm: *const isize, pbmaplg: *const isize, nstartloc: i32, cmask: u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub ImageListSetStrip: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbmapsm: *const isize, pbmaplg: *const isize, nstartloc: i32, cmask: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + ImageListSetStrip: usize, } #[doc = "*Required features: `\"Win32_System_Mmc\"`*"] pub const ILSIF_LEAVE_LARGE_ICON: u32 = 1073741824u32; @@ -4520,9 +4528,9 @@ impl ISnapinAbout { let mut result__ = ::core::mem::MaybeUninit::zeroed(); (::windows::core::Interface::vtable(self).GetSnapinImage)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - #[cfg(feature = "Win32_Graphics_Gdi")] - pub unsafe fn GetStaticFolderImage(&self, hsmallimage: &mut super::super::Graphics::Gdi::HBITMAP, hsmallimageopen: &mut super::super::Graphics::Gdi::HBITMAP, hlargeimage: &mut super::super::Graphics::Gdi::HBITMAP, cmask: &mut u32) -> ::windows::core::Result<()> { + #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] + pub unsafe fn GetStaticFolderImage(&self, hsmallimage: &mut super::super::Graphics::Gdi::HBITMAP, hsmallimageopen: &mut super::super::Graphics::Gdi::HBITMAP, hlargeimage: &mut super::super::Graphics::Gdi::HBITMAP, cmask: &mut super::super::Foundation::COLORREF) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetStaticFolderImage)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(hsmallimage), ::core::mem::transmute(hsmallimageopen), ::core::mem::transmute(hlargeimage), ::core::mem::transmute(cmask)).ok() } } @@ -4572,9 +4580,9 @@ pub struct ISnapinAbout_Vtbl { pub GetSnapinImage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, happicon: *mut super::super::UI::WindowsAndMessaging::HICON) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_UI_WindowsAndMessaging"))] GetSnapinImage: usize, - #[cfg(feature = "Win32_Graphics_Gdi")] - pub GetStaticFolderImage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hsmallimage: *mut super::super::Graphics::Gdi::HBITMAP, hsmallimageopen: *mut super::super::Graphics::Gdi::HBITMAP, hlargeimage: *mut super::super::Graphics::Gdi::HBITMAP, cmask: *mut u32) -> ::windows::core::HRESULT, - #[cfg(not(feature = "Win32_Graphics_Gdi"))] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] + pub GetStaticFolderImage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hsmallimage: *mut super::super::Graphics::Gdi::HBITMAP, hsmallimageopen: *mut super::super::Graphics::Gdi::HBITMAP, hlargeimage: *mut super::super::Graphics::Gdi::HBITMAP, cmask: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))] GetStaticFolderImage: usize, } #[doc = "*Required features: `\"Win32_System_Mmc\"`*"] @@ -4913,13 +4921,14 @@ pub struct IStringTable_Vtbl { #[repr(transparent)] pub struct IToolbar(::windows::core::IUnknown); impl IToolbar { - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - #[cfg(feature = "Win32_Graphics_Gdi")] - pub unsafe fn AddBitmap<'a, P0>(&self, nimages: i32, hbmp: P0, cxsize: i32, cysize: i32, crmask: u32) -> ::windows::core::Result<()> + #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] + pub unsafe fn AddBitmap<'a, P0, P1>(&self, nimages: i32, hbmp: P0, cxsize: i32, cysize: i32, crmask: P1) -> ::windows::core::Result<()> where P0: ::std::convert::Into, + P1: ::std::convert::Into, { - (::windows::core::Interface::vtable(self).AddBitmap)(::windows::core::Interface::as_raw(self), nimages, hbmp.into(), cxsize, cysize, crmask).ok() + (::windows::core::Interface::vtable(self).AddBitmap)(::windows::core::Interface::as_raw(self), nimages, hbmp.into(), cxsize, cysize, crmask.into()).ok() } pub unsafe fn AddButtons(&self, nbuttons: i32, lpbuttons: &MMCBUTTON) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).AddButtons)(::windows::core::Interface::as_raw(self), nbuttons, ::core::mem::transmute(lpbuttons)).ok() @@ -4984,9 +4993,9 @@ unsafe impl ::windows::core::Interface for IToolbar { #[doc(hidden)] pub struct IToolbar_Vtbl { pub base__: ::windows::core::IUnknownVtbl, - #[cfg(feature = "Win32_Graphics_Gdi")] - pub AddBitmap: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nimages: i32, hbmp: super::super::Graphics::Gdi::HBITMAP, cxsize: i32, cysize: i32, crmask: u32) -> ::windows::core::HRESULT, - #[cfg(not(feature = "Win32_Graphics_Gdi"))] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] + pub AddBitmap: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nimages: i32, hbmp: super::super::Graphics::Gdi::HBITMAP, cxsize: i32, cysize: i32, crmask: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))] AddBitmap: usize, pub AddButtons: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nbuttons: i32, lpbuttons: *const MMCBUTTON) -> ::windows::core::HRESULT, pub InsertButton: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nindex: i32, lpbutton: *const MMCBUTTON) -> ::windows::core::HRESULT, diff --git a/crates/libs/windows/src/Windows/Win32/System/Ole/impl.rs b/crates/libs/windows/src/Windows/Win32/System/Ole/impl.rs index c8ad3a51a0..b77e990879 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Ole/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Ole/impl.rs @@ -4954,14 +4954,14 @@ impl IVBGetControl_Vtbl { } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] pub trait IVariantChangeType_Impl: Sized { - fn ChangeType(&self, pvardst: *mut super::Com::VARIANT, pvarsrc: *const super::Com::VARIANT, lcid: u32, vtnew: u16) -> ::windows::core::Result<()>; + fn ChangeType(&self, pvardst: *mut super::Com::VARIANT, pvarsrc: *const super::Com::VARIANT, lcid: u32, vtnew: super::Com::VARENUM) -> ::windows::core::Result<()>; } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl ::windows::core::RuntimeName for IVariantChangeType {} #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] impl IVariantChangeType_Vtbl { pub const fn new, Impl: IVariantChangeType_Impl, const OFFSET: isize>() -> IVariantChangeType_Vtbl { - unsafe extern "system" fn ChangeType, Impl: IVariantChangeType_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pvardst: *mut super::Com::VARIANT, pvarsrc: *const super::Com::VARIANT, lcid: u32, vtnew: u16) -> ::windows::core::HRESULT { + unsafe extern "system" fn ChangeType, Impl: IVariantChangeType_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pvardst: *mut super::Com::VARIANT, pvarsrc: *const super::Com::VARIANT, lcid: u32, vtnew: super::Com::VARENUM) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.ChangeType(::core::mem::transmute_copy(&pvardst), ::core::mem::transmute_copy(&pvarsrc), ::core::mem::transmute_copy(&lcid), ::core::mem::transmute_copy(&vtnew)).into() diff --git a/crates/libs/windows/src/Windows/Win32/System/Ole/mod.rs b/crates/libs/windows/src/Windows/Win32/System/Ole/mod.rs index 6094cda4c0..61e53b0fa3 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Ole/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Ole/mod.rs @@ -942,10 +942,10 @@ impl ::core::fmt::Debug for DVASPECT2 { #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] #[inline] -pub unsafe fn DispCallFunc(pvinstance: *const ::core::ffi::c_void, ovft: usize, cc: super::Com::CALLCONV, vtreturn: u16, cactuals: u32, prgvt: *const u16, prgpvarg: *const *const super::Com::VARIANT) -> ::windows::core::Result { +pub unsafe fn DispCallFunc(pvinstance: *const ::core::ffi::c_void, ovft: usize, cc: super::Com::CALLCONV, vtreturn: super::Com::VARENUM, cactuals: u32, prgvt: *const u16, prgpvarg: *const *const super::Com::VARIANT) -> ::windows::core::Result { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DispCallFunc(pvinstance: *const ::core::ffi::c_void, ovft: usize, cc: super::Com::CALLCONV, vtreturn: u16, cactuals: u32, prgvt: *const u16, prgpvarg: *const *const super::Com::VARIANT, pvargresult: *mut super::Com::VARIANT) -> ::windows::core::HRESULT; + fn DispCallFunc(pvinstance: *const ::core::ffi::c_void, ovft: usize, cc: super::Com::CALLCONV, vtreturn: super::Com::VARENUM, cactuals: u32, prgvt: *const u16, prgpvarg: *const *const super::Com::VARIANT, pvargresult: *mut super::Com::VARIANT) -> ::windows::core::HRESULT; } let mut result__ = ::core::mem::MaybeUninit::zeroed(); DispCallFunc(::core::mem::transmute(pvinstance), ovft, cc, vtreturn, ::core::mem::transmute(cactuals), ::core::mem::transmute(prgvt), ::core::mem::transmute(prgpvarg), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) @@ -966,10 +966,10 @@ where #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] #[inline] -pub unsafe fn DispGetParam(pdispparams: &super::Com::DISPPARAMS, position: u32, vttarg: u16, pvarresult: &mut super::Com::VARIANT, puargerr: ::core::option::Option<&mut u32>) -> ::windows::core::Result<()> { +pub unsafe fn DispGetParam(pdispparams: &super::Com::DISPPARAMS, position: u32, vttarg: super::Com::VARENUM, pvarresult: &mut super::Com::VARIANT, puargerr: ::core::option::Option<&mut u32>) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DispGetParam(pdispparams: *const super::Com::DISPPARAMS, position: u32, vttarg: u16, pvarresult: *mut super::Com::VARIANT, puargerr: *mut u32) -> ::windows::core::HRESULT; + fn DispGetParam(pdispparams: *const super::Com::DISPPARAMS, position: u32, vttarg: super::Com::VARENUM, pvarresult: *mut super::Com::VARIANT, puargerr: *mut u32) -> ::windows::core::HRESULT; } DispGetParam(::core::mem::transmute(pdispparams), position, vttarg, ::core::mem::transmute(pvarresult), ::core::mem::transmute(puargerr)).ok() } @@ -10346,7 +10346,7 @@ pub struct IVariantChangeType(::windows::core::IUnknown); impl IVariantChangeType { #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] - pub unsafe fn ChangeType(&self, pvardst: &mut super::Com::VARIANT, pvarsrc: &super::Com::VARIANT, lcid: u32, vtnew: u16) -> ::windows::core::Result<()> { + pub unsafe fn ChangeType(&self, pvardst: &mut super::Com::VARIANT, pvarsrc: &super::Com::VARIANT, lcid: u32, vtnew: super::Com::VARENUM) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).ChangeType)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pvardst), ::core::mem::transmute(pvarsrc), lcid, vtnew).ok() } } @@ -10390,7 +10390,7 @@ unsafe impl ::windows::core::Interface for IVariantChangeType { pub struct IVariantChangeType_Vtbl { pub base__: ::windows::core::IUnknownVtbl, #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] - pub ChangeType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pvardst: *mut super::Com::VARIANT, pvarsrc: *const super::Com::VARIANT, lcid: u32, vtnew: u16) -> ::windows::core::HRESULT, + pub ChangeType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pvardst: *mut super::Com::VARIANT, pvarsrc: *const super::Com::VARIANT, lcid: u32, vtnew: super::Com::VARENUM) -> ::windows::core::HRESULT, #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com")))] ChangeType: usize, } @@ -10816,13 +10816,13 @@ pub struct IZoomEvents_Vtbl { #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] #[inline] -pub unsafe fn IsAccelerator<'a, P0>(haccel: P0, caccelentries: i32, lpmsg: &mut super::super::UI::WindowsAndMessaging::MSG, lpwcmd: &mut u16) -> super::super::Foundation::BOOL +pub unsafe fn IsAccelerator<'a, P0>(haccel: P0, caccelentries: i32, lpmsg: &super::super::UI::WindowsAndMessaging::MSG, lpwcmd: &mut u16) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn IsAccelerator(haccel: super::super::UI::WindowsAndMessaging::HACCEL, caccelentries: i32, lpmsg: *mut super::super::UI::WindowsAndMessaging::MSG, lpwcmd: *mut u16) -> super::super::Foundation::BOOL; + fn IsAccelerator(haccel: super::super::UI::WindowsAndMessaging::HACCEL, caccelentries: i32, lpmsg: *const super::super::UI::WindowsAndMessaging::MSG, lpwcmd: *mut u16) -> super::super::Foundation::BOOL; } IsAccelerator(haccel.into(), caccelentries, ::core::mem::transmute(lpmsg), ::core::mem::transmute(lpwcmd)) } @@ -11023,7 +11023,7 @@ pub struct METHODDATA { pub cc: super::Com::CALLCONV, pub cArgs: u32, pub wFlags: u16, - pub vtReturn: u16, + pub vtReturn: super::Com::VARENUM, } #[cfg(feature = "Win32_System_Com")] impl ::core::marker::Copy for METHODDATA {} @@ -14267,14 +14267,14 @@ pub unsafe fn OleBuildVersion() -> u32 { #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] #[inline] -pub unsafe fn OleCreate<'a, P0, P1>(rclsid: &::windows::core::GUID, riid: &::windows::core::GUID, renderopt: u32, pformatetc: &mut super::Com::FORMATETC, pclientsite: P0, pstg: P1, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> +pub unsafe fn OleCreate<'a, P0, P1>(rclsid: &::windows::core::GUID, riid: &::windows::core::GUID, renderopt: u32, pformatetc: &super::Com::FORMATETC, pclientsite: P0, pstg: P1, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, IOleClientSite>>, P1: ::std::convert::Into<::windows::core::InParam<'a, super::Com::StructuredStorage::IStorage>>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleCreate(rclsid: *const ::windows::core::GUID, riid: *const ::windows::core::GUID, renderopt: u32, pformatetc: *mut super::Com::FORMATETC, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + fn OleCreate(rclsid: *const ::windows::core::GUID, riid: *const ::windows::core::GUID, renderopt: u32, pformatetc: *const super::Com::FORMATETC, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; } OleCreate(::core::mem::transmute(rclsid), ::core::mem::transmute(riid), renderopt, ::core::mem::transmute(pformatetc), pclientsite.into().abi(), pstg.into().abi(), ::core::mem::transmute(ppvobj)).ok() } @@ -14307,7 +14307,7 @@ where #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] #[inline] -pub unsafe fn OleCreateEx<'a, P0, P1, P2>(rclsid: &::windows::core::GUID, riid: &::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: &mut u32, rgformatetc: &mut super::Com::FORMATETC, lpadvisesink: P0, rgdwconnection: &mut u32, pclientsite: P1, pstg: P2, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> +pub unsafe fn OleCreateEx<'a, P0, P1, P2>(rclsid: &::windows::core::GUID, riid: &::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: &u32, rgformatetc: &super::Com::FORMATETC, lpadvisesink: P0, rgdwconnection: &mut u32, pclientsite: P1, pstg: P2, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, super::Com::IAdviseSink>>, P1: ::std::convert::Into<::windows::core::InParam<'a, IOleClientSite>>, @@ -14315,7 +14315,7 @@ where { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleCreateEx(rclsid: *const ::windows::core::GUID, riid: *const ::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *mut u32, rgformatetc: *mut super::Com::FORMATETC, lpadvisesink: *mut ::core::ffi::c_void, rgdwconnection: *mut u32, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + fn OleCreateEx(rclsid: *const ::windows::core::GUID, riid: *const ::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *const u32, rgformatetc: *const super::Com::FORMATETC, lpadvisesink: *mut ::core::ffi::c_void, rgdwconnection: *mut u32, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; } OleCreateEx(::core::mem::transmute(rclsid), ::core::mem::transmute(riid), dwflags, renderopt, cformats, ::core::mem::transmute(rgadvf), ::core::mem::transmute(rgformatetc), lpadvisesink.into().abi(), ::core::mem::transmute(rgdwconnection), pclientsite.into().abi(), pstg.into().abi(), ::core::mem::transmute(ppvobj)).ok() } @@ -14332,7 +14332,7 @@ pub unsafe fn OleCreateFontIndirect(lpfontdesc: &mut FONTDESC, riid: &::windows: #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] #[inline] -pub unsafe fn OleCreateFromData<'a, P0, P1, P2>(psrcdataobj: P0, riid: &::windows::core::GUID, renderopt: u32, pformatetc: &mut super::Com::FORMATETC, pclientsite: P1, pstg: P2, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> +pub unsafe fn OleCreateFromData<'a, P0, P1, P2>(psrcdataobj: P0, riid: &::windows::core::GUID, renderopt: u32, pformatetc: &super::Com::FORMATETC, pclientsite: P1, pstg: P2, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, super::Com::IDataObject>>, P1: ::std::convert::Into<::windows::core::InParam<'a, IOleClientSite>>, @@ -14340,14 +14340,14 @@ where { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleCreateFromData(psrcdataobj: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, renderopt: u32, pformatetc: *mut super::Com::FORMATETC, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + fn OleCreateFromData(psrcdataobj: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, renderopt: u32, pformatetc: *const super::Com::FORMATETC, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; } OleCreateFromData(psrcdataobj.into().abi(), ::core::mem::transmute(riid), renderopt, ::core::mem::transmute(pformatetc), pclientsite.into().abi(), pstg.into().abi(), ::core::mem::transmute(ppvobj)).ok() } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] #[inline] -pub unsafe fn OleCreateFromDataEx<'a, P0, P1, P2, P3>(psrcdataobj: P0, riid: &::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: &mut u32, rgformatetc: &mut super::Com::FORMATETC, lpadvisesink: P1, rgdwconnection: &mut u32, pclientsite: P2, pstg: P3, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> +pub unsafe fn OleCreateFromDataEx<'a, P0, P1, P2, P3>(psrcdataobj: P0, riid: &::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: &u32, rgformatetc: &super::Com::FORMATETC, lpadvisesink: P1, rgdwconnection: &mut u32, pclientsite: P2, pstg: P3, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, super::Com::IDataObject>>, P1: ::std::convert::Into<::windows::core::InParam<'a, super::Com::IAdviseSink>>, @@ -14356,14 +14356,14 @@ where { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleCreateFromDataEx(psrcdataobj: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *mut u32, rgformatetc: *mut super::Com::FORMATETC, lpadvisesink: *mut ::core::ffi::c_void, rgdwconnection: *mut u32, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + fn OleCreateFromDataEx(psrcdataobj: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *const u32, rgformatetc: *const super::Com::FORMATETC, lpadvisesink: *mut ::core::ffi::c_void, rgdwconnection: *mut u32, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; } OleCreateFromDataEx(psrcdataobj.into().abi(), ::core::mem::transmute(riid), dwflags, renderopt, cformats, ::core::mem::transmute(rgadvf), ::core::mem::transmute(rgformatetc), lpadvisesink.into().abi(), ::core::mem::transmute(rgdwconnection), pclientsite.into().abi(), pstg.into().abi(), ::core::mem::transmute(ppvobj)).ok() } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] #[inline] -pub unsafe fn OleCreateFromFile<'a, P0, P1, P2>(rclsid: &::windows::core::GUID, lpszfilename: P0, riid: &::windows::core::GUID, renderopt: u32, lpformatetc: &mut super::Com::FORMATETC, pclientsite: P1, pstg: P2, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> +pub unsafe fn OleCreateFromFile<'a, P0, P1, P2>(rclsid: &::windows::core::GUID, lpszfilename: P0, riid: &::windows::core::GUID, renderopt: u32, lpformatetc: &super::Com::FORMATETC, pclientsite: P1, pstg: P2, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::PCWSTR>, P1: ::std::convert::Into<::windows::core::InParam<'a, IOleClientSite>>, @@ -14371,14 +14371,14 @@ where { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleCreateFromFile(rclsid: *const ::windows::core::GUID, lpszfilename: ::windows::core::PCWSTR, riid: *const ::windows::core::GUID, renderopt: u32, lpformatetc: *mut super::Com::FORMATETC, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + fn OleCreateFromFile(rclsid: *const ::windows::core::GUID, lpszfilename: ::windows::core::PCWSTR, riid: *const ::windows::core::GUID, renderopt: u32, lpformatetc: *const super::Com::FORMATETC, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; } OleCreateFromFile(::core::mem::transmute(rclsid), lpszfilename.into(), ::core::mem::transmute(riid), renderopt, ::core::mem::transmute(lpformatetc), pclientsite.into().abi(), pstg.into().abi(), ::core::mem::transmute(ppvobj)).ok() } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] #[inline] -pub unsafe fn OleCreateFromFileEx<'a, P0, P1, P2, P3>(rclsid: &::windows::core::GUID, lpszfilename: P0, riid: &::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: &mut u32, rgformatetc: &mut super::Com::FORMATETC, lpadvisesink: P1, rgdwconnection: &mut u32, pclientsite: P2, pstg: P3, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> +pub unsafe fn OleCreateFromFileEx<'a, P0, P1, P2, P3>(rclsid: &::windows::core::GUID, lpszfilename: P0, riid: &::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: &u32, rgformatetc: &super::Com::FORMATETC, lpadvisesink: P1, rgdwconnection: &mut u32, pclientsite: P2, pstg: P3, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::PCWSTR>, P1: ::std::convert::Into<::windows::core::InParam<'a, super::Com::IAdviseSink>>, @@ -14387,14 +14387,14 @@ where { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleCreateFromFileEx(rclsid: *const ::windows::core::GUID, lpszfilename: ::windows::core::PCWSTR, riid: *const ::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *mut u32, rgformatetc: *mut super::Com::FORMATETC, lpadvisesink: *mut ::core::ffi::c_void, rgdwconnection: *mut u32, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + fn OleCreateFromFileEx(rclsid: *const ::windows::core::GUID, lpszfilename: ::windows::core::PCWSTR, riid: *const ::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *const u32, rgformatetc: *const super::Com::FORMATETC, lpadvisesink: *mut ::core::ffi::c_void, rgdwconnection: *mut u32, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; } OleCreateFromFileEx(::core::mem::transmute(rclsid), lpszfilename.into(), ::core::mem::transmute(riid), dwflags, renderopt, cformats, ::core::mem::transmute(rgadvf), ::core::mem::transmute(rgformatetc), lpadvisesink.into().abi(), ::core::mem::transmute(rgdwconnection), pclientsite.into().abi(), pstg.into().abi(), ::core::mem::transmute(ppvobj)).ok() } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] #[inline] -pub unsafe fn OleCreateLink<'a, P0, P1, P2>(pmklinksrc: P0, riid: &::windows::core::GUID, renderopt: u32, lpformatetc: &mut super::Com::FORMATETC, pclientsite: P1, pstg: P2, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> +pub unsafe fn OleCreateLink<'a, P0, P1, P2>(pmklinksrc: P0, riid: &::windows::core::GUID, renderopt: u32, lpformatetc: &super::Com::FORMATETC, pclientsite: P1, pstg: P2, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, super::Com::IMoniker>>, P1: ::std::convert::Into<::windows::core::InParam<'a, IOleClientSite>>, @@ -14402,14 +14402,14 @@ where { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleCreateLink(pmklinksrc: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, renderopt: u32, lpformatetc: *mut super::Com::FORMATETC, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + fn OleCreateLink(pmklinksrc: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, renderopt: u32, lpformatetc: *const super::Com::FORMATETC, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; } OleCreateLink(pmklinksrc.into().abi(), ::core::mem::transmute(riid), renderopt, ::core::mem::transmute(lpformatetc), pclientsite.into().abi(), pstg.into().abi(), ::core::mem::transmute(ppvobj)).ok() } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] #[inline] -pub unsafe fn OleCreateLinkEx<'a, P0, P1, P2, P3>(pmklinksrc: P0, riid: &::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: &mut u32, rgformatetc: &mut super::Com::FORMATETC, lpadvisesink: P1, rgdwconnection: &mut u32, pclientsite: P2, pstg: P3, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> +pub unsafe fn OleCreateLinkEx<'a, P0, P1, P2, P3>(pmklinksrc: P0, riid: &::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: &u32, rgformatetc: &super::Com::FORMATETC, lpadvisesink: P1, rgdwconnection: &mut u32, pclientsite: P2, pstg: P3, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, super::Com::IMoniker>>, P1: ::std::convert::Into<::windows::core::InParam<'a, super::Com::IAdviseSink>>, @@ -14418,14 +14418,14 @@ where { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleCreateLinkEx(pmklinksrc: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *mut u32, rgformatetc: *mut super::Com::FORMATETC, lpadvisesink: *mut ::core::ffi::c_void, rgdwconnection: *mut u32, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + fn OleCreateLinkEx(pmklinksrc: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *const u32, rgformatetc: *const super::Com::FORMATETC, lpadvisesink: *mut ::core::ffi::c_void, rgdwconnection: *mut u32, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; } OleCreateLinkEx(pmklinksrc.into().abi(), ::core::mem::transmute(riid), dwflags, renderopt, cformats, ::core::mem::transmute(rgadvf), ::core::mem::transmute(rgformatetc), lpadvisesink.into().abi(), ::core::mem::transmute(rgdwconnection), pclientsite.into().abi(), pstg.into().abi(), ::core::mem::transmute(ppvobj)).ok() } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] #[inline] -pub unsafe fn OleCreateLinkFromData<'a, P0, P1, P2>(psrcdataobj: P0, riid: &::windows::core::GUID, renderopt: u32, pformatetc: &mut super::Com::FORMATETC, pclientsite: P1, pstg: P2, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> +pub unsafe fn OleCreateLinkFromData<'a, P0, P1, P2>(psrcdataobj: P0, riid: &::windows::core::GUID, renderopt: u32, pformatetc: &super::Com::FORMATETC, pclientsite: P1, pstg: P2, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, super::Com::IDataObject>>, P1: ::std::convert::Into<::windows::core::InParam<'a, IOleClientSite>>, @@ -14433,14 +14433,14 @@ where { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleCreateLinkFromData(psrcdataobj: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, renderopt: u32, pformatetc: *mut super::Com::FORMATETC, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + fn OleCreateLinkFromData(psrcdataobj: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, renderopt: u32, pformatetc: *const super::Com::FORMATETC, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; } OleCreateLinkFromData(psrcdataobj.into().abi(), ::core::mem::transmute(riid), renderopt, ::core::mem::transmute(pformatetc), pclientsite.into().abi(), pstg.into().abi(), ::core::mem::transmute(ppvobj)).ok() } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] #[inline] -pub unsafe fn OleCreateLinkFromDataEx<'a, P0, P1, P2, P3>(psrcdataobj: P0, riid: &::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: &mut u32, rgformatetc: &mut super::Com::FORMATETC, lpadvisesink: P1, rgdwconnection: &mut u32, pclientsite: P2, pstg: P3, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> +pub unsafe fn OleCreateLinkFromDataEx<'a, P0, P1, P2, P3>(psrcdataobj: P0, riid: &::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: &u32, rgformatetc: &super::Com::FORMATETC, lpadvisesink: P1, rgdwconnection: &mut u32, pclientsite: P2, pstg: P3, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, super::Com::IDataObject>>, P1: ::std::convert::Into<::windows::core::InParam<'a, super::Com::IAdviseSink>>, @@ -14449,14 +14449,14 @@ where { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleCreateLinkFromDataEx(psrcdataobj: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *mut u32, rgformatetc: *mut super::Com::FORMATETC, lpadvisesink: *mut ::core::ffi::c_void, rgdwconnection: *mut u32, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + fn OleCreateLinkFromDataEx(psrcdataobj: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *const u32, rgformatetc: *const super::Com::FORMATETC, lpadvisesink: *mut ::core::ffi::c_void, rgdwconnection: *mut u32, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; } OleCreateLinkFromDataEx(psrcdataobj.into().abi(), ::core::mem::transmute(riid), dwflags, renderopt, cformats, ::core::mem::transmute(rgadvf), ::core::mem::transmute(rgformatetc), lpadvisesink.into().abi(), ::core::mem::transmute(rgdwconnection), pclientsite.into().abi(), pstg.into().abi(), ::core::mem::transmute(ppvobj)).ok() } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] #[inline] -pub unsafe fn OleCreateLinkToFile<'a, P0, P1, P2>(lpszfilename: P0, riid: &::windows::core::GUID, renderopt: u32, lpformatetc: &mut super::Com::FORMATETC, pclientsite: P1, pstg: P2, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> +pub unsafe fn OleCreateLinkToFile<'a, P0, P1, P2>(lpszfilename: P0, riid: &::windows::core::GUID, renderopt: u32, lpformatetc: &super::Com::FORMATETC, pclientsite: P1, pstg: P2, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::PCWSTR>, P1: ::std::convert::Into<::windows::core::InParam<'a, IOleClientSite>>, @@ -14464,14 +14464,14 @@ where { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleCreateLinkToFile(lpszfilename: ::windows::core::PCWSTR, riid: *const ::windows::core::GUID, renderopt: u32, lpformatetc: *mut super::Com::FORMATETC, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + fn OleCreateLinkToFile(lpszfilename: ::windows::core::PCWSTR, riid: *const ::windows::core::GUID, renderopt: u32, lpformatetc: *const super::Com::FORMATETC, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; } OleCreateLinkToFile(lpszfilename.into(), ::core::mem::transmute(riid), renderopt, ::core::mem::transmute(lpformatetc), pclientsite.into().abi(), pstg.into().abi(), ::core::mem::transmute(ppvobj)).ok() } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] #[inline] -pub unsafe fn OleCreateLinkToFileEx<'a, P0, P1, P2, P3>(lpszfilename: P0, riid: &::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: &mut u32, rgformatetc: &mut super::Com::FORMATETC, lpadvisesink: P1, rgdwconnection: &mut u32, pclientsite: P2, pstg: P3, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> +pub unsafe fn OleCreateLinkToFileEx<'a, P0, P1, P2, P3>(lpszfilename: P0, riid: &::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: &u32, rgformatetc: &super::Com::FORMATETC, lpadvisesink: P1, rgdwconnection: &mut u32, pclientsite: P2, pstg: P3, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::PCWSTR>, P1: ::std::convert::Into<::windows::core::InParam<'a, super::Com::IAdviseSink>>, @@ -14480,20 +14480,20 @@ where { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleCreateLinkToFileEx(lpszfilename: ::windows::core::PCWSTR, riid: *const ::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *mut u32, rgformatetc: *mut super::Com::FORMATETC, lpadvisesink: *mut ::core::ffi::c_void, rgdwconnection: *mut u32, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + fn OleCreateLinkToFileEx(lpszfilename: ::windows::core::PCWSTR, riid: *const ::windows::core::GUID, dwflags: u32, renderopt: u32, cformats: u32, rgadvf: *const u32, rgformatetc: *const super::Com::FORMATETC, lpadvisesink: *mut ::core::ffi::c_void, rgdwconnection: *mut u32, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; } OleCreateLinkToFileEx(lpszfilename.into(), ::core::mem::transmute(riid), dwflags, renderopt, cformats, ::core::mem::transmute(rgadvf), ::core::mem::transmute(rgformatetc), lpadvisesink.into().abi(), ::core::mem::transmute(rgdwconnection), pclientsite.into().abi(), pstg.into().abi(), ::core::mem::transmute(ppvobj)).ok() } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(feature = "Win32_UI_WindowsAndMessaging")] #[inline] -pub unsafe fn OleCreateMenuDescriptor<'a, P0>(hmenucombined: P0, lpmenuwidths: &mut OleMenuGroupWidths) -> isize +pub unsafe fn OleCreateMenuDescriptor<'a, P0>(hmenucombined: P0, lpmenuwidths: &OleMenuGroupWidths) -> isize where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleCreateMenuDescriptor(hmenucombined: super::super::UI::WindowsAndMessaging::HMENU, lpmenuwidths: *mut OleMenuGroupWidths) -> isize; + fn OleCreateMenuDescriptor(hmenucombined: super::super::UI::WindowsAndMessaging::HMENU, lpmenuwidths: *const OleMenuGroupWidths) -> isize; } OleCreateMenuDescriptor(hmenucombined.into(), ::core::mem::transmute(lpmenuwidths)) } @@ -14537,7 +14537,7 @@ pub unsafe fn OleCreatePropertyFrameIndirect(lpparams: &mut OCPFIPARAMS) -> ::wi #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] #[inline] -pub unsafe fn OleCreateStaticFromData<'a, P0, P1, P2>(psrcdataobj: P0, iid: &::windows::core::GUID, renderopt: u32, pformatetc: &mut super::Com::FORMATETC, pclientsite: P1, pstg: P2, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> +pub unsafe fn OleCreateStaticFromData<'a, P0, P1, P2>(psrcdataobj: P0, iid: &::windows::core::GUID, renderopt: u32, pformatetc: &super::Com::FORMATETC, pclientsite: P1, pstg: P2, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, super::Com::IDataObject>>, P1: ::std::convert::Into<::windows::core::InParam<'a, IOleClientSite>>, @@ -14545,7 +14545,7 @@ where { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleCreateStaticFromData(psrcdataobj: *mut ::core::ffi::c_void, iid: *const ::windows::core::GUID, renderopt: u32, pformatetc: *mut super::Com::FORMATETC, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + fn OleCreateStaticFromData(psrcdataobj: *mut ::core::ffi::c_void, iid: *const ::windows::core::GUID, renderopt: u32, pformatetc: *const super::Com::FORMATETC, pclientsite: *mut ::core::ffi::c_void, pstg: *mut ::core::ffi::c_void, ppvobj: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; } OleCreateStaticFromData(psrcdataobj.into().abi(), ::core::mem::transmute(iid), renderopt, ::core::mem::transmute(pformatetc), pclientsite.into().abi(), pstg.into().abi(), ::core::mem::transmute(ppvobj)).ok() } @@ -14561,7 +14561,7 @@ pub unsafe fn OleDestroyMenuDescriptor(holemenu: isize) -> ::windows::core::Resu #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(feature = "Win32_System_Com_StructuredStorage")] #[inline] -pub unsafe fn OleDoAutoConvert<'a, P0>(pstg: P0, pclsidnew: &mut ::windows::core::GUID) -> ::windows::core::Result<()> +pub unsafe fn OleDoAutoConvert<'a, P0>(pstg: P0) -> ::windows::core::Result<::windows::core::GUID> where P0: ::std::convert::Into<::windows::core::InParam<'a, super::Com::StructuredStorage::IStorage>>, { @@ -14569,19 +14569,20 @@ where extern "system" { fn OleDoAutoConvert(pstg: *mut ::core::ffi::c_void, pclsidnew: *mut ::windows::core::GUID) -> ::windows::core::HRESULT; } - OleDoAutoConvert(pstg.into().abi(), ::core::mem::transmute(pclsidnew)).ok() + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + OleDoAutoConvert(pstg.into().abi(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::<::windows::core::GUID>(result__) } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn OleDraw<'a, P0, P1>(punknown: P0, dwaspect: u32, hdcdraw: P1, lprcbounds: &mut super::super::Foundation::RECT) -> ::windows::core::Result<()> +pub unsafe fn OleDraw<'a, P0, P1>(punknown: P0, dwaspect: u32, hdcdraw: P1, lprcbounds: &super::super::Foundation::RECT) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, ::windows::core::IUnknown>>, P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleDraw(punknown: *mut ::core::ffi::c_void, dwaspect: u32, hdcdraw: super::super::Graphics::Gdi::HDC, lprcbounds: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT; + fn OleDraw(punknown: *mut ::core::ffi::c_void, dwaspect: u32, hdcdraw: super::super::Graphics::Gdi::HDC, lprcbounds: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT; } OleDraw(punknown.into().abi(), dwaspect, hdcdraw.into(), ::core::mem::transmute(lprcbounds)).ok() } @@ -14609,12 +14610,13 @@ pub unsafe fn OleFlushClipboard() -> ::windows::core::Result<()> { } #[doc = "*Required features: `\"Win32_System_Ole\"`*"] #[inline] -pub unsafe fn OleGetAutoConvert(clsidold: &::windows::core::GUID, pclsidnew: &mut ::windows::core::GUID) -> ::windows::core::Result<()> { +pub unsafe fn OleGetAutoConvert(clsidold: &::windows::core::GUID) -> ::windows::core::Result<::windows::core::GUID> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn OleGetAutoConvert(clsidold: *const ::windows::core::GUID, pclsidnew: *mut ::windows::core::GUID) -> ::windows::core::HRESULT; } - OleGetAutoConvert(::core::mem::transmute(clsidold), ::core::mem::transmute(pclsidnew)).ok() + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + OleGetAutoConvert(::core::mem::transmute(clsidold), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::<::windows::core::GUID>(result__) } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] @@ -14681,10 +14683,10 @@ where } #[doc = "*Required features: `\"Win32_System_Ole\"`*"] #[inline] -pub unsafe fn OleInitialize(pvreserved: *mut ::core::ffi::c_void) -> ::windows::core::Result<()> { +pub unsafe fn OleInitialize(pvreserved: *const ::core::ffi::c_void) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleInitialize(pvreserved: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + fn OleInitialize(pvreserved: *const ::core::ffi::c_void) -> ::windows::core::HRESULT; } OleInitialize(::core::mem::transmute(pvreserved)).ok() } @@ -14933,12 +14935,13 @@ pub unsafe fn OleRegEnumVerbs(clsid: &::windows::core::GUID) -> ::windows::core: } #[doc = "*Required features: `\"Win32_System_Ole\"`*"] #[inline] -pub unsafe fn OleRegGetMiscStatus(clsid: &::windows::core::GUID, dwaspect: u32, pdwstatus: &mut u32) -> ::windows::core::Result<()> { +pub unsafe fn OleRegGetMiscStatus(clsid: &::windows::core::GUID, dwaspect: u32) -> ::windows::core::Result { #[cfg_attr(windows, link(name = "windows"))] extern "system" { fn OleRegGetMiscStatus(clsid: *const ::windows::core::GUID, dwaspect: u32, pdwstatus: *mut u32) -> ::windows::core::HRESULT; } - OleRegGetMiscStatus(::core::mem::transmute(clsid), dwaspect, ::core::mem::transmute(pdwstatus)).ok() + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + OleRegGetMiscStatus(::core::mem::transmute(clsid), dwaspect, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } #[doc = "*Required features: `\"Win32_System_Ole\"`*"] #[inline] @@ -15060,26 +15063,26 @@ where #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] #[inline] -pub unsafe fn OleTranslateAccelerator<'a, P0>(lpframe: P0, lpframeinfo: &mut OIFI, lpmsg: &mut super::super::UI::WindowsAndMessaging::MSG) -> ::windows::core::Result<()> +pub unsafe fn OleTranslateAccelerator<'a, P0>(lpframe: P0, lpframeinfo: &OIFI, lpmsg: &super::super::UI::WindowsAndMessaging::MSG) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, IOleInPlaceFrame>>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleTranslateAccelerator(lpframe: *mut ::core::ffi::c_void, lpframeinfo: *mut OIFI, lpmsg: *mut super::super::UI::WindowsAndMessaging::MSG) -> ::windows::core::HRESULT; + fn OleTranslateAccelerator(lpframe: *mut ::core::ffi::c_void, lpframeinfo: *const OIFI, lpmsg: *const super::super::UI::WindowsAndMessaging::MSG) -> ::windows::core::HRESULT; } OleTranslateAccelerator(lpframe.into().abi(), ::core::mem::transmute(lpframeinfo), ::core::mem::transmute(lpmsg)).ok() } -#[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] +#[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn OleTranslateColor<'a, P0>(clr: u32, hpal: P0, lpcolorref: &mut u32) -> ::windows::core::Result<()> +pub unsafe fn OleTranslateColor<'a, P0>(clr: u32, hpal: P0, lpcolorref: &mut super::super::Foundation::COLORREF) -> ::windows::core::Result<()> where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OleTranslateColor(clr: u32, hpal: super::super::Graphics::Gdi::HPALETTE, lpcolorref: *mut u32) -> ::windows::core::HRESULT; + fn OleTranslateColor(clr: u32, hpal: super::super::Graphics::Gdi::HPALETTE, lpcolorref: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT; } OleTranslateColor(clr, hpal.into(), ::core::mem::transmute(lpcolorref)).ok() } @@ -15458,31 +15461,39 @@ impl ::core::default::Default for PAGESET { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] +#[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] +#[cfg(feature = "Win32_System_Com")] pub struct PARAMDATA { pub szName: ::windows::core::PWSTR, - pub vt: u16, + pub vt: super::Com::VARENUM, } +#[cfg(feature = "Win32_System_Com")] impl ::core::marker::Copy for PARAMDATA {} +#[cfg(feature = "Win32_System_Com")] impl ::core::clone::Clone for PARAMDATA { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_System_Com")] impl ::core::fmt::Debug for PARAMDATA { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("PARAMDATA").field("szName", &self.szName).field("vt", &self.vt).finish() } } +#[cfg(feature = "Win32_System_Com")] unsafe impl ::windows::core::Abi for PARAMDATA { type Abi = Self; } +#[cfg(feature = "Win32_System_Com")] impl ::core::cmp::PartialEq for PARAMDATA { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_System_Com")] impl ::core::cmp::Eq for PARAMDATA {} +#[cfg(feature = "Win32_System_Com")] impl ::core::default::Default for PARAMDATA { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -16391,10 +16402,10 @@ where #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(all(feature = "Win32_Graphics_Gdi", feature = "Win32_System_Com_StructuredStorage"))] #[inline] -pub unsafe fn ReleaseStgMedium(param0: &mut super::Com::STGMEDIUM) { +pub unsafe fn ReleaseStgMedium(param0: &super::Com::STGMEDIUM) { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ReleaseStgMedium(param0: *mut super::Com::STGMEDIUM); + fn ReleaseStgMedium(param0: *const super::Com::STGMEDIUM); } ReleaseStgMedium(::core::mem::transmute(param0)) } @@ -16558,10 +16569,10 @@ pub unsafe fn SafeArrayAllocDescriptor(cdims: u32) -> ::windows::core::Result<*m #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] #[inline] -pub unsafe fn SafeArrayAllocDescriptorEx(vt: u16, cdims: u32) -> ::windows::core::Result<*mut super::Com::SAFEARRAY> { +pub unsafe fn SafeArrayAllocDescriptorEx(vt: super::Com::VARENUM, cdims: u32) -> ::windows::core::Result<*mut super::Com::SAFEARRAY> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SafeArrayAllocDescriptorEx(vt: u16, cdims: u32, ppsaout: *mut *mut super::Com::SAFEARRAY) -> ::windows::core::HRESULT; + fn SafeArrayAllocDescriptorEx(vt: super::Com::VARENUM, cdims: u32, ppsaout: *mut *mut super::Com::SAFEARRAY) -> ::windows::core::HRESULT; } let mut result__ = ::core::mem::MaybeUninit::zeroed(); SafeArrayAllocDescriptorEx(vt, cdims, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::<*mut super::Com::SAFEARRAY>(result__) @@ -16590,40 +16601,40 @@ pub unsafe fn SafeArrayCopyData(psasource: &super::Com::SAFEARRAY, psatarget: &s #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] #[inline] -pub unsafe fn SafeArrayCreate(vt: u16, cdims: u32, rgsabound: &super::Com::SAFEARRAYBOUND) -> *mut super::Com::SAFEARRAY { +pub unsafe fn SafeArrayCreate(vt: super::Com::VARENUM, cdims: u32, rgsabound: &super::Com::SAFEARRAYBOUND) -> *mut super::Com::SAFEARRAY { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SafeArrayCreate(vt: u16, cdims: u32, rgsabound: *const super::Com::SAFEARRAYBOUND) -> *mut super::Com::SAFEARRAY; + fn SafeArrayCreate(vt: super::Com::VARENUM, cdims: u32, rgsabound: *const super::Com::SAFEARRAYBOUND) -> *mut super::Com::SAFEARRAY; } SafeArrayCreate(vt, cdims, ::core::mem::transmute(rgsabound)) } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] #[inline] -pub unsafe fn SafeArrayCreateEx(vt: u16, cdims: u32, rgsabound: &super::Com::SAFEARRAYBOUND, pvextra: *const ::core::ffi::c_void) -> *mut super::Com::SAFEARRAY { +pub unsafe fn SafeArrayCreateEx(vt: super::Com::VARENUM, cdims: u32, rgsabound: &super::Com::SAFEARRAYBOUND, pvextra: *const ::core::ffi::c_void) -> *mut super::Com::SAFEARRAY { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SafeArrayCreateEx(vt: u16, cdims: u32, rgsabound: *const super::Com::SAFEARRAYBOUND, pvextra: *const ::core::ffi::c_void) -> *mut super::Com::SAFEARRAY; + fn SafeArrayCreateEx(vt: super::Com::VARENUM, cdims: u32, rgsabound: *const super::Com::SAFEARRAYBOUND, pvextra: *const ::core::ffi::c_void) -> *mut super::Com::SAFEARRAY; } SafeArrayCreateEx(vt, cdims, ::core::mem::transmute(rgsabound), ::core::mem::transmute(pvextra)) } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] #[inline] -pub unsafe fn SafeArrayCreateVector(vt: u16, llbound: i32, celements: u32) -> *mut super::Com::SAFEARRAY { +pub unsafe fn SafeArrayCreateVector(vt: super::Com::VARENUM, llbound: i32, celements: u32) -> *mut super::Com::SAFEARRAY { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SafeArrayCreateVector(vt: u16, llbound: i32, celements: u32) -> *mut super::Com::SAFEARRAY; + fn SafeArrayCreateVector(vt: super::Com::VARENUM, llbound: i32, celements: u32) -> *mut super::Com::SAFEARRAY; } SafeArrayCreateVector(vt, llbound, celements) } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] #[inline] -pub unsafe fn SafeArrayCreateVectorEx(vt: u16, llbound: i32, celements: u32, pvextra: *const ::core::ffi::c_void) -> *mut super::Com::SAFEARRAY { +pub unsafe fn SafeArrayCreateVectorEx(vt: super::Com::VARENUM, llbound: i32, celements: u32, pvextra: *const ::core::ffi::c_void) -> *mut super::Com::SAFEARRAY { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SafeArrayCreateVectorEx(vt: u16, llbound: i32, celements: u32, pvextra: *const ::core::ffi::c_void) -> *mut super::Com::SAFEARRAY; + fn SafeArrayCreateVectorEx(vt: super::Com::VARENUM, llbound: i32, celements: u32, pvextra: *const ::core::ffi::c_void) -> *mut super::Com::SAFEARRAY; } SafeArrayCreateVectorEx(vt, llbound, celements, ::core::mem::transmute(pvextra)) } @@ -17108,133 +17119,6 @@ pub const VARCMP_NULL: u32 = 3u32; #[doc = "*Required features: `\"Win32_System_Ole\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct VARENUM(pub i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_EMPTY: VARENUM = VARENUM(0i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_NULL: VARENUM = VARENUM(1i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_I2: VARENUM = VARENUM(2i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_I4: VARENUM = VARENUM(3i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_R4: VARENUM = VARENUM(4i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_R8: VARENUM = VARENUM(5i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_CY: VARENUM = VARENUM(6i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_DATE: VARENUM = VARENUM(7i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_BSTR: VARENUM = VARENUM(8i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_DISPATCH: VARENUM = VARENUM(9i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_ERROR: VARENUM = VARENUM(10i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_BOOL: VARENUM = VARENUM(11i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_VARIANT: VARENUM = VARENUM(12i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_UNKNOWN: VARENUM = VARENUM(13i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_DECIMAL: VARENUM = VARENUM(14i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_I1: VARENUM = VARENUM(16i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_UI1: VARENUM = VARENUM(17i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_UI2: VARENUM = VARENUM(18i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_UI4: VARENUM = VARENUM(19i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_I8: VARENUM = VARENUM(20i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_UI8: VARENUM = VARENUM(21i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_INT: VARENUM = VARENUM(22i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_UINT: VARENUM = VARENUM(23i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_VOID: VARENUM = VARENUM(24i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_HRESULT: VARENUM = VARENUM(25i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_PTR: VARENUM = VARENUM(26i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_SAFEARRAY: VARENUM = VARENUM(27i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_CARRAY: VARENUM = VARENUM(28i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_USERDEFINED: VARENUM = VARENUM(29i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_LPSTR: VARENUM = VARENUM(30i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_LPWSTR: VARENUM = VARENUM(31i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_RECORD: VARENUM = VARENUM(36i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_INT_PTR: VARENUM = VARENUM(37i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_UINT_PTR: VARENUM = VARENUM(38i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_FILETIME: VARENUM = VARENUM(64i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_BLOB: VARENUM = VARENUM(65i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_STREAM: VARENUM = VARENUM(66i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_STORAGE: VARENUM = VARENUM(67i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_STREAMED_OBJECT: VARENUM = VARENUM(68i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_STORED_OBJECT: VARENUM = VARENUM(69i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_BLOB_OBJECT: VARENUM = VARENUM(70i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_CF: VARENUM = VARENUM(71i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_CLSID: VARENUM = VARENUM(72i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_VERSIONED_STREAM: VARENUM = VARENUM(73i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_BSTR_BLOB: VARENUM = VARENUM(4095i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_VECTOR: VARENUM = VARENUM(4096i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_ARRAY: VARENUM = VARENUM(8192i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_BYREF: VARENUM = VARENUM(16384i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_RESERVED: VARENUM = VARENUM(32768i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_ILLEGAL: VARENUM = VARENUM(65535i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_ILLEGALMASKED: VARENUM = VARENUM(4095i32); -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -pub const VT_TYPEMASK: VARENUM = VARENUM(4095i32); -impl ::core::marker::Copy for VARENUM {} -impl ::core::clone::Clone for VARENUM { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for VARENUM { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for VARENUM { - type Abi = Self; -} -impl ::core::fmt::Debug for VARENUM { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("VARENUM").field(&self.0).finish() - } -} -#[doc = "*Required features: `\"Win32_System_Ole\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct VARFLAGS(pub i32); #[doc = "*Required features: `\"Win32_System_Ole\"`*"] pub const VARFLAG_FREADONLY: VARFLAGS = VARFLAGS(1i32); @@ -20471,20 +20355,20 @@ pub unsafe fn VarXor(pvarleft: &super::Com::VARIANT, pvarright: &super::Com::VAR #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] #[inline] -pub unsafe fn VariantChangeType(pvargdest: &mut super::Com::VARIANT, pvarsrc: &super::Com::VARIANT, wflags: u16, vt: u16) -> ::windows::core::Result<()> { +pub unsafe fn VariantChangeType(pvargdest: &mut super::Com::VARIANT, pvarsrc: &super::Com::VARIANT, wflags: u16, vt: super::Com::VARENUM) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn VariantChangeType(pvargdest: *mut super::Com::VARIANT, pvarsrc: *const super::Com::VARIANT, wflags: u16, vt: u16) -> ::windows::core::HRESULT; + fn VariantChangeType(pvargdest: *mut super::Com::VARIANT, pvarsrc: *const super::Com::VARIANT, wflags: u16, vt: super::Com::VARENUM) -> ::windows::core::HRESULT; } VariantChangeType(::core::mem::transmute(pvargdest), ::core::mem::transmute(pvarsrc), wflags, vt).ok() } #[doc = "*Required features: `\"Win32_System_Ole\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))] #[inline] -pub unsafe fn VariantChangeTypeEx(pvargdest: &mut super::Com::VARIANT, pvarsrc: &super::Com::VARIANT, lcid: u32, wflags: u16, vt: u16) -> ::windows::core::Result<()> { +pub unsafe fn VariantChangeTypeEx(pvargdest: &mut super::Com::VARIANT, pvarsrc: &super::Com::VARIANT, lcid: u32, wflags: u16, vt: super::Com::VARENUM) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn VariantChangeTypeEx(pvargdest: *mut super::Com::VARIANT, pvarsrc: *const super::Com::VARIANT, lcid: u32, wflags: u16, vt: u16) -> ::windows::core::HRESULT; + fn VariantChangeTypeEx(pvargdest: *mut super::Com::VARIANT, pvarsrc: *const super::Com::VARIANT, lcid: u32, wflags: u16, vt: super::Com::VARENUM) -> ::windows::core::HRESULT; } VariantChangeTypeEx(::core::mem::transmute(pvargdest), ::core::mem::transmute(pvarsrc), lcid, wflags, vt).ok() } diff --git a/crates/libs/windows/src/Windows/Win32/System/Performance/mod.rs b/crates/libs/windows/src/Windows/Win32/System/Performance/mod.rs index 172e5e4c11..b976220ae1 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Performance/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Performance/mod.rs @@ -10816,13 +10816,13 @@ where } #[doc = "*Required features: `\"Win32_System_Performance\"`*"] #[inline] -pub unsafe fn PerfAddCounters<'a, P0>(hquery: P0, pcounters: &[u8]) -> u32 +pub unsafe fn PerfAddCounters<'a, P0>(hquery: P0, pcounters: &mut [u8]) -> u32 where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn PerfAddCounters(hquery: PerfQueryHandle, pcounters: *const PERF_COUNTER_IDENTIFIER, cbcounters: u32) -> u32; + fn PerfAddCounters(hquery: PerfQueryHandle, pcounters: *mut PERF_COUNTER_IDENTIFIER, cbcounters: u32) -> u32; } PerfAddCounters(hquery.into(), ::core::mem::transmute(pcounters.as_ptr()), pcounters.len() as _) } @@ -10913,13 +10913,13 @@ where } #[doc = "*Required features: `\"Win32_System_Performance\"`*"] #[inline] -pub unsafe fn PerfDeleteCounters<'a, P0>(hquery: P0, pcounters: &[u8]) -> u32 +pub unsafe fn PerfDeleteCounters<'a, P0>(hquery: P0, pcounters: &mut [u8]) -> u32 where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn PerfDeleteCounters(hquery: PerfQueryHandle, pcounters: *const PERF_COUNTER_IDENTIFIER, cbcounters: u32) -> u32; + fn PerfDeleteCounters(hquery: PerfQueryHandle, pcounters: *mut PERF_COUNTER_IDENTIFIER, cbcounters: u32) -> u32; } PerfDeleteCounters(hquery.into(), ::core::mem::transmute(pcounters.as_ptr()), pcounters.len() as _) } diff --git a/crates/libs/windows/src/Windows/Win32/System/Power/mod.rs b/crates/libs/windows/src/Windows/Win32/System/Power/mod.rs index eb646f21e6..d5a4d57624 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Power/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Power/mod.rs @@ -655,14 +655,15 @@ impl ::core::default::Default for CM_POWER_DATA { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_System_Power\"`*"] +#[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn CallNtPowerInformation(informationlevel: POWER_INFORMATION_LEVEL, inputbuffer: ::core::option::Option<&[u8]>, outputbuffer: ::core::option::Option<&mut [u8]>) -> i32 { +pub unsafe fn CallNtPowerInformation(informationlevel: POWER_INFORMATION_LEVEL, inputbuffer: ::core::option::Option<&[u8]>, outputbuffer: ::core::option::Option<&mut [u8]>) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CallNtPowerInformation(informationlevel: POWER_INFORMATION_LEVEL, inputbuffer: *const ::core::ffi::c_void, inputbufferlength: u32, outputbuffer: *mut ::core::ffi::c_void, outputbufferlength: u32) -> i32; + fn CallNtPowerInformation(informationlevel: POWER_INFORMATION_LEVEL, inputbuffer: *const ::core::ffi::c_void, inputbufferlength: u32, outputbuffer: *mut ::core::ffi::c_void, outputbufferlength: u32) -> super::super::Foundation::NTSTATUS; } - CallNtPowerInformation(informationlevel, ::core::mem::transmute(inputbuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), inputbuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(outputbuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), outputbuffer.as_deref().map_or(0, |slice| slice.len() as _)) + CallNtPowerInformation(informationlevel, ::core::mem::transmute(inputbuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), inputbuffer.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(outputbuffer.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), outputbuffer.as_deref().map_or(0, |slice| slice.len() as _)).ok() } #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -1843,6 +1844,35 @@ pub const POWER_ATTRIBUTE_SHOW_AOAC: u32 = 2u32; #[doc = "*Required features: `\"Win32_System_Power\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct POWER_COOLING_MODE(pub u16); +#[doc = "*Required features: `\"Win32_System_Power\"`*"] +pub const PO_TZ_ACTIVE: POWER_COOLING_MODE = POWER_COOLING_MODE(0u16); +#[doc = "*Required features: `\"Win32_System_Power\"`*"] +pub const PO_TZ_PASSIVE: POWER_COOLING_MODE = POWER_COOLING_MODE(1u16); +#[doc = "*Required features: `\"Win32_System_Power\"`*"] +pub const PO_TZ_INVALID_MODE: POWER_COOLING_MODE = POWER_COOLING_MODE(2u16); +impl ::core::marker::Copy for POWER_COOLING_MODE {} +impl ::core::clone::Clone for POWER_COOLING_MODE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for POWER_COOLING_MODE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for POWER_COOLING_MODE { + type Abi = Self; +} +impl ::core::fmt::Debug for POWER_COOLING_MODE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("POWER_COOLING_MODE").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_System_Power\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct POWER_DATA_ACCESSOR(pub i32); #[doc = "*Required features: `\"Win32_System_Power\"`*"] pub const ACCESS_AC_POWER_SETTING_INDEX: POWER_DATA_ACCESSOR = POWER_DATA_ACCESSOR(0i32); @@ -2377,6 +2407,41 @@ impl ::core::default::Default for PROCESSOR_OBJECT_INFO_EX { } #[repr(C)] #[doc = "*Required features: `\"Win32_System_Power\"`*"] +pub struct PROCESSOR_POWER_INFORMATION { + pub Number: u64, + pub MaxMhz: u64, + pub CurrentMhz: u64, + pub MhzLimit: u64, + pub MaxIdleState: u64, + pub CurrentIdleState: u64, +} +impl ::core::marker::Copy for PROCESSOR_POWER_INFORMATION {} +impl ::core::clone::Clone for PROCESSOR_POWER_INFORMATION { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for PROCESSOR_POWER_INFORMATION { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("PROCESSOR_POWER_INFORMATION").field("Number", &self.Number).field("MaxMhz", &self.MaxMhz).field("CurrentMhz", &self.CurrentMhz).field("MhzLimit", &self.MhzLimit).field("MaxIdleState", &self.MaxIdleState).field("CurrentIdleState", &self.CurrentIdleState).finish() + } +} +unsafe impl ::windows::core::Abi for PROCESSOR_POWER_INFORMATION { + type Abi = Self; +} +impl ::core::cmp::PartialEq for PROCESSOR_POWER_INFORMATION { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for PROCESSOR_POWER_INFORMATION {} +impl ::core::default::Default for PROCESSOR_POWER_INFORMATION { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Power\"`*"] pub struct PROCESSOR_POWER_POLICY { pub Revision: u32, pub DynamicThrottle: u8, @@ -3497,6 +3562,39 @@ impl ::core::fmt::Debug for SYSTEM_POWER_CONDITION { } } #[repr(C)] +#[doc = "*Required features: `\"Win32_System_Power\"`*"] +pub struct SYSTEM_POWER_INFORMATION { + pub MaxIdlenessAllowed: u64, + pub Idleness: u64, + pub TimeRemaining: u64, + pub CoolingMode: POWER_COOLING_MODE, +} +impl ::core::marker::Copy for SYSTEM_POWER_INFORMATION {} +impl ::core::clone::Clone for SYSTEM_POWER_INFORMATION { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for SYSTEM_POWER_INFORMATION { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("SYSTEM_POWER_INFORMATION").field("MaxIdlenessAllowed", &self.MaxIdlenessAllowed).field("Idleness", &self.Idleness).field("TimeRemaining", &self.TimeRemaining).field("CoolingMode", &self.CoolingMode).finish() + } +} +unsafe impl ::windows::core::Abi for SYSTEM_POWER_INFORMATION { + type Abi = Self; +} +impl ::core::cmp::PartialEq for SYSTEM_POWER_INFORMATION { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for SYSTEM_POWER_INFORMATION {} +impl ::core::default::Default for SYSTEM_POWER_INFORMATION { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_System_Power\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct SYSTEM_POWER_LEVEL { diff --git a/crates/libs/windows/src/Windows/Win32/System/Registry/mod.rs b/crates/libs/windows/src/Windows/Win32/System/Registry/mod.rs index 30c82ff747..8e8438489c 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Registry/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Registry/mod.rs @@ -159,7 +159,7 @@ pub const EISA_NO_MAX_FUNCTION: u32 = 255u32; #[doc = "*Required features: `\"Win32_System_Registry\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetRegistryValueWithFallbackW<'a, P0, P1, P2, P3, P4>(hkeyprimary: P0, pwszprimarysubkey: P1, hkeyfallback: P2, pwszfallbacksubkey: P3, pwszvalue: P4, dwflags: u32, pdwtype: ::core::option::Option<&mut u32>, pvdata: *mut ::core::ffi::c_void, cbdatain: u32, pcbdataout: ::core::option::Option<&mut u32>) -> super::super::Foundation::WIN32_ERROR +pub unsafe fn GetRegistryValueWithFallbackW<'a, P0, P1, P2, P3, P4>(hkeyprimary: P0, pwszprimarysubkey: P1, hkeyfallback: P2, pwszfallbacksubkey: P3, pwszvalue: P4, dwflags: u32, pdwtype: ::core::option::Option<&mut u32>, pvdata: ::core::option::Option<&mut [u8]>, pcbdataout: ::core::option::Option<&mut u32>) -> super::super::Foundation::WIN32_ERROR where P0: ::std::convert::Into, P1: ::std::convert::Into<::windows::core::PCWSTR>, @@ -171,7 +171,7 @@ where extern "system" { fn GetRegistryValueWithFallbackW(hkeyprimary: HKEY, pwszprimarysubkey: ::windows::core::PCWSTR, hkeyfallback: HKEY, pwszfallbacksubkey: ::windows::core::PCWSTR, pwszvalue: ::windows::core::PCWSTR, dwflags: u32, pdwtype: *mut u32, pvdata: *mut ::core::ffi::c_void, cbdatain: u32, pcbdataout: *mut u32) -> super::super::Foundation::WIN32_ERROR; } - GetRegistryValueWithFallbackW(hkeyprimary.into(), pwszprimarysubkey.into(), hkeyfallback.into(), pwszfallbacksubkey.into(), pwszvalue.into(), dwflags, ::core::mem::transmute(pdwtype), ::core::mem::transmute(pvdata), cbdatain, ::core::mem::transmute(pcbdataout)) + GetRegistryValueWithFallbackW(hkeyprimary.into(), pwszprimarysubkey.into(), hkeyfallback.into(), pwszfallbacksubkey.into(), pwszvalue.into(), dwflags, ::core::mem::transmute(pdwtype), ::core::mem::transmute(pvdata.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pvdata.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pcbdataout)) } #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] diff --git a/crates/libs/windows/src/Windows/Win32/System/RemoteManagement/mod.rs b/crates/libs/windows/src/Windows/Win32/System/RemoteManagement/mod.rs index 61ecbaf6f1..12da53c1ff 100644 --- a/crates/libs/windows/src/Windows/Win32/System/RemoteManagement/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/RemoteManagement/mod.rs @@ -4074,7 +4074,7 @@ impl ::core::default::Default for WSMAN_SHELL_STARTUP_INFO_V10 { #[repr(C)] #[doc = "*Required features: `\"Win32_System_RemoteManagement\"`*"] pub struct WSMAN_SHELL_STARTUP_INFO_V11 { - pub __AnonymousBase_wsman_L665_C48: WSMAN_SHELL_STARTUP_INFO_V10, + pub Base: WSMAN_SHELL_STARTUP_INFO_V10, pub name: ::windows::core::PCWSTR, } impl ::core::marker::Copy for WSMAN_SHELL_STARTUP_INFO_V11 {} @@ -4085,7 +4085,7 @@ impl ::core::clone::Clone for WSMAN_SHELL_STARTUP_INFO_V11 { } impl ::core::fmt::Debug for WSMAN_SHELL_STARTUP_INFO_V11 { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("WSMAN_SHELL_STARTUP_INFO_V11").field("__AnonymousBase_wsman_L665_C48", &self.__AnonymousBase_wsman_L665_C48).field("name", &self.name).finish() + f.debug_struct("WSMAN_SHELL_STARTUP_INFO_V11").field("Base", &self.Base).field("name", &self.name).finish() } } unsafe impl ::windows::core::Abi for WSMAN_SHELL_STARTUP_INFO_V11 { diff --git a/crates/libs/windows/src/Windows/Win32/System/Search/impl.rs b/crates/libs/windows/src/Windows/Win32/System/Search/impl.rs index 6eec707dfb..a880bb5f5b 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Search/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Search/impl.rs @@ -4218,10 +4218,13 @@ impl ISQLGetDiagField_Vtbl { iid == &::IID } } +#[cfg(feature = "Win32_System_Com")] pub trait ISQLRequestDiagFields_Impl: Sized { fn RequestDiagFields(&self, cdiagfields: u32, rgdiagfields: *const KAGREQDIAG) -> ::windows::core::Result<()>; } +#[cfg(feature = "Win32_System_Com")] impl ::windows::core::RuntimeName for ISQLRequestDiagFields {} +#[cfg(feature = "Win32_System_Com")] impl ISQLRequestDiagFields_Vtbl { pub const fn new, Impl: ISQLRequestDiagFields_Impl, const OFFSET: isize>() -> ISQLRequestDiagFields_Vtbl { unsafe extern "system" fn RequestDiagFields, Impl: ISQLRequestDiagFields_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, cdiagfields: u32, rgdiagfields: *const KAGREQDIAG) -> ::windows::core::HRESULT { diff --git a/crates/libs/windows/src/Windows/Win32/System/Search/mod.rs b/crates/libs/windows/src/Windows/Win32/System/Search/mod.rs index 3847eb3a59..4bd46660a9 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Search/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Search/mod.rs @@ -4602,7 +4602,7 @@ pub struct DBPROPINFO { pub pwszDescription: ::windows::core::PWSTR, pub dwPropertyID: u32, pub dwFlags: u32, - pub vtType: u16, + pub vtType: super::Com::VARENUM, pub vValues: super::Com::VARIANT, } #[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] @@ -4648,7 +4648,7 @@ pub struct DBPROPINFO { pub pwszDescription: ::windows::core::PWSTR, pub dwPropertyID: u32, pub dwFlags: u32, - pub vtType: u16, + pub vtType: super::Com::VARENUM, pub vValues: super::Com::VARIANT, } #[cfg(target_arch = "x86")] @@ -16669,6 +16669,8 @@ pub struct ISQLGetDiagField_Vtbl { #[repr(transparent)] pub struct ISQLRequestDiagFields(::windows::core::IUnknown); impl ISQLRequestDiagFields { + #[doc = "*Required features: `\"Win32_System_Com\"`*"] + #[cfg(feature = "Win32_System_Com")] pub unsafe fn RequestDiagFields(&self, rgdiagfields: &[KAGREQDIAG]) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).RequestDiagFields)(::windows::core::Interface::as_raw(self), rgdiagfields.len() as _, ::core::mem::transmute(rgdiagfields.as_ptr())).ok() } @@ -16712,7 +16714,10 @@ unsafe impl ::windows::core::Interface for ISQLRequestDiagFields { #[doc(hidden)] pub struct ISQLRequestDiagFields_Vtbl { pub base__: ::windows::core::IUnknownVtbl, + #[cfg(feature = "Win32_System_Com")] pub RequestDiagFields: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cdiagfields: u32, rgdiagfields: *const KAGREQDIAG) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_System_Com"))] + RequestDiagFields: usize, } #[doc = "*Required features: `\"Win32_System_Search\"`*"] #[repr(transparent)] @@ -22207,32 +22212,40 @@ pub const KAGPROP_SYSTEMFUNCTIONS: u32 = 21u32; #[doc = "*Required features: `\"Win32_System_Search\"`*"] pub const KAGPROP_TIMEDATEFUNCTIONS: u32 = 22u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_System_Search\"`*"] +#[doc = "*Required features: `\"Win32_System_Search\"`, `\"Win32_System_Com\"`*"] +#[cfg(feature = "Win32_System_Com")] pub struct KAGREQDIAG { pub ulDiagFlags: u32, - pub vt: u16, + pub vt: super::Com::VARENUM, pub sDiagField: i16, } +#[cfg(feature = "Win32_System_Com")] impl ::core::marker::Copy for KAGREQDIAG {} +#[cfg(feature = "Win32_System_Com")] impl ::core::clone::Clone for KAGREQDIAG { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_System_Com")] impl ::core::fmt::Debug for KAGREQDIAG { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("KAGREQDIAG").field("ulDiagFlags", &self.ulDiagFlags).field("vt", &self.vt).field("sDiagField", &self.sDiagField).finish() } } +#[cfg(feature = "Win32_System_Com")] unsafe impl ::windows::core::Abi for KAGREQDIAG { type Abi = Self; } +#[cfg(feature = "Win32_System_Com")] impl ::core::cmp::PartialEq for KAGREQDIAG { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_System_Com")] impl ::core::cmp::Eq for KAGREQDIAG {} +#[cfg(feature = "Win32_System_Com")] impl ::core::default::Default for KAGREQDIAG { fn default() -> Self { unsafe { ::core::mem::zeroed() } diff --git a/crates/libs/windows/src/Windows/Win32/System/SystemServices/mod.rs b/crates/libs/windows/src/Windows/Win32/System/SystemServices/mod.rs index d819731659..ffa1897e20 100644 --- a/crates/libs/windows/src/Windows/Win32/System/SystemServices/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/SystemServices/mod.rs @@ -809,75 +809,6 @@ pub const CFG_CALL_TARGET_VALID: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const CFG_CALL_TARGET_VALID_XFG: u32 = 8u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct CHOOSECOLOR_FLAGS(pub u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_RGBINIT: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(1u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_FULLOPEN: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(2u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_PREVENTFULLOPEN: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(4u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_SHOWHELP: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(8u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_ENABLEHOOK: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(16u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_ENABLETEMPLATE: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(32u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_ENABLETEMPLATEHANDLE: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(64u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_SOLIDCOLOR: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(128u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const CC_ANYCOLOR: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(256u32); -impl ::core::marker::Copy for CHOOSECOLOR_FLAGS {} -impl ::core::clone::Clone for CHOOSECOLOR_FLAGS { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for CHOOSECOLOR_FLAGS { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for CHOOSECOLOR_FLAGS { - type Abi = Self; -} -impl ::core::fmt::Debug for CHOOSECOLOR_FLAGS { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("CHOOSECOLOR_FLAGS").field(&self.0).finish() - } -} -impl ::core::ops::BitOr for CHOOSECOLOR_FLAGS { - type Output = Self; - fn bitor(self, other: Self) -> Self { - Self(self.0 | other.0) - } -} -impl ::core::ops::BitAnd for CHOOSECOLOR_FLAGS { - type Output = Self; - fn bitand(self, other: Self) -> Self { - Self(self.0 & other.0) - } -} -impl ::core::ops::BitOrAssign for CHOOSECOLOR_FLAGS { - fn bitor_assign(&mut self, other: Self) { - self.0.bitor_assign(other.0) - } -} -impl ::core::ops::BitAndAssign for CHOOSECOLOR_FLAGS { - fn bitand_assign(&mut self, other: Self) { - self.0.bitand_assign(other.0) - } -} -impl ::core::ops::Not for CHOOSECOLOR_FLAGS { - type Output = Self; - fn not(self) -> Self { - Self(self.0.not()) - } -} -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const CLAIM_SECURITY_ATTRIBUTES_INFORMATION_VERSION: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const CLAIM_SECURITY_ATTRIBUTES_INFORMATION_VERSION_V1: u32 = 1u32; @@ -2154,8 +2085,6 @@ pub const DDBLT_EXTENDED_PRESENTATION_STRETCHFACTOR: i32 = 16i32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const DEDICATED_MEMORY_CACHE_ELIGIBLE: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const DELETE: u32 = 65536u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const DEVICEFAMILYDEVICEFORM_KEY: &str = "\\Registry\\Machine\\Software\\Microsoft\\Windows NT\\CurrentVersion\\OEM"; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const DEVICEFAMILYDEVICEFORM_VALUE: &str = "DeviceForm"; @@ -3262,8 +3191,6 @@ pub const EVENTLOG_PAIRED_EVENT_INACTIVE: u32 = 16u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const EVENTLOG_START_PAIRED_EVENT: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const EVENT_MODIFY_STATE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const EXCEPTION_COLLIDED_UNWIND: u32 = 64u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const EXCEPTION_EXECUTE_FAULT: u32 = 8u32; @@ -14243,8 +14170,6 @@ pub const SEC_HUGE_PAGES: u32 = 131072u32; pub const SEF_AI_USE_EXTRA_PARAMS: u32 = 2048u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const SEF_FORCE_USER_MODE: u32 = 8192u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SEMAPHORE_MODIFY_STATE: u32 = 2u32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_SystemServices\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -14802,87 +14727,6 @@ pub const SIZE_OF_80387_REGISTERS: u32 = 80u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const SMB_CCF_APP_INSTANCE_EA_NAME: &str = "ClusteredApplicationInstance"; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct SND_FLAGS(pub u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_APPLICATION: SND_FLAGS = SND_FLAGS(128u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_ALIAS: SND_FLAGS = SND_FLAGS(65536u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_ALIAS_ID: SND_FLAGS = SND_FLAGS(1114112u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_FILENAME: SND_FLAGS = SND_FLAGS(131072u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_RESOURCE: SND_FLAGS = SND_FLAGS(262148u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_ASYNC: SND_FLAGS = SND_FLAGS(1u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_NODEFAULT: SND_FLAGS = SND_FLAGS(2u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_LOOP: SND_FLAGS = SND_FLAGS(8u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_MEMORY: SND_FLAGS = SND_FLAGS(4u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_NOSTOP: SND_FLAGS = SND_FLAGS(16u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_NOWAIT: SND_FLAGS = SND_FLAGS(8192u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_PURGE: SND_FLAGS = SND_FLAGS(64u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_SENTRY: SND_FLAGS = SND_FLAGS(524288u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_SYNC: SND_FLAGS = SND_FLAGS(0u32); -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const SND_SYSTEM: SND_FLAGS = SND_FLAGS(2097152u32); -impl ::core::marker::Copy for SND_FLAGS {} -impl ::core::clone::Clone for SND_FLAGS { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for SND_FLAGS { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for SND_FLAGS { - type Abi = Self; -} -impl ::core::fmt::Debug for SND_FLAGS { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("SND_FLAGS").field(&self.0).finish() - } -} -impl ::core::ops::BitOr for SND_FLAGS { - type Output = Self; - fn bitor(self, other: Self) -> Self { - Self(self.0 | other.0) - } -} -impl ::core::ops::BitAnd for SND_FLAGS { - type Output = Self; - fn bitand(self, other: Self) -> Self { - Self(self.0 & other.0) - } -} -impl ::core::ops::BitOrAssign for SND_FLAGS { - fn bitor_assign(&mut self, other: Self) { - self.0.bitor_assign(other.0) - } -} -impl ::core::ops::BitAndAssign for SND_FLAGS { - fn bitand_assign(&mut self, other: Self) { - self.0.bitand_assign(other.0) - } -} -impl ::core::ops::Not for SND_FLAGS { - type Output = Self; - fn not(self) -> Self { - Self(self.0.not()) - } -} -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const SORT_CHINESE_BIG5: u32 = 0u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const SORT_CHINESE_BOPOMOFO: u32 = 3u32; @@ -16020,10 +15864,6 @@ pub const THREAD_DYNAMIC_CODE_ALLOW: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const THREAD_PROFILING_FLAG_DISPATCH: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const TIMER_MODIFY_STATE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const TIMER_QUERY_STATE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const TIME_ZONE_ID_DAYLIGHT: u32 = 2u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const TIME_ZONE_ID_STANDARD: u32 = 1u32; @@ -16883,16 +16723,12 @@ pub const WDT_REMOTE_CALL: u32 = 1383359575u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub type WORKERCALLBACKFUNC = ::core::option::Option; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const WRITE_DAC: u32 = 262144u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const WRITE_NV_MEMORY_FLAG_FLUSH: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const WRITE_NV_MEMORY_FLAG_NON_TEMPORAL: u32 = 2u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const WRITE_NV_MEMORY_FLAG_NO_DRAIN: u32 = 256u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] -pub const WRITE_OWNER: u32 = 524288u32; -#[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const WRITE_WATCH_FLAG_RESET: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_SystemServices\"`*"] pub const WT_EXECUTEDELETEWAIT: u32 = 8u32; diff --git a/crates/libs/windows/src/Windows/Win32/System/Threading/mod.rs b/crates/libs/windows/src/Windows/Win32/System/Threading/mod.rs index 001a0798c6..b135c69551 100644 --- a/crates/libs/windows/src/Windows/Win32/System/Threading/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/System/Threading/mod.rs @@ -2528,8 +2528,6 @@ impl ::core::default::Default for MEMORY_PRIORITY_INFORMATION { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_System_Threading\"`*"] -pub const MUTEX_MODIFY_STATE: u32 = 1u32; #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct NamespaceHandle(pub isize); @@ -2604,14 +2602,14 @@ where #[doc = "*Required features: `\"Win32_System_Threading\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn OpenEventA<'a, P0, P1>(dwdesiredaccess: u32, binherithandle: P0, lpname: P1) -> ::windows::core::Result +pub unsafe fn OpenEventA<'a, P0, P1>(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: P0, lpname: P1) -> ::windows::core::Result where P0: ::std::convert::Into, P1: ::std::convert::Into<::windows::core::PCSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OpenEventA(dwdesiredaccess: u32, binherithandle: super::super::Foundation::BOOL, lpname: ::windows::core::PCSTR) -> super::super::Foundation::HANDLE; + fn OpenEventA(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: super::super::Foundation::BOOL, lpname: ::windows::core::PCSTR) -> super::super::Foundation::HANDLE; } let result__ = OpenEventA(dwdesiredaccess, binherithandle.into(), lpname.into()); (!result__.is_invalid()).then(|| result__).ok_or_else(::windows::core::Error::from_win32) @@ -2619,14 +2617,14 @@ where #[doc = "*Required features: `\"Win32_System_Threading\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn OpenEventW<'a, P0, P1>(dwdesiredaccess: u32, binherithandle: P0, lpname: P1) -> ::windows::core::Result +pub unsafe fn OpenEventW<'a, P0, P1>(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: P0, lpname: P1) -> ::windows::core::Result where P0: ::std::convert::Into, P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OpenEventW(dwdesiredaccess: u32, binherithandle: super::super::Foundation::BOOL, lpname: ::windows::core::PCWSTR) -> super::super::Foundation::HANDLE; + fn OpenEventW(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: super::super::Foundation::BOOL, lpname: ::windows::core::PCWSTR) -> super::super::Foundation::HANDLE; } let result__ = OpenEventW(dwdesiredaccess, binherithandle.into(), lpname.into()); (!result__.is_invalid()).then(|| result__).ok_or_else(::windows::core::Error::from_win32) @@ -2634,14 +2632,14 @@ where #[doc = "*Required features: `\"Win32_System_Threading\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn OpenMutexW<'a, P0, P1>(dwdesiredaccess: u32, binherithandle: P0, lpname: P1) -> ::windows::core::Result +pub unsafe fn OpenMutexW<'a, P0, P1>(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: P0, lpname: P1) -> ::windows::core::Result where P0: ::std::convert::Into, P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OpenMutexW(dwdesiredaccess: u32, binherithandle: super::super::Foundation::BOOL, lpname: ::windows::core::PCWSTR) -> super::super::Foundation::HANDLE; + fn OpenMutexW(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: super::super::Foundation::BOOL, lpname: ::windows::core::PCWSTR) -> super::super::Foundation::HANDLE; } let result__ = OpenMutexW(dwdesiredaccess, binherithandle.into(), lpname.into()); (!result__.is_invalid()).then(|| result__).ok_or_else(::windows::core::Error::from_win32) @@ -2700,14 +2698,14 @@ where #[doc = "*Required features: `\"Win32_System_Threading\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn OpenSemaphoreW<'a, P0, P1>(dwdesiredaccess: u32, binherithandle: P0, lpname: P1) -> ::windows::core::Result +pub unsafe fn OpenSemaphoreW<'a, P0, P1>(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: P0, lpname: P1) -> ::windows::core::Result where P0: ::std::convert::Into, P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OpenSemaphoreW(dwdesiredaccess: u32, binherithandle: super::super::Foundation::BOOL, lpname: ::windows::core::PCWSTR) -> super::super::Foundation::HANDLE; + fn OpenSemaphoreW(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: super::super::Foundation::BOOL, lpname: ::windows::core::PCWSTR) -> super::super::Foundation::HANDLE; } let result__ = OpenSemaphoreW(dwdesiredaccess, binherithandle.into(), lpname.into()); (!result__.is_invalid()).then(|| result__).ok_or_else(::windows::core::Error::from_win32) @@ -2743,14 +2741,14 @@ where #[doc = "*Required features: `\"Win32_System_Threading\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn OpenWaitableTimerW<'a, P0, P1>(dwdesiredaccess: u32, binherithandle: P0, lptimername: P1) -> ::windows::core::Result +pub unsafe fn OpenWaitableTimerW<'a, P0, P1>(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: P0, lptimername: P1) -> ::windows::core::Result where P0: ::std::convert::Into, P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn OpenWaitableTimerW(dwdesiredaccess: u32, binherithandle: super::super::Foundation::BOOL, lptimername: ::windows::core::PCWSTR) -> super::super::Foundation::HANDLE; + fn OpenWaitableTimerW(dwdesiredaccess: SYNCHRONIZATION_ACCESS_RIGHTS, binherithandle: super::super::Foundation::BOOL, lptimername: ::windows::core::PCWSTR) -> super::super::Foundation::HANDLE; } let result__ = OpenWaitableTimerW(dwdesiredaccess, binherithandle.into(), lptimername.into()); (!result__.is_invalid()).then(|| result__).ok_or_else(::windows::core::Error::from_win32) @@ -5020,6 +5018,85 @@ impl ::core::ops::Not for STARTUPINFOW_FLAGS { } } #[doc = "*Required features: `\"Win32_System_Threading\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SYNCHRONIZATION_ACCESS_RIGHTS(pub u32); +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const EVENT_ALL_ACCESS: SYNCHRONIZATION_ACCESS_RIGHTS = SYNCHRONIZATION_ACCESS_RIGHTS(2031619u32); +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const EVENT_MODIFY_STATE: SYNCHRONIZATION_ACCESS_RIGHTS = SYNCHRONIZATION_ACCESS_RIGHTS(2u32); +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const MUTEX_ALL_ACCESS: SYNCHRONIZATION_ACCESS_RIGHTS = SYNCHRONIZATION_ACCESS_RIGHTS(2031617u32); +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const MUTEX_MODIFY_STATE: SYNCHRONIZATION_ACCESS_RIGHTS = SYNCHRONIZATION_ACCESS_RIGHTS(1u32); +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const SEMAPHORE_ALL_ACCESS: SYNCHRONIZATION_ACCESS_RIGHTS = SYNCHRONIZATION_ACCESS_RIGHTS(2031619u32); +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const SEMAPHORE_MODIFY_STATE: SYNCHRONIZATION_ACCESS_RIGHTS = SYNCHRONIZATION_ACCESS_RIGHTS(2u32); +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const TIMER_ALL_ACCESS: SYNCHRONIZATION_ACCESS_RIGHTS = SYNCHRONIZATION_ACCESS_RIGHTS(2031619u32); +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const TIMER_MODIFY_STATE: SYNCHRONIZATION_ACCESS_RIGHTS = SYNCHRONIZATION_ACCESS_RIGHTS(2u32); +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const TIMER_QUERY_STATE: SYNCHRONIZATION_ACCESS_RIGHTS = SYNCHRONIZATION_ACCESS_RIGHTS(1u32); +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const SYNCHRONIZATION_DELETE: SYNCHRONIZATION_ACCESS_RIGHTS = SYNCHRONIZATION_ACCESS_RIGHTS(65536u32); +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const SYNCHRONIZATION_READ_CONTROL: SYNCHRONIZATION_ACCESS_RIGHTS = SYNCHRONIZATION_ACCESS_RIGHTS(131072u32); +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const SYNCHRONIZATION_WRITE_DAC: SYNCHRONIZATION_ACCESS_RIGHTS = SYNCHRONIZATION_ACCESS_RIGHTS(262144u32); +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const SYNCHRONIZATION_WRITE_OWNER: SYNCHRONIZATION_ACCESS_RIGHTS = SYNCHRONIZATION_ACCESS_RIGHTS(524288u32); +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] +pub const SYNCHRONIZATION_SYNCHRONIZE: SYNCHRONIZATION_ACCESS_RIGHTS = SYNCHRONIZATION_ACCESS_RIGHTS(1048576u32); +impl ::core::marker::Copy for SYNCHRONIZATION_ACCESS_RIGHTS {} +impl ::core::clone::Clone for SYNCHRONIZATION_ACCESS_RIGHTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SYNCHRONIZATION_ACCESS_RIGHTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SYNCHRONIZATION_ACCESS_RIGHTS { + type Abi = Self; +} +impl ::core::fmt::Debug for SYNCHRONIZATION_ACCESS_RIGHTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SYNCHRONIZATION_ACCESS_RIGHTS").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for SYNCHRONIZATION_ACCESS_RIGHTS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for SYNCHRONIZATION_ACCESS_RIGHTS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for SYNCHRONIZATION_ACCESS_RIGHTS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for SYNCHRONIZATION_ACCESS_RIGHTS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for SYNCHRONIZATION_ACCESS_RIGHTS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} +#[doc = "*Required features: `\"Win32_System_Threading\"`*"] pub const SYNCHRONIZATION_BARRIER_FLAGS_BLOCK_ONLY: u32 = 2u32; #[doc = "*Required features: `\"Win32_System_Threading\"`*"] pub const SYNCHRONIZATION_BARRIER_FLAGS_NO_DELETE: u32 = 4u32; diff --git a/crates/libs/windows/src/Windows/Win32/UI/ColorSystem/mod.rs b/crates/libs/windows/src/Windows/Win32/UI/ColorSystem/mod.rs index b8c9e5780d..f0b8e8441f 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/ColorSystem/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/ColorSystem/mod.rs @@ -413,12 +413,15 @@ pub unsafe fn CMTranslateColors(hcmtransform: isize, lpainputcolors: *const COLO #[doc = "*Required features: `\"Win32_UI_ColorSystem\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn CMTranslateRGB(hcmtransform: isize, colorref: u32, lpcolorref: &mut u32, dwflags: u32) -> super::super::Foundation::BOOL { +pub unsafe fn CMTranslateRGB<'a, P0>(hcmtransform: isize, colorref: P0, lpcolorref: &mut u32, dwflags: u32) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn CMTranslateRGB(hcmtransform: isize, colorref: u32, lpcolorref: *mut u32, dwflags: u32) -> super::super::Foundation::BOOL; + fn CMTranslateRGB(hcmtransform: isize, colorref: super::super::Foundation::COLORREF, lpcolorref: *mut u32, dwflags: u32) -> super::super::Foundation::BOOL; } - CMTranslateRGB(hcmtransform, colorref, ::core::mem::transmute(lpcolorref), dwflags) + CMTranslateRGB(hcmtransform, colorref.into(), ::core::mem::transmute(lpcolorref), dwflags) } #[doc = "*Required features: `\"Win32_UI_ColorSystem\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] diff --git a/crates/libs/windows/src/Windows/Win32/UI/Controls/Dialogs/mod.rs b/crates/libs/windows/src/Windows/Win32/UI/Controls/Dialogs/mod.rs index 3aaaf3f970..c49bcbd7b1 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/Controls/Dialogs/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/Controls/Dialogs/mod.rs @@ -32,9 +32,9 @@ pub struct CHOOSECOLORA { pub lStructSize: u32, pub hwndOwner: super::super::super::Foundation::HWND, pub hInstance: super::super::super::Foundation::HWND, - pub rgbResult: u32, - pub lpCustColors: *mut u32, - pub Flags: u32, + pub rgbResult: super::super::super::Foundation::COLORREF, + pub lpCustColors: *mut super::super::super::Foundation::COLORREF, + pub Flags: CHOOSECOLOR_FLAGS, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCCHOOKPROC, pub lpTemplateName: ::windows::core::PCSTR, @@ -79,9 +79,9 @@ pub struct CHOOSECOLORA { pub lStructSize: u32, pub hwndOwner: super::super::super::Foundation::HWND, pub hInstance: super::super::super::Foundation::HWND, - pub rgbResult: u32, - pub lpCustColors: *mut u32, - pub Flags: u32, + pub rgbResult: super::super::super::Foundation::COLORREF, + pub lpCustColors: *mut super::super::super::Foundation::COLORREF, + pub Flags: CHOOSECOLOR_FLAGS, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCCHOOKPROC, pub lpTemplateName: ::windows::core::PCSTR, @@ -126,9 +126,9 @@ pub struct CHOOSECOLORW { pub lStructSize: u32, pub hwndOwner: super::super::super::Foundation::HWND, pub hInstance: super::super::super::Foundation::HWND, - pub rgbResult: u32, - pub lpCustColors: *mut u32, - pub Flags: u32, + pub rgbResult: super::super::super::Foundation::COLORREF, + pub lpCustColors: *mut super::super::super::Foundation::COLORREF, + pub Flags: CHOOSECOLOR_FLAGS, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCCHOOKPROC, pub lpTemplateName: ::windows::core::PCWSTR, @@ -173,9 +173,9 @@ pub struct CHOOSECOLORW { pub lStructSize: u32, pub hwndOwner: super::super::super::Foundation::HWND, pub hInstance: super::super::super::Foundation::HWND, - pub rgbResult: u32, - pub lpCustColors: *mut u32, - pub Flags: u32, + pub rgbResult: super::super::super::Foundation::COLORREF, + pub lpCustColors: *mut super::super::super::Foundation::COLORREF, + pub Flags: CHOOSECOLOR_FLAGS, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCCHOOKPROC, pub lpTemplateName: ::windows::core::PCWSTR, @@ -212,6 +212,75 @@ impl ::core::default::Default for CHOOSECOLORW { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CHOOSECOLOR_FLAGS(pub u32); +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_RGBINIT: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(1u32); +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_FULLOPEN: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(2u32); +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_PREVENTFULLOPEN: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(4u32); +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_SHOWHELP: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(8u32); +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_ENABLEHOOK: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(16u32); +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_ENABLETEMPLATE: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(32u32); +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_ENABLETEMPLATEHANDLE: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(64u32); +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_SOLIDCOLOR: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(128u32); +#[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`*"] +pub const CC_ANYCOLOR: CHOOSECOLOR_FLAGS = CHOOSECOLOR_FLAGS(256u32); +impl ::core::marker::Copy for CHOOSECOLOR_FLAGS {} +impl ::core::clone::Clone for CHOOSECOLOR_FLAGS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for CHOOSECOLOR_FLAGS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for CHOOSECOLOR_FLAGS { + type Abi = Self; +} +impl ::core::fmt::Debug for CHOOSECOLOR_FLAGS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CHOOSECOLOR_FLAGS").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for CHOOSECOLOR_FLAGS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for CHOOSECOLOR_FLAGS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for CHOOSECOLOR_FLAGS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for CHOOSECOLOR_FLAGS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for CHOOSECOLOR_FLAGS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls_Dialogs\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))] @@ -223,7 +292,7 @@ pub struct CHOOSEFONTA { pub lpLogFont: *mut super::super::super::Graphics::Gdi::LOGFONTA, pub iPointSize: i32, pub Flags: CHOOSEFONT_FLAGS, - pub rgbColors: u32, + pub rgbColors: super::super::super::Foundation::COLORREF, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCFHOOKPROC, pub lpTemplateName: ::windows::core::PCSTR, @@ -277,7 +346,7 @@ pub struct CHOOSEFONTA { pub lpLogFont: *mut super::super::super::Graphics::Gdi::LOGFONTA, pub iPointSize: i32, pub Flags: CHOOSEFONT_FLAGS, - pub rgbColors: u32, + pub rgbColors: super::super::super::Foundation::COLORREF, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCFHOOKPROC, pub lpTemplateName: ::windows::core::PCSTR, @@ -331,7 +400,7 @@ pub struct CHOOSEFONTW { pub lpLogFont: *mut super::super::super::Graphics::Gdi::LOGFONTW, pub iPointSize: i32, pub Flags: CHOOSEFONT_FLAGS, - pub rgbColors: u32, + pub rgbColors: super::super::super::Foundation::COLORREF, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCFHOOKPROC, pub lpTemplateName: ::windows::core::PCWSTR, @@ -385,7 +454,7 @@ pub struct CHOOSEFONTW { pub lpLogFont: *mut super::super::super::Graphics::Gdi::LOGFONTW, pub iPointSize: i32, pub Flags: CHOOSEFONT_FLAGS, - pub rgbColors: u32, + pub rgbColors: super::super::super::Foundation::COLORREF, pub lCustData: super::super::super::Foundation::LPARAM, pub lpfnHook: LPCFHOOKPROC, pub lpTemplateName: ::windows::core::PCWSTR, diff --git a/crates/libs/windows/src/Windows/Win32/UI/Controls/RichEdit/impl.rs b/crates/libs/windows/src/Windows/Win32/UI/Controls/RichEdit/impl.rs index 30e0ea6880..45293d87cd 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/Controls/RichEdit/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/Controls/RichEdit/impl.rs @@ -949,8 +949,8 @@ impl ITextDocument2_Vtbl { #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))] pub trait ITextDocument2Old_Impl: Sized + super::super::super::System::Com::IDispatch_Impl + ITextDocument_Impl { fn AttachMsgFilter(&self, pfilter: &::core::option::Option<::windows::core::IUnknown>) -> ::windows::core::Result<()>; - fn SetEffectColor(&self, index: i32, cr: u32) -> ::windows::core::Result<()>; - fn GetEffectColor(&self, index: i32) -> ::windows::core::Result; + fn SetEffectColor(&self, index: i32, cr: super::super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; + fn GetEffectColor(&self, index: i32) -> ::windows::core::Result; fn GetCaretType(&self) -> ::windows::core::Result; fn SetCaretType(&self, carettype: i32) -> ::windows::core::Result<()>; fn GetImmContext(&self) -> ::windows::core::Result; @@ -983,12 +983,12 @@ impl ITextDocument2Old_Vtbl { let this = (*this).get_impl(); this.AttachMsgFilter(::core::mem::transmute(&pfilter)).into() } - unsafe extern "system" fn SetEffectColor, Impl: ITextDocument2Old_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, index: i32, cr: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetEffectColor, Impl: ITextDocument2Old_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, index: i32, cr: super::super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetEffectColor(::core::mem::transmute_copy(&index), ::core::mem::transmute_copy(&cr)).into() } - unsafe extern "system" fn GetEffectColor, Impl: ITextDocument2Old_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, index: i32, pcr: *mut u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetEffectColor, Impl: ITextDocument2Old_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, index: i32, pcr: *mut super::super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetEffectColor(::core::mem::transmute_copy(&index)) { @@ -2256,7 +2256,7 @@ pub trait ITextHost_Impl: Sized { fn TxGetViewInset(&self, prc: *mut super::super::super::Foundation::RECT) -> ::windows::core::Result<()>; fn TxGetCharFormat(&self, ppcf: *const *const CHARFORMATW) -> ::windows::core::Result<()>; fn TxGetParaFormat(&self, pppf: *const *const PARAFORMAT) -> ::windows::core::Result<()>; - fn TxGetSysColor(&self, nindex: i32) -> u32; + fn TxGetSysColor(&self, nindex: i32) -> super::super::super::Foundation::COLORREF; fn TxGetBackStyle(&self, pstyle: *mut TXTBACKSTYLE) -> ::windows::core::Result<()>; fn TxGetMaxLength(&self, plength: *mut u32) -> ::windows::core::Result<()>; fn TxGetScrollBars(&self, pdwscrollbar: *mut u32) -> ::windows::core::Result<()>; @@ -2401,7 +2401,7 @@ impl ITextHost_Vtbl { let this = (*this).get_impl(); this.TxGetParaFormat(::core::mem::transmute_copy(&pppf)).into() } - unsafe extern "system" fn TxGetSysColor, Impl: ITextHost_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, nindex: i32) -> u32 { + unsafe extern "system" fn TxGetSysColor, Impl: ITextHost_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, nindex: i32) -> super::super::super::Foundation::COLORREF { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.TxGetSysColor(::core::mem::transmute_copy(&nindex)) diff --git a/crates/libs/windows/src/Windows/Win32/UI/Controls/RichEdit/mod.rs b/crates/libs/windows/src/Windows/Win32/UI/Controls/RichEdit/mod.rs index d3b23eb7df..34c0ac0b8c 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/Controls/RichEdit/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/Controls/RichEdit/mod.rs @@ -466,10 +466,10 @@ impl ::core::fmt::Debug for CHANGETYPE { #[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct CHARFORMAT2A { - pub __AnonymousBase_richedit_L736_C23: CHARFORMATA, + pub Base: CHARFORMATA, pub wWeight: u16, pub sSpacing: i16, - pub crBackColor: u32, + pub crBackColor: super::super::super::Foundation::COLORREF, pub lcid: u32, pub Anonymous: CHARFORMAT2A_0, pub sStyle: i16, @@ -539,12 +539,13 @@ impl ::core::default::Default for CHARFORMAT2A_0 { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct CHARFORMAT2W { - pub __AnonymousBase_richedit_L711_C23: CHARFORMATW, + pub Base: CHARFORMATW, pub wWeight: u16, pub sSpacing: i16, - pub crBackColor: u32, + pub crBackColor: super::super::super::Foundation::COLORREF, pub lcid: u32, pub Anonymous: CHARFORMAT2W_0, pub sStyle: i16, @@ -554,47 +555,60 @@ pub struct CHARFORMAT2W { pub bRevAuthor: u8, pub bUnderlineColor: u8, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for CHARFORMAT2W {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for CHARFORMAT2W { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for CHARFORMAT2W { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for CHARFORMAT2W { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for CHARFORMAT2W {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for CHARFORMAT2W { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub union CHARFORMAT2W_0 { pub dwReserved: u32, pub dwCookie: u32, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for CHARFORMAT2W_0 {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for CHARFORMAT2W_0 { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for CHARFORMAT2W_0 { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for CHARFORMAT2W_0 { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for CHARFORMAT2W_0 {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for CHARFORMAT2W_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -609,7 +623,7 @@ pub struct CHARFORMATA { pub dwEffects: CFE_EFFECTS, pub yHeight: i32, pub yOffset: i32, - pub crTextColor: u32, + pub crTextColor: super::super::super::Foundation::COLORREF, pub bCharSet: u8, pub bPitchAndFamily: u8, pub szFaceName: [super::super::super::Foundation::CHAR; 32], @@ -647,38 +661,46 @@ impl ::core::default::Default for CHARFORMATA { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct CHARFORMATW { pub cbSize: u32, pub dwMask: CFM_MASK, pub dwEffects: CFE_EFFECTS, pub yHeight: i32, pub yOffset: i32, - pub crTextColor: u32, + pub crTextColor: super::super::super::Foundation::COLORREF, pub bCharSet: u8, pub bPitchAndFamily: u8, pub szFaceName: [u16; 32], } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for CHARFORMATW {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for CHARFORMATW { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for CHARFORMATW { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("CHARFORMATW").field("cbSize", &self.cbSize).field("dwMask", &self.dwMask).field("dwEffects", &self.dwEffects).field("yHeight", &self.yHeight).field("yOffset", &self.yOffset).field("crTextColor", &self.crTextColor).field("bCharSet", &self.bCharSet).field("bPitchAndFamily", &self.bPitchAndFamily).field("szFaceName", &self.szFaceName).finish() } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for CHARFORMATW { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for CHARFORMATW { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for CHARFORMATW {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for CHARFORMATW { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -749,32 +771,40 @@ impl ::core::default::Default for CLIPBOARDFORMAT { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct COMPCOLOR { - pub crText: u32, - pub crBackground: u32, + pub crText: super::super::super::Foundation::COLORREF, + pub crBackground: super::super::super::Foundation::COLORREF, pub dwEffects: u32, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for COMPCOLOR {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for COMPCOLOR { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for COMPCOLOR { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("COMPCOLOR").field("crText", &self.crText).field("crBackground", &self.crBackground).field("dwEffects", &self.dwEffects).finish() } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for COMPCOLOR { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for COMPCOLOR { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for COMPCOLOR {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for COMPCOLOR { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -3220,12 +3250,19 @@ impl ITextDocument2Old { { (::windows::core::Interface::vtable(self).AttachMsgFilter)(::windows::core::Interface::as_raw(self), pfilter.into().abi()).ok() } - pub unsafe fn SetEffectColor(&self, index: i32, cr: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetEffectColor)(::windows::core::Interface::as_raw(self), index, cr).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetEffectColor<'a, P0>(&self, index: i32, cr: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).SetEffectColor)(::windows::core::Interface::as_raw(self), index, cr.into()).ok() } - pub unsafe fn GetEffectColor(&self, index: i32) -> ::windows::core::Result { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetEffectColor(&self, index: i32) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetEffectColor)(::windows::core::Interface::as_raw(self), index, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).GetEffectColor)(::windows::core::Interface::as_raw(self), index, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } pub unsafe fn GetCaretType(&self) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); @@ -3396,8 +3433,14 @@ unsafe impl ::windows::core::Interface for ITextDocument2Old { pub struct ITextDocument2Old_Vtbl { pub base__: ITextDocument_Vtbl, pub AttachMsgFilter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pfilter: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, - pub SetEffectColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: i32, cr: u32) -> ::windows::core::HRESULT, - pub GetEffectColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: i32, pcr: *mut u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub SetEffectColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: i32, cr: super::super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetEffectColor: usize, + #[cfg(feature = "Win32_Foundation")] + pub GetEffectColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, index: i32, pcr: *mut super::super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetEffectColor: usize, pub GetCaretType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcarettype: *mut i32) -> ::windows::core::HRESULT, pub SetCaretType: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, carettype: i32) -> ::windows::core::HRESULT, pub GetImmContext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcontext: *mut i64) -> ::windows::core::HRESULT, @@ -4464,13 +4507,17 @@ impl ITextHost { pub unsafe fn TxGetViewInset(&self, prc: &mut super::super::super::Foundation::RECT) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).TxGetViewInset)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(prc)).ok() } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn TxGetCharFormat(&self, ppcf: &*const CHARFORMATW) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).TxGetCharFormat)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(ppcf)).ok() } pub unsafe fn TxGetParaFormat(&self, pppf: &*const PARAFORMAT) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).TxGetParaFormat)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pppf)).ok() } - pub unsafe fn TxGetSysColor(&self, nindex: i32) -> u32 { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn TxGetSysColor(&self, nindex: i32) -> super::super::super::Foundation::COLORREF { (::windows::core::Interface::vtable(self).TxGetSysColor)(::windows::core::Interface::as_raw(self), nindex) } pub unsafe fn TxGetBackStyle(&self, pstyle: &mut TXTBACKSTYLE) -> ::windows::core::Result<()> { @@ -4494,6 +4541,8 @@ impl ITextHost { pub unsafe fn TxGetExtent(&self, lpextent: &mut super::super::super::Foundation::SIZE) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).TxGetExtent)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(lpextent)).ok() } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn OnTxCharFormatChange(&self, pcf: &CHARFORMATW) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).OnTxCharFormatChange)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pcf)).ok() } @@ -4642,9 +4691,15 @@ pub struct ITextHost_Vtbl { pub TxGetViewInset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, prc: *mut super::super::super::Foundation::RECT) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] TxGetViewInset: usize, + #[cfg(feature = "Win32_Foundation")] pub TxGetCharFormat: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppcf: *const *const CHARFORMATW) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + TxGetCharFormat: usize, pub TxGetParaFormat: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pppf: *const *const PARAFORMAT) -> ::windows::core::HRESULT, - pub TxGetSysColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nindex: i32) -> u32, + #[cfg(feature = "Win32_Foundation")] + pub TxGetSysColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, nindex: i32) -> super::super::super::Foundation::COLORREF, + #[cfg(not(feature = "Win32_Foundation"))] + TxGetSysColor: usize, pub TxGetBackStyle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstyle: *mut TXTBACKSTYLE) -> ::windows::core::HRESULT, pub TxGetMaxLength: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plength: *mut u32) -> ::windows::core::HRESULT, pub TxGetScrollBars: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwscrollbar: *mut u32) -> ::windows::core::HRESULT, @@ -4654,7 +4709,10 @@ pub struct ITextHost_Vtbl { pub TxGetExtent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lpextent: *mut super::super::super::Foundation::SIZE) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] TxGetExtent: usize, + #[cfg(feature = "Win32_Foundation")] pub OnTxCharFormatChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcf: *const CHARFORMATW) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + OnTxCharFormatChange: usize, pub OnTxParaFormatChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppf: *const PARAFORMAT) -> ::windows::core::HRESULT, pub TxGetPropertyBits: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwmask: u32, pdwbits: *mut u32) -> ::windows::core::HRESULT, pub TxNotify: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, inotify: u32, pv: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, @@ -4813,13 +4871,17 @@ impl ITextHost2 { pub unsafe fn TxGetViewInset(&self, prc: &mut super::super::super::Foundation::RECT) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).base__.TxGetViewInset)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(prc)).ok() } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn TxGetCharFormat(&self, ppcf: &*const CHARFORMATW) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).base__.TxGetCharFormat)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(ppcf)).ok() } pub unsafe fn TxGetParaFormat(&self, pppf: &*const PARAFORMAT) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).base__.TxGetParaFormat)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pppf)).ok() } - pub unsafe fn TxGetSysColor(&self, nindex: i32) -> u32 { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn TxGetSysColor(&self, nindex: i32) -> super::super::super::Foundation::COLORREF { (::windows::core::Interface::vtable(self).base__.TxGetSysColor)(::windows::core::Interface::as_raw(self), nindex) } pub unsafe fn TxGetBackStyle(&self, pstyle: &mut TXTBACKSTYLE) -> ::windows::core::Result<()> { @@ -4843,6 +4905,8 @@ impl ITextHost2 { pub unsafe fn TxGetExtent(&self, lpextent: &mut super::super::super::Foundation::SIZE) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).base__.TxGetExtent)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(lpextent)).ok() } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn OnTxCharFormatChange(&self, pcf: &CHARFORMATW) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).base__.OnTxCharFormatChange)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pcf)).ok() } @@ -9422,7 +9486,7 @@ impl ::core::default::Default for PARAFORMAT_0 { #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`*"] pub struct PARAFORMAT2 { - pub __AnonymousBase_richedit_L1149_C22: PARAFORMAT, + pub Base: PARAFORMAT, pub dySpaceBefore: i32, pub dySpaceAfter: i32, pub dyLineSpacing: i32, @@ -10421,7 +10485,8 @@ pub const ST_UNICODE: u32 = 8u32; #[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`*"] pub const S_MSG_KEY_IGNORED: ::windows::core::HRESULT = ::windows::core::HRESULT(262657i32); #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls_RichEdit\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct TABLECELLPARMS { pub dxWidth: i32, pub _bitfield: u16, @@ -10430,19 +10495,22 @@ pub struct TABLECELLPARMS { pub dyBrdrTop: i16, pub dxBrdrRight: i16, pub dyBrdrBottom: i16, - pub crBrdrLeft: u32, - pub crBrdrTop: u32, - pub crBrdrRight: u32, - pub crBrdrBottom: u32, - pub crBackPat: u32, - pub crForePat: u32, + pub crBrdrLeft: super::super::super::Foundation::COLORREF, + pub crBrdrTop: super::super::super::Foundation::COLORREF, + pub crBrdrRight: super::super::super::Foundation::COLORREF, + pub crBrdrBottom: super::super::super::Foundation::COLORREF, + pub crBackPat: super::super::super::Foundation::COLORREF, + pub crForePat: super::super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for TABLECELLPARMS {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for TABLECELLPARMS { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for TABLECELLPARMS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("TABLECELLPARMS") @@ -10462,15 +10530,19 @@ impl ::core::fmt::Debug for TABLECELLPARMS { .finish() } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for TABLECELLPARMS { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for TABLECELLPARMS { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for TABLECELLPARMS {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for TABLECELLPARMS { fn default() -> Self { unsafe { ::core::mem::zeroed() } diff --git a/crates/libs/windows/src/Windows/Win32/UI/Controls/impl.rs b/crates/libs/windows/src/Windows/Win32/UI/Controls/impl.rs index 7803fda249..036ca554c2 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/Controls/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/Controls/impl.rs @@ -4,7 +4,7 @@ pub trait IImageList_Impl: Sized { fn ReplaceIcon(&self, i: i32, hicon: super::WindowsAndMessaging::HICON) -> ::windows::core::Result; fn SetOverlayImage(&self, iimage: i32, ioverlay: i32) -> ::windows::core::Result<()>; fn Replace(&self, i: i32, hbmimage: super::super::Graphics::Gdi::HBITMAP, hbmmask: super::super::Graphics::Gdi::HBITMAP) -> ::windows::core::Result<()>; - fn AddMasked(&self, hbmimage: super::super::Graphics::Gdi::HBITMAP, crmask: u32) -> ::windows::core::Result; + fn AddMasked(&self, hbmimage: super::super::Graphics::Gdi::HBITMAP, crmask: super::super::Foundation::COLORREF) -> ::windows::core::Result; fn Draw(&self, pimldp: *const IMAGELISTDRAWPARAMS) -> ::windows::core::Result<()>; fn Remove(&self, i: i32) -> ::windows::core::Result<()>; fn GetIcon(&self, i: i32, flags: u32) -> ::windows::core::Result; @@ -17,8 +17,8 @@ pub trait IImageList_Impl: Sized { fn SetIconSize(&self, cx: i32, cy: i32) -> ::windows::core::Result<()>; fn GetImageCount(&self) -> ::windows::core::Result; fn SetImageCount(&self, unewcount: u32) -> ::windows::core::Result<()>; - fn SetBkColor(&self, clrbk: u32) -> ::windows::core::Result; - fn GetBkColor(&self) -> ::windows::core::Result; + fn SetBkColor(&self, clrbk: super::super::Foundation::COLORREF) -> ::windows::core::Result; + fn GetBkColor(&self) -> ::windows::core::Result; fn BeginDrag(&self, itrack: i32, dxhotspot: i32, dyhotspot: i32) -> ::windows::core::Result<()>; fn EndDrag(&self) -> ::windows::core::Result<()>; fn DragEnter(&self, hwndlock: super::super::Foundation::HWND, x: i32, y: i32) -> ::windows::core::Result<()>; @@ -67,7 +67,7 @@ impl IImageList_Vtbl { let this = (*this).get_impl(); this.Replace(::core::mem::transmute_copy(&i), ::core::mem::transmute_copy(&hbmimage), ::core::mem::transmute_copy(&hbmmask)).into() } - unsafe extern "system" fn AddMasked, Impl: IImageList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hbmimage: super::super::Graphics::Gdi::HBITMAP, crmask: u32, pi: *mut i32) -> ::windows::core::HRESULT { + unsafe extern "system" fn AddMasked, Impl: IImageList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hbmimage: super::super::Graphics::Gdi::HBITMAP, crmask: super::super::Foundation::COLORREF, pi: *mut i32) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.AddMasked(::core::mem::transmute_copy(&hbmimage), ::core::mem::transmute_copy(&crmask)) { @@ -162,7 +162,7 @@ impl IImageList_Vtbl { let this = (*this).get_impl(); this.SetImageCount(::core::mem::transmute_copy(&unewcount)).into() } - unsafe extern "system" fn SetBkColor, Impl: IImageList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clrbk: u32, pclr: *mut u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetBkColor, Impl: IImageList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, clrbk: super::super::Foundation::COLORREF, pclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.SetBkColor(::core::mem::transmute_copy(&clrbk)) { @@ -173,7 +173,7 @@ impl IImageList_Vtbl { ::core::result::Result::Err(err) => err.into(), } } - unsafe extern "system" fn GetBkColor, Impl: IImageList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pclr: *mut u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetBkColor, Impl: IImageList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetBkColor() { diff --git a/crates/libs/windows/src/Windows/Win32/UI/Controls/mod.rs b/crates/libs/windows/src/Windows/Win32/UI/Controls/mod.rs index 644a7815fa..8b86d1a671 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/Controls/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/Controls/mod.rs @@ -27,2218 +27,2034 @@ pub const ACS_TIMER: u32 = 8u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const ACS_TRANSPARENT: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ANIMATE_CLASS: &str = "SysAnimate32"; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ANIMATE_CLASSA: &str = "SysAnimate32"; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct AEROWIZARDPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ANIMATE_CLASSW: &str = "SysAnimate32"; +pub const AW_TITLEBAR: AEROWIZARDPARTS = AEROWIZARDPARTS(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCM_FIRST: u32 = 5632u32; +pub const AW_HEADERAREA: AEROWIZARDPARTS = AEROWIZARDPARTS(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCM_GETIDEALSIZE: u32 = 5633u32; +pub const AW_CONTENTAREA: AEROWIZARDPARTS = AEROWIZARDPARTS(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCM_GETIMAGELIST: u32 = 5635u32; +pub const AW_COMMANDAREA: AEROWIZARDPARTS = AEROWIZARDPARTS(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCM_GETNOTE: u32 = 5642u32; +pub const AW_BUTTON: AEROWIZARDPARTS = AEROWIZARDPARTS(5i32); +impl ::core::marker::Copy for AEROWIZARDPARTS {} +impl ::core::clone::Clone for AEROWIZARDPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for AEROWIZARDPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for AEROWIZARDPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for AEROWIZARDPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("AEROWIZARDPARTS").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCM_GETNOTELENGTH: u32 = 5643u32; +pub const ANIMATE_CLASS: &str = "SysAnimate32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCM_GETSPLITINFO: u32 = 5640u32; +pub const ANIMATE_CLASSA: &str = "SysAnimate32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCM_GETTEXTMARGIN: u32 = 5637u32; +pub const ANIMATE_CLASSW: &str = "SysAnimate32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCM_SETDROPDOWNSTATE: u32 = 5638u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct ARROWBTNSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCM_SETIMAGELIST: u32 = 5634u32; +pub const ABS_UPNORMAL: ARROWBTNSTATES = ARROWBTNSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCM_SETNOTE: u32 = 5641u32; +pub const ABS_UPHOT: ARROWBTNSTATES = ARROWBTNSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCM_SETSHIELD: u32 = 5644u32; +pub const ABS_UPPRESSED: ARROWBTNSTATES = ARROWBTNSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCM_SETSPLITINFO: u32 = 5639u32; +pub const ABS_UPDISABLED: ARROWBTNSTATES = ARROWBTNSTATES(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCM_SETTEXTMARGIN: u32 = 5636u32; +pub const ABS_DOWNNORMAL: ARROWBTNSTATES = ARROWBTNSTATES(5i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCN_DROPDOWN: u32 = 4294966048u32; +pub const ABS_DOWNHOT: ARROWBTNSTATES = ARROWBTNSTATES(6i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCN_FIRST: u32 = 4294966046u32; +pub const ABS_DOWNPRESSED: ARROWBTNSTATES = ARROWBTNSTATES(7i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCN_HOTITEMCHANGE: u32 = 4294966047u32; +pub const ABS_DOWNDISABLED: ARROWBTNSTATES = ARROWBTNSTATES(8i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCSIF_GLYPH: u32 = 1u32; +pub const ABS_LEFTNORMAL: ARROWBTNSTATES = ARROWBTNSTATES(9i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCSIF_IMAGE: u32 = 2u32; +pub const ABS_LEFTHOT: ARROWBTNSTATES = ARROWBTNSTATES(10i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCSIF_SIZE: u32 = 8u32; +pub const ABS_LEFTPRESSED: ARROWBTNSTATES = ARROWBTNSTATES(11i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCSIF_STYLE: u32 = 4u32; +pub const ABS_LEFTDISABLED: ARROWBTNSTATES = ARROWBTNSTATES(12i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCSS_ALIGNLEFT: u32 = 4u32; +pub const ABS_RIGHTNORMAL: ARROWBTNSTATES = ARROWBTNSTATES(13i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCSS_IMAGE: u32 = 8u32; +pub const ABS_RIGHTHOT: ARROWBTNSTATES = ARROWBTNSTATES(14i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCSS_NOSPLIT: u32 = 1u32; +pub const ABS_RIGHTPRESSED: ARROWBTNSTATES = ARROWBTNSTATES(15i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BCSS_STRETCH: u32 = 2u32; +pub const ABS_RIGHTDISABLED: ARROWBTNSTATES = ARROWBTNSTATES(16i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct BGTYPE(pub i32); +pub const ABS_UPHOVER: ARROWBTNSTATES = ARROWBTNSTATES(17i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BT_IMAGEFILE: BGTYPE = BGTYPE(0i32); +pub const ABS_DOWNHOVER: ARROWBTNSTATES = ARROWBTNSTATES(18i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BT_BORDERFILL: BGTYPE = BGTYPE(1i32); +pub const ABS_LEFTHOVER: ARROWBTNSTATES = ARROWBTNSTATES(19i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BT_NONE: BGTYPE = BGTYPE(2i32); -impl ::core::marker::Copy for BGTYPE {} -impl ::core::clone::Clone for BGTYPE { +pub const ABS_RIGHTHOVER: ARROWBTNSTATES = ARROWBTNSTATES(20i32); +impl ::core::marker::Copy for ARROWBTNSTATES {} +impl ::core::clone::Clone for ARROWBTNSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for BGTYPE { +impl ::core::default::Default for ARROWBTNSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for BGTYPE { +unsafe impl ::windows::core::Abi for ARROWBTNSTATES { type Abi = Self; } -impl ::core::fmt::Debug for BGTYPE { +impl ::core::fmt::Debug for ARROWBTNSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BGTYPE").field(&self.0).finish() + f.debug_tuple("ARROWBTNSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct BORDERTYPE(pub i32); +pub struct BACKGROUNDSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BT_RECT: BORDERTYPE = BORDERTYPE(0i32); +pub const EBS_NORMAL: BACKGROUNDSTATES = BACKGROUNDSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BT_ROUNDRECT: BORDERTYPE = BORDERTYPE(1i32); +pub const EBS_HOT: BACKGROUNDSTATES = BACKGROUNDSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BT_ELLIPSE: BORDERTYPE = BORDERTYPE(2i32); -impl ::core::marker::Copy for BORDERTYPE {} -impl ::core::clone::Clone for BORDERTYPE { +pub const EBS_DISABLED: BACKGROUNDSTATES = BACKGROUNDSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBS_FOCUSED: BACKGROUNDSTATES = BACKGROUNDSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBS_READONLY: BACKGROUNDSTATES = BACKGROUNDSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBS_ASSIST: BACKGROUNDSTATES = BACKGROUNDSTATES(6i32); +impl ::core::marker::Copy for BACKGROUNDSTATES {} +impl ::core::clone::Clone for BACKGROUNDSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for BORDERTYPE { +impl ::core::default::Default for BACKGROUNDSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for BORDERTYPE { +unsafe impl ::windows::core::Abi for BACKGROUNDSTATES { type Abi = Self; } -impl ::core::fmt::Debug for BORDERTYPE { +impl ::core::fmt::Debug for BACKGROUNDSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BORDERTYPE").field(&self.0).finish() + f.debug_tuple("BACKGROUNDSTATES").field(&self.0).finish() } } -#[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub struct BP_ANIMATIONPARAMS { - pub cbSize: u32, - pub dwFlags: u32, - pub style: BP_ANIMATIONSTYLE, - pub dwDuration: u32, -} -impl ::core::marker::Copy for BP_ANIMATIONPARAMS {} -impl ::core::clone::Clone for BP_ANIMATIONPARAMS { +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BACKGROUNDWITHBORDERSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBWBS_NORMAL: BACKGROUNDWITHBORDERSTATES = BACKGROUNDWITHBORDERSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBWBS_HOT: BACKGROUNDWITHBORDERSTATES = BACKGROUNDWITHBORDERSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBWBS_DISABLED: BACKGROUNDWITHBORDERSTATES = BACKGROUNDWITHBORDERSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBWBS_FOCUSED: BACKGROUNDWITHBORDERSTATES = BACKGROUNDWITHBORDERSTATES(4i32); +impl ::core::marker::Copy for BACKGROUNDWITHBORDERSTATES {} +impl ::core::clone::Clone for BACKGROUNDWITHBORDERSTATES { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for BP_ANIMATIONPARAMS { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("BP_ANIMATIONPARAMS").field("cbSize", &self.cbSize).field("dwFlags", &self.dwFlags).field("style", &self.style).field("dwDuration", &self.dwDuration).finish() +impl ::core::default::Default for BACKGROUNDWITHBORDERSTATES { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for BP_ANIMATIONPARAMS { +unsafe impl ::windows::core::Abi for BACKGROUNDWITHBORDERSTATES { type Abi = Self; } -impl ::core::cmp::PartialEq for BP_ANIMATIONPARAMS { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for BP_ANIMATIONPARAMS {} -impl ::core::default::Default for BP_ANIMATIONPARAMS { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for BACKGROUNDWITHBORDERSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BACKGROUNDWITHBORDERSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct BP_ANIMATIONSTYLE(pub i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BPAS_NONE: BP_ANIMATIONSTYLE = BP_ANIMATIONSTYLE(0i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BPAS_LINEAR: BP_ANIMATIONSTYLE = BP_ANIMATIONSTYLE(1i32); +pub struct BALLOONSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BPAS_CUBIC: BP_ANIMATIONSTYLE = BP_ANIMATIONSTYLE(2i32); +pub const TTBS_NORMAL: BALLOONSTATES = BALLOONSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BPAS_SINE: BP_ANIMATIONSTYLE = BP_ANIMATIONSTYLE(3i32); -impl ::core::marker::Copy for BP_ANIMATIONSTYLE {} -impl ::core::clone::Clone for BP_ANIMATIONSTYLE { +pub const TTBS_LINK: BALLOONSTATES = BALLOONSTATES(2i32); +impl ::core::marker::Copy for BALLOONSTATES {} +impl ::core::clone::Clone for BALLOONSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for BP_ANIMATIONSTYLE { +impl ::core::default::Default for BALLOONSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for BP_ANIMATIONSTYLE { +unsafe impl ::windows::core::Abi for BALLOONSTATES { type Abi = Self; } -impl ::core::fmt::Debug for BP_ANIMATIONSTYLE { +impl ::core::fmt::Debug for BALLOONSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BP_ANIMATIONSTYLE").field(&self.0).finish() + f.debug_tuple("BALLOONSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct BP_BUFFERFORMAT(pub i32); +pub struct BALLOONSTEMSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BPBF_COMPATIBLEBITMAP: BP_BUFFERFORMAT = BP_BUFFERFORMAT(0i32); +pub const TTBSS_POINTINGUPLEFTWALL: BALLOONSTEMSTATES = BALLOONSTEMSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BPBF_DIB: BP_BUFFERFORMAT = BP_BUFFERFORMAT(1i32); +pub const TTBSS_POINTINGUPCENTERED: BALLOONSTEMSTATES = BALLOONSTEMSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BPBF_TOPDOWNDIB: BP_BUFFERFORMAT = BP_BUFFERFORMAT(2i32); +pub const TTBSS_POINTINGUPRIGHTWALL: BALLOONSTEMSTATES = BALLOONSTEMSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BPBF_TOPDOWNMONODIB: BP_BUFFERFORMAT = BP_BUFFERFORMAT(3i32); -impl ::core::marker::Copy for BP_BUFFERFORMAT {} -impl ::core::clone::Clone for BP_BUFFERFORMAT { +pub const TTBSS_POINTINGDOWNRIGHTWALL: BALLOONSTEMSTATES = BALLOONSTEMSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTBSS_POINTINGDOWNCENTERED: BALLOONSTEMSTATES = BALLOONSTEMSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTBSS_POINTINGDOWNLEFTWALL: BALLOONSTEMSTATES = BALLOONSTEMSTATES(6i32); +impl ::core::marker::Copy for BALLOONSTEMSTATES {} +impl ::core::clone::Clone for BALLOONSTEMSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for BP_BUFFERFORMAT { +impl ::core::default::Default for BALLOONSTEMSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for BP_BUFFERFORMAT { +unsafe impl ::windows::core::Abi for BALLOONSTEMSTATES { type Abi = Self; } -impl ::core::fmt::Debug for BP_BUFFERFORMAT { +impl ::core::fmt::Debug for BALLOONSTEMSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BP_BUFFERFORMAT").field(&self.0).finish() + f.debug_tuple("BALLOONSTEMSTATES").field(&self.0).finish() } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -pub struct BP_PAINTPARAMS { - pub cbSize: u32, - pub dwFlags: BP_PAINTPARAMS_FLAGS, - pub prcExclude: *const super::super::Foundation::RECT, - pub pBlendFunction: *const super::super::Graphics::Gdi::BLENDFUNCTION, -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::marker::Copy for BP_PAINTPARAMS {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::clone::Clone for BP_PAINTPARAMS { +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BARBACKGROUNDSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MB_ACTIVE: BARBACKGROUNDSTATES = BARBACKGROUNDSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MB_INACTIVE: BARBACKGROUNDSTATES = BARBACKGROUNDSTATES(2i32); +impl ::core::marker::Copy for BARBACKGROUNDSTATES {} +impl ::core::clone::Clone for BARBACKGROUNDSTATES { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::fmt::Debug for BP_PAINTPARAMS { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("BP_PAINTPARAMS").field("cbSize", &self.cbSize).field("dwFlags", &self.dwFlags).field("prcExclude", &self.prcExclude).field("pBlendFunction", &self.pBlendFunction).finish() +impl ::core::default::Default for BARBACKGROUNDSTATES { + fn default() -> Self { + Self(0) } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -unsafe impl ::windows::core::Abi for BP_PAINTPARAMS { +unsafe impl ::windows::core::Abi for BARBACKGROUNDSTATES { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::PartialEq for BP_PAINTPARAMS { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::Eq for BP_PAINTPARAMS {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::default::Default for BP_PAINTPARAMS { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for BARBACKGROUNDSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BARBACKGROUNDSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct BP_PAINTPARAMS_FLAGS(pub u32); +pub struct BARITEMSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BPPF_ERASE: BP_PAINTPARAMS_FLAGS = BP_PAINTPARAMS_FLAGS(1u32); +pub const MBI_NORMAL: BARITEMSTATES = BARITEMSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BPPF_NOCLIP: BP_PAINTPARAMS_FLAGS = BP_PAINTPARAMS_FLAGS(2u32); +pub const MBI_HOT: BARITEMSTATES = BARITEMSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BPPF_NONCLIENT: BP_PAINTPARAMS_FLAGS = BP_PAINTPARAMS_FLAGS(4u32); -impl ::core::marker::Copy for BP_PAINTPARAMS_FLAGS {} -impl ::core::clone::Clone for BP_PAINTPARAMS_FLAGS { +pub const MBI_PUSHED: BARITEMSTATES = BARITEMSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MBI_DISABLED: BARITEMSTATES = BARITEMSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MBI_DISABLEDHOT: BARITEMSTATES = BARITEMSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MBI_DISABLEDPUSHED: BARITEMSTATES = BARITEMSTATES(6i32); +impl ::core::marker::Copy for BARITEMSTATES {} +impl ::core::clone::Clone for BARITEMSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for BP_PAINTPARAMS_FLAGS { +impl ::core::default::Default for BARITEMSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for BP_PAINTPARAMS_FLAGS { +unsafe impl ::windows::core::Abi for BARITEMSTATES { type Abi = Self; } -impl ::core::fmt::Debug for BP_PAINTPARAMS_FLAGS { +impl ::core::fmt::Debug for BARITEMSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BP_PAINTPARAMS_FLAGS").field(&self.0).finish() - } -} -impl ::core::ops::BitOr for BP_PAINTPARAMS_FLAGS { - type Output = Self; - fn bitor(self, other: Self) -> Self { - Self(self.0 | other.0) - } -} -impl ::core::ops::BitAnd for BP_PAINTPARAMS_FLAGS { - type Output = Self; - fn bitand(self, other: Self) -> Self { - Self(self.0 & other.0) - } -} -impl ::core::ops::BitOrAssign for BP_PAINTPARAMS_FLAGS { - fn bitor_assign(&mut self, other: Self) { - self.0.bitor_assign(other.0) - } -} -impl ::core::ops::BitAndAssign for BP_PAINTPARAMS_FLAGS { - fn bitand_assign(&mut self, other: Self) { - self.0.bitand_assign(other.0) - } -} -impl ::core::ops::Not for BP_PAINTPARAMS_FLAGS { - type Output = Self; - fn not(self) -> Self { - Self(self.0.not()) + f.debug_tuple("BARITEMSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BST_DROPDOWNPUSHED: u32 = 1024u32; +pub const BCM_FIRST: u32 = 5632u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BST_HOT: u32 = 512u32; +pub const BCM_GETIDEALSIZE: u32 = 5633u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BS_COMMANDLINK: i32 = 14i32; +pub const BCM_GETIMAGELIST: u32 = 5635u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BS_DEFCOMMANDLINK: i32 = 15i32; +pub const BCM_GETNOTE: u32 = 5642u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BS_DEFSPLITBUTTON: i32 = 13i32; +pub const BCM_GETNOTELENGTH: u32 = 5643u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BS_SPLITBUTTON: i32 = 12i32; +pub const BCM_GETSPLITINFO: u32 = 5640u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BTNS_AUTOSIZE: u32 = 16u32; +pub const BCM_GETTEXTMARGIN: u32 = 5637u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BTNS_BUTTON: u32 = 0u32; +pub const BCM_SETDROPDOWNSTATE: u32 = 5638u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BTNS_CHECK: u32 = 2u32; +pub const BCM_SETIMAGELIST: u32 = 5634u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BTNS_DROPDOWN: u32 = 8u32; +pub const BCM_SETNOTE: u32 = 5641u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BTNS_GROUP: u32 = 4u32; +pub const BCM_SETSHIELD: u32 = 5644u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BTNS_NOPREFIX: u32 = 32u32; +pub const BCM_SETSPLITINFO: u32 = 5639u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BTNS_SEP: u32 = 1u32; +pub const BCM_SETTEXTMARGIN: u32 = 5636u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BTNS_SHOWTEXT: u32 = 64u32; +pub const BCN_DROPDOWN: u32 = 4294966048u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BTNS_WHOLEDROPDOWN: u32 = 128u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BUTTON_IMAGELIST { - pub himl: HIMAGELIST, - pub margin: super::super::Foundation::RECT, - pub uAlign: BUTTON_IMAGELIST_ALIGN, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BUTTON_IMAGELIST {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BUTTON_IMAGELIST { - fn clone(&self) -> Self { - *self - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for BUTTON_IMAGELIST { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("BUTTON_IMAGELIST").field("himl", &self.himl).field("margin", &self.margin).field("uAlign", &self.uAlign).finish() +pub const BCN_FIRST: u32 = 4294966046u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BCN_HOTITEMCHANGE: u32 = 4294966047u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BCSIF_GLYPH: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BCSIF_IMAGE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BCSIF_SIZE: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BCSIF_STYLE: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BCSS_ALIGNLEFT: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BCSS_IMAGE: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BCSS_NOSPLIT: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BCSS_STRETCH: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BGTYPE(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BT_IMAGEFILE: BGTYPE = BGTYPE(0i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BT_BORDERFILL: BGTYPE = BGTYPE(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BT_NONE: BGTYPE = BGTYPE(2i32); +impl ::core::marker::Copy for BGTYPE {} +impl ::core::clone::Clone for BGTYPE { + fn clone(&self) -> Self { + *self } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for BUTTON_IMAGELIST { +impl ::core::default::Default for BGTYPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for BGTYPE { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for BUTTON_IMAGELIST { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::fmt::Debug for BGTYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BGTYPE").field(&self.0).finish() } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for BUTTON_IMAGELIST {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for BUTTON_IMAGELIST { +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BODYSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FBS_NORMAL: BODYSTATES = BODYSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FBS_EMPHASIZED: BODYSTATES = BODYSTATES(2i32); +impl ::core::marker::Copy for BODYSTATES {} +impl ::core::clone::Clone for BODYSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for BODYSTATES { fn default() -> Self { - unsafe { ::core::mem::zeroed() } + Self(0) + } +} +unsafe impl ::windows::core::Abi for BODYSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for BODYSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BODYSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct BUTTON_IMAGELIST_ALIGN(pub u32); +pub struct BORDERSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BUTTON_IMAGELIST_ALIGN_LEFT: BUTTON_IMAGELIST_ALIGN = BUTTON_IMAGELIST_ALIGN(0u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BUTTON_IMAGELIST_ALIGN_RIGHT: BUTTON_IMAGELIST_ALIGN = BUTTON_IMAGELIST_ALIGN(1u32); +pub const CBB_NORMAL: BORDERSTATES = BORDERSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BUTTON_IMAGELIST_ALIGN_TOP: BUTTON_IMAGELIST_ALIGN = BUTTON_IMAGELIST_ALIGN(2u32); +pub const CBB_HOT: BORDERSTATES = BORDERSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BUTTON_IMAGELIST_ALIGN_BOTTOM: BUTTON_IMAGELIST_ALIGN = BUTTON_IMAGELIST_ALIGN(3u32); +pub const CBB_FOCUSED: BORDERSTATES = BORDERSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BUTTON_IMAGELIST_ALIGN_CENTER: BUTTON_IMAGELIST_ALIGN = BUTTON_IMAGELIST_ALIGN(4u32); -impl ::core::marker::Copy for BUTTON_IMAGELIST_ALIGN {} -impl ::core::clone::Clone for BUTTON_IMAGELIST_ALIGN { +pub const CBB_DISABLED: BORDERSTATES = BORDERSTATES(4i32); +impl ::core::marker::Copy for BORDERSTATES {} +impl ::core::clone::Clone for BORDERSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for BUTTON_IMAGELIST_ALIGN { +impl ::core::default::Default for BORDERSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for BUTTON_IMAGELIST_ALIGN { +unsafe impl ::windows::core::Abi for BORDERSTATES { type Abi = Self; } -impl ::core::fmt::Debug for BUTTON_IMAGELIST_ALIGN { +impl ::core::fmt::Debug for BORDERSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BUTTON_IMAGELIST_ALIGN").field(&self.0).finish() + f.debug_tuple("BORDERSTATES").field(&self.0).finish() } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BUTTON_SPLITINFO { - pub mask: u32, - pub himlGlyph: HIMAGELIST, - pub uSplitStyle: u32, - pub size: super::super::Foundation::SIZE, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BUTTON_SPLITINFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BUTTON_SPLITINFO { +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BORDERTYPE(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BT_RECT: BORDERTYPE = BORDERTYPE(0i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BT_ROUNDRECT: BORDERTYPE = BORDERTYPE(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BT_ELLIPSE: BORDERTYPE = BORDERTYPE(2i32); +impl ::core::marker::Copy for BORDERTYPE {} +impl ::core::clone::Clone for BORDERTYPE { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for BUTTON_SPLITINFO { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("BUTTON_SPLITINFO").field("mask", &self.mask).field("himlGlyph", &self.himlGlyph).field("uSplitStyle", &self.uSplitStyle).field("size", &self.size).finish() +impl ::core::default::Default for BORDERTYPE { + fn default() -> Self { + Self(0) } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for BUTTON_SPLITINFO { +unsafe impl ::windows::core::Abi for BORDERTYPE { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for BUTTON_SPLITINFO { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for BUTTON_SPLITINFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for BUTTON_SPLITINFO { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for BORDERTYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BORDERTYPE").field(&self.0).finish() } } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -#[inline] -pub unsafe fn BeginBufferedAnimation<'a, P0, P1>(hwnd: P0, hdctarget: P1, prctarget: &super::super::Foundation::RECT, dwformat: BP_BUFFERFORMAT, ppaintparams: ::core::option::Option<&BP_PAINTPARAMS>, panimationparams: &BP_ANIMATIONPARAMS, phdcfrom: &mut super::super::Graphics::Gdi::HDC, phdcto: &mut super::super::Graphics::Gdi::HDC) -> isize -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn BeginBufferedAnimation(hwnd: super::super::Foundation::HWND, hdctarget: super::super::Graphics::Gdi::HDC, prctarget: *const super::super::Foundation::RECT, dwformat: BP_BUFFERFORMAT, ppaintparams: *const BP_PAINTPARAMS, panimationparams: *const BP_ANIMATIONPARAMS, phdcfrom: *mut super::super::Graphics::Gdi::HDC, phdcto: *mut super::super::Graphics::Gdi::HDC) -> isize; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BORDER_HSCROLLSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSH_NORMAL: BORDER_HSCROLLSTATES = BORDER_HSCROLLSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSH_FOCUSED: BORDER_HSCROLLSTATES = BORDER_HSCROLLSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSH_HOT: BORDER_HSCROLLSTATES = BORDER_HSCROLLSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSH_DISABLED: BORDER_HSCROLLSTATES = BORDER_HSCROLLSTATES(4i32); +impl ::core::marker::Copy for BORDER_HSCROLLSTATES {} +impl ::core::clone::Clone for BORDER_HSCROLLSTATES { + fn clone(&self) -> Self { + *self } - BeginBufferedAnimation(hwnd.into(), hdctarget.into(), ::core::mem::transmute(prctarget), dwformat, ::core::mem::transmute(ppaintparams), ::core::mem::transmute(panimationparams), ::core::mem::transmute(phdcfrom), ::core::mem::transmute(phdcto)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -#[inline] -pub unsafe fn BeginBufferedPaint<'a, P0>(hdctarget: P0, prctarget: &super::super::Foundation::RECT, dwformat: BP_BUFFERFORMAT, ppaintparams: ::core::option::Option<&BP_PAINTPARAMS>, phdc: &mut super::super::Graphics::Gdi::HDC) -> isize -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn BeginBufferedPaint(hdctarget: super::super::Graphics::Gdi::HDC, prctarget: *const super::super::Foundation::RECT, dwformat: BP_BUFFERFORMAT, ppaintparams: *const BP_PAINTPARAMS, phdc: *mut super::super::Graphics::Gdi::HDC) -> isize; +impl ::core::default::Default for BORDER_HSCROLLSTATES { + fn default() -> Self { + Self(0) } - BeginBufferedPaint(hdctarget.into(), ::core::mem::transmute(prctarget), dwformat, ::core::mem::transmute(ppaintparams), ::core::mem::transmute(phdc)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn BeginPanningFeedback<'a, P0>(hwnd: P0) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn BeginPanningFeedback(hwnd: super::super::Foundation::HWND) -> super::super::Foundation::BOOL; - } - BeginPanningFeedback(hwnd.into()) +unsafe impl ::windows::core::Abi for BORDER_HSCROLLSTATES { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn BufferedPaintClear(hbufferedpaint: isize, prc: ::core::option::Option<&super::super::Foundation::RECT>) -> ::windows::core::Result<()> { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn BufferedPaintClear(hbufferedpaint: isize, prc: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT; +impl ::core::fmt::Debug for BORDER_HSCROLLSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BORDER_HSCROLLSTATES").field(&self.0).finish() } - BufferedPaintClear(hbufferedpaint, ::core::mem::transmute(prc)).ok() } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn BufferedPaintInit() -> ::windows::core::Result<()> { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn BufferedPaintInit() -> ::windows::core::HRESULT; - } - BufferedPaintInit().ok() -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -#[inline] -pub unsafe fn BufferedPaintRenderAnimation<'a, P0, P1>(hwnd: P0, hdctarget: P1) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn BufferedPaintRenderAnimation(hwnd: super::super::Foundation::HWND, hdctarget: super::super::Graphics::Gdi::HDC) -> super::super::Foundation::BOOL; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BORDER_HVSCROLLSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSHV_NORMAL: BORDER_HVSCROLLSTATES = BORDER_HVSCROLLSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSHV_FOCUSED: BORDER_HVSCROLLSTATES = BORDER_HVSCROLLSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSHV_HOT: BORDER_HVSCROLLSTATES = BORDER_HVSCROLLSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSHV_DISABLED: BORDER_HVSCROLLSTATES = BORDER_HVSCROLLSTATES(4i32); +impl ::core::marker::Copy for BORDER_HVSCROLLSTATES {} +impl ::core::clone::Clone for BORDER_HVSCROLLSTATES { + fn clone(&self) -> Self { + *self } - BufferedPaintRenderAnimation(hwnd.into(), hdctarget.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn BufferedPaintSetAlpha(hbufferedpaint: isize, prc: ::core::option::Option<&super::super::Foundation::RECT>, alpha: u8) -> ::windows::core::Result<()> { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn BufferedPaintSetAlpha(hbufferedpaint: isize, prc: *const super::super::Foundation::RECT, alpha: u8) -> ::windows::core::HRESULT; +impl ::core::default::Default for BORDER_HVSCROLLSTATES { + fn default() -> Self { + Self(0) } - BufferedPaintSetAlpha(hbufferedpaint, ::core::mem::transmute(prc), alpha).ok() } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn BufferedPaintStopAllAnimations<'a, P0>(hwnd: P0) -> ::windows::core::Result<()> -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn BufferedPaintStopAllAnimations(hwnd: super::super::Foundation::HWND) -> ::windows::core::HRESULT; - } - BufferedPaintStopAllAnimations(hwnd.into()).ok() +unsafe impl ::windows::core::Abi for BORDER_HVSCROLLSTATES { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn BufferedPaintUnInit() -> ::windows::core::Result<()> { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn BufferedPaintUnInit() -> ::windows::core::HRESULT; +impl ::core::fmt::Debug for BORDER_HVSCROLLSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BORDER_HVSCROLLSTATES").field(&self.0).finish() } - BufferedPaintUnInit().ok() } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEMAXSTRLEN: u32 = 260u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BORDER_NOSCROLLSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_GETCOMBOCONTROL: u32 = 1030u32; +pub const LBPSN_NORMAL: BORDER_NOSCROLLSTATES = BORDER_NOSCROLLSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_GETEDITCONTROL: u32 = 1031u32; +pub const LBPSN_FOCUSED: BORDER_NOSCROLLSTATES = BORDER_NOSCROLLSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_GETEXSTYLE: u32 = 1033u32; +pub const LBPSN_HOT: BORDER_NOSCROLLSTATES = BORDER_NOSCROLLSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_GETEXTENDEDSTYLE: u32 = 1033u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_GETIMAGELIST: u32 = 1027u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_GETITEM: u32 = 1037u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_GETITEMA: u32 = 1028u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_GETITEMW: u32 = 1037u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_GETUNICODEFORMAT: u32 = 8198u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_HASEDITCHANGED: u32 = 1034u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_INSERTITEM: u32 = 1035u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_INSERTITEMA: u32 = 1025u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_INSERTITEMW: u32 = 1035u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_SETEXSTYLE: u32 = 1032u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_SETEXTENDEDSTYLE: u32 = 1038u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_SETIMAGELIST: u32 = 1026u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_SETITEM: u32 = 1036u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_SETITEMA: u32 = 1029u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_SETITEMW: u32 = 1036u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_SETUNICODEFORMAT: u32 = 8197u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEM_SETWINDOWTHEME: u32 = 8203u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBENF_DROPDOWN: u32 = 4u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBENF_ESCAPE: u32 = 3u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBENF_KILLFOCUS: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBENF_RETURN: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBES_EX_CASESENSITIVE: u32 = 16u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBES_EX_NOEDITIMAGE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBES_EX_NOEDITIMAGEINDENT: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBES_EX_NOSIZELIMIT: u32 = 8u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBES_EX_PATHWORDBREAKPROC: u32 = 4u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBES_EX_TEXTENDELLIPSIS: u32 = 32u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBM_FIRST: u32 = 5888u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CB_GETCUEBANNER: u32 = 5892u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CB_GETMINVISIBLE: u32 = 5890u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CB_SETCUEBANNER: u32 = 5891u32; +pub const LBPSN_DISABLED: BORDER_NOSCROLLSTATES = BORDER_NOSCROLLSTATES(4i32); +impl ::core::marker::Copy for BORDER_NOSCROLLSTATES {} +impl ::core::clone::Clone for BORDER_NOSCROLLSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for BORDER_NOSCROLLSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for BORDER_NOSCROLLSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for BORDER_NOSCROLLSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BORDER_NOSCROLLSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CB_SETMINVISIBLE: u32 = 5889u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BORDER_VSCROLLSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCF_NOTEXT: u32 = 1u32; +pub const LBPSV_NORMAL: BORDER_VSCROLLSTATES = BORDER_VSCROLLSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCHCCCLASS: u32 = 32u32; +pub const LBPSV_FOCUSED: BORDER_VSCROLLSTATES = BORDER_VSCROLLSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCHCCDESC: u32 = 32u32; +pub const LBPSV_HOT: BORDER_VSCROLLSTATES = BORDER_VSCROLLSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCHCCTEXT: u32 = 256u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -pub struct CCINFOA { - pub szClass: [super::super::Foundation::CHAR; 32], - pub flOptions: u32, - pub szDesc: [super::super::Foundation::CHAR; 32], - pub cxDefault: u32, - pub cyDefault: u32, - pub flStyleDefault: u32, - pub flExtStyleDefault: u32, - pub flCtrlTypeMask: u32, - pub szTextDefault: [super::super::Foundation::CHAR; 256], - pub cStyleFlags: i32, - pub aStyleFlags: *mut CCSTYLEFLAGA, - pub lpfnStyle: LPFNCCSTYLEA, - pub lpfnSizeToText: LPFNCCSIZETOTEXTA, - pub dwReserved1: u32, - pub dwReserved2: u32, -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::marker::Copy for CCINFOA {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::clone::Clone for CCINFOA { +pub const LBPSV_DISABLED: BORDER_VSCROLLSTATES = BORDER_VSCROLLSTATES(4i32); +impl ::core::marker::Copy for BORDER_VSCROLLSTATES {} +impl ::core::clone::Clone for BORDER_VSCROLLSTATES { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::fmt::Debug for CCINFOA { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("CCINFOA") - .field("szClass", &self.szClass) - .field("flOptions", &self.flOptions) - .field("szDesc", &self.szDesc) - .field("cxDefault", &self.cxDefault) - .field("cyDefault", &self.cyDefault) - .field("flStyleDefault", &self.flStyleDefault) - .field("flExtStyleDefault", &self.flExtStyleDefault) - .field("flCtrlTypeMask", &self.flCtrlTypeMask) - .field("szTextDefault", &self.szTextDefault) - .field("cStyleFlags", &self.cStyleFlags) - .field("aStyleFlags", &self.aStyleFlags) - .field("lpfnStyle", &self.lpfnStyle.map(|f| f as usize)) - .field("lpfnSizeToText", &self.lpfnSizeToText.map(|f| f as usize)) - .field("dwReserved1", &self.dwReserved1) - .field("dwReserved2", &self.dwReserved2) - .finish() +impl ::core::default::Default for BORDER_VSCROLLSTATES { + fn default() -> Self { + Self(0) } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -unsafe impl ::windows::core::Abi for CCINFOA { +unsafe impl ::windows::core::Abi for BORDER_VSCROLLSTATES { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::PartialEq for CCINFOA { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::Eq for CCINFOA {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::default::Default for CCINFOA { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for BORDER_VSCROLLSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BORDER_VSCROLLSTATES").field(&self.0).finish() } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -pub struct CCINFOW { - pub szClass: [u16; 32], - pub flOptions: u32, - pub szDesc: [u16; 32], - pub cxDefault: u32, - pub cyDefault: u32, - pub flStyleDefault: u32, - pub flExtStyleDefault: u32, - pub flCtrlTypeMask: u32, - pub cStyleFlags: i32, - pub aStyleFlags: *mut CCSTYLEFLAGW, - pub szTextDefault: [u16; 256], - pub lpfnStyle: LPFNCCSTYLEW, - pub lpfnSizeToText: LPFNCCSIZETOTEXTW, - pub dwReserved1: u32, - pub dwReserved2: u32, +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub struct BP_ANIMATIONPARAMS { + pub cbSize: u32, + pub dwFlags: u32, + pub style: BP_ANIMATIONSTYLE, + pub dwDuration: u32, } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::marker::Copy for CCINFOW {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::clone::Clone for CCINFOW { +impl ::core::marker::Copy for BP_ANIMATIONPARAMS {} +impl ::core::clone::Clone for BP_ANIMATIONPARAMS { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::fmt::Debug for CCINFOW { +impl ::core::fmt::Debug for BP_ANIMATIONPARAMS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("CCINFOW") - .field("szClass", &self.szClass) - .field("flOptions", &self.flOptions) - .field("szDesc", &self.szDesc) - .field("cxDefault", &self.cxDefault) - .field("cyDefault", &self.cyDefault) - .field("flStyleDefault", &self.flStyleDefault) - .field("flExtStyleDefault", &self.flExtStyleDefault) - .field("flCtrlTypeMask", &self.flCtrlTypeMask) - .field("cStyleFlags", &self.cStyleFlags) - .field("aStyleFlags", &self.aStyleFlags) - .field("szTextDefault", &self.szTextDefault) - .field("lpfnStyle", &self.lpfnStyle.map(|f| f as usize)) - .field("lpfnSizeToText", &self.lpfnSizeToText.map(|f| f as usize)) - .field("dwReserved1", &self.dwReserved1) - .field("dwReserved2", &self.dwReserved2) - .finish() + f.debug_struct("BP_ANIMATIONPARAMS").field("cbSize", &self.cbSize).field("dwFlags", &self.dwFlags).field("style", &self.style).field("dwDuration", &self.dwDuration).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -unsafe impl ::windows::core::Abi for CCINFOW { +unsafe impl ::windows::core::Abi for BP_ANIMATIONPARAMS { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::PartialEq for CCINFOW { +impl ::core::cmp::PartialEq for BP_ANIMATIONPARAMS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::Eq for CCINFOW {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::default::Default for CCINFOW { +impl ::core::cmp::Eq for BP_ANIMATIONPARAMS {} +impl ::core::default::Default for BP_ANIMATIONPARAMS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCM_DPISCALE: u32 = 8204u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCM_FIRST: u32 = 8192u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCM_GETCOLORSCHEME: u32 = 8195u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCM_GETDROPTARGET: u32 = 8196u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BP_ANIMATIONSTYLE(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCM_GETUNICODEFORMAT: u32 = 8198u32; +pub const BPAS_NONE: BP_ANIMATIONSTYLE = BP_ANIMATIONSTYLE(0i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCM_GETVERSION: u32 = 8200u32; +pub const BPAS_LINEAR: BP_ANIMATIONSTYLE = BP_ANIMATIONSTYLE(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCM_LAST: u32 = 8704u32; +pub const BPAS_CUBIC: BP_ANIMATIONSTYLE = BP_ANIMATIONSTYLE(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCM_SETBKCOLOR: u32 = 8193u32; +pub const BPAS_SINE: BP_ANIMATIONSTYLE = BP_ANIMATIONSTYLE(3i32); +impl ::core::marker::Copy for BP_ANIMATIONSTYLE {} +impl ::core::clone::Clone for BP_ANIMATIONSTYLE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for BP_ANIMATIONSTYLE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for BP_ANIMATIONSTYLE { + type Abi = Self; +} +impl ::core::fmt::Debug for BP_ANIMATIONSTYLE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BP_ANIMATIONSTYLE").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCM_SETCOLORSCHEME: u32 = 8194u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BP_BUFFERFORMAT(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCM_SETNOTIFYWINDOW: u32 = 8201u32; +pub const BPBF_COMPATIBLEBITMAP: BP_BUFFERFORMAT = BP_BUFFERFORMAT(0i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCM_SETUNICODEFORMAT: u32 = 8197u32; +pub const BPBF_DIB: BP_BUFFERFORMAT = BP_BUFFERFORMAT(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCM_SETVERSION: u32 = 8199u32; +pub const BPBF_TOPDOWNDIB: BP_BUFFERFORMAT = BP_BUFFERFORMAT(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCM_SETWINDOWTHEME: u32 = 8203u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct CCSTYLEA { - pub flStyle: u32, - pub flExtStyle: u32, - pub szText: [super::super::Foundation::CHAR; 256], - pub lgid: u16, - pub wReserved1: u16, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for CCSTYLEA {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for CCSTYLEA { +pub const BPBF_TOPDOWNMONODIB: BP_BUFFERFORMAT = BP_BUFFERFORMAT(3i32); +impl ::core::marker::Copy for BP_BUFFERFORMAT {} +impl ::core::clone::Clone for BP_BUFFERFORMAT { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for CCSTYLEA { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("CCSTYLEA").field("flStyle", &self.flStyle).field("flExtStyle", &self.flExtStyle).field("szText", &self.szText).field("lgid", &self.lgid).field("wReserved1", &self.wReserved1).finish() +impl ::core::default::Default for BP_BUFFERFORMAT { + fn default() -> Self { + Self(0) } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for CCSTYLEA { +unsafe impl ::windows::core::Abi for BP_BUFFERFORMAT { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for CCSTYLEA { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for CCSTYLEA {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for CCSTYLEA { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for BP_BUFFERFORMAT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BP_BUFFERFORMAT").field(&self.0).finish() } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub struct CCSTYLEFLAGA { - pub flStyle: u32, - pub flStyleMask: u32, - pub pszStyle: ::windows::core::PSTR, +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +pub struct BP_PAINTPARAMS { + pub cbSize: u32, + pub dwFlags: BP_PAINTPARAMS_FLAGS, + pub prcExclude: *const super::super::Foundation::RECT, + pub pBlendFunction: *const super::super::Graphics::Gdi::BLENDFUNCTION, } -impl ::core::marker::Copy for CCSTYLEFLAGA {} -impl ::core::clone::Clone for CCSTYLEFLAGA { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::marker::Copy for BP_PAINTPARAMS {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::clone::Clone for BP_PAINTPARAMS { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for CCSTYLEFLAGA { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::fmt::Debug for BP_PAINTPARAMS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("CCSTYLEFLAGA").field("flStyle", &self.flStyle).field("flStyleMask", &self.flStyleMask).field("pszStyle", &self.pszStyle).finish() + f.debug_struct("BP_PAINTPARAMS").field("cbSize", &self.cbSize).field("dwFlags", &self.dwFlags).field("prcExclude", &self.prcExclude).field("pBlendFunction", &self.pBlendFunction).finish() } } -unsafe impl ::windows::core::Abi for CCSTYLEFLAGA { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +unsafe impl ::windows::core::Abi for BP_PAINTPARAMS { type Abi = Self; } -impl ::core::cmp::PartialEq for CCSTYLEFLAGA { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::PartialEq for BP_PAINTPARAMS { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for CCSTYLEFLAGA {} -impl ::core::default::Default for CCSTYLEFLAGA { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::Eq for BP_PAINTPARAMS {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::default::Default for BP_PAINTPARAMS { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub struct CCSTYLEFLAGW { - pub flStyle: u32, - pub flStyleMask: u32, - pub pszStyle: ::windows::core::PWSTR, -} -impl ::core::marker::Copy for CCSTYLEFLAGW {} -impl ::core::clone::Clone for CCSTYLEFLAGW { +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BP_PAINTPARAMS_FLAGS(pub u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BPPF_ERASE: BP_PAINTPARAMS_FLAGS = BP_PAINTPARAMS_FLAGS(1u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BPPF_NOCLIP: BP_PAINTPARAMS_FLAGS = BP_PAINTPARAMS_FLAGS(2u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BPPF_NONCLIENT: BP_PAINTPARAMS_FLAGS = BP_PAINTPARAMS_FLAGS(4u32); +impl ::core::marker::Copy for BP_PAINTPARAMS_FLAGS {} +impl ::core::clone::Clone for BP_PAINTPARAMS_FLAGS { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for CCSTYLEFLAGW { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("CCSTYLEFLAGW").field("flStyle", &self.flStyle).field("flStyleMask", &self.flStyleMask).field("pszStyle", &self.pszStyle).finish() +impl ::core::default::Default for BP_PAINTPARAMS_FLAGS { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for CCSTYLEFLAGW { +unsafe impl ::windows::core::Abi for BP_PAINTPARAMS_FLAGS { type Abi = Self; } -impl ::core::cmp::PartialEq for CCSTYLEFLAGW { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::fmt::Debug for BP_PAINTPARAMS_FLAGS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BP_PAINTPARAMS_FLAGS").field(&self.0).finish() } } -impl ::core::cmp::Eq for CCSTYLEFLAGW {} -impl ::core::default::Default for CCSTYLEFLAGW { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::ops::BitOr for BP_PAINTPARAMS_FLAGS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub struct CCSTYLEW { - pub flStyle: u32, - pub flExtStyle: u32, - pub szText: [u16; 256], - pub lgid: u16, - pub wReserved1: u16, -} -impl ::core::marker::Copy for CCSTYLEW {} -impl ::core::clone::Clone for CCSTYLEW { - fn clone(&self) -> Self { - *self +impl ::core::ops::BitAnd for BP_PAINTPARAMS_FLAGS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) } } -impl ::core::fmt::Debug for CCSTYLEW { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("CCSTYLEW").field("flStyle", &self.flStyle).field("flExtStyle", &self.flExtStyle).field("szText", &self.szText).field("lgid", &self.lgid).field("wReserved1", &self.wReserved1).finish() +impl ::core::ops::BitOrAssign for BP_PAINTPARAMS_FLAGS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) } } -unsafe impl ::windows::core::Abi for CCSTYLEW { - type Abi = Self; -} -impl ::core::cmp::PartialEq for CCSTYLEW { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::ops::BitAndAssign for BP_PAINTPARAMS_FLAGS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) } } -impl ::core::cmp::Eq for CCSTYLEW {} -impl ::core::default::Default for CCSTYLEW { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::ops::Not for BP_PAINTPARAMS_FLAGS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCS_ADJUSTABLE: i32 = 32i32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCS_BOTTOM: i32 = 3i32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCS_NODIVIDER: i32 = 64i32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCS_NOMOVEY: i32 = 2i32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCS_NOPARENTALIGN: i32 = 8i32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCS_NORESIZE: i32 = 4i32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCS_TOP: i32 = 1i32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CCS_VERT: i32 = 128i32; +pub const BST_DROPDOWNPUSHED: u32 = 1024u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDDS_ITEM: u32 = 65536u32; +pub const BST_HOT: u32 = 512u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDDS_POSTERASE: u32 = 4u32; +pub const BS_COMMANDLINK: i32 = 14i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDIS_CHECKED: u32 = 8u32; +pub const BS_DEFCOMMANDLINK: i32 = 15i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDIS_DEFAULT: u32 = 32u32; +pub const BS_DEFSPLITBUTTON: i32 = 13i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDIS_DISABLED: u32 = 4u32; +pub const BS_SPLITBUTTON: i32 = 12i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDIS_DROPHILITED: u32 = 4096u32; +pub const BTNS_AUTOSIZE: u32 = 16u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDIS_FOCUS: u32 = 16u32; +pub const BTNS_BUTTON: u32 = 0u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDIS_GRAYED: u32 = 2u32; +pub const BTNS_CHECK: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDIS_HOT: u32 = 64u32; +pub const BTNS_DROPDOWN: u32 = 8u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDIS_INDETERMINATE: u32 = 256u32; +pub const BTNS_GROUP: u32 = 4u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDIS_MARKED: u32 = 128u32; +pub const BTNS_NOPREFIX: u32 = 32u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDIS_NEARHOT: u32 = 1024u32; +pub const BTNS_SEP: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDIS_OTHERSIDEHOT: u32 = 2048u32; +pub const BTNS_SHOWTEXT: u32 = 64u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDIS_SELECTED: u32 = 1u32; +pub const BTNS_WHOLEDROPDOWN: u32 = 128u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDIS_SHOWKEYBOARDCUES: u32 = 512u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BUTTONPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDRF_DODEFAULT: u32 = 0u32; +pub const BP_PUSHBUTTON: BUTTONPARTS = BUTTONPARTS(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDRF_DOERASE: u32 = 8u32; +pub const BP_RADIOBUTTON: BUTTONPARTS = BUTTONPARTS(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDRF_NEWFONT: u32 = 2u32; +pub const BP_CHECKBOX: BUTTONPARTS = BUTTONPARTS(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDRF_NOTIFYITEMDRAW: u32 = 32u32; +pub const BP_GROUPBOX: BUTTONPARTS = BUTTONPARTS(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDRF_NOTIFYPOSTERASE: u32 = 64u32; +pub const BP_USERBUTTON: BUTTONPARTS = BUTTONPARTS(5i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDRF_NOTIFYPOSTPAINT: u32 = 16u32; +pub const BP_COMMANDLINK: BUTTONPARTS = BUTTONPARTS(6i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDRF_NOTIFYSUBITEMDRAW: u32 = 32u32; +pub const BP_COMMANDLINKGLYPH: BUTTONPARTS = BUTTONPARTS(7i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDRF_SKIPDEFAULT: u32 = 4u32; +pub const BP_RADIOBUTTON_HCDISABLED: BUTTONPARTS = BUTTONPARTS(8i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CDRF_SKIPPOSTPAINT: u32 = 256u32; +pub const BP_CHECKBOX_HCDISABLED: BUTTONPARTS = BUTTONPARTS(9i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct CLOCKPARTS(pub i32); +pub const BP_GROUPBOX_HCDISABLED: BUTTONPARTS = BUTTONPARTS(10i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CLP_TIME: CLOCKPARTS = CLOCKPARTS(1i32); -impl ::core::marker::Copy for CLOCKPARTS {} -impl ::core::clone::Clone for CLOCKPARTS { +pub const BP_PUSHBUTTONDROPDOWN: BUTTONPARTS = BUTTONPARTS(11i32); +impl ::core::marker::Copy for BUTTONPARTS {} +impl ::core::clone::Clone for BUTTONPARTS { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for CLOCKPARTS { +impl ::core::default::Default for BUTTONPARTS { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for CLOCKPARTS { +unsafe impl ::windows::core::Abi for BUTTONPARTS { type Abi = Self; } -impl ::core::fmt::Debug for CLOCKPARTS { +impl ::core::fmt::Debug for BUTTONPARTS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("CLOCKPARTS").field(&self.0).finish() + f.debug_tuple("BUTTONPARTS").field(&self.0).finish() } } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct CLOCKSTATES(pub i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CLS_NORMAL: CLOCKSTATES = CLOCKSTATES(1i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CLS_HOT: CLOCKSTATES = CLOCKSTATES(2i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CLS_PRESSED: CLOCKSTATES = CLOCKSTATES(3i32); -impl ::core::marker::Copy for CLOCKSTATES {} -impl ::core::clone::Clone for CLOCKSTATES { +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BUTTON_IMAGELIST { + pub himl: HIMAGELIST, + pub margin: super::super::Foundation::RECT, + pub uAlign: BUTTON_IMAGELIST_ALIGN, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BUTTON_IMAGELIST {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BUTTON_IMAGELIST { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for CLOCKSTATES { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for CLOCKSTATES { - type Abi = Self; -} -impl ::core::fmt::Debug for CLOCKSTATES { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("CLOCKSTATES").field(&self.0).finish() - } -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CLR_DEFAULT: i32 = -16777216i32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CLR_HILIGHT: i32 = -16777216i32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CLR_NONE: i32 = -1i32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CMB_MASKED: u32 = 2u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub struct COLORMAP { - pub from: u32, - pub to: u32, -} -impl ::core::marker::Copy for COLORMAP {} -impl ::core::clone::Clone for COLORMAP { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for COLORMAP { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for BUTTON_IMAGELIST { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("COLORMAP").field("from", &self.from).field("to", &self.to).finish() + f.debug_struct("BUTTON_IMAGELIST").field("himl", &self.himl).field("margin", &self.margin).field("uAlign", &self.uAlign).finish() } } -unsafe impl ::windows::core::Abi for COLORMAP { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for BUTTON_IMAGELIST { type Abi = Self; } -impl ::core::cmp::PartialEq for COLORMAP { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for BUTTON_IMAGELIST { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for COLORMAP {} -impl ::core::default::Default for COLORMAP { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for BUTTON_IMAGELIST {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for BUTTON_IMAGELIST { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const COLORMGMTDLGORD: u32 = 1551u32; -#[repr(C)] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BUTTON_IMAGELIST_ALIGN(pub u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub struct COLORSCHEME { - pub dwSize: u32, - pub clrBtnHighlight: u32, - pub clrBtnShadow: u32, -} -impl ::core::marker::Copy for COLORSCHEME {} -impl ::core::clone::Clone for COLORSCHEME { +pub const BUTTON_IMAGELIST_ALIGN_LEFT: BUTTON_IMAGELIST_ALIGN = BUTTON_IMAGELIST_ALIGN(0u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BUTTON_IMAGELIST_ALIGN_RIGHT: BUTTON_IMAGELIST_ALIGN = BUTTON_IMAGELIST_ALIGN(1u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BUTTON_IMAGELIST_ALIGN_TOP: BUTTON_IMAGELIST_ALIGN = BUTTON_IMAGELIST_ALIGN(2u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BUTTON_IMAGELIST_ALIGN_BOTTOM: BUTTON_IMAGELIST_ALIGN = BUTTON_IMAGELIST_ALIGN(3u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BUTTON_IMAGELIST_ALIGN_CENTER: BUTTON_IMAGELIST_ALIGN = BUTTON_IMAGELIST_ALIGN(4u32); +impl ::core::marker::Copy for BUTTON_IMAGELIST_ALIGN {} +impl ::core::clone::Clone for BUTTON_IMAGELIST_ALIGN { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for COLORSCHEME { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("COLORSCHEME").field("dwSize", &self.dwSize).field("clrBtnHighlight", &self.clrBtnHighlight).field("clrBtnShadow", &self.clrBtnShadow).finish() +impl ::core::default::Default for BUTTON_IMAGELIST_ALIGN { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for COLORSCHEME { +unsafe impl ::windows::core::Abi for BUTTON_IMAGELIST_ALIGN { type Abi = Self; } -impl ::core::cmp::PartialEq for COLORSCHEME { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for COLORSCHEME {} -impl ::core::default::Default for COLORSCHEME { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for BUTTON_IMAGELIST_ALIGN { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BUTTON_IMAGELIST_ALIGN").field(&self.0).finish() } } #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct COMBOBOXEXITEMA { - pub mask: COMBOBOX_EX_ITEM_FLAGS, - pub iItem: isize, - pub pszText: ::windows::core::PSTR, - pub cchTextMax: i32, - pub iImage: i32, - pub iSelectedImage: i32, - pub iOverlay: i32, - pub iIndent: i32, - pub lParam: super::super::Foundation::LPARAM, +pub struct BUTTON_SPLITINFO { + pub mask: u32, + pub himlGlyph: HIMAGELIST, + pub uSplitStyle: u32, + pub size: super::super::Foundation::SIZE, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for COMBOBOXEXITEMA {} +impl ::core::marker::Copy for BUTTON_SPLITINFO {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for COMBOBOXEXITEMA { +impl ::core::clone::Clone for BUTTON_SPLITINFO { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for COMBOBOXEXITEMA { +impl ::core::fmt::Debug for BUTTON_SPLITINFO { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("COMBOBOXEXITEMA").field("mask", &self.mask).field("iItem", &self.iItem).field("pszText", &self.pszText).field("cchTextMax", &self.cchTextMax).field("iImage", &self.iImage).field("iSelectedImage", &self.iSelectedImage).field("iOverlay", &self.iOverlay).field("iIndent", &self.iIndent).field("lParam", &self.lParam).finish() + f.debug_struct("BUTTON_SPLITINFO").field("mask", &self.mask).field("himlGlyph", &self.himlGlyph).field("uSplitStyle", &self.uSplitStyle).field("size", &self.size).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for COMBOBOXEXITEMA { +unsafe impl ::windows::core::Abi for BUTTON_SPLITINFO { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for COMBOBOXEXITEMA { +impl ::core::cmp::PartialEq for BUTTON_SPLITINFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for COMBOBOXEXITEMA {} +impl ::core::cmp::Eq for BUTTON_SPLITINFO {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for COMBOBOXEXITEMA { +impl ::core::default::Default for BUTTON_SPLITINFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct COMBOBOXEXITEMW { - pub mask: COMBOBOX_EX_ITEM_FLAGS, - pub iItem: isize, - pub pszText: ::windows::core::PWSTR, - pub cchTextMax: i32, - pub iImage: i32, - pub iSelectedImage: i32, - pub iOverlay: i32, - pub iIndent: i32, - pub lParam: super::super::Foundation::LPARAM, +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[inline] +pub unsafe fn BeginBufferedAnimation<'a, P0, P1>(hwnd: P0, hdctarget: P1, prctarget: &super::super::Foundation::RECT, dwformat: BP_BUFFERFORMAT, ppaintparams: ::core::option::Option<&BP_PAINTPARAMS>, panimationparams: &BP_ANIMATIONPARAMS, phdcfrom: &mut super::super::Graphics::Gdi::HDC, phdcto: &mut super::super::Graphics::Gdi::HDC) -> isize +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn BeginBufferedAnimation(hwnd: super::super::Foundation::HWND, hdctarget: super::super::Graphics::Gdi::HDC, prctarget: *const super::super::Foundation::RECT, dwformat: BP_BUFFERFORMAT, ppaintparams: *const BP_PAINTPARAMS, panimationparams: *const BP_ANIMATIONPARAMS, phdcfrom: *mut super::super::Graphics::Gdi::HDC, phdcto: *mut super::super::Graphics::Gdi::HDC) -> isize; + } + BeginBufferedAnimation(hwnd.into(), hdctarget.into(), ::core::mem::transmute(prctarget), dwformat, ::core::mem::transmute(ppaintparams), ::core::mem::transmute(panimationparams), ::core::mem::transmute(phdcfrom), ::core::mem::transmute(phdcto)) } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for COMBOBOXEXITEMW {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for COMBOBOXEXITEMW { - fn clone(&self) -> Self { - *self +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[inline] +pub unsafe fn BeginBufferedPaint<'a, P0>(hdctarget: P0, prctarget: &super::super::Foundation::RECT, dwformat: BP_BUFFERFORMAT, ppaintparams: ::core::option::Option<&BP_PAINTPARAMS>, phdc: &mut super::super::Graphics::Gdi::HDC) -> isize +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn BeginBufferedPaint(hdctarget: super::super::Graphics::Gdi::HDC, prctarget: *const super::super::Foundation::RECT, dwformat: BP_BUFFERFORMAT, ppaintparams: *const BP_PAINTPARAMS, phdc: *mut super::super::Graphics::Gdi::HDC) -> isize; } + BeginBufferedPaint(hdctarget.into(), ::core::mem::transmute(prctarget), dwformat, ::core::mem::transmute(ppaintparams), ::core::mem::transmute(phdc)) } +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for COMBOBOXEXITEMW { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("COMBOBOXEXITEMW").field("mask", &self.mask).field("iItem", &self.iItem).field("pszText", &self.pszText).field("cchTextMax", &self.cchTextMax).field("iImage", &self.iImage).field("iSelectedImage", &self.iSelectedImage).field("iOverlay", &self.iOverlay).field("iIndent", &self.iIndent).field("lParam", &self.lParam).finish() +#[inline] +pub unsafe fn BeginPanningFeedback<'a, P0>(hwnd: P0) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn BeginPanningFeedback(hwnd: super::super::Foundation::HWND) -> super::super::Foundation::BOOL; } + BeginPanningFeedback(hwnd.into()) } +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for COMBOBOXEXITEMW { - type Abi = Self; +#[inline] +pub unsafe fn BufferedPaintClear(hbufferedpaint: isize, prc: ::core::option::Option<&super::super::Foundation::RECT>) -> ::windows::core::Result<()> { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn BufferedPaintClear(hbufferedpaint: isize, prc: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT; + } + BufferedPaintClear(hbufferedpaint, ::core::mem::transmute(prc)).ok() } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for COMBOBOXEXITEMW { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn BufferedPaintInit() -> ::windows::core::Result<()> { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn BufferedPaintInit() -> ::windows::core::HRESULT; } + BufferedPaintInit().ok() } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for COMBOBOXEXITEMW {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for COMBOBOXEXITEMW { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[inline] +pub unsafe fn BufferedPaintRenderAnimation<'a, P0, P1>(hwnd: P0, hdctarget: P1) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn BufferedPaintRenderAnimation(hwnd: super::super::Foundation::HWND, hdctarget: super::super::Graphics::Gdi::HDC) -> super::super::Foundation::BOOL; } + BufferedPaintRenderAnimation(hwnd.into(), hdctarget.into()) } -#[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct COMBOBOXINFO { - pub cbSize: u32, - pub rcItem: super::super::Foundation::RECT, - pub rcButton: super::super::Foundation::RECT, - pub stateButton: COMBOBOXINFO_BUTTON_STATE, - pub hwndCombo: super::super::Foundation::HWND, - pub hwndItem: super::super::Foundation::HWND, - pub hwndList: super::super::Foundation::HWND, +#[inline] +pub unsafe fn BufferedPaintSetAlpha(hbufferedpaint: isize, prc: ::core::option::Option<&super::super::Foundation::RECT>, alpha: u8) -> ::windows::core::Result<()> { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn BufferedPaintSetAlpha(hbufferedpaint: isize, prc: *const super::super::Foundation::RECT, alpha: u8) -> ::windows::core::HRESULT; + } + BufferedPaintSetAlpha(hbufferedpaint, ::core::mem::transmute(prc), alpha).ok() } +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for COMBOBOXINFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for COMBOBOXINFO { - fn clone(&self) -> Self { - *self +#[inline] +pub unsafe fn BufferedPaintStopAllAnimations<'a, P0>(hwnd: P0) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn BufferedPaintStopAllAnimations(hwnd: super::super::Foundation::HWND) -> ::windows::core::HRESULT; } + BufferedPaintStopAllAnimations(hwnd.into()).ok() } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for COMBOBOXINFO { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("COMBOBOXINFO").field("cbSize", &self.cbSize).field("rcItem", &self.rcItem).field("rcButton", &self.rcButton).field("stateButton", &self.stateButton).field("hwndCombo", &self.hwndCombo).field("hwndItem", &self.hwndItem).field("hwndList", &self.hwndList).finish() - } -} -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for COMBOBOXINFO { - type Abi = Self; -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for COMBOBOXINFO { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for COMBOBOXINFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for COMBOBOXINFO { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn BufferedPaintUnInit() -> ::windows::core::Result<()> { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn BufferedPaintUnInit() -> ::windows::core::HRESULT; } + BufferedPaintUnInit().ok() } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct COMBOBOXINFO_BUTTON_STATE(pub u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STATE_SYSTEM_INVISIBLE: COMBOBOXINFO_BUTTON_STATE = COMBOBOXINFO_BUTTON_STATE(32768u32); +pub struct CAPTIONSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STATE_SYSTEM_PRESSED: COMBOBOXINFO_BUTTON_STATE = COMBOBOXINFO_BUTTON_STATE(8u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STATE_SYSTEM_FOCUSABLE: COMBOBOXINFO_BUTTON_STATE = COMBOBOXINFO_BUTTON_STATE(1048576u32); +pub const CS_ACTIVE: CAPTIONSTATES = CAPTIONSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STATE_SYSTEM_OFFSCREEN: COMBOBOXINFO_BUTTON_STATE = COMBOBOXINFO_BUTTON_STATE(65536u32); +pub const CS_INACTIVE: CAPTIONSTATES = CAPTIONSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STATE_SYSTEM_UNAVAILABLE: COMBOBOXINFO_BUTTON_STATE = COMBOBOXINFO_BUTTON_STATE(1u32); -impl ::core::marker::Copy for COMBOBOXINFO_BUTTON_STATE {} -impl ::core::clone::Clone for COMBOBOXINFO_BUTTON_STATE { +pub const CS_DISABLED: CAPTIONSTATES = CAPTIONSTATES(3i32); +impl ::core::marker::Copy for CAPTIONSTATES {} +impl ::core::clone::Clone for CAPTIONSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for COMBOBOXINFO_BUTTON_STATE { +impl ::core::default::Default for CAPTIONSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for COMBOBOXINFO_BUTTON_STATE { +unsafe impl ::windows::core::Abi for CAPTIONSTATES { type Abi = Self; } -impl ::core::fmt::Debug for COMBOBOXINFO_BUTTON_STATE { +impl ::core::fmt::Debug for CAPTIONSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("COMBOBOXINFO_BUTTON_STATE").field(&self.0).finish() + f.debug_tuple("CAPTIONSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct COMBOBOX_EX_ITEM_FLAGS(pub u32); +pub const CBEMAXSTRLEN: u32 = 260u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEIF_DI_SETITEM: COMBOBOX_EX_ITEM_FLAGS = COMBOBOX_EX_ITEM_FLAGS(268435456u32); +pub const CBEM_GETCOMBOCONTROL: u32 = 1030u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEIF_IMAGE: COMBOBOX_EX_ITEM_FLAGS = COMBOBOX_EX_ITEM_FLAGS(2u32); +pub const CBEM_GETEDITCONTROL: u32 = 1031u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEIF_INDENT: COMBOBOX_EX_ITEM_FLAGS = COMBOBOX_EX_ITEM_FLAGS(16u32); +pub const CBEM_GETEXSTYLE: u32 = 1033u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEIF_LPARAM: COMBOBOX_EX_ITEM_FLAGS = COMBOBOX_EX_ITEM_FLAGS(32u32); +pub const CBEM_GETEXTENDEDSTYLE: u32 = 1033u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEIF_OVERLAY: COMBOBOX_EX_ITEM_FLAGS = COMBOBOX_EX_ITEM_FLAGS(8u32); +pub const CBEM_GETIMAGELIST: u32 = 1027u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEIF_SELECTEDIMAGE: COMBOBOX_EX_ITEM_FLAGS = COMBOBOX_EX_ITEM_FLAGS(4u32); +pub const CBEM_GETITEM: u32 = 1037u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CBEIF_TEXT: COMBOBOX_EX_ITEM_FLAGS = COMBOBOX_EX_ITEM_FLAGS(1u32); -impl ::core::marker::Copy for COMBOBOX_EX_ITEM_FLAGS {} -impl ::core::clone::Clone for COMBOBOX_EX_ITEM_FLAGS { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for COMBOBOX_EX_ITEM_FLAGS { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for COMBOBOX_EX_ITEM_FLAGS { - type Abi = Self; -} -impl ::core::fmt::Debug for COMBOBOX_EX_ITEM_FLAGS { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("COMBOBOX_EX_ITEM_FLAGS").field(&self.0).finish() - } -} -impl ::core::ops::BitOr for COMBOBOX_EX_ITEM_FLAGS { - type Output = Self; - fn bitor(self, other: Self) -> Self { - Self(self.0 | other.0) - } -} -impl ::core::ops::BitAnd for COMBOBOX_EX_ITEM_FLAGS { - type Output = Self; - fn bitand(self, other: Self) -> Self { - Self(self.0 & other.0) - } -} -impl ::core::ops::BitOrAssign for COMBOBOX_EX_ITEM_FLAGS { - fn bitor_assign(&mut self, other: Self) { - self.0.bitor_assign(other.0) - } -} -impl ::core::ops::BitAndAssign for COMBOBOX_EX_ITEM_FLAGS { - fn bitand_assign(&mut self, other: Self) { - self.0.bitand_assign(other.0) - } -} -impl ::core::ops::Not for COMBOBOX_EX_ITEM_FLAGS { - type Output = Self; - fn not(self) -> Self { - Self(self.0.not()) - } -} +pub const CBEM_GETITEMA: u32 = 1028u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const COMCTL32_VERSION: u32 = 6u32; +pub const CBEM_GETITEMW: u32 = 1037u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEM_GETUNICODEFORMAT: u32 = 8198u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEM_HASEDITCHANGED: u32 = 1034u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEM_INSERTITEM: u32 = 1035u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEM_INSERTITEMA: u32 = 1025u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEM_INSERTITEMW: u32 = 1035u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEM_SETEXSTYLE: u32 = 1032u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEM_SETEXTENDEDSTYLE: u32 = 1038u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEM_SETIMAGELIST: u32 = 1026u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEM_SETITEM: u32 = 1036u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEM_SETITEMA: u32 = 1029u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEM_SETITEMW: u32 = 1036u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEM_SETUNICODEFORMAT: u32 = 8197u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEM_SETWINDOWTHEME: u32 = 8203u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBENF_DROPDOWN: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBENF_ESCAPE: u32 = 3u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBENF_KILLFOCUS: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBENF_RETURN: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBES_EX_CASESENSITIVE: u32 = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBES_EX_NOEDITIMAGE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBES_EX_NOEDITIMAGEINDENT: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBES_EX_NOSIZELIMIT: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBES_EX_PATHWORDBREAKPROC: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBES_EX_TEXTENDELLIPSIS: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBM_FIRST: u32 = 5888u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CB_GETCUEBANNER: u32 = 5892u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CB_GETMINVISIBLE: u32 = 5890u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CB_SETCUEBANNER: u32 = 5891u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CB_SETMINVISIBLE: u32 = 5889u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCF_NOTEXT: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCHCCCLASS: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCHCCDESC: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCHCCTEXT: u32 = 256u32; #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct COMPAREITEMSTRUCT { - pub CtlType: u32, - pub CtlID: u32, - pub hwndItem: super::super::Foundation::HWND, - pub itemID1: u32, - pub itemData1: usize, - pub itemID2: u32, - pub itemData2: usize, - pub dwLocaleId: u32, +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +pub struct CCINFOA { + pub szClass: [super::super::Foundation::CHAR; 32], + pub flOptions: u32, + pub szDesc: [super::super::Foundation::CHAR; 32], + pub cxDefault: u32, + pub cyDefault: u32, + pub flStyleDefault: u32, + pub flExtStyleDefault: u32, + pub flCtrlTypeMask: u32, + pub szTextDefault: [super::super::Foundation::CHAR; 256], + pub cStyleFlags: i32, + pub aStyleFlags: *mut CCSTYLEFLAGA, + pub lpfnStyle: LPFNCCSTYLEA, + pub lpfnSizeToText: LPFNCCSIZETOTEXTA, + pub dwReserved1: u32, + pub dwReserved2: u32, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for COMPAREITEMSTRUCT {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for COMPAREITEMSTRUCT { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::marker::Copy for CCINFOA {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::clone::Clone for CCINFOA { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for COMPAREITEMSTRUCT { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::fmt::Debug for CCINFOA { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("COMPAREITEMSTRUCT").field("CtlType", &self.CtlType).field("CtlID", &self.CtlID).field("hwndItem", &self.hwndItem).field("itemID1", &self.itemID1).field("itemData1", &self.itemData1).field("itemID2", &self.itemID2).field("itemData2", &self.itemData2).field("dwLocaleId", &self.dwLocaleId).finish() + f.debug_struct("CCINFOA") + .field("szClass", &self.szClass) + .field("flOptions", &self.flOptions) + .field("szDesc", &self.szDesc) + .field("cxDefault", &self.cxDefault) + .field("cyDefault", &self.cyDefault) + .field("flStyleDefault", &self.flStyleDefault) + .field("flExtStyleDefault", &self.flExtStyleDefault) + .field("flCtrlTypeMask", &self.flCtrlTypeMask) + .field("szTextDefault", &self.szTextDefault) + .field("cStyleFlags", &self.cStyleFlags) + .field("aStyleFlags", &self.aStyleFlags) + .field("lpfnStyle", &self.lpfnStyle.map(|f| f as usize)) + .field("lpfnSizeToText", &self.lpfnSizeToText.map(|f| f as usize)) + .field("dwReserved1", &self.dwReserved1) + .field("dwReserved2", &self.dwReserved2) + .finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for COMPAREITEMSTRUCT { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +unsafe impl ::windows::core::Abi for CCINFOA { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for COMPAREITEMSTRUCT { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::PartialEq for CCINFOA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for COMPAREITEMSTRUCT {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for COMPAREITEMSTRUCT { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::Eq for CCINFOA {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::default::Default for CCINFOA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct CONTENTALIGNMENT(pub i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CA_LEFT: CONTENTALIGNMENT = CONTENTALIGNMENT(0i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CA_CENTER: CONTENTALIGNMENT = CONTENTALIGNMENT(1i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const CA_RIGHT: CONTENTALIGNMENT = CONTENTALIGNMENT(2i32); -impl ::core::marker::Copy for CONTENTALIGNMENT {} -impl ::core::clone::Clone for CONTENTALIGNMENT { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for CONTENTALIGNMENT { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for CONTENTALIGNMENT { - type Abi = Self; -} -impl ::core::fmt::Debug for CONTENTALIGNMENT { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("CONTENTALIGNMENT").field(&self.0).finish() - } -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn CheckDlgButton<'a, P0>(hdlg: P0, nidbutton: i32, ucheck: DLG_BUTTON_CHECK_STATE) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn CheckDlgButton(hdlg: super::super::Foundation::HWND, nidbutton: i32, ucheck: DLG_BUTTON_CHECK_STATE) -> super::super::Foundation::BOOL; - } - CheckDlgButton(hdlg.into(), nidbutton, ucheck) -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn CheckRadioButton<'a, P0>(hdlg: P0, nidfirstbutton: i32, nidlastbutton: i32, nidcheckbutton: i32) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn CheckRadioButton(hdlg: super::super::Foundation::HWND, nidfirstbutton: i32, nidlastbutton: i32, nidcheckbutton: i32) -> super::super::Foundation::BOOL; - } - CheckRadioButton(hdlg.into(), nidfirstbutton, nidlastbutton, nidcheckbutton) -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn CloseThemeData(htheme: isize) -> ::windows::core::Result<()> { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn CloseThemeData(htheme: isize) -> ::windows::core::HRESULT; - } - CloseThemeData(htheme).ok() -} +#[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -#[inline] -pub unsafe fn CreateMappedBitmap<'a, P0>(hinstance: P0, idbitmap: isize, wflags: u32, lpcolormap: ::core::option::Option<&COLORMAP>, inummaps: i32) -> ::windows::core::Result -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn CreateMappedBitmap(hinstance: super::super::Foundation::HINSTANCE, idbitmap: isize, wflags: u32, lpcolormap: *const COLORMAP, inummaps: i32) -> super::super::Graphics::Gdi::HBITMAP; - } - let result__ = CreateMappedBitmap(hinstance.into(), idbitmap, wflags, ::core::mem::transmute(lpcolormap), inummaps); - (!result__.is_invalid()).then(|| result__).ok_or_else(::windows::core::Error::from_win32) -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -#[inline] -pub unsafe fn CreatePropertySheetPageA(constpropsheetpagepointer: &mut PROPSHEETPAGEA) -> HPROPSHEETPAGE { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn CreatePropertySheetPageA(constpropsheetpagepointer: *mut PROPSHEETPAGEA) -> HPROPSHEETPAGE; - } - CreatePropertySheetPageA(::core::mem::transmute(constpropsheetpagepointer)) -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -#[inline] -pub unsafe fn CreatePropertySheetPageW(constpropsheetpagepointer: &mut PROPSHEETPAGEW) -> HPROPSHEETPAGE { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn CreatePropertySheetPageW(constpropsheetpagepointer: *mut PROPSHEETPAGEW) -> HPROPSHEETPAGE; - } - CreatePropertySheetPageW(::core::mem::transmute(constpropsheetpagepointer)) +pub struct CCINFOW { + pub szClass: [u16; 32], + pub flOptions: u32, + pub szDesc: [u16; 32], + pub cxDefault: u32, + pub cyDefault: u32, + pub flStyleDefault: u32, + pub flExtStyleDefault: u32, + pub flCtrlTypeMask: u32, + pub cStyleFlags: i32, + pub aStyleFlags: *mut CCSTYLEFLAGW, + pub szTextDefault: [u16; 256], + pub lpfnStyle: LPFNCCSTYLEW, + pub lpfnSizeToText: LPFNCCSIZETOTEXTW, + pub dwReserved1: u32, + pub dwReserved2: u32, } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn CreateStatusWindowA<'a, P0, P1>(style: i32, lpsztext: P0, hwndparent: P1, wid: u32) -> super::super::Foundation::HWND -where - P0: ::std::convert::Into<::windows::core::PCSTR>, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn CreateStatusWindowA(style: i32, lpsztext: ::windows::core::PCSTR, hwndparent: super::super::Foundation::HWND, wid: u32) -> super::super::Foundation::HWND; +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::marker::Copy for CCINFOW {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::clone::Clone for CCINFOW { + fn clone(&self) -> Self { + *self } - CreateStatusWindowA(style, lpsztext.into(), hwndparent.into(), wid) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn CreateStatusWindowW<'a, P0, P1>(style: i32, lpsztext: P0, hwndparent: P1, wid: u32) -> super::super::Foundation::HWND -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn CreateStatusWindowW(style: i32, lpsztext: ::windows::core::PCWSTR, hwndparent: super::super::Foundation::HWND, wid: u32) -> super::super::Foundation::HWND; +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::fmt::Debug for CCINFOW { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("CCINFOW") + .field("szClass", &self.szClass) + .field("flOptions", &self.flOptions) + .field("szDesc", &self.szDesc) + .field("cxDefault", &self.cxDefault) + .field("cyDefault", &self.cyDefault) + .field("flStyleDefault", &self.flStyleDefault) + .field("flExtStyleDefault", &self.flExtStyleDefault) + .field("flCtrlTypeMask", &self.flCtrlTypeMask) + .field("cStyleFlags", &self.cStyleFlags) + .field("aStyleFlags", &self.aStyleFlags) + .field("szTextDefault", &self.szTextDefault) + .field("lpfnStyle", &self.lpfnStyle.map(|f| f as usize)) + .field("lpfnSizeToText", &self.lpfnSizeToText.map(|f| f as usize)) + .field("dwReserved1", &self.dwReserved1) + .field("dwReserved2", &self.dwReserved2) + .finish() } - CreateStatusWindowW(style, lpsztext.into(), hwndparent.into(), wid) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(feature = "Win32_UI_WindowsAndMessaging")] -#[inline] -pub unsafe fn CreateSyntheticPointerDevice(pointertype: super::WindowsAndMessaging::POINTER_INPUT_TYPE, maxcount: u32, mode: POINTER_FEEDBACK_MODE) -> ::windows::core::Result { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn CreateSyntheticPointerDevice(pointertype: super::WindowsAndMessaging::POINTER_INPUT_TYPE, maxcount: u32, mode: POINTER_FEEDBACK_MODE) -> HSYNTHETICPOINTERDEVICE; - } - let result__ = CreateSyntheticPointerDevice(pointertype, maxcount, mode); - (!result__.is_invalid()).then(|| result__).ok_or_else(::windows::core::Error::from_win32) +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +unsafe impl ::windows::core::Abi for CCINFOW { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn CreateToolbarEx<'a, P0, P1>(hwnd: P0, ws: u32, wid: u32, nbitmaps: i32, hbminst: P1, wbmid: usize, lpbuttons: &mut TBBUTTON, inumbuttons: i32, dxbutton: i32, dybutton: i32, dxbitmap: i32, dybitmap: i32, ustructsize: u32) -> super::super::Foundation::HWND -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn CreateToolbarEx(hwnd: super::super::Foundation::HWND, ws: u32, wid: u32, nbitmaps: i32, hbminst: super::super::Foundation::HINSTANCE, wbmid: usize, lpbuttons: *mut TBBUTTON, inumbuttons: i32, dxbutton: i32, dybutton: i32, dxbitmap: i32, dybitmap: i32, ustructsize: u32) -> super::super::Foundation::HWND; +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::PartialEq for CCINFOW { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - CreateToolbarEx(hwnd.into(), ws, wid, nbitmaps, hbminst.into(), wbmid, ::core::mem::transmute(lpbuttons), inumbuttons, dxbutton, dybutton, dxbitmap, dybitmap, ustructsize) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn CreateUpDownControl<'a, P0, P1, P2>(dwstyle: u32, x: i32, y: i32, cx: i32, cy: i32, hparent: P0, nid: i32, hinst: P1, hbuddy: P2, nupper: i32, nlower: i32, npos: i32) -> super::super::Foundation::HWND -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, - P2: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn CreateUpDownControl(dwstyle: u32, x: i32, y: i32, cx: i32, cy: i32, hparent: super::super::Foundation::HWND, nid: i32, hinst: super::super::Foundation::HINSTANCE, hbuddy: super::super::Foundation::HWND, nupper: i32, nlower: i32, npos: i32) -> super::super::Foundation::HWND; +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::Eq for CCINFOW {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::default::Default for CCINFOW { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - CreateUpDownControl(dwstyle, x, y, cx, cy, hparent.into(), nid, hinst.into(), hbuddy.into(), nupper, nlower, npos) } +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCM_DPISCALE: u32 = 8204u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCM_FIRST: u32 = 8192u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCM_GETCOLORSCHEME: u32 = 8195u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCM_GETDROPTARGET: u32 = 8196u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCM_GETUNICODEFORMAT: u32 = 8198u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCM_GETVERSION: u32 = 8200u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCM_LAST: u32 = 8704u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCM_SETBKCOLOR: u32 = 8193u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCM_SETCOLORSCHEME: u32 = 8194u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCM_SETNOTIFYWINDOW: u32 = 8201u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCM_SETUNICODEFORMAT: u32 = 8197u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCM_SETVERSION: u32 = 8199u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCM_SETWINDOWTHEME: u32 = 8203u32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct DATETIMEPICKERINFO { - pub cbSize: u32, - pub rcCheck: super::super::Foundation::RECT, - pub stateCheck: u32, - pub rcButton: super::super::Foundation::RECT, - pub stateButton: u32, - pub hwndEdit: super::super::Foundation::HWND, - pub hwndUD: super::super::Foundation::HWND, - pub hwndDropDown: super::super::Foundation::HWND, +pub struct CCSTYLEA { + pub flStyle: u32, + pub flExtStyle: u32, + pub szText: [super::super::Foundation::CHAR; 256], + pub lgid: u16, + pub wReserved1: u16, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for DATETIMEPICKERINFO {} +impl ::core::marker::Copy for CCSTYLEA {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for DATETIMEPICKERINFO { +impl ::core::clone::Clone for CCSTYLEA { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for DATETIMEPICKERINFO { +impl ::core::fmt::Debug for CCSTYLEA { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("DATETIMEPICKERINFO").field("cbSize", &self.cbSize).field("rcCheck", &self.rcCheck).field("stateCheck", &self.stateCheck).field("rcButton", &self.rcButton).field("stateButton", &self.stateButton).field("hwndEdit", &self.hwndEdit).field("hwndUD", &self.hwndUD).field("hwndDropDown", &self.hwndDropDown).finish() + f.debug_struct("CCSTYLEA").field("flStyle", &self.flStyle).field("flExtStyle", &self.flExtStyle).field("szText", &self.szText).field("lgid", &self.lgid).field("wReserved1", &self.wReserved1).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for DATETIMEPICKERINFO { +unsafe impl ::windows::core::Abi for CCSTYLEA { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for DATETIMEPICKERINFO { +impl ::core::cmp::PartialEq for CCSTYLEA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for DATETIMEPICKERINFO {} +impl ::core::cmp::Eq for CCSTYLEA {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for DATETIMEPICKERINFO { +impl ::core::default::Default for CCSTYLEA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DATETIMEPICK_CLASS: &str = "SysDateTimePick32"; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DATETIMEPICK_CLASSA: &str = "SysDateTimePick32"; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DATETIMEPICK_CLASSW: &str = "SysDateTimePick32"; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DA_ERR: i32 = -1i32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DA_LAST: u32 = 2147483647u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct DELETEITEMSTRUCT { - pub CtlType: DRAWITEMSTRUCT_CTL_TYPE, - pub CtlID: u32, - pub itemID: u32, - pub hwndItem: super::super::Foundation::HWND, - pub itemData: usize, +pub struct CCSTYLEFLAGA { + pub flStyle: u32, + pub flStyleMask: u32, + pub pszStyle: ::windows::core::PSTR, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for DELETEITEMSTRUCT {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for DELETEITEMSTRUCT { +impl ::core::marker::Copy for CCSTYLEFLAGA {} +impl ::core::clone::Clone for CCSTYLEFLAGA { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for DELETEITEMSTRUCT { +impl ::core::fmt::Debug for CCSTYLEFLAGA { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("DELETEITEMSTRUCT").field("CtlType", &self.CtlType).field("CtlID", &self.CtlID).field("itemID", &self.itemID).field("hwndItem", &self.hwndItem).field("itemData", &self.itemData).finish() + f.debug_struct("CCSTYLEFLAGA").field("flStyle", &self.flStyle).field("flStyleMask", &self.flStyleMask).field("pszStyle", &self.pszStyle).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for DELETEITEMSTRUCT { +unsafe impl ::windows::core::Abi for CCSTYLEFLAGA { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for DELETEITEMSTRUCT { +impl ::core::cmp::PartialEq for CCSTYLEFLAGA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for DELETEITEMSTRUCT {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for DELETEITEMSTRUCT { +impl ::core::cmp::Eq for CCSTYLEFLAGA {} +impl ::core::default::Default for CCSTYLEFLAGA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } +#[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct DLG_BUTTON_CHECK_STATE(pub u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BST_CHECKED: DLG_BUTTON_CHECK_STATE = DLG_BUTTON_CHECK_STATE(1u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BST_INDETERMINATE: DLG_BUTTON_CHECK_STATE = DLG_BUTTON_CHECK_STATE(2u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const BST_UNCHECKED: DLG_BUTTON_CHECK_STATE = DLG_BUTTON_CHECK_STATE(0u32); -impl ::core::marker::Copy for DLG_BUTTON_CHECK_STATE {} -impl ::core::clone::Clone for DLG_BUTTON_CHECK_STATE { +pub struct CCSTYLEFLAGW { + pub flStyle: u32, + pub flStyleMask: u32, + pub pszStyle: ::windows::core::PWSTR, +} +impl ::core::marker::Copy for CCSTYLEFLAGW {} +impl ::core::clone::Clone for CCSTYLEFLAGW { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for DLG_BUTTON_CHECK_STATE { - fn default() -> Self { - Self(0) +impl ::core::fmt::Debug for CCSTYLEFLAGW { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("CCSTYLEFLAGW").field("flStyle", &self.flStyle).field("flStyleMask", &self.flStyleMask).field("pszStyle", &self.pszStyle).finish() } } -unsafe impl ::windows::core::Abi for DLG_BUTTON_CHECK_STATE { +unsafe impl ::windows::core::Abi for CCSTYLEFLAGW { type Abi = Self; } -impl ::core::fmt::Debug for DLG_BUTTON_CHECK_STATE { +impl ::core::cmp::PartialEq for CCSTYLEFLAGW { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for CCSTYLEFLAGW {} +impl ::core::default::Default for CCSTYLEFLAGW { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub struct CCSTYLEW { + pub flStyle: u32, + pub flExtStyle: u32, + pub szText: [u16; 256], + pub lgid: u16, + pub wReserved1: u16, +} +impl ::core::marker::Copy for CCSTYLEW {} +impl ::core::clone::Clone for CCSTYLEW { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for CCSTYLEW { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("DLG_BUTTON_CHECK_STATE").field(&self.0).finish() + f.debug_struct("CCSTYLEW").field("flStyle", &self.flStyle).field("flExtStyle", &self.flExtStyle).field("szText", &self.szText).field("lgid", &self.lgid).field("wReserved1", &self.wReserved1).finish() + } +} +unsafe impl ::windows::core::Abi for CCSTYLEW { + type Abi = Self; +} +impl ::core::cmp::PartialEq for CCSTYLEW { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for CCSTYLEW {} +impl ::core::default::Default for CCSTYLEW { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCS_ADJUSTABLE: i32 = 32i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCS_BOTTOM: i32 = 3i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCS_NODIVIDER: i32 = 64i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCS_NOMOVEY: i32 = 2i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCS_NOPARENTALIGN: i32 = 8i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCS_NORESIZE: i32 = 4i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCS_TOP: i32 = 1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CCS_VERT: i32 = 128i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDDS_ITEM: u32 = 65536u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDDS_POSTERASE: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDIS_CHECKED: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDIS_DEFAULT: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDIS_DISABLED: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDIS_DROPHILITED: u32 = 4096u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDIS_FOCUS: u32 = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDIS_GRAYED: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDIS_HOT: u32 = 64u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDIS_INDETERMINATE: u32 = 256u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDIS_MARKED: u32 = 128u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDIS_NEARHOT: u32 = 1024u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDIS_OTHERSIDEHOT: u32 = 2048u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDIS_SELECTED: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDIS_SHOWKEYBOARDCUES: u32 = 512u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDRF_DODEFAULT: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDRF_DOERASE: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDRF_NEWFONT: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDRF_NOTIFYITEMDRAW: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDRF_NOTIFYPOSTERASE: u32 = 64u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDRF_NOTIFYPOSTPAINT: u32 = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDRF_NOTIFYSUBITEMDRAW: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDRF_SKIPDEFAULT: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CDRF_SKIPPOSTPAINT: u32 = 256u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct DLG_DIR_LIST_FILE_TYPE(pub u32); +pub struct CHECKBOXSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DDL_ARCHIVE: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(32u32); +pub const CBS_UNCHECKEDNORMAL: CHECKBOXSTATES = CHECKBOXSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DDL_DIRECTORY: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(16u32); +pub const CBS_UNCHECKEDHOT: CHECKBOXSTATES = CHECKBOXSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DDL_DRIVES: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(16384u32); +pub const CBS_UNCHECKEDPRESSED: CHECKBOXSTATES = CHECKBOXSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DDL_EXCLUSIVE: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(32768u32); +pub const CBS_UNCHECKEDDISABLED: CHECKBOXSTATES = CHECKBOXSTATES(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DDL_HIDDEN: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(2u32); +pub const CBS_CHECKEDNORMAL: CHECKBOXSTATES = CHECKBOXSTATES(5i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DDL_READONLY: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(1u32); +pub const CBS_CHECKEDHOT: CHECKBOXSTATES = CHECKBOXSTATES(6i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DDL_READWRITE: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(0u32); +pub const CBS_CHECKEDPRESSED: CHECKBOXSTATES = CHECKBOXSTATES(7i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DDL_SYSTEM: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(4u32); +pub const CBS_CHECKEDDISABLED: CHECKBOXSTATES = CHECKBOXSTATES(8i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DDL_POSTMSGS: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(8192u32); -impl ::core::marker::Copy for DLG_DIR_LIST_FILE_TYPE {} -impl ::core::clone::Clone for DLG_DIR_LIST_FILE_TYPE { +pub const CBS_MIXEDNORMAL: CHECKBOXSTATES = CHECKBOXSTATES(9i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_MIXEDHOT: CHECKBOXSTATES = CHECKBOXSTATES(10i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_MIXEDPRESSED: CHECKBOXSTATES = CHECKBOXSTATES(11i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_MIXEDDISABLED: CHECKBOXSTATES = CHECKBOXSTATES(12i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_IMPLICITNORMAL: CHECKBOXSTATES = CHECKBOXSTATES(13i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_IMPLICITHOT: CHECKBOXSTATES = CHECKBOXSTATES(14i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_IMPLICITPRESSED: CHECKBOXSTATES = CHECKBOXSTATES(15i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_IMPLICITDISABLED: CHECKBOXSTATES = CHECKBOXSTATES(16i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_EXCLUDEDNORMAL: CHECKBOXSTATES = CHECKBOXSTATES(17i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_EXCLUDEDHOT: CHECKBOXSTATES = CHECKBOXSTATES(18i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_EXCLUDEDPRESSED: CHECKBOXSTATES = CHECKBOXSTATES(19i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBS_EXCLUDEDDISABLED: CHECKBOXSTATES = CHECKBOXSTATES(20i32); +impl ::core::marker::Copy for CHECKBOXSTATES {} +impl ::core::clone::Clone for CHECKBOXSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for DLG_DIR_LIST_FILE_TYPE { +impl ::core::default::Default for CHECKBOXSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for DLG_DIR_LIST_FILE_TYPE { +unsafe impl ::windows::core::Abi for CHECKBOXSTATES { type Abi = Self; } -impl ::core::fmt::Debug for DLG_DIR_LIST_FILE_TYPE { +impl ::core::fmt::Debug for CHECKBOXSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("DLG_DIR_LIST_FILE_TYPE").field(&self.0).finish() - } -} -impl ::core::ops::BitOr for DLG_DIR_LIST_FILE_TYPE { - type Output = Self; - fn bitor(self, other: Self) -> Self { - Self(self.0 | other.0) + f.debug_tuple("CHECKBOXSTATES").field(&self.0).finish() } } -impl ::core::ops::BitAnd for DLG_DIR_LIST_FILE_TYPE { - type Output = Self; - fn bitand(self, other: Self) -> Self { - Self(self.0 & other.0) +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CHEVRONSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CHEVS_NORMAL: CHEVRONSTATES = CHEVRONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CHEVS_HOT: CHEVRONSTATES = CHEVRONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CHEVS_PRESSED: CHEVRONSTATES = CHEVRONSTATES(3i32); +impl ::core::marker::Copy for CHEVRONSTATES {} +impl ::core::clone::Clone for CHEVRONSTATES { + fn clone(&self) -> Self { + *self } } -impl ::core::ops::BitOrAssign for DLG_DIR_LIST_FILE_TYPE { - fn bitor_assign(&mut self, other: Self) { - self.0.bitor_assign(other.0) +impl ::core::default::Default for CHEVRONSTATES { + fn default() -> Self { + Self(0) } } -impl ::core::ops::BitAndAssign for DLG_DIR_LIST_FILE_TYPE { - fn bitand_assign(&mut self, other: Self) { - self.0.bitand_assign(other.0) - } +unsafe impl ::windows::core::Abi for CHEVRONSTATES { + type Abi = Self; } -impl ::core::ops::Not for DLG_DIR_LIST_FILE_TYPE { - type Output = Self; - fn not(self) -> Self { - Self(self.0.not()) +impl ::core::fmt::Debug for CHEVRONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CHEVRONSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DL_COPYCURSOR: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DL_CURSORSET: u32 = 0u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DL_MOVECURSOR: u32 = 3u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DL_STOPCURSOR: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct DPAMM_MESSAGE(pub u32); +pub struct CHEVRONVERTSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DPAMM_MERGE: DPAMM_MESSAGE = DPAMM_MESSAGE(1u32); +pub const CHEVSV_NORMAL: CHEVRONVERTSTATES = CHEVRONVERTSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DPAMM_DELETE: DPAMM_MESSAGE = DPAMM_MESSAGE(2u32); +pub const CHEVSV_HOT: CHEVRONVERTSTATES = CHEVRONVERTSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DPAMM_INSERT: DPAMM_MESSAGE = DPAMM_MESSAGE(3u32); -impl ::core::marker::Copy for DPAMM_MESSAGE {} -impl ::core::clone::Clone for DPAMM_MESSAGE { +pub const CHEVSV_PRESSED: CHEVRONVERTSTATES = CHEVRONVERTSTATES(3i32); +impl ::core::marker::Copy for CHEVRONVERTSTATES {} +impl ::core::clone::Clone for CHEVRONVERTSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for DPAMM_MESSAGE { +impl ::core::default::Default for CHEVRONVERTSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for DPAMM_MESSAGE { +unsafe impl ::windows::core::Abi for CHEVRONVERTSTATES { type Abi = Self; } -impl ::core::fmt::Debug for DPAMM_MESSAGE { +impl ::core::fmt::Debug for CHEVRONVERTSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("DPAMM_MESSAGE").field(&self.0).finish() + f.debug_tuple("CHEVRONVERTSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DPAM_INTERSECT: u32 = 8u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DPAM_NORMAL: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DPAM_SORTED: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DPAM_UNION: u32 = 4u32; -#[repr(C)] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CLOCKPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub struct DPASTREAMINFO { - pub iPos: i32, - pub pvItem: *mut ::core::ffi::c_void, -} -impl ::core::marker::Copy for DPASTREAMINFO {} -impl ::core::clone::Clone for DPASTREAMINFO { +pub const CLP_TIME: CLOCKPARTS = CLOCKPARTS(1i32); +impl ::core::marker::Copy for CLOCKPARTS {} +impl ::core::clone::Clone for CLOCKPARTS { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for DPASTREAMINFO { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("DPASTREAMINFO").field("iPos", &self.iPos).field("pvItem", &self.pvItem).finish() +impl ::core::default::Default for CLOCKPARTS { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for DPASTREAMINFO { +unsafe impl ::windows::core::Abi for CLOCKPARTS { type Abi = Self; } -impl ::core::cmp::PartialEq for DPASTREAMINFO { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::fmt::Debug for CLOCKPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CLOCKPARTS").field(&self.0).finish() } } -impl ::core::cmp::Eq for DPASTREAMINFO {} -impl ::core::default::Default for DPASTREAMINFO { +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CLOCKSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CLS_NORMAL: CLOCKSTATES = CLOCKSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CLS_HOT: CLOCKSTATES = CLOCKSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CLS_PRESSED: CLOCKSTATES = CLOCKSTATES(3i32); +impl ::core::marker::Copy for CLOCKSTATES {} +impl ::core::clone::Clone for CLOCKSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for CLOCKSTATES { fn default() -> Self { - unsafe { ::core::mem::zeroed() } + Self(0) + } +} +unsafe impl ::windows::core::Abi for CLOCKSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for CLOCKSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CLOCKSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DPAS_INSERTAFTER: u32 = 4u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CLOSEBUTTONSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DPAS_INSERTBEFORE: u32 = 2u32; +pub const CBS_NORMAL: CLOSEBUTTONSTATES = CLOSEBUTTONSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DPAS_SORTED: u32 = 1u32; +pub const CBS_HOT: CLOSEBUTTONSTATES = CLOSEBUTTONSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DPA_APPEND: u32 = 2147483647u32; +pub const CBS_PUSHED: CLOSEBUTTONSTATES = CLOSEBUTTONSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DPA_Clone<'a, P0, P1>(hdpa: P0, hdpanew: P1) -> HDPA -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_Clone(hdpa: HDPA, hdpanew: HDPA) -> HDPA; +pub const CBS_DISABLED: CLOSEBUTTONSTATES = CLOSEBUTTONSTATES(4i32); +impl ::core::marker::Copy for CLOSEBUTTONSTATES {} +impl ::core::clone::Clone for CLOSEBUTTONSTATES { + fn clone(&self) -> Self { + *self } - DPA_Clone(hdpa.into(), hdpanew.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DPA_Create(citemgrow: i32) -> HDPA { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_Create(citemgrow: i32) -> HDPA; +impl ::core::default::Default for CLOSEBUTTONSTATES { + fn default() -> Self { + Self(0) } - DPA_Create(citemgrow) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DPA_CreateEx<'a, P0>(cpgrow: i32, hheap: P0) -> HDPA -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_CreateEx(cpgrow: i32, hheap: super::super::Foundation::HANDLE) -> HDPA; - } - DPA_CreateEx(cpgrow, hheap.into()) +unsafe impl ::windows::core::Abi for CLOSEBUTTONSTATES { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DPA_DeleteAllPtrs<'a, P0>(hdpa: P0) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_DeleteAllPtrs(hdpa: HDPA) -> super::super::Foundation::BOOL; +impl ::core::fmt::Debug for CLOSEBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CLOSEBUTTONSTATES").field(&self.0).finish() } - DPA_DeleteAllPtrs(hdpa.into()) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DPA_DeletePtr<'a, P0>(hdpa: P0, i: i32) -> *mut ::core::ffi::c_void -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_DeletePtr(hdpa: HDPA, i: i32) -> *mut ::core::ffi::c_void; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CLOSESTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTCS_NORMAL: CLOSESTATES = CLOSESTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTCS_HOT: CLOSESTATES = CLOSESTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTCS_PRESSED: CLOSESTATES = CLOSESTATES(3i32); +impl ::core::marker::Copy for CLOSESTATES {} +impl ::core::clone::Clone for CLOSESTATES { + fn clone(&self) -> Self { + *self } - DPA_DeletePtr(hdpa.into(), i) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DPA_Destroy<'a, P0>(hdpa: P0) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_Destroy(hdpa: HDPA) -> super::super::Foundation::BOOL; +impl ::core::default::Default for CLOSESTATES { + fn default() -> Self { + Self(0) } - DPA_Destroy(hdpa.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DPA_DestroyCallback<'a, P0>(hdpa: P0, pfncb: PFNDAENUMCALLBACK, pdata: *const ::core::ffi::c_void) -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_DestroyCallback(hdpa: HDPA, pfncb: *mut ::core::ffi::c_void, pdata: *const ::core::ffi::c_void); +unsafe impl ::windows::core::Abi for CLOSESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for CLOSESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CLOSESTATES").field(&self.0).finish() } - DPA_DestroyCallback(hdpa.into(), ::core::mem::transmute(pfncb), ::core::mem::transmute(pdata)) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DPA_ERR: i32 = -1i32; +pub const CLR_DEFAULT: i32 = -16777216i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DPA_EnumCallback<'a, P0>(hdpa: P0, pfncb: PFNDAENUMCALLBACK, pdata: *const ::core::ffi::c_void) -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_EnumCallback(hdpa: HDPA, pfncb: *mut ::core::ffi::c_void, pdata: *const ::core::ffi::c_void); - } - DPA_EnumCallback(hdpa.into(), ::core::mem::transmute(pfncb), ::core::mem::transmute(pdata)) -} +pub const CLR_HILIGHT: i32 = -16777216i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DPA_GetPtr<'a, P0>(hdpa: P0, i: isize) -> *mut ::core::ffi::c_void -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_GetPtr(hdpa: HDPA, i: isize) -> *mut ::core::ffi::c_void; +pub const CLR_NONE: i32 = -1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMB_MASKED: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct COLLAPSEBUTTONSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVCB_NORMAL: COLLAPSEBUTTONSTATES = COLLAPSEBUTTONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVCB_HOVER: COLLAPSEBUTTONSTATES = COLLAPSEBUTTONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVCB_PUSHED: COLLAPSEBUTTONSTATES = COLLAPSEBUTTONSTATES(3i32); +impl ::core::marker::Copy for COLLAPSEBUTTONSTATES {} +impl ::core::clone::Clone for COLLAPSEBUTTONSTATES { + fn clone(&self) -> Self { + *self } - DPA_GetPtr(hdpa.into(), i) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DPA_GetPtrIndex<'a, P0>(hdpa: P0, p: *const ::core::ffi::c_void) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_GetPtrIndex(hdpa: HDPA, p: *const ::core::ffi::c_void) -> i32; +impl ::core::default::Default for COLLAPSEBUTTONSTATES { + fn default() -> Self { + Self(0) } - DPA_GetPtrIndex(hdpa.into(), ::core::mem::transmute(p)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DPA_GetSize<'a, P0>(hdpa: P0) -> u64 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_GetSize(hdpa: HDPA) -> u64; +unsafe impl ::windows::core::Abi for COLLAPSEBUTTONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for COLLAPSEBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("COLLAPSEBUTTONSTATES").field(&self.0).finish() } - DPA_GetSize(hdpa.into()) } +#[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DPA_Grow<'a, P0>(pdpa: P0, cp: i32) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_Grow(pdpa: HDPA, cp: i32) -> super::super::Foundation::BOOL; +pub struct COLORMAP { + pub from: super::super::Foundation::COLORREF, + pub to: super::super::Foundation::COLORREF, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for COLORMAP {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for COLORMAP { + fn clone(&self) -> Self { + *self } - DPA_Grow(pdpa.into(), cp) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DPA_InsertPtr<'a, P0>(hdpa: P0, i: i32, p: *const ::core::ffi::c_void) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_InsertPtr(hdpa: HDPA, i: i32, p: *const ::core::ffi::c_void) -> i32; +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for COLORMAP { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("COLORMAP").field("from", &self.from).field("to", &self.to).finish() } - DPA_InsertPtr(hdpa.into(), i, ::core::mem::transmute(p)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_System_Com\"`*"] -#[cfg(feature = "Win32_System_Com")] -#[inline] -pub unsafe fn DPA_LoadStream<'a, P0>(phdpa: &mut HDPA, pfn: PFNDPASTREAM, pstream: P0, pvinstdata: *const ::core::ffi::c_void) -> ::windows::core::Result<()> -where - P0: ::std::convert::Into<::windows::core::InParam<'a, super::super::System::Com::IStream>>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_LoadStream(phdpa: *mut HDPA, pfn: *mut ::core::ffi::c_void, pstream: *mut ::core::ffi::c_void, pvinstdata: *const ::core::ffi::c_void) -> ::windows::core::HRESULT; - } - DPA_LoadStream(::core::mem::transmute(phdpa), ::core::mem::transmute(pfn), pstream.into().abi(), ::core::mem::transmute(pvinstdata)).ok() +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for COLORMAP { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DPA_Merge<'a, P0, P1, P2>(hdpadest: P0, hdpasrc: P1, dwflags: u32, pfncompare: PFNDACOMPARE, pfnmerge: PFNDPAMERGE, lparam: P2) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, - P2: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_Merge(hdpadest: HDPA, hdpasrc: HDPA, dwflags: u32, pfncompare: *mut ::core::ffi::c_void, pfnmerge: *mut ::core::ffi::c_void, lparam: super::super::Foundation::LPARAM) -> super::super::Foundation::BOOL; +impl ::core::cmp::PartialEq for COLORMAP { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - DPA_Merge(hdpadest.into(), hdpasrc.into(), dwflags, ::core::mem::transmute(pfncompare), ::core::mem::transmute(pfnmerge), lparam.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_System_Com\"`*"] -#[cfg(feature = "Win32_System_Com")] -#[inline] -pub unsafe fn DPA_SaveStream<'a, P0, P1>(hdpa: P0, pfn: PFNDPASTREAM, pstream: P1, pvinstdata: *const ::core::ffi::c_void) -> ::windows::core::Result<()> -where - P0: ::std::convert::Into, - P1: ::std::convert::Into<::windows::core::InParam<'a, super::super::System::Com::IStream>>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_SaveStream(hdpa: HDPA, pfn: *mut ::core::ffi::c_void, pstream: *mut ::core::ffi::c_void, pvinstdata: *const ::core::ffi::c_void) -> ::windows::core::HRESULT; +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for COLORMAP {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for COLORMAP { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - DPA_SaveStream(hdpa.into(), ::core::mem::transmute(pfn), pstream.into().abi(), ::core::mem::transmute(pvinstdata)).ok() } +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const COLORMGMTDLGORD: u32 = 1551u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DPA_Search<'a, P0, P1>(hdpa: P0, pfind: *const ::core::ffi::c_void, istart: i32, pfncompare: PFNDACOMPARE, lparam: P1, options: u32) -> i32 -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_Search(hdpa: HDPA, pfind: *const ::core::ffi::c_void, istart: i32, pfncompare: *mut ::core::ffi::c_void, lparam: super::super::Foundation::LPARAM, options: u32) -> i32; +pub struct COLORSCHEME { + pub dwSize: u32, + pub clrBtnHighlight: super::super::Foundation::COLORREF, + pub clrBtnShadow: super::super::Foundation::COLORREF, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for COLORSCHEME {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for COLORSCHEME { + fn clone(&self) -> Self { + *self } - DPA_Search(hdpa.into(), ::core::mem::transmute(pfind), istart, ::core::mem::transmute(pfncompare), lparam.into(), options) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DPA_SetPtr<'a, P0>(hdpa: P0, i: i32, p: *const ::core::ffi::c_void) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_SetPtr(hdpa: HDPA, i: i32, p: *const ::core::ffi::c_void) -> super::super::Foundation::BOOL; +impl ::core::fmt::Debug for COLORSCHEME { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("COLORSCHEME").field("dwSize", &self.dwSize).field("clrBtnHighlight", &self.clrBtnHighlight).field("clrBtnShadow", &self.clrBtnShadow).finish() } - DPA_SetPtr(hdpa.into(), i, ::core::mem::transmute(p)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DPA_Sort<'a, P0, P1>(hdpa: P0, pfncompare: PFNDACOMPARE, lparam: P1) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DPA_Sort(hdpa: HDPA, pfncompare: *mut ::core::ffi::c_void, lparam: super::super::Foundation::LPARAM) -> super::super::Foundation::BOOL; +unsafe impl ::windows::core::Abi for COLORSCHEME { + type Abi = Self; +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for COLORSCHEME { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for COLORSCHEME {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for COLORSCHEME { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - DPA_Sort(hdpa.into(), ::core::mem::transmute(pfncompare), lparam.into()) } #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct DRAGLISTINFO { - pub uNotification: DRAGLISTINFO_NOTIFICATION_FLAGS, - pub hWnd: super::super::Foundation::HWND, - pub ptCursor: super::super::Foundation::POINT, +pub struct COMBOBOXEXITEMA { + pub mask: COMBOBOX_EX_ITEM_FLAGS, + pub iItem: isize, + pub pszText: ::windows::core::PSTR, + pub cchTextMax: i32, + pub iImage: i32, + pub iSelectedImage: i32, + pub iOverlay: i32, + pub iIndent: i32, + pub lParam: super::super::Foundation::LPARAM, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for DRAGLISTINFO {} +impl ::core::marker::Copy for COMBOBOXEXITEMA {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for DRAGLISTINFO { +impl ::core::clone::Clone for COMBOBOXEXITEMA { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for DRAGLISTINFO { +impl ::core::fmt::Debug for COMBOBOXEXITEMA { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("DRAGLISTINFO").field("uNotification", &self.uNotification).field("hWnd", &self.hWnd).field("ptCursor", &self.ptCursor).finish() + f.debug_struct("COMBOBOXEXITEMA").field("mask", &self.mask).field("iItem", &self.iItem).field("pszText", &self.pszText).field("cchTextMax", &self.cchTextMax).field("iImage", &self.iImage).field("iSelectedImage", &self.iSelectedImage).field("iOverlay", &self.iOverlay).field("iIndent", &self.iIndent).field("lParam", &self.lParam).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for DRAGLISTINFO { +unsafe impl ::windows::core::Abi for COMBOBOXEXITEMA { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for DRAGLISTINFO { +impl ::core::cmp::PartialEq for COMBOBOXEXITEMA { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for DRAGLISTINFO {} +impl ::core::cmp::Eq for COMBOBOXEXITEMA {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for DRAGLISTINFO { +impl ::core::default::Default for COMBOBOXEXITEMA { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct DRAGLISTINFO_NOTIFICATION_FLAGS(pub u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DL_BEGINDRAG: DRAGLISTINFO_NOTIFICATION_FLAGS = DRAGLISTINFO_NOTIFICATION_FLAGS(1157u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DL_CANCELDRAG: DRAGLISTINFO_NOTIFICATION_FLAGS = DRAGLISTINFO_NOTIFICATION_FLAGS(1160u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DL_DRAGGING: DRAGLISTINFO_NOTIFICATION_FLAGS = DRAGLISTINFO_NOTIFICATION_FLAGS(1158u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DL_DROPPED: DRAGLISTINFO_NOTIFICATION_FLAGS = DRAGLISTINFO_NOTIFICATION_FLAGS(1159u32); -impl ::core::marker::Copy for DRAGLISTINFO_NOTIFICATION_FLAGS {} -impl ::core::clone::Clone for DRAGLISTINFO_NOTIFICATION_FLAGS { +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct COMBOBOXEXITEMW { + pub mask: COMBOBOX_EX_ITEM_FLAGS, + pub iItem: isize, + pub pszText: ::windows::core::PWSTR, + pub cchTextMax: i32, + pub iImage: i32, + pub iSelectedImage: i32, + pub iOverlay: i32, + pub iIndent: i32, + pub lParam: super::super::Foundation::LPARAM, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for COMBOBOXEXITEMW {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for COMBOBOXEXITEMW { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for DRAGLISTINFO_NOTIFICATION_FLAGS { - fn default() -> Self { - Self(0) +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for COMBOBOXEXITEMW { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("COMBOBOXEXITEMW").field("mask", &self.mask).field("iItem", &self.iItem).field("pszText", &self.pszText).field("cchTextMax", &self.cchTextMax).field("iImage", &self.iImage).field("iSelectedImage", &self.iSelectedImage).field("iOverlay", &self.iOverlay).field("iIndent", &self.iIndent).field("lParam", &self.lParam).finish() } } -unsafe impl ::windows::core::Abi for DRAGLISTINFO_NOTIFICATION_FLAGS { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for COMBOBOXEXITEMW { type Abi = Self; } -impl ::core::fmt::Debug for DRAGLISTINFO_NOTIFICATION_FLAGS { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("DRAGLISTINFO_NOTIFICATION_FLAGS").field(&self.0).finish() +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for COMBOBOXEXITEMW { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for COMBOBOXEXITEMW {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for COMBOBOXEXITEMW { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DRAGLISTMSGSTRING: &str = "commctrl_DragListMsg"; #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -pub struct DRAWITEMSTRUCT { - pub CtlType: DRAWITEMSTRUCT_CTL_TYPE, - pub CtlID: u32, - pub itemID: u32, - pub itemAction: u32, - pub itemState: u32, - pub hwndItem: super::super::Foundation::HWND, - pub hDC: super::super::Graphics::Gdi::HDC, +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct COMBOBOXINFO { + pub cbSize: u32, pub rcItem: super::super::Foundation::RECT, - pub itemData: usize, + pub rcButton: super::super::Foundation::RECT, + pub stateButton: COMBOBOXINFO_BUTTON_STATE, + pub hwndCombo: super::super::Foundation::HWND, + pub hwndItem: super::super::Foundation::HWND, + pub hwndList: super::super::Foundation::HWND, } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::marker::Copy for DRAWITEMSTRUCT {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::clone::Clone for DRAWITEMSTRUCT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for COMBOBOXINFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for COMBOBOXINFO { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::fmt::Debug for DRAWITEMSTRUCT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for COMBOBOXINFO { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("DRAWITEMSTRUCT").field("CtlType", &self.CtlType).field("CtlID", &self.CtlID).field("itemID", &self.itemID).field("itemAction", &self.itemAction).field("itemState", &self.itemState).field("hwndItem", &self.hwndItem).field("hDC", &self.hDC).field("rcItem", &self.rcItem).field("itemData", &self.itemData).finish() + f.debug_struct("COMBOBOXINFO").field("cbSize", &self.cbSize).field("rcItem", &self.rcItem).field("rcButton", &self.rcButton).field("stateButton", &self.stateButton).field("hwndCombo", &self.hwndCombo).field("hwndItem", &self.hwndItem).field("hwndList", &self.hwndList).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -unsafe impl ::windows::core::Abi for DRAWITEMSTRUCT { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for COMBOBOXINFO { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::PartialEq for DRAWITEMSTRUCT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for COMBOBOXINFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::Eq for DRAWITEMSTRUCT {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::default::Default for DRAWITEMSTRUCT { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for COMBOBOXINFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for COMBOBOXINFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } @@ -2246,3195 +2062,6267 @@ impl ::core::default::Default for DRAWITEMSTRUCT { #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct DRAWITEMSTRUCT_CTL_TYPE(pub u32); +pub struct COMBOBOXINFO_BUTTON_STATE(pub u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ODT_BUTTON: DRAWITEMSTRUCT_CTL_TYPE = DRAWITEMSTRUCT_CTL_TYPE(4u32); +pub const STATE_SYSTEM_INVISIBLE: COMBOBOXINFO_BUTTON_STATE = COMBOBOXINFO_BUTTON_STATE(32768u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ODT_COMBOBOX: DRAWITEMSTRUCT_CTL_TYPE = DRAWITEMSTRUCT_CTL_TYPE(3u32); +pub const STATE_SYSTEM_PRESSED: COMBOBOXINFO_BUTTON_STATE = COMBOBOXINFO_BUTTON_STATE(8u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ODT_LISTBOX: DRAWITEMSTRUCT_CTL_TYPE = DRAWITEMSTRUCT_CTL_TYPE(2u32); +pub const STATE_SYSTEM_FOCUSABLE: COMBOBOXINFO_BUTTON_STATE = COMBOBOXINFO_BUTTON_STATE(1048576u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ODT_LISTVIEW: DRAWITEMSTRUCT_CTL_TYPE = DRAWITEMSTRUCT_CTL_TYPE(102u32); +pub const STATE_SYSTEM_OFFSCREEN: COMBOBOXINFO_BUTTON_STATE = COMBOBOXINFO_BUTTON_STATE(65536u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ODT_MENU: DRAWITEMSTRUCT_CTL_TYPE = DRAWITEMSTRUCT_CTL_TYPE(1u32); +pub const STATE_SYSTEM_UNAVAILABLE: COMBOBOXINFO_BUTTON_STATE = COMBOBOXINFO_BUTTON_STATE(1u32); +impl ::core::marker::Copy for COMBOBOXINFO_BUTTON_STATE {} +impl ::core::clone::Clone for COMBOBOXINFO_BUTTON_STATE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for COMBOBOXINFO_BUTTON_STATE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for COMBOBOXINFO_BUTTON_STATE { + type Abi = Self; +} +impl ::core::fmt::Debug for COMBOBOXINFO_BUTTON_STATE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("COMBOBOXINFO_BUTTON_STATE").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ODT_STATIC: DRAWITEMSTRUCT_CTL_TYPE = DRAWITEMSTRUCT_CTL_TYPE(5u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct COMBOBOXPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ODT_TAB: DRAWITEMSTRUCT_CTL_TYPE = DRAWITEMSTRUCT_CTL_TYPE(101u32); -impl ::core::marker::Copy for DRAWITEMSTRUCT_CTL_TYPE {} -impl ::core::clone::Clone for DRAWITEMSTRUCT_CTL_TYPE { +pub const CP_DROPDOWNBUTTON: COMBOBOXPARTS = COMBOBOXPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_BACKGROUND: COMBOBOXPARTS = COMBOBOXPARTS(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_TRANSPARENTBACKGROUND: COMBOBOXPARTS = COMBOBOXPARTS(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_BORDER: COMBOBOXPARTS = COMBOBOXPARTS(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_READONLY: COMBOBOXPARTS = COMBOBOXPARTS(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_DROPDOWNBUTTONRIGHT: COMBOBOXPARTS = COMBOBOXPARTS(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_DROPDOWNBUTTONLEFT: COMBOBOXPARTS = COMBOBOXPARTS(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_CUEBANNER: COMBOBOXPARTS = COMBOBOXPARTS(8i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CP_DROPDOWNITEM: COMBOBOXPARTS = COMBOBOXPARTS(9i32); +impl ::core::marker::Copy for COMBOBOXPARTS {} +impl ::core::clone::Clone for COMBOBOXPARTS { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for DRAWITEMSTRUCT_CTL_TYPE { +impl ::core::default::Default for COMBOBOXPARTS { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for DRAWITEMSTRUCT_CTL_TYPE { +unsafe impl ::windows::core::Abi for COMBOBOXPARTS { type Abi = Self; } -impl ::core::fmt::Debug for DRAWITEMSTRUCT_CTL_TYPE { +impl ::core::fmt::Debug for COMBOBOXPARTS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("DRAWITEMSTRUCT_CTL_TYPE").field(&self.0).finish() + f.debug_tuple("COMBOBOXPARTS").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct DRAW_THEME_PARENT_BACKGROUND_FLAGS(pub u32); +pub struct COMBOBOXSTYLESTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTPB_WINDOWDC: DRAW_THEME_PARENT_BACKGROUND_FLAGS = DRAW_THEME_PARENT_BACKGROUND_FLAGS(1u32); +pub const CBXS_NORMAL: COMBOBOXSTYLESTATES = COMBOBOXSTYLESTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTPB_USECTLCOLORSTATIC: DRAW_THEME_PARENT_BACKGROUND_FLAGS = DRAW_THEME_PARENT_BACKGROUND_FLAGS(2u32); +pub const CBXS_HOT: COMBOBOXSTYLESTATES = COMBOBOXSTYLESTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTPB_USEERASEBKGND: DRAW_THEME_PARENT_BACKGROUND_FLAGS = DRAW_THEME_PARENT_BACKGROUND_FLAGS(4u32); -impl ::core::marker::Copy for DRAW_THEME_PARENT_BACKGROUND_FLAGS {} -impl ::core::clone::Clone for DRAW_THEME_PARENT_BACKGROUND_FLAGS { +pub const CBXS_PRESSED: COMBOBOXSTYLESTATES = COMBOBOXSTYLESTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBXS_DISABLED: COMBOBOXSTYLESTATES = COMBOBOXSTYLESTATES(4i32); +impl ::core::marker::Copy for COMBOBOXSTYLESTATES {} +impl ::core::clone::Clone for COMBOBOXSTYLESTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for DRAW_THEME_PARENT_BACKGROUND_FLAGS { +impl ::core::default::Default for COMBOBOXSTYLESTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for DRAW_THEME_PARENT_BACKGROUND_FLAGS { +unsafe impl ::windows::core::Abi for COMBOBOXSTYLESTATES { type Abi = Self; } -impl ::core::fmt::Debug for DRAW_THEME_PARENT_BACKGROUND_FLAGS { +impl ::core::fmt::Debug for COMBOBOXSTYLESTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("DRAW_THEME_PARENT_BACKGROUND_FLAGS").field(&self.0).finish() + f.debug_tuple("COMBOBOXSTYLESTATES").field(&self.0).finish() } } -impl ::core::ops::BitOr for DRAW_THEME_PARENT_BACKGROUND_FLAGS { +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct COMBOBOX_EX_ITEM_FLAGS(pub u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEIF_DI_SETITEM: COMBOBOX_EX_ITEM_FLAGS = COMBOBOX_EX_ITEM_FLAGS(268435456u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEIF_IMAGE: COMBOBOX_EX_ITEM_FLAGS = COMBOBOX_EX_ITEM_FLAGS(2u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEIF_INDENT: COMBOBOX_EX_ITEM_FLAGS = COMBOBOX_EX_ITEM_FLAGS(16u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEIF_LPARAM: COMBOBOX_EX_ITEM_FLAGS = COMBOBOX_EX_ITEM_FLAGS(32u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEIF_OVERLAY: COMBOBOX_EX_ITEM_FLAGS = COMBOBOX_EX_ITEM_FLAGS(8u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEIF_SELECTEDIMAGE: COMBOBOX_EX_ITEM_FLAGS = COMBOBOX_EX_ITEM_FLAGS(4u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBEIF_TEXT: COMBOBOX_EX_ITEM_FLAGS = COMBOBOX_EX_ITEM_FLAGS(1u32); +impl ::core::marker::Copy for COMBOBOX_EX_ITEM_FLAGS {} +impl ::core::clone::Clone for COMBOBOX_EX_ITEM_FLAGS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for COMBOBOX_EX_ITEM_FLAGS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for COMBOBOX_EX_ITEM_FLAGS { + type Abi = Self; +} +impl ::core::fmt::Debug for COMBOBOX_EX_ITEM_FLAGS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("COMBOBOX_EX_ITEM_FLAGS").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for COMBOBOX_EX_ITEM_FLAGS { type Output = Self; fn bitor(self, other: Self) -> Self { Self(self.0 | other.0) } } -impl ::core::ops::BitAnd for DRAW_THEME_PARENT_BACKGROUND_FLAGS { +impl ::core::ops::BitAnd for COMBOBOX_EX_ITEM_FLAGS { type Output = Self; fn bitand(self, other: Self) -> Self { Self(self.0 & other.0) } } -impl ::core::ops::BitOrAssign for DRAW_THEME_PARENT_BACKGROUND_FLAGS { +impl ::core::ops::BitOrAssign for COMBOBOX_EX_ITEM_FLAGS { fn bitor_assign(&mut self, other: Self) { self.0.bitor_assign(other.0) } } -impl ::core::ops::BitAndAssign for DRAW_THEME_PARENT_BACKGROUND_FLAGS { +impl ::core::ops::BitAndAssign for COMBOBOX_EX_ITEM_FLAGS { fn bitand_assign(&mut self, other: Self) { self.0.bitand_assign(other.0) } } -impl ::core::ops::Not for DRAW_THEME_PARENT_BACKGROUND_FLAGS { +impl ::core::ops::Not for COMBOBOX_EX_ITEM_FLAGS { type Output = Self; fn not(self) -> Self { Self(self.0.not()) } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DSA_APPEND: u32 = 2147483647u32; +pub const COMCTL32_VERSION: u32 = 6u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DSA_Clone<'a, P0>(hdsa: P0) -> HDSA -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DSA_Clone(hdsa: HDSA) -> HDSA; - } - DSA_Clone(hdsa.into()) -} +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct COMMANDLINKGLYPHSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DSA_Create(cbitem: i32, citemgrow: i32) -> HDSA { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DSA_Create(cbitem: i32, citemgrow: i32) -> HDSA; +pub const CMDLGS_NORMAL: COMMANDLINKGLYPHSTATES = COMMANDLINKGLYPHSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLGS_HOT: COMMANDLINKGLYPHSTATES = COMMANDLINKGLYPHSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLGS_PRESSED: COMMANDLINKGLYPHSTATES = COMMANDLINKGLYPHSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLGS_DISABLED: COMMANDLINKGLYPHSTATES = COMMANDLINKGLYPHSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLGS_DEFAULTED: COMMANDLINKGLYPHSTATES = COMMANDLINKGLYPHSTATES(5i32); +impl ::core::marker::Copy for COMMANDLINKGLYPHSTATES {} +impl ::core::clone::Clone for COMMANDLINKGLYPHSTATES { + fn clone(&self) -> Self { + *self } - DSA_Create(cbitem, citemgrow) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DSA_DeleteAllItems<'a, P0>(hdsa: P0) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DSA_DeleteAllItems(hdsa: HDSA) -> super::super::Foundation::BOOL; +impl ::core::default::Default for COMMANDLINKGLYPHSTATES { + fn default() -> Self { + Self(0) } - DSA_DeleteAllItems(hdsa.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DSA_DeleteItem<'a, P0>(hdsa: P0, i: i32) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DSA_DeleteItem(hdsa: HDSA, i: i32) -> super::super::Foundation::BOOL; - } - DSA_DeleteItem(hdsa.into(), i) +unsafe impl ::windows::core::Abi for COMMANDLINKGLYPHSTATES { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DSA_Destroy<'a, P0>(hdsa: P0) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DSA_Destroy(hdsa: HDSA) -> super::super::Foundation::BOOL; +impl ::core::fmt::Debug for COMMANDLINKGLYPHSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("COMMANDLINKGLYPHSTATES").field(&self.0).finish() } - DSA_Destroy(hdsa.into()) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DSA_DestroyCallback<'a, P0>(hdsa: P0, pfncb: PFNDAENUMCALLBACK, pdata: *const ::core::ffi::c_void) -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DSA_DestroyCallback(hdsa: HDSA, pfncb: *mut ::core::ffi::c_void, pdata: *const ::core::ffi::c_void); - } - DSA_DestroyCallback(hdsa.into(), ::core::mem::transmute(pfncb), ::core::mem::transmute(pdata)) -} +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct COMMANDLINKSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DSA_ERR: i32 = -1i32; +pub const CMDLS_NORMAL: COMMANDLINKSTATES = COMMANDLINKSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DSA_EnumCallback<'a, P0>(hdsa: P0, pfncb: PFNDAENUMCALLBACK, pdata: *const ::core::ffi::c_void) -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DSA_EnumCallback(hdsa: HDSA, pfncb: *mut ::core::ffi::c_void, pdata: *const ::core::ffi::c_void); +pub const CMDLS_HOT: COMMANDLINKSTATES = COMMANDLINKSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLS_PRESSED: COMMANDLINKSTATES = COMMANDLINKSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLS_DISABLED: COMMANDLINKSTATES = COMMANDLINKSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLS_DEFAULTED: COMMANDLINKSTATES = COMMANDLINKSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CMDLS_DEFAULTED_ANIMATING: COMMANDLINKSTATES = COMMANDLINKSTATES(6i32); +impl ::core::marker::Copy for COMMANDLINKSTATES {} +impl ::core::clone::Clone for COMMANDLINKSTATES { + fn clone(&self) -> Self { + *self } - DSA_EnumCallback(hdsa.into(), ::core::mem::transmute(pfncb), ::core::mem::transmute(pdata)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DSA_GetItem<'a, P0>(hdsa: P0, i: i32, pitem: *mut ::core::ffi::c_void) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DSA_GetItem(hdsa: HDSA, i: i32, pitem: *mut ::core::ffi::c_void) -> super::super::Foundation::BOOL; +impl ::core::default::Default for COMMANDLINKSTATES { + fn default() -> Self { + Self(0) } - DSA_GetItem(hdsa.into(), i, ::core::mem::transmute(pitem)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DSA_GetItemPtr<'a, P0>(hdsa: P0, i: i32) -> *mut ::core::ffi::c_void -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DSA_GetItemPtr(hdsa: HDSA, i: i32) -> *mut ::core::ffi::c_void; +unsafe impl ::windows::core::Abi for COMMANDLINKSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for COMMANDLINKSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("COMMANDLINKSTATES").field(&self.0).finish() } - DSA_GetItemPtr(hdsa.into(), i) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DSA_GetSize<'a, P0>(hdsa: P0) -> u64 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DSA_GetSize(hdsa: HDSA) -> u64; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct COMMUNICATIONSPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CSST_TAB: COMMUNICATIONSPARTS = COMMUNICATIONSPARTS(1i32); +impl ::core::marker::Copy for COMMUNICATIONSPARTS {} +impl ::core::clone::Clone for COMMUNICATIONSPARTS { + fn clone(&self) -> Self { + *self } - DSA_GetSize(hdsa.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DSA_InsertItem<'a, P0>(hdsa: P0, i: i32, pitem: *const ::core::ffi::c_void) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DSA_InsertItem(hdsa: HDSA, i: i32, pitem: *const ::core::ffi::c_void) -> i32; +impl ::core::default::Default for COMMUNICATIONSPARTS { + fn default() -> Self { + Self(0) } - DSA_InsertItem(hdsa.into(), i, ::core::mem::transmute(pitem)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DSA_SetItem<'a, P0>(hdsa: P0, i: i32, pitem: *const ::core::ffi::c_void) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DSA_SetItem(hdsa: HDSA, i: i32, pitem: *const ::core::ffi::c_void) -> super::super::Foundation::BOOL; +unsafe impl ::windows::core::Abi for COMMUNICATIONSPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for COMMUNICATIONSPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("COMMUNICATIONSPARTS").field(&self.0).finish() } - DSA_SetItem(hdsa.into(), i, ::core::mem::transmute(pitem)) -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DSA_Sort<'a, P0, P1>(pdsa: P0, pfncompare: PFNDACOMPARE, lparam: P1) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DSA_Sort(pdsa: HDSA, pfncompare: *mut ::core::ffi::c_void, lparam: super::super::Foundation::LPARAM) -> super::super::Foundation::BOOL; - } - DSA_Sort(pdsa.into(), ::core::mem::transmute(pfncompare), lparam.into()) } #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct DTBGOPTS { - pub dwSize: u32, - pub dwFlags: u32, - pub rcClip: super::super::Foundation::RECT, +pub struct COMPAREITEMSTRUCT { + pub CtlType: u32, + pub CtlID: u32, + pub hwndItem: super::super::Foundation::HWND, + pub itemID1: u32, + pub itemData1: usize, + pub itemID2: u32, + pub itemData2: usize, + pub dwLocaleId: u32, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for DTBGOPTS {} +impl ::core::marker::Copy for COMPAREITEMSTRUCT {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for DTBGOPTS { +impl ::core::clone::Clone for COMPAREITEMSTRUCT { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for DTBGOPTS { +impl ::core::fmt::Debug for COMPAREITEMSTRUCT { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("DTBGOPTS").field("dwSize", &self.dwSize).field("dwFlags", &self.dwFlags).field("rcClip", &self.rcClip).finish() + f.debug_struct("COMPAREITEMSTRUCT").field("CtlType", &self.CtlType).field("CtlID", &self.CtlID).field("hwndItem", &self.hwndItem).field("itemID1", &self.itemID1).field("itemData1", &self.itemData1).field("itemID2", &self.itemID2).field("itemData2", &self.itemData2).field("dwLocaleId", &self.dwLocaleId).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for DTBGOPTS { +unsafe impl ::windows::core::Abi for COMPAREITEMSTRUCT { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for DTBGOPTS { +impl ::core::cmp::PartialEq for COMPAREITEMSTRUCT { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for DTBGOPTS {} +impl ::core::cmp::Eq for COMPAREITEMSTRUCT {} #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for DTBGOPTS { +impl ::core::default::Default for COMPAREITEMSTRUCT { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTBG_CLIPRECT: u32 = 1u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CONTENTALIGNMENT(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTBG_COMPUTINGREGION: u32 = 16u32; +pub const CA_LEFT: CONTENTALIGNMENT = CONTENTALIGNMENT(0i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTBG_DRAWSOLID: u32 = 2u32; +pub const CA_CENTER: CONTENTALIGNMENT = CONTENTALIGNMENT(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTBG_MIRRORDC: u32 = 32u32; +pub const CA_RIGHT: CONTENTALIGNMENT = CONTENTALIGNMENT(2i32); +impl ::core::marker::Copy for CONTENTALIGNMENT {} +impl ::core::clone::Clone for CONTENTALIGNMENT { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for CONTENTALIGNMENT { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for CONTENTALIGNMENT { + type Abi = Self; +} +impl ::core::fmt::Debug for CONTENTALIGNMENT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CONTENTALIGNMENT").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTBG_NOMIRROR: u32 = 64u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CONTENTAREASTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTBG_OMITBORDER: u32 = 4u32; +pub const AW_S_CONTENTAREA_NOMARGIN: CONTENTAREASTATES = CONTENTAREASTATES(1i32); +impl ::core::marker::Copy for CONTENTAREASTATES {} +impl ::core::clone::Clone for CONTENTAREASTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for CONTENTAREASTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for CONTENTAREASTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for CONTENTAREASTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CONTENTAREASTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTBG_OMITCONTENT: u32 = 8u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CONTENTLINKSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_CLOSEMONTHCAL: u32 = 4109u32; +pub const CPCL_NORMAL: CONTENTLINKSTATES = CONTENTLINKSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_FIRST: u32 = 4096u32; +pub const CPCL_HOT: CONTENTLINKSTATES = CONTENTLINKSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_GETDATETIMEPICKERINFO: u32 = 4110u32; +pub const CPCL_PRESSED: CONTENTLINKSTATES = CONTENTLINKSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_GETIDEALSIZE: u32 = 4111u32; +pub const CPCL_DISABLED: CONTENTLINKSTATES = CONTENTLINKSTATES(4i32); +impl ::core::marker::Copy for CONTENTLINKSTATES {} +impl ::core::clone::Clone for CONTENTLINKSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for CONTENTLINKSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for CONTENTLINKSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for CONTENTLINKSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CONTENTLINKSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_GETMCCOLOR: u32 = 4103u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CONTENTPANESTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_GETMCFONT: u32 = 4106u32; +pub const TDLGCPS_STANDALONE: CONTENTPANESTATES = CONTENTPANESTATES(1i32); +impl ::core::marker::Copy for CONTENTPANESTATES {} +impl ::core::clone::Clone for CONTENTPANESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for CONTENTPANESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for CONTENTPANESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for CONTENTPANESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CONTENTPANESTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_GETMCSTYLE: u32 = 4108u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CONTROLLABELSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_GETMONTHCAL: u32 = 4104u32; +pub const TS_CONTROLLABEL_NORMAL: CONTROLLABELSTATES = CONTROLLABELSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_GETRANGE: u32 = 4099u32; +pub const TS_CONTROLLABEL_DISABLED: CONTROLLABELSTATES = CONTROLLABELSTATES(2i32); +impl ::core::marker::Copy for CONTROLLABELSTATES {} +impl ::core::clone::Clone for CONTROLLABELSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for CONTROLLABELSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for CONTROLLABELSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for CONTROLLABELSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CONTROLLABELSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_GETSYSTEMTIME: u32 = 4097u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CONTROLPANELPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_SETFORMAT: u32 = 4146u32; +pub const CPANEL_NAVIGATIONPANE: CONTROLPANELPARTS = CONTROLPANELPARTS(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_SETFORMATA: u32 = 4101u32; +pub const CPANEL_CONTENTPANE: CONTROLPANELPARTS = CONTROLPANELPARTS(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_SETFORMATW: u32 = 4146u32; +pub const CPANEL_NAVIGATIONPANELABEL: CONTROLPANELPARTS = CONTROLPANELPARTS(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_SETMCCOLOR: u32 = 4102u32; +pub const CPANEL_CONTENTPANELABEL: CONTROLPANELPARTS = CONTROLPANELPARTS(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_SETMCFONT: u32 = 4105u32; +pub const CPANEL_TITLE: CONTROLPANELPARTS = CONTROLPANELPARTS(5i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_SETMCSTYLE: u32 = 4107u32; +pub const CPANEL_BODYTEXT: CONTROLPANELPARTS = CONTROLPANELPARTS(6i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_SETRANGE: u32 = 4100u32; +pub const CPANEL_HELPLINK: CONTROLPANELPARTS = CONTROLPANELPARTS(7i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTM_SETSYSTEMTIME: u32 = 4098u32; +pub const CPANEL_TASKLINK: CONTROLPANELPARTS = CONTROLPANELPARTS(8i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTS_APPCANPARSE: u32 = 16u32; +pub const CPANEL_GROUPTEXT: CONTROLPANELPARTS = CONTROLPANELPARTS(9i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTS_LONGDATEFORMAT: u32 = 4u32; +pub const CPANEL_CONTENTLINK: CONTROLPANELPARTS = CONTROLPANELPARTS(10i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTS_RIGHTALIGN: u32 = 32u32; +pub const CPANEL_SECTIONTITLELINK: CONTROLPANELPARTS = CONTROLPANELPARTS(11i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTS_SHORTDATECENTURYFORMAT: u32 = 12u32; +pub const CPANEL_LARGECOMMANDAREA: CONTROLPANELPARTS = CONTROLPANELPARTS(12i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTS_SHORTDATEFORMAT: u32 = 0u32; +pub const CPANEL_SMALLCOMMANDAREA: CONTROLPANELPARTS = CONTROLPANELPARTS(13i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTS_SHOWNONE: u32 = 2u32; +pub const CPANEL_BUTTON: CONTROLPANELPARTS = CONTROLPANELPARTS(14i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTS_TIMEFORMAT: u32 = 9u32; +pub const CPANEL_MESSAGETEXT: CONTROLPANELPARTS = CONTROLPANELPARTS(15i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTS_UPDOWN: u32 = 1u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -pub struct DTTOPTS { - pub dwSize: u32, - pub dwFlags: u32, - pub crText: u32, - pub crBorder: u32, - pub crShadow: u32, - pub iTextShadowType: i32, - pub ptShadowOffset: super::super::Foundation::POINT, - pub iBorderSize: i32, - pub iFontPropId: i32, - pub iColorPropId: i32, - pub iStateId: i32, - pub fApplyOverlay: super::super::Foundation::BOOL, - pub iGlowSize: i32, - pub pfnDrawTextCallback: DTT_CALLBACK_PROC, - pub lParam: super::super::Foundation::LPARAM, -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::marker::Copy for DTTOPTS {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::clone::Clone for DTTOPTS { +pub const CPANEL_NAVIGATIONPANELINE: CONTROLPANELPARTS = CONTROLPANELPARTS(16i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_CONTENTPANELINE: CONTROLPANELPARTS = CONTROLPANELPARTS(17i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_BANNERAREA: CONTROLPANELPARTS = CONTROLPANELPARTS(18i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPANEL_BODYTITLE: CONTROLPANELPARTS = CONTROLPANELPARTS(19i32); +impl ::core::marker::Copy for CONTROLPANELPARTS {} +impl ::core::clone::Clone for CONTROLPANELPARTS { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::fmt::Debug for DTTOPTS { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("DTTOPTS") - .field("dwSize", &self.dwSize) - .field("dwFlags", &self.dwFlags) - .field("crText", &self.crText) - .field("crBorder", &self.crBorder) - .field("crShadow", &self.crShadow) - .field("iTextShadowType", &self.iTextShadowType) - .field("ptShadowOffset", &self.ptShadowOffset) - .field("iBorderSize", &self.iBorderSize) - .field("iFontPropId", &self.iFontPropId) - .field("iColorPropId", &self.iColorPropId) - .field("iStateId", &self.iStateId) - .field("fApplyOverlay", &self.fApplyOverlay) - .field("iGlowSize", &self.iGlowSize) - .field("pfnDrawTextCallback", &self.pfnDrawTextCallback.map(|f| f as usize)) - .field("lParam", &self.lParam) - .finish() +impl ::core::default::Default for CONTROLPANELPARTS { + fn default() -> Self { + Self(0) } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -unsafe impl ::windows::core::Abi for DTTOPTS { +unsafe impl ::windows::core::Abi for CONTROLPANELPARTS { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::PartialEq for DTTOPTS { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::fmt::Debug for CONTROLPANELPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CONTROLPANELPARTS").field(&self.0).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::Eq for DTTOPTS {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::default::Default for DTTOPTS { +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct COPYSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDCOPY_HIGHLIGHT: COPYSTATES = COPYSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDCOPY_NOHIGHLIGHT: COPYSTATES = COPYSTATES(2i32); +impl ::core::marker::Copy for COPYSTATES {} +impl ::core::clone::Clone for COPYSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for COPYSTATES { fn default() -> Self { - unsafe { ::core::mem::zeroed() } + Self(0) } } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -pub type DTT_CALLBACK_PROC = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTT_FLAGS2VALIDBITS: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const DTT_GRAYED: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DestroyPropertySheetPage<'a, P0>(param0: P0) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DestroyPropertySheetPage(param0: HPROPSHEETPAGE) -> super::super::Foundation::BOOL; +unsafe impl ::windows::core::Abi for COPYSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for COPYSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("COPYSTATES").field(&self.0).finish() } - DestroyPropertySheetPage(param0.into()) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn DestroySyntheticPointerDevice<'a, P0>(device: P0) -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DestroySyntheticPointerDevice(device: HSYNTHETICPOINTERDEVICE); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CREATELINKSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDCREATELINK_HIGHLIGHT: CREATELINKSTATES = CREATELINKSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDCREATELINK_NOHIGHLIGHT: CREATELINKSTATES = CREATELINKSTATES(2i32); +impl ::core::marker::Copy for CREATELINKSTATES {} +impl ::core::clone::Clone for CREATELINKSTATES { + fn clone(&self) -> Self { + *self } - DestroySyntheticPointerDevice(device.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DlgDirListA<'a, P0>(hdlg: P0, lppathspec: ::windows::core::PSTR, nidlistbox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DlgDirListA(hdlg: super::super::Foundation::HWND, lppathspec: ::windows::core::PSTR, nidlistbox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32; +impl ::core::default::Default for CREATELINKSTATES { + fn default() -> Self { + Self(0) } - DlgDirListA(hdlg.into(), ::core::mem::transmute(lppathspec), nidlistbox, nidstaticpath, ufiletype) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DlgDirListComboBoxA<'a, P0>(hdlg: P0, lppathspec: ::windows::core::PSTR, nidcombobox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DlgDirListComboBoxA(hdlg: super::super::Foundation::HWND, lppathspec: ::windows::core::PSTR, nidcombobox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32; - } - DlgDirListComboBoxA(hdlg.into(), ::core::mem::transmute(lppathspec), nidcombobox, nidstaticpath, ufiletype) +unsafe impl ::windows::core::Abi for CREATELINKSTATES { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DlgDirListComboBoxW<'a, P0>(hdlg: P0, lppathspec: ::windows::core::PWSTR, nidcombobox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DlgDirListComboBoxW(hdlg: super::super::Foundation::HWND, lppathspec: ::windows::core::PWSTR, nidcombobox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32; +impl ::core::fmt::Debug for CREATELINKSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CREATELINKSTATES").field(&self.0).finish() } - DlgDirListComboBoxW(hdlg.into(), ::core::mem::transmute(lppathspec), nidcombobox, nidstaticpath, ufiletype) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DlgDirListW<'a, P0>(hdlg: P0, lppathspec: ::windows::core::PWSTR, nidlistbox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32 -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DlgDirListW(hdlg: super::super::Foundation::HWND, lppathspec: ::windows::core::PWSTR, nidlistbox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct CUEBANNERSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBCB_NORMAL: CUEBANNERSTATES = CUEBANNERSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBCB_HOT: CUEBANNERSTATES = CUEBANNERSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBCB_PRESSED: CUEBANNERSTATES = CUEBANNERSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBCB_DISABLED: CUEBANNERSTATES = CUEBANNERSTATES(4i32); +impl ::core::marker::Copy for CUEBANNERSTATES {} +impl ::core::clone::Clone for CUEBANNERSTATES { + fn clone(&self) -> Self { + *self } - DlgDirListW(hdlg.into(), ::core::mem::transmute(lppathspec), nidlistbox, nidstaticpath, ufiletype) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DlgDirSelectComboBoxExA<'a, P0>(hwnddlg: P0, lpstring: &mut [u8], idcombobox: i32) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DlgDirSelectComboBoxExA(hwnddlg: super::super::Foundation::HWND, lpstring: ::windows::core::PSTR, cchout: i32, idcombobox: i32) -> super::super::Foundation::BOOL; +impl ::core::default::Default for CUEBANNERSTATES { + fn default() -> Self { + Self(0) } - DlgDirSelectComboBoxExA(hwnddlg.into(), ::core::mem::transmute(lpstring.as_ptr()), lpstring.len() as _, idcombobox) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DlgDirSelectComboBoxExW<'a, P0>(hwnddlg: P0, lpstring: &mut [u16], idcombobox: i32) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DlgDirSelectComboBoxExW(hwnddlg: super::super::Foundation::HWND, lpstring: ::windows::core::PWSTR, cchout: i32, idcombobox: i32) -> super::super::Foundation::BOOL; - } - DlgDirSelectComboBoxExW(hwnddlg.into(), ::core::mem::transmute(lpstring.as_ptr()), lpstring.len() as _, idcombobox) +unsafe impl ::windows::core::Abi for CUEBANNERSTATES { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn DlgDirSelectExA<'a, P0>(hwnddlg: P0, lpstring: &mut [u8], idlistbox: i32) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DlgDirSelectExA(hwnddlg: super::super::Foundation::HWND, lpstring: ::windows::core::PSTR, chcount: i32, idlistbox: i32) -> super::super::Foundation::BOOL; +impl ::core::fmt::Debug for CUEBANNERSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("CUEBANNERSTATES").field(&self.0).finish() } - DlgDirSelectExA(hwnddlg.into(), ::core::mem::transmute(lpstring.as_ptr()), lpstring.len() as _, idlistbox) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn DlgDirSelectExW<'a, P0>(hwnddlg: P0, lpstring: &mut [u16], idlistbox: i32) -> super::super::Foundation::BOOL +pub unsafe fn CheckDlgButton<'a, P0>(hdlg: P0, nidbutton: i32, ucheck: DLG_BUTTON_CHECK_STATE) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DlgDirSelectExW(hwnddlg: super::super::Foundation::HWND, lpstring: ::windows::core::PWSTR, chcount: i32, idlistbox: i32) -> super::super::Foundation::BOOL; + fn CheckDlgButton(hdlg: super::super::Foundation::HWND, nidbutton: i32, ucheck: DLG_BUTTON_CHECK_STATE) -> super::super::Foundation::BOOL; } - DlgDirSelectExW(hwnddlg.into(), ::core::mem::transmute(lpstring.as_ptr()), lpstring.len() as _, idlistbox) + CheckDlgButton(hdlg.into(), nidbutton, ucheck) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn DrawInsert<'a, P0, P1>(handparent: P0, hlb: P1, nitem: i32) +pub unsafe fn CheckRadioButton<'a, P0>(hdlg: P0, nidfirstbutton: i32, nidlastbutton: i32, nidcheckbutton: i32) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, - P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DrawInsert(handparent: super::super::Foundation::HWND, hlb: super::super::Foundation::HWND, nitem: i32); + fn CheckRadioButton(hdlg: super::super::Foundation::HWND, nidfirstbutton: i32, nidlastbutton: i32, nidcheckbutton: i32) -> super::super::Foundation::BOOL; } - DrawInsert(handparent.into(), hlb.into(), nitem) + CheckRadioButton(hdlg.into(), nidfirstbutton, nidlastbutton, nidcheckbutton) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn DrawShadowText<'a, P0>(hdc: P0, psztext: &[u16], prc: &super::super::Foundation::RECT, dwflags: u32, crtext: u32, crshadow: u32, ixoffset: i32, iyoffset: i32) -> i32 -where - P0: ::std::convert::Into, -{ +pub unsafe fn CloseThemeData(htheme: isize) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DrawShadowText(hdc: super::super::Graphics::Gdi::HDC, psztext: ::windows::core::PCWSTR, cch: u32, prc: *const super::super::Foundation::RECT, dwflags: u32, crtext: u32, crshadow: u32, ixoffset: i32, iyoffset: i32) -> i32; + fn CloseThemeData(htheme: isize) -> ::windows::core::HRESULT; } - DrawShadowText(hdc.into(), ::core::mem::transmute(psztext.as_ptr()), psztext.len() as _, ::core::mem::transmute(prc), dwflags, crtext, crshadow, ixoffset, iyoffset) + CloseThemeData(htheme).ok() } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn DrawStatusTextA<'a, P0, P1>(hdc: P0, lprc: &mut super::super::Foundation::RECT, psztext: P1, uflags: u32) +pub unsafe fn CreateMappedBitmap<'a, P0>(hinstance: P0, idbitmap: isize, wflags: u32, lpcolormap: ::core::option::Option<&COLORMAP>, inummaps: i32) -> ::windows::core::Result where - P0: ::std::convert::Into, - P1: ::std::convert::Into<::windows::core::PCSTR>, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DrawStatusTextA(hdc: super::super::Graphics::Gdi::HDC, lprc: *mut super::super::Foundation::RECT, psztext: ::windows::core::PCSTR, uflags: u32); + fn CreateMappedBitmap(hinstance: super::super::Foundation::HINSTANCE, idbitmap: isize, wflags: u32, lpcolormap: *const COLORMAP, inummaps: i32) -> super::super::Graphics::Gdi::HBITMAP; } - DrawStatusTextA(hdc.into(), ::core::mem::transmute(lprc), psztext.into(), uflags) + let result__ = CreateMappedBitmap(hinstance.into(), idbitmap, wflags, ::core::mem::transmute(lpcolormap), inummaps); + (!result__.is_invalid()).then(|| result__).ok_or_else(::windows::core::Error::from_win32) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] #[inline] -pub unsafe fn DrawStatusTextW<'a, P0, P1>(hdc: P0, lprc: &mut super::super::Foundation::RECT, psztext: P1, uflags: u32) -where - P0: ::std::convert::Into, - P1: ::std::convert::Into<::windows::core::PCWSTR>, -{ +pub unsafe fn CreatePropertySheetPageA(constpropsheetpagepointer: &mut PROPSHEETPAGEA) -> HPROPSHEETPAGE { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DrawStatusTextW(hdc: super::super::Graphics::Gdi::HDC, lprc: *mut super::super::Foundation::RECT, psztext: ::windows::core::PCWSTR, uflags: u32); + fn CreatePropertySheetPageA(constpropsheetpagepointer: *mut PROPSHEETPAGEA) -> HPROPSHEETPAGE; } - DrawStatusTextW(hdc.into(), ::core::mem::transmute(lprc), psztext.into(), uflags) + CreatePropertySheetPageA(::core::mem::transmute(constpropsheetpagepointer)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] #[inline] -pub unsafe fn DrawThemeBackground<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, prect: &super::super::Foundation::RECT, pcliprect: ::core::option::Option<&super::super::Foundation::RECT>) -> ::windows::core::Result<()> -where - P0: ::std::convert::Into, -{ +pub unsafe fn CreatePropertySheetPageW(constpropsheetpagepointer: &mut PROPSHEETPAGEW) -> HPROPSHEETPAGE { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DrawThemeBackground(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, prect: *const super::super::Foundation::RECT, pcliprect: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT; + fn CreatePropertySheetPageW(constpropsheetpagepointer: *mut PROPSHEETPAGEW) -> HPROPSHEETPAGE; } - DrawThemeBackground(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(prect), ::core::mem::transmute(pcliprect)).ok() + CreatePropertySheetPageW(::core::mem::transmute(constpropsheetpagepointer)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn DrawThemeBackgroundEx<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, prect: &super::super::Foundation::RECT, poptions: ::core::option::Option<&DTBGOPTS>) -> ::windows::core::Result<()> +pub unsafe fn CreateStatusWindowA<'a, P0, P1>(style: i32, lpsztext: P0, hwndparent: P1, wid: u32) -> super::super::Foundation::HWND where - P0: ::std::convert::Into, + P0: ::std::convert::Into<::windows::core::PCSTR>, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DrawThemeBackgroundEx(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, prect: *const super::super::Foundation::RECT, poptions: *const DTBGOPTS) -> ::windows::core::HRESULT; + fn CreateStatusWindowA(style: i32, lpsztext: ::windows::core::PCSTR, hwndparent: super::super::Foundation::HWND, wid: u32) -> super::super::Foundation::HWND; } - DrawThemeBackgroundEx(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(prect), ::core::mem::transmute(poptions)).ok() + CreateStatusWindowA(style, lpsztext.into(), hwndparent.into(), wid) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn DrawThemeEdge<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, pdestrect: &super::super::Foundation::RECT, uedge: u32, uflags: u32) -> ::windows::core::Result +pub unsafe fn CreateStatusWindowW<'a, P0, P1>(style: i32, lpsztext: P0, hwndparent: P1, wid: u32) -> super::super::Foundation::HWND where - P0: ::std::convert::Into, + P0: ::std::convert::Into<::windows::core::PCWSTR>, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DrawThemeEdge(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, pdestrect: *const super::super::Foundation::RECT, uedge: u32, uflags: u32, pcontentrect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT; + fn CreateStatusWindowW(style: i32, lpsztext: ::windows::core::PCWSTR, hwndparent: super::super::Foundation::HWND, wid: u32) -> super::super::Foundation::HWND; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - DrawThemeEdge(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(pdestrect), uedge, uflags, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + CreateStatusWindowW(style, lpsztext.into(), hwndparent.into(), wid) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(feature = "Win32_UI_WindowsAndMessaging")] #[inline] -pub unsafe fn DrawThemeIcon<'a, P0, P1>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, prect: &super::super::Foundation::RECT, himl: P1, iimageindex: i32) -> ::windows::core::Result<()> -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ +pub unsafe fn CreateSyntheticPointerDevice(pointertype: super::WindowsAndMessaging::POINTER_INPUT_TYPE, maxcount: u32, mode: POINTER_FEEDBACK_MODE) -> ::windows::core::Result { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DrawThemeIcon(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, prect: *const super::super::Foundation::RECT, himl: HIMAGELIST, iimageindex: i32) -> ::windows::core::HRESULT; + fn CreateSyntheticPointerDevice(pointertype: super::WindowsAndMessaging::POINTER_INPUT_TYPE, maxcount: u32, mode: POINTER_FEEDBACK_MODE) -> HSYNTHETICPOINTERDEVICE; } - DrawThemeIcon(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(prect), himl.into(), iimageindex).ok() + let result__ = CreateSyntheticPointerDevice(pointertype, maxcount, mode); + (!result__.is_invalid()).then(|| result__).ok_or_else(::windows::core::Error::from_win32) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn DrawThemeParentBackground<'a, P0, P1>(hwnd: P0, hdc: P1, prc: ::core::option::Option<&super::super::Foundation::RECT>) -> ::windows::core::Result<()> +pub unsafe fn CreateToolbarEx<'a, P0, P1>(hwnd: P0, ws: u32, wid: u32, nbitmaps: i32, hbminst: P1, wbmid: usize, lpbuttons: &mut TBBUTTON, inumbuttons: i32, dxbutton: i32, dybutton: i32, dxbitmap: i32, dybitmap: i32, ustructsize: u32) -> super::super::Foundation::HWND where P0: ::std::convert::Into, - P1: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DrawThemeParentBackground(hwnd: super::super::Foundation::HWND, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT; + fn CreateToolbarEx(hwnd: super::super::Foundation::HWND, ws: u32, wid: u32, nbitmaps: i32, hbminst: super::super::Foundation::HINSTANCE, wbmid: usize, lpbuttons: *mut TBBUTTON, inumbuttons: i32, dxbutton: i32, dybutton: i32, dxbitmap: i32, dybitmap: i32, ustructsize: u32) -> super::super::Foundation::HWND; } - DrawThemeParentBackground(hwnd.into(), hdc.into(), ::core::mem::transmute(prc)).ok() + CreateToolbarEx(hwnd.into(), ws, wid, nbitmaps, hbminst.into(), wbmid, ::core::mem::transmute(lpbuttons), inumbuttons, dxbutton, dybutton, dxbitmap, dybitmap, ustructsize) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn DrawThemeParentBackgroundEx<'a, P0, P1>(hwnd: P0, hdc: P1, dwflags: DRAW_THEME_PARENT_BACKGROUND_FLAGS, prc: ::core::option::Option<&super::super::Foundation::RECT>) -> ::windows::core::Result<()> +pub unsafe fn CreateUpDownControl<'a, P0, P1, P2>(dwstyle: u32, x: i32, y: i32, cx: i32, cy: i32, hparent: P0, nid: i32, hinst: P1, hbuddy: P2, nupper: i32, nlower: i32, npos: i32) -> super::super::Foundation::HWND where P0: ::std::convert::Into, - P1: ::std::convert::Into, + P1: ::std::convert::Into, + P2: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn DrawThemeParentBackgroundEx(hwnd: super::super::Foundation::HWND, hdc: super::super::Graphics::Gdi::HDC, dwflags: DRAW_THEME_PARENT_BACKGROUND_FLAGS, prc: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT; + fn CreateUpDownControl(dwstyle: u32, x: i32, y: i32, cx: i32, cy: i32, hparent: super::super::Foundation::HWND, nid: i32, hinst: super::super::Foundation::HINSTANCE, hbuddy: super::super::Foundation::HWND, nupper: i32, nlower: i32, npos: i32) -> super::super::Foundation::HWND; } - DrawThemeParentBackgroundEx(hwnd.into(), hdc.into(), dwflags, ::core::mem::transmute(prc)).ok() + CreateUpDownControl(dwstyle, x, y, cx, cy, hparent.into(), nid, hinst.into(), hbuddy.into(), nupper, nlower, npos) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -#[inline] -pub unsafe fn DrawThemeText<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, psztext: &[u16], dwtextflags: u32, dwtextflags2: u32, prect: &super::super::Foundation::RECT) -> ::windows::core::Result<()> -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DrawThemeText(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, psztext: ::windows::core::PCWSTR, cchtext: i32, dwtextflags: u32, dwtextflags2: u32, prect: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct DATEBORDERSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPDB_NORMAL: DATEBORDERSTATES = DATEBORDERSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPDB_HOT: DATEBORDERSTATES = DATEBORDERSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPDB_FOCUSED: DATEBORDERSTATES = DATEBORDERSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPDB_DISABLED: DATEBORDERSTATES = DATEBORDERSTATES(4i32); +impl ::core::marker::Copy for DATEBORDERSTATES {} +impl ::core::clone::Clone for DATEBORDERSTATES { + fn clone(&self) -> Self { + *self } - DrawThemeText(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(psztext.as_ptr()), psztext.len() as _, dwtextflags, dwtextflags2, ::core::mem::transmute(prect)).ok() } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -#[inline] -pub unsafe fn DrawThemeTextEx<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, psztext: &[u16], dwtextflags: u32, prect: &mut super::super::Foundation::RECT, poptions: ::core::option::Option<&DTTOPTS>) -> ::windows::core::Result<()> -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn DrawThemeTextEx(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, psztext: ::windows::core::PCWSTR, cchtext: i32, dwtextflags: u32, prect: *mut super::super::Foundation::RECT, poptions: *const DTTOPTS) -> ::windows::core::HRESULT; +impl ::core::default::Default for DATEBORDERSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for DATEBORDERSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for DATEBORDERSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("DATEBORDERSTATES").field(&self.0).finish() } - DrawThemeTextEx(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(psztext.as_ptr()), psztext.len() as _, dwtextflags, ::core::mem::transmute(prect), ::core::mem::transmute(poptions)).ok() } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ECM_FIRST: u32 = 5376u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct EC_ENDOFLINE(pub i32); +pub struct DATEPICKERPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EC_ENDOFLINE_DETECTFROMCONTENT: EC_ENDOFLINE = EC_ENDOFLINE(0i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EC_ENDOFLINE_CRLF: EC_ENDOFLINE = EC_ENDOFLINE(1i32); +pub const DP_DATETEXT: DATEPICKERPARTS = DATEPICKERPARTS(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EC_ENDOFLINE_CR: EC_ENDOFLINE = EC_ENDOFLINE(2i32); +pub const DP_DATEBORDER: DATEPICKERPARTS = DATEPICKERPARTS(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EC_ENDOFLINE_LF: EC_ENDOFLINE = EC_ENDOFLINE(3i32); -impl ::core::marker::Copy for EC_ENDOFLINE {} -impl ::core::clone::Clone for EC_ENDOFLINE { +pub const DP_SHOWCALENDARBUTTONRIGHT: DATEPICKERPARTS = DATEPICKERPARTS(3i32); +impl ::core::marker::Copy for DATEPICKERPARTS {} +impl ::core::clone::Clone for DATEPICKERPARTS { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for EC_ENDOFLINE { +impl ::core::default::Default for DATEPICKERPARTS { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for EC_ENDOFLINE { +unsafe impl ::windows::core::Abi for DATEPICKERPARTS { type Abi = Self; } -impl ::core::fmt::Debug for EC_ENDOFLINE { +impl ::core::fmt::Debug for DATEPICKERPARTS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("EC_ENDOFLINE").field(&self.0).finish() + f.debug_tuple("DATEPICKERPARTS").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct EC_SEARCHWEB_ENTRYPOINT(pub i32); +pub struct DATETEXTSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EC_SEARCHWEB_ENTRYPOINT_EXTERNAL: EC_SEARCHWEB_ENTRYPOINT = EC_SEARCHWEB_ENTRYPOINT(0i32); +pub const DPDT_NORMAL: DATETEXTSTATES = DATETEXTSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EC_SEARCHWEB_ENTRYPOINT_CONTEXTMENU: EC_SEARCHWEB_ENTRYPOINT = EC_SEARCHWEB_ENTRYPOINT(1i32); -impl ::core::marker::Copy for EC_SEARCHWEB_ENTRYPOINT {} -impl ::core::clone::Clone for EC_SEARCHWEB_ENTRYPOINT { +pub const DPDT_DISABLED: DATETEXTSTATES = DATETEXTSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPDT_SELECTED: DATETEXTSTATES = DATETEXTSTATES(3i32); +impl ::core::marker::Copy for DATETEXTSTATES {} +impl ::core::clone::Clone for DATETEXTSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for EC_SEARCHWEB_ENTRYPOINT { +impl ::core::default::Default for DATETEXTSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for EC_SEARCHWEB_ENTRYPOINT { +unsafe impl ::windows::core::Abi for DATETEXTSTATES { type Abi = Self; } -impl ::core::fmt::Debug for EC_SEARCHWEB_ENTRYPOINT { +impl ::core::fmt::Debug for DATETEXTSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("EC_SEARCHWEB_ENTRYPOINT").field(&self.0).finish() + f.debug_tuple("DATETEXTSTATES").field(&self.0).finish() } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub struct EDITBALLOONTIP { - pub cbStruct: u32, - pub pszTitle: ::windows::core::PCWSTR, - pub pszText: ::windows::core::PCWSTR, - pub ttiIcon: EDITBALLOONTIP_ICON, +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct DATETIMEPICKERINFO { + pub cbSize: u32, + pub rcCheck: super::super::Foundation::RECT, + pub stateCheck: u32, + pub rcButton: super::super::Foundation::RECT, + pub stateButton: u32, + pub hwndEdit: super::super::Foundation::HWND, + pub hwndUD: super::super::Foundation::HWND, + pub hwndDropDown: super::super::Foundation::HWND, } -impl ::core::marker::Copy for EDITBALLOONTIP {} -impl ::core::clone::Clone for EDITBALLOONTIP { +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for DATETIMEPICKERINFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for DATETIMEPICKERINFO { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for EDITBALLOONTIP { +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for DATETIMEPICKERINFO { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("EDITBALLOONTIP").field("cbStruct", &self.cbStruct).field("pszTitle", &self.pszTitle).field("pszText", &self.pszText).field("ttiIcon", &self.ttiIcon).finish() + f.debug_struct("DATETIMEPICKERINFO").field("cbSize", &self.cbSize).field("rcCheck", &self.rcCheck).field("stateCheck", &self.stateCheck).field("rcButton", &self.rcButton).field("stateButton", &self.stateButton).field("hwndEdit", &self.hwndEdit).field("hwndUD", &self.hwndUD).field("hwndDropDown", &self.hwndDropDown).finish() } } -unsafe impl ::windows::core::Abi for EDITBALLOONTIP { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for DATETIMEPICKERINFO { type Abi = Self; } -impl ::core::cmp::PartialEq for EDITBALLOONTIP { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for DATETIMEPICKERINFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -impl ::core::cmp::Eq for EDITBALLOONTIP {} -impl ::core::default::Default for EDITBALLOONTIP { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for DATETIMEPICKERINFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for DATETIMEPICKERINFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct EDITBALLOONTIP_ICON(pub u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TTI_ERROR: EDITBALLOONTIP_ICON = EDITBALLOONTIP_ICON(3u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TTI_INFO: EDITBALLOONTIP_ICON = EDITBALLOONTIP_ICON(1u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TTI_NONE: EDITBALLOONTIP_ICON = EDITBALLOONTIP_ICON(0u32); +pub const DATETIMEPICK_CLASS: &str = "SysDateTimePick32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TTI_WARNING: EDITBALLOONTIP_ICON = EDITBALLOONTIP_ICON(2u32); +pub const DATETIMEPICK_CLASSA: &str = "SysDateTimePick32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TTI_INFO_LARGE: EDITBALLOONTIP_ICON = EDITBALLOONTIP_ICON(4u32); +pub const DATETIMEPICK_CLASSW: &str = "SysDateTimePick32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TTI_WARNING_LARGE: EDITBALLOONTIP_ICON = EDITBALLOONTIP_ICON(5u32); +pub const DA_ERR: i32 = -1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TTI_ERROR_LARGE: EDITBALLOONTIP_ICON = EDITBALLOONTIP_ICON(6u32); -impl ::core::marker::Copy for EDITBALLOONTIP_ICON {} -impl ::core::clone::Clone for EDITBALLOONTIP_ICON { +pub const DA_LAST: u32 = 2147483647u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct DELETEITEMSTRUCT { + pub CtlType: DRAWITEMSTRUCT_CTL_TYPE, + pub CtlID: u32, + pub itemID: u32, + pub hwndItem: super::super::Foundation::HWND, + pub itemData: usize, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for DELETEITEMSTRUCT {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for DELETEITEMSTRUCT { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for EDITBALLOONTIP_ICON { - fn default() -> Self { - Self(0) +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for DELETEITEMSTRUCT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("DELETEITEMSTRUCT").field("CtlType", &self.CtlType).field("CtlID", &self.CtlID).field("itemID", &self.itemID).field("hwndItem", &self.hwndItem).field("itemData", &self.itemData).finish() } } -unsafe impl ::windows::core::Abi for EDITBALLOONTIP_ICON { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for DELETEITEMSTRUCT { type Abi = Self; } -impl ::core::fmt::Debug for EDITBALLOONTIP_ICON { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("EDITBALLOONTIP_ICON").field(&self.0).finish() +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for DELETEITEMSTRUCT { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for DELETEITEMSTRUCT {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for DELETEITEMSTRUCT { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub type EDITWORDBREAKPROCA = ::core::option::Option i32>; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub type EDITWORDBREAKPROCW = ::core::option::Option i32>; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct EMPTYMARKUPPARTS(pub i32); +pub struct DLG_BUTTON_CHECK_STATE(pub u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EMP_MARKUPTEXT: EMPTYMARKUPPARTS = EMPTYMARKUPPARTS(1i32); -impl ::core::marker::Copy for EMPTYMARKUPPARTS {} -impl ::core::clone::Clone for EMPTYMARKUPPARTS { +pub const BST_CHECKED: DLG_BUTTON_CHECK_STATE = DLG_BUTTON_CHECK_STATE(1u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BST_INDETERMINATE: DLG_BUTTON_CHECK_STATE = DLG_BUTTON_CHECK_STATE(2u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const BST_UNCHECKED: DLG_BUTTON_CHECK_STATE = DLG_BUTTON_CHECK_STATE(0u32); +impl ::core::marker::Copy for DLG_BUTTON_CHECK_STATE {} +impl ::core::clone::Clone for DLG_BUTTON_CHECK_STATE { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for EMPTYMARKUPPARTS { +impl ::core::default::Default for DLG_BUTTON_CHECK_STATE { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for EMPTYMARKUPPARTS { +unsafe impl ::windows::core::Abi for DLG_BUTTON_CHECK_STATE { type Abi = Self; } -impl ::core::fmt::Debug for EMPTYMARKUPPARTS { +impl ::core::fmt::Debug for DLG_BUTTON_CHECK_STATE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("EMPTYMARKUPPARTS").field(&self.0).finish() + f.debug_tuple("DLG_BUTTON_CHECK_STATE").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_CANUNDO: u32 = 198u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_CHARFROMPOS: u32 = 215u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_EMPTYUNDOBUFFER: u32 = 205u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_ENABLEFEATURE: u32 = 218u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct DLG_DIR_LIST_FILE_TYPE(pub u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_ENABLESEARCHWEB: u32 = 5390u32; +pub const DDL_ARCHIVE: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(32u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_FILELINEFROMCHAR: u32 = 5395u32; +pub const DDL_DIRECTORY: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(16u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_FILELINEINDEX: u32 = 5396u32; +pub const DDL_DRIVES: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(16384u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_FILELINELENGTH: u32 = 5397u32; +pub const DDL_EXCLUSIVE: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(32768u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_FMTLINES: u32 = 200u32; +pub const DDL_HIDDEN: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(2u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETCARETINDEX: u32 = 5394u32; +pub const DDL_READONLY: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(1u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETCUEBANNER: u32 = 5378u32; +pub const DDL_READWRITE: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(0u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETENDOFLINE: u32 = 5389u32; +pub const DDL_SYSTEM: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(4u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETEXTENDEDSTYLE: u32 = 5387u32; +pub const DDL_POSTMSGS: DLG_DIR_LIST_FILE_TYPE = DLG_DIR_LIST_FILE_TYPE(8192u32); +impl ::core::marker::Copy for DLG_DIR_LIST_FILE_TYPE {} +impl ::core::clone::Clone for DLG_DIR_LIST_FILE_TYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for DLG_DIR_LIST_FILE_TYPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for DLG_DIR_LIST_FILE_TYPE { + type Abi = Self; +} +impl ::core::fmt::Debug for DLG_DIR_LIST_FILE_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("DLG_DIR_LIST_FILE_TYPE").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for DLG_DIR_LIST_FILE_TYPE { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for DLG_DIR_LIST_FILE_TYPE { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for DLG_DIR_LIST_FILE_TYPE { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for DLG_DIR_LIST_FILE_TYPE { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for DLG_DIR_LIST_FILE_TYPE { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETFILELINE: u32 = 5398u32; +pub const DL_COPYCURSOR: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETFILELINECOUNT: u32 = 5399u32; +pub const DL_CURSORSET: u32 = 0u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETFIRSTVISIBLELINE: u32 = 206u32; +pub const DL_MOVECURSOR: u32 = 3u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETHANDLE: u32 = 189u32; +pub const DL_STOPCURSOR: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETHILITE: u32 = 5382u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct DOWNHORZSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETIMESTATUS: u32 = 217u32; +pub const DNHZS_NORMAL: DOWNHORZSTATES = DOWNHORZSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETLIMITTEXT: u32 = 213u32; +pub const DNHZS_HOT: DOWNHORZSTATES = DOWNHORZSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETLINE: u32 = 196u32; +pub const DNHZS_PRESSED: DOWNHORZSTATES = DOWNHORZSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETLINECOUNT: u32 = 186u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETMARGINS: u32 = 212u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETMODIFY: u32 = 184u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETPASSWORDCHAR: u32 = 210u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETRECT: u32 = 178u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETSEL: u32 = 176u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETTHUMB: u32 = 190u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_GETWORDBREAKPROC: u32 = 209u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_HIDEBALLOONTIP: u32 = 5380u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_LIMITTEXT: u32 = 197u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_LINEFROMCHAR: u32 = 201u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_LINEINDEX: u32 = 187u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_LINELENGTH: u32 = 193u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_LINESCROLL: u32 = 182u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_NOSETFOCUS: u32 = 5383u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_POSFROMCHAR: u32 = 214u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_REPLACESEL: u32 = 194u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SCROLL: u32 = 181u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SCROLLCARET: u32 = 183u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SEARCHWEB: u32 = 5391u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETCARETINDEX: u32 = 5393u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETCUEBANNER: u32 = 5377u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETENDOFLINE: u32 = 5388u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETEXTENDEDSTYLE: u32 = 5386u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETHANDLE: u32 = 188u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETHILITE: u32 = 5381u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETIMESTATUS: u32 = 216u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETLIMITTEXT: u32 = 197u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETMARGINS: u32 = 211u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETMODIFY: u32 = 185u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETPASSWORDCHAR: u32 = 204u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETREADONLY: u32 = 207u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETRECT: u32 = 179u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETRECTNP: u32 = 180u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETSEL: u32 = 177u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETTABSTOPS: u32 = 203u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SETWORDBREAKPROC: u32 = 208u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_SHOWBALLOONTIP: u32 = 5379u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_TAKEFOCUS: u32 = 5384u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const EM_UNDO: u32 = 199u32; +pub const DNHZS_DISABLED: DOWNHORZSTATES = DOWNHORZSTATES(4i32); +impl ::core::marker::Copy for DOWNHORZSTATES {} +impl ::core::clone::Clone for DOWNHORZSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for DOWNHORZSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for DOWNHORZSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for DOWNHORZSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("DOWNHORZSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct ENABLE_SCROLL_BAR_ARROWS(pub u32); +pub struct DOWNSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ESB_DISABLE_BOTH: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(3u32); +pub const DNS_NORMAL: DOWNSTATES = DOWNSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ESB_DISABLE_DOWN: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(2u32); +pub const DNS_HOT: DOWNSTATES = DOWNSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ESB_DISABLE_LEFT: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(1u32); +pub const DNS_PRESSED: DOWNSTATES = DOWNSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ESB_DISABLE_LTUP: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(1u32); +pub const DNS_DISABLED: DOWNSTATES = DOWNSTATES(4i32); +impl ::core::marker::Copy for DOWNSTATES {} +impl ::core::clone::Clone for DOWNSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for DOWNSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for DOWNSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for DOWNSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("DOWNSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ESB_DISABLE_RIGHT: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(2u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct DPAMM_MESSAGE(pub u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ESB_DISABLE_RTDN: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(2u32); +pub const DPAMM_MERGE: DPAMM_MESSAGE = DPAMM_MESSAGE(1u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ESB_DISABLE_UP: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(1u32); +pub const DPAMM_DELETE: DPAMM_MESSAGE = DPAMM_MESSAGE(2u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ESB_ENABLE_BOTH: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(0u32); -impl ::core::marker::Copy for ENABLE_SCROLL_BAR_ARROWS {} -impl ::core::clone::Clone for ENABLE_SCROLL_BAR_ARROWS { +pub const DPAMM_INSERT: DPAMM_MESSAGE = DPAMM_MESSAGE(3u32); +impl ::core::marker::Copy for DPAMM_MESSAGE {} +impl ::core::clone::Clone for DPAMM_MESSAGE { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for ENABLE_SCROLL_BAR_ARROWS { +impl ::core::default::Default for DPAMM_MESSAGE { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for ENABLE_SCROLL_BAR_ARROWS { +unsafe impl ::windows::core::Abi for DPAMM_MESSAGE { type Abi = Self; } -impl ::core::fmt::Debug for ENABLE_SCROLL_BAR_ARROWS { +impl ::core::fmt::Debug for DPAMM_MESSAGE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ENABLE_SCROLL_BAR_ARROWS").field(&self.0).finish() + f.debug_tuple("DPAMM_MESSAGE").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ES_EX_ALLOWEOL_CR: i32 = 1i32; +pub const DPAM_INTERSECT: u32 = 8u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ES_EX_ALLOWEOL_LF: i32 = 2i32; +pub const DPAM_NORMAL: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ES_EX_CONVERT_EOL_ON_PASTE: i32 = 4i32; +pub const DPAM_SORTED: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ES_EX_ZOOMABLE: i32 = 16i32; +pub const DPAM_UNION: u32 = 4u32; +#[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ETDT_DISABLE: u32 = 1u32; +pub struct DPASTREAMINFO { + pub iPos: i32, + pub pvItem: *mut ::core::ffi::c_void, +} +impl ::core::marker::Copy for DPASTREAMINFO {} +impl ::core::clone::Clone for DPASTREAMINFO { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for DPASTREAMINFO { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("DPASTREAMINFO").field("iPos", &self.iPos).field("pvItem", &self.pvItem).finish() + } +} +unsafe impl ::windows::core::Abi for DPASTREAMINFO { + type Abi = Self; +} +impl ::core::cmp::PartialEq for DPASTREAMINFO { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for DPASTREAMINFO {} +impl ::core::default::Default for DPASTREAMINFO { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ETDT_ENABLE: u32 = 2u32; +pub const DPAS_INSERTAFTER: u32 = 4u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ETDT_USEAEROWIZARDTABTEXTURE: u32 = 8u32; +pub const DPAS_INSERTBEFORE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPAS_SORTED: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPA_APPEND: u32 = 2147483647u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ETDT_USETABTEXTURE: u32 = 4u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] #[inline] -pub unsafe fn EnableScrollBar<'a, P0>(hwnd: P0, wsbflags: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, warrows: ENABLE_SCROLL_BAR_ARROWS) -> super::super::Foundation::BOOL +pub unsafe fn DPA_Clone<'a, P0, P1>(hdpa: P0, hdpanew: P1) -> HDPA where - P0: ::std::convert::Into, + P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn EnableScrollBar(hwnd: super::super::Foundation::HWND, wsbflags: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, warrows: ENABLE_SCROLL_BAR_ARROWS) -> super::super::Foundation::BOOL; + fn DPA_Clone(hdpa: HDPA, hdpanew: HDPA) -> HDPA; } - EnableScrollBar(hwnd.into(), wsbflags, warrows) + DPA_Clone(hdpa.into(), hdpanew.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn EnableThemeDialogTexture<'a, P0>(hwnd: P0, dwflags: u32) -> ::windows::core::Result<()> -where - P0: ::std::convert::Into, -{ +pub unsafe fn DPA_Create(citemgrow: i32) -> HDPA { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn EnableThemeDialogTexture(hwnd: super::super::Foundation::HWND, dwflags: u32) -> ::windows::core::HRESULT; + fn DPA_Create(citemgrow: i32) -> HDPA; } - EnableThemeDialogTexture(hwnd.into(), dwflags).ok() + DPA_Create(citemgrow) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn EnableTheming<'a, P0>(fenable: P0) -> ::windows::core::Result<()> +pub unsafe fn DPA_CreateEx<'a, P0>(cpgrow: i32, hheap: P0) -> HDPA where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn EnableTheming(fenable: super::super::Foundation::BOOL) -> ::windows::core::HRESULT; + fn DPA_CreateEx(cpgrow: i32, hheap: super::super::Foundation::HANDLE) -> HDPA; } - EnableTheming(fenable.into()).ok() + DPA_CreateEx(cpgrow, hheap.into()) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn EndBufferedAnimation<'a, P0>(hbpanimation: isize, fupdatetarget: P0) -> ::windows::core::Result<()> +pub unsafe fn DPA_DeleteAllPtrs<'a, P0>(hdpa: P0) -> super::super::Foundation::BOOL where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn EndBufferedAnimation(hbpanimation: isize, fupdatetarget: super::super::Foundation::BOOL) -> ::windows::core::HRESULT; + fn DPA_DeleteAllPtrs(hdpa: HDPA) -> super::super::Foundation::BOOL; } - EndBufferedAnimation(hbpanimation, fupdatetarget.into()).ok() + DPA_DeleteAllPtrs(hdpa.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn EndBufferedPaint<'a, P0>(hbufferedpaint: isize, fupdatetarget: P0) -> ::windows::core::Result<()> +pub unsafe fn DPA_DeletePtr<'a, P0>(hdpa: P0, i: i32) -> *mut ::core::ffi::c_void where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn EndBufferedPaint(hbufferedpaint: isize, fupdatetarget: super::super::Foundation::BOOL) -> ::windows::core::HRESULT; + fn DPA_DeletePtr(hdpa: HDPA, i: i32) -> *mut ::core::ffi::c_void; } - EndBufferedPaint(hbufferedpaint, fupdatetarget.into()).ok() + DPA_DeletePtr(hdpa.into(), i) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn EndPanningFeedback<'a, P0, P1>(hwnd: P0, fanimateback: P1) -> super::super::Foundation::BOOL +pub unsafe fn DPA_Destroy<'a, P0>(hdpa: P0) -> super::super::Foundation::BOOL where - P0: ::std::convert::Into, - P1: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn EndPanningFeedback(hwnd: super::super::Foundation::HWND, fanimateback: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL; + fn DPA_Destroy(hdpa: HDPA) -> super::super::Foundation::BOOL; } - EndPanningFeedback(hwnd.into(), fanimateback.into()) + DPA_Destroy(hdpa.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn EvaluateProximityToPolygon(controlpolygon: &[super::super::Foundation::POINT], phittestinginput: &TOUCH_HIT_TESTING_INPUT, pproximityeval: &mut TOUCH_HIT_TESTING_PROXIMITY_EVALUATION) -> super::super::Foundation::BOOL { +pub unsafe fn DPA_DestroyCallback<'a, P0>(hdpa: P0, pfncb: PFNDAENUMCALLBACK, pdata: *const ::core::ffi::c_void) +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn EvaluateProximityToPolygon(numvertices: u32, controlpolygon: *const super::super::Foundation::POINT, phittestinginput: *const TOUCH_HIT_TESTING_INPUT, pproximityeval: *mut TOUCH_HIT_TESTING_PROXIMITY_EVALUATION) -> super::super::Foundation::BOOL; + fn DPA_DestroyCallback(hdpa: HDPA, pfncb: *mut ::core::ffi::c_void, pdata: *const ::core::ffi::c_void); } - EvaluateProximityToPolygon(controlpolygon.len() as _, ::core::mem::transmute(controlpolygon.as_ptr()), ::core::mem::transmute(phittestinginput), ::core::mem::transmute(pproximityeval)) + DPA_DestroyCallback(hdpa.into(), ::core::mem::transmute(pfncb), ::core::mem::transmute(pdata)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPA_ERR: i32 = -1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn EvaluateProximityToRect(controlboundingbox: &super::super::Foundation::RECT, phittestinginput: &TOUCH_HIT_TESTING_INPUT, pproximityeval: &mut TOUCH_HIT_TESTING_PROXIMITY_EVALUATION) -> super::super::Foundation::BOOL { +pub unsafe fn DPA_EnumCallback<'a, P0>(hdpa: P0, pfncb: PFNDAENUMCALLBACK, pdata: *const ::core::ffi::c_void) +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn EvaluateProximityToRect(controlboundingbox: *const super::super::Foundation::RECT, phittestinginput: *const TOUCH_HIT_TESTING_INPUT, pproximityeval: *mut TOUCH_HIT_TESTING_PROXIMITY_EVALUATION) -> super::super::Foundation::BOOL; - } - EvaluateProximityToRect(::core::mem::transmute(controlboundingbox), ::core::mem::transmute(phittestinginput), ::core::mem::transmute(pproximityeval)) -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct FEEDBACK_TYPE(pub i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FEEDBACK_TOUCH_CONTACTVISUALIZATION: FEEDBACK_TYPE = FEEDBACK_TYPE(1i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FEEDBACK_PEN_BARRELVISUALIZATION: FEEDBACK_TYPE = FEEDBACK_TYPE(2i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FEEDBACK_PEN_TAP: FEEDBACK_TYPE = FEEDBACK_TYPE(3i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FEEDBACK_PEN_DOUBLETAP: FEEDBACK_TYPE = FEEDBACK_TYPE(4i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FEEDBACK_PEN_PRESSANDHOLD: FEEDBACK_TYPE = FEEDBACK_TYPE(5i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FEEDBACK_PEN_RIGHTTAP: FEEDBACK_TYPE = FEEDBACK_TYPE(6i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FEEDBACK_TOUCH_TAP: FEEDBACK_TYPE = FEEDBACK_TYPE(7i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FEEDBACK_TOUCH_DOUBLETAP: FEEDBACK_TYPE = FEEDBACK_TYPE(8i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FEEDBACK_TOUCH_PRESSANDHOLD: FEEDBACK_TYPE = FEEDBACK_TYPE(9i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FEEDBACK_TOUCH_RIGHTTAP: FEEDBACK_TYPE = FEEDBACK_TYPE(10i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FEEDBACK_GESTURE_PRESSANDTAP: FEEDBACK_TYPE = FEEDBACK_TYPE(11i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FEEDBACK_MAX: FEEDBACK_TYPE = FEEDBACK_TYPE(-1i32); -impl ::core::marker::Copy for FEEDBACK_TYPE {} -impl ::core::clone::Clone for FEEDBACK_TYPE { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for FEEDBACK_TYPE { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for FEEDBACK_TYPE { - type Abi = Self; -} -impl ::core::fmt::Debug for FEEDBACK_TYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("FEEDBACK_TYPE").field(&self.0).finish() + fn DPA_EnumCallback(hdpa: HDPA, pfncb: *mut ::core::ffi::c_void, pdata: *const ::core::ffi::c_void); } + DPA_EnumCallback(hdpa.into(), ::core::mem::transmute(pfncb), ::core::mem::transmute(pdata)) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FILEOPENORD: u32 = 1536u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct FILLTYPE(pub i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FT_SOLID: FILLTYPE = FILLTYPE(0i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FT_VERTGRADIENT: FILLTYPE = FILLTYPE(1i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FT_HORZGRADIENT: FILLTYPE = FILLTYPE(2i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FT_RADIALGRADIENT: FILLTYPE = FILLTYPE(3i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FT_TILEIMAGE: FILLTYPE = FILLTYPE(4i32); -impl ::core::marker::Copy for FILLTYPE {} -impl ::core::clone::Clone for FILLTYPE { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for FILLTYPE { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for FILLTYPE { - type Abi = Self; -} -impl ::core::fmt::Debug for FILLTYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("FILLTYPE").field(&self.0).finish() +#[inline] +pub unsafe fn DPA_GetPtr<'a, P0>(hdpa: P0, i: isize) -> *mut ::core::ffi::c_void +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn DPA_GetPtr(hdpa: HDPA, i: isize) -> *mut ::core::ffi::c_void; } + DPA_GetPtr(hdpa.into(), i) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FINDDLGORD: u32 = 1540u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FONTDLGORD: u32 = 1542u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FORMATDLGORD30: u32 = 1544u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FORMATDLGORD31: u32 = 1543u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FSB_ENCARTA_MODE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FSB_FLAT_MODE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const FSB_REGULAR_MODE: u32 = 0u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn FlatSB_EnableScrollBar<'a, P0>(param0: P0, param1: i32, param2: u32) -> super::super::Foundation::BOOL +pub unsafe fn DPA_GetPtrIndex<'a, P0>(hdpa: P0, p: *const ::core::ffi::c_void) -> i32 where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn FlatSB_EnableScrollBar(param0: super::super::Foundation::HWND, param1: i32, param2: u32) -> super::super::Foundation::BOOL; + fn DPA_GetPtrIndex(hdpa: HDPA, p: *const ::core::ffi::c_void) -> i32; } - FlatSB_EnableScrollBar(param0.into(), param1, param2) + DPA_GetPtrIndex(hdpa.into(), ::core::mem::transmute(p)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn FlatSB_GetScrollInfo<'a, P0>(param0: P0, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, param2: &mut super::WindowsAndMessaging::SCROLLINFO) -> super::super::Foundation::BOOL +pub unsafe fn DPA_GetSize<'a, P0>(hdpa: P0) -> u64 where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn FlatSB_GetScrollInfo(param0: super::super::Foundation::HWND, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, param2: *mut super::WindowsAndMessaging::SCROLLINFO) -> super::super::Foundation::BOOL; + fn DPA_GetSize(hdpa: HDPA) -> u64; } - FlatSB_GetScrollInfo(param0.into(), code, ::core::mem::transmute(param2)) + DPA_GetSize(hdpa.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn FlatSB_GetScrollPos<'a, P0>(param0: P0, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS) -> i32 +pub unsafe fn DPA_Grow<'a, P0>(pdpa: P0, cp: i32) -> super::super::Foundation::BOOL where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn FlatSB_GetScrollPos(param0: super::super::Foundation::HWND, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS) -> i32; + fn DPA_Grow(pdpa: HDPA, cp: i32) -> super::super::Foundation::BOOL; } - FlatSB_GetScrollPos(param0.into(), code) + DPA_Grow(pdpa.into(), cp) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn FlatSB_GetScrollProp<'a, P0>(param0: P0, propindex: WSB_PROP, param2: &mut i32) -> super::super::Foundation::BOOL +pub unsafe fn DPA_InsertPtr<'a, P0>(hdpa: P0, i: i32, p: *const ::core::ffi::c_void) -> i32 where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn FlatSB_GetScrollProp(param0: super::super::Foundation::HWND, propindex: WSB_PROP, param2: *mut i32) -> super::super::Foundation::BOOL; + fn DPA_InsertPtr(hdpa: HDPA, i: i32, p: *const ::core::ffi::c_void) -> i32; } - FlatSB_GetScrollProp(param0.into(), propindex, ::core::mem::transmute(param2)) + DPA_InsertPtr(hdpa.into(), i, ::core::mem::transmute(p)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_System_Com\"`*"] +#[cfg(feature = "Win32_System_Com")] #[inline] -pub unsafe fn FlatSB_GetScrollRange<'a, P0>(param0: P0, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, param2: &mut i32, param3: &mut i32) -> super::super::Foundation::BOOL +pub unsafe fn DPA_LoadStream<'a, P0>(phdpa: &mut HDPA, pfn: PFNDPASTREAM, pstream: P0, pvinstdata: *const ::core::ffi::c_void) -> ::windows::core::Result<()> where - P0: ::std::convert::Into, + P0: ::std::convert::Into<::windows::core::InParam<'a, super::super::System::Com::IStream>>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn FlatSB_GetScrollRange(param0: super::super::Foundation::HWND, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, param2: *mut i32, param3: *mut i32) -> super::super::Foundation::BOOL; + fn DPA_LoadStream(phdpa: *mut HDPA, pfn: *mut ::core::ffi::c_void, pstream: *mut ::core::ffi::c_void, pvinstdata: *const ::core::ffi::c_void) -> ::windows::core::HRESULT; } - FlatSB_GetScrollRange(param0.into(), code, ::core::mem::transmute(param2), ::core::mem::transmute(param3)) + DPA_LoadStream(::core::mem::transmute(phdpa), ::core::mem::transmute(pfn), pstream.into().abi(), ::core::mem::transmute(pvinstdata)).ok() } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn FlatSB_SetScrollInfo<'a, P0, P1>(param0: P0, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, psi: &mut super::WindowsAndMessaging::SCROLLINFO, fredraw: P1) -> i32 +pub unsafe fn DPA_Merge<'a, P0, P1, P2>(hdpadest: P0, hdpasrc: P1, dwflags: u32, pfncompare: PFNDACOMPARE, pfnmerge: PFNDPAMERGE, lparam: P2) -> super::super::Foundation::BOOL where - P0: ::std::convert::Into, - P1: ::std::convert::Into, + P0: ::std::convert::Into, + P1: ::std::convert::Into, + P2: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn FlatSB_SetScrollInfo(param0: super::super::Foundation::HWND, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, psi: *mut super::WindowsAndMessaging::SCROLLINFO, fredraw: super::super::Foundation::BOOL) -> i32; + fn DPA_Merge(hdpadest: HDPA, hdpasrc: HDPA, dwflags: u32, pfncompare: *mut ::core::ffi::c_void, pfnmerge: *mut ::core::ffi::c_void, lparam: super::super::Foundation::LPARAM) -> super::super::Foundation::BOOL; } - FlatSB_SetScrollInfo(param0.into(), code, ::core::mem::transmute(psi), fredraw.into()) + DPA_Merge(hdpadest.into(), hdpasrc.into(), dwflags, ::core::mem::transmute(pfncompare), ::core::mem::transmute(pfnmerge), lparam.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_System_Com\"`*"] +#[cfg(feature = "Win32_System_Com")] #[inline] -pub unsafe fn FlatSB_SetScrollPos<'a, P0, P1>(param0: P0, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, pos: i32, fredraw: P1) -> i32 +pub unsafe fn DPA_SaveStream<'a, P0, P1>(hdpa: P0, pfn: PFNDPASTREAM, pstream: P1, pvinstdata: *const ::core::ffi::c_void) -> ::windows::core::Result<()> where - P0: ::std::convert::Into, - P1: ::std::convert::Into, + P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::InParam<'a, super::super::System::Com::IStream>>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn FlatSB_SetScrollPos(param0: super::super::Foundation::HWND, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, pos: i32, fredraw: super::super::Foundation::BOOL) -> i32; + fn DPA_SaveStream(hdpa: HDPA, pfn: *mut ::core::ffi::c_void, pstream: *mut ::core::ffi::c_void, pvinstdata: *const ::core::ffi::c_void) -> ::windows::core::HRESULT; } - FlatSB_SetScrollPos(param0.into(), code, pos, fredraw.into()) + DPA_SaveStream(hdpa.into(), ::core::mem::transmute(pfn), pstream.into().abi(), ::core::mem::transmute(pvinstdata)).ok() } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn FlatSB_SetScrollProp<'a, P0, P1>(param0: P0, index: WSB_PROP, newvalue: isize, param3: P1) -> super::super::Foundation::BOOL +pub unsafe fn DPA_Search<'a, P0, P1>(hdpa: P0, pfind: *const ::core::ffi::c_void, istart: i32, pfncompare: PFNDACOMPARE, lparam: P1, options: u32) -> i32 where - P0: ::std::convert::Into, - P1: ::std::convert::Into, + P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn FlatSB_SetScrollProp(param0: super::super::Foundation::HWND, index: WSB_PROP, newvalue: isize, param3: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL; + fn DPA_Search(hdpa: HDPA, pfind: *const ::core::ffi::c_void, istart: i32, pfncompare: *mut ::core::ffi::c_void, lparam: super::super::Foundation::LPARAM, options: u32) -> i32; } - FlatSB_SetScrollProp(param0.into(), index, newvalue, param3.into()) + DPA_Search(hdpa.into(), ::core::mem::transmute(pfind), istart, ::core::mem::transmute(pfncompare), lparam.into(), options) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn FlatSB_SetScrollRange<'a, P0, P1>(param0: P0, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, min: i32, max: i32, fredraw: P1) -> i32 +pub unsafe fn DPA_SetPtr<'a, P0>(hdpa: P0, i: i32, p: *const ::core::ffi::c_void) -> super::super::Foundation::BOOL where - P0: ::std::convert::Into, - P1: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn FlatSB_SetScrollRange(param0: super::super::Foundation::HWND, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, min: i32, max: i32, fredraw: super::super::Foundation::BOOL) -> i32; + fn DPA_SetPtr(hdpa: HDPA, i: i32, p: *const ::core::ffi::c_void) -> super::super::Foundation::BOOL; } - FlatSB_SetScrollRange(param0.into(), code, min, max, fredraw.into()) + DPA_SetPtr(hdpa.into(), i, ::core::mem::transmute(p)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn FlatSB_ShowScrollBar<'a, P0, P1>(param0: P0, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, param2: P1) -> super::super::Foundation::BOOL +pub unsafe fn DPA_Sort<'a, P0, P1>(hdpa: P0, pfncompare: PFNDACOMPARE, lparam: P1) -> super::super::Foundation::BOOL where - P0: ::std::convert::Into, - P1: ::std::convert::Into, + P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn FlatSB_ShowScrollBar(param0: super::super::Foundation::HWND, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, param2: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL; + fn DPA_Sort(hdpa: HDPA, pfncompare: *mut ::core::ffi::c_void, lparam: super::super::Foundation::LPARAM) -> super::super::Foundation::BOOL; } - FlatSB_ShowScrollBar(param0.into(), code, param2.into()) + DPA_Sort(hdpa.into(), ::core::mem::transmute(pfncompare), lparam.into()) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GDTR_MAX: u32 = 2u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct DRAGDROPPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GDTR_MIN: u32 = 1u32; +pub const DD_COPY: DRAGDROPPARTS = DRAGDROPPARTS(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GDT_ERROR: i32 = -1i32; +pub const DD_MOVE: DRAGDROPPARTS = DRAGDROPPARTS(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GDT_NONE: u32 = 1u32; +pub const DD_UPDATEMETADATA: DRAGDROPPARTS = DRAGDROPPARTS(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GDT_VALID: u32 = 0u32; +pub const DD_CREATELINK: DRAGDROPPARTS = DRAGDROPPARTS(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct GET_THEME_BITMAP_FLAGS(pub u32); +pub const DD_WARNING: DRAGDROPPARTS = DRAGDROPPARTS(5i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GBF_DIRECT: GET_THEME_BITMAP_FLAGS = GET_THEME_BITMAP_FLAGS(1u32); +pub const DD_NONE: DRAGDROPPARTS = DRAGDROPPARTS(6i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GBF_COPY: GET_THEME_BITMAP_FLAGS = GET_THEME_BITMAP_FLAGS(2u32); +pub const DD_IMAGEBG: DRAGDROPPARTS = DRAGDROPPARTS(7i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GBF_VALIDBITS: GET_THEME_BITMAP_FLAGS = GET_THEME_BITMAP_FLAGS(3u32); -impl ::core::marker::Copy for GET_THEME_BITMAP_FLAGS {} -impl ::core::clone::Clone for GET_THEME_BITMAP_FLAGS { +pub const DD_TEXTBG: DRAGDROPPARTS = DRAGDROPPARTS(8i32); +impl ::core::marker::Copy for DRAGDROPPARTS {} +impl ::core::clone::Clone for DRAGDROPPARTS { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for GET_THEME_BITMAP_FLAGS { +impl ::core::default::Default for DRAGDROPPARTS { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for GET_THEME_BITMAP_FLAGS { +unsafe impl ::windows::core::Abi for DRAGDROPPARTS { type Abi = Self; } -impl ::core::fmt::Debug for GET_THEME_BITMAP_FLAGS { +impl ::core::fmt::Debug for DRAGDROPPARTS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("GET_THEME_BITMAP_FLAGS").field(&self.0).finish() + f.debug_tuple("DRAGDROPPARTS").field(&self.0).finish() } } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct GLYPHFONTSIZINGTYPE(pub i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GFST_NONE: GLYPHFONTSIZINGTYPE = GLYPHFONTSIZINGTYPE(0i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GFST_SIZE: GLYPHFONTSIZINGTYPE = GLYPHFONTSIZINGTYPE(1i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GFST_DPI: GLYPHFONTSIZINGTYPE = GLYPHFONTSIZINGTYPE(2i32); -impl ::core::marker::Copy for GLYPHFONTSIZINGTYPE {} -impl ::core::clone::Clone for GLYPHFONTSIZINGTYPE { +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct DRAGLISTINFO { + pub uNotification: DRAGLISTINFO_NOTIFICATION_FLAGS, + pub hWnd: super::super::Foundation::HWND, + pub ptCursor: super::super::Foundation::POINT, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for DRAGLISTINFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for DRAGLISTINFO { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for GLYPHFONTSIZINGTYPE { - fn default() -> Self { - Self(0) +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for DRAGLISTINFO { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("DRAGLISTINFO").field("uNotification", &self.uNotification).field("hWnd", &self.hWnd).field("ptCursor", &self.ptCursor).finish() } } -unsafe impl ::windows::core::Abi for GLYPHFONTSIZINGTYPE { +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for DRAGLISTINFO { type Abi = Self; } -impl ::core::fmt::Debug for GLYPHFONTSIZINGTYPE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("GLYPHFONTSIZINGTYPE").field(&self.0).finish() +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for DRAGLISTINFO { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for DRAGLISTINFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for DRAGLISTINFO { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct GLYPHTYPE(pub i32); +pub struct DRAGLISTINFO_NOTIFICATION_FLAGS(pub u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GT_NONE: GLYPHTYPE = GLYPHTYPE(0i32); +pub const DL_BEGINDRAG: DRAGLISTINFO_NOTIFICATION_FLAGS = DRAGLISTINFO_NOTIFICATION_FLAGS(1157u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GT_IMAGEGLYPH: GLYPHTYPE = GLYPHTYPE(1i32); +pub const DL_CANCELDRAG: DRAGLISTINFO_NOTIFICATION_FLAGS = DRAGLISTINFO_NOTIFICATION_FLAGS(1160u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GT_FONTGLYPH: GLYPHTYPE = GLYPHTYPE(2i32); -impl ::core::marker::Copy for GLYPHTYPE {} -impl ::core::clone::Clone for GLYPHTYPE { +pub const DL_DRAGGING: DRAGLISTINFO_NOTIFICATION_FLAGS = DRAGLISTINFO_NOTIFICATION_FLAGS(1158u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DL_DROPPED: DRAGLISTINFO_NOTIFICATION_FLAGS = DRAGLISTINFO_NOTIFICATION_FLAGS(1159u32); +impl ::core::marker::Copy for DRAGLISTINFO_NOTIFICATION_FLAGS {} +impl ::core::clone::Clone for DRAGLISTINFO_NOTIFICATION_FLAGS { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for GLYPHTYPE { +impl ::core::default::Default for DRAGLISTINFO_NOTIFICATION_FLAGS { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for GLYPHTYPE { +unsafe impl ::windows::core::Abi for DRAGLISTINFO_NOTIFICATION_FLAGS { type Abi = Self; } -impl ::core::fmt::Debug for GLYPHTYPE { +impl ::core::fmt::Debug for DRAGLISTINFO_NOTIFICATION_FLAGS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("GLYPHTYPE").field(&self.0).finish() + f.debug_tuple("DRAGLISTINFO_NOTIFICATION_FLAGS").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GMR_DAYSTATE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const GMR_VISIBLE: u32 = 0u32; +pub const DRAGLISTMSGSTRING: &str = "commctrl_DragListMsg"; +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +pub struct DRAWITEMSTRUCT { + pub CtlType: DRAWITEMSTRUCT_CTL_TYPE, + pub CtlID: u32, + pub itemID: u32, + pub itemAction: u32, + pub itemState: u32, + pub hwndItem: super::super::Foundation::HWND, + pub hDC: super::super::Graphics::Gdi::HDC, + pub rcItem: super::super::Foundation::RECT, + pub itemData: usize, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::marker::Copy for DRAWITEMSTRUCT {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::clone::Clone for DRAWITEMSTRUCT { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::fmt::Debug for DRAWITEMSTRUCT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("DRAWITEMSTRUCT").field("CtlType", &self.CtlType).field("CtlID", &self.CtlID).field("itemID", &self.itemID).field("itemAction", &self.itemAction).field("itemState", &self.itemState).field("hwndItem", &self.hwndItem).field("hDC", &self.hDC).field("rcItem", &self.rcItem).field("itemData", &self.itemData).finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +unsafe impl ::windows::core::Abi for DRAWITEMSTRUCT { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::PartialEq for DRAWITEMSTRUCT { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::Eq for DRAWITEMSTRUCT {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::default::Default for DRAWITEMSTRUCT { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct GRIDCELLBACKGROUNDSTATES(pub i32); +pub struct DRAWITEMSTRUCT_CTL_TYPE(pub u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCB_SELECTED: GRIDCELLBACKGROUNDSTATES = GRIDCELLBACKGROUNDSTATES(1i32); +pub const ODT_BUTTON: DRAWITEMSTRUCT_CTL_TYPE = DRAWITEMSTRUCT_CTL_TYPE(4u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCB_HOT: GRIDCELLBACKGROUNDSTATES = GRIDCELLBACKGROUNDSTATES(2i32); +pub const ODT_COMBOBOX: DRAWITEMSTRUCT_CTL_TYPE = DRAWITEMSTRUCT_CTL_TYPE(3u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCB_SELECTEDHOT: GRIDCELLBACKGROUNDSTATES = GRIDCELLBACKGROUNDSTATES(3i32); +pub const ODT_LISTBOX: DRAWITEMSTRUCT_CTL_TYPE = DRAWITEMSTRUCT_CTL_TYPE(2u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCB_SELECTEDNOTFOCUSED: GRIDCELLBACKGROUNDSTATES = GRIDCELLBACKGROUNDSTATES(4i32); +pub const ODT_LISTVIEW: DRAWITEMSTRUCT_CTL_TYPE = DRAWITEMSTRUCT_CTL_TYPE(102u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCB_TODAY: GRIDCELLBACKGROUNDSTATES = GRIDCELLBACKGROUNDSTATES(5i32); +pub const ODT_MENU: DRAWITEMSTRUCT_CTL_TYPE = DRAWITEMSTRUCT_CTL_TYPE(1u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCB_TODAYSELECTED: GRIDCELLBACKGROUNDSTATES = GRIDCELLBACKGROUNDSTATES(6i32); -impl ::core::marker::Copy for GRIDCELLBACKGROUNDSTATES {} -impl ::core::clone::Clone for GRIDCELLBACKGROUNDSTATES { +pub const ODT_STATIC: DRAWITEMSTRUCT_CTL_TYPE = DRAWITEMSTRUCT_CTL_TYPE(5u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ODT_TAB: DRAWITEMSTRUCT_CTL_TYPE = DRAWITEMSTRUCT_CTL_TYPE(101u32); +impl ::core::marker::Copy for DRAWITEMSTRUCT_CTL_TYPE {} +impl ::core::clone::Clone for DRAWITEMSTRUCT_CTL_TYPE { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for GRIDCELLBACKGROUNDSTATES { +impl ::core::default::Default for DRAWITEMSTRUCT_CTL_TYPE { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for GRIDCELLBACKGROUNDSTATES { +unsafe impl ::windows::core::Abi for DRAWITEMSTRUCT_CTL_TYPE { type Abi = Self; } -impl ::core::fmt::Debug for GRIDCELLBACKGROUNDSTATES { +impl ::core::fmt::Debug for DRAWITEMSTRUCT_CTL_TYPE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("GRIDCELLBACKGROUNDSTATES").field(&self.0).finish() + f.debug_tuple("DRAWITEMSTRUCT_CTL_TYPE").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct GRIDCELLSTATES(pub i32); +pub struct DRAW_THEME_PARENT_BACKGROUND_FLAGS(pub u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGC_HOT: GRIDCELLSTATES = GRIDCELLSTATES(1i32); +pub const DTPB_WINDOWDC: DRAW_THEME_PARENT_BACKGROUND_FLAGS = DRAW_THEME_PARENT_BACKGROUND_FLAGS(1u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGC_HASSTATE: GRIDCELLSTATES = GRIDCELLSTATES(2i32); +pub const DTPB_USECTLCOLORSTATIC: DRAW_THEME_PARENT_BACKGROUND_FLAGS = DRAW_THEME_PARENT_BACKGROUND_FLAGS(2u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGC_HASSTATEHOT: GRIDCELLSTATES = GRIDCELLSTATES(3i32); +pub const DTPB_USEERASEBKGND: DRAW_THEME_PARENT_BACKGROUND_FLAGS = DRAW_THEME_PARENT_BACKGROUND_FLAGS(4u32); +impl ::core::marker::Copy for DRAW_THEME_PARENT_BACKGROUND_FLAGS {} +impl ::core::clone::Clone for DRAW_THEME_PARENT_BACKGROUND_FLAGS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for DRAW_THEME_PARENT_BACKGROUND_FLAGS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for DRAW_THEME_PARENT_BACKGROUND_FLAGS { + type Abi = Self; +} +impl ::core::fmt::Debug for DRAW_THEME_PARENT_BACKGROUND_FLAGS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("DRAW_THEME_PARENT_BACKGROUND_FLAGS").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for DRAW_THEME_PARENT_BACKGROUND_FLAGS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for DRAW_THEME_PARENT_BACKGROUND_FLAGS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for DRAW_THEME_PARENT_BACKGROUND_FLAGS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for DRAW_THEME_PARENT_BACKGROUND_FLAGS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for DRAW_THEME_PARENT_BACKGROUND_FLAGS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGC_TODAY: GRIDCELLSTATES = GRIDCELLSTATES(4i32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct DROPDOWNBUTTONLEFTSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGC_TODAYSELECTED: GRIDCELLSTATES = GRIDCELLSTATES(5i32); +pub const CBXSL_NORMAL: DROPDOWNBUTTONLEFTSTATES = DROPDOWNBUTTONLEFTSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGC_SELECTED: GRIDCELLSTATES = GRIDCELLSTATES(6i32); +pub const CBXSL_HOT: DROPDOWNBUTTONLEFTSTATES = DROPDOWNBUTTONLEFTSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGC_SELECTEDHOT: GRIDCELLSTATES = GRIDCELLSTATES(7i32); -impl ::core::marker::Copy for GRIDCELLSTATES {} -impl ::core::clone::Clone for GRIDCELLSTATES { +pub const CBXSL_PRESSED: DROPDOWNBUTTONLEFTSTATES = DROPDOWNBUTTONLEFTSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBXSL_DISABLED: DROPDOWNBUTTONLEFTSTATES = DROPDOWNBUTTONLEFTSTATES(4i32); +impl ::core::marker::Copy for DROPDOWNBUTTONLEFTSTATES {} +impl ::core::clone::Clone for DROPDOWNBUTTONLEFTSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for GRIDCELLSTATES { +impl ::core::default::Default for DROPDOWNBUTTONLEFTSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for GRIDCELLSTATES { +unsafe impl ::windows::core::Abi for DROPDOWNBUTTONLEFTSTATES { type Abi = Self; } -impl ::core::fmt::Debug for GRIDCELLSTATES { +impl ::core::fmt::Debug for DROPDOWNBUTTONLEFTSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("GRIDCELLSTATES").field(&self.0).finish() + f.debug_tuple("DROPDOWNBUTTONLEFTSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct GRIDCELLUPPERSTATES(pub i32); +pub struct DROPDOWNBUTTONRIGHTSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCU_HOT: GRIDCELLUPPERSTATES = GRIDCELLUPPERSTATES(1i32); +pub const CBXSR_NORMAL: DROPDOWNBUTTONRIGHTSTATES = DROPDOWNBUTTONRIGHTSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCU_HASSTATE: GRIDCELLUPPERSTATES = GRIDCELLUPPERSTATES(2i32); +pub const CBXSR_HOT: DROPDOWNBUTTONRIGHTSTATES = DROPDOWNBUTTONRIGHTSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCU_HASSTATEHOT: GRIDCELLUPPERSTATES = GRIDCELLUPPERSTATES(3i32); +pub const CBXSR_PRESSED: DROPDOWNBUTTONRIGHTSTATES = DROPDOWNBUTTONRIGHTSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCU_SELECTED: GRIDCELLUPPERSTATES = GRIDCELLUPPERSTATES(4i32); +pub const CBXSR_DISABLED: DROPDOWNBUTTONRIGHTSTATES = DROPDOWNBUTTONRIGHTSTATES(4i32); +impl ::core::marker::Copy for DROPDOWNBUTTONRIGHTSTATES {} +impl ::core::clone::Clone for DROPDOWNBUTTONRIGHTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for DROPDOWNBUTTONRIGHTSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for DROPDOWNBUTTONRIGHTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for DROPDOWNBUTTONRIGHTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("DROPDOWNBUTTONRIGHTSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MCGCU_SELECTEDHOT: GRIDCELLUPPERSTATES = GRIDCELLUPPERSTATES(5i32); -impl ::core::marker::Copy for GRIDCELLUPPERSTATES {} -impl ::core::clone::Clone for GRIDCELLUPPERSTATES { +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct DROPDOWNITEMSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBDI_NORMAL: DROPDOWNITEMSTATES = DROPDOWNITEMSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBDI_HIGHLIGHTED: DROPDOWNITEMSTATES = DROPDOWNITEMSTATES(2i32); +impl ::core::marker::Copy for DROPDOWNITEMSTATES {} +impl ::core::clone::Clone for DROPDOWNITEMSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for GRIDCELLUPPERSTATES { +impl ::core::default::Default for DROPDOWNITEMSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for GRIDCELLUPPERSTATES { +unsafe impl ::windows::core::Abi for DROPDOWNITEMSTATES { type Abi = Self; } -impl ::core::fmt::Debug for GRIDCELLUPPERSTATES { +impl ::core::fmt::Debug for DROPDOWNITEMSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("GRIDCELLUPPERSTATES").field(&self.0).finish() + f.debug_tuple("DROPDOWNITEMSTATES").field(&self.0).finish() } } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DSA_APPEND: u32 = 2147483647u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn GetBufferedPaintBits(hbufferedpaint: isize, ppbbuffer: &mut *mut super::super::Graphics::Gdi::RGBQUAD, pcxrow: &mut i32) -> ::windows::core::Result<()> { +pub unsafe fn DSA_Clone<'a, P0>(hdsa: P0) -> HDSA +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetBufferedPaintBits(hbufferedpaint: isize, ppbbuffer: *mut *mut super::super::Graphics::Gdi::RGBQUAD, pcxrow: *mut i32) -> ::windows::core::HRESULT; + fn DSA_Clone(hdsa: HDSA) -> HDSA; } - GetBufferedPaintBits(hbufferedpaint, ::core::mem::transmute(ppbbuffer), ::core::mem::transmute(pcxrow)).ok() + DSA_Clone(hdsa.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn GetBufferedPaintDC(hbufferedpaint: isize) -> super::super::Graphics::Gdi::HDC { +pub unsafe fn DSA_Create(cbitem: i32, citemgrow: i32) -> HDSA { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetBufferedPaintDC(hbufferedpaint: isize) -> super::super::Graphics::Gdi::HDC; + fn DSA_Create(cbitem: i32, citemgrow: i32) -> HDSA; } - GetBufferedPaintDC(hbufferedpaint) + DSA_Create(cbitem, citemgrow) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetBufferedPaintTargetDC(hbufferedpaint: isize) -> super::super::Graphics::Gdi::HDC { +pub unsafe fn DSA_DeleteAllItems<'a, P0>(hdsa: P0) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetBufferedPaintTargetDC(hbufferedpaint: isize) -> super::super::Graphics::Gdi::HDC; + fn DSA_DeleteAllItems(hdsa: HDSA) -> super::super::Foundation::BOOL; } - GetBufferedPaintTargetDC(hbufferedpaint) + DSA_DeleteAllItems(hdsa.into()) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetBufferedPaintTargetRect(hbufferedpaint: isize) -> ::windows::core::Result { +pub unsafe fn DSA_DeleteItem<'a, P0>(hdsa: P0, i: i32) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetBufferedPaintTargetRect(hbufferedpaint: isize, prc: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT; + fn DSA_DeleteItem(hdsa: HDSA, i: i32) -> super::super::Foundation::BOOL; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetBufferedPaintTargetRect(hbufferedpaint, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DSA_DeleteItem(hdsa.into(), i) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetComboBoxInfo<'a, P0>(hwndcombo: P0, pcbi: &mut COMBOBOXINFO) -> super::super::Foundation::BOOL +pub unsafe fn DSA_Destroy<'a, P0>(hdsa: P0) -> super::super::Foundation::BOOL where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetComboBoxInfo(hwndcombo: super::super::Foundation::HWND, pcbi: *mut COMBOBOXINFO) -> super::super::Foundation::BOOL; + fn DSA_Destroy(hdsa: HDSA) -> super::super::Foundation::BOOL; } - GetComboBoxInfo(hwndcombo.into(), ::core::mem::transmute(pcbi)) + DSA_Destroy(hdsa.into()) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn GetCurrentThemeName(pszthemefilename: &mut [u16], pszcolorbuff: ::core::option::Option<&mut [u16]>, pszsizebuff: ::core::option::Option<&mut [u16]>) -> ::windows::core::Result<()> { +pub unsafe fn DSA_DestroyCallback<'a, P0>(hdsa: P0, pfncb: PFNDAENUMCALLBACK, pdata: *const ::core::ffi::c_void) +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetCurrentThemeName(pszthemefilename: ::windows::core::PWSTR, cchmaxnamechars: i32, pszcolorbuff: ::windows::core::PWSTR, cchmaxcolorchars: i32, pszsizebuff: ::windows::core::PWSTR, cchmaxsizechars: i32) -> ::windows::core::HRESULT; + fn DSA_DestroyCallback(hdsa: HDSA, pfncb: *mut ::core::ffi::c_void, pdata: *const ::core::ffi::c_void); } - GetCurrentThemeName(::core::mem::transmute(pszthemefilename.as_ptr()), pszthemefilename.len() as _, ::core::mem::transmute(pszcolorbuff.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pszcolorbuff.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pszsizebuff.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pszsizebuff.as_deref().map_or(0, |slice| slice.len() as _)).ok() + DSA_DestroyCallback(hdsa.into(), ::core::mem::transmute(pfncb), ::core::mem::transmute(pdata)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DSA_ERR: i32 = -1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn GetEffectiveClientRect<'a, P0>(hwnd: P0, lprc: &mut super::super::Foundation::RECT, lpinfo: &i32) +pub unsafe fn DSA_EnumCallback<'a, P0>(hdsa: P0, pfncb: PFNDAENUMCALLBACK, pdata: *const ::core::ffi::c_void) where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetEffectiveClientRect(hwnd: super::super::Foundation::HWND, lprc: *mut super::super::Foundation::RECT, lpinfo: *const i32); + fn DSA_EnumCallback(hdsa: HDSA, pfncb: *mut ::core::ffi::c_void, pdata: *const ::core::ffi::c_void); } - GetEffectiveClientRect(hwnd.into(), ::core::mem::transmute(lprc), ::core::mem::transmute(lpinfo)) + DSA_EnumCallback(hdsa.into(), ::core::mem::transmute(pfncb), ::core::mem::transmute(pdata)) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetListBoxInfo<'a, P0>(hwnd: P0) -> u32 +pub unsafe fn DSA_GetItem<'a, P0>(hdsa: P0, i: i32, pitem: *mut ::core::ffi::c_void) -> super::super::Foundation::BOOL where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetListBoxInfo(hwnd: super::super::Foundation::HWND) -> u32; - } - GetListBoxInfo(hwnd.into()) -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn GetMUILanguage() -> u16 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetMUILanguage() -> u16; + fn DSA_GetItem(hdsa: HDSA, i: i32, pitem: *mut ::core::ffi::c_void) -> super::super::Foundation::BOOL; } - GetMUILanguage() + DSA_GetItem(hdsa.into(), i, ::core::mem::transmute(pitem)) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn GetThemeAnimationProperty(htheme: isize, istoryboardid: i32, itargetid: i32, eproperty: TA_PROPERTY, pvproperty: ::core::option::Option<&mut [u8]>, pcbsizeout: &mut u32) -> ::windows::core::Result<()> { +pub unsafe fn DSA_GetItemPtr<'a, P0>(hdsa: P0, i: i32) -> *mut ::core::ffi::c_void +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeAnimationProperty(htheme: isize, istoryboardid: i32, itargetid: i32, eproperty: TA_PROPERTY, pvproperty: *mut ::core::ffi::c_void, cbsize: u32, pcbsizeout: *mut u32) -> ::windows::core::HRESULT; + fn DSA_GetItemPtr(hdsa: HDSA, i: i32) -> *mut ::core::ffi::c_void; } - GetThemeAnimationProperty(htheme, istoryboardid, itargetid, eproperty, ::core::mem::transmute(pvproperty.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pvproperty.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pcbsizeout)).ok() + DSA_GetItemPtr(hdsa.into(), i) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn GetThemeAnimationTransform(htheme: isize, istoryboardid: i32, itargetid: i32, dwtransformindex: u32, ptransform: ::core::option::Option<&mut [u8]>, pcbsizeout: &mut u32) -> ::windows::core::Result<()> { +pub unsafe fn DSA_GetSize<'a, P0>(hdsa: P0) -> u64 +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeAnimationTransform(htheme: isize, istoryboardid: i32, itargetid: i32, dwtransformindex: u32, ptransform: *mut TA_TRANSFORM, cbsize: u32, pcbsizeout: *mut u32) -> ::windows::core::HRESULT; + fn DSA_GetSize(hdsa: HDSA) -> u64; } - GetThemeAnimationTransform(htheme, istoryboardid, itargetid, dwtransformindex, ::core::mem::transmute(ptransform.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), ptransform.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pcbsizeout)).ok() + DSA_GetSize(hdsa.into()) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn GetThemeAppProperties() -> u32 { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetThemeAppProperties() -> u32; - } - GetThemeAppProperties() -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -#[inline] -pub unsafe fn GetThemeBackgroundContentRect<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, pboundingrect: &super::super::Foundation::RECT) -> ::windows::core::Result +pub unsafe fn DSA_InsertItem<'a, P0>(hdsa: P0, i: i32, pitem: *const ::core::ffi::c_void) -> i32 where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeBackgroundContentRect(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, pboundingrect: *const super::super::Foundation::RECT, pcontentrect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT; + fn DSA_InsertItem(hdsa: HDSA, i: i32, pitem: *const ::core::ffi::c_void) -> i32; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeBackgroundContentRect(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(pboundingrect), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DSA_InsertItem(hdsa.into(), i, ::core::mem::transmute(pitem)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetThemeBackgroundExtent<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, pcontentrect: &super::super::Foundation::RECT) -> ::windows::core::Result +pub unsafe fn DSA_SetItem<'a, P0>(hdsa: P0, i: i32, pitem: *const ::core::ffi::c_void) -> super::super::Foundation::BOOL where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeBackgroundExtent(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, pcontentrect: *const super::super::Foundation::RECT, pextentrect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT; + fn DSA_SetItem(hdsa: HDSA, i: i32, pitem: *const ::core::ffi::c_void) -> super::super::Foundation::BOOL; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeBackgroundExtent(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(pcontentrect), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DSA_SetItem(hdsa.into(), i, ::core::mem::transmute(pitem)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetThemeBackgroundRegion<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, prect: &super::super::Foundation::RECT) -> ::windows::core::Result +pub unsafe fn DSA_Sort<'a, P0, P1>(pdsa: P0, pfncompare: PFNDACOMPARE, lparam: P1) -> super::super::Foundation::BOOL where - P0: ::std::convert::Into, + P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeBackgroundRegion(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, prect: *const super::super::Foundation::RECT, pregion: *mut super::super::Graphics::Gdi::HRGN) -> ::windows::core::HRESULT; - } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeBackgroundRegion(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(prect), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] -#[inline] -pub unsafe fn GetThemeBitmap(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, dwflags: GET_THEME_BITMAP_FLAGS) -> ::windows::core::Result { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetThemeBitmap(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, dwflags: GET_THEME_BITMAP_FLAGS, phbitmap: *mut super::super::Graphics::Gdi::HBITMAP) -> ::windows::core::HRESULT; + fn DSA_Sort(pdsa: HDSA, pfncompare: *mut ::core::ffi::c_void, lparam: super::super::Foundation::LPARAM) -> super::super::Foundation::BOOL; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeBitmap(htheme, ipartid, istateid, ipropid, dwflags, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DSA_Sort(pdsa.into(), ::core::mem::transmute(pfncompare), lparam.into()) } +#[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn GetThemeBool(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID) -> ::windows::core::Result { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetThemeBool(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pfval: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT; - } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeBool(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +pub struct DTBGOPTS { + pub dwSize: u32, + pub dwFlags: u32, + pub rcClip: super::super::Foundation::RECT, } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn GetThemeColor(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32) -> ::windows::core::Result { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetThemeColor(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pcolor: *mut u32) -> ::windows::core::HRESULT; +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for DTBGOPTS {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for DTBGOPTS { + fn clone(&self) -> Self { + *self } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeColor(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn GetThemeDocumentationProperty<'a, P0, P1>(pszthemename: P0, pszpropertyname: P1, pszvaluebuff: &mut [u16]) -> ::windows::core::Result<()> -where - P0: ::std::convert::Into<::windows::core::PCWSTR>, - P1: ::std::convert::Into<::windows::core::PCWSTR>, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetThemeDocumentationProperty(pszthemename: ::windows::core::PCWSTR, pszpropertyname: ::windows::core::PCWSTR, pszvaluebuff: ::windows::core::PWSTR, cchmaxvalchars: i32) -> ::windows::core::HRESULT; +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for DTBGOPTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("DTBGOPTS").field("dwSize", &self.dwSize).field("dwFlags", &self.dwFlags).field("rcClip", &self.rcClip).finish() } - GetThemeDocumentationProperty(pszthemename.into(), pszpropertyname.into(), ::core::mem::transmute(pszvaluebuff.as_ptr()), pszvaluebuff.len() as _).ok() } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn GetThemeEnumValue(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32) -> ::windows::core::Result { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetThemeEnumValue(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pival: *mut i32) -> ::windows::core::HRESULT; - } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeEnumValue(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for DTBGOPTS { + type Abi = Self; } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn GetThemeFilename(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pszthemefilename: &mut [u16]) -> ::windows::core::Result<()> { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetThemeFilename(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pszthemefilename: ::windows::core::PWSTR, cchmaxbuffchars: i32) -> ::windows::core::HRESULT; +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for DTBGOPTS { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } - GetThemeFilename(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(pszthemefilename.as_ptr()), pszthemefilename.len() as _).ok() } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] -#[inline] -pub unsafe fn GetThemeFont<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, ipropid: i32) -> ::windows::core::Result -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetThemeFont(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, ipropid: i32, pfont: *mut super::super::Graphics::Gdi::LOGFONTW) -> ::windows::core::HRESULT; +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for DTBGOPTS {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for DTBGOPTS { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeFont(htheme, hdc.into(), ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn GetThemeInt(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32) -> ::windows::core::Result { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetThemeInt(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pival: *mut i32) -> ::windows::core::HRESULT; - } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeInt(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) -} +pub const DTBG_CLIPRECT: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn GetThemeIntList(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32) -> ::windows::core::Result { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetThemeIntList(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pintlist: *mut INTLIST) -> ::windows::core::HRESULT; - } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeIntList(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -#[inline] -pub unsafe fn GetThemeMargins<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, ipropid: i32, prc: ::core::option::Option<&super::super::Foundation::RECT>) -> ::windows::core::Result -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetThemeMargins(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, ipropid: i32, prc: *const super::super::Foundation::RECT, pmargins: *mut MARGINS) -> ::windows::core::HRESULT; - } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeMargins(htheme, hdc.into(), ipartid, istateid, ipropid, ::core::mem::transmute(prc), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] -#[inline] -pub unsafe fn GetThemeMetric<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID) -> ::windows::core::Result -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetThemeMetric(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pival: *mut i32) -> ::windows::core::HRESULT; +pub const DTBG_COMPUTINGREGION: u32 = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTBG_DRAWSOLID: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTBG_MIRRORDC: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTBG_NOMIRROR: u32 = 64u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTBG_OMITBORDER: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTBG_OMITCONTENT: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_CLOSEMONTHCAL: u32 = 4109u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_FIRST: u32 = 4096u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_GETDATETIMEPICKERINFO: u32 = 4110u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_GETIDEALSIZE: u32 = 4111u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_GETMCCOLOR: u32 = 4103u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_GETMCFONT: u32 = 4106u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_GETMCSTYLE: u32 = 4108u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_GETMONTHCAL: u32 = 4104u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_GETRANGE: u32 = 4099u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_GETSYSTEMTIME: u32 = 4097u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_SETFORMAT: u32 = 4146u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_SETFORMATA: u32 = 4101u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_SETFORMATW: u32 = 4146u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_SETMCCOLOR: u32 = 4102u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_SETMCFONT: u32 = 4105u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_SETMCSTYLE: u32 = 4107u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_SETRANGE: u32 = 4100u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTM_SETSYSTEMTIME: u32 = 4098u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTS_APPCANPARSE: u32 = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTS_LONGDATEFORMAT: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTS_RIGHTALIGN: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTS_SHORTDATECENTURYFORMAT: u32 = 12u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTS_SHORTDATEFORMAT: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTS_SHOWNONE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTS_TIMEFORMAT: u32 = 9u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTS_UPDOWN: u32 = 1u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +pub struct DTTOPTS { + pub dwSize: u32, + pub dwFlags: DTTOPTS_FLAGS, + pub crText: super::super::Foundation::COLORREF, + pub crBorder: super::super::Foundation::COLORREF, + pub crShadow: super::super::Foundation::COLORREF, + pub iTextShadowType: i32, + pub ptShadowOffset: super::super::Foundation::POINT, + pub iBorderSize: i32, + pub iFontPropId: i32, + pub iColorPropId: i32, + pub iStateId: i32, + pub fApplyOverlay: super::super::Foundation::BOOL, + pub iGlowSize: i32, + pub pfnDrawTextCallback: DTT_CALLBACK_PROC, + pub lParam: super::super::Foundation::LPARAM, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::marker::Copy for DTTOPTS {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::clone::Clone for DTTOPTS { + fn clone(&self) -> Self { + *self } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeMetric(htheme, hdc.into(), ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -#[inline] -pub unsafe fn GetThemePartSize<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, prc: ::core::option::Option<&super::super::Foundation::RECT>, esize: THEMESIZE) -> ::windows::core::Result -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn GetThemePartSize(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, prc: *const super::super::Foundation::RECT, esize: THEMESIZE, psz: *mut super::super::Foundation::SIZE) -> ::windows::core::HRESULT; +impl ::core::fmt::Debug for DTTOPTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("DTTOPTS") + .field("dwSize", &self.dwSize) + .field("dwFlags", &self.dwFlags) + .field("crText", &self.crText) + .field("crBorder", &self.crBorder) + .field("crShadow", &self.crShadow) + .field("iTextShadowType", &self.iTextShadowType) + .field("ptShadowOffset", &self.ptShadowOffset) + .field("iBorderSize", &self.iBorderSize) + .field("iFontPropId", &self.iFontPropId) + .field("iColorPropId", &self.iColorPropId) + .field("iStateId", &self.iStateId) + .field("fApplyOverlay", &self.fApplyOverlay) + .field("iGlowSize", &self.iGlowSize) + .field("pfnDrawTextCallback", &self.pfnDrawTextCallback.map(|f| f as usize)) + .field("lParam", &self.lParam) + .finish() } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemePartSize(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(prc), esize, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +unsafe impl ::windows::core::Abi for DTTOPTS { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::PartialEq for DTTOPTS { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::Eq for DTTOPTS {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::default::Default for DTTOPTS { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct DTTOPTS_FLAGS(pub u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_TEXTCOLOR: DTTOPTS_FLAGS = DTTOPTS_FLAGS(1u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_BORDERCOLOR: DTTOPTS_FLAGS = DTTOPTS_FLAGS(2u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_SHADOWCOLOR: DTTOPTS_FLAGS = DTTOPTS_FLAGS(4u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_SHADOWTYPE: DTTOPTS_FLAGS = DTTOPTS_FLAGS(8u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_SHADOWOFFSET: DTTOPTS_FLAGS = DTTOPTS_FLAGS(16u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_BORDERSIZE: DTTOPTS_FLAGS = DTTOPTS_FLAGS(32u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_FONTPROP: DTTOPTS_FLAGS = DTTOPTS_FLAGS(64u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_COLORPROP: DTTOPTS_FLAGS = DTTOPTS_FLAGS(128u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_STATEID: DTTOPTS_FLAGS = DTTOPTS_FLAGS(256u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_CALCRECT: DTTOPTS_FLAGS = DTTOPTS_FLAGS(512u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_APPLYOVERLAY: DTTOPTS_FLAGS = DTTOPTS_FLAGS(1024u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_GLOWSIZE: DTTOPTS_FLAGS = DTTOPTS_FLAGS(2048u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_CALLBACK: DTTOPTS_FLAGS = DTTOPTS_FLAGS(4096u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_COMPOSITED: DTTOPTS_FLAGS = DTTOPTS_FLAGS(8192u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_VALIDBITS: DTTOPTS_FLAGS = DTTOPTS_FLAGS(12287u32); +impl ::core::marker::Copy for DTTOPTS_FLAGS {} +impl ::core::clone::Clone for DTTOPTS_FLAGS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for DTTOPTS_FLAGS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for DTTOPTS_FLAGS { + type Abi = Self; +} +impl ::core::fmt::Debug for DTTOPTS_FLAGS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("DTTOPTS_FLAGS").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for DTTOPTS_FLAGS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for DTTOPTS_FLAGS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for DTTOPTS_FLAGS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for DTTOPTS_FLAGS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for DTTOPTS_FLAGS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +pub type DTT_CALLBACK_PROC = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_FLAGS2VALIDBITS: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DTT_GRAYED: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetThemePosition(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32) -> ::windows::core::Result { +pub unsafe fn DestroyPropertySheetPage<'a, P0>(param0: P0) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemePosition(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, ppoint: *mut super::super::Foundation::POINT) -> ::windows::core::HRESULT; + fn DestroyPropertySheetPage(param0: HPROPSHEETPAGE) -> super::super::Foundation::BOOL; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemePosition(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DestroyPropertySheetPage(param0.into()) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn GetThemePropertyOrigin(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32) -> ::windows::core::Result { +pub unsafe fn DestroySyntheticPointerDevice<'a, P0>(device: P0) +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemePropertyOrigin(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, porigin: *mut PROPERTYORIGIN) -> ::windows::core::HRESULT; + fn DestroySyntheticPointerDevice(device: HSYNTHETICPOINTERDEVICE); } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemePropertyOrigin(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DestroySyntheticPointerDevice(device.into()) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetThemeRect(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32) -> ::windows::core::Result { +pub unsafe fn DlgDirListA<'a, P0>(hdlg: P0, lppathspec: ::windows::core::PSTR, nidlistbox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32 +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeRect(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, prect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT; + fn DlgDirListA(hdlg: super::super::Foundation::HWND, lppathspec: ::windows::core::PSTR, nidlistbox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeRect(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DlgDirListA(hdlg.into(), ::core::mem::transmute(lppathspec), nidlistbox, nidstaticpath, ufiletype) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetThemeStream<'a, P0>(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, ppvstream: *mut *mut ::core::ffi::c_void, pcbstream: ::core::option::Option<&mut u32>, hinst: P0) -> ::windows::core::Result<()> +pub unsafe fn DlgDirListComboBoxA<'a, P0>(hdlg: P0, lppathspec: ::windows::core::PSTR, nidcombobox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32 where - P0: ::std::convert::Into, + P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeStream(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, ppvstream: *mut *mut ::core::ffi::c_void, pcbstream: *mut u32, hinst: super::super::Foundation::HINSTANCE) -> ::windows::core::HRESULT; + fn DlgDirListComboBoxA(hdlg: super::super::Foundation::HWND, lppathspec: ::windows::core::PSTR, nidcombobox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32; } - GetThemeStream(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(ppvstream), ::core::mem::transmute(pcbstream), hinst.into()).ok() + DlgDirListComboBoxA(hdlg.into(), ::core::mem::transmute(lppathspec), nidcombobox, nidstaticpath, ufiletype) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetThemeString(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pszbuff: &mut [u16]) -> ::windows::core::Result<()> { +pub unsafe fn DlgDirListComboBoxW<'a, P0>(hdlg: P0, lppathspec: ::windows::core::PWSTR, nidcombobox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32 +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeString(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pszbuff: ::windows::core::PWSTR, cchmaxbuffchars: i32) -> ::windows::core::HRESULT; + fn DlgDirListComboBoxW(hdlg: super::super::Foundation::HWND, lppathspec: ::windows::core::PWSTR, nidcombobox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32; } - GetThemeString(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(pszbuff.as_ptr()), pszbuff.len() as _).ok() + DlgDirListComboBoxW(hdlg.into(), ::core::mem::transmute(lppathspec), nidcombobox, nidstaticpath, ufiletype) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetThemeSysBool(htheme: isize, iboolid: i32) -> super::super::Foundation::BOOL { +pub unsafe fn DlgDirListW<'a, P0>(hdlg: P0, lppathspec: ::windows::core::PWSTR, nidlistbox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32 +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeSysBool(htheme: isize, iboolid: i32) -> super::super::Foundation::BOOL; + fn DlgDirListW(hdlg: super::super::Foundation::HWND, lppathspec: ::windows::core::PWSTR, nidlistbox: i32, nidstaticpath: i32, ufiletype: DLG_DIR_LIST_FILE_TYPE) -> i32; } - GetThemeSysBool(htheme, iboolid) + DlgDirListW(hdlg.into(), ::core::mem::transmute(lppathspec), nidlistbox, nidstaticpath, ufiletype) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetThemeSysColor(htheme: isize, icolorid: i32) -> u32 { +pub unsafe fn DlgDirSelectComboBoxExA<'a, P0>(hwnddlg: P0, lpstring: &mut [u8], idcombobox: i32) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeSysColor(htheme: isize, icolorid: i32) -> u32; + fn DlgDirSelectComboBoxExA(hwnddlg: super::super::Foundation::HWND, lpstring: ::windows::core::PSTR, cchout: i32, idcombobox: i32) -> super::super::Foundation::BOOL; } - GetThemeSysColor(htheme, icolorid) + DlgDirSelectComboBoxExA(hwnddlg.into(), ::core::mem::transmute(lpstring.as_ptr()), lpstring.len() as _, idcombobox) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetThemeSysColorBrush(htheme: isize, icolorid: THEME_PROPERTY_SYMBOL_ID) -> super::super::Graphics::Gdi::HBRUSH { +pub unsafe fn DlgDirSelectComboBoxExW<'a, P0>(hwnddlg: P0, lpstring: &mut [u16], idcombobox: i32) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeSysColorBrush(htheme: isize, icolorid: THEME_PROPERTY_SYMBOL_ID) -> super::super::Graphics::Gdi::HBRUSH; + fn DlgDirSelectComboBoxExW(hwnddlg: super::super::Foundation::HWND, lpstring: ::windows::core::PWSTR, cchout: i32, idcombobox: i32) -> super::super::Foundation::BOOL; } - GetThemeSysColorBrush(htheme, icolorid) + DlgDirSelectComboBoxExW(hwnddlg.into(), ::core::mem::transmute(lpstring.as_ptr()), lpstring.len() as _, idcombobox) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetThemeSysFont(htheme: isize, ifontid: THEME_PROPERTY_SYMBOL_ID) -> ::windows::core::Result { +pub unsafe fn DlgDirSelectExA<'a, P0>(hwnddlg: P0, lpstring: &mut [u8], idlistbox: i32) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeSysFont(htheme: isize, ifontid: THEME_PROPERTY_SYMBOL_ID, plf: *mut super::super::Graphics::Gdi::LOGFONTW) -> ::windows::core::HRESULT; + fn DlgDirSelectExA(hwnddlg: super::super::Foundation::HWND, lpstring: ::windows::core::PSTR, chcount: i32, idlistbox: i32) -> super::super::Foundation::BOOL; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeSysFont(htheme, ifontid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DlgDirSelectExA(hwnddlg.into(), ::core::mem::transmute(lpstring.as_ptr()), lpstring.len() as _, idlistbox) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetThemeSysInt(htheme: isize, iintid: i32) -> ::windows::core::Result { +pub unsafe fn DlgDirSelectExW<'a, P0>(hwnddlg: P0, lpstring: &mut [u16], idlistbox: i32) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeSysInt(htheme: isize, iintid: i32, pivalue: *mut i32) -> ::windows::core::HRESULT; + fn DlgDirSelectExW(hwnddlg: super::super::Foundation::HWND, lpstring: ::windows::core::PWSTR, chcount: i32, idlistbox: i32) -> super::super::Foundation::BOOL; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeSysInt(htheme, iintid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DlgDirSelectExW(hwnddlg.into(), ::core::mem::transmute(lpstring.as_ptr()), lpstring.len() as _, idlistbox) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetThemeSysSize(htheme: isize, isizeid: i32) -> i32 { +pub unsafe fn DrawInsert<'a, P0, P1>(handparent: P0, hlb: P1, nitem: i32) +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeSysSize(htheme: isize, isizeid: i32) -> i32; + fn DrawInsert(handparent: super::super::Foundation::HWND, hlb: super::super::Foundation::HWND, nitem: i32); } - GetThemeSysSize(htheme, isizeid) + DrawInsert(handparent.into(), hlb.into(), nitem) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn GetThemeSysString(htheme: isize, istringid: THEME_PROPERTY_SYMBOL_ID, pszstringbuff: &mut [u16]) -> ::windows::core::Result<()> { +pub unsafe fn DrawShadowText<'a, P0, P1, P2>(hdc: P0, psztext: &[u16], prc: &super::super::Foundation::RECT, dwflags: u32, crtext: P1, crshadow: P2, ixoffset: i32, iyoffset: i32) -> i32 +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, + P2: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeSysString(htheme: isize, istringid: THEME_PROPERTY_SYMBOL_ID, pszstringbuff: ::windows::core::PWSTR, cchmaxstringchars: i32) -> ::windows::core::HRESULT; + fn DrawShadowText(hdc: super::super::Graphics::Gdi::HDC, psztext: ::windows::core::PCWSTR, cch: u32, prc: *const super::super::Foundation::RECT, dwflags: u32, crtext: super::super::Foundation::COLORREF, crshadow: super::super::Foundation::COLORREF, ixoffset: i32, iyoffset: i32) -> i32; } - GetThemeSysString(htheme, istringid, ::core::mem::transmute(pszstringbuff.as_ptr()), pszstringbuff.len() as _).ok() + DrawShadowText(hdc.into(), ::core::mem::transmute(psztext.as_ptr()), psztext.len() as _, ::core::mem::transmute(prc), dwflags, crtext.into(), crshadow.into(), ixoffset, iyoffset) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn GetThemeTextExtent<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, psztext: &[u16], dwtextflags: u32, pboundingrect: ::core::option::Option<&super::super::Foundation::RECT>) -> ::windows::core::Result +pub unsafe fn DrawStatusTextA<'a, P0, P1>(hdc: P0, lprc: &mut super::super::Foundation::RECT, psztext: P1, uflags: u32) where P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeTextExtent(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, psztext: ::windows::core::PCWSTR, cchcharcount: i32, dwtextflags: u32, pboundingrect: *const super::super::Foundation::RECT, pextentrect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT; + fn DrawStatusTextA(hdc: super::super::Graphics::Gdi::HDC, lprc: *mut super::super::Foundation::RECT, psztext: ::windows::core::PCSTR, uflags: u32); } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeTextExtent(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(psztext.as_ptr()), psztext.len() as _, dwtextflags, ::core::mem::transmute(pboundingrect), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DrawStatusTextA(hdc.into(), ::core::mem::transmute(lprc), psztext.into(), uflags) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn GetThemeTextMetrics<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32) -> ::windows::core::Result +pub unsafe fn DrawStatusTextW<'a, P0, P1>(hdc: P0, lprc: &mut super::super::Foundation::RECT, psztext: P1, uflags: u32) where P0: ::std::convert::Into, + P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeTextMetrics(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, ptm: *mut super::super::Graphics::Gdi::TEXTMETRICW) -> ::windows::core::HRESULT; + fn DrawStatusTextW(hdc: super::super::Graphics::Gdi::HDC, lprc: *mut super::super::Foundation::RECT, psztext: ::windows::core::PCWSTR, uflags: u32); } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeTextMetrics(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DrawStatusTextW(hdc.into(), ::core::mem::transmute(lprc), psztext.into(), uflags) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn GetThemeTimingFunction(htheme: isize, itimingfunctionid: i32, ptimingfunction: ::core::option::Option<&mut [u8]>, pcbsizeout: &mut u32) -> ::windows::core::Result<()> { +pub unsafe fn DrawThemeBackground<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, prect: &super::super::Foundation::RECT, pcliprect: ::core::option::Option<&super::super::Foundation::RECT>) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeTimingFunction(htheme: isize, itimingfunctionid: i32, ptimingfunction: *mut TA_TIMINGFUNCTION, cbsize: u32, pcbsizeout: *mut u32) -> ::windows::core::HRESULT; + fn DrawThemeBackground(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, prect: *const super::super::Foundation::RECT, pcliprect: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT; } - GetThemeTimingFunction(htheme, itimingfunctionid, ::core::mem::transmute(ptimingfunction.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), ptimingfunction.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pcbsizeout)).ok() + DrawThemeBackground(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(prect), ::core::mem::transmute(pcliprect)).ok() } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn GetThemeTransitionDuration(htheme: isize, ipartid: i32, istateidfrom: i32, istateidto: i32, ipropid: i32) -> ::windows::core::Result { +pub unsafe fn DrawThemeBackgroundEx<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, prect: &super::super::Foundation::RECT, poptions: ::core::option::Option<&DTBGOPTS>) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetThemeTransitionDuration(htheme: isize, ipartid: i32, istateidfrom: i32, istateidto: i32, ipropid: i32, pdwduration: *mut u32) -> ::windows::core::HRESULT; + fn DrawThemeBackgroundEx(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, prect: *const super::super::Foundation::RECT, poptions: *const DTBGOPTS) -> ::windows::core::HRESULT; + } + DrawThemeBackgroundEx(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(prect), ::core::mem::transmute(poptions)).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[inline] +pub unsafe fn DrawThemeEdge<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, pdestrect: &super::super::Foundation::RECT, uedge: u32, uflags: u32) -> ::windows::core::Result +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn DrawThemeEdge(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, pdestrect: *const super::super::Foundation::RECT, uedge: u32, uflags: u32, pcontentrect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT; } let mut result__ = ::core::mem::MaybeUninit::zeroed(); - GetThemeTransitionDuration(htheme, ipartid, istateidfrom, istateidto, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + DrawThemeEdge(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(pdestrect), uedge, uflags, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn GetWindowFeedbackSetting<'a, P0>(hwnd: P0, feedback: FEEDBACK_TYPE, dwflags: u32, psize: &mut u32, config: *mut ::core::ffi::c_void) -> super::super::Foundation::BOOL +pub unsafe fn DrawThemeIcon<'a, P0, P1>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, prect: &super::super::Foundation::RECT, himl: P1, iimageindex: i32) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn DrawThemeIcon(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, prect: *const super::super::Foundation::RECT, himl: HIMAGELIST, iimageindex: i32) -> ::windows::core::HRESULT; + } + DrawThemeIcon(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(prect), himl.into(), iimageindex).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[inline] +pub unsafe fn DrawThemeParentBackground<'a, P0, P1>(hwnd: P0, hdc: P1, prc: ::core::option::Option<&super::super::Foundation::RECT>) -> ::windows::core::Result<()> where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetWindowFeedbackSetting(hwnd: super::super::Foundation::HWND, feedback: FEEDBACK_TYPE, dwflags: u32, psize: *mut u32, config: *mut ::core::ffi::c_void) -> super::super::Foundation::BOOL; + fn DrawThemeParentBackground(hwnd: super::super::Foundation::HWND, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT; } - GetWindowFeedbackSetting(hwnd.into(), feedback, dwflags, ::core::mem::transmute(psize), ::core::mem::transmute(config)) + DrawThemeParentBackground(hwnd.into(), hdc.into(), ::core::mem::transmute(prc)).ok() } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn GetWindowTheme<'a, P0>(hwnd: P0) -> isize +pub unsafe fn DrawThemeParentBackgroundEx<'a, P0, P1>(hwnd: P0, hdc: P1, dwflags: DRAW_THEME_PARENT_BACKGROUND_FLAGS, prc: ::core::option::Option<&super::super::Foundation::RECT>) -> ::windows::core::Result<()> where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetWindowTheme(hwnd: super::super::Foundation::HWND) -> isize; + fn DrawThemeParentBackgroundEx(hwnd: super::super::Foundation::HWND, hdc: super::super::Graphics::Gdi::HDC, dwflags: DRAW_THEME_PARENT_BACKGROUND_FLAGS, prc: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT; } - GetWindowTheme(hwnd.into()) + DrawThemeParentBackgroundEx(hwnd.into(), hdc.into(), dwflags, ::core::mem::transmute(prc)).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[inline] +pub unsafe fn DrawThemeText<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, psztext: &[u16], dwtextflags: u32, dwtextflags2: u32, prect: &super::super::Foundation::RECT) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn DrawThemeText(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, psztext: ::windows::core::PCWSTR, cchtext: i32, dwtextflags: u32, dwtextflags2: u32, prect: *const super::super::Foundation::RECT) -> ::windows::core::HRESULT; + } + DrawThemeText(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(psztext.as_ptr()), psztext.len() as _, dwtextflags, dwtextflags2, ::core::mem::transmute(prect)).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[inline] +pub unsafe fn DrawThemeTextEx<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, psztext: &[u16], dwtextflags: u32, prect: &mut super::super::Foundation::RECT, poptions: ::core::option::Option<&DTTOPTS>) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn DrawThemeTextEx(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, psztext: ::windows::core::PCWSTR, cchtext: i32, dwtextflags: u32, prect: *mut super::super::Foundation::RECT, poptions: *const DTTOPTS) -> ::windows::core::HRESULT; + } + DrawThemeTextEx(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(psztext.as_ptr()), psztext.len() as _, dwtextflags, ::core::mem::transmute(prect), ::core::mem::transmute(poptions)).ok() } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ECM_FIRST: u32 = 5376u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct HALIGN(pub i32); +pub struct EC_ENDOFLINE(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HA_LEFT: HALIGN = HALIGN(0i32); +pub const EC_ENDOFLINE_DETECTFROMCONTENT: EC_ENDOFLINE = EC_ENDOFLINE(0i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HA_CENTER: HALIGN = HALIGN(1i32); +pub const EC_ENDOFLINE_CRLF: EC_ENDOFLINE = EC_ENDOFLINE(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HA_RIGHT: HALIGN = HALIGN(2i32); -impl ::core::marker::Copy for HALIGN {} -impl ::core::clone::Clone for HALIGN { +pub const EC_ENDOFLINE_CR: EC_ENDOFLINE = EC_ENDOFLINE(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EC_ENDOFLINE_LF: EC_ENDOFLINE = EC_ENDOFLINE(3i32); +impl ::core::marker::Copy for EC_ENDOFLINE {} +impl ::core::clone::Clone for EC_ENDOFLINE { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for HALIGN { +impl ::core::default::Default for EC_ENDOFLINE { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for HALIGN { +unsafe impl ::windows::core::Abi for EC_ENDOFLINE { type Abi = Self; } -impl ::core::fmt::Debug for HALIGN { +impl ::core::fmt::Debug for EC_ENDOFLINE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("HALIGN").field(&self.0).finish() + f.debug_tuple("EC_ENDOFLINE").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDFT_HASNOVALUE: u32 = 32768u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDFT_ISDATE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDFT_ISNUMBER: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDFT_ISSTRING: u32 = 0u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_BITMAP: u32 = 8192u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_BITMAP_ON_RIGHT: u32 = 4096u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_CENTER: u32 = 2u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct EC_SEARCHWEB_ENTRYPOINT(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_CHECKBOX: u32 = 64u32; +pub const EC_SEARCHWEB_ENTRYPOINT_EXTERNAL: EC_SEARCHWEB_ENTRYPOINT = EC_SEARCHWEB_ENTRYPOINT(0i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_CHECKED: u32 = 128u32; +pub const EC_SEARCHWEB_ENTRYPOINT_CONTEXTMENU: EC_SEARCHWEB_ENTRYPOINT = EC_SEARCHWEB_ENTRYPOINT(1i32); +impl ::core::marker::Copy for EC_SEARCHWEB_ENTRYPOINT {} +impl ::core::clone::Clone for EC_SEARCHWEB_ENTRYPOINT { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for EC_SEARCHWEB_ENTRYPOINT { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for EC_SEARCHWEB_ENTRYPOINT { + type Abi = Self; +} +impl ::core::fmt::Debug for EC_SEARCHWEB_ENTRYPOINT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("EC_SEARCHWEB_ENTRYPOINT").field(&self.0).finish() + } +} +#[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_FIXEDWIDTH: u32 = 256u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_IMAGE: u32 = 2048u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_JUSTIFYMASK: u32 = 3u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_LEFT: u32 = 0u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_OWNERDRAW: u32 = 32768u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_RIGHT: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_RTLREADING: u32 = 4u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_SORTDOWN: u32 = 512u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_SORTUP: u32 = 1024u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_SPLITBUTTON: u32 = 16777216u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDF_STRING: u32 = 16384u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct HDHITTESTINFO { - pub pt: super::super::Foundation::POINT, - pub flags: u32, - pub iItem: i32, +pub struct EDITBALLOONTIP { + pub cbStruct: u32, + pub pszTitle: ::windows::core::PCWSTR, + pub pszText: ::windows::core::PCWSTR, + pub ttiIcon: EDITBALLOONTIP_ICON, } -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for HDHITTESTINFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for HDHITTESTINFO { +impl ::core::marker::Copy for EDITBALLOONTIP {} +impl ::core::clone::Clone for EDITBALLOONTIP { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for HDHITTESTINFO { +impl ::core::fmt::Debug for EDITBALLOONTIP { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("HDHITTESTINFO").field("pt", &self.pt).field("flags", &self.flags).field("iItem", &self.iItem).finish() + f.debug_struct("EDITBALLOONTIP").field("cbStruct", &self.cbStruct).field("pszTitle", &self.pszTitle).field("pszText", &self.pszText).field("ttiIcon", &self.ttiIcon).finish() } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for HDHITTESTINFO { +unsafe impl ::windows::core::Abi for EDITBALLOONTIP { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for HDHITTESTINFO { +impl ::core::cmp::PartialEq for EDITBALLOONTIP { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for HDHITTESTINFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for HDHITTESTINFO { +impl ::core::cmp::Eq for EDITBALLOONTIP {} +impl ::core::default::Default for EDITBALLOONTIP { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDIS_FOCUSED: u32 = 1u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -pub struct HDITEMA { - pub mask: HDI_MASK, - pub cxy: i32, - pub pszText: ::windows::core::PSTR, - pub hbm: super::super::Graphics::Gdi::HBITMAP, - pub cchTextMax: i32, - pub fmt: i32, - pub lParam: super::super::Foundation::LPARAM, - pub iImage: i32, - pub iOrder: i32, - pub r#type: u32, - pub pvFilter: *mut ::core::ffi::c_void, - pub state: u32, -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::marker::Copy for HDITEMA {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::clone::Clone for HDITEMA { +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct EDITBALLOONTIP_ICON(pub u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTI_ERROR: EDITBALLOONTIP_ICON = EDITBALLOONTIP_ICON(3u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTI_INFO: EDITBALLOONTIP_ICON = EDITBALLOONTIP_ICON(1u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTI_NONE: EDITBALLOONTIP_ICON = EDITBALLOONTIP_ICON(0u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTI_WARNING: EDITBALLOONTIP_ICON = EDITBALLOONTIP_ICON(2u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTI_INFO_LARGE: EDITBALLOONTIP_ICON = EDITBALLOONTIP_ICON(4u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTI_WARNING_LARGE: EDITBALLOONTIP_ICON = EDITBALLOONTIP_ICON(5u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTI_ERROR_LARGE: EDITBALLOONTIP_ICON = EDITBALLOONTIP_ICON(6u32); +impl ::core::marker::Copy for EDITBALLOONTIP_ICON {} +impl ::core::clone::Clone for EDITBALLOONTIP_ICON { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::fmt::Debug for HDITEMA { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("HDITEMA").field("mask", &self.mask).field("cxy", &self.cxy).field("pszText", &self.pszText).field("hbm", &self.hbm).field("cchTextMax", &self.cchTextMax).field("fmt", &self.fmt).field("lParam", &self.lParam).field("iImage", &self.iImage).field("iOrder", &self.iOrder).field("type", &self.r#type).field("pvFilter", &self.pvFilter).field("state", &self.state).finish() +impl ::core::default::Default for EDITBALLOONTIP_ICON { + fn default() -> Self { + Self(0) } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -unsafe impl ::windows::core::Abi for HDITEMA { +unsafe impl ::windows::core::Abi for EDITBALLOONTIP_ICON { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::PartialEq for HDITEMA { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::fmt::Debug for EDITBALLOONTIP_ICON { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("EDITBALLOONTIP_ICON").field(&self.0).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::Eq for HDITEMA {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::default::Default for HDITEMA { +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct EDITBORDER_HSCROLLSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSH_NORMAL: EDITBORDER_HSCROLLSTATES = EDITBORDER_HSCROLLSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSH_HOT: EDITBORDER_HSCROLLSTATES = EDITBORDER_HSCROLLSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSH_FOCUSED: EDITBORDER_HSCROLLSTATES = EDITBORDER_HSCROLLSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSH_DISABLED: EDITBORDER_HSCROLLSTATES = EDITBORDER_HSCROLLSTATES(4i32); +impl ::core::marker::Copy for EDITBORDER_HSCROLLSTATES {} +impl ::core::clone::Clone for EDITBORDER_HSCROLLSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for EDITBORDER_HSCROLLSTATES { fn default() -> Self { - unsafe { ::core::mem::zeroed() } + Self(0) } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -pub struct HDITEMW { - pub mask: HDI_MASK, - pub cxy: i32, - pub pszText: ::windows::core::PWSTR, - pub hbm: super::super::Graphics::Gdi::HBITMAP, - pub cchTextMax: i32, - pub fmt: i32, - pub lParam: super::super::Foundation::LPARAM, - pub iImage: i32, - pub iOrder: i32, - pub r#type: u32, - pub pvFilter: *mut ::core::ffi::c_void, - pub state: u32, +unsafe impl ::windows::core::Abi for EDITBORDER_HSCROLLSTATES { + type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::marker::Copy for HDITEMW {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::clone::Clone for HDITEMW { +impl ::core::fmt::Debug for EDITBORDER_HSCROLLSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("EDITBORDER_HSCROLLSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct EDITBORDER_HVSCROLLSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSHV_NORMAL: EDITBORDER_HVSCROLLSTATES = EDITBORDER_HVSCROLLSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSHV_HOT: EDITBORDER_HVSCROLLSTATES = EDITBORDER_HVSCROLLSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSHV_FOCUSED: EDITBORDER_HVSCROLLSTATES = EDITBORDER_HVSCROLLSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EPSHV_DISABLED: EDITBORDER_HVSCROLLSTATES = EDITBORDER_HVSCROLLSTATES(4i32); +impl ::core::marker::Copy for EDITBORDER_HVSCROLLSTATES {} +impl ::core::clone::Clone for EDITBORDER_HVSCROLLSTATES { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::fmt::Debug for HDITEMW { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("HDITEMW").field("mask", &self.mask).field("cxy", &self.cxy).field("pszText", &self.pszText).field("hbm", &self.hbm).field("cchTextMax", &self.cchTextMax).field("fmt", &self.fmt).field("lParam", &self.lParam).field("iImage", &self.iImage).field("iOrder", &self.iOrder).field("type", &self.r#type).field("pvFilter", &self.pvFilter).field("state", &self.state).finish() +impl ::core::default::Default for EDITBORDER_HVSCROLLSTATES { + fn default() -> Self { + Self(0) } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -unsafe impl ::windows::core::Abi for HDITEMW { +unsafe impl ::windows::core::Abi for EDITBORDER_HVSCROLLSTATES { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::PartialEq for HDITEMW { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::Eq for HDITEMW {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::default::Default for HDITEMW { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for EDITBORDER_HVSCROLLSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("EDITBORDER_HVSCROLLSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct HDI_MASK(pub u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDI_WIDTH: HDI_MASK = HDI_MASK(1u32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDI_HEIGHT: HDI_MASK = HDI_MASK(1u32); +pub struct EDITBORDER_NOSCROLLSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDI_TEXT: HDI_MASK = HDI_MASK(2u32); +pub const EPSN_NORMAL: EDITBORDER_NOSCROLLSTATES = EDITBORDER_NOSCROLLSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDI_FORMAT: HDI_MASK = HDI_MASK(4u32); +pub const EPSN_HOT: EDITBORDER_NOSCROLLSTATES = EDITBORDER_NOSCROLLSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDI_LPARAM: HDI_MASK = HDI_MASK(8u32); +pub const EPSN_FOCUSED: EDITBORDER_NOSCROLLSTATES = EDITBORDER_NOSCROLLSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDI_BITMAP: HDI_MASK = HDI_MASK(16u32); +pub const EPSN_DISABLED: EDITBORDER_NOSCROLLSTATES = EDITBORDER_NOSCROLLSTATES(4i32); +impl ::core::marker::Copy for EDITBORDER_NOSCROLLSTATES {} +impl ::core::clone::Clone for EDITBORDER_NOSCROLLSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for EDITBORDER_NOSCROLLSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for EDITBORDER_NOSCROLLSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for EDITBORDER_NOSCROLLSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("EDITBORDER_NOSCROLLSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDI_IMAGE: HDI_MASK = HDI_MASK(32u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct EDITBORDER_VSCROLLSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDI_DI_SETITEM: HDI_MASK = HDI_MASK(64u32); +pub const EPSV_NORMAL: EDITBORDER_VSCROLLSTATES = EDITBORDER_VSCROLLSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDI_ORDER: HDI_MASK = HDI_MASK(128u32); +pub const EPSV_HOT: EDITBORDER_VSCROLLSTATES = EDITBORDER_VSCROLLSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDI_FILTER: HDI_MASK = HDI_MASK(256u32); +pub const EPSV_FOCUSED: EDITBORDER_VSCROLLSTATES = EDITBORDER_VSCROLLSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDI_STATE: HDI_MASK = HDI_MASK(512u32); -impl ::core::marker::Copy for HDI_MASK {} -impl ::core::clone::Clone for HDI_MASK { +pub const EPSV_DISABLED: EDITBORDER_VSCROLLSTATES = EDITBORDER_VSCROLLSTATES(4i32); +impl ::core::marker::Copy for EDITBORDER_VSCROLLSTATES {} +impl ::core::clone::Clone for EDITBORDER_VSCROLLSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for HDI_MASK { +impl ::core::default::Default for EDITBORDER_VSCROLLSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for HDI_MASK { +unsafe impl ::windows::core::Abi for EDITBORDER_VSCROLLSTATES { type Abi = Self; } -impl ::core::fmt::Debug for HDI_MASK { +impl ::core::fmt::Debug for EDITBORDER_VSCROLLSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("HDI_MASK").field(&self.0).finish() + f.debug_tuple("EDITBORDER_VSCROLLSTATES").field(&self.0).finish() } } -impl ::core::ops::BitOr for HDI_MASK { - type Output = Self; - fn bitor(self, other: Self) -> Self { - Self(self.0 | other.0) +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct EDITPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_EDITTEXT: EDITPARTS = EDITPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_CARET: EDITPARTS = EDITPARTS(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_BACKGROUND: EDITPARTS = EDITPARTS(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_PASSWORD: EDITPARTS = EDITPARTS(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_BACKGROUNDWITHBORDER: EDITPARTS = EDITPARTS(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_EDITBORDER_NOSCROLL: EDITPARTS = EDITPARTS(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_EDITBORDER_HSCROLL: EDITPARTS = EDITPARTS(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_EDITBORDER_VSCROLL: EDITPARTS = EDITPARTS(8i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EP_EDITBORDER_HVSCROLL: EDITPARTS = EDITPARTS(9i32); +impl ::core::marker::Copy for EDITPARTS {} +impl ::core::clone::Clone for EDITPARTS { + fn clone(&self) -> Self { + *self } } -impl ::core::ops::BitAnd for HDI_MASK { - type Output = Self; - fn bitand(self, other: Self) -> Self { - Self(self.0 & other.0) +impl ::core::default::Default for EDITPARTS { + fn default() -> Self { + Self(0) } } -impl ::core::ops::BitOrAssign for HDI_MASK { - fn bitor_assign(&mut self, other: Self) { - self.0.bitor_assign(other.0) - } +unsafe impl ::windows::core::Abi for EDITPARTS { + type Abi = Self; } -impl ::core::ops::BitAndAssign for HDI_MASK { - fn bitand_assign(&mut self, other: Self) { - self.0.bitand_assign(other.0) +impl ::core::fmt::Debug for EDITPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("EDITPARTS").field(&self.0).finish() } } -impl ::core::ops::Not for HDI_MASK { - type Output = Self; - fn not(self) -> Self { - Self(self.0.not()) - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] -pub struct HDLAYOUT { - pub prc: *mut super::super::Foundation::RECT, - pub pwpos: *mut super::WindowsAndMessaging::WINDOWPOS, -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::marker::Copy for HDLAYOUT {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::clone::Clone for HDLAYOUT { +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct EDITTEXTSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_NORMAL: EDITTEXTSTATES = EDITTEXTSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_HOT: EDITTEXTSTATES = EDITTEXTSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_SELECTED: EDITTEXTSTATES = EDITTEXTSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_DISABLED: EDITTEXTSTATES = EDITTEXTSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_FOCUSED: EDITTEXTSTATES = EDITTEXTSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_READONLY: EDITTEXTSTATES = EDITTEXTSTATES(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_ASSIST: EDITTEXTSTATES = EDITTEXTSTATES(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ETS_CUEBANNER: EDITTEXTSTATES = EDITTEXTSTATES(8i32); +impl ::core::marker::Copy for EDITTEXTSTATES {} +impl ::core::clone::Clone for EDITTEXTSTATES { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::fmt::Debug for HDLAYOUT { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("HDLAYOUT").field("prc", &self.prc).field("pwpos", &self.pwpos).finish() +impl ::core::default::Default for EDITTEXTSTATES { + fn default() -> Self { + Self(0) } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] -unsafe impl ::windows::core::Abi for HDLAYOUT { +unsafe impl ::windows::core::Abi for EDITTEXTSTATES { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::cmp::PartialEq for HDLAYOUT { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::fmt::Debug for EDITTEXTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("EDITTEXTSTATES").field(&self.0).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::cmp::Eq for HDLAYOUT {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::default::Default for HDLAYOUT { +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type EDITWORDBREAKPROCA = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub type EDITWORDBREAKPROCW = ::core::option::Option i32>; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct EMPTYMARKUPPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EMP_MARKUPTEXT: EMPTYMARKUPPARTS = EMPTYMARKUPPARTS(1i32); +impl ::core::marker::Copy for EMPTYMARKUPPARTS {} +impl ::core::clone::Clone for EMPTYMARKUPPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for EMPTYMARKUPPARTS { fn default() -> Self { - unsafe { ::core::mem::zeroed() } + Self(0) + } +} +unsafe impl ::windows::core::Abi for EMPTYMARKUPPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for EMPTYMARKUPPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("EMPTYMARKUPPARTS").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_CLEARFILTER: u32 = 4632u32; +pub const EM_CANUNDO: u32 = 198u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_CREATEDRAGIMAGE: u32 = 4624u32; +pub const EM_CHARFROMPOS: u32 = 215u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_DELETEITEM: u32 = 4610u32; +pub const EM_EMPTYUNDOBUFFER: u32 = 205u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_EDITFILTER: u32 = 4631u32; +pub const EM_ENABLEFEATURE: u32 = 218u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_FIRST: u32 = 4608u32; +pub const EM_ENABLESEARCHWEB: u32 = 5390u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_GETBITMAPMARGIN: u32 = 4629u32; +pub const EM_FILELINEFROMCHAR: u32 = 5395u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_GETFOCUSEDITEM: u32 = 4635u32; +pub const EM_FILELINEINDEX: u32 = 5396u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_GETIMAGELIST: u32 = 4617u32; +pub const EM_FILELINELENGTH: u32 = 5397u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_GETITEM: u32 = 4619u32; +pub const EM_FMTLINES: u32 = 200u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_GETITEMA: u32 = 4611u32; +pub const EM_GETCARETINDEX: u32 = 5394u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_GETITEMCOUNT: u32 = 4608u32; +pub const EM_GETCUEBANNER: u32 = 5378u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_GETITEMDROPDOWNRECT: u32 = 4633u32; +pub const EM_GETENDOFLINE: u32 = 5389u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_GETITEMRECT: u32 = 4615u32; +pub const EM_GETEXTENDEDSTYLE: u32 = 5387u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_GETITEMW: u32 = 4619u32; +pub const EM_GETFILELINE: u32 = 5398u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_GETORDERARRAY: u32 = 4625u32; +pub const EM_GETFILELINECOUNT: u32 = 5399u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_GETOVERFLOWRECT: u32 = 4634u32; +pub const EM_GETFIRSTVISIBLELINE: u32 = 206u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_GETUNICODEFORMAT: u32 = 8198u32; +pub const EM_GETHANDLE: u32 = 189u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_HITTEST: u32 = 4614u32; +pub const EM_GETHILITE: u32 = 5382u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_INSERTITEM: u32 = 4618u32; +pub const EM_GETIMESTATUS: u32 = 217u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_INSERTITEMA: u32 = 4609u32; +pub const EM_GETLIMITTEXT: u32 = 213u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_INSERTITEMW: u32 = 4618u32; +pub const EM_GETLINE: u32 = 196u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_LAYOUT: u32 = 4613u32; +pub const EM_GETLINECOUNT: u32 = 186u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_ORDERTOINDEX: u32 = 4623u32; +pub const EM_GETMARGINS: u32 = 212u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_SETBITMAPMARGIN: u32 = 4628u32; +pub const EM_GETMODIFY: u32 = 184u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_SETFILTERCHANGETIMEOUT: u32 = 4630u32; +pub const EM_GETPASSWORDCHAR: u32 = 210u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_SETFOCUSEDITEM: u32 = 4636u32; +pub const EM_GETRECT: u32 = 178u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_SETHOTDIVIDER: u32 = 4627u32; +pub const EM_GETSEL: u32 = 176u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_SETIMAGELIST: u32 = 4616u32; +pub const EM_GETTHUMB: u32 = 190u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_SETITEM: u32 = 4620u32; +pub const EM_GETWORDBREAKPROC: u32 = 209u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_SETITEMA: u32 = 4612u32; +pub const EM_HIDEBALLOONTIP: u32 = 5380u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_SETITEMW: u32 = 4620u32; +pub const EM_LIMITTEXT: u32 = 197u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_SETORDERARRAY: u32 = 4626u32; +pub const EM_LINEFROMCHAR: u32 = 201u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDM_SETUNICODEFORMAT: u32 = 8197u32; -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct HDPA(pub isize); -impl HDPA { - pub fn is_invalid(&self) -> bool { - self.0 == -1 || self.0 == 0 - } -} -impl ::core::default::Default for HDPA { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -impl ::core::clone::Clone for HDPA { - fn clone(&self) -> Self { - *self - } -} -impl ::core::marker::Copy for HDPA {} -impl ::core::fmt::Debug for HDPA { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("HDPA").field(&self.0).finish() - } -} -impl ::core::convert::From<::core::option::Option> for HDPA { - fn from(optional: ::core::option::Option) -> HDPA { - optional.unwrap_or_default() - } -} -unsafe impl ::windows::core::Abi for HDPA { - type Abi = Self; -} -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct HDSA(pub isize); -impl HDSA { - pub fn is_invalid(&self) -> bool { - self.0 == -1 || self.0 == 0 - } -} -impl ::core::default::Default for HDSA { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -impl ::core::clone::Clone for HDSA { - fn clone(&self) -> Self { - *self - } -} -impl ::core::marker::Copy for HDSA {} -impl ::core::fmt::Debug for HDSA { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("HDSA").field(&self.0).finish() - } -} -impl ::core::convert::From<::core::option::Option> for HDSA { - fn from(optional: ::core::option::Option) -> HDSA { - optional.unwrap_or_default() - } -} -unsafe impl ::windows::core::Abi for HDSA { - type Abi = Self; -} +pub const EM_LINEINDEX: u32 = 187u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDSIL_NORMAL: u32 = 0u32; +pub const EM_LINELENGTH: u32 = 193u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDSIL_STATE: u32 = 1u32; +pub const EM_LINESCROLL: u32 = 182u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDS_BUTTONS: u32 = 2u32; +pub const EM_NOSETFOCUS: u32 = 5383u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDS_CHECKBOXES: u32 = 1024u32; +pub const EM_POSFROMCHAR: u32 = 214u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDS_DRAGDROP: u32 = 64u32; +pub const EM_REPLACESEL: u32 = 194u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDS_FILTERBAR: u32 = 256u32; +pub const EM_SCROLL: u32 = 181u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDS_FLAT: u32 = 512u32; +pub const EM_SCROLLCARET: u32 = 183u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDS_FULLDRAG: u32 = 128u32; +pub const EM_SEARCHWEB: u32 = 5391u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDS_HIDDEN: u32 = 8u32; +pub const EM_SETCARETINDEX: u32 = 5393u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDS_HORZ: u32 = 0u32; +pub const EM_SETCUEBANNER: u32 = 5377u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDS_HOTTRACK: u32 = 4u32; +pub const EM_SETENDOFLINE: u32 = 5388u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDS_NOSIZING: u32 = 2048u32; +pub const EM_SETEXTENDEDSTYLE: u32 = 5386u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HDS_OVERFLOW: u32 = 4096u32; -#[repr(C)] +pub const EM_SETHANDLE: u32 = 188u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub struct HD_TEXTFILTERA { - pub pszText: ::windows::core::PSTR, - pub cchTextMax: i32, -} -impl ::core::marker::Copy for HD_TEXTFILTERA {} -impl ::core::clone::Clone for HD_TEXTFILTERA { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for HD_TEXTFILTERA { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("HD_TEXTFILTERA").field("pszText", &self.pszText).field("cchTextMax", &self.cchTextMax).finish() - } -} -unsafe impl ::windows::core::Abi for HD_TEXTFILTERA { - type Abi = Self; -} -impl ::core::cmp::PartialEq for HD_TEXTFILTERA { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for HD_TEXTFILTERA {} -impl ::core::default::Default for HD_TEXTFILTERA { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -#[repr(C)] +pub const EM_SETHILITE: u32 = 5381u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub struct HD_TEXTFILTERW { - pub pszText: ::windows::core::PWSTR, - pub cchTextMax: i32, -} -impl ::core::marker::Copy for HD_TEXTFILTERW {} -impl ::core::clone::Clone for HD_TEXTFILTERW { - fn clone(&self) -> Self { - *self - } -} -impl ::core::fmt::Debug for HD_TEXTFILTERW { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("HD_TEXTFILTERW").field("pszText", &self.pszText).field("cchTextMax", &self.cchTextMax).finish() - } -} -unsafe impl ::windows::core::Abi for HD_TEXTFILTERW { - type Abi = Self; -} -impl ::core::cmp::PartialEq for HD_TEXTFILTERW { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -impl ::core::cmp::Eq for HD_TEXTFILTERW {} -impl ::core::default::Default for HD_TEXTFILTERW { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} +pub const EM_SETIMESTATUS: u32 = 216u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EM_SETLIMITTEXT: u32 = 197u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EM_SETMARGINS: u32 = 211u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EM_SETMODIFY: u32 = 185u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EM_SETPASSWORDCHAR: u32 = 204u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EM_SETREADONLY: u32 = 207u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EM_SETRECT: u32 = 179u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EM_SETRECTNP: u32 = 180u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EM_SETSEL: u32 = 177u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EM_SETTABSTOPS: u32 = 203u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EM_SETWORDBREAKPROC: u32 = 208u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EM_SHOWBALLOONTIP: u32 = 5379u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EM_TAKEFOCUS: u32 = 5384u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EM_UNDO: u32 = 199u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct HEADER_CONTROL_NOTIFICATION_BUTTON(pub u32); +pub struct ENABLE_SCROLL_BAR_ARROWS(pub u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HEADER_CONTROL_NOTIFICATION_BUTTON_LEFT: HEADER_CONTROL_NOTIFICATION_BUTTON = HEADER_CONTROL_NOTIFICATION_BUTTON(0u32); +pub const ESB_DISABLE_BOTH: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(3u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HEADER_CONTROL_NOTIFICATION_BUTTON_RIGHT: HEADER_CONTROL_NOTIFICATION_BUTTON = HEADER_CONTROL_NOTIFICATION_BUTTON(1u32); +pub const ESB_DISABLE_DOWN: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(2u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HEADER_CONTROL_NOTIFICATION_BUTTON_MIDDLE: HEADER_CONTROL_NOTIFICATION_BUTTON = HEADER_CONTROL_NOTIFICATION_BUTTON(2u32); -impl ::core::marker::Copy for HEADER_CONTROL_NOTIFICATION_BUTTON {} -impl ::core::clone::Clone for HEADER_CONTROL_NOTIFICATION_BUTTON { +pub const ESB_DISABLE_LEFT: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(1u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ESB_DISABLE_LTUP: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(1u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ESB_DISABLE_RIGHT: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(2u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ESB_DISABLE_RTDN: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(2u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ESB_DISABLE_UP: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(1u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ESB_ENABLE_BOTH: ENABLE_SCROLL_BAR_ARROWS = ENABLE_SCROLL_BAR_ARROWS(0u32); +impl ::core::marker::Copy for ENABLE_SCROLL_BAR_ARROWS {} +impl ::core::clone::Clone for ENABLE_SCROLL_BAR_ARROWS { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for HEADER_CONTROL_NOTIFICATION_BUTTON { +impl ::core::default::Default for ENABLE_SCROLL_BAR_ARROWS { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for HEADER_CONTROL_NOTIFICATION_BUTTON { +unsafe impl ::windows::core::Abi for ENABLE_SCROLL_BAR_ARROWS { type Abi = Self; } -impl ::core::fmt::Debug for HEADER_CONTROL_NOTIFICATION_BUTTON { +impl ::core::fmt::Debug for ENABLE_SCROLL_BAR_ARROWS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("HEADER_CONTROL_NOTIFICATION_BUTTON").field(&self.0).finish() + f.debug_tuple("ENABLE_SCROLL_BAR_ARROWS").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HHT_ABOVE: u32 = 256u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HHT_BELOW: u32 = 512u32; +pub const ES_EX_ALLOWEOL_CR: i32 = 1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HHT_NOWHERE: u32 = 1u32; +pub const ES_EX_ALLOWEOL_LF: i32 = 2i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HHT_ONDIVIDER: u32 = 4u32; +pub const ES_EX_CONVERT_EOL_ON_PASTE: i32 = 4i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HHT_ONDIVOPEN: u32 = 8u32; +pub const ES_EX_ZOOMABLE: i32 = 16i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HHT_ONDROPDOWN: u32 = 8192u32; +pub const ETDT_DISABLE: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HHT_ONFILTER: u32 = 16u32; +pub const ETDT_ENABLE: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HHT_ONFILTERBUTTON: u32 = 32u32; +pub const ETDT_USEAEROWIZARDTABTEXTURE: u32 = 8u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HHT_ONHEADER: u32 = 2u32; +pub const ETDT_USETABTEXTURE: u32 = 4u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HHT_ONITEMSTATEICON: u32 = 4096u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct EXPANDBUTTONSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HHT_ONOVERFLOW: u32 = 16384u32; +pub const LVEB_NORMAL: EXPANDBUTTONSTATES = EXPANDBUTTONSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HHT_TOLEFT: u32 = 2048u32; +pub const LVEB_HOVER: EXPANDBUTTONSTATES = EXPANDBUTTONSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HHT_TORIGHT: u32 = 1024u32; -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct HIMAGELIST(pub isize); -impl HIMAGELIST { - pub fn is_invalid(&self) -> bool { - self.0 == -1 || self.0 == 0 - } -} -impl ::core::default::Default for HIMAGELIST { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -impl ::core::clone::Clone for HIMAGELIST { +pub const LVEB_PUSHED: EXPANDBUTTONSTATES = EXPANDBUTTONSTATES(3i32); +impl ::core::marker::Copy for EXPANDBUTTONSTATES {} +impl ::core::clone::Clone for EXPANDBUTTONSTATES { fn clone(&self) -> Self { *self } } -impl ::core::marker::Copy for HIMAGELIST {} -impl ::core::fmt::Debug for HIMAGELIST { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("HIMAGELIST").field(&self.0).finish() - } -} -impl ::core::convert::From<::core::option::Option> for HIMAGELIST { - fn from(optional: ::core::option::Option) -> HIMAGELIST { - optional.unwrap_or_default() +impl ::core::default::Default for EXPANDBUTTONSTATES { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for HIMAGELIST { +unsafe impl ::windows::core::Abi for EXPANDBUTTONSTATES { type Abi = Self; } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[inline] -pub unsafe fn HIMAGELIST_QueryInterface<'a, P0>(himl: P0, riid: &::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn HIMAGELIST_QueryInterface(himl: HIMAGELIST, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; +impl ::core::fmt::Debug for EXPANDBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("EXPANDBUTTONSTATES").field(&self.0).finish() } - HIMAGELIST_QueryInterface(himl.into(), ::core::mem::transmute(riid), ::core::mem::transmute(ppv)).ok() } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HIST_ADDTOFAVORITES: u32 = 3u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HIST_BACK: u32 = 0u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HIST_FAVORITES: u32 = 2u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct EXPANDOBUTTONSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HIST_FORWARD: u32 = 1u32; +pub const TDLGEBS_NORMAL: EXPANDOBUTTONSTATES = EXPANDOBUTTONSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HIST_VIEWTREE: u32 = 4u32; +pub const TDLGEBS_HOVER: EXPANDOBUTTONSTATES = EXPANDOBUTTONSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HKCOMB_A: u32 = 8u32; +pub const TDLGEBS_PRESSED: EXPANDOBUTTONSTATES = EXPANDOBUTTONSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HKCOMB_C: u32 = 4u32; +pub const TDLGEBS_EXPANDEDNORMAL: EXPANDOBUTTONSTATES = EXPANDOBUTTONSTATES(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HKCOMB_CA: u32 = 64u32; +pub const TDLGEBS_EXPANDEDHOVER: EXPANDOBUTTONSTATES = EXPANDOBUTTONSTATES(5i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HKCOMB_NONE: u32 = 1u32; +pub const TDLGEBS_EXPANDEDPRESSED: EXPANDOBUTTONSTATES = EXPANDOBUTTONSTATES(6i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HKCOMB_S: u32 = 2u32; +pub const TDLGEBS_NORMALDISABLED: EXPANDOBUTTONSTATES = EXPANDOBUTTONSTATES(7i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HKCOMB_SA: u32 = 32u32; +pub const TDLGEBS_EXPANDEDDISABLED: EXPANDOBUTTONSTATES = EXPANDOBUTTONSTATES(8i32); +impl ::core::marker::Copy for EXPANDOBUTTONSTATES {} +impl ::core::clone::Clone for EXPANDOBUTTONSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for EXPANDOBUTTONSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for EXPANDOBUTTONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for EXPANDOBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("EXPANDOBUTTONSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HKCOMB_SC: u32 = 16u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct EXPLORERBARPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HKCOMB_SCA: u32 = 128u32; +pub const EBP_HEADERBACKGROUND: EXPLORERBARPARTS = EXPLORERBARPARTS(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HKM_GETHOTKEY: u32 = 1026u32; +pub const EBP_HEADERCLOSE: EXPLORERBARPARTS = EXPLORERBARPARTS(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HKM_SETHOTKEY: u32 = 1025u32; +pub const EBP_HEADERPIN: EXPLORERBARPARTS = EXPLORERBARPARTS(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HKM_SETRULES: u32 = 1027u32; +pub const EBP_IEBARMENU: EXPLORERBARPARTS = EXPLORERBARPARTS(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HOTKEYF_ALT: u32 = 4u32; +pub const EBP_NORMALGROUPBACKGROUND: EXPLORERBARPARTS = EXPLORERBARPARTS(5i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HOTKEYF_CONTROL: u32 = 2u32; +pub const EBP_NORMALGROUPCOLLAPSE: EXPLORERBARPARTS = EXPLORERBARPARTS(6i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HOTKEYF_EXT: u32 = 128u32; +pub const EBP_NORMALGROUPEXPAND: EXPLORERBARPARTS = EXPLORERBARPARTS(7i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HOTKEYF_SHIFT: u32 = 1u32; +pub const EBP_NORMALGROUPHEAD: EXPLORERBARPARTS = EXPLORERBARPARTS(8i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HOTKEY_CLASS: &str = "msctls_hotkey32"; +pub const EBP_SPECIALGROUPBACKGROUND: EXPLORERBARPARTS = EXPLORERBARPARTS(9i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HOTKEY_CLASSA: &str = "msctls_hotkey32"; +pub const EBP_SPECIALGROUPCOLLAPSE: EXPLORERBARPARTS = EXPLORERBARPARTS(10i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HOTKEY_CLASSW: &str = "msctls_hotkey32"; +pub const EBP_SPECIALGROUPEXPAND: EXPLORERBARPARTS = EXPLORERBARPARTS(11i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HOVER_DEFAULT: u32 = 4294967295u32; -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct HPROPSHEETPAGE(pub isize); -impl HPROPSHEETPAGE { - pub fn is_invalid(&self) -> bool { - self.0 == -1 || self.0 == 0 - } -} -impl ::core::default::Default for HPROPSHEETPAGE { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } - } -} -impl ::core::clone::Clone for HPROPSHEETPAGE { +pub const EBP_SPECIALGROUPHEAD: EXPLORERBARPARTS = EXPLORERBARPARTS(12i32); +impl ::core::marker::Copy for EXPLORERBARPARTS {} +impl ::core::clone::Clone for EXPLORERBARPARTS { fn clone(&self) -> Self { *self } } -impl ::core::marker::Copy for HPROPSHEETPAGE {} -impl ::core::fmt::Debug for HPROPSHEETPAGE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("HPROPSHEETPAGE").field(&self.0).finish() - } -} -impl ::core::convert::From<::core::option::Option> for HPROPSHEETPAGE { - fn from(optional: ::core::option::Option) -> HPROPSHEETPAGE { - optional.unwrap_or_default() +impl ::core::default::Default for EXPLORERBARPARTS { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for HPROPSHEETPAGE { +unsafe impl ::windows::core::Abi for EXPLORERBARPARTS { type Abi = Self; } -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct HSYNTHETICPOINTERDEVICE(pub isize); -impl HSYNTHETICPOINTERDEVICE { - pub fn is_invalid(&self) -> bool { - self.0 == -1 || self.0 == 0 +impl ::core::fmt::Debug for EXPLORERBARPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("EXPLORERBARPARTS").field(&self.0).finish() } } -impl ::core::default::Default for HSYNTHETICPOINTERDEVICE { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[inline] +pub unsafe fn EnableScrollBar<'a, P0>(hwnd: P0, wsbflags: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, warrows: ENABLE_SCROLL_BAR_ARROWS) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn EnableScrollBar(hwnd: super::super::Foundation::HWND, wsbflags: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, warrows: ENABLE_SCROLL_BAR_ARROWS) -> super::super::Foundation::BOOL; } + EnableScrollBar(hwnd.into(), wsbflags, warrows) } -impl ::core::clone::Clone for HSYNTHETICPOINTERDEVICE { - fn clone(&self) -> Self { - *self +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn EnableThemeDialogTexture<'a, P0>(hwnd: P0, dwflags: u32) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn EnableThemeDialogTexture(hwnd: super::super::Foundation::HWND, dwflags: u32) -> ::windows::core::HRESULT; } + EnableThemeDialogTexture(hwnd.into(), dwflags).ok() } -impl ::core::marker::Copy for HSYNTHETICPOINTERDEVICE {} -impl ::core::fmt::Debug for HSYNTHETICPOINTERDEVICE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("HSYNTHETICPOINTERDEVICE").field(&self.0).finish() - } -} -impl ::core::convert::From<::core::option::Option> for HSYNTHETICPOINTERDEVICE { - fn from(optional: ::core::option::Option) -> HSYNTHETICPOINTERDEVICE { - optional.unwrap_or_default() +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn EnableTheming<'a, P0>(fenable: P0) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn EnableTheming(fenable: super::super::Foundation::BOOL) -> ::windows::core::HRESULT; } + EnableTheming(fenable.into()).ok() } -unsafe impl ::windows::core::Abi for HSYNTHETICPOINTERDEVICE { - type Abi = Self; -} -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct HTREEITEM(pub isize); -impl ::core::default::Default for HTREEITEM { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn EndBufferedAnimation<'a, P0>(hbpanimation: isize, fupdatetarget: P0) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn EndBufferedAnimation(hbpanimation: isize, fupdatetarget: super::super::Foundation::BOOL) -> ::windows::core::HRESULT; } + EndBufferedAnimation(hbpanimation, fupdatetarget.into()).ok() } -impl ::core::clone::Clone for HTREEITEM { - fn clone(&self) -> Self { - *self +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn EndBufferedPaint<'a, P0>(hbufferedpaint: isize, fupdatetarget: P0) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn EndBufferedPaint(hbufferedpaint: isize, fupdatetarget: super::super::Foundation::BOOL) -> ::windows::core::HRESULT; } + EndBufferedPaint(hbufferedpaint, fupdatetarget.into()).ok() } -impl ::core::marker::Copy for HTREEITEM {} -impl ::core::fmt::Debug for HTREEITEM { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("HTREEITEM").field(&self.0).finish() +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn EndPanningFeedback<'a, P0, P1>(hwnd: P0, fanimateback: P1) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn EndPanningFeedback(hwnd: super::super::Foundation::HWND, fanimateback: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL; } + EndPanningFeedback(hwnd.into(), fanimateback.into()) } -impl ::core::convert::From<::core::option::Option> for HTREEITEM { - fn from(optional: ::core::option::Option) -> HTREEITEM { - optional.unwrap_or_default() +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn EvaluateProximityToPolygon(controlpolygon: &[super::super::Foundation::POINT], phittestinginput: &TOUCH_HIT_TESTING_INPUT, pproximityeval: &mut TOUCH_HIT_TESTING_PROXIMITY_EVALUATION) -> super::super::Foundation::BOOL { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn EvaluateProximityToPolygon(numvertices: u32, controlpolygon: *const super::super::Foundation::POINT, phittestinginput: *const TOUCH_HIT_TESTING_INPUT, pproximityeval: *mut TOUCH_HIT_TESTING_PROXIMITY_EVALUATION) -> super::super::Foundation::BOOL; } + EvaluateProximityToPolygon(controlpolygon.len() as _, ::core::mem::transmute(controlpolygon.as_ptr()), ::core::mem::transmute(phittestinginput), ::core::mem::transmute(pproximityeval)) } -unsafe impl ::windows::core::Abi for HTREEITEM { - type Abi = Self; +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn EvaluateProximityToRect(controlboundingbox: &super::super::Foundation::RECT, phittestinginput: &TOUCH_HIT_TESTING_INPUT, pproximityeval: &mut TOUCH_HIT_TESTING_PROXIMITY_EVALUATION) -> super::super::Foundation::BOOL { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn EvaluateProximityToRect(controlboundingbox: *const super::super::Foundation::RECT, phittestinginput: *const TOUCH_HIT_TESTING_INPUT, pproximityeval: *mut TOUCH_HIT_TESTING_PROXIMITY_EVALUATION) -> super::super::Foundation::BOOL; + } + EvaluateProximityToRect(::core::mem::transmute(controlboundingbox), ::core::mem::transmute(phittestinginput), ::core::mem::transmute(pproximityeval)) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HTTB_BACKGROUNDSEG: u32 = 0u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct FEEDBACK_TYPE(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HTTB_CAPTION: u32 = 4u32; +pub const FEEDBACK_TOUCH_CONTACTVISUALIZATION: FEEDBACK_TYPE = FEEDBACK_TYPE(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HTTB_FIXEDBORDER: u32 = 2u32; +pub const FEEDBACK_PEN_BARRELVISUALIZATION: FEEDBACK_TYPE = FEEDBACK_TYPE(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HTTB_RESIZINGBORDER_BOTTOM: u32 = 128u32; +pub const FEEDBACK_PEN_TAP: FEEDBACK_TYPE = FEEDBACK_TYPE(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HTTB_RESIZINGBORDER_LEFT: u32 = 16u32; +pub const FEEDBACK_PEN_DOUBLETAP: FEEDBACK_TYPE = FEEDBACK_TYPE(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HTTB_RESIZINGBORDER_RIGHT: u32 = 64u32; +pub const FEEDBACK_PEN_PRESSANDHOLD: FEEDBACK_TYPE = FEEDBACK_TYPE(5i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HTTB_RESIZINGBORDER_TOP: u32 = 32u32; +pub const FEEDBACK_PEN_RIGHTTAP: FEEDBACK_TYPE = FEEDBACK_TYPE(6i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HTTB_SIZINGTEMPLATE: u32 = 256u32; +pub const FEEDBACK_TOUCH_TAP: FEEDBACK_TYPE = FEEDBACK_TYPE(7i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HTTB_SYSTEMSIZINGMARGINS: u32 = 512u32; +pub const FEEDBACK_TOUCH_DOUBLETAP: FEEDBACK_TYPE = FEEDBACK_TYPE(8i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct HYPERLINKSTATES(pub i32); +pub const FEEDBACK_TOUCH_PRESSANDHOLD: FEEDBACK_TYPE = FEEDBACK_TYPE(9i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HLS_NORMALTEXT: HYPERLINKSTATES = HYPERLINKSTATES(1i32); +pub const FEEDBACK_TOUCH_RIGHTTAP: FEEDBACK_TYPE = FEEDBACK_TYPE(10i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const HLS_LINKTEXT: HYPERLINKSTATES = HYPERLINKSTATES(2i32); -impl ::core::marker::Copy for HYPERLINKSTATES {} -impl ::core::clone::Clone for HYPERLINKSTATES { +pub const FEEDBACK_GESTURE_PRESSANDTAP: FEEDBACK_TYPE = FEEDBACK_TYPE(11i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FEEDBACK_MAX: FEEDBACK_TYPE = FEEDBACK_TYPE(-1i32); +impl ::core::marker::Copy for FEEDBACK_TYPE {} +impl ::core::clone::Clone for FEEDBACK_TYPE { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for HYPERLINKSTATES { +impl ::core::default::Default for FEEDBACK_TYPE { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for HYPERLINKSTATES { +unsafe impl ::windows::core::Abi for FEEDBACK_TYPE { type Abi = Self; } -impl ::core::fmt::Debug for HYPERLINKSTATES { +impl ::core::fmt::Debug for FEEDBACK_TYPE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("HYPERLINKSTATES").field(&self.0).finish() + f.debug_tuple("FEEDBACK_TYPE").field(&self.0).finish() } } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -#[inline] -pub unsafe fn HitTestThemeBackground<'a, P0, P1>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, dwoptions: u32, prect: &super::super::Foundation::RECT, hrgn: P1, pttest: super::super::Foundation::POINT) -> ::windows::core::Result -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn HitTestThemeBackground(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, dwoptions: u32, prect: *const super::super::Foundation::RECT, hrgn: super::super::Graphics::Gdi::HRGN, pttest: super::super::Foundation::POINT, pwhittestcode: *mut u16) -> ::windows::core::HRESULT; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FILEOPENORD: u32 = 1536u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct FILLSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBFS_NORMAL: FILLSTATES = FILLSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBFS_ERROR: FILLSTATES = FILLSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBFS_PAUSED: FILLSTATES = FILLSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBFS_PARTIAL: FILLSTATES = FILLSTATES(4i32); +impl ::core::marker::Copy for FILLSTATES {} +impl ::core::clone::Clone for FILLSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for FILLSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for FILLSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for FILLSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("FILLSTATES").field(&self.0).finish() } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - HitTestThemeBackground(htheme, hdc.into(), ipartid, istateid, dwoptions, ::core::mem::transmute(prect), hrgn.into(), ::core::mem::transmute(pttest), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct ICONEFFECT(pub i32); +pub struct FILLTYPE(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ICE_NONE: ICONEFFECT = ICONEFFECT(0i32); +pub const FT_SOLID: FILLTYPE = FILLTYPE(0i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ICE_GLOW: ICONEFFECT = ICONEFFECT(1i32); +pub const FT_VERTGRADIENT: FILLTYPE = FILLTYPE(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ICE_SHADOW: ICONEFFECT = ICONEFFECT(2i32); +pub const FT_HORZGRADIENT: FILLTYPE = FILLTYPE(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ICE_PULSE: ICONEFFECT = ICONEFFECT(3i32); +pub const FT_RADIALGRADIENT: FILLTYPE = FILLTYPE(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ICE_ALPHA: ICONEFFECT = ICONEFFECT(4i32); -impl ::core::marker::Copy for ICONEFFECT {} -impl ::core::clone::Clone for ICONEFFECT { +pub const FT_TILEIMAGE: FILLTYPE = FILLTYPE(4i32); +impl ::core::marker::Copy for FILLTYPE {} +impl ::core::clone::Clone for FILLTYPE { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for ICONEFFECT { +impl ::core::default::Default for FILLTYPE { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for ICONEFFECT { +unsafe impl ::windows::core::Abi for FILLTYPE { type Abi = Self; } -impl ::core::fmt::Debug for ICONEFFECT { +impl ::core::fmt::Debug for FILLTYPE { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ICONEFFECT").field(&self.0).finish() + f.debug_tuple("FILLTYPE").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const IDB_HIST_DISABLED: u32 = 14u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct FILLVERTSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const IDB_HIST_HOT: u32 = 13u32; +pub const PBFVS_NORMAL: FILLVERTSTATES = FILLVERTSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const IDB_HIST_LARGE_COLOR: u32 = 9u32; +pub const PBFVS_ERROR: FILLVERTSTATES = FILLVERTSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const IDB_HIST_NORMAL: u32 = 12u32; +pub const PBFVS_PAUSED: FILLVERTSTATES = FILLVERTSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const IDB_HIST_PRESSED: u32 = 15u32; +pub const PBFVS_PARTIAL: FILLVERTSTATES = FILLVERTSTATES(4i32); +impl ::core::marker::Copy for FILLVERTSTATES {} +impl ::core::clone::Clone for FILLVERTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for FILLVERTSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for FILLVERTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for FILLVERTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("FILLVERTSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const IDB_HIST_SMALL_COLOR: u32 = 8u32; +pub const FINDDLGORD: u32 = 1540u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const IDB_STD_LARGE_COLOR: u32 = 1u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct FLYOUTPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const IDB_STD_SMALL_COLOR: u32 = 0u32; +pub const FLYOUT_HEADER: FLYOUTPARTS = FLYOUTPARTS(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const IDB_VIEW_LARGE_COLOR: u32 = 5u32; +pub const FLYOUT_BODY: FLYOUTPARTS = FLYOUTPARTS(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const IDB_VIEW_SMALL_COLOR: u32 = 4u32; +pub const FLYOUT_LABEL: FLYOUTPARTS = FLYOUTPARTS(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const IDC_MANAGE_LINK: u32 = 1592u32; +pub const FLYOUT_LINK: FLYOUTPARTS = FLYOUTPARTS(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ID_PSRESTARTWINDOWS: u32 = 2u32; +pub const FLYOUT_DIVIDER: FLYOUTPARTS = FLYOUTPARTS(5i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -pub struct IImageList(::windows::core::IUnknown); -impl IImageList { - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - #[cfg(feature = "Win32_Graphics_Gdi")] - pub unsafe fn Add<'a, P0, P1>(&self, hbmimage: P0, hbmmask: P1) -> ::windows::core::Result - where - P0: ::std::convert::Into, - P1: ::std::convert::Into, - { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).Add)(::windows::core::Interface::as_raw(self), hbmimage.into(), hbmmask.into(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +pub const FLYOUT_WINDOW: FLYOUTPARTS = FLYOUTPARTS(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLYOUT_LINKAREA: FLYOUTPARTS = FLYOUTPARTS(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLYOUT_LINKHEADER: FLYOUTPARTS = FLYOUTPARTS(8i32); +impl ::core::marker::Copy for FLYOUTPARTS {} +impl ::core::clone::Clone for FLYOUTPARTS { + fn clone(&self) -> Self { + *self } - #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] - #[cfg(feature = "Win32_UI_WindowsAndMessaging")] - pub unsafe fn ReplaceIcon<'a, P0>(&self, i: i32, hicon: P0) -> ::windows::core::Result - where - P0: ::std::convert::Into, - { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).ReplaceIcon)(::windows::core::Interface::as_raw(self), i, hicon.into(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +impl ::core::default::Default for FLYOUTPARTS { + fn default() -> Self { + Self(0) } - pub unsafe fn SetOverlayImage(&self, iimage: i32, ioverlay: i32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetOverlayImage)(::windows::core::Interface::as_raw(self), iimage, ioverlay).ok() +} +unsafe impl ::windows::core::Abi for FLYOUTPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for FLYOUTPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("FLYOUTPARTS").field(&self.0).finish() } - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - #[cfg(feature = "Win32_Graphics_Gdi")] - pub unsafe fn Replace<'a, P0, P1>(&self, i: i32, hbmimage: P0, hbmmask: P1) -> ::windows::core::Result<()> - where - P0: ::std::convert::Into, - P1: ::std::convert::Into, - { - (::windows::core::Interface::vtable(self).Replace)(::windows::core::Interface::as_raw(self), i, hbmimage.into(), hbmmask.into()).ok() - } - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - #[cfg(feature = "Win32_Graphics_Gdi")] - pub unsafe fn AddMasked<'a, P0>(&self, hbmimage: P0, crmask: u32) -> ::windows::core::Result - where - P0: ::std::convert::Into, - { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).AddMasked)(::windows::core::Interface::as_raw(self), hbmimage.into(), crmask, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) - } - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - #[cfg(feature = "Win32_Graphics_Gdi")] - pub unsafe fn Draw(&self, pimldp: &IMAGELISTDRAWPARAMS) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).Draw)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pimldp)).ok() - } - pub unsafe fn Remove(&self, i: i32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).Remove)(::windows::core::Interface::as_raw(self), i).ok() - } - #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] - #[cfg(feature = "Win32_UI_WindowsAndMessaging")] - pub unsafe fn GetIcon(&self, i: i32, flags: u32) -> ::windows::core::Result { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetIcon)(::windows::core::Interface::as_raw(self), i, flags, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) - } - #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] - #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] - pub unsafe fn GetImageInfo(&self, i: i32) -> ::windows::core::Result { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetImageInfo)(::windows::core::Interface::as_raw(self), i, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) - } - pub unsafe fn Copy<'a, P0>(&self, idst: i32, punksrc: P0, isrc: i32, uflags: u32) -> ::windows::core::Result<()> - where - P0: ::std::convert::Into<::windows::core::InParam<'a, ::windows::core::IUnknown>>, - { - (::windows::core::Interface::vtable(self).Copy)(::windows::core::Interface::as_raw(self), idst, punksrc.into().abi(), isrc, uflags).ok() - } - pub unsafe fn Merge<'a, P0>(&self, i1: i32, punk2: P0, i2: i32, dx: i32, dy: i32, riid: &::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> - where - P0: ::std::convert::Into<::windows::core::InParam<'a, ::windows::core::IUnknown>>, - { - (::windows::core::Interface::vtable(self).Merge)(::windows::core::Interface::as_raw(self), i1, punk2.into().abi(), i2, dx, dy, ::core::mem::transmute(riid), ::core::mem::transmute(ppv)).ok() - } - pub unsafe fn Clone(&self, riid: &::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).Clone)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(riid), ::core::mem::transmute(ppv)).ok() - } - #[doc = "*Required features: `\"Win32_Foundation\"`*"] - #[cfg(feature = "Win32_Foundation")] - pub unsafe fn GetImageRect(&self, i: i32) -> ::windows::core::Result { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetImageRect)(::windows::core::Interface::as_raw(self), i, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) - } - pub unsafe fn GetIconSize(&self, cx: &mut i32, cy: &mut i32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).GetIconSize)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(cx), ::core::mem::transmute(cy)).ok() - } - pub unsafe fn SetIconSize(&self, cx: i32, cy: i32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetIconSize)(::windows::core::Interface::as_raw(self), cx, cy).ok() - } - pub unsafe fn GetImageCount(&self) -> ::windows::core::Result { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetImageCount)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) - } - pub unsafe fn SetImageCount(&self, unewcount: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetImageCount)(::windows::core::Interface::as_raw(self), unewcount).ok() - } - pub unsafe fn SetBkColor(&self, clrbk: u32) -> ::windows::core::Result { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).SetBkColor)(::windows::core::Interface::as_raw(self), clrbk, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) - } - pub unsafe fn GetBkColor(&self) -> ::windows::core::Result { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetBkColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FONTDLGORD: u32 = 1542u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FORMATDLGORD30: u32 = 1544u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FORMATDLGORD31: u32 = 1543u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct FRAMEBOTTOMSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FRB_ACTIVE: FRAMEBOTTOMSTATES = FRAMEBOTTOMSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FRB_INACTIVE: FRAMEBOTTOMSTATES = FRAMEBOTTOMSTATES(2i32); +impl ::core::marker::Copy for FRAMEBOTTOMSTATES {} +impl ::core::clone::Clone for FRAMEBOTTOMSTATES { + fn clone(&self) -> Self { + *self } - pub unsafe fn BeginDrag(&self, itrack: i32, dxhotspot: i32, dyhotspot: i32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).BeginDrag)(::windows::core::Interface::as_raw(self), itrack, dxhotspot, dyhotspot).ok() +} +impl ::core::default::Default for FRAMEBOTTOMSTATES { + fn default() -> Self { + Self(0) } - pub unsafe fn EndDrag(&self) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).EndDrag)(::windows::core::Interface::as_raw(self)).ok() +} +unsafe impl ::windows::core::Abi for FRAMEBOTTOMSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for FRAMEBOTTOMSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("FRAMEBOTTOMSTATES").field(&self.0).finish() } - #[doc = "*Required features: `\"Win32_Foundation\"`*"] - #[cfg(feature = "Win32_Foundation")] - pub unsafe fn DragEnter<'a, P0>(&self, hwndlock: P0, x: i32, y: i32) -> ::windows::core::Result<()> - where - P0: ::std::convert::Into, - { - (::windows::core::Interface::vtable(self).DragEnter)(::windows::core::Interface::as_raw(self), hwndlock.into(), x, y).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct FRAMELEFTSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FRL_ACTIVE: FRAMELEFTSTATES = FRAMELEFTSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FRL_INACTIVE: FRAMELEFTSTATES = FRAMELEFTSTATES(2i32); +impl ::core::marker::Copy for FRAMELEFTSTATES {} +impl ::core::clone::Clone for FRAMELEFTSTATES { + fn clone(&self) -> Self { + *self } - #[doc = "*Required features: `\"Win32_Foundation\"`*"] - #[cfg(feature = "Win32_Foundation")] - pub unsafe fn DragLeave<'a, P0>(&self, hwndlock: P0) -> ::windows::core::Result<()> - where - P0: ::std::convert::Into, - { - (::windows::core::Interface::vtable(self).DragLeave)(::windows::core::Interface::as_raw(self), hwndlock.into()).ok() +} +impl ::core::default::Default for FRAMELEFTSTATES { + fn default() -> Self { + Self(0) } - pub unsafe fn DragMove(&self, x: i32, y: i32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).DragMove)(::windows::core::Interface::as_raw(self), x, y).ok() +} +unsafe impl ::windows::core::Abi for FRAMELEFTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for FRAMELEFTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("FRAMELEFTSTATES").field(&self.0).finish() } - pub unsafe fn SetDragCursorImage<'a, P0>(&self, punk: P0, idrag: i32, dxhotspot: i32, dyhotspot: i32) -> ::windows::core::Result<()> - where - P0: ::std::convert::Into<::windows::core::InParam<'a, ::windows::core::IUnknown>>, - { - (::windows::core::Interface::vtable(self).SetDragCursorImage)(::windows::core::Interface::as_raw(self), punk.into().abi(), idrag, dxhotspot, dyhotspot).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct FRAMERIGHTSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FRR_ACTIVE: FRAMERIGHTSTATES = FRAMERIGHTSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FRR_INACTIVE: FRAMERIGHTSTATES = FRAMERIGHTSTATES(2i32); +impl ::core::marker::Copy for FRAMERIGHTSTATES {} +impl ::core::clone::Clone for FRAMERIGHTSTATES { + fn clone(&self) -> Self { + *self } - #[doc = "*Required features: `\"Win32_Foundation\"`*"] - #[cfg(feature = "Win32_Foundation")] - pub unsafe fn DragShowNolock<'a, P0>(&self, fshow: P0) -> ::windows::core::Result<()> - where - P0: ::std::convert::Into, - { - (::windows::core::Interface::vtable(self).DragShowNolock)(::windows::core::Interface::as_raw(self), fshow.into()).ok() +} +impl ::core::default::Default for FRAMERIGHTSTATES { + fn default() -> Self { + Self(0) } - #[doc = "*Required features: `\"Win32_Foundation\"`*"] - #[cfg(feature = "Win32_Foundation")] - pub unsafe fn GetDragImage(&self, ppt: ::core::option::Option<&mut super::super::Foundation::POINT>, ppthotspot: ::core::option::Option<&mut super::super::Foundation::POINT>, riid: &::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).GetDragImage)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(ppt), ::core::mem::transmute(ppthotspot), ::core::mem::transmute(riid), ::core::mem::transmute(ppv)).ok() +} +unsafe impl ::windows::core::Abi for FRAMERIGHTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for FRAMERIGHTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("FRAMERIGHTSTATES").field(&self.0).finish() } - pub unsafe fn GetItemFlags(&self, i: i32) -> ::windows::core::Result { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetItemFlags)(::windows::core::Interface::as_raw(self), i, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct FRAMESTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FS_ACTIVE: FRAMESTATES = FRAMESTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FS_INACTIVE: FRAMESTATES = FRAMESTATES(2i32); +impl ::core::marker::Copy for FRAMESTATES {} +impl ::core::clone::Clone for FRAMESTATES { + fn clone(&self) -> Self { + *self } - pub unsafe fn GetOverlayImage(&self, ioverlay: i32) -> ::windows::core::Result { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetOverlayImage)(::windows::core::Interface::as_raw(self), ioverlay, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +impl ::core::default::Default for FRAMESTATES { + fn default() -> Self { + Self(0) } } -impl ::core::convert::From for ::windows::core::IUnknown { - fn from(value: IImageList) -> Self { - unsafe { ::core::mem::transmute(value) } +unsafe impl ::windows::core::Abi for FRAMESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for FRAMESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("FRAMESTATES").field(&self.0).finish() } } -impl<'a> ::core::convert::From<&'a IImageList> for &'a ::windows::core::IUnknown { - fn from(value: &'a IImageList) -> Self { - unsafe { ::core::mem::transmute(value) } +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FSB_ENCARTA_MODE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FSB_FLAT_MODE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FSB_REGULAR_MODE: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn FlatSB_EnableScrollBar<'a, P0>(param0: P0, param1: i32, param2: u32) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn FlatSB_EnableScrollBar(param0: super::super::Foundation::HWND, param1: i32, param2: u32) -> super::super::Foundation::BOOL; } + FlatSB_EnableScrollBar(param0.into(), param1, param2) } -impl ::core::convert::From<&IImageList> for ::windows::core::IUnknown { - fn from(value: &IImageList) -> Self { - ::core::convert::From::from(::core::clone::Clone::clone(value)) +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[inline] +pub unsafe fn FlatSB_GetScrollInfo<'a, P0>(param0: P0, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, param2: &mut super::WindowsAndMessaging::SCROLLINFO) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn FlatSB_GetScrollInfo(param0: super::super::Foundation::HWND, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, param2: *mut super::WindowsAndMessaging::SCROLLINFO) -> super::super::Foundation::BOOL; } + FlatSB_GetScrollInfo(param0.into(), code, ::core::mem::transmute(param2)) } -impl ::core::clone::Clone for IImageList { - fn clone(&self) -> Self { - Self(self.0.clone()) +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[inline] +pub unsafe fn FlatSB_GetScrollPos<'a, P0>(param0: P0, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS) -> i32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn FlatSB_GetScrollPos(param0: super::super::Foundation::HWND, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS) -> i32; } + FlatSB_GetScrollPos(param0.into(), code) } -impl ::core::cmp::PartialEq for IImageList { - fn eq(&self, other: &Self) -> bool { - self.0 == other.0 +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn FlatSB_GetScrollProp<'a, P0>(param0: P0, propindex: WSB_PROP, param2: &mut i32) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn FlatSB_GetScrollProp(param0: super::super::Foundation::HWND, propindex: WSB_PROP, param2: *mut i32) -> super::super::Foundation::BOOL; } + FlatSB_GetScrollProp(param0.into(), propindex, ::core::mem::transmute(param2)) } -impl ::core::cmp::Eq for IImageList {} -impl ::core::fmt::Debug for IImageList { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IImageList").field(&self.0).finish() +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[inline] +pub unsafe fn FlatSB_GetScrollRange<'a, P0>(param0: P0, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, param2: &mut i32, param3: &mut i32) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn FlatSB_GetScrollRange(param0: super::super::Foundation::HWND, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, param2: *mut i32, param3: *mut i32) -> super::super::Foundation::BOOL; } + FlatSB_GetScrollRange(param0.into(), code, ::core::mem::transmute(param2), ::core::mem::transmute(param3)) } -unsafe impl ::windows::core::Interface for IImageList { - type Vtable = IImageList_Vtbl; - const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x46eb5926_582e_4017_9fdf_e8998daa0950); +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[inline] +pub unsafe fn FlatSB_SetScrollInfo<'a, P0, P1>(param0: P0, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, psi: &mut super::WindowsAndMessaging::SCROLLINFO, fredraw: P1) -> i32 +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn FlatSB_SetScrollInfo(param0: super::super::Foundation::HWND, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, psi: *mut super::WindowsAndMessaging::SCROLLINFO, fredraw: super::super::Foundation::BOOL) -> i32; + } + FlatSB_SetScrollInfo(param0.into(), code, ::core::mem::transmute(psi), fredraw.into()) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[inline] +pub unsafe fn FlatSB_SetScrollPos<'a, P0, P1>(param0: P0, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, pos: i32, fredraw: P1) -> i32 +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn FlatSB_SetScrollPos(param0: super::super::Foundation::HWND, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, pos: i32, fredraw: super::super::Foundation::BOOL) -> i32; + } + FlatSB_SetScrollPos(param0.into(), code, pos, fredraw.into()) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn FlatSB_SetScrollProp<'a, P0, P1>(param0: P0, index: WSB_PROP, newvalue: isize, param3: P1) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn FlatSB_SetScrollProp(param0: super::super::Foundation::HWND, index: WSB_PROP, newvalue: isize, param3: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL; + } + FlatSB_SetScrollProp(param0.into(), index, newvalue, param3.into()) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[inline] +pub unsafe fn FlatSB_SetScrollRange<'a, P0, P1>(param0: P0, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, min: i32, max: i32, fredraw: P1) -> i32 +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn FlatSB_SetScrollRange(param0: super::super::Foundation::HWND, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, min: i32, max: i32, fredraw: super::super::Foundation::BOOL) -> i32; + } + FlatSB_SetScrollRange(param0.into(), code, min, max, fredraw.into()) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +#[inline] +pub unsafe fn FlatSB_ShowScrollBar<'a, P0, P1>(param0: P0, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, param2: P1) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn FlatSB_ShowScrollBar(param0: super::super::Foundation::HWND, code: super::WindowsAndMessaging::SCROLLBAR_CONSTANTS, param2: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL; + } + FlatSB_ShowScrollBar(param0.into(), code, param2.into()) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GDTR_MAX: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GDTR_MIN: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GDT_ERROR: i32 = -1i32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GDT_NONE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GDT_VALID: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct GET_THEME_BITMAP_FLAGS(pub u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GBF_DIRECT: GET_THEME_BITMAP_FLAGS = GET_THEME_BITMAP_FLAGS(1u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GBF_COPY: GET_THEME_BITMAP_FLAGS = GET_THEME_BITMAP_FLAGS(2u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GBF_VALIDBITS: GET_THEME_BITMAP_FLAGS = GET_THEME_BITMAP_FLAGS(3u32); +impl ::core::marker::Copy for GET_THEME_BITMAP_FLAGS {} +impl ::core::clone::Clone for GET_THEME_BITMAP_FLAGS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for GET_THEME_BITMAP_FLAGS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for GET_THEME_BITMAP_FLAGS { + type Abi = Self; +} +impl ::core::fmt::Debug for GET_THEME_BITMAP_FLAGS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("GET_THEME_BITMAP_FLAGS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct GLYPHFONTSIZINGTYPE(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GFST_NONE: GLYPHFONTSIZINGTYPE = GLYPHFONTSIZINGTYPE(0i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GFST_SIZE: GLYPHFONTSIZINGTYPE = GLYPHFONTSIZINGTYPE(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GFST_DPI: GLYPHFONTSIZINGTYPE = GLYPHFONTSIZINGTYPE(2i32); +impl ::core::marker::Copy for GLYPHFONTSIZINGTYPE {} +impl ::core::clone::Clone for GLYPHFONTSIZINGTYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for GLYPHFONTSIZINGTYPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for GLYPHFONTSIZINGTYPE { + type Abi = Self; +} +impl ::core::fmt::Debug for GLYPHFONTSIZINGTYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("GLYPHFONTSIZINGTYPE").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct GLYPHSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GLPS_CLOSED: GLYPHSTATES = GLYPHSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GLPS_OPENED: GLYPHSTATES = GLYPHSTATES(2i32); +impl ::core::marker::Copy for GLYPHSTATES {} +impl ::core::clone::Clone for GLYPHSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for GLYPHSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for GLYPHSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for GLYPHSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("GLYPHSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct GLYPHTYPE(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GT_NONE: GLYPHTYPE = GLYPHTYPE(0i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GT_IMAGEGLYPH: GLYPHTYPE = GLYPHTYPE(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GT_FONTGLYPH: GLYPHTYPE = GLYPHTYPE(2i32); +impl ::core::marker::Copy for GLYPHTYPE {} +impl ::core::clone::Clone for GLYPHTYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for GLYPHTYPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for GLYPHTYPE { + type Abi = Self; +} +impl ::core::fmt::Debug for GLYPHTYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("GLYPHTYPE").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GMR_DAYSTATE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GMR_VISIBLE: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct GRIDCELLBACKGROUNDSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCB_SELECTED: GRIDCELLBACKGROUNDSTATES = GRIDCELLBACKGROUNDSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCB_HOT: GRIDCELLBACKGROUNDSTATES = GRIDCELLBACKGROUNDSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCB_SELECTEDHOT: GRIDCELLBACKGROUNDSTATES = GRIDCELLBACKGROUNDSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCB_SELECTEDNOTFOCUSED: GRIDCELLBACKGROUNDSTATES = GRIDCELLBACKGROUNDSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCB_TODAY: GRIDCELLBACKGROUNDSTATES = GRIDCELLBACKGROUNDSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCB_TODAYSELECTED: GRIDCELLBACKGROUNDSTATES = GRIDCELLBACKGROUNDSTATES(6i32); +impl ::core::marker::Copy for GRIDCELLBACKGROUNDSTATES {} +impl ::core::clone::Clone for GRIDCELLBACKGROUNDSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for GRIDCELLBACKGROUNDSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for GRIDCELLBACKGROUNDSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for GRIDCELLBACKGROUNDSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("GRIDCELLBACKGROUNDSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct GRIDCELLSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGC_HOT: GRIDCELLSTATES = GRIDCELLSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGC_HASSTATE: GRIDCELLSTATES = GRIDCELLSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGC_HASSTATEHOT: GRIDCELLSTATES = GRIDCELLSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGC_TODAY: GRIDCELLSTATES = GRIDCELLSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGC_TODAYSELECTED: GRIDCELLSTATES = GRIDCELLSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGC_SELECTED: GRIDCELLSTATES = GRIDCELLSTATES(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGC_SELECTEDHOT: GRIDCELLSTATES = GRIDCELLSTATES(7i32); +impl ::core::marker::Copy for GRIDCELLSTATES {} +impl ::core::clone::Clone for GRIDCELLSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for GRIDCELLSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for GRIDCELLSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for GRIDCELLSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("GRIDCELLSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct GRIDCELLUPPERSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCU_HOT: GRIDCELLUPPERSTATES = GRIDCELLUPPERSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCU_HASSTATE: GRIDCELLUPPERSTATES = GRIDCELLUPPERSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCU_HASSTATEHOT: GRIDCELLUPPERSTATES = GRIDCELLUPPERSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCU_SELECTED: GRIDCELLUPPERSTATES = GRIDCELLUPPERSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCGCU_SELECTEDHOT: GRIDCELLUPPERSTATES = GRIDCELLUPPERSTATES(5i32); +impl ::core::marker::Copy for GRIDCELLUPPERSTATES {} +impl ::core::clone::Clone for GRIDCELLUPPERSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for GRIDCELLUPPERSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for GRIDCELLUPPERSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for GRIDCELLUPPERSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("GRIDCELLUPPERSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct GRIPPERSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TSGS_NORMAL: GRIPPERSTATES = GRIPPERSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TSGS_CENTERED: GRIPPERSTATES = GRIPPERSTATES(2i32); +impl ::core::marker::Copy for GRIPPERSTATES {} +impl ::core::clone::Clone for GRIPPERSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for GRIPPERSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for GRIPPERSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for GRIPPERSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("GRIPPERSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct GROUPBOXSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GBS_NORMAL: GROUPBOXSTATES = GROUPBOXSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const GBS_DISABLED: GROUPBOXSTATES = GROUPBOXSTATES(2i32); +impl ::core::marker::Copy for GROUPBOXSTATES {} +impl ::core::clone::Clone for GROUPBOXSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for GROUPBOXSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for GROUPBOXSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for GROUPBOXSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("GROUPBOXSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct GROUPHEADERLINESTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPEN: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPENHOT: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPENSELECTED: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPENSELECTEDHOT: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPENSELECTEDNOTFOCUSED: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPENSELECTEDNOTFOCUSEDHOT: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPENMIXEDSELECTION: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_OPENMIXEDSELECTIONHOT: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(8i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_CLOSE: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(9i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_CLOSEHOT: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(10i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_CLOSESELECTED: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(11i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_CLOSESELECTEDHOT: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(12i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_CLOSESELECTEDNOTFOCUSED: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(13i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_CLOSESELECTEDNOTFOCUSEDHOT: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(14i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_CLOSEMIXEDSELECTION: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(15i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGHL_CLOSEMIXEDSELECTIONHOT: GROUPHEADERLINESTATES = GROUPHEADERLINESTATES(16i32); +impl ::core::marker::Copy for GROUPHEADERLINESTATES {} +impl ::core::clone::Clone for GROUPHEADERLINESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for GROUPHEADERLINESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for GROUPHEADERLINESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for GROUPHEADERLINESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("GROUPHEADERLINESTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct GROUPHEADERSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_OPEN: GROUPHEADERSTATES = GROUPHEADERSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_OPENHOT: GROUPHEADERSTATES = GROUPHEADERSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_OPENSELECTED: GROUPHEADERSTATES = GROUPHEADERSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_OPENSELECTEDHOT: GROUPHEADERSTATES = GROUPHEADERSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_OPENSELECTEDNOTFOCUSED: GROUPHEADERSTATES = GROUPHEADERSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_OPENSELECTEDNOTFOCUSEDHOT: GROUPHEADERSTATES = GROUPHEADERSTATES(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_OPENMIXEDSELECTION: GROUPHEADERSTATES = GROUPHEADERSTATES(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_OPENMIXEDSELECTIONHOT: GROUPHEADERSTATES = GROUPHEADERSTATES(8i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_CLOSE: GROUPHEADERSTATES = GROUPHEADERSTATES(9i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_CLOSEHOT: GROUPHEADERSTATES = GROUPHEADERSTATES(10i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_CLOSESELECTED: GROUPHEADERSTATES = GROUPHEADERSTATES(11i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_CLOSESELECTEDHOT: GROUPHEADERSTATES = GROUPHEADERSTATES(12i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_CLOSESELECTEDNOTFOCUSED: GROUPHEADERSTATES = GROUPHEADERSTATES(13i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_CLOSESELECTEDNOTFOCUSEDHOT: GROUPHEADERSTATES = GROUPHEADERSTATES(14i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_CLOSEMIXEDSELECTION: GROUPHEADERSTATES = GROUPHEADERSTATES(15i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVGH_CLOSEMIXEDSELECTIONHOT: GROUPHEADERSTATES = GROUPHEADERSTATES(16i32); +impl ::core::marker::Copy for GROUPHEADERSTATES {} +impl ::core::clone::Clone for GROUPHEADERSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for GROUPHEADERSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for GROUPHEADERSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for GROUPHEADERSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("GROUPHEADERSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(feature = "Win32_Graphics_Gdi")] +#[inline] +pub unsafe fn GetBufferedPaintBits(hbufferedpaint: isize, ppbbuffer: &mut *mut super::super::Graphics::Gdi::RGBQUAD, pcxrow: &mut i32) -> ::windows::core::Result<()> { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetBufferedPaintBits(hbufferedpaint: isize, ppbbuffer: *mut *mut super::super::Graphics::Gdi::RGBQUAD, pcxrow: *mut i32) -> ::windows::core::HRESULT; + } + GetBufferedPaintBits(hbufferedpaint, ::core::mem::transmute(ppbbuffer), ::core::mem::transmute(pcxrow)).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(feature = "Win32_Graphics_Gdi")] +#[inline] +pub unsafe fn GetBufferedPaintDC(hbufferedpaint: isize) -> super::super::Graphics::Gdi::HDC { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetBufferedPaintDC(hbufferedpaint: isize) -> super::super::Graphics::Gdi::HDC; + } + GetBufferedPaintDC(hbufferedpaint) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(feature = "Win32_Graphics_Gdi")] +#[inline] +pub unsafe fn GetBufferedPaintTargetDC(hbufferedpaint: isize) -> super::super::Graphics::Gdi::HDC { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetBufferedPaintTargetDC(hbufferedpaint: isize) -> super::super::Graphics::Gdi::HDC; + } + GetBufferedPaintTargetDC(hbufferedpaint) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetBufferedPaintTargetRect(hbufferedpaint: isize) -> ::windows::core::Result { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetBufferedPaintTargetRect(hbufferedpaint: isize, prc: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetBufferedPaintTargetRect(hbufferedpaint, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetComboBoxInfo<'a, P0>(hwndcombo: P0, pcbi: &mut COMBOBOXINFO) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetComboBoxInfo(hwndcombo: super::super::Foundation::HWND, pcbi: *mut COMBOBOXINFO) -> super::super::Foundation::BOOL; + } + GetComboBoxInfo(hwndcombo.into(), ::core::mem::transmute(pcbi)) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetCurrentThemeName(pszthemefilename: &mut [u16], pszcolorbuff: ::core::option::Option<&mut [u16]>, pszsizebuff: ::core::option::Option<&mut [u16]>) -> ::windows::core::Result<()> { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetCurrentThemeName(pszthemefilename: ::windows::core::PWSTR, cchmaxnamechars: i32, pszcolorbuff: ::windows::core::PWSTR, cchmaxcolorchars: i32, pszsizebuff: ::windows::core::PWSTR, cchmaxsizechars: i32) -> ::windows::core::HRESULT; + } + GetCurrentThemeName(::core::mem::transmute(pszthemefilename.as_ptr()), pszthemefilename.len() as _, ::core::mem::transmute(pszcolorbuff.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pszcolorbuff.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pszsizebuff.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pszsizebuff.as_deref().map_or(0, |slice| slice.len() as _)).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetEffectiveClientRect<'a, P0>(hwnd: P0, lprc: &mut super::super::Foundation::RECT, lpinfo: &i32) +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetEffectiveClientRect(hwnd: super::super::Foundation::HWND, lprc: *mut super::super::Foundation::RECT, lpinfo: *const i32); + } + GetEffectiveClientRect(hwnd.into(), ::core::mem::transmute(lprc), ::core::mem::transmute(lpinfo)) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetListBoxInfo<'a, P0>(hwnd: P0) -> u32 +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetListBoxInfo(hwnd: super::super::Foundation::HWND) -> u32; + } + GetListBoxInfo(hwnd.into()) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetMUILanguage() -> u16 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetMUILanguage() -> u16; + } + GetMUILanguage() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemeAnimationProperty(htheme: isize, istoryboardid: i32, itargetid: i32, eproperty: TA_PROPERTY, pvproperty: ::core::option::Option<&mut [u8]>, pcbsizeout: &mut u32) -> ::windows::core::Result<()> { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeAnimationProperty(htheme: isize, istoryboardid: i32, itargetid: i32, eproperty: TA_PROPERTY, pvproperty: *mut ::core::ffi::c_void, cbsize: u32, pcbsizeout: *mut u32) -> ::windows::core::HRESULT; + } + GetThemeAnimationProperty(htheme, istoryboardid, itargetid, eproperty, ::core::mem::transmute(pvproperty.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), pvproperty.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pcbsizeout)).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemeAnimationTransform(htheme: isize, istoryboardid: i32, itargetid: i32, dwtransformindex: u32, ptransform: ::core::option::Option<&mut [u8]>, pcbsizeout: &mut u32) -> ::windows::core::Result<()> { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeAnimationTransform(htheme: isize, istoryboardid: i32, itargetid: i32, dwtransformindex: u32, ptransform: *mut TA_TRANSFORM, cbsize: u32, pcbsizeout: *mut u32) -> ::windows::core::HRESULT; + } + GetThemeAnimationTransform(htheme, istoryboardid, itargetid, dwtransformindex, ::core::mem::transmute(ptransform.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), ptransform.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pcbsizeout)).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemeAppProperties() -> SET_THEME_APP_PROPERTIES_FLAGS { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeAppProperties() -> SET_THEME_APP_PROPERTIES_FLAGS; + } + GetThemeAppProperties() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[inline] +pub unsafe fn GetThemeBackgroundContentRect<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, pboundingrect: &super::super::Foundation::RECT) -> ::windows::core::Result +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeBackgroundContentRect(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, pboundingrect: *const super::super::Foundation::RECT, pcontentrect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeBackgroundContentRect(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(pboundingrect), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[inline] +pub unsafe fn GetThemeBackgroundExtent<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, pcontentrect: &super::super::Foundation::RECT) -> ::windows::core::Result +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeBackgroundExtent(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, pcontentrect: *const super::super::Foundation::RECT, pextentrect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeBackgroundExtent(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(pcontentrect), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[inline] +pub unsafe fn GetThemeBackgroundRegion<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, prect: &super::super::Foundation::RECT) -> ::windows::core::Result +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeBackgroundRegion(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, prect: *const super::super::Foundation::RECT, pregion: *mut super::super::Graphics::Gdi::HRGN) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeBackgroundRegion(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(prect), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(feature = "Win32_Graphics_Gdi")] +#[inline] +pub unsafe fn GetThemeBitmap(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, dwflags: GET_THEME_BITMAP_FLAGS) -> ::windows::core::Result { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeBitmap(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, dwflags: GET_THEME_BITMAP_FLAGS, phbitmap: *mut super::super::Graphics::Gdi::HBITMAP) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeBitmap(htheme, ipartid, istateid, ipropid, dwflags, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetThemeBool(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID) -> ::windows::core::Result { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeBool(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pfval: *mut super::super::Foundation::BOOL) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeBool(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetThemeColor(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID) -> ::windows::core::Result { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeColor(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pcolor: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeColor(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemeDocumentationProperty<'a, P0, P1>(pszthemename: P0, pszpropertyname: P1, pszvaluebuff: &mut [u16]) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into<::windows::core::PCWSTR>, + P1: ::std::convert::Into<::windows::core::PCWSTR>, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeDocumentationProperty(pszthemename: ::windows::core::PCWSTR, pszpropertyname: ::windows::core::PCWSTR, pszvaluebuff: ::windows::core::PWSTR, cchmaxvalchars: i32) -> ::windows::core::HRESULT; + } + GetThemeDocumentationProperty(pszthemename.into(), pszpropertyname.into(), ::core::mem::transmute(pszvaluebuff.as_ptr()), pszvaluebuff.len() as _).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemeEnumValue(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID) -> ::windows::core::Result { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeEnumValue(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pival: *mut i32) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeEnumValue(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemeFilename(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pszthemefilename: &mut [u16]) -> ::windows::core::Result<()> { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeFilename(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pszthemefilename: ::windows::core::PWSTR, cchmaxbuffchars: i32) -> ::windows::core::HRESULT; + } + GetThemeFilename(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(pszthemefilename.as_ptr()), pszthemefilename.len() as _).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(feature = "Win32_Graphics_Gdi")] +#[inline] +pub unsafe fn GetThemeFont<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, ipropid: i32) -> ::windows::core::Result +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeFont(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, ipropid: i32, pfont: *mut super::super::Graphics::Gdi::LOGFONTW) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeFont(htheme, hdc.into(), ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemeInt(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID) -> ::windows::core::Result { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeInt(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pival: *mut i32) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeInt(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemeIntList(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID) -> ::windows::core::Result { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeIntList(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pintlist: *mut INTLIST) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeIntList(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[inline] +pub unsafe fn GetThemeMargins<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, prc: ::core::option::Option<&super::super::Foundation::RECT>) -> ::windows::core::Result +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeMargins(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, prc: *const super::super::Foundation::RECT, pmargins: *mut MARGINS) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeMargins(htheme, hdc.into(), ipartid, istateid, ipropid, ::core::mem::transmute(prc), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(feature = "Win32_Graphics_Gdi")] +#[inline] +pub unsafe fn GetThemeMetric<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID) -> ::windows::core::Result +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeMetric(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, pival: *mut i32) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeMetric(htheme, hdc.into(), ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[inline] +pub unsafe fn GetThemePartSize<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, prc: ::core::option::Option<&super::super::Foundation::RECT>, esize: THEMESIZE) -> ::windows::core::Result +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemePartSize(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, prc: *const super::super::Foundation::RECT, esize: THEMESIZE, psz: *mut super::super::Foundation::SIZE) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemePartSize(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(prc), esize, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetThemePosition(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID) -> ::windows::core::Result { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemePosition(htheme: isize, ipartid: i32, istateid: i32, ipropid: THEME_PROPERTY_SYMBOL_ID, ppoint: *mut super::super::Foundation::POINT) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemePosition(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemePropertyOrigin(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32) -> ::windows::core::Result { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemePropertyOrigin(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, porigin: *mut PROPERTYORIGIN) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemePropertyOrigin(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetThemeRect(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32) -> ::windows::core::Result { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeRect(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, prect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeRect(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetThemeStream<'a, P0>(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, ppvstream: *mut *mut ::core::ffi::c_void, pcbstream: ::core::option::Option<&mut u32>, hinst: P0) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeStream(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, ppvstream: *mut *mut ::core::ffi::c_void, pcbstream: *mut u32, hinst: super::super::Foundation::HINSTANCE) -> ::windows::core::HRESULT; + } + GetThemeStream(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(ppvstream), ::core::mem::transmute(pcbstream), hinst.into()).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemeString(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pszbuff: &mut [u16]) -> ::windows::core::Result<()> { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeString(htheme: isize, ipartid: i32, istateid: i32, ipropid: i32, pszbuff: ::windows::core::PWSTR, cchmaxbuffchars: i32) -> ::windows::core::HRESULT; + } + GetThemeString(htheme, ipartid, istateid, ipropid, ::core::mem::transmute(pszbuff.as_ptr()), pszbuff.len() as _).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetThemeSysBool(htheme: isize, iboolid: THEME_PROPERTY_SYMBOL_ID) -> super::super::Foundation::BOOL { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeSysBool(htheme: isize, iboolid: THEME_PROPERTY_SYMBOL_ID) -> super::super::Foundation::BOOL; + } + GetThemeSysBool(htheme, iboolid) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetThemeSysColor(htheme: isize, icolorid: i32) -> super::super::Foundation::COLORREF { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeSysColor(htheme: isize, icolorid: i32) -> super::super::Foundation::COLORREF; + } + GetThemeSysColor(htheme, icolorid) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(feature = "Win32_Graphics_Gdi")] +#[inline] +pub unsafe fn GetThemeSysColorBrush(htheme: isize, icolorid: THEME_PROPERTY_SYMBOL_ID) -> super::super::Graphics::Gdi::HBRUSH { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeSysColorBrush(htheme: isize, icolorid: THEME_PROPERTY_SYMBOL_ID) -> super::super::Graphics::Gdi::HBRUSH; + } + GetThemeSysColorBrush(htheme, icolorid) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(feature = "Win32_Graphics_Gdi")] +#[inline] +pub unsafe fn GetThemeSysFont(htheme: isize, ifontid: THEME_PROPERTY_SYMBOL_ID) -> ::windows::core::Result { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeSysFont(htheme: isize, ifontid: THEME_PROPERTY_SYMBOL_ID, plf: *mut super::super::Graphics::Gdi::LOGFONTW) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeSysFont(htheme, ifontid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemeSysInt(htheme: isize, iintid: THEME_PROPERTY_SYMBOL_ID) -> ::windows::core::Result { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeSysInt(htheme: isize, iintid: THEME_PROPERTY_SYMBOL_ID, pivalue: *mut i32) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeSysInt(htheme, iintid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemeSysSize(htheme: isize, isizeid: i32) -> i32 { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeSysSize(htheme: isize, isizeid: i32) -> i32; + } + GetThemeSysSize(htheme, isizeid) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemeSysString(htheme: isize, istringid: THEME_PROPERTY_SYMBOL_ID, pszstringbuff: &mut [u16]) -> ::windows::core::Result<()> { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeSysString(htheme: isize, istringid: THEME_PROPERTY_SYMBOL_ID, pszstringbuff: ::windows::core::PWSTR, cchmaxstringchars: i32) -> ::windows::core::HRESULT; + } + GetThemeSysString(htheme, istringid, ::core::mem::transmute(pszstringbuff.as_ptr()), pszstringbuff.len() as _).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[inline] +pub unsafe fn GetThemeTextExtent<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, psztext: &[u16], dwtextflags: u32, pboundingrect: ::core::option::Option<&super::super::Foundation::RECT>) -> ::windows::core::Result +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeTextExtent(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, psztext: ::windows::core::PCWSTR, cchcharcount: i32, dwtextflags: u32, pboundingrect: *const super::super::Foundation::RECT, pextentrect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeTextExtent(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(psztext.as_ptr()), psztext.len() as _, dwtextflags, ::core::mem::transmute(pboundingrect), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(feature = "Win32_Graphics_Gdi")] +#[inline] +pub unsafe fn GetThemeTextMetrics<'a, P0>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32) -> ::windows::core::Result +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeTextMetrics(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, ptm: *mut super::super::Graphics::Gdi::TEXTMETRICW) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeTextMetrics(htheme, hdc.into(), ipartid, istateid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemeTimingFunction(htheme: isize, itimingfunctionid: i32, ptimingfunction: ::core::option::Option<&mut [u8]>, pcbsizeout: &mut u32) -> ::windows::core::Result<()> { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeTimingFunction(htheme: isize, itimingfunctionid: i32, ptimingfunction: *mut TA_TIMINGFUNCTION, cbsize: u32, pcbsizeout: *mut u32) -> ::windows::core::HRESULT; + } + GetThemeTimingFunction(htheme, itimingfunctionid, ::core::mem::transmute(ptimingfunction.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), ptimingfunction.as_deref().map_or(0, |slice| slice.len() as _), ::core::mem::transmute(pcbsizeout)).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn GetThemeTransitionDuration(htheme: isize, ipartid: i32, istateidfrom: i32, istateidto: i32, ipropid: i32) -> ::windows::core::Result { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetThemeTransitionDuration(htheme: isize, ipartid: i32, istateidfrom: i32, istateidto: i32, ipropid: i32, pdwduration: *mut u32) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + GetThemeTransitionDuration(htheme, ipartid, istateidfrom, istateidto, ipropid, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetWindowFeedbackSetting<'a, P0>(hwnd: P0, feedback: FEEDBACK_TYPE, dwflags: u32, psize: &mut u32, config: *mut ::core::ffi::c_void) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetWindowFeedbackSetting(hwnd: super::super::Foundation::HWND, feedback: FEEDBACK_TYPE, dwflags: u32, psize: *mut u32, config: *mut ::core::ffi::c_void) -> super::super::Foundation::BOOL; + } + GetWindowFeedbackSetting(hwnd.into(), feedback, dwflags, ::core::mem::transmute(psize), ::core::mem::transmute(config)) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn GetWindowTheme<'a, P0>(hwnd: P0) -> isize +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn GetWindowTheme(hwnd: super::super::Foundation::HWND) -> isize; + } + GetWindowTheme(hwnd.into()) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HALIGN(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HA_LEFT: HALIGN = HALIGN(0i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HA_CENTER: HALIGN = HALIGN(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HA_RIGHT: HALIGN = HALIGN(2i32); +impl ::core::marker::Copy for HALIGN {} +impl ::core::clone::Clone for HALIGN { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HALIGN { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HALIGN { + type Abi = Self; +} +impl ::core::fmt::Debug for HALIGN { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HALIGN").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDFT_HASNOVALUE: u32 = 32768u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDFT_ISDATE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDFT_ISNUMBER: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDFT_ISSTRING: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_BITMAP: u32 = 8192u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_BITMAP_ON_RIGHT: u32 = 4096u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_CENTER: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_CHECKBOX: u32 = 64u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_CHECKED: u32 = 128u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_FIXEDWIDTH: u32 = 256u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_IMAGE: u32 = 2048u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_JUSTIFYMASK: u32 = 3u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_LEFT: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_OWNERDRAW: u32 = 32768u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_RIGHT: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_RTLREADING: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_SORTDOWN: u32 = 512u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_SORTUP: u32 = 1024u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_SPLITBUTTON: u32 = 16777216u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDF_STRING: u32 = 16384u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct HDHITTESTINFO { + pub pt: super::super::Foundation::POINT, + pub flags: u32, + pub iItem: i32, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for HDHITTESTINFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for HDHITTESTINFO { + fn clone(&self) -> Self { + *self + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for HDHITTESTINFO { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("HDHITTESTINFO").field("pt", &self.pt).field("flags", &self.flags).field("iItem", &self.iItem).finish() + } +} +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for HDHITTESTINFO { + type Abi = Self; +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for HDHITTESTINFO { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for HDHITTESTINFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for HDHITTESTINFO { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDIS_FOCUSED: u32 = 1u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +pub struct HDITEMA { + pub mask: HDI_MASK, + pub cxy: i32, + pub pszText: ::windows::core::PSTR, + pub hbm: super::super::Graphics::Gdi::HBITMAP, + pub cchTextMax: i32, + pub fmt: i32, + pub lParam: super::super::Foundation::LPARAM, + pub iImage: i32, + pub iOrder: i32, + pub r#type: u32, + pub pvFilter: *mut ::core::ffi::c_void, + pub state: u32, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::marker::Copy for HDITEMA {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::clone::Clone for HDITEMA { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::fmt::Debug for HDITEMA { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("HDITEMA").field("mask", &self.mask).field("cxy", &self.cxy).field("pszText", &self.pszText).field("hbm", &self.hbm).field("cchTextMax", &self.cchTextMax).field("fmt", &self.fmt).field("lParam", &self.lParam).field("iImage", &self.iImage).field("iOrder", &self.iOrder).field("type", &self.r#type).field("pvFilter", &self.pvFilter).field("state", &self.state).finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +unsafe impl ::windows::core::Abi for HDITEMA { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::PartialEq for HDITEMA { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::Eq for HDITEMA {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::default::Default for HDITEMA { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +pub struct HDITEMW { + pub mask: HDI_MASK, + pub cxy: i32, + pub pszText: ::windows::core::PWSTR, + pub hbm: super::super::Graphics::Gdi::HBITMAP, + pub cchTextMax: i32, + pub fmt: i32, + pub lParam: super::super::Foundation::LPARAM, + pub iImage: i32, + pub iOrder: i32, + pub r#type: u32, + pub pvFilter: *mut ::core::ffi::c_void, + pub state: u32, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::marker::Copy for HDITEMW {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::clone::Clone for HDITEMW { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::fmt::Debug for HDITEMW { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("HDITEMW").field("mask", &self.mask).field("cxy", &self.cxy).field("pszText", &self.pszText).field("hbm", &self.hbm).field("cchTextMax", &self.cchTextMax).field("fmt", &self.fmt).field("lParam", &self.lParam).field("iImage", &self.iImage).field("iOrder", &self.iOrder).field("type", &self.r#type).field("pvFilter", &self.pvFilter).field("state", &self.state).finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +unsafe impl ::windows::core::Abi for HDITEMW { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::PartialEq for HDITEMW { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::Eq for HDITEMW {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::default::Default for HDITEMW { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HDI_MASK(pub u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDI_WIDTH: HDI_MASK = HDI_MASK(1u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDI_HEIGHT: HDI_MASK = HDI_MASK(1u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDI_TEXT: HDI_MASK = HDI_MASK(2u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDI_FORMAT: HDI_MASK = HDI_MASK(4u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDI_LPARAM: HDI_MASK = HDI_MASK(8u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDI_BITMAP: HDI_MASK = HDI_MASK(16u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDI_IMAGE: HDI_MASK = HDI_MASK(32u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDI_DI_SETITEM: HDI_MASK = HDI_MASK(64u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDI_ORDER: HDI_MASK = HDI_MASK(128u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDI_FILTER: HDI_MASK = HDI_MASK(256u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDI_STATE: HDI_MASK = HDI_MASK(512u32); +impl ::core::marker::Copy for HDI_MASK {} +impl ::core::clone::Clone for HDI_MASK { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HDI_MASK { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HDI_MASK { + type Abi = Self; +} +impl ::core::fmt::Debug for HDI_MASK { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HDI_MASK").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for HDI_MASK { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for HDI_MASK { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for HDI_MASK { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for HDI_MASK { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for HDI_MASK { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +pub struct HDLAYOUT { + pub prc: *mut super::super::Foundation::RECT, + pub pwpos: *mut super::WindowsAndMessaging::WINDOWPOS, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::marker::Copy for HDLAYOUT {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::clone::Clone for HDLAYOUT { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::fmt::Debug for HDLAYOUT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("HDLAYOUT").field("prc", &self.prc).field("pwpos", &self.pwpos).finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +unsafe impl ::windows::core::Abi for HDLAYOUT { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::cmp::PartialEq for HDLAYOUT { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::cmp::Eq for HDLAYOUT {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::default::Default for HDLAYOUT { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_CLEARFILTER: u32 = 4632u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_CREATEDRAGIMAGE: u32 = 4624u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_DELETEITEM: u32 = 4610u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_EDITFILTER: u32 = 4631u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_FIRST: u32 = 4608u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_GETBITMAPMARGIN: u32 = 4629u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_GETFOCUSEDITEM: u32 = 4635u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_GETIMAGELIST: u32 = 4617u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_GETITEM: u32 = 4619u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_GETITEMA: u32 = 4611u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_GETITEMCOUNT: u32 = 4608u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_GETITEMDROPDOWNRECT: u32 = 4633u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_GETITEMRECT: u32 = 4615u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_GETITEMW: u32 = 4619u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_GETORDERARRAY: u32 = 4625u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_GETOVERFLOWRECT: u32 = 4634u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_GETUNICODEFORMAT: u32 = 8198u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_HITTEST: u32 = 4614u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_INSERTITEM: u32 = 4618u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_INSERTITEMA: u32 = 4609u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_INSERTITEMW: u32 = 4618u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_LAYOUT: u32 = 4613u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_ORDERTOINDEX: u32 = 4623u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_SETBITMAPMARGIN: u32 = 4628u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_SETFILTERCHANGETIMEOUT: u32 = 4630u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_SETFOCUSEDITEM: u32 = 4636u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_SETHOTDIVIDER: u32 = 4627u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_SETIMAGELIST: u32 = 4616u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_SETITEM: u32 = 4620u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_SETITEMA: u32 = 4612u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_SETITEMW: u32 = 4620u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_SETORDERARRAY: u32 = 4626u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDM_SETUNICODEFORMAT: u32 = 8197u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HDPA(pub isize); +impl HDPA { + pub fn is_invalid(&self) -> bool { + self.0 == -1 || self.0 == 0 + } +} +impl ::core::default::Default for HDPA { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for HDPA { + fn clone(&self) -> Self { + *self + } +} +impl ::core::marker::Copy for HDPA {} +impl ::core::fmt::Debug for HDPA { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HDPA").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for HDPA { + fn from(optional: ::core::option::Option) -> HDPA { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for HDPA { + type Abi = Self; +} +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HDSA(pub isize); +impl HDSA { + pub fn is_invalid(&self) -> bool { + self.0 == -1 || self.0 == 0 + } +} +impl ::core::default::Default for HDSA { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for HDSA { + fn clone(&self) -> Self { + *self + } +} +impl ::core::marker::Copy for HDSA {} +impl ::core::fmt::Debug for HDSA { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HDSA").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for HDSA { + fn from(optional: ::core::option::Option) -> HDSA { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for HDSA { + type Abi = Self; +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDSIL_NORMAL: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDSIL_STATE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDS_BUTTONS: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDS_CHECKBOXES: u32 = 1024u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDS_DRAGDROP: u32 = 64u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDS_FILTERBAR: u32 = 256u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDS_FLAT: u32 = 512u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDS_FULLDRAG: u32 = 128u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDS_HIDDEN: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDS_HORZ: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDS_HOTTRACK: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDS_NOSIZING: u32 = 2048u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDS_OVERFLOW: u32 = 4096u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub struct HD_TEXTFILTERA { + pub pszText: ::windows::core::PSTR, + pub cchTextMax: i32, +} +impl ::core::marker::Copy for HD_TEXTFILTERA {} +impl ::core::clone::Clone for HD_TEXTFILTERA { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for HD_TEXTFILTERA { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("HD_TEXTFILTERA").field("pszText", &self.pszText).field("cchTextMax", &self.cchTextMax).finish() + } +} +unsafe impl ::windows::core::Abi for HD_TEXTFILTERA { + type Abi = Self; +} +impl ::core::cmp::PartialEq for HD_TEXTFILTERA { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for HD_TEXTFILTERA {} +impl ::core::default::Default for HD_TEXTFILTERA { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub struct HD_TEXTFILTERW { + pub pszText: ::windows::core::PWSTR, + pub cchTextMax: i32, +} +impl ::core::marker::Copy for HD_TEXTFILTERW {} +impl ::core::clone::Clone for HD_TEXTFILTERW { + fn clone(&self) -> Self { + *self + } +} +impl ::core::fmt::Debug for HD_TEXTFILTERW { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("HD_TEXTFILTERW").field("pszText", &self.pszText).field("cchTextMax", &self.cchTextMax).finish() + } +} +unsafe impl ::windows::core::Abi for HD_TEXTFILTERW { + type Abi = Self; +} +impl ::core::cmp::PartialEq for HD_TEXTFILTERW { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for HD_TEXTFILTERW {} +impl ::core::default::Default for HD_TEXTFILTERW { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HEADERAREASTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const AW_S_HEADERAREA_NOMARGIN: HEADERAREASTATES = HEADERAREASTATES(1i32); +impl ::core::marker::Copy for HEADERAREASTATES {} +impl ::core::clone::Clone for HEADERAREASTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HEADERAREASTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HEADERAREASTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HEADERAREASTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HEADERAREASTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HEADERCLOSESTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHC_NORMAL: HEADERCLOSESTATES = HEADERCLOSESTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHC_HOT: HEADERCLOSESTATES = HEADERCLOSESTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHC_PRESSED: HEADERCLOSESTATES = HEADERCLOSESTATES(3i32); +impl ::core::marker::Copy for HEADERCLOSESTATES {} +impl ::core::clone::Clone for HEADERCLOSESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HEADERCLOSESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HEADERCLOSESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HEADERCLOSESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HEADERCLOSESTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HEADERDROPDOWNFILTERSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDDFS_NORMAL: HEADERDROPDOWNFILTERSTATES = HEADERDROPDOWNFILTERSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDDFS_SOFTHOT: HEADERDROPDOWNFILTERSTATES = HEADERDROPDOWNFILTERSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDDFS_HOT: HEADERDROPDOWNFILTERSTATES = HEADERDROPDOWNFILTERSTATES(3i32); +impl ::core::marker::Copy for HEADERDROPDOWNFILTERSTATES {} +impl ::core::clone::Clone for HEADERDROPDOWNFILTERSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HEADERDROPDOWNFILTERSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HEADERDROPDOWNFILTERSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HEADERDROPDOWNFILTERSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HEADERDROPDOWNFILTERSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HEADERDROPDOWNSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDDS_NORMAL: HEADERDROPDOWNSTATES = HEADERDROPDOWNSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDDS_SOFTHOT: HEADERDROPDOWNSTATES = HEADERDROPDOWNSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HDDS_HOT: HEADERDROPDOWNSTATES = HEADERDROPDOWNSTATES(3i32); +impl ::core::marker::Copy for HEADERDROPDOWNSTATES {} +impl ::core::clone::Clone for HEADERDROPDOWNSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HEADERDROPDOWNSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HEADERDROPDOWNSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HEADERDROPDOWNSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HEADERDROPDOWNSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HEADERITEMLEFTSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HILS_NORMAL: HEADERITEMLEFTSTATES = HEADERITEMLEFTSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HILS_HOT: HEADERITEMLEFTSTATES = HEADERITEMLEFTSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HILS_PRESSED: HEADERITEMLEFTSTATES = HEADERITEMLEFTSTATES(3i32); +impl ::core::marker::Copy for HEADERITEMLEFTSTATES {} +impl ::core::clone::Clone for HEADERITEMLEFTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HEADERITEMLEFTSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HEADERITEMLEFTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HEADERITEMLEFTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HEADERITEMLEFTSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HEADERITEMRIGHTSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIRS_NORMAL: HEADERITEMRIGHTSTATES = HEADERITEMRIGHTSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIRS_HOT: HEADERITEMRIGHTSTATES = HEADERITEMRIGHTSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIRS_PRESSED: HEADERITEMRIGHTSTATES = HEADERITEMRIGHTSTATES(3i32); +impl ::core::marker::Copy for HEADERITEMRIGHTSTATES {} +impl ::core::clone::Clone for HEADERITEMRIGHTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HEADERITEMRIGHTSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HEADERITEMRIGHTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HEADERITEMRIGHTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HEADERITEMRIGHTSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HEADERITEMSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_NORMAL: HEADERITEMSTATES = HEADERITEMSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_HOT: HEADERITEMSTATES = HEADERITEMSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_PRESSED: HEADERITEMSTATES = HEADERITEMSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_SORTEDNORMAL: HEADERITEMSTATES = HEADERITEMSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_SORTEDHOT: HEADERITEMSTATES = HEADERITEMSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_SORTEDPRESSED: HEADERITEMSTATES = HEADERITEMSTATES(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_ICONNORMAL: HEADERITEMSTATES = HEADERITEMSTATES(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_ICONHOT: HEADERITEMSTATES = HEADERITEMSTATES(8i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_ICONPRESSED: HEADERITEMSTATES = HEADERITEMSTATES(9i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_ICONSORTEDNORMAL: HEADERITEMSTATES = HEADERITEMSTATES(10i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_ICONSORTEDHOT: HEADERITEMSTATES = HEADERITEMSTATES(11i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIS_ICONSORTEDPRESSED: HEADERITEMSTATES = HEADERITEMSTATES(12i32); +impl ::core::marker::Copy for HEADERITEMSTATES {} +impl ::core::clone::Clone for HEADERITEMSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HEADERITEMSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HEADERITEMSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HEADERITEMSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HEADERITEMSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HEADEROVERFLOWSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HOFS_NORMAL: HEADEROVERFLOWSTATES = HEADEROVERFLOWSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HOFS_HOT: HEADEROVERFLOWSTATES = HEADEROVERFLOWSTATES(2i32); +impl ::core::marker::Copy for HEADEROVERFLOWSTATES {} +impl ::core::clone::Clone for HEADEROVERFLOWSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HEADEROVERFLOWSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HEADEROVERFLOWSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HEADEROVERFLOWSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HEADEROVERFLOWSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HEADERPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HP_HEADERITEM: HEADERPARTS = HEADERPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HP_HEADERITEMLEFT: HEADERPARTS = HEADERPARTS(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HP_HEADERITEMRIGHT: HEADERPARTS = HEADERPARTS(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HP_HEADERSORTARROW: HEADERPARTS = HEADERPARTS(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HP_HEADERDROPDOWN: HEADERPARTS = HEADERPARTS(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HP_HEADERDROPDOWNFILTER: HEADERPARTS = HEADERPARTS(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HP_HEADEROVERFLOW: HEADERPARTS = HEADERPARTS(7i32); +impl ::core::marker::Copy for HEADERPARTS {} +impl ::core::clone::Clone for HEADERPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HEADERPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HEADERPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for HEADERPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HEADERPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HEADERPINSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHP_NORMAL: HEADERPINSTATES = HEADERPINSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHP_HOT: HEADERPINSTATES = HEADERPINSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHP_PRESSED: HEADERPINSTATES = HEADERPINSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHP_SELECTEDNORMAL: HEADERPINSTATES = HEADERPINSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHP_SELECTEDHOT: HEADERPINSTATES = HEADERPINSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBHP_SELECTEDPRESSED: HEADERPINSTATES = HEADERPINSTATES(6i32); +impl ::core::marker::Copy for HEADERPINSTATES {} +impl ::core::clone::Clone for HEADERPINSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HEADERPINSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HEADERPINSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HEADERPINSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HEADERPINSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HEADERSORTARROWSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HSAS_SORTEDUP: HEADERSORTARROWSTATES = HEADERSORTARROWSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HSAS_SORTEDDOWN: HEADERSORTARROWSTATES = HEADERSORTARROWSTATES(2i32); +impl ::core::marker::Copy for HEADERSORTARROWSTATES {} +impl ::core::clone::Clone for HEADERSORTARROWSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HEADERSORTARROWSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HEADERSORTARROWSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HEADERSORTARROWSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HEADERSORTARROWSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HEADERSTYLESTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HBG_DETAILS: HEADERSTYLESTATES = HEADERSTYLESTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HBG_ICON: HEADERSTYLESTATES = HEADERSTYLESTATES(2i32); +impl ::core::marker::Copy for HEADERSTYLESTATES {} +impl ::core::clone::Clone for HEADERSTYLESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HEADERSTYLESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HEADERSTYLESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HEADERSTYLESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HEADERSTYLESTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HEADER_CONTROL_NOTIFICATION_BUTTON(pub u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HEADER_CONTROL_NOTIFICATION_BUTTON_LEFT: HEADER_CONTROL_NOTIFICATION_BUTTON = HEADER_CONTROL_NOTIFICATION_BUTTON(0u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HEADER_CONTROL_NOTIFICATION_BUTTON_RIGHT: HEADER_CONTROL_NOTIFICATION_BUTTON = HEADER_CONTROL_NOTIFICATION_BUTTON(1u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HEADER_CONTROL_NOTIFICATION_BUTTON_MIDDLE: HEADER_CONTROL_NOTIFICATION_BUTTON = HEADER_CONTROL_NOTIFICATION_BUTTON(2u32); +impl ::core::marker::Copy for HEADER_CONTROL_NOTIFICATION_BUTTON {} +impl ::core::clone::Clone for HEADER_CONTROL_NOTIFICATION_BUTTON { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HEADER_CONTROL_NOTIFICATION_BUTTON { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HEADER_CONTROL_NOTIFICATION_BUTTON { + type Abi = Self; +} +impl ::core::fmt::Debug for HEADER_CONTROL_NOTIFICATION_BUTTON { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HEADER_CONTROL_NOTIFICATION_BUTTON").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HELPBUTTONSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HBS_NORMAL: HELPBUTTONSTATES = HELPBUTTONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HBS_HOT: HELPBUTTONSTATES = HELPBUTTONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HBS_PUSHED: HELPBUTTONSTATES = HELPBUTTONSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HBS_DISABLED: HELPBUTTONSTATES = HELPBUTTONSTATES(4i32); +impl ::core::marker::Copy for HELPBUTTONSTATES {} +impl ::core::clone::Clone for HELPBUTTONSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HELPBUTTONSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HELPBUTTONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HELPBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HELPBUTTONSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HELPLINKSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPHL_NORMAL: HELPLINKSTATES = HELPLINKSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPHL_HOT: HELPLINKSTATES = HELPLINKSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPHL_PRESSED: HELPLINKSTATES = HELPLINKSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPHL_DISABLED: HELPLINKSTATES = HELPLINKSTATES(4i32); +impl ::core::marker::Copy for HELPLINKSTATES {} +impl ::core::clone::Clone for HELPLINKSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HELPLINKSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HELPLINKSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HELPLINKSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HELPLINKSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HHT_ABOVE: u32 = 256u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HHT_BELOW: u32 = 512u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HHT_NOWHERE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HHT_ONDIVIDER: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HHT_ONDIVOPEN: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HHT_ONDROPDOWN: u32 = 8192u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HHT_ONFILTER: u32 = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HHT_ONFILTERBUTTON: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HHT_ONHEADER: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HHT_ONITEMSTATEICON: u32 = 4096u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HHT_ONOVERFLOW: u32 = 16384u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HHT_TOLEFT: u32 = 2048u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HHT_TORIGHT: u32 = 1024u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HIMAGELIST(pub isize); +impl HIMAGELIST { + pub fn is_invalid(&self) -> bool { + self.0 == -1 || self.0 == 0 + } +} +impl ::core::default::Default for HIMAGELIST { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for HIMAGELIST { + fn clone(&self) -> Self { + *self + } +} +impl ::core::marker::Copy for HIMAGELIST {} +impl ::core::fmt::Debug for HIMAGELIST { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HIMAGELIST").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for HIMAGELIST { + fn from(optional: ::core::option::Option) -> HIMAGELIST { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for HIMAGELIST { + type Abi = Self; +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[inline] +pub unsafe fn HIMAGELIST_QueryInterface<'a, P0>(himl: P0, riid: &::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn HIMAGELIST_QueryInterface(himl: HIMAGELIST, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT; + } + HIMAGELIST_QueryInterface(himl.into(), ::core::mem::transmute(riid), ::core::mem::transmute(ppv)).ok() +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIST_ADDTOFAVORITES: u32 = 3u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIST_BACK: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIST_FAVORITES: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIST_FORWARD: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HIST_VIEWTREE: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HKCOMB_A: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HKCOMB_C: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HKCOMB_CA: u32 = 64u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HKCOMB_NONE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HKCOMB_S: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HKCOMB_SA: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HKCOMB_SC: u32 = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HKCOMB_SCA: u32 = 128u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HKM_GETHOTKEY: u32 = 1026u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HKM_SETHOTKEY: u32 = 1025u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HKM_SETRULES: u32 = 1027u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HORZSCROLLSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HSS_NORMAL: HORZSCROLLSTATES = HORZSCROLLSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HSS_HOT: HORZSCROLLSTATES = HORZSCROLLSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HSS_PUSHED: HORZSCROLLSTATES = HORZSCROLLSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HSS_DISABLED: HORZSCROLLSTATES = HORZSCROLLSTATES(4i32); +impl ::core::marker::Copy for HORZSCROLLSTATES {} +impl ::core::clone::Clone for HORZSCROLLSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HORZSCROLLSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HORZSCROLLSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HORZSCROLLSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HORZSCROLLSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HORZTHUMBSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTS_NORMAL: HORZTHUMBSTATES = HORZTHUMBSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTS_HOT: HORZTHUMBSTATES = HORZTHUMBSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTS_PUSHED: HORZTHUMBSTATES = HORZTHUMBSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTS_DISABLED: HORZTHUMBSTATES = HORZTHUMBSTATES(4i32); +impl ::core::marker::Copy for HORZTHUMBSTATES {} +impl ::core::clone::Clone for HORZTHUMBSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HORZTHUMBSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HORZTHUMBSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HORZTHUMBSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HORZTHUMBSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HOTGLYPHSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HGLPS_CLOSED: HOTGLYPHSTATES = HOTGLYPHSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HGLPS_OPENED: HOTGLYPHSTATES = HOTGLYPHSTATES(2i32); +impl ::core::marker::Copy for HOTGLYPHSTATES {} +impl ::core::clone::Clone for HOTGLYPHSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HOTGLYPHSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HOTGLYPHSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HOTGLYPHSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HOTGLYPHSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HOTKEYF_ALT: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HOTKEYF_CONTROL: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HOTKEYF_EXT: u32 = 128u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HOTKEYF_SHIFT: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HOTKEY_CLASS: &str = "msctls_hotkey32"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HOTKEY_CLASSA: &str = "msctls_hotkey32"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HOTKEY_CLASSW: &str = "msctls_hotkey32"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HOVERBACKGROUNDSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UTS_NORMAL: HOVERBACKGROUNDSTATES = HOVERBACKGROUNDSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UTS_HOT: HOVERBACKGROUNDSTATES = HOVERBACKGROUNDSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UTS_PRESSED: HOVERBACKGROUNDSTATES = HOVERBACKGROUNDSTATES(3i32); +impl ::core::marker::Copy for HOVERBACKGROUNDSTATES {} +impl ::core::clone::Clone for HOVERBACKGROUNDSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HOVERBACKGROUNDSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HOVERBACKGROUNDSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HOVERBACKGROUNDSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HOVERBACKGROUNDSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HOVER_DEFAULT: u32 = 4294967295u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HPROPSHEETPAGE(pub isize); +impl HPROPSHEETPAGE { + pub fn is_invalid(&self) -> bool { + self.0 == -1 || self.0 == 0 + } +} +impl ::core::default::Default for HPROPSHEETPAGE { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for HPROPSHEETPAGE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::marker::Copy for HPROPSHEETPAGE {} +impl ::core::fmt::Debug for HPROPSHEETPAGE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HPROPSHEETPAGE").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for HPROPSHEETPAGE { + fn from(optional: ::core::option::Option) -> HPROPSHEETPAGE { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for HPROPSHEETPAGE { + type Abi = Self; +} +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HSYNTHETICPOINTERDEVICE(pub isize); +impl HSYNTHETICPOINTERDEVICE { + pub fn is_invalid(&self) -> bool { + self.0 == -1 || self.0 == 0 + } +} +impl ::core::default::Default for HSYNTHETICPOINTERDEVICE { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for HSYNTHETICPOINTERDEVICE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::marker::Copy for HSYNTHETICPOINTERDEVICE {} +impl ::core::fmt::Debug for HSYNTHETICPOINTERDEVICE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HSYNTHETICPOINTERDEVICE").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for HSYNTHETICPOINTERDEVICE { + fn from(optional: ::core::option::Option) -> HSYNTHETICPOINTERDEVICE { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for HSYNTHETICPOINTERDEVICE { + type Abi = Self; +} +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HTREEITEM(pub isize); +impl ::core::default::Default for HTREEITEM { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +impl ::core::clone::Clone for HTREEITEM { + fn clone(&self) -> Self { + *self + } +} +impl ::core::marker::Copy for HTREEITEM {} +impl ::core::fmt::Debug for HTREEITEM { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HTREEITEM").field(&self.0).finish() + } +} +impl ::core::convert::From<::core::option::Option> for HTREEITEM { + fn from(optional: ::core::option::Option) -> HTREEITEM { + optional.unwrap_or_default() + } +} +unsafe impl ::windows::core::Abi for HTREEITEM { + type Abi = Self; +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTTB_BACKGROUNDSEG: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTTB_CAPTION: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTTB_FIXEDBORDER: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTTB_RESIZINGBORDER_BOTTOM: u32 = 128u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTTB_RESIZINGBORDER_LEFT: u32 = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTTB_RESIZINGBORDER_RIGHT: u32 = 64u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTTB_RESIZINGBORDER_TOP: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTTB_SIZINGTEMPLATE: u32 = 256u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HTTB_SYSTEMSIZINGMARGINS: u32 = 512u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HYPERLINKSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HLS_NORMALTEXT: HYPERLINKSTATES = HYPERLINKSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const HLS_LINKTEXT: HYPERLINKSTATES = HYPERLINKSTATES(2i32); +impl ::core::marker::Copy for HYPERLINKSTATES {} +impl ::core::clone::Clone for HYPERLINKSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HYPERLINKSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HYPERLINKSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HYPERLINKSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HYPERLINKSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct HYPERLINKTEXTSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TS_HYPERLINK_NORMAL: HYPERLINKTEXTSTATES = HYPERLINKTEXTSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TS_HYPERLINK_HOT: HYPERLINKTEXTSTATES = HYPERLINKTEXTSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TS_HYPERLINK_PRESSED: HYPERLINKTEXTSTATES = HYPERLINKTEXTSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TS_HYPERLINK_DISABLED: HYPERLINKTEXTSTATES = HYPERLINKTEXTSTATES(4i32); +impl ::core::marker::Copy for HYPERLINKTEXTSTATES {} +impl ::core::clone::Clone for HYPERLINKTEXTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for HYPERLINKTEXTSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for HYPERLINKTEXTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for HYPERLINKTEXTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("HYPERLINKTEXTSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +#[inline] +pub unsafe fn HitTestThemeBackground<'a, P0, P1>(htheme: isize, hdc: P0, ipartid: i32, istateid: i32, dwoptions: u32, prect: &super::super::Foundation::RECT, hrgn: P1, pttest: super::super::Foundation::POINT) -> ::windows::core::Result +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn HitTestThemeBackground(htheme: isize, hdc: super::super::Graphics::Gdi::HDC, ipartid: i32, istateid: i32, dwoptions: u32, prect: *const super::super::Foundation::RECT, hrgn: super::super::Graphics::Gdi::HRGN, pttest: super::super::Foundation::POINT, pwhittestcode: *mut u16) -> ::windows::core::HRESULT; + } + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + HitTestThemeBackground(htheme, hdc.into(), ipartid, istateid, dwoptions, ::core::mem::transmute(prect), hrgn.into(), ::core::mem::transmute(pttest), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct ICONEFFECT(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ICE_NONE: ICONEFFECT = ICONEFFECT(0i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ICE_GLOW: ICONEFFECT = ICONEFFECT(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ICE_SHADOW: ICONEFFECT = ICONEFFECT(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ICE_PULSE: ICONEFFECT = ICONEFFECT(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ICE_ALPHA: ICONEFFECT = ICONEFFECT(4i32); +impl ::core::marker::Copy for ICONEFFECT {} +impl ::core::clone::Clone for ICONEFFECT { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for ICONEFFECT { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for ICONEFFECT { + type Abi = Self; +} +impl ::core::fmt::Debug for ICONEFFECT { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("ICONEFFECT").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const IDB_HIST_DISABLED: u32 = 14u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const IDB_HIST_HOT: u32 = 13u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const IDB_HIST_LARGE_COLOR: u32 = 9u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const IDB_HIST_NORMAL: u32 = 12u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const IDB_HIST_PRESSED: u32 = 15u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const IDB_HIST_SMALL_COLOR: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const IDB_STD_LARGE_COLOR: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const IDB_STD_SMALL_COLOR: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const IDB_VIEW_LARGE_COLOR: u32 = 5u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const IDB_VIEW_SMALL_COLOR: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const IDC_MANAGE_LINK: u32 = 1592u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ID_PSRESTARTWINDOWS: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct IEBARMENUSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBM_NORMAL: IEBARMENUSTATES = IEBARMENUSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBM_HOT: IEBARMENUSTATES = IEBARMENUSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBM_PRESSED: IEBARMENUSTATES = IEBARMENUSTATES(3i32); +impl ::core::marker::Copy for IEBARMENUSTATES {} +impl ::core::clone::Clone for IEBARMENUSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for IEBARMENUSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for IEBARMENUSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for IEBARMENUSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("IEBARMENUSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +pub struct IImageList(::windows::core::IUnknown); +impl IImageList { + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] + #[cfg(feature = "Win32_Graphics_Gdi")] + pub unsafe fn Add<'a, P0, P1>(&self, hbmimage: P0, hbmmask: P1) -> ::windows::core::Result + where + P0: ::std::convert::Into, + P1: ::std::convert::Into, + { + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + (::windows::core::Interface::vtable(self).Add)(::windows::core::Interface::as_raw(self), hbmimage.into(), hbmmask.into(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + } + #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] + #[cfg(feature = "Win32_UI_WindowsAndMessaging")] + pub unsafe fn ReplaceIcon<'a, P0>(&self, i: i32, hicon: P0) -> ::windows::core::Result + where + P0: ::std::convert::Into, + { + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + (::windows::core::Interface::vtable(self).ReplaceIcon)(::windows::core::Interface::as_raw(self), i, hicon.into(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + } + pub unsafe fn SetOverlayImage(&self, iimage: i32, ioverlay: i32) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).SetOverlayImage)(::windows::core::Interface::as_raw(self), iimage, ioverlay).ok() + } + #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] + #[cfg(feature = "Win32_Graphics_Gdi")] + pub unsafe fn Replace<'a, P0, P1>(&self, i: i32, hbmimage: P0, hbmmask: P1) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + P1: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).Replace)(::windows::core::Interface::as_raw(self), i, hbmimage.into(), hbmmask.into()).ok() + } + #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] + pub unsafe fn AddMasked<'a, P0, P1>(&self, hbmimage: P0, crmask: P1) -> ::windows::core::Result + where + P0: ::std::convert::Into, + P1: ::std::convert::Into, + { + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + (::windows::core::Interface::vtable(self).AddMasked)(::windows::core::Interface::as_raw(self), hbmimage.into(), crmask.into(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + } + #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] + pub unsafe fn Draw(&self, pimldp: &IMAGELISTDRAWPARAMS) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).Draw)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pimldp)).ok() + } + pub unsafe fn Remove(&self, i: i32) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).Remove)(::windows::core::Interface::as_raw(self), i).ok() + } + #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] + #[cfg(feature = "Win32_UI_WindowsAndMessaging")] + pub unsafe fn GetIcon(&self, i: i32, flags: u32) -> ::windows::core::Result { + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + (::windows::core::Interface::vtable(self).GetIcon)(::windows::core::Interface::as_raw(self), i, flags, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + } + #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] + pub unsafe fn GetImageInfo(&self, i: i32) -> ::windows::core::Result { + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + (::windows::core::Interface::vtable(self).GetImageInfo)(::windows::core::Interface::as_raw(self), i, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + } + pub unsafe fn Copy<'a, P0>(&self, idst: i32, punksrc: P0, isrc: i32, uflags: u32) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into<::windows::core::InParam<'a, ::windows::core::IUnknown>>, + { + (::windows::core::Interface::vtable(self).Copy)(::windows::core::Interface::as_raw(self), idst, punksrc.into().abi(), isrc, uflags).ok() + } + pub unsafe fn Merge<'a, P0>(&self, i1: i32, punk2: P0, i2: i32, dx: i32, dy: i32, riid: &::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into<::windows::core::InParam<'a, ::windows::core::IUnknown>>, + { + (::windows::core::Interface::vtable(self).Merge)(::windows::core::Interface::as_raw(self), i1, punk2.into().abi(), i2, dx, dy, ::core::mem::transmute(riid), ::core::mem::transmute(ppv)).ok() + } + pub unsafe fn Clone(&self, riid: &::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).Clone)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(riid), ::core::mem::transmute(ppv)).ok() + } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetImageRect(&self, i: i32) -> ::windows::core::Result { + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + (::windows::core::Interface::vtable(self).GetImageRect)(::windows::core::Interface::as_raw(self), i, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + } + pub unsafe fn GetIconSize(&self, cx: &mut i32, cy: &mut i32) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).GetIconSize)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(cx), ::core::mem::transmute(cy)).ok() + } + pub unsafe fn SetIconSize(&self, cx: i32, cy: i32) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).SetIconSize)(::windows::core::Interface::as_raw(self), cx, cy).ok() + } + pub unsafe fn GetImageCount(&self) -> ::windows::core::Result { + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + (::windows::core::Interface::vtable(self).GetImageCount)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + } + pub unsafe fn SetImageCount(&self, unewcount: u32) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).SetImageCount)(::windows::core::Interface::as_raw(self), unewcount).ok() + } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetBkColor<'a, P0>(&self, clrbk: P0) -> ::windows::core::Result + where + P0: ::std::convert::Into, + { + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + (::windows::core::Interface::vtable(self).SetBkColor)(::windows::core::Interface::as_raw(self), clrbk.into(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetBkColor(&self) -> ::windows::core::Result { + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + (::windows::core::Interface::vtable(self).GetBkColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + } + pub unsafe fn BeginDrag(&self, itrack: i32, dxhotspot: i32, dyhotspot: i32) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).BeginDrag)(::windows::core::Interface::as_raw(self), itrack, dxhotspot, dyhotspot).ok() + } + pub unsafe fn EndDrag(&self) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).EndDrag)(::windows::core::Interface::as_raw(self)).ok() + } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn DragEnter<'a, P0>(&self, hwndlock: P0, x: i32, y: i32) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).DragEnter)(::windows::core::Interface::as_raw(self), hwndlock.into(), x, y).ok() + } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn DragLeave<'a, P0>(&self, hwndlock: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).DragLeave)(::windows::core::Interface::as_raw(self), hwndlock.into()).ok() + } + pub unsafe fn DragMove(&self, x: i32, y: i32) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).DragMove)(::windows::core::Interface::as_raw(self), x, y).ok() + } + pub unsafe fn SetDragCursorImage<'a, P0>(&self, punk: P0, idrag: i32, dxhotspot: i32, dyhotspot: i32) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into<::windows::core::InParam<'a, ::windows::core::IUnknown>>, + { + (::windows::core::Interface::vtable(self).SetDragCursorImage)(::windows::core::Interface::as_raw(self), punk.into().abi(), idrag, dxhotspot, dyhotspot).ok() + } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn DragShowNolock<'a, P0>(&self, fshow: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).DragShowNolock)(::windows::core::Interface::as_raw(self), fshow.into()).ok() + } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetDragImage(&self, ppt: ::core::option::Option<&mut super::super::Foundation::POINT>, ppthotspot: ::core::option::Option<&mut super::super::Foundation::POINT>, riid: &::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()> { + (::windows::core::Interface::vtable(self).GetDragImage)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(ppt), ::core::mem::transmute(ppthotspot), ::core::mem::transmute(riid), ::core::mem::transmute(ppv)).ok() + } + pub unsafe fn GetItemFlags(&self, i: i32) -> ::windows::core::Result { + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + (::windows::core::Interface::vtable(self).GetItemFlags)(::windows::core::Interface::as_raw(self), i, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + } + pub unsafe fn GetOverlayImage(&self, ioverlay: i32) -> ::windows::core::Result { + let mut result__ = ::core::mem::MaybeUninit::zeroed(); + (::windows::core::Interface::vtable(self).GetOverlayImage)(::windows::core::Interface::as_raw(self), ioverlay, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + } +} +impl ::core::convert::From for ::windows::core::IUnknown { + fn from(value: IImageList) -> Self { + unsafe { ::core::mem::transmute(value) } + } +} +impl<'a> ::core::convert::From<&'a IImageList> for &'a ::windows::core::IUnknown { + fn from(value: &'a IImageList) -> Self { + unsafe { ::core::mem::transmute(value) } + } +} +impl ::core::convert::From<&IImageList> for ::windows::core::IUnknown { + fn from(value: &IImageList) -> Self { + ::core::convert::From::from(::core::clone::Clone::clone(value)) + } +} +impl ::core::clone::Clone for IImageList { + fn clone(&self) -> Self { + Self(self.0.clone()) + } +} +impl ::core::cmp::PartialEq for IImageList { + fn eq(&self, other: &Self) -> bool { + self.0 == other.0 + } +} +impl ::core::cmp::Eq for IImageList {} +impl ::core::fmt::Debug for IImageList { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("IImageList").field(&self.0).finish() + } +} +unsafe impl ::windows::core::Interface for IImageList { + type Vtable = IImageList_Vtbl; + const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x46eb5926_582e_4017_9fdf_e8998daa0950); } #[repr(C)] #[doc(hidden)] @@ -5453,13 +8341,13 @@ pub struct IImageList_Vtbl { pub Replace: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, i: i32, hbmimage: super::super::Graphics::Gdi::HBITMAP, hbmmask: super::super::Graphics::Gdi::HBITMAP) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Graphics_Gdi"))] Replace: usize, - #[cfg(feature = "Win32_Graphics_Gdi")] - pub AddMasked: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hbmimage: super::super::Graphics::Gdi::HBITMAP, crmask: u32, pi: *mut i32) -> ::windows::core::HRESULT, - #[cfg(not(feature = "Win32_Graphics_Gdi"))] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] + pub AddMasked: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hbmimage: super::super::Graphics::Gdi::HBITMAP, crmask: super::super::Foundation::COLORREF, pi: *mut i32) -> ::windows::core::HRESULT, + #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))] AddMasked: usize, - #[cfg(feature = "Win32_Graphics_Gdi")] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub Draw: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pimldp: *const IMAGELISTDRAWPARAMS) -> ::windows::core::HRESULT, - #[cfg(not(feature = "Win32_Graphics_Gdi"))] + #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))] Draw: usize, pub Remove: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, i: i32) -> ::windows::core::HRESULT, #[cfg(feature = "Win32_UI_WindowsAndMessaging")] @@ -5481,8 +8369,14 @@ pub struct IImageList_Vtbl { pub SetIconSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cx: i32, cy: i32) -> ::windows::core::HRESULT, pub GetImageCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pi: *mut i32) -> ::windows::core::HRESULT, pub SetImageCount: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, unewcount: u32) -> ::windows::core::HRESULT, - pub SetBkColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clrbk: u32, pclr: *mut u32) -> ::windows::core::HRESULT, - pub GetBkColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pclr: *mut u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub SetBkColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clrbk: super::super::Foundation::COLORREF, pclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetBkColor: usize, + #[cfg(feature = "Win32_Foundation")] + pub GetBkColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pclr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetBkColor: usize, pub BeginDrag: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, itrack: i32, dxhotspot: i32, dyhotspot: i32) -> ::windows::core::HRESULT, pub EndDrag: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, #[cfg(feature = "Win32_Foundation")] @@ -5541,17 +8435,18 @@ impl IImageList2 { { (::windows::core::Interface::vtable(self).base__.Replace)(::windows::core::Interface::as_raw(self), i, hbmimage.into(), hbmmask.into()).ok() } - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - #[cfg(feature = "Win32_Graphics_Gdi")] - pub unsafe fn AddMasked<'a, P0>(&self, hbmimage: P0, crmask: u32) -> ::windows::core::Result + #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] + pub unsafe fn AddMasked<'a, P0, P1>(&self, hbmimage: P0, crmask: P1) -> ::windows::core::Result where P0: ::std::convert::Into, + P1: ::std::convert::Into, { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).base__.AddMasked)(::windows::core::Interface::as_raw(self), hbmimage.into(), crmask, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).base__.AddMasked)(::windows::core::Interface::as_raw(self), hbmimage.into(), crmask.into(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - #[cfg(feature = "Win32_Graphics_Gdi")] + #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub unsafe fn Draw(&self, pimldp: &IMAGELISTDRAWPARAMS) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).base__.Draw)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pimldp)).ok() } @@ -5604,13 +8499,20 @@ impl IImageList2 { pub unsafe fn SetImageCount(&self, unewcount: u32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).base__.SetImageCount)(::windows::core::Interface::as_raw(self), unewcount).ok() } - pub unsafe fn SetBkColor(&self, clrbk: u32) -> ::windows::core::Result { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetBkColor<'a, P0>(&self, clrbk: P0) -> ::windows::core::Result + where + P0: ::std::convert::Into, + { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).base__.SetBkColor)(::windows::core::Interface::as_raw(self), clrbk, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).base__.SetBkColor)(::windows::core::Interface::as_raw(self), clrbk.into(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } - pub unsafe fn GetBkColor(&self) -> ::windows::core::Result { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetBkColor(&self) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).base__.GetBkColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).base__.GetBkColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } pub unsafe fn BeginDrag(&self, itrack: i32, dxhotspot: i32, dyhotspot: i32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).base__.BeginDrag)(::windows::core::Interface::as_raw(self), itrack, dxhotspot, dyhotspot).ok() @@ -5688,8 +8590,8 @@ impl IImageList2 { pub unsafe fn DiscardImages(&self, ifirstimage: i32, ilastimage: i32, dwflags: u32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).DiscardImages)(::windows::core::Interface::as_raw(self), ifirstimage, ilastimage, dwflags).ok() } - #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] - #[cfg(feature = "Win32_Graphics_Gdi")] + #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub unsafe fn PreloadImages(&self, pimldp: &IMAGELISTDRAWPARAMS) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).PreloadImages)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pimldp)).ok() } @@ -5778,9 +8680,9 @@ pub struct IImageList2_Vtbl { pub GetCallback: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, pub ForceImagePresent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, iimage: i32, dwflags: u32) -> ::windows::core::HRESULT, pub DiscardImages: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ifirstimage: i32, ilastimage: i32, dwflags: u32) -> ::windows::core::HRESULT, - #[cfg(feature = "Win32_Graphics_Gdi")] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub PreloadImages: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pimldp: *const IMAGELISTDRAWPARAMS) -> ::windows::core::HRESULT, - #[cfg(not(feature = "Win32_Graphics_Gdi"))] + #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))] PreloadImages: usize, pub GetStatistics: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pils: *mut IMAGELISTSTATS) -> ::windows::core::HRESULT, pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cx: i32, cy: i32, flags: IMAGELIST_CREATION_FLAGS, cinitial: i32, cgrow: i32) -> ::windows::core::HRESULT, @@ -5934,8 +8836,8 @@ impl ::core::fmt::Debug for IMAGELAYOUT { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub struct IMAGELISTDRAWPARAMS { pub cbSize: u32, pub himl: HIMAGELIST, @@ -5947,23 +8849,23 @@ pub struct IMAGELISTDRAWPARAMS { pub cy: i32, pub xBitmap: i32, pub yBitmap: i32, - pub rgbBk: u32, - pub rgbFg: u32, + pub rgbBk: super::super::Foundation::COLORREF, + pub rgbFg: super::super::Foundation::COLORREF, pub fStyle: u32, pub dwRop: u32, pub fState: u32, pub Frame: u32, - pub crEffect: u32, + pub crEffect: super::super::Foundation::COLORREF, } -#[cfg(feature = "Win32_Graphics_Gdi")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl ::core::marker::Copy for IMAGELISTDRAWPARAMS {} -#[cfg(feature = "Win32_Graphics_Gdi")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl ::core::clone::Clone for IMAGELISTDRAWPARAMS { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Graphics_Gdi")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl ::core::fmt::Debug for IMAGELISTDRAWPARAMS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("IMAGELISTDRAWPARAMS") @@ -5987,19 +8889,19 @@ impl ::core::fmt::Debug for IMAGELISTDRAWPARAMS { .finish() } } -#[cfg(feature = "Win32_Graphics_Gdi")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] unsafe impl ::windows::core::Abi for IMAGELISTDRAWPARAMS { type Abi = Self; } -#[cfg(feature = "Win32_Graphics_Gdi")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl ::core::cmp::PartialEq for IMAGELISTDRAWPARAMS { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_Graphics_Gdi")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl ::core::cmp::Eq for IMAGELISTDRAWPARAMS {} -#[cfg(feature = "Win32_Graphics_Gdi")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl ::core::default::Default for IMAGELISTDRAWPARAMS { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -6425,6 +9327,37 @@ pub const IPM_SETFOCUS: u32 = 1128u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const IPM_SETRANGE: u32 = 1127u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct ITEMSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSI_HOT: ITEMSTATES = ITEMSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSI_HOTSELECTED: ITEMSTATES = ITEMSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSI_SELECTED: ITEMSTATES = ITEMSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBPSI_SELECTEDNOTFOCUS: ITEMSTATES = ITEMSTATES(4i32); +impl ::core::marker::Copy for ITEMSTATES {} +impl ::core::clone::Clone for ITEMSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for ITEMSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for ITEMSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for ITEMSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("ITEMSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const I_IMAGECALLBACK: i32 = -1i32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const I_IMAGENONE: i32 = -2i32; @@ -6446,19 +9379,20 @@ where } ImageList_Add(himl.into(), hbmimage.into(), hbmmask.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(feature = "Win32_Graphics_Gdi")] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn ImageList_AddMasked<'a, P0, P1>(himl: P0, hbmimage: P1, crmask: u32) -> i32 +pub unsafe fn ImageList_AddMasked<'a, P0, P1, P2>(himl: P0, hbmimage: P1, crmask: P2) -> i32 where P0: ::std::convert::Into, P1: ::std::convert::Into, + P2: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ImageList_AddMasked(himl: HIMAGELIST, hbmimage: super::super::Graphics::Gdi::HBITMAP, crmask: u32) -> i32; + fn ImageList_AddMasked(himl: HIMAGELIST, hbmimage: super::super::Graphics::Gdi::HBITMAP, crmask: super::super::Foundation::COLORREF) -> i32; } - ImageList_AddMasked(himl.into(), hbmimage.into(), crmask) + ImageList_AddMasked(himl.into(), hbmimage.into(), crmask.into()) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -6589,16 +9523,18 @@ where #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn ImageList_DrawEx<'a, P0, P1>(himl: P0, i: i32, hdcdst: P1, x: i32, y: i32, dx: i32, dy: i32, rgbbk: u32, rgbfg: u32, fstyle: IMAGE_LIST_DRAW_STYLE) -> super::super::Foundation::BOOL +pub unsafe fn ImageList_DrawEx<'a, P0, P1, P2, P3>(himl: P0, i: i32, hdcdst: P1, x: i32, y: i32, dx: i32, dy: i32, rgbbk: P2, rgbfg: P3, fstyle: IMAGE_LIST_DRAW_STYLE) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, P1: ::std::convert::Into, + P2: ::std::convert::Into, + P3: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ImageList_DrawEx(himl: HIMAGELIST, i: i32, hdcdst: super::super::Graphics::Gdi::HDC, x: i32, y: i32, dx: i32, dy: i32, rgbbk: u32, rgbfg: u32, fstyle: IMAGE_LIST_DRAW_STYLE) -> super::super::Foundation::BOOL; + fn ImageList_DrawEx(himl: HIMAGELIST, i: i32, hdcdst: super::super::Graphics::Gdi::HDC, x: i32, y: i32, dx: i32, dy: i32, rgbbk: super::super::Foundation::COLORREF, rgbfg: super::super::Foundation::COLORREF, fstyle: IMAGE_LIST_DRAW_STYLE) -> super::super::Foundation::BOOL; } - ImageList_DrawEx(himl.into(), i, hdcdst.into(), x, y, dx, dy, rgbbk, rgbfg, fstyle) + ImageList_DrawEx(himl.into(), i, hdcdst.into(), x, y, dx, dy, rgbbk.into(), rgbfg.into(), fstyle) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] @@ -6631,15 +9567,16 @@ pub unsafe fn ImageList_EndDrag() { } ImageList_EndDrag() } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn ImageList_GetBkColor<'a, P0>(himl: P0) -> u32 +pub unsafe fn ImageList_GetBkColor<'a, P0>(himl: P0) -> super::super::Foundation::COLORREF where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ImageList_GetBkColor(himl: HIMAGELIST) -> u32; + fn ImageList_GetBkColor(himl: HIMAGELIST) -> super::super::Foundation::COLORREF; } ImageList_GetBkColor(himl.into()) } @@ -6707,30 +9644,32 @@ where #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] #[inline] -pub unsafe fn ImageList_LoadImageA<'a, P0, P1>(hi: P0, lpbmp: P1, cx: i32, cgrow: i32, crmask: u32, utype: u32, uflags: super::WindowsAndMessaging::IMAGE_FLAGS) -> HIMAGELIST +pub unsafe fn ImageList_LoadImageA<'a, P0, P1, P2>(hi: P0, lpbmp: P1, cx: i32, cgrow: i32, crmask: P2, utype: u32, uflags: super::WindowsAndMessaging::IMAGE_FLAGS) -> HIMAGELIST where P0: ::std::convert::Into, P1: ::std::convert::Into<::windows::core::PCSTR>, + P2: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ImageList_LoadImageA(hi: super::super::Foundation::HINSTANCE, lpbmp: ::windows::core::PCSTR, cx: i32, cgrow: i32, crmask: u32, utype: u32, uflags: super::WindowsAndMessaging::IMAGE_FLAGS) -> HIMAGELIST; + fn ImageList_LoadImageA(hi: super::super::Foundation::HINSTANCE, lpbmp: ::windows::core::PCSTR, cx: i32, cgrow: i32, crmask: super::super::Foundation::COLORREF, utype: u32, uflags: super::WindowsAndMessaging::IMAGE_FLAGS) -> HIMAGELIST; } - ImageList_LoadImageA(hi.into(), lpbmp.into(), cx, cgrow, crmask, utype, uflags) + ImageList_LoadImageA(hi.into(), lpbmp.into(), cx, cgrow, crmask.into(), utype, uflags) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_WindowsAndMessaging"))] #[inline] -pub unsafe fn ImageList_LoadImageW<'a, P0, P1>(hi: P0, lpbmp: P1, cx: i32, cgrow: i32, crmask: u32, utype: u32, uflags: super::WindowsAndMessaging::IMAGE_FLAGS) -> HIMAGELIST +pub unsafe fn ImageList_LoadImageW<'a, P0, P1, P2>(hi: P0, lpbmp: P1, cx: i32, cgrow: i32, crmask: P2, utype: u32, uflags: super::WindowsAndMessaging::IMAGE_FLAGS) -> HIMAGELIST where P0: ::std::convert::Into, P1: ::std::convert::Into<::windows::core::PCWSTR>, + P2: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ImageList_LoadImageW(hi: super::super::Foundation::HINSTANCE, lpbmp: ::windows::core::PCWSTR, cx: i32, cgrow: i32, crmask: u32, utype: u32, uflags: super::WindowsAndMessaging::IMAGE_FLAGS) -> HIMAGELIST; + fn ImageList_LoadImageW(hi: super::super::Foundation::HINSTANCE, lpbmp: ::windows::core::PCWSTR, cx: i32, cgrow: i32, crmask: super::super::Foundation::COLORREF, utype: u32, uflags: super::WindowsAndMessaging::IMAGE_FLAGS) -> HIMAGELIST; } - ImageList_LoadImageW(hi.into(), lpbmp.into(), cx, cgrow, crmask, utype, uflags) + ImageList_LoadImageW(hi.into(), lpbmp.into(), cx, cgrow, crmask.into(), utype, uflags) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] @@ -6813,17 +9752,19 @@ where } ImageList_ReplaceIcon(himl.into(), i, hicon.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn ImageList_SetBkColor<'a, P0>(himl: P0, clrbk: u32) -> u32 +pub unsafe fn ImageList_SetBkColor<'a, P0, P1>(himl: P0, clrbk: P1) -> super::super::Foundation::COLORREF where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ImageList_SetBkColor(himl: HIMAGELIST, clrbk: u32) -> u32; + fn ImageList_SetBkColor(himl: HIMAGELIST, clrbk: super::super::Foundation::COLORREF) -> super::super::Foundation::COLORREF; } - ImageList_SetBkColor(himl.into(), clrbk) + ImageList_SetBkColor(himl.into(), clrbk.into()) } #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -7032,6 +9973,37 @@ pub unsafe fn IsThemePartDefined(htheme: isize, ipartid: i32, istateid: i32) -> } IsThemePartDefined(htheme, ipartid, istateid) } +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct LABELSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLS_NORMAL: LABELSTATES = LABELSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLS_SELECTED: LABELSTATES = LABELSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLS_EMPHASIZED: LABELSTATES = LABELSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLS_DISABLED: LABELSTATES = LABELSTATES(4i32); +impl ::core::marker::Copy for LABELSTATES {} +impl ::core::clone::Clone for LABELSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for LABELSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for LABELSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for LABELSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("LABELSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] @@ -7061,61 +10033,226 @@ impl ::core::clone::Clone for LHITTESTINFO { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for LHITTESTINFO { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("LHITTESTINFO").field("pt", &self.pt).field("item", &self.item).finish() +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for LHITTESTINFO { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("LHITTESTINFO").field("pt", &self.pt).field("item", &self.item).finish() + } +} +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for LHITTESTINFO { + type Abi = Self; +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for LHITTESTINFO { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for LHITTESTINFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for LHITTESTINFO { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LIF_ITEMID: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LIF_ITEMINDEX: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LIF_STATE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LIF_URL: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct LINKHEADERSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLH_NORMAL: LINKHEADERSTATES = LINKHEADERSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLH_HOVER: LINKHEADERSTATES = LINKHEADERSTATES(2i32); +impl ::core::marker::Copy for LINKHEADERSTATES {} +impl ::core::clone::Clone for LINKHEADERSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for LINKHEADERSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for LINKHEADERSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for LINKHEADERSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("LINKHEADERSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct LINKPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LP_HYPERLINK: LINKPARTS = LINKPARTS(1i32); +impl ::core::marker::Copy for LINKPARTS {} +impl ::core::clone::Clone for LINKPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for LINKPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for LINKPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for LINKPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("LINKPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct LINKSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLYOUTLINK_NORMAL: LINKSTATES = LINKSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const FLYOUTLINK_HOVER: LINKSTATES = LINKSTATES(2i32); +impl ::core::marker::Copy for LINKSTATES {} +impl ::core::clone::Clone for LINKSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for LINKSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for LINKSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for LINKSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("LINKSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct LISTBOXPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBCP_BORDER_HSCROLL: LISTBOXPARTS = LISTBOXPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBCP_BORDER_HVSCROLL: LISTBOXPARTS = LISTBOXPARTS(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBCP_BORDER_NOSCROLL: LISTBOXPARTS = LISTBOXPARTS(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBCP_BORDER_VSCROLL: LISTBOXPARTS = LISTBOXPARTS(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LBCP_ITEM: LISTBOXPARTS = LISTBOXPARTS(5i32); +impl ::core::marker::Copy for LISTBOXPARTS {} +impl ::core::clone::Clone for LISTBOXPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for LISTBOXPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for LISTBOXPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for LISTBOXPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("LISTBOXPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct LISTITEMSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LISS_NORMAL: LISTITEMSTATES = LISTITEMSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LISS_HOT: LISTITEMSTATES = LISTITEMSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LISS_SELECTED: LISTITEMSTATES = LISTITEMSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LISS_DISABLED: LISTITEMSTATES = LISTITEMSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LISS_SELECTEDNOTFOCUS: LISTITEMSTATES = LISTITEMSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LISS_HOTSELECTED: LISTITEMSTATES = LISTITEMSTATES(6i32); +impl ::core::marker::Copy for LISTITEMSTATES {} +impl ::core::clone::Clone for LISTITEMSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for LISTITEMSTATES { + fn default() -> Self { + Self(0) } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for LHITTESTINFO { +unsafe impl ::windows::core::Abi for LISTITEMSTATES { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for LHITTESTINFO { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for LHITTESTINFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for LHITTESTINFO { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for LISTITEMSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("LISTITEMSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const LIF_ITEMID: u32 = 4u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct LISTVIEWPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const LIF_ITEMINDEX: u32 = 1u32; +pub const LVP_LISTITEM: LISTVIEWPARTS = LISTVIEWPARTS(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const LIF_STATE: u32 = 2u32; +pub const LVP_LISTGROUP: LISTVIEWPARTS = LISTVIEWPARTS(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const LIF_URL: u32 = 8u32; +pub const LVP_LISTDETAIL: LISTVIEWPARTS = LISTVIEWPARTS(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct LINKPARTS(pub i32); +pub const LVP_LISTSORTEDDETAIL: LISTVIEWPARTS = LISTVIEWPARTS(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const LP_HYPERLINK: LINKPARTS = LINKPARTS(1i32); -impl ::core::marker::Copy for LINKPARTS {} -impl ::core::clone::Clone for LINKPARTS { +pub const LVP_EMPTYTEXT: LISTVIEWPARTS = LISTVIEWPARTS(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_GROUPHEADER: LISTVIEWPARTS = LISTVIEWPARTS(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_GROUPHEADERLINE: LISTVIEWPARTS = LISTVIEWPARTS(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_EXPANDBUTTON: LISTVIEWPARTS = LISTVIEWPARTS(8i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_COLLAPSEBUTTON: LISTVIEWPARTS = LISTVIEWPARTS(9i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const LVP_COLUMNDETAIL: LISTVIEWPARTS = LISTVIEWPARTS(10i32); +impl ::core::marker::Copy for LISTVIEWPARTS {} +impl ::core::clone::Clone for LISTVIEWPARTS { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for LINKPARTS { +impl ::core::default::Default for LISTVIEWPARTS { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for LINKPARTS { +unsafe impl ::windows::core::Abi for LISTVIEWPARTS { type Abi = Self; } -impl ::core::fmt::Debug for LINKPARTS { +impl ::core::fmt::Debug for LISTVIEWPARTS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("LINKPARTS").field(&self.0).finish() + f.debug_tuple("LISTVIEWPARTS").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] @@ -7951,7 +11088,8 @@ impl ::core::default::Default for LVGROUP { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct LVGROUPMETRICS { pub cbSize: u32, pub mask: u32, @@ -7959,33 +11097,40 @@ pub struct LVGROUPMETRICS { pub Top: u32, pub Right: u32, pub Bottom: u32, - pub crLeft: u32, - pub crTop: u32, - pub crRight: u32, - pub crBottom: u32, - pub crHeader: u32, - pub crFooter: u32, + pub crLeft: super::super::Foundation::COLORREF, + pub crTop: super::super::Foundation::COLORREF, + pub crRight: super::super::Foundation::COLORREF, + pub crBottom: super::super::Foundation::COLORREF, + pub crHeader: super::super::Foundation::COLORREF, + pub crFooter: super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for LVGROUPMETRICS {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for LVGROUPMETRICS { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for LVGROUPMETRICS { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("LVGROUPMETRICS").field("cbSize", &self.cbSize).field("mask", &self.mask).field("Left", &self.Left).field("Top", &self.Top).field("Right", &self.Right).field("Bottom", &self.Bottom).field("crLeft", &self.crLeft).field("crTop", &self.crTop).field("crRight", &self.crRight).field("crBottom", &self.crBottom).field("crHeader", &self.crHeader).field("crFooter", &self.crFooter).finish() } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for LVGROUPMETRICS { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for LVGROUPMETRICS { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for LVGROUPMETRICS {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for LVGROUPMETRICS { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -9235,6 +12380,66 @@ impl ::core::fmt::Debug for MARKUPTEXTSTATES { } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct MAXBUTTONSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MAXBS_NORMAL: MAXBUTTONSTATES = MAXBUTTONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MAXBS_HOT: MAXBUTTONSTATES = MAXBUTTONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MAXBS_PUSHED: MAXBUTTONSTATES = MAXBUTTONSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MAXBS_DISABLED: MAXBUTTONSTATES = MAXBUTTONSTATES(4i32); +impl ::core::marker::Copy for MAXBUTTONSTATES {} +impl ::core::clone::Clone for MAXBUTTONSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for MAXBUTTONSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for MAXBUTTONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for MAXBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("MAXBUTTONSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct MAXCAPTIONSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MXCS_ACTIVE: MAXCAPTIONSTATES = MAXCAPTIONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MXCS_INACTIVE: MAXCAPTIONSTATES = MAXCAPTIONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MXCS_DISABLED: MAXCAPTIONSTATES = MAXCAPTIONSTATES(3i32); +impl ::core::marker::Copy for MAXCAPTIONSTATES {} +impl ::core::clone::Clone for MAXCAPTIONSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for MAXCAPTIONSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for MAXCAPTIONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for MAXCAPTIONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("MAXCAPTIONSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MAXPROPPAGES: u32 = 100u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MAX_INTLIST_COUNT: u32 = 402u32; @@ -9558,6 +12763,99 @@ pub const MCS_NOTRAILINGDATES: u32 = 64u32; pub const MCS_SHORTDAYSOFWEEK: u32 = 128u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MCS_WEEKNUMBERS: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct MDICLOSEBUTTONSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDCL_NORMAL: MDICLOSEBUTTONSTATES = MDICLOSEBUTTONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDCL_HOT: MDICLOSEBUTTONSTATES = MDICLOSEBUTTONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDCL_PUSHED: MDICLOSEBUTTONSTATES = MDICLOSEBUTTONSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDCL_DISABLED: MDICLOSEBUTTONSTATES = MDICLOSEBUTTONSTATES(4i32); +impl ::core::marker::Copy for MDICLOSEBUTTONSTATES {} +impl ::core::clone::Clone for MDICLOSEBUTTONSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for MDICLOSEBUTTONSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for MDICLOSEBUTTONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for MDICLOSEBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("MDICLOSEBUTTONSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct MDIMINBUTTONSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDMI_NORMAL: MDIMINBUTTONSTATES = MDIMINBUTTONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDMI_HOT: MDIMINBUTTONSTATES = MDIMINBUTTONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDMI_PUSHED: MDIMINBUTTONSTATES = MDIMINBUTTONSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDMI_DISABLED: MDIMINBUTTONSTATES = MDIMINBUTTONSTATES(4i32); +impl ::core::marker::Copy for MDIMINBUTTONSTATES {} +impl ::core::clone::Clone for MDIMINBUTTONSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for MDIMINBUTTONSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for MDIMINBUTTONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for MDIMINBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("MDIMINBUTTONSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct MDIRESTOREBUTTONSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDRE_NORMAL: MDIRESTOREBUTTONSTATES = MDIRESTOREBUTTONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDRE_HOT: MDIRESTOREBUTTONSTATES = MDIRESTOREBUTTONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDRE_PUSHED: MDIRESTOREBUTTONSTATES = MDIRESTOREBUTTONSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDRE_DISABLED: MDIRESTOREBUTTONSTATES = MDIRESTOREBUTTONSTATES(4i32); +impl ::core::marker::Copy for MDIRESTOREBUTTONSTATES {} +impl ::core::clone::Clone for MDIRESTOREBUTTONSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for MDIRESTOREBUTTONSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for MDIRESTOREBUTTONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for MDIRESTOREBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("MDIRESTOREBUTTONSTATES").field(&self.0).finish() + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub struct MEASUREITEMSTRUCT { @@ -9596,63 +12894,186 @@ impl ::core::default::Default for MEASUREITEMSTRUCT { #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct MENUBANDPARTS(pub i32); +pub struct MENUBANDPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDP_NEWAPPBUTTON: MENUBANDPARTS = MENUBANDPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDP_SEPERATOR: MENUBANDPARTS = MENUBANDPARTS(2i32); +impl ::core::marker::Copy for MENUBANDPARTS {} +impl ::core::clone::Clone for MENUBANDPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for MENUBANDPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for MENUBANDPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for MENUBANDPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("MENUBANDPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct MENUBANDSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDS_NORMAL: MENUBANDSTATES = MENUBANDSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDS_HOT: MENUBANDSTATES = MENUBANDSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDS_PRESSED: MENUBANDSTATES = MENUBANDSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDS_DISABLED: MENUBANDSTATES = MENUBANDSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDS_CHECKED: MENUBANDSTATES = MENUBANDSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MDS_HOTCHECKED: MENUBANDSTATES = MENUBANDSTATES(6i32); +impl ::core::marker::Copy for MENUBANDSTATES {} +impl ::core::clone::Clone for MENUBANDSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for MENUBANDSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for MENUBANDSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for MENUBANDSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("MENUBANDSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct MENUPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_MENUITEM_TMSCHEMA: MENUPARTS = MENUPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_MENUDROPDOWN_TMSCHEMA: MENUPARTS = MENUPARTS(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_MENUBARITEM_TMSCHEMA: MENUPARTS = MENUPARTS(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_MENUBARDROPDOWN_TMSCHEMA: MENUPARTS = MENUPARTS(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_CHEVRON_TMSCHEMA: MENUPARTS = MENUPARTS(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_SEPARATOR_TMSCHEMA: MENUPARTS = MENUPARTS(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_BARBACKGROUND: MENUPARTS = MENUPARTS(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_BARITEM: MENUPARTS = MENUPARTS(8i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPBACKGROUND: MENUPARTS = MENUPARTS(9i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPBORDERS: MENUPARTS = MENUPARTS(10i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPCHECK: MENUPARTS = MENUPARTS(11i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPCHECKBACKGROUND: MENUPARTS = MENUPARTS(12i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPGUTTER: MENUPARTS = MENUPARTS(13i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPITEM: MENUPARTS = MENUPARTS(14i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPSEPARATOR: MENUPARTS = MENUPARTS(15i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_POPUPSUBMENU: MENUPARTS = MENUPARTS(16i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_SYSTEMCLOSE: MENUPARTS = MENUPARTS(17i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_SYSTEMMAXIMIZE: MENUPARTS = MENUPARTS(18i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_SYSTEMMINIMIZE: MENUPARTS = MENUPARTS(19i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MENU_SYSTEMRESTORE: MENUPARTS = MENUPARTS(20i32); +impl ::core::marker::Copy for MENUPARTS {} +impl ::core::clone::Clone for MENUPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for MENUPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for MENUPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for MENUPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("MENUPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct MINBUTTONSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MDP_NEWAPPBUTTON: MENUBANDPARTS = MENUBANDPARTS(1i32); +pub const MINBS_NORMAL: MINBUTTONSTATES = MINBUTTONSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MDP_SEPERATOR: MENUBANDPARTS = MENUBANDPARTS(2i32); -impl ::core::marker::Copy for MENUBANDPARTS {} -impl ::core::clone::Clone for MENUBANDPARTS { +pub const MINBS_HOT: MINBUTTONSTATES = MINBUTTONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MINBS_PUSHED: MINBUTTONSTATES = MINBUTTONSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MINBS_DISABLED: MINBUTTONSTATES = MINBUTTONSTATES(4i32); +impl ::core::marker::Copy for MINBUTTONSTATES {} +impl ::core::clone::Clone for MINBUTTONSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for MENUBANDPARTS { +impl ::core::default::Default for MINBUTTONSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for MENUBANDPARTS { +unsafe impl ::windows::core::Abi for MINBUTTONSTATES { type Abi = Self; } -impl ::core::fmt::Debug for MENUBANDPARTS { +impl ::core::fmt::Debug for MINBUTTONSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("MENUBANDPARTS").field(&self.0).finish() + f.debug_tuple("MINBUTTONSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct MENUBANDSTATES(pub i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MDS_NORMAL: MENUBANDSTATES = MENUBANDSTATES(1i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MDS_HOT: MENUBANDSTATES = MENUBANDSTATES(2i32); -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MDS_PRESSED: MENUBANDSTATES = MENUBANDSTATES(3i32); +pub struct MINCAPTIONSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MDS_DISABLED: MENUBANDSTATES = MENUBANDSTATES(4i32); +pub const MNCS_ACTIVE: MINCAPTIONSTATES = MINCAPTIONSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MDS_CHECKED: MENUBANDSTATES = MENUBANDSTATES(5i32); +pub const MNCS_INACTIVE: MINCAPTIONSTATES = MINCAPTIONSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const MDS_HOTCHECKED: MENUBANDSTATES = MENUBANDSTATES(6i32); -impl ::core::marker::Copy for MENUBANDSTATES {} -impl ::core::clone::Clone for MENUBANDSTATES { +pub const MNCS_DISABLED: MINCAPTIONSTATES = MINCAPTIONSTATES(3i32); +impl ::core::marker::Copy for MINCAPTIONSTATES {} +impl ::core::clone::Clone for MINCAPTIONSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for MENUBANDSTATES { +impl ::core::default::Default for MINCAPTIONSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for MENUBANDSTATES { +unsafe impl ::windows::core::Abi for MINCAPTIONSTATES { type Abi = Self; } -impl ::core::fmt::Debug for MENUBANDSTATES { +impl ::core::fmt::Debug for MINCAPTIONSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("MENUBANDSTATES").field(&self.0).finish() + f.debug_tuple("MINCAPTIONSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] @@ -9798,6 +13219,33 @@ impl ::core::fmt::Debug for MOREPROGRAMSTABSTATES { } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct MOVESTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDMOVE_HIGHLIGHT: MOVESTATES = MOVESTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDMOVE_NOHIGHLIGHT: MOVESTATES = MOVESTATES(2i32); +impl ::core::marker::Copy for MOVESTATES {} +impl ::core::clone::Clone for MOVESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for MOVESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for MOVESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for MOVESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("MOVESTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MSGF_COMMCTRL_BEGINDRAG: u32 = 16896u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MSGF_COMMCTRL_DRAGSELECT: u32 = 16898u32; @@ -9840,6 +13288,35 @@ where #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NAVIGATIONPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_BACKBUTTON: NAVIGATIONPARTS = NAVIGATIONPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_FORWARDBUTTON: NAVIGATIONPARTS = NAVIGATIONPARTS(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_MENUBUTTON: NAVIGATIONPARTS = NAVIGATIONPARTS(3i32); +impl ::core::marker::Copy for NAVIGATIONPARTS {} +impl ::core::clone::Clone for NAVIGATIONPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for NAVIGATIONPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for NAVIGATIONPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for NAVIGATIONPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NAVIGATIONPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct NAVNEXTSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MCNN_NORMAL: NAVNEXTSTATES = NAVNEXTSTATES(1i32); @@ -9900,6 +13377,99 @@ impl ::core::fmt::Debug for NAVPREVSTATES { } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NAV_BACKBUTTONSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_BB_NORMAL: NAV_BACKBUTTONSTATES = NAV_BACKBUTTONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_BB_HOT: NAV_BACKBUTTONSTATES = NAV_BACKBUTTONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_BB_PRESSED: NAV_BACKBUTTONSTATES = NAV_BACKBUTTONSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_BB_DISABLED: NAV_BACKBUTTONSTATES = NAV_BACKBUTTONSTATES(4i32); +impl ::core::marker::Copy for NAV_BACKBUTTONSTATES {} +impl ::core::clone::Clone for NAV_BACKBUTTONSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for NAV_BACKBUTTONSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for NAV_BACKBUTTONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for NAV_BACKBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NAV_BACKBUTTONSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NAV_FORWARDBUTTONSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_FB_NORMAL: NAV_FORWARDBUTTONSTATES = NAV_FORWARDBUTTONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_FB_HOT: NAV_FORWARDBUTTONSTATES = NAV_FORWARDBUTTONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_FB_PRESSED: NAV_FORWARDBUTTONSTATES = NAV_FORWARDBUTTONSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_FB_DISABLED: NAV_FORWARDBUTTONSTATES = NAV_FORWARDBUTTONSTATES(4i32); +impl ::core::marker::Copy for NAV_FORWARDBUTTONSTATES {} +impl ::core::clone::Clone for NAV_FORWARDBUTTONSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for NAV_FORWARDBUTTONSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for NAV_FORWARDBUTTONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for NAV_FORWARDBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NAV_FORWARDBUTTONSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NAV_MENUBUTTONSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_MB_NORMAL: NAV_MENUBUTTONSTATES = NAV_MENUBUTTONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_MB_HOT: NAV_MENUBUTTONSTATES = NAV_MENUBUTTONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_MB_PRESSED: NAV_MENUBUTTONSTATES = NAV_MENUBUTTONSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const NAV_MB_DISABLED: NAV_MENUBUTTONSTATES = NAV_MENUBUTTONSTATES(4i32); +impl ::core::marker::Copy for NAV_MENUBUTTONSTATES {} +impl ::core::clone::Clone for NAV_MENUBUTTONSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for NAV_MENUBUTTONSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for NAV_MENUBUTTONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for NAV_MENUBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NAV_MENUBUTTONSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const NEWFILEOPENORD: u32 = 1547u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const NEWFILEOPENV2ORD: u32 = 1552u32; @@ -11362,11 +14932,11 @@ impl ::core::default::Default for NMLVCACHEHINT { #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub struct NMLVCUSTOMDRAW { pub nmcd: NMCUSTOMDRAW, - pub clrText: u32, - pub clrTextBk: u32, + pub clrText: super::super::Foundation::COLORREF, + pub clrTextBk: super::super::Foundation::COLORREF, pub iSubItem: i32, pub dwItemType: NMLVCUSTOMDRAW_ITEM_TYPE, - pub clrFace: u32, + pub clrFace: super::super::Foundation::COLORREF, pub iIconEffect: i32, pub iIconPhase: i32, pub iPartId: i32, @@ -12652,12 +16222,12 @@ pub struct NMTBCUSTOMDRAW { pub hbrMonoDither: super::super::Graphics::Gdi::HBRUSH, pub hbrLines: super::super::Graphics::Gdi::HBRUSH, pub hpenLines: super::super::Graphics::Gdi::HPEN, - pub clrText: u32, - pub clrMark: u32, - pub clrTextHighlight: u32, - pub clrBtnFace: u32, - pub clrBtnHighlight: u32, - pub clrHighlightHotTrack: u32, + pub clrText: super::super::Foundation::COLORREF, + pub clrMark: super::super::Foundation::COLORREF, + pub clrTextHighlight: super::super::Foundation::COLORREF, + pub clrBtnFace: super::super::Foundation::COLORREF, + pub clrBtnHighlight: super::super::Foundation::COLORREF, + pub clrHighlightHotTrack: super::super::Foundation::COLORREF, pub rcText: super::super::Foundation::RECT, pub nStringBkMode: i32, pub nHLStringBkMode: i32, @@ -13597,8 +17167,8 @@ impl ::core::default::Default for NMTVASYNCDRAW { #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub struct NMTVCUSTOMDRAW { pub nmcd: NMCUSTOMDRAW, - pub clrText: u32, - pub clrTextBk: u32, + pub clrText: super::super::Foundation::COLORREF, + pub clrTextBk: super::super::Foundation::COLORREF, pub iLevel: i32, } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] @@ -14074,6 +17644,91 @@ impl ::core::default::Default for NMVIEWCHANGE { #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const NM_GETCUSTOMSPLITRECT: u32 = 4294966049u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NONESTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDNONE_HIGHLIGHT: NONESTATES = NONESTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDNONE_NOHIGHLIGHT: NONESTATES = NONESTATES(2i32); +impl ::core::marker::Copy for NONESTATES {} +impl ::core::clone::Clone for NONESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for NONESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for NONESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for NONESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NONESTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NORMALGROUPCOLLAPSESTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBNGC_NORMAL: NORMALGROUPCOLLAPSESTATES = NORMALGROUPCOLLAPSESTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBNGC_HOT: NORMALGROUPCOLLAPSESTATES = NORMALGROUPCOLLAPSESTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBNGC_PRESSED: NORMALGROUPCOLLAPSESTATES = NORMALGROUPCOLLAPSESTATES(3i32); +impl ::core::marker::Copy for NORMALGROUPCOLLAPSESTATES {} +impl ::core::clone::Clone for NORMALGROUPCOLLAPSESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for NORMALGROUPCOLLAPSESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for NORMALGROUPCOLLAPSESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for NORMALGROUPCOLLAPSESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NORMALGROUPCOLLAPSESTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct NORMALGROUPEXPANDSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBNGE_NORMAL: NORMALGROUPEXPANDSTATES = NORMALGROUPEXPANDSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBNGE_HOT: NORMALGROUPEXPANDSTATES = NORMALGROUPEXPANDSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const EBNGE_PRESSED: NORMALGROUPEXPANDSTATES = NORMALGROUPEXPANDSTATES(3i32); +impl ::core::marker::Copy for NORMALGROUPEXPANDSTATES {} +impl ::core::clone::Clone for NORMALGROUPEXPANDSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for NORMALGROUPEXPANDSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for NORMALGROUPEXPANDSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for NORMALGROUPEXPANDSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("NORMALGROUPEXPANDSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const ODT_HEADER: u32 = 100u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] @@ -14702,12 +18357,130 @@ impl ::core::cmp::PartialEq for POINTER_TYPE_INFO_0 { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Input_Pointer", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::cmp::Eq for POINTER_TYPE_INFO_0 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Input_Pointer", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::default::Default for POINTER_TYPE_INFO_0 { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Input_Pointer", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::cmp::Eq for POINTER_TYPE_INFO_0 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Input_Pointer", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::default::Default for POINTER_TYPE_INFO_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct POPUPCHECKBACKGROUNDSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCB_DISABLED: POPUPCHECKBACKGROUNDSTATES = POPUPCHECKBACKGROUNDSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCB_NORMAL: POPUPCHECKBACKGROUNDSTATES = POPUPCHECKBACKGROUNDSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MCB_BITMAP: POPUPCHECKBACKGROUNDSTATES = POPUPCHECKBACKGROUNDSTATES(3i32); +impl ::core::marker::Copy for POPUPCHECKBACKGROUNDSTATES {} +impl ::core::clone::Clone for POPUPCHECKBACKGROUNDSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for POPUPCHECKBACKGROUNDSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for POPUPCHECKBACKGROUNDSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for POPUPCHECKBACKGROUNDSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("POPUPCHECKBACKGROUNDSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct POPUPCHECKSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MC_CHECKMARKNORMAL: POPUPCHECKSTATES = POPUPCHECKSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MC_CHECKMARKDISABLED: POPUPCHECKSTATES = POPUPCHECKSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MC_BULLETNORMAL: POPUPCHECKSTATES = POPUPCHECKSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MC_BULLETDISABLED: POPUPCHECKSTATES = POPUPCHECKSTATES(4i32); +impl ::core::marker::Copy for POPUPCHECKSTATES {} +impl ::core::clone::Clone for POPUPCHECKSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for POPUPCHECKSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for POPUPCHECKSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for POPUPCHECKSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("POPUPCHECKSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct POPUPITEMSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MPI_NORMAL: POPUPITEMSTATES = POPUPITEMSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MPI_HOT: POPUPITEMSTATES = POPUPITEMSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MPI_DISABLED: POPUPITEMSTATES = POPUPITEMSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MPI_DISABLEDHOT: POPUPITEMSTATES = POPUPITEMSTATES(4i32); +impl ::core::marker::Copy for POPUPITEMSTATES {} +impl ::core::clone::Clone for POPUPITEMSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for POPUPITEMSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for POPUPITEMSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for POPUPITEMSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("POPUPITEMSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct POPUPSUBMENUSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSM_NORMAL: POPUPSUBMENUSTATES = POPUPSUBMENUSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSM_DISABLED: POPUPSUBMENUSTATES = POPUPSUBMENUSTATES(2i32); +impl ::core::marker::Copy for POPUPSUBMENUSTATES {} +impl ::core::clone::Clone for POPUPSUBMENUSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for POPUPSUBMENUSTATES { fn default() -> Self { - unsafe { ::core::mem::zeroed() } + Self(0) + } +} +unsafe impl ::windows::core::Abi for POPUPSUBMENUSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for POPUPSUBMENUSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("POPUPSUBMENUSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] @@ -14717,6 +18490,53 @@ pub const PRINTDLGORD: u32 = 1538u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const PRNSETUPDLGORD: u32 = 1539u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct PROGRESSPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_BAR: PROGRESSPARTS = PROGRESSPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_BARVERT: PROGRESSPARTS = PROGRESSPARTS(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_CHUNK: PROGRESSPARTS = PROGRESSPARTS(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_CHUNKVERT: PROGRESSPARTS = PROGRESSPARTS(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_FILL: PROGRESSPARTS = PROGRESSPARTS(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_FILLVERT: PROGRESSPARTS = PROGRESSPARTS(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_PULSEOVERLAY: PROGRESSPARTS = PROGRESSPARTS(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_MOVEOVERLAY: PROGRESSPARTS = PROGRESSPARTS(8i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_PULSEOVERLAYVERT: PROGRESSPARTS = PROGRESSPARTS(9i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_MOVEOVERLAYVERT: PROGRESSPARTS = PROGRESSPARTS(10i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_TRANSPARENTBAR: PROGRESSPARTS = PROGRESSPARTS(11i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PP_TRANSPARENTBARVERT: PROGRESSPARTS = PROGRESSPARTS(12i32); +impl ::core::marker::Copy for PROGRESSPARTS {} +impl ::core::clone::Clone for PROGRESSPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for PROGRESSPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for PROGRESSPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for PROGRESSPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("PROGRESSPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const PROGRESS_CLASS: &str = "msctls_progress32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const PROGRESS_CLASSA: &str = "msctls_progress32"; @@ -16232,1080 +20052,1831 @@ impl ::core::clone::Clone for PROPSHEETPAGEW_V2_0 { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -unsafe impl ::windows::core::Abi for PROPSHEETPAGEW_V2_0 { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +unsafe impl ::windows::core::Abi for PROPSHEETPAGEW_V2_0 { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::cmp::PartialEq for PROPSHEETPAGEW_V2_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::cmp::Eq for PROPSHEETPAGEW_V2_0 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::default::Default for PROPSHEETPAGEW_V2_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +pub union PROPSHEETPAGEW_V2_1 { + pub hIcon: super::WindowsAndMessaging::HICON, + pub pszIcon: ::windows::core::PCWSTR, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::marker::Copy for PROPSHEETPAGEW_V2_1 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::clone::Clone for PROPSHEETPAGEW_V2_1 { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +unsafe impl ::windows::core::Abi for PROPSHEETPAGEW_V2_1 { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::cmp::PartialEq for PROPSHEETPAGEW_V2_1 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::cmp::Eq for PROPSHEETPAGEW_V2_1 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::default::Default for PROPSHEETPAGEW_V2_1 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +pub struct PROPSHEETPAGEW_V3 { + pub dwSize: u32, + pub dwFlags: u32, + pub hInstance: super::super::Foundation::HINSTANCE, + pub Anonymous1: PROPSHEETPAGEW_V3_0, + pub Anonymous2: PROPSHEETPAGEW_V3_1, + pub pszTitle: ::windows::core::PCWSTR, + pub pfnDlgProc: super::WindowsAndMessaging::DLGPROC, + pub lParam: super::super::Foundation::LPARAM, + pub pfnCallback: LPFNPSPCALLBACKW, + pub pcRefParent: *mut u32, + pub pszHeaderTitle: ::windows::core::PCWSTR, + pub pszHeaderSubTitle: ::windows::core::PCWSTR, + pub hActCtx: super::super::Foundation::HANDLE, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::marker::Copy for PROPSHEETPAGEW_V3 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::clone::Clone for PROPSHEETPAGEW_V3 { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +unsafe impl ::windows::core::Abi for PROPSHEETPAGEW_V3 { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::cmp::PartialEq for PROPSHEETPAGEW_V3 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::cmp::Eq for PROPSHEETPAGEW_V3 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::default::Default for PROPSHEETPAGEW_V3 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +pub union PROPSHEETPAGEW_V3_0 { + pub pszTemplate: ::windows::core::PCWSTR, + pub pResource: *mut super::WindowsAndMessaging::DLGTEMPLATE, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::marker::Copy for PROPSHEETPAGEW_V3_0 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::clone::Clone for PROPSHEETPAGEW_V3_0 { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +unsafe impl ::windows::core::Abi for PROPSHEETPAGEW_V3_0 { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::cmp::PartialEq for PROPSHEETPAGEW_V3_0 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::cmp::Eq for PROPSHEETPAGEW_V3_0 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::default::Default for PROPSHEETPAGEW_V3_0 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +pub union PROPSHEETPAGEW_V3_1 { + pub hIcon: super::WindowsAndMessaging::HICON, + pub pszIcon: ::windows::core::PCWSTR, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::marker::Copy for PROPSHEETPAGEW_V3_1 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::clone::Clone for PROPSHEETPAGEW_V3_1 { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +unsafe impl ::windows::core::Abi for PROPSHEETPAGEW_V3_1 { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::cmp::PartialEq for PROPSHEETPAGEW_V3_1 { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::cmp::Eq for PROPSHEETPAGEW_V3_1 {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] +impl ::core::default::Default for PROPSHEETPAGEW_V3_1 { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PROP_LG_CXDLG: u32 = 252u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PROP_LG_CYDLG: u32 = 218u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PROP_MED_CXDLG: u32 = 227u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PROP_MED_CYDLG: u32 = 215u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PROP_SM_CXDLG: u32 = 212u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PROP_SM_CYDLG: u32 = 188u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSBTN_APPLYNOW: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSBTN_BACK: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSBTN_CANCEL: u32 = 5u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSBTN_FINISH: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSBTN_HELP: u32 = 6u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSBTN_MAX: u32 = 6u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSBTN_NEXT: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSBTN_OK: u32 = 3u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSCB_BUTTONPRESSED: u32 = 3u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSCB_INITIALIZED: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSCB_PRECREATE: u32 = 2u32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct PSHNOTIFY { + pub hdr: NMHDR, + pub lParam: super::super::Foundation::LPARAM, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for PSHNOTIFY {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for PSHNOTIFY { + fn clone(&self) -> Self { + *self + } +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::fmt::Debug for PSHNOTIFY { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("PSHNOTIFY").field("hdr", &self.hdr).field("lParam", &self.lParam).finish() + } +} +#[cfg(feature = "Win32_Foundation")] +unsafe impl ::windows::core::Abi for PSHNOTIFY { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::cmp::PartialEq for PROPSHEETPAGEW_V2_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::PartialEq for PSHNOTIFY { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::cmp::Eq for PROPSHEETPAGEW_V2_0 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::default::Default for PROPSHEETPAGEW_V2_0 { +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for PSHNOTIFY {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for PSHNOTIFY { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -pub union PROPSHEETPAGEW_V2_1 { - pub hIcon: super::WindowsAndMessaging::HICON, - pub pszIcon: ::windows::core::PCWSTR, -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::marker::Copy for PROPSHEETPAGEW_V2_1 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::clone::Clone for PROPSHEETPAGEW_V2_1 { +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_AEROWIZARD: u32 = 16384u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_DEFAULT: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_HASHELP: u32 = 512u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_HEADER: u32 = 524288u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_HEADERBITMAP: u32 = 134217728u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_MODELESS: u32 = 1024u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_NOAPPLYNOW: u32 = 128u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_NOCONTEXTHELP: u32 = 33554432u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_NOMARGIN: u32 = 268435456u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_PROPSHEETPAGE: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_PROPTITLE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_RESIZABLE: u32 = 67108864u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_RTLREADING: u32 = 2048u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_STRETCHWATERMARK: u32 = 262144u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_USECALLBACK: u32 = 256u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_USEHBMHEADER: u32 = 1048576u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_USEHBMWATERMARK: u32 = 65536u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_USEHICON: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_USEHPLWATERMARK: u32 = 131072u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_USEICONID: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_USEPAGELANG: u32 = 2097152u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_USEPSTARTPAGE: u32 = 64u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_WATERMARK: u32 = 32768u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_WIZARD: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_WIZARD97: u32 = 8192u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_WIZARDCONTEXTHELP: u32 = 4096u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_WIZARDHASFINISH: u32 = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSH_WIZARD_LITE: u32 = 4194304u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_ADDPAGE: u32 = 1127u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_APPLY: u32 = 1134u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_CANCELTOCLOSE: u32 = 1131u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_CHANGED: u32 = 1128u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_ENABLEWIZBUTTONS: u32 = 1163u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_GETCURRENTPAGEHWND: u32 = 1142u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_GETRESULT: u32 = 1159u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_GETTABCONTROL: u32 = 1140u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_HWNDTOINDEX: u32 = 1153u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_IDTOINDEX: u32 = 1157u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_INDEXTOHWND: u32 = 1154u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_INDEXTOID: u32 = 1158u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_INDEXTOPAGE: u32 = 1156u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_INSERTPAGE: u32 = 1143u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_ISDIALOGMESSAGE: u32 = 1141u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_PAGETOINDEX: u32 = 1155u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_PRESSBUTTON: u32 = 1137u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_QUERYSIBLINGS: u32 = 1132u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_REBOOTSYSTEM: u32 = 1130u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_RECALCPAGESIZES: u32 = 1160u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_REMOVEPAGE: u32 = 1126u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_RESTARTWINDOWS: u32 = 1129u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETBUTTONTEXT: u32 = 1164u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETBUTTONTEXTW: u32 = 1164u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETCURSEL: u32 = 1125u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETCURSELID: u32 = 1138u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETFINISHTEXT: u32 = 1145u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETFINISHTEXTA: u32 = 1139u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETFINISHTEXTW: u32 = 1145u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETHEADERSUBTITLE: u32 = 1152u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETHEADERSUBTITLEA: u32 = 1151u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETHEADERSUBTITLEW: u32 = 1152u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETHEADERTITLE: u32 = 1150u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETHEADERTITLEA: u32 = 1149u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETHEADERTITLEW: u32 = 1150u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETNEXTTEXT: u32 = 1161u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETNEXTTEXTW: u32 = 1161u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETTITLE: u32 = 1144u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETTITLEA: u32 = 1135u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETTITLEW: u32 = 1144u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SETWIZBUTTONS: u32 = 1136u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_SHOWWIZBUTTONS: u32 = 1162u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSM_UNCHANGED: u32 = 1133u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSNRET_INVALID: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSNRET_INVALID_NOCHANGEPAGE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSNRET_MESSAGEHANDLED: u32 = 3u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSNRET_NOERROR: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct PSPCB_MESSAGE(pub u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSPCB_ADDREF: PSPCB_MESSAGE = PSPCB_MESSAGE(0u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSPCB_CREATE: PSPCB_MESSAGE = PSPCB_MESSAGE(2u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSPCB_RELEASE: PSPCB_MESSAGE = PSPCB_MESSAGE(1u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSPCB_SI_INITDIALOG: PSPCB_MESSAGE = PSPCB_MESSAGE(1025u32); +impl ::core::marker::Copy for PSPCB_MESSAGE {} +impl ::core::clone::Clone for PSPCB_MESSAGE { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -unsafe impl ::windows::core::Abi for PROPSHEETPAGEW_V2_1 { +impl ::core::default::Default for PSPCB_MESSAGE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for PSPCB_MESSAGE { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::cmp::PartialEq for PROPSHEETPAGEW_V2_1 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::fmt::Debug for PSPCB_MESSAGE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("PSPCB_MESSAGE").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSP_DEFAULT: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSP_DLGINDIRECT: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSP_HASHELP: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSP_HIDEHEADER: u32 = 2048u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSP_PREMATURE: u32 = 1024u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSP_RTLREADING: u32 = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSP_USECALLBACK: u32 = 128u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSP_USEFUSIONCONTEXT: u32 = 16384u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSP_USEHEADERSUBTITLE: u32 = 8192u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSP_USEHEADERTITLE: u32 = 4096u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSP_USEHICON: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSP_USEICONID: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSP_USEREFPARENT: u32 = 64u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSP_USETITLE: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSWIZBF_ELEVATIONREQUIRED: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSWIZB_BACK: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSWIZB_CANCEL: u32 = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSWIZB_DISABLEDFINISH: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSWIZB_FINISH: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSWIZB_NEXT: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSWIZB_RESTORE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PSWIZB_SHOW: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct PUSHBUTTONDROPDOWNSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBDDS_NORMAL: PUSHBUTTONDROPDOWNSTATES = PUSHBUTTONDROPDOWNSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBDDS_DISABLED: PUSHBUTTONDROPDOWNSTATES = PUSHBUTTONDROPDOWNSTATES(2i32); +impl ::core::marker::Copy for PUSHBUTTONDROPDOWNSTATES {} +impl ::core::clone::Clone for PUSHBUTTONDROPDOWNSTATES { + fn clone(&self) -> Self { + *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::cmp::Eq for PROPSHEETPAGEW_V2_1 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::default::Default for PROPSHEETPAGEW_V2_1 { +impl ::core::default::Default for PUSHBUTTONDROPDOWNSTATES { fn default() -> Self { - unsafe { ::core::mem::zeroed() } + Self(0) } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -pub struct PROPSHEETPAGEW_V3 { - pub dwSize: u32, - pub dwFlags: u32, - pub hInstance: super::super::Foundation::HINSTANCE, - pub Anonymous1: PROPSHEETPAGEW_V3_0, - pub Anonymous2: PROPSHEETPAGEW_V3_1, - pub pszTitle: ::windows::core::PCWSTR, - pub pfnDlgProc: super::WindowsAndMessaging::DLGPROC, - pub lParam: super::super::Foundation::LPARAM, - pub pfnCallback: LPFNPSPCALLBACKW, - pub pcRefParent: *mut u32, - pub pszHeaderTitle: ::windows::core::PCWSTR, - pub pszHeaderSubTitle: ::windows::core::PCWSTR, - pub hActCtx: super::super::Foundation::HANDLE, +unsafe impl ::windows::core::Abi for PUSHBUTTONDROPDOWNSTATES { + type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::marker::Copy for PROPSHEETPAGEW_V3 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::clone::Clone for PROPSHEETPAGEW_V3 { - fn clone(&self) -> Self { - *self +impl ::core::fmt::Debug for PUSHBUTTONDROPDOWNSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("PUSHBUTTONDROPDOWNSTATES").field(&self.0).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -unsafe impl ::windows::core::Abi for PROPSHEETPAGEW_V3 { - type Abi = Self; -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::cmp::PartialEq for PROPSHEETPAGEW_V3 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct PUSHBUTTONSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBS_NORMAL: PUSHBUTTONSTATES = PUSHBUTTONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBS_HOT: PUSHBUTTONSTATES = PUSHBUTTONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBS_PRESSED: PUSHBUTTONSTATES = PUSHBUTTONSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBS_DISABLED: PUSHBUTTONSTATES = PUSHBUTTONSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBS_DEFAULTED: PUSHBUTTONSTATES = PUSHBUTTONSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBS_DEFAULTED_ANIMATING: PUSHBUTTONSTATES = PUSHBUTTONSTATES(6i32); +impl ::core::marker::Copy for PUSHBUTTONSTATES {} +impl ::core::clone::Clone for PUSHBUTTONSTATES { + fn clone(&self) -> Self { + *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::cmp::Eq for PROPSHEETPAGEW_V3 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::default::Default for PROPSHEETPAGEW_V3 { +impl ::core::default::Default for PUSHBUTTONSTATES { fn default() -> Self { - unsafe { ::core::mem::zeroed() } + Self(0) } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -pub union PROPSHEETPAGEW_V3_0 { - pub pszTemplate: ::windows::core::PCWSTR, - pub pResource: *mut super::WindowsAndMessaging::DLGTEMPLATE, +unsafe impl ::windows::core::Abi for PUSHBUTTONSTATES { + type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::marker::Copy for PROPSHEETPAGEW_V3_0 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::clone::Clone for PROPSHEETPAGEW_V3_0 { - fn clone(&self) -> Self { - *self +impl ::core::fmt::Debug for PUSHBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("PUSHBUTTONSTATES").field(&self.0).finish() } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -unsafe impl ::windows::core::Abi for PROPSHEETPAGEW_V3_0 { - type Abi = Self; -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::cmp::PartialEq for PROPSHEETPAGEW_V3_0 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +#[inline] +pub unsafe fn PackTouchHitTestingProximityEvaluation(phittestinginput: &TOUCH_HIT_TESTING_INPUT, pproximityeval: &TOUCH_HIT_TESTING_PROXIMITY_EVALUATION) -> super::super::Foundation::LRESULT { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn PackTouchHitTestingProximityEvaluation(phittestinginput: *const TOUCH_HIT_TESTING_INPUT, pproximityeval: *const TOUCH_HIT_TESTING_PROXIMITY_EVALUATION) -> super::super::Foundation::LRESULT; } + PackTouchHitTestingProximityEvaluation(::core::mem::transmute(phittestinginput), ::core::mem::transmute(pproximityeval)) } +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::cmp::Eq for PROPSHEETPAGEW_V3_0 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::default::Default for PROPSHEETPAGEW_V3_0 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[inline] +pub unsafe fn PropertySheetA(param0: &mut PROPSHEETHEADERA_V2) -> isize { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn PropertySheetA(param0: *mut PROPSHEETHEADERA_V2) -> isize; } + PropertySheetA(::core::mem::transmute(param0)) } -#[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -pub union PROPSHEETPAGEW_V3_1 { - pub hIcon: super::WindowsAndMessaging::HICON, - pub pszIcon: ::windows::core::PCWSTR, +#[inline] +pub unsafe fn PropertySheetW(param0: &mut PROPSHEETHEADERW_V2) -> isize { + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn PropertySheetW(param0: *mut PROPSHEETHEADERW_V2) -> isize; + } + PropertySheetW(::core::mem::transmute(param0)) } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::marker::Copy for PROPSHEETPAGEW_V3_1 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::clone::Clone for PROPSHEETPAGEW_V3_1 { +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct RADIOBUTTONSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_UNCHECKEDNORMAL: RADIOBUTTONSTATES = RADIOBUTTONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_UNCHECKEDHOT: RADIOBUTTONSTATES = RADIOBUTTONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_UNCHECKEDPRESSED: RADIOBUTTONSTATES = RADIOBUTTONSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_UNCHECKEDDISABLED: RADIOBUTTONSTATES = RADIOBUTTONSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_CHECKEDNORMAL: RADIOBUTTONSTATES = RADIOBUTTONSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_CHECKEDHOT: RADIOBUTTONSTATES = RADIOBUTTONSTATES(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_CHECKEDPRESSED: RADIOBUTTONSTATES = RADIOBUTTONSTATES(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBS_CHECKEDDISABLED: RADIOBUTTONSTATES = RADIOBUTTONSTATES(8i32); +impl ::core::marker::Copy for RADIOBUTTONSTATES {} +impl ::core::clone::Clone for RADIOBUTTONSTATES { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -unsafe impl ::windows::core::Abi for PROPSHEETPAGEW_V3_1 { - type Abi = Self; -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::cmp::PartialEq for PROPSHEETPAGEW_V3_1 { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::default::Default for RADIOBUTTONSTATES { + fn default() -> Self { + Self(0) } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::cmp::Eq for PROPSHEETPAGEW_V3_1 {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -impl ::core::default::Default for PROPSHEETPAGEW_V3_1 { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +unsafe impl ::windows::core::Abi for RADIOBUTTONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for RADIOBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("RADIOBUTTONSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PROP_LG_CXDLG: u32 = 252u32; +pub const RBAB_ADDBAND: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PROP_LG_CYDLG: u32 = 218u32; +pub const RBAB_AUTOSIZE: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PROP_MED_CXDLG: u32 = 227u32; +pub const RBBIM_BACKGROUND: u32 = 128u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PROP_MED_CYDLG: u32 = 215u32; +pub const RBBIM_CHEVRONLOCATION: u32 = 4096u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PROP_SM_CXDLG: u32 = 212u32; +pub const RBBIM_CHEVRONSTATE: u32 = 8192u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PROP_SM_CYDLG: u32 = 188u32; +pub const RBBIM_CHILD: u32 = 16u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSBTN_APPLYNOW: u32 = 4u32; +pub const RBBIM_CHILDSIZE: u32 = 32u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSBTN_BACK: u32 = 0u32; +pub const RBBIM_COLORS: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSBTN_CANCEL: u32 = 5u32; +pub const RBBIM_HEADERSIZE: u32 = 2048u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSBTN_FINISH: u32 = 2u32; +pub const RBBIM_ID: u32 = 256u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSBTN_HELP: u32 = 6u32; +pub const RBBIM_IDEALSIZE: u32 = 512u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSBTN_MAX: u32 = 6u32; +pub const RBBIM_IMAGE: u32 = 8u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSBTN_NEXT: u32 = 1u32; +pub const RBBIM_LPARAM: u32 = 1024u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSBTN_OK: u32 = 3u32; +pub const RBBIM_SIZE: u32 = 64u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSCB_BUTTONPRESSED: u32 = 3u32; +pub const RBBIM_STYLE: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSCB_INITIALIZED: u32 = 1u32; +pub const RBBIM_TEXT: u32 = 4u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSCB_PRECREATE: u32 = 2u32; +pub const RBBS_BREAK: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBBS_CHILDEDGE: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBBS_FIXEDBMP: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBBS_FIXEDSIZE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBBS_GRIPPERALWAYS: u32 = 128u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBBS_HIDDEN: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBBS_HIDETITLE: u32 = 1024u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBBS_NOGRIPPER: u32 = 256u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBBS_NOVERT: u32 = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBBS_TOPALIGN: u32 = 2048u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBBS_USECHEVRON: u32 = 512u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RBBS_VARIABLEHEIGHT: u32 = 64u32; #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -pub struct PSHNOTIFY { - pub hdr: NMHDR, - pub lParam: super::super::Foundation::LPARAM, +pub struct RBHITTESTINFO { + pub pt: super::super::Foundation::POINT, + pub flags: u32, + pub iBand: i32, } #[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for PSHNOTIFY {} +impl ::core::marker::Copy for RBHITTESTINFO {} #[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for PSHNOTIFY { +impl ::core::clone::Clone for RBHITTESTINFO { fn clone(&self) -> Self { *self } } #[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for PSHNOTIFY { +impl ::core::fmt::Debug for RBHITTESTINFO { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("PSHNOTIFY").field("hdr", &self.hdr).field("lParam", &self.lParam).finish() + f.debug_struct("RBHITTESTINFO").field("pt", &self.pt).field("flags", &self.flags).field("iBand", &self.iBand).finish() } } #[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for PSHNOTIFY { +unsafe impl ::windows::core::Abi for RBHITTESTINFO { type Abi = Self; } #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for PSHNOTIFY { +impl ::core::cmp::PartialEq for RBHITTESTINFO { fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for PSHNOTIFY {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for PSHNOTIFY { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } -} -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_AEROWIZARD: u32 = 16384u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_DEFAULT: u32 = 0u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_HASHELP: u32 = 512u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_HEADER: u32 = 524288u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_HEADERBITMAP: u32 = 134217728u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_MODELESS: u32 = 1024u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_NOAPPLYNOW: u32 = 128u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_NOCONTEXTHELP: u32 = 33554432u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_NOMARGIN: u32 = 268435456u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_PROPSHEETPAGE: u32 = 8u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_PROPTITLE: u32 = 1u32; +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::cmp::Eq for RBHITTESTINFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::default::Default for RBHITTESTINFO { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_RESIZABLE: u32 = 67108864u32; +pub const RBHT_CAPTION: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_RTLREADING: u32 = 2048u32; +pub const RBHT_CHEVRON: u32 = 8u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_STRETCHWATERMARK: u32 = 262144u32; +pub const RBHT_CLIENT: u32 = 3u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_USECALLBACK: u32 = 256u32; +pub const RBHT_GRABBER: u32 = 4u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_USEHBMHEADER: u32 = 1048576u32; +pub const RBHT_NOWHERE: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_USEHBMWATERMARK: u32 = 65536u32; +pub const RBHT_SPLITTER: u32 = 16u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_USEHICON: u32 = 2u32; +pub const RBIM_IMAGELIST: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_USEHPLWATERMARK: u32 = 131072u32; +pub const RBSTR_CHANGERECT: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_USEICONID: u32 = 4u32; +pub const RBS_AUTOSIZE: u32 = 8192u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_USEPAGELANG: u32 = 2097152u32; +pub const RBS_BANDBORDERS: u32 = 1024u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_USEPSTARTPAGE: u32 = 64u32; +pub const RBS_DBLCLKTOGGLE: u32 = 32768u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_WATERMARK: u32 = 32768u32; +pub const RBS_FIXEDORDER: u32 = 2048u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_WIZARD: u32 = 32u32; +pub const RBS_REGISTERDROP: u32 = 4096u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_WIZARD97: u32 = 8192u32; +pub const RBS_TOOLTIPS: u32 = 256u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_WIZARDCONTEXTHELP: u32 = 4096u32; +pub const RBS_VARHEIGHT: u32 = 512u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_WIZARDHASFINISH: u32 = 16u32; +pub const RBS_VERTICALGRIPPER: u32 = 16384u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSH_WIZARD_LITE: u32 = 4194304u32; +pub const RB_BEGINDRAG: u32 = 1048u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_ADDPAGE: u32 = 1127u32; +pub const RB_DELETEBAND: u32 = 1026u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_APPLY: u32 = 1134u32; +pub const RB_DRAGMOVE: u32 = 1050u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_CANCELTOCLOSE: u32 = 1131u32; +pub const RB_ENDDRAG: u32 = 1049u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_CHANGED: u32 = 1128u32; +pub const RB_GETBANDBORDERS: u32 = 1058u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_ENABLEWIZBUTTONS: u32 = 1163u32; +pub const RB_GETBANDCOUNT: u32 = 1036u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_GETCURRENTPAGEHWND: u32 = 1142u32; +pub const RB_GETBANDINFO: u32 = 1052u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_GETRESULT: u32 = 1159u32; +pub const RB_GETBANDINFOA: u32 = 1053u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_GETTABCONTROL: u32 = 1140u32; +pub const RB_GETBANDINFOW: u32 = 1052u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_HWNDTOINDEX: u32 = 1153u32; +pub const RB_GETBANDMARGINS: u32 = 1064u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_IDTOINDEX: u32 = 1157u32; +pub const RB_GETBARHEIGHT: u32 = 1051u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_INDEXTOHWND: u32 = 1154u32; +pub const RB_GETBARINFO: u32 = 1027u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_INDEXTOID: u32 = 1158u32; +pub const RB_GETBKCOLOR: u32 = 1044u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_INDEXTOPAGE: u32 = 1156u32; +pub const RB_GETCOLORSCHEME: u32 = 8195u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_INSERTPAGE: u32 = 1143u32; +pub const RB_GETDROPTARGET: u32 = 8196u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_ISDIALOGMESSAGE: u32 = 1141u32; +pub const RB_GETEXTENDEDSTYLE: u32 = 1066u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_PAGETOINDEX: u32 = 1155u32; +pub const RB_GETPALETTE: u32 = 1062u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_PRESSBUTTON: u32 = 1137u32; +pub const RB_GETRECT: u32 = 1033u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_QUERYSIBLINGS: u32 = 1132u32; +pub const RB_GETROWCOUNT: u32 = 1037u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_REBOOTSYSTEM: u32 = 1130u32; +pub const RB_GETROWHEIGHT: u32 = 1038u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_RECALCPAGESIZES: u32 = 1160u32; +pub const RB_GETTEXTCOLOR: u32 = 1046u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_REMOVEPAGE: u32 = 1126u32; +pub const RB_GETTOOLTIPS: u32 = 1041u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_RESTARTWINDOWS: u32 = 1129u32; +pub const RB_GETUNICODEFORMAT: u32 = 8198u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETBUTTONTEXT: u32 = 1164u32; +pub const RB_HITTEST: u32 = 1032u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETBUTTONTEXTW: u32 = 1164u32; +pub const RB_IDTOINDEX: u32 = 1040u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETCURSEL: u32 = 1125u32; +pub const RB_INSERTBAND: u32 = 1034u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETCURSELID: u32 = 1138u32; +pub const RB_INSERTBANDA: u32 = 1025u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETFINISHTEXT: u32 = 1145u32; +pub const RB_INSERTBANDW: u32 = 1034u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETFINISHTEXTA: u32 = 1139u32; +pub const RB_MAXIMIZEBAND: u32 = 1055u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETFINISHTEXTW: u32 = 1145u32; +pub const RB_MINIMIZEBAND: u32 = 1054u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETHEADERSUBTITLE: u32 = 1152u32; +pub const RB_MOVEBAND: u32 = 1063u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETHEADERSUBTITLEA: u32 = 1151u32; +pub const RB_PUSHCHEVRON: u32 = 1067u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETHEADERSUBTITLEW: u32 = 1152u32; +pub const RB_SETBANDINFO: u32 = 1035u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETHEADERTITLE: u32 = 1150u32; +pub const RB_SETBANDINFOA: u32 = 1030u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETHEADERTITLEA: u32 = 1149u32; +pub const RB_SETBANDINFOW: u32 = 1035u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETHEADERTITLEW: u32 = 1150u32; +pub const RB_SETBANDWIDTH: u32 = 1068u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETNEXTTEXT: u32 = 1161u32; +pub const RB_SETBARINFO: u32 = 1028u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETNEXTTEXTW: u32 = 1161u32; +pub const RB_SETBKCOLOR: u32 = 1043u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETTITLE: u32 = 1144u32; +pub const RB_SETCOLORSCHEME: u32 = 8194u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETTITLEA: u32 = 1135u32; +pub const RB_SETEXTENDEDSTYLE: u32 = 1065u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETTITLEW: u32 = 1144u32; +pub const RB_SETPALETTE: u32 = 1061u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SETWIZBUTTONS: u32 = 1136u32; +pub const RB_SETPARENT: u32 = 1031u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_SHOWWIZBUTTONS: u32 = 1162u32; +pub const RB_SETTEXTCOLOR: u32 = 1045u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSM_UNCHANGED: u32 = 1133u32; +pub const RB_SETTOOLTIPS: u32 = 1042u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSNRET_INVALID: u32 = 1u32; +pub const RB_SETUNICODEFORMAT: u32 = 8197u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSNRET_INVALID_NOCHANGEPAGE: u32 = 2u32; +pub const RB_SETWINDOWTHEME: u32 = 8203u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSNRET_MESSAGEHANDLED: u32 = 3u32; +pub const RB_SHOWBAND: u32 = 1059u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSNRET_NOERROR: u32 = 0u32; +pub const RB_SIZETORECT: u32 = 1047u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct PSPCB_MESSAGE(pub u32); +pub struct READONLYSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSPCB_ADDREF: PSPCB_MESSAGE = PSPCB_MESSAGE(0u32); +pub const CBRO_NORMAL: READONLYSTATES = READONLYSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSPCB_CREATE: PSPCB_MESSAGE = PSPCB_MESSAGE(2u32); +pub const CBRO_HOT: READONLYSTATES = READONLYSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSPCB_RELEASE: PSPCB_MESSAGE = PSPCB_MESSAGE(1u32); +pub const CBRO_PRESSED: READONLYSTATES = READONLYSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSPCB_SI_INITDIALOG: PSPCB_MESSAGE = PSPCB_MESSAGE(1025u32); -impl ::core::marker::Copy for PSPCB_MESSAGE {} -impl ::core::clone::Clone for PSPCB_MESSAGE { +pub const CBRO_DISABLED: READONLYSTATES = READONLYSTATES(4i32); +impl ::core::marker::Copy for READONLYSTATES {} +impl ::core::clone::Clone for READONLYSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for READONLYSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for READONLYSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for READONLYSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("READONLYSTATES").field(&self.0).finish() + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +pub struct REBARBANDINFOA { + pub cbSize: u32, + pub fMask: u32, + pub fStyle: u32, + pub clrFore: super::super::Foundation::COLORREF, + pub clrBack: super::super::Foundation::COLORREF, + pub lpText: ::windows::core::PSTR, + pub cch: u32, + pub iImage: i32, + pub hwndChild: super::super::Foundation::HWND, + pub cxMinChild: u32, + pub cyMinChild: u32, + pub cx: u32, + pub hbmBack: super::super::Graphics::Gdi::HBITMAP, + pub wID: u32, + pub cyChild: u32, + pub cyMaxChild: u32, + pub cyIntegral: u32, + pub cxIdeal: u32, + pub lParam: super::super::Foundation::LPARAM, + pub cxHeader: u32, + pub rcChevronLocation: super::super::Foundation::RECT, + pub uChevronState: u32, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::marker::Copy for REBARBANDINFOA {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::clone::Clone for REBARBANDINFOA { + fn clone(&self) -> Self { + *self + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::fmt::Debug for REBARBANDINFOA { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("REBARBANDINFOA") + .field("cbSize", &self.cbSize) + .field("fMask", &self.fMask) + .field("fStyle", &self.fStyle) + .field("clrFore", &self.clrFore) + .field("clrBack", &self.clrBack) + .field("lpText", &self.lpText) + .field("cch", &self.cch) + .field("iImage", &self.iImage) + .field("hwndChild", &self.hwndChild) + .field("cxMinChild", &self.cxMinChild) + .field("cyMinChild", &self.cyMinChild) + .field("cx", &self.cx) + .field("hbmBack", &self.hbmBack) + .field("wID", &self.wID) + .field("cyChild", &self.cyChild) + .field("cyMaxChild", &self.cyMaxChild) + .field("cyIntegral", &self.cyIntegral) + .field("cxIdeal", &self.cxIdeal) + .field("lParam", &self.lParam) + .field("cxHeader", &self.cxHeader) + .field("rcChevronLocation", &self.rcChevronLocation) + .field("uChevronState", &self.uChevronState) + .finish() + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +unsafe impl ::windows::core::Abi for REBARBANDINFOA { + type Abi = Self; +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::PartialEq for REBARBANDINFOA { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::Eq for REBARBANDINFOA {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::default::Default for REBARBANDINFOA { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +pub struct REBARBANDINFOW { + pub cbSize: u32, + pub fMask: u32, + pub fStyle: u32, + pub clrFore: super::super::Foundation::COLORREF, + pub clrBack: super::super::Foundation::COLORREF, + pub lpText: ::windows::core::PWSTR, + pub cch: u32, + pub iImage: i32, + pub hwndChild: super::super::Foundation::HWND, + pub cxMinChild: u32, + pub cyMinChild: u32, + pub cx: u32, + pub hbmBack: super::super::Graphics::Gdi::HBITMAP, + pub wID: u32, + pub cyChild: u32, + pub cyMaxChild: u32, + pub cyIntegral: u32, + pub cxIdeal: u32, + pub lParam: super::super::Foundation::LPARAM, + pub cxHeader: u32, + pub rcChevronLocation: super::super::Foundation::RECT, + pub uChevronState: u32, +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::marker::Copy for REBARBANDINFOW {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::clone::Clone for REBARBANDINFOW { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for PSPCB_MESSAGE { - fn default() -> Self { - Self(0) +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::fmt::Debug for REBARBANDINFOW { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("REBARBANDINFOW") + .field("cbSize", &self.cbSize) + .field("fMask", &self.fMask) + .field("fStyle", &self.fStyle) + .field("clrFore", &self.clrFore) + .field("clrBack", &self.clrBack) + .field("lpText", &self.lpText) + .field("cch", &self.cch) + .field("iImage", &self.iImage) + .field("hwndChild", &self.hwndChild) + .field("cxMinChild", &self.cxMinChild) + .field("cyMinChild", &self.cyMinChild) + .field("cx", &self.cx) + .field("hbmBack", &self.hbmBack) + .field("wID", &self.wID) + .field("cyChild", &self.cyChild) + .field("cyMaxChild", &self.cyMaxChild) + .field("cyIntegral", &self.cyIntegral) + .field("cxIdeal", &self.cxIdeal) + .field("lParam", &self.lParam) + .field("cxHeader", &self.cxHeader) + .field("rcChevronLocation", &self.rcChevronLocation) + .field("uChevronState", &self.uChevronState) + .finish() } } -unsafe impl ::windows::core::Abi for PSPCB_MESSAGE { +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +unsafe impl ::windows::core::Abi for REBARBANDINFOW { type Abi = Self; } -impl ::core::fmt::Debug for PSPCB_MESSAGE { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("PSPCB_MESSAGE").field(&self.0).finish() +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::PartialEq for REBARBANDINFOW { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::cmp::Eq for REBARBANDINFOW {} +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] +impl ::core::default::Default for REBARBANDINFOW { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSP_DEFAULT: u32 = 0u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSP_DLGINDIRECT: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSP_HASHELP: u32 = 32u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSP_HIDEHEADER: u32 = 2048u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSP_PREMATURE: u32 = 1024u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSP_RTLREADING: u32 = 16u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSP_USECALLBACK: u32 = 128u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSP_USEFUSIONCONTEXT: u32 = 16384u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSP_USEHEADERSUBTITLE: u32 = 8192u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSP_USEHEADERTITLE: u32 = 4096u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSP_USEHICON: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSP_USEICONID: u32 = 4u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSP_USEREFPARENT: u32 = 64u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSP_USETITLE: u32 = 8u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSWIZBF_ELEVATIONREQUIRED: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSWIZB_BACK: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSWIZB_CANCEL: u32 = 16u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSWIZB_DISABLEDFINISH: u32 = 8u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSWIZB_FINISH: u32 = 4u32; +pub const REBARCLASSNAME: &str = "ReBarWindow32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSWIZB_NEXT: u32 = 2u32; +pub const REBARCLASSNAMEA: &str = "ReBarWindow32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSWIZB_RESTORE: u32 = 1u32; +pub const REBARCLASSNAMEW: &str = "ReBarWindow32"; +#[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const PSWIZB_SHOW: u32 = 0u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn PackTouchHitTestingProximityEvaluation(phittestinginput: &TOUCH_HIT_TESTING_INPUT, pproximityeval: &TOUCH_HIT_TESTING_PROXIMITY_EVALUATION) -> super::super::Foundation::LRESULT { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn PackTouchHitTestingProximityEvaluation(phittestinginput: *const TOUCH_HIT_TESTING_INPUT, pproximityeval: *const TOUCH_HIT_TESTING_PROXIMITY_EVALUATION) -> super::super::Foundation::LRESULT; +pub struct REBARINFO { + pub cbSize: u32, + pub fMask: u32, + pub himl: HIMAGELIST, +} +impl ::core::marker::Copy for REBARINFO {} +impl ::core::clone::Clone for REBARINFO { + fn clone(&self) -> Self { + *self } - PackTouchHitTestingProximityEvaluation(::core::mem::transmute(phittestinginput), ::core::mem::transmute(pproximityeval)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -#[inline] -pub unsafe fn PropertySheetA(param0: &mut PROPSHEETHEADERA_V2) -> isize { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn PropertySheetA(param0: *mut PROPSHEETHEADERA_V2) -> isize; +impl ::core::fmt::Debug for REBARINFO { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_struct("REBARINFO").field("cbSize", &self.cbSize).field("fMask", &self.fMask).field("himl", &self.himl).finish() } - PropertySheetA(::core::mem::transmute(param0)) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_WindowsAndMessaging\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_WindowsAndMessaging"))] -#[inline] -pub unsafe fn PropertySheetW(param0: &mut PROPSHEETHEADERW_V2) -> isize { - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn PropertySheetW(param0: *mut PROPSHEETHEADERW_V2) -> isize; +unsafe impl ::windows::core::Abi for REBARINFO { + type Abi = Self; +} +impl ::core::cmp::PartialEq for REBARINFO { + fn eq(&self, other: &Self) -> bool { + unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } + } +} +impl ::core::cmp::Eq for REBARINFO {} +impl ::core::default::Default for REBARINFO { + fn default() -> Self { + unsafe { ::core::mem::zeroed() } } - PropertySheetW(::core::mem::transmute(param0)) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBAB_ADDBAND: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBAB_AUTOSIZE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBIM_BACKGROUND: u32 = 128u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBIM_CHEVRONLOCATION: u32 = 4096u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBIM_CHEVRONSTATE: u32 = 8192u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBIM_CHILD: u32 = 16u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBIM_CHILDSIZE: u32 = 32u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBIM_COLORS: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBIM_HEADERSIZE: u32 = 2048u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBIM_ID: u32 = 256u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBIM_IDEALSIZE: u32 = 512u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBIM_IMAGE: u32 = 8u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBIM_LPARAM: u32 = 1024u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBIM_SIZE: u32 = 64u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct REBARPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBIM_STYLE: u32 = 1u32; +pub const RP_GRIPPER: REBARPARTS = REBARPARTS(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBIM_TEXT: u32 = 4u32; +pub const RP_GRIPPERVERT: REBARPARTS = REBARPARTS(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBS_BREAK: u32 = 1u32; +pub const RP_BAND: REBARPARTS = REBARPARTS(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBS_CHILDEDGE: u32 = 4u32; +pub const RP_CHEVRON: REBARPARTS = REBARPARTS(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBS_FIXEDBMP: u32 = 32u32; +pub const RP_CHEVRONVERT: REBARPARTS = REBARPARTS(5i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBS_FIXEDSIZE: u32 = 2u32; +pub const RP_BACKGROUND: REBARPARTS = REBARPARTS(6i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBS_GRIPPERALWAYS: u32 = 128u32; +pub const RP_SPLITTER: REBARPARTS = REBARPARTS(7i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBS_HIDDEN: u32 = 8u32; +pub const RP_SPLITTERVERT: REBARPARTS = REBARPARTS(8i32); +impl ::core::marker::Copy for REBARPARTS {} +impl ::core::clone::Clone for REBARPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for REBARPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for REBARPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for REBARPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("REBARPARTS").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBS_HIDETITLE: u32 = 1024u32; +pub const REPLACEDLGORD: u32 = 1541u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBS_NOGRIPPER: u32 = 256u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct RESTOREBUTTONSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBS_NOVERT: u32 = 16u32; +pub const RBS_NORMAL: RESTOREBUTTONSTATES = RESTOREBUTTONSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBS_TOPALIGN: u32 = 2048u32; +pub const RBS_HOT: RESTOREBUTTONSTATES = RESTOREBUTTONSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBS_USECHEVRON: u32 = 512u32; +pub const RBS_PUSHED: RESTOREBUTTONSTATES = RESTOREBUTTONSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBBS_VARIABLEHEIGHT: u32 = 64u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct RBHITTESTINFO { - pub pt: super::super::Foundation::POINT, - pub flags: u32, - pub iBand: i32, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for RBHITTESTINFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for RBHITTESTINFO { +pub const RBS_DISABLED: RESTOREBUTTONSTATES = RESTOREBUTTONSTATES(4i32); +impl ::core::marker::Copy for RESTOREBUTTONSTATES {} +impl ::core::clone::Clone for RESTOREBUTTONSTATES { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_Foundation")] -impl ::core::fmt::Debug for RBHITTESTINFO { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("RBHITTESTINFO").field("pt", &self.pt).field("flags", &self.flags).field("iBand", &self.iBand).finish() +impl ::core::default::Default for RESTOREBUTTONSTATES { + fn default() -> Self { + Self(0) } } -#[cfg(feature = "Win32_Foundation")] -unsafe impl ::windows::core::Abi for RBHITTESTINFO { +unsafe impl ::windows::core::Abi for RESTOREBUTTONSTATES { type Abi = Self; } -#[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::PartialEq for RBHITTESTINFO { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::fmt::Debug for RESTOREBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("RESTOREBUTTONSTATES").field(&self.0).finish() } } +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const RUNDLGORD: u32 = 1545u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::cmp::Eq for RBHITTESTINFO {} +#[inline] +pub unsafe fn RegisterPointerDeviceNotifications<'a, P0, P1>(window: P0, notifyrange: P1) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, + P1: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RegisterPointerDeviceNotifications(window: super::super::Foundation::HWND, notifyrange: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL; + } + RegisterPointerDeviceNotifications(window.into(), notifyrange.into()) +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] -impl ::core::default::Default for RBHITTESTINFO { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +#[inline] +pub unsafe fn RegisterTouchHitTestingWindow<'a, P0>(hwnd: P0, value: u32) -> super::super::Foundation::BOOL +where + P0: ::std::convert::Into, +{ + #[cfg_attr(windows, link(name = "windows"))] + extern "system" { + fn RegisterTouchHitTestingWindow(hwnd: super::super::Foundation::HWND, value: u32) -> super::super::Foundation::BOOL; } + RegisterTouchHitTestingWindow(hwnd.into(), value) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBHT_CAPTION: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBHT_CHEVRON: u32 = 8u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBHT_CLIENT: u32 = 3u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBHT_GRABBER: u32 = 4u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBHT_NOWHERE: u32 = 1u32; +pub const SBARS_SIZEGRIP: u32 = 256u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBHT_SPLITTER: u32 = 16u32; +pub const SBARS_TOOLTIPS: u32 = 2048u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBIM_IMAGELIST: u32 = 1u32; +pub const SBT_NOBORDERS: u32 = 256u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBSTR_CHANGERECT: u32 = 1u32; +pub const SBT_NOTABPARSING: u32 = 2048u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBS_AUTOSIZE: u32 = 8192u32; +pub const SBT_OWNERDRAW: u32 = 4096u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBS_BANDBORDERS: u32 = 1024u32; +pub const SBT_POPOUT: u32 = 512u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBS_DBLCLKTOGGLE: u32 = 32768u32; +pub const SBT_RTLREADING: u32 = 1024u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBS_FIXEDORDER: u32 = 2048u32; +pub const SBT_TOOLTIPS: u32 = 2048u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBS_REGISTERDROP: u32 = 4096u32; +pub const SB_GETBORDERS: u32 = 1031u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBS_TOOLTIPS: u32 = 256u32; +pub const SB_GETICON: u32 = 1044u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBS_VARHEIGHT: u32 = 512u32; +pub const SB_GETPARTS: u32 = 1030u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RBS_VERTICALGRIPPER: u32 = 16384u32; +pub const SB_GETRECT: u32 = 1034u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_BEGINDRAG: u32 = 1048u32; +pub const SB_GETTEXT: u32 = 1037u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_DELETEBAND: u32 = 1026u32; +pub const SB_GETTEXTA: u32 = 1026u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_DRAGMOVE: u32 = 1050u32; +pub const SB_GETTEXTLENGTH: u32 = 1036u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_ENDDRAG: u32 = 1049u32; +pub const SB_GETTEXTLENGTHA: u32 = 1027u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETBANDBORDERS: u32 = 1058u32; +pub const SB_GETTEXTLENGTHW: u32 = 1036u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETBANDCOUNT: u32 = 1036u32; +pub const SB_GETTEXTW: u32 = 1037u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETBANDINFO: u32 = 1052u32; +pub const SB_GETTIPTEXTA: u32 = 1042u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETBANDINFOA: u32 = 1053u32; +pub const SB_GETTIPTEXTW: u32 = 1043u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETBANDINFOW: u32 = 1052u32; +pub const SB_GETUNICODEFORMAT: u32 = 8198u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETBANDMARGINS: u32 = 1064u32; +pub const SB_ISSIMPLE: u32 = 1038u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETBARHEIGHT: u32 = 1051u32; +pub const SB_SETBKCOLOR: u32 = 8193u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETBARINFO: u32 = 1027u32; +pub const SB_SETICON: u32 = 1039u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETBKCOLOR: u32 = 1044u32; +pub const SB_SETMINHEIGHT: u32 = 1032u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETCOLORSCHEME: u32 = 8195u32; +pub const SB_SETPARTS: u32 = 1028u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETDROPTARGET: u32 = 8196u32; +pub const SB_SETTEXT: u32 = 1035u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETEXTENDEDSTYLE: u32 = 1066u32; +pub const SB_SETTEXTA: u32 = 1025u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETPALETTE: u32 = 1062u32; +pub const SB_SETTEXTW: u32 = 1035u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETRECT: u32 = 1033u32; +pub const SB_SETTIPTEXTA: u32 = 1040u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETROWCOUNT: u32 = 1037u32; +pub const SB_SETTIPTEXTW: u32 = 1041u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETROWHEIGHT: u32 = 1038u32; +pub const SB_SETUNICODEFORMAT: u32 = 8197u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETTEXTCOLOR: u32 = 1046u32; +pub const SB_SIMPLE: u32 = 1033u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETTOOLTIPS: u32 = 1041u32; +pub const SB_SIMPLEID: u32 = 255u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_GETUNICODEFORMAT: u32 = 8198u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SCROLLBARPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_HITTEST: u32 = 1032u32; +pub const SBP_ARROWBTN: SCROLLBARPARTS = SCROLLBARPARTS(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_IDTOINDEX: u32 = 1040u32; +pub const SBP_THUMBBTNHORZ: SCROLLBARPARTS = SCROLLBARPARTS(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_INSERTBAND: u32 = 1034u32; +pub const SBP_THUMBBTNVERT: SCROLLBARPARTS = SCROLLBARPARTS(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_INSERTBANDA: u32 = 1025u32; +pub const SBP_LOWERTRACKHORZ: SCROLLBARPARTS = SCROLLBARPARTS(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_INSERTBANDW: u32 = 1034u32; +pub const SBP_UPPERTRACKHORZ: SCROLLBARPARTS = SCROLLBARPARTS(5i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_MAXIMIZEBAND: u32 = 1055u32; +pub const SBP_LOWERTRACKVERT: SCROLLBARPARTS = SCROLLBARPARTS(6i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_MINIMIZEBAND: u32 = 1054u32; +pub const SBP_UPPERTRACKVERT: SCROLLBARPARTS = SCROLLBARPARTS(7i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_MOVEBAND: u32 = 1063u32; +pub const SBP_GRIPPERHORZ: SCROLLBARPARTS = SCROLLBARPARTS(8i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_PUSHCHEVRON: u32 = 1067u32; +pub const SBP_GRIPPERVERT: SCROLLBARPARTS = SCROLLBARPARTS(9i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SETBANDINFO: u32 = 1035u32; +pub const SBP_SIZEBOX: SCROLLBARPARTS = SCROLLBARPARTS(10i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SETBANDINFOA: u32 = 1030u32; +pub const SBP_SIZEBOXBKGND: SCROLLBARPARTS = SCROLLBARPARTS(11i32); +impl ::core::marker::Copy for SCROLLBARPARTS {} +impl ::core::clone::Clone for SCROLLBARPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SCROLLBARPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SCROLLBARPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for SCROLLBARPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SCROLLBARPARTS").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SETBANDINFOW: u32 = 1035u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SCROLLBARSTYLESTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SETBANDWIDTH: u32 = 1068u32; +pub const SCRBS_NORMAL: SCROLLBARSTYLESTATES = SCROLLBARSTYLESTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SETBARINFO: u32 = 1028u32; +pub const SCRBS_HOT: SCROLLBARSTYLESTATES = SCROLLBARSTYLESTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SETBKCOLOR: u32 = 1043u32; +pub const SCRBS_PRESSED: SCROLLBARSTYLESTATES = SCROLLBARSTYLESTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SETCOLORSCHEME: u32 = 8194u32; +pub const SCRBS_DISABLED: SCROLLBARSTYLESTATES = SCROLLBARSTYLESTATES(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SETEXTENDEDSTYLE: u32 = 1065u32; +pub const SCRBS_HOVER: SCROLLBARSTYLESTATES = SCROLLBARSTYLESTATES(5i32); +impl ::core::marker::Copy for SCROLLBARSTYLESTATES {} +impl ::core::clone::Clone for SCROLLBARSTYLESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SCROLLBARSTYLESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SCROLLBARSTYLESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SCROLLBARSTYLESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SCROLLBARSTYLESTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SETPALETTE: u32 = 1061u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SECTIONTITLELINKSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SETPARENT: u32 = 1031u32; +pub const CPSTL_NORMAL: SECTIONTITLELINKSTATES = SECTIONTITLELINKSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SETTEXTCOLOR: u32 = 1045u32; +pub const CPSTL_HOT: SECTIONTITLELINKSTATES = SECTIONTITLELINKSTATES(2i32); +impl ::core::marker::Copy for SECTIONTITLELINKSTATES {} +impl ::core::clone::Clone for SECTIONTITLELINKSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SECTIONTITLELINKSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SECTIONTITLELINKSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SECTIONTITLELINKSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SECTIONTITLELINKSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SETTOOLTIPS: u32 = 1042u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SET_THEME_APP_PROPERTIES_FLAGS(pub u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SETUNICODEFORMAT: u32 = 8197u32; +pub const ALLOW_NONCLIENT: SET_THEME_APP_PROPERTIES_FLAGS = SET_THEME_APP_PROPERTIES_FLAGS(1u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SETWINDOWTHEME: u32 = 8203u32; +pub const ALLOW_CONTROLS: SET_THEME_APP_PROPERTIES_FLAGS = SET_THEME_APP_PROPERTIES_FLAGS(2u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SHOWBAND: u32 = 1059u32; +pub const ALLOW_WEBCONTENT: SET_THEME_APP_PROPERTIES_FLAGS = SET_THEME_APP_PROPERTIES_FLAGS(4u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RB_SIZETORECT: u32 = 1047u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -pub struct REBARBANDINFOA { - pub cbSize: u32, - pub fMask: u32, - pub fStyle: u32, - pub clrFore: u32, - pub clrBack: u32, - pub lpText: ::windows::core::PSTR, - pub cch: u32, - pub iImage: i32, - pub hwndChild: super::super::Foundation::HWND, - pub cxMinChild: u32, - pub cyMinChild: u32, - pub cx: u32, - pub hbmBack: super::super::Graphics::Gdi::HBITMAP, - pub wID: u32, - pub cyChild: u32, - pub cyMaxChild: u32, - pub cyIntegral: u32, - pub cxIdeal: u32, - pub lParam: super::super::Foundation::LPARAM, - pub cxHeader: u32, - pub rcChevronLocation: super::super::Foundation::RECT, - pub uChevronState: u32, -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::marker::Copy for REBARBANDINFOA {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::clone::Clone for REBARBANDINFOA { +pub const VALIDBITS: SET_THEME_APP_PROPERTIES_FLAGS = SET_THEME_APP_PROPERTIES_FLAGS(7u32); +impl ::core::marker::Copy for SET_THEME_APP_PROPERTIES_FLAGS {} +impl ::core::clone::Clone for SET_THEME_APP_PROPERTIES_FLAGS { fn clone(&self) -> Self { *self } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::fmt::Debug for REBARBANDINFOA { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("REBARBANDINFOA") - .field("cbSize", &self.cbSize) - .field("fMask", &self.fMask) - .field("fStyle", &self.fStyle) - .field("clrFore", &self.clrFore) - .field("clrBack", &self.clrBack) - .field("lpText", &self.lpText) - .field("cch", &self.cch) - .field("iImage", &self.iImage) - .field("hwndChild", &self.hwndChild) - .field("cxMinChild", &self.cxMinChild) - .field("cyMinChild", &self.cyMinChild) - .field("cx", &self.cx) - .field("hbmBack", &self.hbmBack) - .field("wID", &self.wID) - .field("cyChild", &self.cyChild) - .field("cyMaxChild", &self.cyMaxChild) - .field("cyIntegral", &self.cyIntegral) - .field("cxIdeal", &self.cxIdeal) - .field("lParam", &self.lParam) - .field("cxHeader", &self.cxHeader) - .field("rcChevronLocation", &self.rcChevronLocation) - .field("uChevronState", &self.uChevronState) - .finish() +impl ::core::default::Default for SET_THEME_APP_PROPERTIES_FLAGS { + fn default() -> Self { + Self(0) } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -unsafe impl ::windows::core::Abi for REBARBANDINFOA { +unsafe impl ::windows::core::Abi for SET_THEME_APP_PROPERTIES_FLAGS { type Abi = Self; } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::PartialEq for REBARBANDINFOA { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } - } -} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::Eq for REBARBANDINFOA {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::default::Default for REBARBANDINFOA { - fn default() -> Self { - unsafe { ::core::mem::zeroed() } +impl ::core::fmt::Debug for SET_THEME_APP_PROPERTIES_FLAGS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SET_THEME_APP_PROPERTIES_FLAGS").field(&self.0).finish() } } -#[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -pub struct REBARBANDINFOW { - pub cbSize: u32, - pub fMask: u32, - pub fStyle: u32, - pub clrFore: u32, - pub clrBack: u32, - pub lpText: ::windows::core::PWSTR, - pub cch: u32, - pub iImage: i32, - pub hwndChild: super::super::Foundation::HWND, - pub cxMinChild: u32, - pub cyMinChild: u32, - pub cx: u32, - pub hbmBack: super::super::Graphics::Gdi::HBITMAP, - pub wID: u32, - pub cyChild: u32, - pub cyMaxChild: u32, - pub cyIntegral: u32, - pub cxIdeal: u32, - pub lParam: super::super::Foundation::LPARAM, - pub cxHeader: u32, - pub rcChevronLocation: super::super::Foundation::RECT, - pub uChevronState: u32, +impl ::core::ops::BitOr for SET_THEME_APP_PROPERTIES_FLAGS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::marker::Copy for REBARBANDINFOW {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::clone::Clone for REBARBANDINFOW { - fn clone(&self) -> Self { - *self +impl ::core::ops::BitAnd for SET_THEME_APP_PROPERTIES_FLAGS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::fmt::Debug for REBARBANDINFOW { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("REBARBANDINFOW") - .field("cbSize", &self.cbSize) - .field("fMask", &self.fMask) - .field("fStyle", &self.fStyle) - .field("clrFore", &self.clrFore) - .field("clrBack", &self.clrBack) - .field("lpText", &self.lpText) - .field("cch", &self.cch) - .field("iImage", &self.iImage) - .field("hwndChild", &self.hwndChild) - .field("cxMinChild", &self.cxMinChild) - .field("cyMinChild", &self.cyMinChild) - .field("cx", &self.cx) - .field("hbmBack", &self.hbmBack) - .field("wID", &self.wID) - .field("cyChild", &self.cyChild) - .field("cyMaxChild", &self.cyMaxChild) - .field("cyIntegral", &self.cyIntegral) - .field("cxIdeal", &self.cxIdeal) - .field("lParam", &self.lParam) - .field("cxHeader", &self.cxHeader) - .field("rcChevronLocation", &self.rcChevronLocation) - .field("uChevronState", &self.uChevronState) - .finish() +impl ::core::ops::BitOrAssign for SET_THEME_APP_PROPERTIES_FLAGS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -unsafe impl ::windows::core::Abi for REBARBANDINFOW { - type Abi = Self; +impl ::core::ops::BitAndAssign for SET_THEME_APP_PROPERTIES_FLAGS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::PartialEq for REBARBANDINFOW { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::ops::Not for SET_THEME_APP_PROPERTIES_FLAGS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) } } -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::cmp::Eq for REBARBANDINFOW {} -#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] -impl ::core::default::Default for REBARBANDINFOW { +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SHOWCALENDARBUTTONRIGHTSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPSCBR_NORMAL: SHOWCALENDARBUTTONRIGHTSTATES = SHOWCALENDARBUTTONRIGHTSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPSCBR_HOT: SHOWCALENDARBUTTONRIGHTSTATES = SHOWCALENDARBUTTONRIGHTSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPSCBR_PRESSED: SHOWCALENDARBUTTONRIGHTSTATES = SHOWCALENDARBUTTONRIGHTSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DPSCBR_DISABLED: SHOWCALENDARBUTTONRIGHTSTATES = SHOWCALENDARBUTTONRIGHTSTATES(4i32); +impl ::core::marker::Copy for SHOWCALENDARBUTTONRIGHTSTATES {} +impl ::core::clone::Clone for SHOWCALENDARBUTTONRIGHTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SHOWCALENDARBUTTONRIGHTSTATES { fn default() -> Self { - unsafe { ::core::mem::zeroed() } + Self(0) + } +} +unsafe impl ::windows::core::Abi for SHOWCALENDARBUTTONRIGHTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SHOWCALENDARBUTTONRIGHTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SHOWCALENDARBUTTONRIGHTSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const REBARCLASSNAME: &str = "ReBarWindow32"; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SIZEBOXSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const REBARCLASSNAMEA: &str = "ReBarWindow32"; +pub const SZB_RIGHTALIGN: SIZEBOXSTATES = SIZEBOXSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const REBARCLASSNAMEW: &str = "ReBarWindow32"; -#[repr(C)] +pub const SZB_LEFTALIGN: SIZEBOXSTATES = SIZEBOXSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub struct REBARINFO { - pub cbSize: u32, - pub fMask: u32, - pub himl: HIMAGELIST, -} -impl ::core::marker::Copy for REBARINFO {} -impl ::core::clone::Clone for REBARINFO { +pub const SZB_TOPRIGHTALIGN: SIZEBOXSTATES = SIZEBOXSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZB_TOPLEFTALIGN: SIZEBOXSTATES = SIZEBOXSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZB_HALFBOTTOMRIGHTALIGN: SIZEBOXSTATES = SIZEBOXSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZB_HALFBOTTOMLEFTALIGN: SIZEBOXSTATES = SIZEBOXSTATES(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZB_HALFTOPRIGHTALIGN: SIZEBOXSTATES = SIZEBOXSTATES(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SZB_HALFTOPLEFTALIGN: SIZEBOXSTATES = SIZEBOXSTATES(8i32); +impl ::core::marker::Copy for SIZEBOXSTATES {} +impl ::core::clone::Clone for SIZEBOXSTATES { fn clone(&self) -> Self { *self } } -impl ::core::fmt::Debug for REBARINFO { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("REBARINFO").field("cbSize", &self.cbSize).field("fMask", &self.fMask).field("himl", &self.himl).finish() +impl ::core::default::Default for SIZEBOXSTATES { + fn default() -> Self { + Self(0) } } -unsafe impl ::windows::core::Abi for REBARINFO { +unsafe impl ::windows::core::Abi for SIZEBOXSTATES { type Abi = Self; } -impl ::core::cmp::PartialEq for REBARINFO { - fn eq(&self, other: &Self) -> bool { - unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } +impl ::core::fmt::Debug for SIZEBOXSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SIZEBOXSTATES").field(&self.0).finish() } } -impl ::core::cmp::Eq for REBARINFO {} -impl ::core::default::Default for REBARINFO { +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SIZINGTYPE(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ST_TRUESIZE: SIZINGTYPE = SIZINGTYPE(0i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ST_STRETCH: SIZINGTYPE = SIZINGTYPE(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const ST_TILE: SIZINGTYPE = SIZINGTYPE(2i32); +impl ::core::marker::Copy for SIZINGTYPE {} +impl ::core::clone::Clone for SIZINGTYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SIZINGTYPE { fn default() -> Self { - unsafe { ::core::mem::zeroed() } + Self(0) + } +} +unsafe impl ::windows::core::Abi for SIZINGTYPE { + type Abi = Self; +} +impl ::core::fmt::Debug for SIZINGTYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SIZINGTYPE").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const REPLACEDLGORD: u32 = 1541u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SMALLCAPTIONSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const RUNDLGORD: u32 = 1545u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn RegisterPointerDeviceNotifications<'a, P0, P1>(window: P0, notifyrange: P1) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, - P1: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RegisterPointerDeviceNotifications(window: super::super::Foundation::HWND, notifyrange: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL; +pub const SCS_ACTIVE: SMALLCAPTIONSTATES = SMALLCAPTIONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SCS_INACTIVE: SMALLCAPTIONSTATES = SMALLCAPTIONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SCS_DISABLED: SMALLCAPTIONSTATES = SMALLCAPTIONSTATES(3i32); +impl ::core::marker::Copy for SMALLCAPTIONSTATES {} +impl ::core::clone::Clone for SMALLCAPTIONSTATES { + fn clone(&self) -> Self { + *self } - RegisterPointerDeviceNotifications(window.into(), notifyrange.into()) } -#[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -#[inline] -pub unsafe fn RegisterTouchHitTestingWindow<'a, P0>(hwnd: P0, value: u32) -> super::super::Foundation::BOOL -where - P0: ::std::convert::Into, -{ - #[cfg_attr(windows, link(name = "windows"))] - extern "system" { - fn RegisterTouchHitTestingWindow(hwnd: super::super::Foundation::HWND, value: u32) -> super::super::Foundation::BOOL; +impl ::core::default::Default for SMALLCAPTIONSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SMALLCAPTIONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SMALLCAPTIONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SMALLCAPTIONSTATES").field(&self.0).finish() } - RegisterTouchHitTestingWindow(hwnd.into(), value) } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SBARS_SIZEGRIP: u32 = 256u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SBARS_TOOLTIPS: u32 = 2048u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SMALLCLOSEBUTTONSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SBT_NOBORDERS: u32 = 256u32; +pub const SCBS_NORMAL: SMALLCLOSEBUTTONSTATES = SMALLCLOSEBUTTONSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SBT_NOTABPARSING: u32 = 2048u32; +pub const SCBS_HOT: SMALLCLOSEBUTTONSTATES = SMALLCLOSEBUTTONSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SBT_OWNERDRAW: u32 = 4096u32; +pub const SCBS_PUSHED: SMALLCLOSEBUTTONSTATES = SMALLCLOSEBUTTONSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SBT_POPOUT: u32 = 512u32; +pub const SCBS_DISABLED: SMALLCLOSEBUTTONSTATES = SMALLCLOSEBUTTONSTATES(4i32); +impl ::core::marker::Copy for SMALLCLOSEBUTTONSTATES {} +impl ::core::clone::Clone for SMALLCLOSEBUTTONSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SMALLCLOSEBUTTONSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SMALLCLOSEBUTTONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SMALLCLOSEBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SMALLCLOSEBUTTONSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SBT_RTLREADING: u32 = 1024u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SMALLFRAMEBOTTOMSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SBT_TOOLTIPS: u32 = 2048u32; +pub const SFRB_ACTIVE: SMALLFRAMEBOTTOMSTATES = SMALLFRAMEBOTTOMSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_GETBORDERS: u32 = 1031u32; +pub const SFRB_INACTIVE: SMALLFRAMEBOTTOMSTATES = SMALLFRAMEBOTTOMSTATES(2i32); +impl ::core::marker::Copy for SMALLFRAMEBOTTOMSTATES {} +impl ::core::clone::Clone for SMALLFRAMEBOTTOMSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SMALLFRAMEBOTTOMSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SMALLFRAMEBOTTOMSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SMALLFRAMEBOTTOMSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SMALLFRAMEBOTTOMSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_GETICON: u32 = 1044u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SMALLFRAMELEFTSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_GETPARTS: u32 = 1030u32; +pub const SFRL_ACTIVE: SMALLFRAMELEFTSTATES = SMALLFRAMELEFTSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_GETRECT: u32 = 1034u32; +pub const SFRL_INACTIVE: SMALLFRAMELEFTSTATES = SMALLFRAMELEFTSTATES(2i32); +impl ::core::marker::Copy for SMALLFRAMELEFTSTATES {} +impl ::core::clone::Clone for SMALLFRAMELEFTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SMALLFRAMELEFTSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SMALLFRAMELEFTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SMALLFRAMELEFTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SMALLFRAMELEFTSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_GETTEXT: u32 = 1037u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SMALLFRAMERIGHTSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_GETTEXTA: u32 = 1026u32; +pub const SFRR_ACTIVE: SMALLFRAMERIGHTSTATES = SMALLFRAMERIGHTSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_GETTEXTLENGTH: u32 = 1036u32; +pub const SFRR_INACTIVE: SMALLFRAMERIGHTSTATES = SMALLFRAMERIGHTSTATES(2i32); +impl ::core::marker::Copy for SMALLFRAMERIGHTSTATES {} +impl ::core::clone::Clone for SMALLFRAMERIGHTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SMALLFRAMERIGHTSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SMALLFRAMERIGHTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SMALLFRAMERIGHTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SMALLFRAMERIGHTSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_GETTEXTLENGTHA: u32 = 1027u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SOFTWAREEXPLORERSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_GETTEXTLENGTHW: u32 = 1036u32; +pub const SPSE_NORMAL: SOFTWAREEXPLORERSTATES = SOFTWAREEXPLORERSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_GETTEXTW: u32 = 1037u32; +pub const SPSE_HOT: SOFTWAREEXPLORERSTATES = SOFTWAREEXPLORERSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_GETTIPTEXTA: u32 = 1042u32; +pub const SPSE_SELECTED: SOFTWAREEXPLORERSTATES = SOFTWAREEXPLORERSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_GETTIPTEXTW: u32 = 1043u32; +pub const SPSE_DISABLED: SOFTWAREEXPLORERSTATES = SOFTWAREEXPLORERSTATES(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_GETUNICODEFORMAT: u32 = 8198u32; +pub const SPSE_FOCUSED: SOFTWAREEXPLORERSTATES = SOFTWAREEXPLORERSTATES(5i32); +impl ::core::marker::Copy for SOFTWAREEXPLORERSTATES {} +impl ::core::clone::Clone for SOFTWAREEXPLORERSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SOFTWAREEXPLORERSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SOFTWAREEXPLORERSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SOFTWAREEXPLORERSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SOFTWAREEXPLORERSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_ISSIMPLE: u32 = 1038u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SPECIALGROUPCOLLAPSESTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_SETBKCOLOR: u32 = 8193u32; +pub const EBSGC_NORMAL: SPECIALGROUPCOLLAPSESTATES = SPECIALGROUPCOLLAPSESTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_SETICON: u32 = 1039u32; +pub const EBSGC_HOT: SPECIALGROUPCOLLAPSESTATES = SPECIALGROUPCOLLAPSESTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_SETMINHEIGHT: u32 = 1032u32; +pub const EBSGC_PRESSED: SPECIALGROUPCOLLAPSESTATES = SPECIALGROUPCOLLAPSESTATES(3i32); +impl ::core::marker::Copy for SPECIALGROUPCOLLAPSESTATES {} +impl ::core::clone::Clone for SPECIALGROUPCOLLAPSESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SPECIALGROUPCOLLAPSESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SPECIALGROUPCOLLAPSESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SPECIALGROUPCOLLAPSESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SPECIALGROUPCOLLAPSESTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_SETPARTS: u32 = 1028u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SPECIALGROUPEXPANDSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_SETTEXT: u32 = 1035u32; +pub const EBSGE_NORMAL: SPECIALGROUPEXPANDSTATES = SPECIALGROUPEXPANDSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_SETTEXTA: u32 = 1025u32; +pub const EBSGE_HOT: SPECIALGROUPEXPANDSTATES = SPECIALGROUPEXPANDSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_SETTEXTW: u32 = 1035u32; +pub const EBSGE_PRESSED: SPECIALGROUPEXPANDSTATES = SPECIALGROUPEXPANDSTATES(3i32); +impl ::core::marker::Copy for SPECIALGROUPEXPANDSTATES {} +impl ::core::clone::Clone for SPECIALGROUPEXPANDSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SPECIALGROUPEXPANDSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SPECIALGROUPEXPANDSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SPECIALGROUPEXPANDSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SPECIALGROUPEXPANDSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_SETTIPTEXTA: u32 = 1040u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SPINPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_SETTIPTEXTW: u32 = 1041u32; +pub const SPNP_UP: SPINPARTS = SPINPARTS(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_SETUNICODEFORMAT: u32 = 8197u32; +pub const SPNP_DOWN: SPINPARTS = SPINPARTS(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_SIMPLE: u32 = 1033u32; +pub const SPNP_UPHORZ: SPINPARTS = SPINPARTS(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SB_SIMPLEID: u32 = 255u32; +pub const SPNP_DOWNHORZ: SPINPARTS = SPINPARTS(4i32); +impl ::core::marker::Copy for SPINPARTS {} +impl ::core::clone::Clone for SPINPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SPINPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SPINPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for SPINPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SPINPARTS").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct SIZINGTYPE(pub i32); +pub struct SPLITTERSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ST_TRUESIZE: SIZINGTYPE = SIZINGTYPE(0i32); +pub const SPLITS_NORMAL: SPLITTERSTATES = SPLITTERSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ST_STRETCH: SIZINGTYPE = SIZINGTYPE(1i32); +pub const SPLITS_HOT: SPLITTERSTATES = SPLITTERSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const ST_TILE: SIZINGTYPE = SIZINGTYPE(2i32); -impl ::core::marker::Copy for SIZINGTYPE {} -impl ::core::clone::Clone for SIZINGTYPE { +pub const SPLITS_PRESSED: SPLITTERSTATES = SPLITTERSTATES(3i32); +impl ::core::marker::Copy for SPLITTERSTATES {} +impl ::core::clone::Clone for SPLITTERSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for SIZINGTYPE { +impl ::core::default::Default for SPLITTERSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for SIZINGTYPE { +unsafe impl ::windows::core::Abi for SPLITTERSTATES { type Abi = Self; } -impl ::core::fmt::Debug for SIZINGTYPE { +impl ::core::fmt::Debug for SPLITTERSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("SIZINGTYPE").field(&self.0).finish() + f.debug_tuple("SPLITTERSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct SOFTWAREEXPLORERSTATES(pub i32); +pub struct SPLITTERVERTSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPSE_NORMAL: SOFTWAREEXPLORERSTATES = SOFTWAREEXPLORERSTATES(1i32); +pub const SPLITSV_NORMAL: SPLITTERVERTSTATES = SPLITTERVERTSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPSE_HOT: SOFTWAREEXPLORERSTATES = SOFTWAREEXPLORERSTATES(2i32); +pub const SPLITSV_HOT: SPLITTERVERTSTATES = SPLITTERVERTSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPSE_SELECTED: SOFTWAREEXPLORERSTATES = SOFTWAREEXPLORERSTATES(3i32); +pub const SPLITSV_PRESSED: SPLITTERVERTSTATES = SPLITTERVERTSTATES(3i32); +impl ::core::marker::Copy for SPLITTERVERTSTATES {} +impl ::core::clone::Clone for SPLITTERVERTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SPLITTERVERTSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SPLITTERVERTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SPLITTERVERTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SPLITTERVERTSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPSE_DISABLED: SOFTWAREEXPLORERSTATES = SOFTWAREEXPLORERSTATES(4i32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct STANDARDSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const SPSE_FOCUSED: SOFTWAREEXPLORERSTATES = SOFTWAREEXPLORERSTATES(5i32); -impl ::core::marker::Copy for SOFTWAREEXPLORERSTATES {} -impl ::core::clone::Clone for SOFTWAREEXPLORERSTATES { +pub const TTSS_NORMAL: STANDARDSTATES = STANDARDSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTSS_LINK: STANDARDSTATES = STANDARDSTATES(2i32); +impl ::core::marker::Copy for STANDARDSTATES {} +impl ::core::clone::Clone for STANDARDSTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for SOFTWAREEXPLORERSTATES { +impl ::core::default::Default for STANDARDSTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for SOFTWAREEXPLORERSTATES { +unsafe impl ::windows::core::Abi for STANDARDSTATES { type Abi = Self; } -impl ::core::fmt::Debug for SOFTWAREEXPLORERSTATES { +impl ::core::fmt::Debug for STANDARDSTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("SOFTWAREEXPLORERSTATES").field(&self.0).finish() + f.debug_tuple("STANDARDSTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] @@ -17356,80 +21927,248 @@ impl ::core::clone::Clone for STARTPANELPARTS { *self } } -impl ::core::default::Default for STARTPANELPARTS { +impl ::core::default::Default for STARTPANELPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for STARTPANELPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for STARTPANELPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("STARTPANELPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct STATICPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STAT_TEXT: STATICPARTS = STATICPARTS(1i32); +impl ::core::marker::Copy for STATICPARTS {} +impl ::core::clone::Clone for STATICPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for STATICPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for STATICPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for STATICPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("STATICPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STATUSCLASSNAME: &str = "msctls_statusbar32"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STATUSCLASSNAMEA: &str = "msctls_statusbar32"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STATUSCLASSNAMEW: &str = "msctls_statusbar32"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct STATUSPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SP_PANE: STATUSPARTS = STATUSPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SP_GRIPPERPANE: STATUSPARTS = STATUSPARTS(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SP_GRIPPER: STATUSPARTS = STATUSPARTS(3i32); +impl ::core::marker::Copy for STATUSPARTS {} +impl ::core::clone::Clone for STATUSPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for STATUSPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for STATUSPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for STATUSPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("STATUSPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_COPY: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_CUT: u32 = 0u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_DELETE: u32 = 5u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_FILENEW: u32 = 6u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_FILEOPEN: u32 = 7u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_FILESAVE: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_FIND: u32 = 12u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_HELP: u32 = 11u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_PASTE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_PRINT: u32 = 14u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_PRINTPRE: u32 = 9u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_PROPERTIES: u32 = 10u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_REDOW: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_REPLACE: u32 = 13u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const STD_UNDO: u32 = 3u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SYSBUTTONSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBS_NORMAL: SYSBUTTONSTATES = SYSBUTTONSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBS_HOT: SYSBUTTONSTATES = SYSBUTTONSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBS_PUSHED: SYSBUTTONSTATES = SYSBUTTONSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const SBS_DISABLED: SYSBUTTONSTATES = SYSBUTTONSTATES(4i32); +impl ::core::marker::Copy for SYSBUTTONSTATES {} +impl ::core::clone::Clone for SYSBUTTONSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SYSBUTTONSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SYSBUTTONSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SYSBUTTONSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SYSBUTTONSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SYSTEMCLOSESTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSYSC_NORMAL: SYSTEMCLOSESTATES = SYSTEMCLOSESTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSYSC_DISABLED: SYSTEMCLOSESTATES = SYSTEMCLOSESTATES(2i32); +impl ::core::marker::Copy for SYSTEMCLOSESTATES {} +impl ::core::clone::Clone for SYSTEMCLOSESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SYSTEMCLOSESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SYSTEMCLOSESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SYSTEMCLOSESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SYSTEMCLOSESTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SYSTEMMAXIMIZESTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSYSMX_NORMAL: SYSTEMMAXIMIZESTATES = SYSTEMMAXIMIZESTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSYSMX_DISABLED: SYSTEMMAXIMIZESTATES = SYSTEMMAXIMIZESTATES(2i32); +impl ::core::marker::Copy for SYSTEMMAXIMIZESTATES {} +impl ::core::clone::Clone for SYSTEMMAXIMIZESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SYSTEMMAXIMIZESTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for STARTPANELPARTS { +unsafe impl ::windows::core::Abi for SYSTEMMAXIMIZESTATES { type Abi = Self; } -impl ::core::fmt::Debug for STARTPANELPARTS { +impl ::core::fmt::Debug for SYSTEMMAXIMIZESTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("STARTPANELPARTS").field(&self.0).finish() + f.debug_tuple("SYSTEMMAXIMIZESTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct STATICPARTS(pub i32); +pub struct SYSTEMMINIMIZESTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STAT_TEXT: STATICPARTS = STATICPARTS(1i32); -impl ::core::marker::Copy for STATICPARTS {} -impl ::core::clone::Clone for STATICPARTS { +pub const MSYSMN_NORMAL: SYSTEMMINIMIZESTATES = SYSTEMMINIMIZESTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const MSYSMN_DISABLED: SYSTEMMINIMIZESTATES = SYSTEMMINIMIZESTATES(2i32); +impl ::core::marker::Copy for SYSTEMMINIMIZESTATES {} +impl ::core::clone::Clone for SYSTEMMINIMIZESTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for STATICPARTS { +impl ::core::default::Default for SYSTEMMINIMIZESTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for STATICPARTS { +unsafe impl ::windows::core::Abi for SYSTEMMINIMIZESTATES { type Abi = Self; } -impl ::core::fmt::Debug for STATICPARTS { +impl ::core::fmt::Debug for SYSTEMMINIMIZESTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("STATICPARTS").field(&self.0).finish() + f.debug_tuple("SYSTEMMINIMIZESTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STATUSCLASSNAME: &str = "msctls_statusbar32"; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STATUSCLASSNAMEA: &str = "msctls_statusbar32"; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STATUSCLASSNAMEW: &str = "msctls_statusbar32"; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_COPY: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_CUT: u32 = 0u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_DELETE: u32 = 5u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_FILENEW: u32 = 6u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_FILEOPEN: u32 = 7u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_FILESAVE: u32 = 8u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_FIND: u32 = 12u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_HELP: u32 = 11u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_PASTE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_PRINT: u32 = 14u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_PRINTPRE: u32 = 9u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_PROPERTIES: u32 = 10u32; -#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_REDOW: u32 = 4u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SYSTEMRESTORESTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_REPLACE: u32 = 13u32; +pub const MSYSR_NORMAL: SYSTEMRESTORESTATES = SYSTEMRESTORESTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const STD_UNDO: u32 = 3u32; +pub const MSYSR_DISABLED: SYSTEMRESTORESTATES = SYSTEMRESTORESTATES(2i32); +impl ::core::marker::Copy for SYSTEMRESTORESTATES {} +impl ::core::clone::Clone for SYSTEMRESTORESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SYSTEMRESTORESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SYSTEMRESTORESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for SYSTEMRESTORESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SYSTEMRESTORESTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const SZ_THDOCPROP_AUTHOR: &str = "author"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] @@ -17482,10 +22221,10 @@ where } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[inline] -pub unsafe fn SetThemeAppProperties(dwflags: u32) { +pub unsafe fn SetThemeAppProperties(dwflags: SET_THEME_APP_PROPERTIES_FLAGS) { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SetThemeAppProperties(dwflags: u32); + fn SetThemeAppProperties(dwflags: SET_THEME_APP_PROPERTIES_FLAGS); } SetThemeAppProperties(dwflags) } @@ -17573,6 +22312,212 @@ where #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TABITEMBOTHEDGESTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIBES_NORMAL: TABITEMBOTHEDGESTATES = TABITEMBOTHEDGESTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIBES_HOT: TABITEMBOTHEDGESTATES = TABITEMBOTHEDGESTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIBES_SELECTED: TABITEMBOTHEDGESTATES = TABITEMBOTHEDGESTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIBES_DISABLED: TABITEMBOTHEDGESTATES = TABITEMBOTHEDGESTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIBES_FOCUSED: TABITEMBOTHEDGESTATES = TABITEMBOTHEDGESTATES(5i32); +impl ::core::marker::Copy for TABITEMBOTHEDGESTATES {} +impl ::core::clone::Clone for TABITEMBOTHEDGESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TABITEMBOTHEDGESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TABITEMBOTHEDGESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TABITEMBOTHEDGESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TABITEMBOTHEDGESTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TABITEMLEFTEDGESTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TILES_NORMAL: TABITEMLEFTEDGESTATES = TABITEMLEFTEDGESTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TILES_HOT: TABITEMLEFTEDGESTATES = TABITEMLEFTEDGESTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TILES_SELECTED: TABITEMLEFTEDGESTATES = TABITEMLEFTEDGESTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TILES_DISABLED: TABITEMLEFTEDGESTATES = TABITEMLEFTEDGESTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TILES_FOCUSED: TABITEMLEFTEDGESTATES = TABITEMLEFTEDGESTATES(5i32); +impl ::core::marker::Copy for TABITEMLEFTEDGESTATES {} +impl ::core::clone::Clone for TABITEMLEFTEDGESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TABITEMLEFTEDGESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TABITEMLEFTEDGESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TABITEMLEFTEDGESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TABITEMLEFTEDGESTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TABITEMRIGHTEDGESTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIRES_NORMAL: TABITEMRIGHTEDGESTATES = TABITEMRIGHTEDGESTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIRES_HOT: TABITEMRIGHTEDGESTATES = TABITEMRIGHTEDGESTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIRES_SELECTED: TABITEMRIGHTEDGESTATES = TABITEMRIGHTEDGESTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIRES_DISABLED: TABITEMRIGHTEDGESTATES = TABITEMRIGHTEDGESTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIRES_FOCUSED: TABITEMRIGHTEDGESTATES = TABITEMRIGHTEDGESTATES(5i32); +impl ::core::marker::Copy for TABITEMRIGHTEDGESTATES {} +impl ::core::clone::Clone for TABITEMRIGHTEDGESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TABITEMRIGHTEDGESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TABITEMRIGHTEDGESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TABITEMRIGHTEDGESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TABITEMRIGHTEDGESTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TABITEMSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIS_NORMAL: TABITEMSTATES = TABITEMSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIS_HOT: TABITEMSTATES = TABITEMSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIS_SELECTED: TABITEMSTATES = TABITEMSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIS_DISABLED: TABITEMSTATES = TABITEMSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TIS_FOCUSED: TABITEMSTATES = TABITEMSTATES(5i32); +impl ::core::marker::Copy for TABITEMSTATES {} +impl ::core::clone::Clone for TABITEMSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TABITEMSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TABITEMSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TABITEMSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TABITEMSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TABPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TABP_TABITEM: TABPARTS = TABPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TABP_TABITEMLEFTEDGE: TABPARTS = TABPARTS(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TABP_TABITEMRIGHTEDGE: TABPARTS = TABPARTS(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TABP_TABITEMBOTHEDGE: TABPARTS = TABPARTS(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TABP_TOPTABITEM: TABPARTS = TABPARTS(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TABP_TOPTABITEMLEFTEDGE: TABPARTS = TABPARTS(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TABP_TOPTABITEMRIGHTEDGE: TABPARTS = TABPARTS(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TABP_TOPTABITEMBOTHEDGE: TABPARTS = TABPARTS(8i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TABP_PANE: TABPARTS = TABPARTS(9i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TABP_BODY: TABPARTS = TABPARTS(10i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TABP_AEROWIZARDBODY: TABPARTS = TABPARTS(11i32); +impl ::core::marker::Copy for TABPARTS {} +impl ::core::clone::Clone for TABPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TABPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TABPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for TABPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TABPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TABSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CSTB_NORMAL: TABSTATES = TABSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CSTB_HOT: TABSTATES = TABSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CSTB_SELECTED: TABSTATES = TABSTATES(3i32); +impl ::core::marker::Copy for TABSTATES {} +impl ::core::clone::Clone for TABSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TABSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TABSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TABSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TABSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct TASKBANDPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TDP_GROUPCOUNT: TASKBANDPARTS = TASKBANDPARTS(1i32); @@ -17759,6 +22704,71 @@ impl ::core::default::Default for TASKDIALOGCONFIG_1 { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TASKDIALOGPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_PRIMARYPANEL: TASKDIALOGPARTS = TASKDIALOGPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_MAININSTRUCTIONPANE: TASKDIALOGPARTS = TASKDIALOGPARTS(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_MAINICON: TASKDIALOGPARTS = TASKDIALOGPARTS(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_CONTENTPANE: TASKDIALOGPARTS = TASKDIALOGPARTS(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_CONTENTICON: TASKDIALOGPARTS = TASKDIALOGPARTS(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_EXPANDEDCONTENT: TASKDIALOGPARTS = TASKDIALOGPARTS(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_COMMANDLINKPANE: TASKDIALOGPARTS = TASKDIALOGPARTS(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_SECONDARYPANEL: TASKDIALOGPARTS = TASKDIALOGPARTS(8i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_CONTROLPANE: TASKDIALOGPARTS = TASKDIALOGPARTS(9i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_BUTTONSECTION: TASKDIALOGPARTS = TASKDIALOGPARTS(10i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_BUTTONWRAPPER: TASKDIALOGPARTS = TASKDIALOGPARTS(11i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_EXPANDOTEXT: TASKDIALOGPARTS = TASKDIALOGPARTS(12i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_EXPANDOBUTTON: TASKDIALOGPARTS = TASKDIALOGPARTS(13i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_VERIFICATIONTEXT: TASKDIALOGPARTS = TASKDIALOGPARTS(14i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_FOOTNOTEPANE: TASKDIALOGPARTS = TASKDIALOGPARTS(15i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_FOOTNOTEAREA: TASKDIALOGPARTS = TASKDIALOGPARTS(16i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_FOOTNOTESEPARATOR: TASKDIALOGPARTS = TASKDIALOGPARTS(17i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_EXPANDEDFOOTERAREA: TASKDIALOGPARTS = TASKDIALOGPARTS(18i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_PROGRESSBAR: TASKDIALOGPARTS = TASKDIALOGPARTS(19i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_IMAGEALIGNMENT: TASKDIALOGPARTS = TASKDIALOGPARTS(20i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TDLG_RADIOBUTTONPANE: TASKDIALOGPARTS = TASKDIALOGPARTS(21i32); +impl ::core::marker::Copy for TASKDIALOGPARTS {} +impl ::core::clone::Clone for TASKDIALOGPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TASKDIALOGPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TASKDIALOGPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for TASKDIALOGPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TASKDIALOGPARTS").field(&self.0).finish() + } +} #[repr(C, packed(1))] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub struct TASKDIALOG_BUTTON { @@ -18035,6 +23045,39 @@ impl ::core::fmt::Debug for TASKDIALOG_NOTIFICATIONS { f.debug_tuple("TASKDIALOG_NOTIFICATIONS").field(&self.0).finish() } } +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TASKLINKSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPTL_NORMAL: TASKLINKSTATES = TASKLINKSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPTL_HOT: TASKLINKSTATES = TASKLINKSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPTL_PRESSED: TASKLINKSTATES = TASKLINKSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPTL_DISABLED: TASKLINKSTATES = TASKLINKSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CPTL_PAGE: TASKLINKSTATES = TASKLINKSTATES(5i32); +impl ::core::marker::Copy for TASKLINKSTATES {} +impl ::core::clone::Clone for TASKLINKSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TASKLINKSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TASKLINKSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TASKLINKSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TASKLINKSTATES").field(&self.0).finish() + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub struct TA_CUBIC_BEZIER { @@ -19787,6 +24830,31 @@ pub const TD_WARNING_ICON: ::windows::core::PCWSTR = ::windows::core::PCWSTR(-1i #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TEXTSELECTIONGRIPPERPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TSGP_GRIPPER: TEXTSELECTIONGRIPPERPARTS = TEXTSELECTIONGRIPPERPARTS(1i32); +impl ::core::marker::Copy for TEXTSELECTIONGRIPPERPARTS {} +impl ::core::clone::Clone for TEXTSELECTIONGRIPPERPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TEXTSELECTIONGRIPPERPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TEXTSELECTIONGRIPPERPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for TEXTSELECTIONGRIPPERPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TEXTSELECTIONGRIPPERPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct TEXTSHADOWTYPE(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TST_NONE: TEXTSHADOWTYPE = TEXTSHADOWTYPE(0i32); @@ -19816,6 +24884,47 @@ impl ::core::fmt::Debug for TEXTSHADOWTYPE { #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TEXTSTYLEPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_MAININSTRUCTION: TEXTSTYLEPARTS = TEXTSTYLEPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_INSTRUCTION: TEXTSTYLEPARTS = TEXTSTYLEPARTS(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_BODYTITLE: TEXTSTYLEPARTS = TEXTSTYLEPARTS(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_BODYTEXT: TEXTSTYLEPARTS = TEXTSTYLEPARTS(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_SECONDARYTEXT: TEXTSTYLEPARTS = TEXTSTYLEPARTS(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_HYPERLINKTEXT: TEXTSTYLEPARTS = TEXTSTYLEPARTS(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_EXPANDED: TEXTSTYLEPARTS = TEXTSTYLEPARTS(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_LABEL: TEXTSTYLEPARTS = TEXTSTYLEPARTS(8i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TEXT_CONTROLLABEL: TEXTSTYLEPARTS = TEXTSTYLEPARTS(9i32); +impl ::core::marker::Copy for TEXTSTYLEPARTS {} +impl ::core::clone::Clone for TEXTSTYLEPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TEXTSTYLEPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TEXTSTYLEPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for TEXTSTYLEPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TEXTSTYLEPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct THEMESIZE(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TS_MIN: THEMESIZE = THEMESIZE(0i32); @@ -20197,200 +25306,724 @@ pub const TMT_OPACITY: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(2430u #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TMT_COLORIZATIONCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(2431u32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_COLORIZATIONOPACITY: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(2432u32); +pub const TMT_COLORIZATIONOPACITY: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(2432u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINDPI6: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(2433u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINDPI7: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(2434u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GLYPHFONT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(2601u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGEFILE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3001u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGEFILE1: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3002u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGEFILE2: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3003u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGEFILE3: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3004u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGEFILE4: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3005u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGEFILE5: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3006u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GLYPHIMAGEFILE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3008u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGEFILE6: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3009u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGEFILE7: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3010u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TEXT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3201u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_CLASSICVALUE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3202u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_OFFSET: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3401u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TEXTSHADOWOFFSET: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3402u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3403u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE1: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3404u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE2: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3405u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE3: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3406u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE4: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3407u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE5: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3408u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_NORMALSIZE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3409u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE6: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3410u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_MINSIZE7: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3411u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_SIZINGMARGINS: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3601u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_CONTENTMARGINS: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3602u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_CAPTIONMARGINS: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3603u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_BORDERCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3801u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_FILLCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3802u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3803u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_EDGELIGHTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3804u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_EDGEHIGHLIGHTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3805u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_EDGESHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3806u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_EDGEDKSHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3807u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_EDGEFILLCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3808u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TRANSPARENTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3809u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GRADIENTCOLOR1: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3810u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GRADIENTCOLOR2: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3811u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GRADIENTCOLOR3: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3812u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GRADIENTCOLOR4: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3813u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GRADIENTCOLOR5: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3814u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_SHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3815u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GLOWCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3816u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TEXTBORDERCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3817u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TEXTSHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3818u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GLYPHTEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3819u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GLYPHTRANSPARENTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3820u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_FILLCOLORHINT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3821u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_BORDERCOLORHINT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3822u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_ACCENTCOLORHINT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3823u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TEXTCOLORHINT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3824u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_HEADING1TEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3825u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_HEADING2TEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3826u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_BODYTEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3827u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_BGTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4001u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_BORDERTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4002u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_FILLTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4003u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_SIZINGTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4004u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_HALIGN: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4005u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_CONTENTALIGNMENT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4006u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_VALIGN: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4007u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_OFFSETTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4008u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_ICONEFFECT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4009u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TEXTSHADOWTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4010u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGELAYOUT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4011u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GLYPHTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4012u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_IMAGESELECTTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4013u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_GLYPHFONTSIZINGTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4014u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TRUESIZESCALINGTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4015u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_USERPICTURE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(5001u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_DEFAULTPANESIZE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(5002u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_BLENDCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(5003u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_CUSTOMSPLITRECT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(5004u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_ANIMATIONBUTTONRECT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(5005u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_ANIMATIONDURATION: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(5006u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_TRANSITIONDURATIONS: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(6000u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_SCALEDBACKGROUND: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(7001u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_ATLASIMAGE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(8000u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_ATLASINPUTIMAGE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(8001u32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TMT_ATLASRECT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(8002u32); +impl ::core::marker::Copy for THEME_PROPERTY_SYMBOL_ID {} +impl ::core::clone::Clone for THEME_PROPERTY_SYMBOL_ID { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for THEME_PROPERTY_SYMBOL_ID { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for THEME_PROPERTY_SYMBOL_ID { + type Abi = Self; +} +impl ::core::fmt::Debug for THEME_PROPERTY_SYMBOL_ID { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("THEME_PROPERTY_SYMBOL_ID").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct THUMBBOTTOMSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUBS_NORMAL: THUMBBOTTOMSTATES = THUMBBOTTOMSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUBS_HOT: THUMBBOTTOMSTATES = THUMBBOTTOMSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUBS_PRESSED: THUMBBOTTOMSTATES = THUMBBOTTOMSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUBS_FOCUSED: THUMBBOTTOMSTATES = THUMBBOTTOMSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUBS_DISABLED: THUMBBOTTOMSTATES = THUMBBOTTOMSTATES(5i32); +impl ::core::marker::Copy for THUMBBOTTOMSTATES {} +impl ::core::clone::Clone for THUMBBOTTOMSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for THUMBBOTTOMSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for THUMBBOTTOMSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for THUMBBOTTOMSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("THUMBBOTTOMSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct THUMBLEFTSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVLS_NORMAL: THUMBLEFTSTATES = THUMBLEFTSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVLS_HOT: THUMBLEFTSTATES = THUMBLEFTSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVLS_PRESSED: THUMBLEFTSTATES = THUMBLEFTSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVLS_FOCUSED: THUMBLEFTSTATES = THUMBLEFTSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TUVLS_DISABLED: THUMBLEFTSTATES = THUMBLEFTSTATES(5i32); +impl ::core::marker::Copy for THUMBLEFTSTATES {} +impl ::core::clone::Clone for THUMBLEFTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for THUMBLEFTSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for THUMBLEFTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for THUMBLEFTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("THUMBLEFTSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct THUMBRIGHTSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINDPI6: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(2433u32); +pub const TUVRS_NORMAL: THUMBRIGHTSTATES = THUMBRIGHTSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINDPI7: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(2434u32); +pub const TUVRS_HOT: THUMBRIGHTSTATES = THUMBRIGHTSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GLYPHFONT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(2601u32); +pub const TUVRS_PRESSED: THUMBRIGHTSTATES = THUMBRIGHTSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGEFILE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3001u32); +pub const TUVRS_FOCUSED: THUMBRIGHTSTATES = THUMBRIGHTSTATES(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGEFILE1: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3002u32); +pub const TUVRS_DISABLED: THUMBRIGHTSTATES = THUMBRIGHTSTATES(5i32); +impl ::core::marker::Copy for THUMBRIGHTSTATES {} +impl ::core::clone::Clone for THUMBRIGHTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for THUMBRIGHTSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for THUMBRIGHTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for THUMBRIGHTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("THUMBRIGHTSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGEFILE2: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3003u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct THUMBSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGEFILE3: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3004u32); +pub const TUS_NORMAL: THUMBSTATES = THUMBSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGEFILE4: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3005u32); +pub const TUS_HOT: THUMBSTATES = THUMBSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGEFILE5: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3006u32); +pub const TUS_PRESSED: THUMBSTATES = THUMBSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GLYPHIMAGEFILE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3008u32); +pub const TUS_FOCUSED: THUMBSTATES = THUMBSTATES(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGEFILE6: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3009u32); +pub const TUS_DISABLED: THUMBSTATES = THUMBSTATES(5i32); +impl ::core::marker::Copy for THUMBSTATES {} +impl ::core::clone::Clone for THUMBSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for THUMBSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for THUMBSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for THUMBSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("THUMBSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGEFILE7: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3010u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct THUMBTOPSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TEXT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3201u32); +pub const TUTS_NORMAL: THUMBTOPSTATES = THUMBTOPSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_CLASSICVALUE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3202u32); +pub const TUTS_HOT: THUMBTOPSTATES = THUMBTOPSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_OFFSET: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3401u32); +pub const TUTS_PRESSED: THUMBTOPSTATES = THUMBTOPSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TEXTSHADOWOFFSET: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3402u32); +pub const TUTS_FOCUSED: THUMBTOPSTATES = THUMBTOPSTATES(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3403u32); +pub const TUTS_DISABLED: THUMBTOPSTATES = THUMBTOPSTATES(5i32); +impl ::core::marker::Copy for THUMBTOPSTATES {} +impl ::core::clone::Clone for THUMBTOPSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for THUMBTOPSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for THUMBTOPSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for THUMBTOPSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("THUMBTOPSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE1: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3404u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct THUMBVERTSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE2: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3405u32); +pub const TUVS_NORMAL: THUMBVERTSTATES = THUMBVERTSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE3: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3406u32); +pub const TUVS_HOT: THUMBVERTSTATES = THUMBVERTSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE4: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3407u32); +pub const TUVS_PRESSED: THUMBVERTSTATES = THUMBVERTSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE5: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3408u32); +pub const TUVS_FOCUSED: THUMBVERTSTATES = THUMBVERTSTATES(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_NORMALSIZE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3409u32); +pub const TUVS_DISABLED: THUMBVERTSTATES = THUMBVERTSTATES(5i32); +impl ::core::marker::Copy for THUMBVERTSTATES {} +impl ::core::clone::Clone for THUMBVERTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for THUMBVERTSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for THUMBVERTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for THUMBVERTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("THUMBVERTSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE6: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3410u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TICSSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_MINSIZE7: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3411u32); +pub const TSS_NORMAL: TICSSTATES = TICSSTATES(1i32); +impl ::core::marker::Copy for TICSSTATES {} +impl ::core::clone::Clone for TICSSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TICSSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TICSSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TICSSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TICSSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_SIZINGMARGINS: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3601u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TICSVERTSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_CONTENTMARGINS: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3602u32); +pub const TSVS_NORMAL: TICSVERTSTATES = TICSVERTSTATES(1i32); +impl ::core::marker::Copy for TICSVERTSTATES {} +impl ::core::clone::Clone for TICSVERTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TICSVERTSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TICSVERTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TICSVERTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TICSVERTSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_CAPTIONMARGINS: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3603u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TITLEBARSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_BORDERCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3801u32); +pub const AW_S_TITLEBAR_ACTIVE: TITLEBARSTATES = TITLEBARSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_FILLCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3802u32); +pub const AW_S_TITLEBAR_INACTIVE: TITLEBARSTATES = TITLEBARSTATES(2i32); +impl ::core::marker::Copy for TITLEBARSTATES {} +impl ::core::clone::Clone for TITLEBARSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TITLEBARSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TITLEBARSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TITLEBARSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TITLEBARSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3803u32); +pub const TMTVS_RESERVEDHIGH: u32 = 19999u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_EDGELIGHTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3804u32); +pub const TMTVS_RESERVEDLOW: u32 = 100000u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_EDGEHIGHLIGHTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3805u32); +pub const TOOLBARCLASSNAME: &str = "ToolbarWindow32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_EDGESHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3806u32); +pub const TOOLBARCLASSNAMEA: &str = "ToolbarWindow32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_EDGEDKSHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3807u32); +pub const TOOLBARCLASSNAMEW: &str = "ToolbarWindow32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_EDGEFILLCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3808u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TOOLBARPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TRANSPARENTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3809u32); +pub const TP_BUTTON: TOOLBARPARTS = TOOLBARPARTS(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GRADIENTCOLOR1: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3810u32); +pub const TP_DROPDOWNBUTTON: TOOLBARPARTS = TOOLBARPARTS(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GRADIENTCOLOR2: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3811u32); +pub const TP_SPLITBUTTON: TOOLBARPARTS = TOOLBARPARTS(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GRADIENTCOLOR3: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3812u32); +pub const TP_SPLITBUTTONDROPDOWN: TOOLBARPARTS = TOOLBARPARTS(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GRADIENTCOLOR4: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3813u32); +pub const TP_SEPARATOR: TOOLBARPARTS = TOOLBARPARTS(5i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GRADIENTCOLOR5: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3814u32); +pub const TP_SEPARATORVERT: TOOLBARPARTS = TOOLBARPARTS(6i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_SHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3815u32); +pub const TP_DROPDOWNBUTTONGLYPH: TOOLBARPARTS = TOOLBARPARTS(7i32); +impl ::core::marker::Copy for TOOLBARPARTS {} +impl ::core::clone::Clone for TOOLBARPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TOOLBARPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TOOLBARPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for TOOLBARPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TOOLBARPARTS").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GLOWCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3816u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TOOLBARSTYLESTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TEXTBORDERCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3817u32); +pub const TS_NORMAL: TOOLBARSTYLESTATES = TOOLBARSTYLESTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TEXTSHADOWCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3818u32); +pub const TS_HOT: TOOLBARSTYLESTATES = TOOLBARSTYLESTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GLYPHTEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3819u32); +pub const TS_PRESSED: TOOLBARSTYLESTATES = TOOLBARSTYLESTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GLYPHTRANSPARENTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3820u32); +pub const TS_DISABLED: TOOLBARSTYLESTATES = TOOLBARSTYLESTATES(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_FILLCOLORHINT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3821u32); +pub const TS_CHECKED: TOOLBARSTYLESTATES = TOOLBARSTYLESTATES(5i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_BORDERCOLORHINT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3822u32); +pub const TS_HOTCHECKED: TOOLBARSTYLESTATES = TOOLBARSTYLESTATES(6i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_ACCENTCOLORHINT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3823u32); +pub const TS_NEARHOT: TOOLBARSTYLESTATES = TOOLBARSTYLESTATES(7i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TEXTCOLORHINT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3824u32); +pub const TS_OTHERSIDEHOT: TOOLBARSTYLESTATES = TOOLBARSTYLESTATES(8i32); +impl ::core::marker::Copy for TOOLBARSTYLESTATES {} +impl ::core::clone::Clone for TOOLBARSTYLESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TOOLBARSTYLESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TOOLBARSTYLESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TOOLBARSTYLESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TOOLBARSTYLESTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_HEADING1TEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3825u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TOOLTIPPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_HEADING2TEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3826u32); +pub const TTP_STANDARD: TOOLTIPPARTS = TOOLTIPPARTS(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_BODYTEXTCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(3827u32); +pub const TTP_STANDARDTITLE: TOOLTIPPARTS = TOOLTIPPARTS(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_BGTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4001u32); +pub const TTP_BALLOON: TOOLTIPPARTS = TOOLTIPPARTS(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_BORDERTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4002u32); +pub const TTP_BALLOONTITLE: TOOLTIPPARTS = TOOLTIPPARTS(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_FILLTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4003u32); +pub const TTP_CLOSE: TOOLTIPPARTS = TOOLTIPPARTS(5i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_SIZINGTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4004u32); +pub const TTP_BALLOONSTEM: TOOLTIPPARTS = TOOLTIPPARTS(6i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_HALIGN: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4005u32); +pub const TTP_WRENCH: TOOLTIPPARTS = TOOLTIPPARTS(7i32); +impl ::core::marker::Copy for TOOLTIPPARTS {} +impl ::core::clone::Clone for TOOLTIPPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TOOLTIPPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TOOLTIPPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for TOOLTIPPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TOOLTIPPARTS").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_CONTENTALIGNMENT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4006u32); +pub const TOOLTIPS_CLASS: &str = "tooltips_class32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_VALIGN: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4007u32); +pub const TOOLTIPS_CLASSA: &str = "tooltips_class32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_OFFSETTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4008u32); +pub const TOOLTIPS_CLASSW: &str = "tooltips_class32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_ICONEFFECT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4009u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TOPTABITEMBOTHEDGESTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TEXTSHADOWTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4010u32); +pub const TTIBES_NORMAL: TOPTABITEMBOTHEDGESTATES = TOPTABITEMBOTHEDGESTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGELAYOUT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4011u32); +pub const TTIBES_HOT: TOPTABITEMBOTHEDGESTATES = TOPTABITEMBOTHEDGESTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GLYPHTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4012u32); +pub const TTIBES_SELECTED: TOPTABITEMBOTHEDGESTATES = TOPTABITEMBOTHEDGESTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_IMAGESELECTTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4013u32); +pub const TTIBES_DISABLED: TOPTABITEMBOTHEDGESTATES = TOPTABITEMBOTHEDGESTATES(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_GLYPHFONTSIZINGTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4014u32); +pub const TTIBES_FOCUSED: TOPTABITEMBOTHEDGESTATES = TOPTABITEMBOTHEDGESTATES(5i32); +impl ::core::marker::Copy for TOPTABITEMBOTHEDGESTATES {} +impl ::core::clone::Clone for TOPTABITEMBOTHEDGESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TOPTABITEMBOTHEDGESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TOPTABITEMBOTHEDGESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TOPTABITEMBOTHEDGESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TOPTABITEMBOTHEDGESTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TRUESIZESCALINGTYPE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(4015u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TOPTABITEMLEFTEDGESTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_USERPICTURE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(5001u32); +pub const TTILES_NORMAL: TOPTABITEMLEFTEDGESTATES = TOPTABITEMLEFTEDGESTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_DEFAULTPANESIZE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(5002u32); +pub const TTILES_HOT: TOPTABITEMLEFTEDGESTATES = TOPTABITEMLEFTEDGESTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_BLENDCOLOR: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(5003u32); +pub const TTILES_SELECTED: TOPTABITEMLEFTEDGESTATES = TOPTABITEMLEFTEDGESTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_CUSTOMSPLITRECT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(5004u32); +pub const TTILES_DISABLED: TOPTABITEMLEFTEDGESTATES = TOPTABITEMLEFTEDGESTATES(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_ANIMATIONBUTTONRECT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(5005u32); +pub const TTILES_FOCUSED: TOPTABITEMLEFTEDGESTATES = TOPTABITEMLEFTEDGESTATES(5i32); +impl ::core::marker::Copy for TOPTABITEMLEFTEDGESTATES {} +impl ::core::clone::Clone for TOPTABITEMLEFTEDGESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TOPTABITEMLEFTEDGESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TOPTABITEMLEFTEDGESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TOPTABITEMLEFTEDGESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TOPTABITEMLEFTEDGESTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_ANIMATIONDURATION: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(5006u32); +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TOPTABITEMRIGHTEDGESTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_TRANSITIONDURATIONS: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(6000u32); +pub const TTIRES_NORMAL: TOPTABITEMRIGHTEDGESTATES = TOPTABITEMRIGHTEDGESTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_SCALEDBACKGROUND: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(7001u32); +pub const TTIRES_HOT: TOPTABITEMRIGHTEDGESTATES = TOPTABITEMRIGHTEDGESTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_ATLASIMAGE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(8000u32); +pub const TTIRES_SELECTED: TOPTABITEMRIGHTEDGESTATES = TOPTABITEMRIGHTEDGESTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_ATLASINPUTIMAGE: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(8001u32); +pub const TTIRES_DISABLED: TOPTABITEMRIGHTEDGESTATES = TOPTABITEMRIGHTEDGESTATES(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TMT_ATLASRECT: THEME_PROPERTY_SYMBOL_ID = THEME_PROPERTY_SYMBOL_ID(8002u32); -impl ::core::marker::Copy for THEME_PROPERTY_SYMBOL_ID {} -impl ::core::clone::Clone for THEME_PROPERTY_SYMBOL_ID { +pub const TTIRES_FOCUSED: TOPTABITEMRIGHTEDGESTATES = TOPTABITEMRIGHTEDGESTATES(5i32); +impl ::core::marker::Copy for TOPTABITEMRIGHTEDGESTATES {} +impl ::core::clone::Clone for TOPTABITEMRIGHTEDGESTATES { fn clone(&self) -> Self { *self } } -impl ::core::default::Default for THEME_PROPERTY_SYMBOL_ID { +impl ::core::default::Default for TOPTABITEMRIGHTEDGESTATES { fn default() -> Self { Self(0) } } -unsafe impl ::windows::core::Abi for THEME_PROPERTY_SYMBOL_ID { +unsafe impl ::windows::core::Abi for TOPTABITEMRIGHTEDGESTATES { type Abi = Self; } -impl ::core::fmt::Debug for THEME_PROPERTY_SYMBOL_ID { +impl ::core::fmt::Debug for TOPTABITEMRIGHTEDGESTATES { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("THEME_PROPERTY_SYMBOL_ID").field(&self.0).finish() + f.debug_tuple("TOPTABITEMRIGHTEDGESTATES").field(&self.0).finish() } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TOOLBARCLASSNAME: &str = "ToolbarWindow32"; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TOPTABITEMSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TOOLBARCLASSNAMEA: &str = "ToolbarWindow32"; +pub const TTIS_NORMAL: TOPTABITEMSTATES = TOPTABITEMSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TOOLBARCLASSNAMEW: &str = "ToolbarWindow32"; +pub const TTIS_HOT: TOPTABITEMSTATES = TOPTABITEMSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TOOLTIPS_CLASS: &str = "tooltips_class32"; +pub const TTIS_SELECTED: TOPTABITEMSTATES = TOPTABITEMSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TOOLTIPS_CLASSA: &str = "tooltips_class32"; +pub const TTIS_DISABLED: TOPTABITEMSTATES = TOPTABITEMSTATES(4i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const TOOLTIPS_CLASSW: &str = "tooltips_class32"; +pub const TTIS_FOCUSED: TOPTABITEMSTATES = TOPTABITEMSTATES(5i32); +impl ::core::marker::Copy for TOPTABITEMSTATES {} +impl ::core::clone::Clone for TOPTABITEMSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TOPTABITEMSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TOPTABITEMSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TOPTABITEMSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TOPTABITEMSTATES").field(&self.0).finish() + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -20473,6 +26106,74 @@ impl ::core::default::Default for TOUCH_HIT_TESTING_PROXIMITY_EVALUATION { } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TRACKBARPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_TRACK: TRACKBARPARTS = TRACKBARPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_TRACKVERT: TRACKBARPARTS = TRACKBARPARTS(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_THUMB: TRACKBARPARTS = TRACKBARPARTS(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_THUMBBOTTOM: TRACKBARPARTS = TRACKBARPARTS(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_THUMBTOP: TRACKBARPARTS = TRACKBARPARTS(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_THUMBVERT: TRACKBARPARTS = TRACKBARPARTS(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_THUMBLEFT: TRACKBARPARTS = TRACKBARPARTS(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_THUMBRIGHT: TRACKBARPARTS = TRACKBARPARTS(8i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_TICS: TRACKBARPARTS = TRACKBARPARTS(9i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKP_TICSVERT: TRACKBARPARTS = TRACKBARPARTS(10i32); +impl ::core::marker::Copy for TRACKBARPARTS {} +impl ::core::clone::Clone for TRACKBARPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TRACKBARPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TRACKBARPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for TRACKBARPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TRACKBARPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TRACKBARSTYLESTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TKS_NORMAL: TRACKBARSTYLESTATES = TRACKBARSTYLESTATES(1i32); +impl ::core::marker::Copy for TRACKBARSTYLESTATES {} +impl ::core::clone::Clone for TRACKBARSTYLESTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TRACKBARSTYLESTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TRACKBARSTYLESTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TRACKBARSTYLESTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TRACKBARSTYLESTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TRACKBAR_CLASS: &str = "msctls_trackbar32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TRACKBAR_CLASSA: &str = "msctls_trackbar32"; @@ -20481,6 +26182,56 @@ pub const TRACKBAR_CLASSW: &str = "msctls_trackbar32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TRACKSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TRS_NORMAL: TRACKSTATES = TRACKSTATES(1i32); +impl ::core::marker::Copy for TRACKSTATES {} +impl ::core::clone::Clone for TRACKSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TRACKSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TRACKSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TRACKSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TRACKSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TRACKVERTSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TRVS_NORMAL: TRACKVERTSTATES = TRACKVERTSTATES(1i32); +impl ::core::marker::Copy for TRACKVERTSTATES {} +impl ::core::clone::Clone for TRACKVERTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TRACKVERTSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TRACKVERTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TRACKVERTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TRACKVERTSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct TRAILINGGRIDCELLSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const MCTGC_HOT: TRAILINGGRIDCELLSTATES = TRAILINGGRIDCELLSTATES(1i32); @@ -20551,6 +26302,91 @@ impl ::core::fmt::Debug for TRAILINGGRIDCELLUPPERSTATES { #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TRANSPARENTBACKGROUNDSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBTBS_NORMAL: TRANSPARENTBACKGROUNDSTATES = TRANSPARENTBACKGROUNDSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBTBS_HOT: TRANSPARENTBACKGROUNDSTATES = TRANSPARENTBACKGROUNDSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBTBS_DISABLED: TRANSPARENTBACKGROUNDSTATES = TRANSPARENTBACKGROUNDSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const CBTBS_FOCUSED: TRANSPARENTBACKGROUNDSTATES = TRANSPARENTBACKGROUNDSTATES(4i32); +impl ::core::marker::Copy for TRANSPARENTBACKGROUNDSTATES {} +impl ::core::clone::Clone for TRANSPARENTBACKGROUNDSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TRANSPARENTBACKGROUNDSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TRANSPARENTBACKGROUNDSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TRANSPARENTBACKGROUNDSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TRANSPARENTBACKGROUNDSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TRANSPARENTBARSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBBS_NORMAL: TRANSPARENTBARSTATES = TRANSPARENTBARSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBBS_PARTIAL: TRANSPARENTBARSTATES = TRANSPARENTBARSTATES(2i32); +impl ::core::marker::Copy for TRANSPARENTBARSTATES {} +impl ::core::clone::Clone for TRANSPARENTBARSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TRANSPARENTBARSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TRANSPARENTBARSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TRANSPARENTBARSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TRANSPARENTBARSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TRANSPARENTBARVERTSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBBVS_NORMAL: TRANSPARENTBARVERTSTATES = TRANSPARENTBARVERTSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const PBBVS_PARTIAL: TRANSPARENTBARVERTSTATES = TRANSPARENTBARVERTSTATES(2i32); +impl ::core::marker::Copy for TRANSPARENTBARVERTSTATES {} +impl ::core::clone::Clone for TRANSPARENTBARVERTSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TRANSPARENTBARVERTSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TRANSPARENTBARVERTSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TRANSPARENTBARVERTSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TRANSPARENTBARVERTSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct TRAYNOTIFYPARTS(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TNP_BACKGROUND: TRAYNOTIFYPARTS = TRAYNOTIFYPARTS(1i32); @@ -20578,6 +26414,72 @@ impl ::core::fmt::Debug for TRAYNOTIFYPARTS { #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TREEITEMSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TREIS_NORMAL: TREEITEMSTATES = TREEITEMSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TREIS_HOT: TREEITEMSTATES = TREEITEMSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TREIS_SELECTED: TREEITEMSTATES = TREEITEMSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TREIS_DISABLED: TREEITEMSTATES = TREEITEMSTATES(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TREIS_SELECTEDNOTFOCUS: TREEITEMSTATES = TREEITEMSTATES(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TREIS_HOTSELECTED: TREEITEMSTATES = TREEITEMSTATES(6i32); +impl ::core::marker::Copy for TREEITEMSTATES {} +impl ::core::clone::Clone for TREEITEMSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TREEITEMSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TREEITEMSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for TREEITEMSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TREEITEMSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct TREEVIEWPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TVP_TREEITEM: TREEVIEWPARTS = TREEVIEWPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TVP_GLYPH: TREEVIEWPARTS = TREEVIEWPARTS(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TVP_BRANCH: TREEVIEWPARTS = TREEVIEWPARTS(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TVP_HOTGLYPH: TREEVIEWPARTS = TREEVIEWPARTS(4i32); +impl ::core::marker::Copy for TREEVIEWPARTS {} +impl ::core::clone::Clone for TREEVIEWPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for TREEVIEWPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for TREEVIEWPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for TREEVIEWPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("TREEVIEWPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct TRUESIZESCALINGTYPE(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const TSST_NONE: TRUESIZESCALINGTYPE = TRUESIZESCALINGTYPE(0i32); @@ -22063,31 +27965,120 @@ pub const UDM_SETRANGE32: u32 = 1135u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const UDM_SETUNICODEFORMAT: u32 = 8197u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const UDS_ALIGNLEFT: u32 = 8u32; +pub const UDS_ALIGNLEFT: u32 = 8u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UDS_ALIGNRIGHT: u32 = 4u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UDS_ARROWKEYS: u32 = 32u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UDS_AUTOBUDDY: u32 = 16u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UDS_HORZ: u32 = 64u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UDS_HOTTRACK: u32 = 256u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UDS_NOTHOUSANDS: u32 = 128u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UDS_SETBUDDYINT: u32 = 2u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UDS_WRAP: u32 = 1u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UD_MAXVAL: u32 = 32767u32; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct UPDATEMETADATASTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDUPDATEMETADATA_HIGHLIGHT: UPDATEMETADATASTATES = UPDATEMETADATASTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDUPDATEMETADATA_NOHIGHLIGHT: UPDATEMETADATASTATES = UPDATEMETADATASTATES(2i32); +impl ::core::marker::Copy for UPDATEMETADATASTATES {} +impl ::core::clone::Clone for UPDATEMETADATASTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for UPDATEMETADATASTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for UPDATEMETADATASTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for UPDATEMETADATASTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("UPDATEMETADATASTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UPDOWN_CLASS: &str = "msctls_updown32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const UDS_ALIGNRIGHT: u32 = 4u32; +pub const UPDOWN_CLASSA: &str = "msctls_updown32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const UDS_ARROWKEYS: u32 = 32u32; +pub const UPDOWN_CLASSW: &str = "msctls_updown32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const UDS_AUTOBUDDY: u32 = 16u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct UPHORZSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const UDS_HORZ: u32 = 64u32; +pub const UPHZS_NORMAL: UPHORZSTATES = UPHORZSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const UDS_HOTTRACK: u32 = 256u32; +pub const UPHZS_HOT: UPHORZSTATES = UPHORZSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const UDS_NOTHOUSANDS: u32 = 128u32; +pub const UPHZS_PRESSED: UPHORZSTATES = UPHORZSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const UDS_SETBUDDYINT: u32 = 2u32; +pub const UPHZS_DISABLED: UPHORZSTATES = UPHORZSTATES(4i32); +impl ::core::marker::Copy for UPHORZSTATES {} +impl ::core::clone::Clone for UPHORZSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for UPHORZSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for UPHORZSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for UPHORZSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("UPHORZSTATES").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const UDS_WRAP: u32 = 1u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct UPSTATES(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const UD_MAXVAL: u32 = 32767u32; +pub const UPS_NORMAL: UPSTATES = UPSTATES(1i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const UPDOWN_CLASS: &str = "msctls_updown32"; +pub const UPS_HOT: UPSTATES = UPSTATES(2i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const UPDOWN_CLASSA: &str = "msctls_updown32"; +pub const UPS_PRESSED: UPSTATES = UPSTATES(3i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] -pub const UPDOWN_CLASSW: &str = "msctls_updown32"; +pub const UPS_DISABLED: UPSTATES = UPSTATES(4i32); +impl ::core::marker::Copy for UPSTATES {} +impl ::core::clone::Clone for UPSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for UPSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for UPSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for UPSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("UPSTATES").field(&self.0).finish() + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub struct USAGE_PROPERTIES { @@ -22127,6 +28118,33 @@ impl ::core::default::Default for USAGE_PROPERTIES { unsafe { ::core::mem::zeroed() } } } +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct USERTILEPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UTP_STROKEBACKGROUND: USERTILEPARTS = USERTILEPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const UTP_HOVERBACKGROUND: USERTILEPARTS = USERTILEPARTS(2i32); +impl ::core::marker::Copy for USERTILEPARTS {} +impl ::core::clone::Clone for USERTILEPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for USERTILEPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for USERTILEPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for USERTILEPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("USERTILEPARTS").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Controls\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] @@ -22184,6 +28202,68 @@ impl ::core::fmt::Debug for VALIGN { } } #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct VERTSCROLLSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSS_NORMAL: VERTSCROLLSTATES = VERTSCROLLSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSS_HOT: VERTSCROLLSTATES = VERTSCROLLSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSS_PUSHED: VERTSCROLLSTATES = VERTSCROLLSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSS_DISABLED: VERTSCROLLSTATES = VERTSCROLLSTATES(4i32); +impl ::core::marker::Copy for VERTSCROLLSTATES {} +impl ::core::clone::Clone for VERTSCROLLSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for VERTSCROLLSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for VERTSCROLLSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for VERTSCROLLSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("VERTSCROLLSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct VERTTHUMBSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VTS_NORMAL: VERTTHUMBSTATES = VERTTHUMBSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VTS_HOT: VERTTHUMBSTATES = VERTTHUMBSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VTS_PUSHED: VERTTHUMBSTATES = VERTTHUMBSTATES(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VTS_DISABLED: VERTTHUMBSTATES = VERTTHUMBSTATES(4i32); +impl ::core::marker::Copy for VERTTHUMBSTATES {} +impl ::core::clone::Clone for VERTTHUMBSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for VERTTHUMBSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for VERTTHUMBSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for VERTTHUMBSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("VERTTHUMBSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VIEW_DETAILS: u32 = 3u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VIEW_LARGEICONS: u32 = 0u32; @@ -22210,28 +28290,167 @@ pub const VIEW_SORTTYPE: u32 = 7u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VIEW_VIEWMENU: u32 = 12u32; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_AEROWIZARD: &str = "AEROWIZARD"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_AEROWIZARDSTYLE: &str = "AEROWIZARDSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_BUTTON: &str = "BUTTON"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_BUTTONSTYLE: &str = "BUTTONSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_CLOCK: &str = "CLOCK"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_COMBOBOX: &str = "COMBOBOX"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_COMBOBOXSTYLE: &str = "COMBOBOXSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_COMMUNICATIONS: &str = "COMMUNICATIONS"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_COMMUNICATIONSSTYLE: &str = "COMMUNICATIONSSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_CONTROLPANEL: &str = "CONTROLPANEL"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_CONTROLPANELSTYLE: &str = "CONTROLPANELSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_DATEPICKER: &str = "DATEPICKER"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_DATEPICKERSTYLE: &str = "DATEPICKERSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_DRAGDROP: &str = "DRAGDROP"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_DRAGDROPSTYLE: &str = "DRAGDROPSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_EDIT: &str = "EDIT"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_EDITSTYLE: &str = "EDITSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_EMPTYMARKUP: &str = "EMPTYMARKUP"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_EXPLORERBAR: &str = "EXPLORERBAR"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_EXPLORERBARSTYLE: &str = "EXPLORERBARSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_FLYOUT: &str = "FLYOUT"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_FLYOUTSTYLE: &str = "FLYOUTSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_HEADER: &str = "HEADER"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_HEADERSTYLE: &str = "HEADERSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_LINK: &str = "LINK"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_LISTBOX: &str = "LISTBOX"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_LISTBOXSTYLE: &str = "LISTBOXSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_LISTVIEW: &str = "LISTVIEW"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_LISTVIEWSTYLE: &str = "LISTVIEWSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_MENU: &str = "MENU"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_MENUBAND: &str = "MENUBAND"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_MENUSTYLE: &str = "MENUSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_MONTHCAL: &str = "MONTHCAL"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_NAVIGATION: &str = "NAVIGATION"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_PAGE: &str = "PAGE"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_PROGRESS: &str = "PROGRESS"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_PROGRESSSTYLE: &str = "PROGRESSSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_REBAR: &str = "REBAR"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_REBARSTYLE: &str = "REBARSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_SCROLLBAR: &str = "SCROLLBAR"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_SCROLLBARSTYLE: &str = "SCROLLBARSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_SPIN: &str = "SPIN"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_SPINSTYLE: &str = "SPINSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_STARTPANEL: &str = "STARTPANEL"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_STATIC: &str = "STATIC"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_STATUS: &str = "STATUS"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_STATUSSTYLE: &str = "STATUSSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TAB: &str = "TAB"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TABSTYLE: &str = "TABSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_TASKBAND: &str = "TASKBAND"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_TASKBAR: &str = "TASKBAR"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TASKDIALOG: &str = "TASKDIALOG"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TASKDIALOGSTYLE: &str = "TASKDIALOGSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TEXTSELECTIONGRIPPER: &str = "TEXTSELECTIONGRIPPER"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TEXTSTYLE: &str = "TEXTSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TOOLBAR: &str = "TOOLBAR"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TOOLBARSTYLE: &str = "TOOLBARSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TOOLTIP: &str = "TOOLTIP"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TOOLTIPSTYLE: &str = "TOOLTIPSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TRACKBAR: &str = "TRACKBAR"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TRACKBARSTYLE: &str = "TRACKBARSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const VSCLASS_TRAYNOTIFY: &str = "TRAYNOTIFY"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TREEVIEW: &str = "TREEVIEW"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_TREEVIEWSTYLE: &str = "TREEVIEWSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_USERTILE: &str = "USERTILE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_WINDOW: &str = "WINDOW"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const VSCLASS_WINDOWSTYLE: &str = "WINDOWSTYLE"; +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct WARNINGSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDWARNING_HIGHLIGHT: WARNINGSTATES = WARNINGSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const DDWARNING_NOHIGHLIGHT: WARNINGSTATES = WARNINGSTATES(2i32); +impl ::core::marker::Copy for WARNINGSTATES {} +impl ::core::clone::Clone for WARNINGSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for WARNINGSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for WARNINGSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for WARNINGSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("WARNINGSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const WC_BUTTON: &str = "Button"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const WC_BUTTONA: &str = "Button"; @@ -22320,6 +28539,107 @@ pub const WC_TREEVIEWW: &str = "SysTreeView32"; #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct WINDOWPARTS(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_CAPTION: WINDOWPARTS = WINDOWPARTS(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLCAPTION: WINDOWPARTS = WINDOWPARTS(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MINCAPTION: WINDOWPARTS = WINDOWPARTS(3i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLMINCAPTION: WINDOWPARTS = WINDOWPARTS(4i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MAXCAPTION: WINDOWPARTS = WINDOWPARTS(5i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLMAXCAPTION: WINDOWPARTS = WINDOWPARTS(6i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_FRAMELEFT: WINDOWPARTS = WINDOWPARTS(7i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_FRAMERIGHT: WINDOWPARTS = WINDOWPARTS(8i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_FRAMEBOTTOM: WINDOWPARTS = WINDOWPARTS(9i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLFRAMELEFT: WINDOWPARTS = WINDOWPARTS(10i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLFRAMERIGHT: WINDOWPARTS = WINDOWPARTS(11i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLFRAMEBOTTOM: WINDOWPARTS = WINDOWPARTS(12i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SYSBUTTON: WINDOWPARTS = WINDOWPARTS(13i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MDISYSBUTTON: WINDOWPARTS = WINDOWPARTS(14i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MINBUTTON: WINDOWPARTS = WINDOWPARTS(15i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MDIMINBUTTON: WINDOWPARTS = WINDOWPARTS(16i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MAXBUTTON: WINDOWPARTS = WINDOWPARTS(17i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_CLOSEBUTTON: WINDOWPARTS = WINDOWPARTS(18i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLCLOSEBUTTON: WINDOWPARTS = WINDOWPARTS(19i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MDICLOSEBUTTON: WINDOWPARTS = WINDOWPARTS(20i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_RESTOREBUTTON: WINDOWPARTS = WINDOWPARTS(21i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MDIRESTOREBUTTON: WINDOWPARTS = WINDOWPARTS(22i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_HELPBUTTON: WINDOWPARTS = WINDOWPARTS(23i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_MDIHELPBUTTON: WINDOWPARTS = WINDOWPARTS(24i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_HORZSCROLL: WINDOWPARTS = WINDOWPARTS(25i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_HORZTHUMB: WINDOWPARTS = WINDOWPARTS(26i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_VERTSCROLL: WINDOWPARTS = WINDOWPARTS(27i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_VERTTHUMB: WINDOWPARTS = WINDOWPARTS(28i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_DIALOG: WINDOWPARTS = WINDOWPARTS(29i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_CAPTIONSIZINGTEMPLATE: WINDOWPARTS = WINDOWPARTS(30i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLCAPTIONSIZINGTEMPLATE: WINDOWPARTS = WINDOWPARTS(31i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_FRAMELEFTSIZINGTEMPLATE: WINDOWPARTS = WINDOWPARTS(32i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLFRAMELEFTSIZINGTEMPLATE: WINDOWPARTS = WINDOWPARTS(33i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_FRAMERIGHTSIZINGTEMPLATE: WINDOWPARTS = WINDOWPARTS(34i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLFRAMERIGHTSIZINGTEMPLATE: WINDOWPARTS = WINDOWPARTS(35i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_FRAMEBOTTOMSIZINGTEMPLATE: WINDOWPARTS = WINDOWPARTS(36i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_SMALLFRAMEBOTTOMSIZINGTEMPLATE: WINDOWPARTS = WINDOWPARTS(37i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_FRAME: WINDOWPARTS = WINDOWPARTS(38i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const WP_BORDER: WINDOWPARTS = WINDOWPARTS(39i32); +impl ::core::marker::Copy for WINDOWPARTS {} +impl ::core::clone::Clone for WINDOWPARTS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for WINDOWPARTS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for WINDOWPARTS { + type Abi = Self; +} +impl ::core::fmt::Debug for WINDOWPARTS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("WINDOWPARTS").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct WINDOWTHEMEATTRIBUTETYPE(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const WTA_NONCLIENT: WINDOWTHEMEATTRIBUTETYPE = WINDOWTHEMEATTRIBUTETYPE(1i32); @@ -22400,6 +28720,35 @@ impl ::core::fmt::Debug for WORD_BREAK_ACTION { #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct WRENCHSTATES(pub i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTWS_NORMAL: WRENCHSTATES = WRENCHSTATES(1i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTWS_HOT: WRENCHSTATES = WRENCHSTATES(2i32); +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +pub const TTWS_PRESSED: WRENCHSTATES = WRENCHSTATES(3i32); +impl ::core::marker::Copy for WRENCHSTATES {} +impl ::core::clone::Clone for WRENCHSTATES { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for WRENCHSTATES { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for WRENCHSTATES { + type Abi = Self; +} +impl ::core::fmt::Debug for WRENCHSTATES { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("WRENCHSTATES").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Controls\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct WSB_PROP(pub i32); #[doc = "*Required features: `\"Win32_UI_Controls\"`*"] pub const WSB_PROP_CXHSCROLL: WSB_PROP = WSB_PROP(2i32); diff --git a/crates/libs/windows/src/Windows/Win32/UI/Input/Ime/mod.rs b/crates/libs/windows/src/Windows/Win32/UI/Input/Ime/mod.rs index 74ede2adb7..21c4c15fe0 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/Input/Ime/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/Input/Ime/mod.rs @@ -459,30 +459,6 @@ pub const FID_RECONVERT_VERSION: u32 = 268435456u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const GCSEX_CANCELRECONVERT: u32 = 268435456u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_COMPATTR: u32 = 16u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_COMPCLAUSE: u32 = 32u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_COMPREADATTR: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_COMPREADCLAUSE: u32 = 4u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_COMPREADSTR: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_COMPSTR: u32 = 8u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_CURSORPOS: u32 = 128u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_DELTASTART: u32 = 256u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_RESULTCLAUSE: u32 = 4096u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_RESULTREADCLAUSE: u32 = 1024u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_RESULTREADSTR: u32 = 512u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const GCS_RESULTSTR: u32 = 2048u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct GET_CONVERSION_LIST_FLAG(pub u32); @@ -5479,23 +5455,80 @@ pub const IME_CAND_STROKE: u32 = 5u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_CAND_UNKNOWN: u32 = 0u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CHOTKEY_IME_NONIME_TOGGLE: u32 = 16u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct IME_COMPOSITION_STRING(pub u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const GCS_COMPREADSTR: IME_COMPOSITION_STRING = IME_COMPOSITION_STRING(1u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CHOTKEY_SHAPE_TOGGLE: u32 = 17u32; +pub const GCS_COMPREADATTR: IME_COMPOSITION_STRING = IME_COMPOSITION_STRING(2u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CHOTKEY_SYMBOL_TOGGLE: u32 = 18u32; +pub const GCS_COMPREADCLAUSE: IME_COMPOSITION_STRING = IME_COMPOSITION_STRING(4u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CMODE_EUDC: u32 = 512u32; +pub const GCS_COMPSTR: IME_COMPOSITION_STRING = IME_COMPOSITION_STRING(8u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CMODE_FIXED: u32 = 2048u32; +pub const GCS_COMPATTR: IME_COMPOSITION_STRING = IME_COMPOSITION_STRING(16u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CMODE_NOCONVERSION: u32 = 256u32; +pub const GCS_COMPCLAUSE: IME_COMPOSITION_STRING = IME_COMPOSITION_STRING(32u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CMODE_RESERVED: u32 = 4026531840u32; +pub const GCS_CURSORPOS: IME_COMPOSITION_STRING = IME_COMPOSITION_STRING(128u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CMODE_SOFTKBD: u32 = 128u32; +pub const GCS_DELTASTART: IME_COMPOSITION_STRING = IME_COMPOSITION_STRING(256u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_CMODE_SYMBOL: u32 = 1024u32; +pub const GCS_RESULTREADSTR: IME_COMPOSITION_STRING = IME_COMPOSITION_STRING(512u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const GCS_RESULTREADCLAUSE: IME_COMPOSITION_STRING = IME_COMPOSITION_STRING(1024u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const GCS_RESULTSTR: IME_COMPOSITION_STRING = IME_COMPOSITION_STRING(2048u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const GCS_RESULTCLAUSE: IME_COMPOSITION_STRING = IME_COMPOSITION_STRING(4096u32); +impl ::core::marker::Copy for IME_COMPOSITION_STRING {} +impl ::core::clone::Clone for IME_COMPOSITION_STRING { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for IME_COMPOSITION_STRING { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for IME_COMPOSITION_STRING { + type Abi = Self; +} +impl ::core::fmt::Debug for IME_COMPOSITION_STRING { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("IME_COMPOSITION_STRING").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for IME_COMPOSITION_STRING { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for IME_COMPOSITION_STRING { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for IME_COMPOSITION_STRING { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for IME_COMPOSITION_STRING { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for IME_COMPOSITION_STRING { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_CONFIG_GENERAL: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] @@ -5503,61 +5536,208 @@ pub const IME_CONFIG_REGISTERWORD: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_CONFIG_SELECTDICTIONARY: u32 = 3u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_AUTOMATA: u32 = 4105u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct IME_CONVERSION_MODE(pub u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_GETHELPFILENAME: u32 = 4107u32; +pub const IME_CMODE_ALPHANUMERIC: IME_CONVERSION_MODE = IME_CONVERSION_MODE(0u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_GET_EUDC_DICTIONARY: u32 = 4099u32; +pub const IME_CMODE_NATIVE: IME_CONVERSION_MODE = IME_CONVERSION_MODE(1u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_HANJA_MODE: u32 = 4104u32; +pub const IME_CMODE_CHINESE: IME_CONVERSION_MODE = IME_CONVERSION_MODE(1u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_IME_NAME: u32 = 4102u32; +pub const IME_CMODE_HANGUL: IME_CONVERSION_MODE = IME_CONVERSION_MODE(1u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_MAX_KEY: u32 = 4101u32; +pub const IME_CMODE_JAPANESE: IME_CONVERSION_MODE = IME_CONVERSION_MODE(1u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_PRIVATE_FIRST: u32 = 2048u32; +pub const IME_CMODE_KATAKANA: IME_CONVERSION_MODE = IME_CONVERSION_MODE(2u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_PRIVATE_HOTKEY: u32 = 4106u32; +pub const IME_CMODE_LANGUAGE: IME_CONVERSION_MODE = IME_CONVERSION_MODE(3u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_PRIVATE_LAST: u32 = 4095u32; +pub const IME_CMODE_FULLSHAPE: IME_CONVERSION_MODE = IME_CONVERSION_MODE(8u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_QUERY_SUPPORT: u32 = 3u32; +pub const IME_CMODE_ROMAN: IME_CONVERSION_MODE = IME_CONVERSION_MODE(16u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_RESERVED_FIRST: u32 = 4u32; +pub const IME_CMODE_CHARCODE: IME_CONVERSION_MODE = IME_CONVERSION_MODE(32u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_RESERVED_LAST: u32 = 2047u32; +pub const IME_CMODE_HANJACONVERT: IME_CONVERSION_MODE = IME_CONVERSION_MODE(64u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_SEQUENCE_TO_INTERNAL: u32 = 4097u32; +pub const IME_CMODE_NATIVESYMBOL: IME_CONVERSION_MODE = IME_CONVERSION_MODE(128u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_SET_EUDC_DICTIONARY: u32 = 4100u32; +pub const IME_CMODE_HANGEUL: IME_CONVERSION_MODE = IME_CONVERSION_MODE(1u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_STRING_BUFFER_SIZE: u32 = 80u32; +pub const IME_CMODE_SOFTKBD: IME_CONVERSION_MODE = IME_CONVERSION_MODE(128u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_CMODE_NOCONVERSION: IME_CONVERSION_MODE = IME_CONVERSION_MODE(256u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_CMODE_EUDC: IME_CONVERSION_MODE = IME_CONVERSION_MODE(512u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_CMODE_SYMBOL: IME_CONVERSION_MODE = IME_CONVERSION_MODE(1024u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_CMODE_FIXED: IME_CONVERSION_MODE = IME_CONVERSION_MODE(2048u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_CMODE_RESERVED: IME_CONVERSION_MODE = IME_CONVERSION_MODE(4026531840u32); +impl ::core::marker::Copy for IME_CONVERSION_MODE {} +impl ::core::clone::Clone for IME_CONVERSION_MODE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for IME_CONVERSION_MODE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for IME_CONVERSION_MODE { + type Abi = Self; +} +impl ::core::fmt::Debug for IME_CONVERSION_MODE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("IME_CONVERSION_MODE").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for IME_CONVERSION_MODE { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for IME_CONVERSION_MODE { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for IME_CONVERSION_MODE { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for IME_CONVERSION_MODE { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for IME_CONVERSION_MODE { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct IME_ESCAPE(pub u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_QUERY_SUPPORT: IME_ESCAPE = IME_ESCAPE(3u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_RESERVED_FIRST: IME_ESCAPE = IME_ESCAPE(4u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_RESERVED_LAST: IME_ESCAPE = IME_ESCAPE(2047u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_PRIVATE_FIRST: IME_ESCAPE = IME_ESCAPE(2048u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_PRIVATE_LAST: IME_ESCAPE = IME_ESCAPE(4095u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ESC_SYNC_HOTKEY: u32 = 4103u32; +pub const IME_ESC_SEQUENCE_TO_INTERNAL: IME_ESCAPE = IME_ESCAPE(4097u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_GET_EUDC_DICTIONARY: IME_ESCAPE = IME_ESCAPE(4099u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_SET_EUDC_DICTIONARY: IME_ESCAPE = IME_ESCAPE(4100u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_MAX_KEY: IME_ESCAPE = IME_ESCAPE(4101u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_IME_NAME: IME_ESCAPE = IME_ESCAPE(4102u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_SYNC_HOTKEY: IME_ESCAPE = IME_ESCAPE(4103u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_HANJA_MODE: IME_ESCAPE = IME_ESCAPE(4104u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_AUTOMATA: IME_ESCAPE = IME_ESCAPE(4105u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_PRIVATE_HOTKEY: IME_ESCAPE = IME_ESCAPE(4106u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_GETHELPFILENAME: IME_ESCAPE = IME_ESCAPE(4107u32); +impl ::core::marker::Copy for IME_ESCAPE {} +impl ::core::clone::Clone for IME_ESCAPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for IME_ESCAPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for IME_ESCAPE { + type Abi = Self; +} +impl ::core::fmt::Debug for IME_ESCAPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("IME_ESCAPE").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ESC_STRING_BUFFER_SIZE: u32 = 80u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_HOTKEY_DSWITCH_FIRST: u32 = 256u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_HOTKEY_DSWITCH_LAST: u32 = 287u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_HOTKEY_PRIVATE_FIRST: u32 = 512u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct IME_HOTKEY_IDENTIFIER(pub u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_HOTKEY_PRIVATE_LAST: u32 = 543u32; +pub const IME_CHOTKEY_IME_NONIME_TOGGLE: IME_HOTKEY_IDENTIFIER = IME_HOTKEY_IDENTIFIER(16u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_CHOTKEY_SHAPE_TOGGLE: IME_HOTKEY_IDENTIFIER = IME_HOTKEY_IDENTIFIER(17u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_CHOTKEY_SYMBOL_TOGGLE: IME_HOTKEY_IDENTIFIER = IME_HOTKEY_IDENTIFIER(18u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ITHOTKEY_PREVIOUS_COMPOSITION: u32 = 513u32; +pub const IME_JHOTKEY_CLOSE_OPEN: IME_HOTKEY_IDENTIFIER = IME_HOTKEY_IDENTIFIER(48u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ITHOTKEY_RECONVERTSTRING: u32 = 515u32; +pub const IME_KHOTKEY_SHAPE_TOGGLE: IME_HOTKEY_IDENTIFIER = IME_HOTKEY_IDENTIFIER(80u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ITHOTKEY_RESEND_RESULTSTR: u32 = 512u32; +pub const IME_KHOTKEY_HANJACONVERT: IME_HOTKEY_IDENTIFIER = IME_HOTKEY_IDENTIFIER(81u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_ITHOTKEY_UISTYLE_TOGGLE: u32 = 514u32; +pub const IME_KHOTKEY_ENGLISH: IME_HOTKEY_IDENTIFIER = IME_HOTKEY_IDENTIFIER(82u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_JHOTKEY_CLOSE_OPEN: u32 = 48u32; +pub const IME_THOTKEY_IME_NONIME_TOGGLE: IME_HOTKEY_IDENTIFIER = IME_HOTKEY_IDENTIFIER(112u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_KHOTKEY_ENGLISH: u32 = 82u32; +pub const IME_THOTKEY_SHAPE_TOGGLE: IME_HOTKEY_IDENTIFIER = IME_HOTKEY_IDENTIFIER(113u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_KHOTKEY_HANJACONVERT: u32 = 81u32; +pub const IME_THOTKEY_SYMBOL_TOGGLE: IME_HOTKEY_IDENTIFIER = IME_HOTKEY_IDENTIFIER(114u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_KHOTKEY_SHAPE_TOGGLE: u32 = 80u32; +pub const IME_ITHOTKEY_RESEND_RESULTSTR: IME_HOTKEY_IDENTIFIER = IME_HOTKEY_IDENTIFIER(512u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ITHOTKEY_PREVIOUS_COMPOSITION: IME_HOTKEY_IDENTIFIER = IME_HOTKEY_IDENTIFIER(513u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ITHOTKEY_UISTYLE_TOGGLE: IME_HOTKEY_IDENTIFIER = IME_HOTKEY_IDENTIFIER(514u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_ITHOTKEY_RECONVERTSTRING: IME_HOTKEY_IDENTIFIER = IME_HOTKEY_IDENTIFIER(515u32); +impl ::core::marker::Copy for IME_HOTKEY_IDENTIFIER {} +impl ::core::clone::Clone for IME_HOTKEY_IDENTIFIER { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for IME_HOTKEY_IDENTIFIER { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for IME_HOTKEY_IDENTIFIER { + type Abi = Self; +} +impl ::core::fmt::Debug for IME_HOTKEY_IDENTIFIER { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("IME_HOTKEY_IDENTIFIER").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_HOTKEY_PRIVATE_FIRST: u32 = 512u32; +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_HOTKEY_PRIVATE_LAST: u32 = 543u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] @@ -5648,30 +5828,75 @@ pub const IME_REGWORD_STYLE_USER_FIRST: u32 = 2147483648u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_REGWORD_STYLE_USER_LAST: u32 = 4294967295u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_SMODE_AUTOMATIC: u32 = 4u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct IME_SENTENCE_MODE(pub u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_SMODE_CONVERSATION: u32 = 16u32; +pub const IME_SMODE_NONE: IME_SENTENCE_MODE = IME_SENTENCE_MODE(0u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_SMODE_NONE: u32 = 0u32; +pub const IME_SMODE_PLAURALCLAUSE: IME_SENTENCE_MODE = IME_SENTENCE_MODE(1u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_SMODE_PHRASEPREDICT: u32 = 8u32; +pub const IME_SMODE_SINGLECONVERT: IME_SENTENCE_MODE = IME_SENTENCE_MODE(2u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_SMODE_PLAURALCLAUSE: u32 = 1u32; +pub const IME_SMODE_AUTOMATIC: IME_SENTENCE_MODE = IME_SENTENCE_MODE(4u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_SMODE_RESERVED: u32 = 61440u32; +pub const IME_SMODE_PHRASEPREDICT: IME_SENTENCE_MODE = IME_SENTENCE_MODE(8u32); #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_SMODE_SINGLECONVERT: u32 = 2u32; +pub const IME_SMODE_CONVERSATION: IME_SENTENCE_MODE = IME_SENTENCE_MODE(16u32); +#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] +pub const IME_SMODE_RESERVED: IME_SENTENCE_MODE = IME_SENTENCE_MODE(61440u32); +impl ::core::marker::Copy for IME_SENTENCE_MODE {} +impl ::core::clone::Clone for IME_SENTENCE_MODE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for IME_SENTENCE_MODE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for IME_SENTENCE_MODE { + type Abi = Self; +} +impl ::core::fmt::Debug for IME_SENTENCE_MODE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("IME_SENTENCE_MODE").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for IME_SENTENCE_MODE { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for IME_SENTENCE_MODE { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for IME_SENTENCE_MODE { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for IME_SENTENCE_MODE { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for IME_SENTENCE_MODE { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_SYSINFO_WINLOGON: u32 = 1u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_SYSINFO_WOW16: u32 = 2u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_THOTKEY_IME_NONIME_TOGGLE: u32 = 112u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_THOTKEY_SHAPE_TOGGLE: u32 = 113u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] -pub const IME_THOTKEY_SYMBOL_TOGGLE: u32 = 114u32; -#[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IME_UI_CLASS_NAME_SIZE: u32 = 16u32; #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`*"] pub const IMFT_RADIOCHECK: u32 = 1u32; @@ -6110,28 +6335,28 @@ where #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`, `\"Win32_Globalization\"`, `\"Win32_UI_TextServices\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Globalization", feature = "Win32_UI_TextServices"))] #[inline] -pub unsafe fn ImmEscapeA<'a, P0, P1>(param0: P0, param1: P1, param2: u32, param3: *mut ::core::ffi::c_void) -> super::super::super::Foundation::LRESULT +pub unsafe fn ImmEscapeA<'a, P0, P1>(param0: P0, param1: P1, param2: IME_ESCAPE, param3: *mut ::core::ffi::c_void) -> super::super::super::Foundation::LRESULT where P0: ::std::convert::Into, P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ImmEscapeA(param0: super::super::TextServices::HKL, param1: super::super::super::Globalization::HIMC, param2: u32, param3: *mut ::core::ffi::c_void) -> super::super::super::Foundation::LRESULT; + fn ImmEscapeA(param0: super::super::TextServices::HKL, param1: super::super::super::Globalization::HIMC, param2: IME_ESCAPE, param3: *mut ::core::ffi::c_void) -> super::super::super::Foundation::LRESULT; } ImmEscapeA(param0.into(), param1.into(), param2, ::core::mem::transmute(param3)) } #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`, `\"Win32_Globalization\"`, `\"Win32_UI_TextServices\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Globalization", feature = "Win32_UI_TextServices"))] #[inline] -pub unsafe fn ImmEscapeW<'a, P0, P1>(param0: P0, param1: P1, param2: u32, param3: *mut ::core::ffi::c_void) -> super::super::super::Foundation::LRESULT +pub unsafe fn ImmEscapeW<'a, P0, P1>(param0: P0, param1: P1, param2: IME_ESCAPE, param3: *mut ::core::ffi::c_void) -> super::super::super::Foundation::LRESULT where P0: ::std::convert::Into, P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ImmEscapeW(param0: super::super::TextServices::HKL, param1: super::super::super::Globalization::HIMC, param2: u32, param3: *mut ::core::ffi::c_void) -> super::super::super::Foundation::LRESULT; + fn ImmEscapeW(param0: super::super::TextServices::HKL, param1: super::super::super::Globalization::HIMC, param2: IME_ESCAPE, param3: *mut ::core::ffi::c_void) -> super::super::super::Foundation::LRESULT; } ImmEscapeW(param0.into(), param1.into(), param2, ::core::mem::transmute(param3)) } @@ -6242,26 +6467,26 @@ where #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Globalization\"`*"] #[cfg(feature = "Win32_Globalization")] #[inline] -pub unsafe fn ImmGetCompositionStringA<'a, P0>(param0: P0, param1: u32, lpbuf: ::core::option::Option<&mut [u8]>) -> i32 +pub unsafe fn ImmGetCompositionStringA<'a, P0>(param0: P0, param1: IME_COMPOSITION_STRING, lpbuf: ::core::option::Option<&mut [u8]>) -> i32 where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ImmGetCompositionStringA(param0: super::super::super::Globalization::HIMC, param1: u32, lpbuf: *mut ::core::ffi::c_void, dwbuflen: u32) -> i32; + fn ImmGetCompositionStringA(param0: super::super::super::Globalization::HIMC, param1: IME_COMPOSITION_STRING, lpbuf: *mut ::core::ffi::c_void, dwbuflen: u32) -> i32; } ImmGetCompositionStringA(param0.into(), param1, ::core::mem::transmute(lpbuf.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpbuf.as_deref().map_or(0, |slice| slice.len() as _)) } #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Globalization\"`*"] #[cfg(feature = "Win32_Globalization")] #[inline] -pub unsafe fn ImmGetCompositionStringW<'a, P0>(param0: P0, param1: u32, lpbuf: ::core::option::Option<&mut [u8]>) -> i32 +pub unsafe fn ImmGetCompositionStringW<'a, P0>(param0: P0, param1: IME_COMPOSITION_STRING, lpbuf: ::core::option::Option<&mut [u8]>) -> i32 where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ImmGetCompositionStringW(param0: super::super::super::Globalization::HIMC, param1: u32, lpbuf: *mut ::core::ffi::c_void, dwbuflen: u32) -> i32; + fn ImmGetCompositionStringW(param0: super::super::super::Globalization::HIMC, param1: IME_COMPOSITION_STRING, lpbuf: *mut ::core::ffi::c_void, dwbuflen: u32) -> i32; } ImmGetCompositionStringW(param0.into(), param1, ::core::mem::transmute(lpbuf.as_deref().map_or(::core::ptr::null(), |slice| slice.as_ptr())), lpbuf.as_deref().map_or(0, |slice| slice.len() as _)) } @@ -6324,13 +6549,13 @@ where #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`, `\"Win32_Globalization\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Globalization"))] #[inline] -pub unsafe fn ImmGetConversionStatus<'a, P0>(param0: P0, lpfdwconversion: ::core::option::Option<&mut u32>, lpfdwsentence: ::core::option::Option<&mut u32>) -> super::super::super::Foundation::BOOL +pub unsafe fn ImmGetConversionStatus<'a, P0>(param0: P0, lpfdwconversion: ::core::option::Option<&mut IME_CONVERSION_MODE>, lpfdwsentence: ::core::option::Option<&mut IME_SENTENCE_MODE>) -> super::super::super::Foundation::BOOL where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ImmGetConversionStatus(param0: super::super::super::Globalization::HIMC, lpfdwconversion: *mut u32, lpfdwsentence: *mut u32) -> super::super::super::Foundation::BOOL; + fn ImmGetConversionStatus(param0: super::super::super::Globalization::HIMC, lpfdwconversion: *mut IME_CONVERSION_MODE, lpfdwsentence: *mut IME_SENTENCE_MODE) -> super::super::super::Foundation::BOOL; } ImmGetConversionStatus(param0.into(), ::core::mem::transmute(lpfdwconversion), ::core::mem::transmute(lpfdwsentence)) } @@ -6856,13 +7081,13 @@ where #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`, `\"Win32_Globalization\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Globalization"))] #[inline] -pub unsafe fn ImmSetConversionStatus<'a, P0>(param0: P0, param1: u32, param2: u32) -> super::super::super::Foundation::BOOL +pub unsafe fn ImmSetConversionStatus<'a, P0>(param0: P0, param1: IME_CONVERSION_MODE, param2: IME_SENTENCE_MODE) -> super::super::super::Foundation::BOOL where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ImmSetConversionStatus(param0: super::super::super::Globalization::HIMC, param1: u32, param2: u32) -> super::super::super::Foundation::BOOL; + fn ImmSetConversionStatus(param0: super::super::super::Globalization::HIMC, param1: IME_CONVERSION_MODE, param2: IME_SENTENCE_MODE) -> super::super::super::Foundation::BOOL; } ImmSetConversionStatus(param0.into(), param1, param2) } @@ -6922,13 +7147,13 @@ where #[doc = "*Required features: `\"Win32_UI_Input_Ime\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn ImmSimulateHotKey<'a, P0>(param0: P0, param1: u32) -> super::super::super::Foundation::BOOL +pub unsafe fn ImmSimulateHotKey<'a, P0>(param0: P0, param1: IME_HOTKEY_IDENTIFIER) -> super::super::super::Foundation::BOOL where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ImmSimulateHotKey(param0: super::super::super::Foundation::HWND, param1: u32) -> super::super::super::Foundation::BOOL; + fn ImmSimulateHotKey(param0: super::super::super::Foundation::HWND, param1: IME_HOTKEY_IDENTIFIER) -> super::super::super::Foundation::BOOL; } ImmSimulateHotKey(param0.into(), param1) } diff --git a/crates/libs/windows/src/Windows/Win32/UI/Input/XboxController/mod.rs b/crates/libs/windows/src/Windows/Win32/UI/Input/XboxController/mod.rs index 86abeb6ad5..37cc0d5d5b 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/Input/XboxController/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/Input/XboxController/mod.rs @@ -1,30 +1,99 @@ #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_DEVTYPE_GAMEPAD: u32 = 0u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BATTERY_DEVTYPE(pub u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_DEVTYPE_HEADSET: u32 = 1u32; +pub const BATTERY_DEVTYPE_GAMEPAD: BATTERY_DEVTYPE = BATTERY_DEVTYPE(0u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_LEVEL_EMPTY: u32 = 0u32; +pub const BATTERY_DEVTYPE_HEADSET: BATTERY_DEVTYPE = BATTERY_DEVTYPE(1u32); +impl ::core::marker::Copy for BATTERY_DEVTYPE {} +impl ::core::clone::Clone for BATTERY_DEVTYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for BATTERY_DEVTYPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for BATTERY_DEVTYPE { + type Abi = Self; +} +impl ::core::fmt::Debug for BATTERY_DEVTYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BATTERY_DEVTYPE").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_LEVEL_FULL: u32 = 3u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BATTERY_LEVEL(pub u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_LEVEL_LOW: u32 = 1u32; +pub const BATTERY_LEVEL_EMPTY: BATTERY_LEVEL = BATTERY_LEVEL(0u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_LEVEL_MEDIUM: u32 = 2u32; +pub const BATTERY_LEVEL_LOW: BATTERY_LEVEL = BATTERY_LEVEL(1u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_TYPE_ALKALINE: u32 = 2u32; +pub const BATTERY_LEVEL_MEDIUM: BATTERY_LEVEL = BATTERY_LEVEL(2u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_TYPE_DISCONNECTED: u32 = 0u32; +pub const BATTERY_LEVEL_FULL: BATTERY_LEVEL = BATTERY_LEVEL(3u32); +impl ::core::marker::Copy for BATTERY_LEVEL {} +impl ::core::clone::Clone for BATTERY_LEVEL { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for BATTERY_LEVEL { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for BATTERY_LEVEL { + type Abi = Self; +} +impl ::core::fmt::Debug for BATTERY_LEVEL { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BATTERY_LEVEL").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_TYPE_NIMH: u32 = 3u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct BATTERY_TYPE(pub u32); +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const BATTERY_TYPE_DISCONNECTED: BATTERY_TYPE = BATTERY_TYPE(0u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_TYPE_UNKNOWN: u32 = 255u32; +pub const BATTERY_TYPE_WIRED: BATTERY_TYPE = BATTERY_TYPE(1u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const BATTERY_TYPE_WIRED: u32 = 1u32; +pub const BATTERY_TYPE_ALKALINE: BATTERY_TYPE = BATTERY_TYPE(2u32); +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const BATTERY_TYPE_NIMH: BATTERY_TYPE = BATTERY_TYPE(3u32); +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const BATTERY_TYPE_UNKNOWN: BATTERY_TYPE = BATTERY_TYPE(255u32); +impl ::core::marker::Copy for BATTERY_TYPE {} +impl ::core::clone::Clone for BATTERY_TYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for BATTERY_TYPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for BATTERY_TYPE { + type Abi = Self; +} +impl ::core::fmt::Debug for BATTERY_TYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("BATTERY_TYPE").field(&self.0).finish() + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub struct XINPUT_BATTERY_INFORMATION { - pub BatteryType: u8, - pub BatteryLevel: u8, + pub BatteryType: BATTERY_TYPE, + pub BatteryLevel: BATTERY_LEVEL, } impl ::core::marker::Copy for XINPUT_BATTERY_INFORMATION {} impl ::core::clone::Clone for XINPUT_BATTERY_INFORMATION { @@ -54,9 +123,9 @@ impl ::core::default::Default for XINPUT_BATTERY_INFORMATION { #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub struct XINPUT_CAPABILITIES { - pub Type: u8, - pub SubType: u8, - pub Flags: u16, + pub Type: XINPUT_DEVTYPE, + pub SubType: XINPUT_DEVSUBTYPE, + pub Flags: XINPUT_CAPABILITIES_FLAGS, pub Gamepad: XINPUT_GAMEPAD, pub Vibration: XINPUT_VIBRATION, } @@ -86,39 +155,136 @@ impl ::core::default::Default for XINPUT_CAPABILITIES { } } #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_CAPS_FFB_SUPPORTED: u32 = 1u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct XINPUT_CAPABILITIES_FLAGS(pub u16); +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const XINPUT_CAPS_VOICE_SUPPORTED: XINPUT_CAPABILITIES_FLAGS = XINPUT_CAPABILITIES_FLAGS(4u16); +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const XINPUT_CAPS_FFB_SUPPORTED: XINPUT_CAPABILITIES_FLAGS = XINPUT_CAPABILITIES_FLAGS(1u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_CAPS_NO_NAVIGATION: u32 = 16u32; +pub const XINPUT_CAPS_WIRELESS: XINPUT_CAPABILITIES_FLAGS = XINPUT_CAPABILITIES_FLAGS(2u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_CAPS_PMD_SUPPORTED: u32 = 8u32; +pub const XINPUT_CAPS_PMD_SUPPORTED: XINPUT_CAPABILITIES_FLAGS = XINPUT_CAPABILITIES_FLAGS(8u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_CAPS_VOICE_SUPPORTED: u32 = 4u32; +pub const XINPUT_CAPS_NO_NAVIGATION: XINPUT_CAPABILITIES_FLAGS = XINPUT_CAPABILITIES_FLAGS(16u16); +impl ::core::marker::Copy for XINPUT_CAPABILITIES_FLAGS {} +impl ::core::clone::Clone for XINPUT_CAPABILITIES_FLAGS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for XINPUT_CAPABILITIES_FLAGS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for XINPUT_CAPABILITIES_FLAGS { + type Abi = Self; +} +impl ::core::fmt::Debug for XINPUT_CAPABILITIES_FLAGS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("XINPUT_CAPABILITIES_FLAGS").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for XINPUT_CAPABILITIES_FLAGS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for XINPUT_CAPABILITIES_FLAGS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for XINPUT_CAPABILITIES_FLAGS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for XINPUT_CAPABILITIES_FLAGS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for XINPUT_CAPABILITIES_FLAGS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_CAPS_WIRELESS: u32 = 2u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct XINPUT_DEVSUBTYPE(pub u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_ARCADE_PAD: u32 = 19u32; +pub const XINPUT_DEVSUBTYPE_GAMEPAD: XINPUT_DEVSUBTYPE = XINPUT_DEVSUBTYPE(1u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_ARCADE_STICK: u32 = 3u32; +pub const XINPUT_DEVSUBTYPE_UNKNOWN: XINPUT_DEVSUBTYPE = XINPUT_DEVSUBTYPE(0u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_DANCE_PAD: u32 = 5u32; +pub const XINPUT_DEVSUBTYPE_WHEEL: XINPUT_DEVSUBTYPE = XINPUT_DEVSUBTYPE(2u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_DRUM_KIT: u32 = 8u32; +pub const XINPUT_DEVSUBTYPE_ARCADE_STICK: XINPUT_DEVSUBTYPE = XINPUT_DEVSUBTYPE(3u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_FLIGHT_STICK: u32 = 4u32; +pub const XINPUT_DEVSUBTYPE_FLIGHT_STICK: XINPUT_DEVSUBTYPE = XINPUT_DEVSUBTYPE(4u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_GAMEPAD: u32 = 1u32; +pub const XINPUT_DEVSUBTYPE_DANCE_PAD: XINPUT_DEVSUBTYPE = XINPUT_DEVSUBTYPE(5u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_GUITAR: u32 = 6u32; +pub const XINPUT_DEVSUBTYPE_GUITAR: XINPUT_DEVSUBTYPE = XINPUT_DEVSUBTYPE(6u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_GUITAR_ALTERNATE: u32 = 7u32; +pub const XINPUT_DEVSUBTYPE_GUITAR_ALTERNATE: XINPUT_DEVSUBTYPE = XINPUT_DEVSUBTYPE(7u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_GUITAR_BASS: u32 = 11u32; +pub const XINPUT_DEVSUBTYPE_DRUM_KIT: XINPUT_DEVSUBTYPE = XINPUT_DEVSUBTYPE(8u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_UNKNOWN: u32 = 0u32; +pub const XINPUT_DEVSUBTYPE_GUITAR_BASS: XINPUT_DEVSUBTYPE = XINPUT_DEVSUBTYPE(11u32); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVSUBTYPE_WHEEL: u32 = 2u32; +pub const XINPUT_DEVSUBTYPE_ARCADE_PAD: XINPUT_DEVSUBTYPE = XINPUT_DEVSUBTYPE(19u32); +impl ::core::marker::Copy for XINPUT_DEVSUBTYPE {} +impl ::core::clone::Clone for XINPUT_DEVSUBTYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for XINPUT_DEVSUBTYPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for XINPUT_DEVSUBTYPE { + type Abi = Self; +} +impl ::core::fmt::Debug for XINPUT_DEVSUBTYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("XINPUT_DEVSUBTYPE").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_DEVTYPE_GAMEPAD: u32 = 1u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct XINPUT_DEVTYPE(pub u32); +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const XINPUT_DEVTYPE_GAMEPAD: XINPUT_DEVTYPE = XINPUT_DEVTYPE(1u32); +impl ::core::marker::Copy for XINPUT_DEVTYPE {} +impl ::core::clone::Clone for XINPUT_DEVTYPE { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for XINPUT_DEVTYPE { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for XINPUT_DEVTYPE { + type Abi = Self; +} +impl ::core::fmt::Debug for XINPUT_DEVTYPE { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("XINPUT_DEVTYPE").field(&self.0).finish() + } +} #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub const XINPUT_DLL: &str = "xinput1_4.dll"; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] @@ -126,11 +292,64 @@ pub const XINPUT_DLL_A: &str = "xinput1_4.dll"; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub const XINPUT_DLL_W: &str = "xinput1_4.dll"; #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_FLAG_GAMEPAD: u32 = 1u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct XINPUT_FLAG(pub u32); +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const XINPUT_FLAG_ALL: XINPUT_FLAG = XINPUT_FLAG(0u32); +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const XINPUT_FLAG_GAMEPAD: XINPUT_FLAG = XINPUT_FLAG(1u32); +impl ::core::marker::Copy for XINPUT_FLAG {} +impl ::core::clone::Clone for XINPUT_FLAG { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for XINPUT_FLAG { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for XINPUT_FLAG { + type Abi = Self; +} +impl ::core::fmt::Debug for XINPUT_FLAG { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("XINPUT_FLAG").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for XINPUT_FLAG { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for XINPUT_FLAG { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for XINPUT_FLAG { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for XINPUT_FLAG { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for XINPUT_FLAG { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub struct XINPUT_GAMEPAD { - pub wButtons: u16, + pub wButtons: XINPUT_GAMEPAD_BUTTON_FLAGS, pub bLeftTrigger: u8, pub bRightTrigger: u8, pub sThumbLX: i16, @@ -164,45 +383,96 @@ impl ::core::default::Default for XINPUT_GAMEPAD { } } #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_A: u32 = 4096u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct XINPUT_GAMEPAD_BUTTON_FLAGS(pub u16); +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const XINPUT_GAMEPAD_DPAD_UP: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(1u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_B: u32 = 8192u32; +pub const XINPUT_GAMEPAD_DPAD_DOWN: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(2u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_BACK: u32 = 32u32; +pub const XINPUT_GAMEPAD_DPAD_LEFT: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(4u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_DPAD_DOWN: u32 = 2u32; +pub const XINPUT_GAMEPAD_DPAD_RIGHT: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(8u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_DPAD_LEFT: u32 = 4u32; +pub const XINPUT_GAMEPAD_START: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(16u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_DPAD_RIGHT: u32 = 8u32; +pub const XINPUT_GAMEPAD_BACK: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(32u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_DPAD_UP: u32 = 1u32; +pub const XINPUT_GAMEPAD_LEFT_THUMB: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(64u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_LEFT_SHOULDER: u32 = 256u32; +pub const XINPUT_GAMEPAD_RIGHT_THUMB: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(128u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_LEFT_THUMB: u32 = 64u32; +pub const XINPUT_GAMEPAD_LEFT_SHOULDER: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(256u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_LEFT_THUMB_DEADZONE: u32 = 7849u32; +pub const XINPUT_GAMEPAD_RIGHT_SHOULDER: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(512u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_RIGHT_SHOULDER: u32 = 512u32; +pub const XINPUT_GAMEPAD_A: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(4096u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_RIGHT_THUMB: u32 = 128u32; +pub const XINPUT_GAMEPAD_B: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(8192u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_RIGHT_THUMB_DEADZONE: u32 = 8689u32; +pub const XINPUT_GAMEPAD_X: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(16384u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_START: u32 = 16u32; +pub const XINPUT_GAMEPAD_Y: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(32768u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_TRIGGER_THRESHOLD: u32 = 30u32; +pub const XINPUT_GAMEPAD_LEFT_THUMB_DEADZONE: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(7849u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_X: u32 = 16384u32; +pub const XINPUT_GAMEPAD_RIGHT_THUMB_DEADZONE: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(8689u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_GAMEPAD_Y: u32 = 32768u32; +pub const XINPUT_GAMEPAD_TRIGGER_THRESHOLD: XINPUT_GAMEPAD_BUTTON_FLAGS = XINPUT_GAMEPAD_BUTTON_FLAGS(30u16); +impl ::core::marker::Copy for XINPUT_GAMEPAD_BUTTON_FLAGS {} +impl ::core::clone::Clone for XINPUT_GAMEPAD_BUTTON_FLAGS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for XINPUT_GAMEPAD_BUTTON_FLAGS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for XINPUT_GAMEPAD_BUTTON_FLAGS { + type Abi = Self; +} +impl ::core::fmt::Debug for XINPUT_GAMEPAD_BUTTON_FLAGS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("XINPUT_GAMEPAD_BUTTON_FLAGS").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for XINPUT_GAMEPAD_BUTTON_FLAGS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for XINPUT_GAMEPAD_BUTTON_FLAGS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for XINPUT_GAMEPAD_BUTTON_FLAGS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for XINPUT_GAMEPAD_BUTTON_FLAGS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for XINPUT_GAMEPAD_BUTTON_FLAGS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub struct XINPUT_KEYSTROKE { pub VirtualKey: XINPUT_VIRTUAL_KEY, pub Unicode: u16, - pub Flags: u16, + pub Flags: XINPUT_KEYSTROKE_FLAGS, pub UserIndex: u8, pub HidCode: u8, } @@ -232,11 +502,62 @@ impl ::core::default::Default for XINPUT_KEYSTROKE { } } #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_KEYSTROKE_KEYDOWN: u32 = 1u32; +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct XINPUT_KEYSTROKE_FLAGS(pub u16); +#[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] +pub const XINPUT_KEYSTROKE_KEYDOWN: XINPUT_KEYSTROKE_FLAGS = XINPUT_KEYSTROKE_FLAGS(1u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_KEYSTROKE_KEYUP: u32 = 2u32; +pub const XINPUT_KEYSTROKE_KEYUP: XINPUT_KEYSTROKE_FLAGS = XINPUT_KEYSTROKE_FLAGS(2u16); #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] -pub const XINPUT_KEYSTROKE_REPEAT: u32 = 4u32; +pub const XINPUT_KEYSTROKE_REPEAT: XINPUT_KEYSTROKE_FLAGS = XINPUT_KEYSTROKE_FLAGS(4u16); +impl ::core::marker::Copy for XINPUT_KEYSTROKE_FLAGS {} +impl ::core::clone::Clone for XINPUT_KEYSTROKE_FLAGS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for XINPUT_KEYSTROKE_FLAGS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for XINPUT_KEYSTROKE_FLAGS { + type Abi = Self; +} +impl ::core::fmt::Debug for XINPUT_KEYSTROKE_FLAGS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("XINPUT_KEYSTROKE_FLAGS").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for XINPUT_KEYSTROKE_FLAGS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for XINPUT_KEYSTROKE_FLAGS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for XINPUT_KEYSTROKE_FLAGS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for XINPUT_KEYSTROKE_FLAGS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for XINPUT_KEYSTROKE_FLAGS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] pub struct XINPUT_STATE { @@ -410,19 +731,19 @@ pub unsafe fn XInputGetAudioDeviceIds(dwuserindex: u32, prenderdeviceid: ::windo } #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] #[inline] -pub unsafe fn XInputGetBatteryInformation(dwuserindex: u32, devtype: u8, pbatteryinformation: &mut XINPUT_BATTERY_INFORMATION) -> u32 { +pub unsafe fn XInputGetBatteryInformation(dwuserindex: u32, devtype: BATTERY_DEVTYPE, pbatteryinformation: &mut XINPUT_BATTERY_INFORMATION) -> u32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn XInputGetBatteryInformation(dwuserindex: u32, devtype: u8, pbatteryinformation: *mut XINPUT_BATTERY_INFORMATION) -> u32; + fn XInputGetBatteryInformation(dwuserindex: u32, devtype: BATTERY_DEVTYPE, pbatteryinformation: *mut XINPUT_BATTERY_INFORMATION) -> u32; } XInputGetBatteryInformation(dwuserindex, devtype, ::core::mem::transmute(pbatteryinformation)) } #[doc = "*Required features: `\"Win32_UI_Input_XboxController\"`*"] #[inline] -pub unsafe fn XInputGetCapabilities(dwuserindex: u32, dwflags: u32, pcapabilities: &mut XINPUT_CAPABILITIES) -> u32 { +pub unsafe fn XInputGetCapabilities(dwuserindex: u32, dwflags: XINPUT_FLAG, pcapabilities: &mut XINPUT_CAPABILITIES) -> u32 { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn XInputGetCapabilities(dwuserindex: u32, dwflags: u32, pcapabilities: *mut XINPUT_CAPABILITIES) -> u32; + fn XInputGetCapabilities(dwuserindex: u32, dwflags: XINPUT_FLAG, pcapabilities: *mut XINPUT_CAPABILITIES) -> u32; } XInputGetCapabilities(dwuserindex, dwflags, ::core::mem::transmute(pcapabilities)) } diff --git a/crates/libs/windows/src/Windows/Win32/UI/Shell/PropertiesSystem/mod.rs b/crates/libs/windows/src/Windows/Win32/UI/Shell/PropertiesSystem/mod.rs index ecb571884d..3832abd808 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/Shell/PropertiesSystem/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/Shell/PropertiesSystem/mod.rs @@ -4726,14 +4726,14 @@ where #[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`, `\"Win32_System_Ole\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole"))] #[inline] -pub unsafe fn PSPropertyBag_ReadType<'a, P0, P1>(propbag: P0, propname: P1, var: &mut super::super::super::System::Com::VARIANT, r#type: u16) -> ::windows::core::Result<()> +pub unsafe fn PSPropertyBag_ReadType<'a, P0, P1>(propbag: P0, propname: P1, var: &mut super::super::super::System::Com::VARIANT, r#type: super::super::super::System::Com::VARENUM) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, super::super::super::System::Com::StructuredStorage::IPropertyBag>>, P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn PSPropertyBag_ReadType(propbag: *mut ::core::ffi::c_void, propname: ::windows::core::PCWSTR, var: *mut super::super::super::System::Com::VARIANT, r#type: u16) -> ::windows::core::HRESULT; + fn PSPropertyBag_ReadType(propbag: *mut ::core::ffi::c_void, propname: ::windows::core::PCWSTR, var: *mut super::super::super::System::Com::VARIANT, r#type: super::super::super::System::Com::VARENUM) -> ::windows::core::HRESULT; } PSPropertyBag_ReadType(propbag.into().abi(), propname.into(), ::core::mem::transmute(var), r#type).ok() } @@ -5163,10 +5163,10 @@ where #[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage"))] #[inline] -pub unsafe fn PropVariantChangeType(ppropvardest: &mut super::super::super::System::Com::StructuredStorage::PROPVARIANT, propvarsrc: &super::super::super::System::Com::StructuredStorage::PROPVARIANT, flags: PROPVAR_CHANGE_FLAGS, vt: u16) -> ::windows::core::Result<()> { +pub unsafe fn PropVariantChangeType(ppropvardest: &mut super::super::super::System::Com::StructuredStorage::PROPVARIANT, propvarsrc: &super::super::super::System::Com::StructuredStorage::PROPVARIANT, flags: PROPVAR_CHANGE_FLAGS, vt: super::super::super::System::Com::VARENUM) -> ::windows::core::Result<()> { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn PropVariantChangeType(ppropvardest: *mut super::super::super::System::Com::StructuredStorage::PROPVARIANT, propvarsrc: *const super::super::super::System::Com::StructuredStorage::PROPVARIANT, flags: PROPVAR_CHANGE_FLAGS, vt: u16) -> ::windows::core::HRESULT; + fn PropVariantChangeType(ppropvardest: *mut super::super::super::System::Com::StructuredStorage::PROPVARIANT, propvarsrc: *const super::super::super::System::Com::StructuredStorage::PROPVARIANT, flags: PROPVAR_CHANGE_FLAGS, vt: super::super::super::System::Com::VARENUM) -> ::windows::core::HRESULT; } PropVariantChangeType(::core::mem::transmute(ppropvardest), ::core::mem::transmute(propvarsrc), flags, vt).ok() } @@ -5852,7 +5852,7 @@ where #[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage"))] #[inline] -pub unsafe fn SHPropStgReadMultiple<'a, P0>(pps: P0, ucodepage: u32, rgpspec: &[super::super::super::System::Com::StructuredStorage::PROPSPEC]) -> ::windows::core::Result +pub unsafe fn SHPropStgReadMultiple<'a, P0>(pps: P0, ucodepage: u32, cpspec: u32, rgpspec: *const super::super::super::System::Com::StructuredStorage::PROPSPEC, rgvar: *mut super::super::super::System::Com::StructuredStorage::PROPVARIANT) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, super::super::super::System::Com::StructuredStorage::IPropertyStorage>>, { @@ -5860,8 +5860,7 @@ where extern "system" { fn SHPropStgReadMultiple(pps: *mut ::core::ffi::c_void, ucodepage: u32, cpspec: u32, rgpspec: *const super::super::super::System::Com::StructuredStorage::PROPSPEC, rgvar: *mut super::super::super::System::Com::StructuredStorage::PROPVARIANT) -> ::windows::core::HRESULT; } - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - SHPropStgReadMultiple(pps.into().abi(), ucodepage, rgpspec.len() as _, ::core::mem::transmute(rgpspec.as_ptr()), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + SHPropStgReadMultiple(pps.into().abi(), ucodepage, ::core::mem::transmute(cpspec), ::core::mem::transmute(rgpspec), ::core::mem::transmute(rgvar)).ok() } #[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`, `\"Win32_Foundation\"`, `\"Win32_System_Com_StructuredStorage\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com_StructuredStorage"))] diff --git a/crates/libs/windows/src/Windows/Win32/UI/Shell/impl.rs b/crates/libs/windows/src/Windows/Win32/UI/Shell/impl.rs index 961564edbf..385db4addf 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/Shell/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/Shell/impl.rs @@ -5024,8 +5024,8 @@ pub trait IDesktopWallpaper_Impl: Sized { fn GetMonitorDevicePathAt(&self, monitorindex: u32) -> ::windows::core::Result<::windows::core::PWSTR>; fn GetMonitorDevicePathCount(&self) -> ::windows::core::Result; fn GetMonitorRECT(&self, monitorid: &::windows::core::PCWSTR) -> ::windows::core::Result; - fn SetBackgroundColor(&self, color: u32) -> ::windows::core::Result<()>; - fn GetBackgroundColor(&self) -> ::windows::core::Result; + fn SetBackgroundColor(&self, color: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; + fn GetBackgroundColor(&self) -> ::windows::core::Result; fn SetPosition(&self, position: DESKTOP_WALLPAPER_POSITION) -> ::windows::core::Result<()>; fn GetPosition(&self) -> ::windows::core::Result; fn SetSlideshow(&self, items: &::core::option::Option) -> ::windows::core::Result<()>; @@ -5090,12 +5090,12 @@ impl IDesktopWallpaper_Vtbl { ::core::result::Result::Err(err) => err.into(), } } - unsafe extern "system" fn SetBackgroundColor, Impl: IDesktopWallpaper_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, color: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetBackgroundColor, Impl: IDesktopWallpaper_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, color: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetBackgroundColor(::core::mem::transmute_copy(&color)).into() } - unsafe extern "system" fn GetBackgroundColor, Impl: IDesktopWallpaper_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, color: *mut u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetBackgroundColor, Impl: IDesktopWallpaper_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, color: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetBackgroundColor() { @@ -5746,10 +5746,10 @@ impl IEnumHLITEM_Vtbl { } #[cfg(feature = "Win32_UI_Shell_Common")] pub trait IEnumIDList_Impl: Sized { - fn Next(&self, celt: u32, rgelt: *mut *mut Common::ITEMIDLIST, pceltfetched: *mut u32) -> ::windows::core::Result<()>; - fn Skip(&self, celt: u32) -> ::windows::core::Result<()>; - fn Reset(&self) -> ::windows::core::Result<()>; - fn Clone(&self) -> ::windows::core::Result; + fn Next(&self, celt: u32, rgelt: *mut *mut Common::ITEMIDLIST, pceltfetched: *mut u32) -> ::windows::core::HRESULT; + fn Skip(&self, celt: u32) -> ::windows::core::HRESULT; + fn Reset(&self) -> ::windows::core::HRESULT; + fn Clone(&self, ppenum: *mut ::core::option::Option) -> ::windows::core::HRESULT; } #[cfg(feature = "Win32_UI_Shell_Common")] impl ::windows::core::RuntimeName for IEnumIDList {} @@ -5759,28 +5759,22 @@ impl IEnumIDList_Vtbl { unsafe extern "system" fn Next, Impl: IEnumIDList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, celt: u32, rgelt: *mut *mut Common::ITEMIDLIST, pceltfetched: *mut u32) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); - this.Next(::core::mem::transmute_copy(&celt), ::core::mem::transmute_copy(&rgelt), ::core::mem::transmute_copy(&pceltfetched)).into() + this.Next(::core::mem::transmute_copy(&celt), ::core::mem::transmute_copy(&rgelt), ::core::mem::transmute_copy(&pceltfetched)) } unsafe extern "system" fn Skip, Impl: IEnumIDList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, celt: u32) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); - this.Skip(::core::mem::transmute_copy(&celt)).into() + this.Skip(::core::mem::transmute_copy(&celt)) } unsafe extern "system" fn Reset, Impl: IEnumIDList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); - this.Reset().into() + this.Reset() } unsafe extern "system" fn Clone, Impl: IEnumIDList_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, ppenum: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); - match this.Clone() { - ::core::result::Result::Ok(ok__) => { - ::core::ptr::write(ppenum, ::core::mem::transmute(ok__)); - ::windows::core::HRESULT(0) - } - ::core::result::Result::Err(err) => err.into(), - } + this.Clone(::core::mem::transmute_copy(&ppenum)) } Self { base__: ::windows::core::IUnknownVtbl::new::(), @@ -10825,7 +10819,7 @@ impl INameSpaceTreeControl2_Vtbl { pub trait INameSpaceTreeControlCustomDraw_Impl: Sized { fn PrePaint(&self, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT) -> ::windows::core::Result; fn PostPaint(&self, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT) -> ::windows::core::Result<()>; - fn ItemPrePaint(&self, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT, pnstccditem: *const NSTCCUSTOMDRAW, pclrtext: *mut u32, pclrtextbk: *mut u32, plres: *mut super::super::Foundation::LRESULT) -> ::windows::core::Result<()>; + fn ItemPrePaint(&self, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT, pnstccditem: *const NSTCCUSTOMDRAW, pclrtext: *mut super::super::Foundation::COLORREF, pclrtextbk: *mut super::super::Foundation::COLORREF, plres: *mut super::super::Foundation::LRESULT) -> ::windows::core::Result<()>; fn ItemPostPaint(&self, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT, pnstccditem: *const NSTCCUSTOMDRAW) -> ::windows::core::Result<()>; } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_Controls"))] @@ -10849,7 +10843,7 @@ impl INameSpaceTreeControlCustomDraw_Vtbl { let this = (*this).get_impl(); this.PostPaint(::core::mem::transmute_copy(&hdc), ::core::mem::transmute_copy(&prc)).into() } - unsafe extern "system" fn ItemPrePaint, Impl: INameSpaceTreeControlCustomDraw_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT, pnstccditem: *const NSTCCUSTOMDRAW, pclrtext: *mut u32, pclrtextbk: *mut u32, plres: *mut super::super::Foundation::LRESULT) -> ::windows::core::HRESULT { + unsafe extern "system" fn ItemPrePaint, Impl: INameSpaceTreeControlCustomDraw_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT, pnstccditem: *const NSTCCUSTOMDRAW, pclrtext: *mut super::super::Foundation::COLORREF, pclrtextbk: *mut super::super::Foundation::COLORREF, plres: *mut super::super::Foundation::LRESULT) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.ItemPrePaint(::core::mem::transmute_copy(&hdc), ::core::mem::transmute_copy(&prc), ::core::mem::transmute_copy(&pnstccditem), ::core::mem::transmute_copy(&pclrtext), ::core::mem::transmute_copy(&pclrtextbk), ::core::mem::transmute_copy(&plres)).into() @@ -12310,18 +12304,18 @@ impl IPreviewHandlerFrame_Vtbl { iid == &::IID } } -#[cfg(feature = "Win32_Graphics_Gdi")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub trait IPreviewHandlerVisuals_Impl: Sized { - fn SetBackgroundColor(&self, color: u32) -> ::windows::core::Result<()>; + fn SetBackgroundColor(&self, color: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; fn SetFont(&self, plf: *const super::super::Graphics::Gdi::LOGFONTW) -> ::windows::core::Result<()>; - fn SetTextColor(&self, color: u32) -> ::windows::core::Result<()>; + fn SetTextColor(&self, color: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; } -#[cfg(feature = "Win32_Graphics_Gdi")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl ::windows::core::RuntimeName for IPreviewHandlerVisuals {} -#[cfg(feature = "Win32_Graphics_Gdi")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl IPreviewHandlerVisuals_Vtbl { pub const fn new, Impl: IPreviewHandlerVisuals_Impl, const OFFSET: isize>() -> IPreviewHandlerVisuals_Vtbl { - unsafe extern "system" fn SetBackgroundColor, Impl: IPreviewHandlerVisuals_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, color: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetBackgroundColor, Impl: IPreviewHandlerVisuals_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, color: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetBackgroundColor(::core::mem::transmute_copy(&color)).into() @@ -12331,7 +12325,7 @@ impl IPreviewHandlerVisuals_Vtbl { let this = (*this).get_impl(); this.SetFont(::core::mem::transmute_copy(&plf)).into() } - unsafe extern "system" fn SetTextColor, Impl: IPreviewHandlerVisuals_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, color: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetTextColor, Impl: IPreviewHandlerVisuals_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, color: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetTextColor(::core::mem::transmute_copy(&color)).into() @@ -14437,8 +14431,8 @@ pub trait IShellFolder_Impl: Sized { fn CreateViewObject(&self, hwndowner: super::super::Foundation::HWND, riid: *const ::windows::core::GUID, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()>; fn GetAttributesOf(&self, cidl: u32, apidl: *const *const Common::ITEMIDLIST, rgfinout: *mut u32) -> ::windows::core::Result<()>; fn GetUIObjectOf(&self, hwndowner: super::super::Foundation::HWND, cidl: u32, apidl: *const *const Common::ITEMIDLIST, riid: *const ::windows::core::GUID, rgfreserved: *mut u32, ppv: *mut *mut ::core::ffi::c_void) -> ::windows::core::Result<()>; - fn GetDisplayNameOf(&self, pidl: *const Common::ITEMIDLIST, uflags: u32) -> ::windows::core::Result; - fn SetNameOf(&self, hwnd: super::super::Foundation::HWND, pidl: *const Common::ITEMIDLIST, pszname: &::windows::core::PCWSTR, uflags: u32) -> ::windows::core::Result<*mut Common::ITEMIDLIST>; + fn GetDisplayNameOf(&self, pidl: *const Common::ITEMIDLIST, uflags: SHGDNF) -> ::windows::core::Result; + fn SetNameOf(&self, hwnd: super::super::Foundation::HWND, pidl: *const Common::ITEMIDLIST, pszname: &::windows::core::PCWSTR, uflags: SHGDNF) -> ::windows::core::Result<*mut Common::ITEMIDLIST>; } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))] impl ::windows::core::RuntimeName for IShellFolder {} @@ -14485,7 +14479,7 @@ impl IShellFolder_Vtbl { let this = (*this).get_impl(); this.GetUIObjectOf(::core::mem::transmute_copy(&hwndowner), ::core::mem::transmute_copy(&cidl), ::core::mem::transmute_copy(&apidl), ::core::mem::transmute_copy(&riid), ::core::mem::transmute_copy(&rgfreserved), ::core::mem::transmute_copy(&ppv)).into() } - unsafe extern "system" fn GetDisplayNameOf, Impl: IShellFolder_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, uflags: u32, pname: *mut Common::STRRET) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetDisplayNameOf, Impl: IShellFolder_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, uflags: SHGDNF, pname: *mut Common::STRRET) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetDisplayNameOf(::core::mem::transmute_copy(&pidl), ::core::mem::transmute_copy(&uflags)) { @@ -14496,7 +14490,7 @@ impl IShellFolder_Vtbl { ::core::result::Result::Err(err) => err.into(), } } - unsafe extern "system" fn SetNameOf, Impl: IShellFolder_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, pidl: *const Common::ITEMIDLIST, pszname: ::windows::core::PCWSTR, uflags: u32, ppidlout: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetNameOf, Impl: IShellFolder_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, pidl: *const Common::ITEMIDLIST, pszname: ::windows::core::PCWSTR, uflags: SHGDNF, ppidlout: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.SetNameOf(::core::mem::transmute_copy(&hwnd), ::core::mem::transmute_copy(&pidl), ::core::mem::transmute(&pszname), ::core::mem::transmute_copy(&uflags)) { @@ -14626,15 +14620,15 @@ impl IShellFolder2_Vtbl { iid == &::IID || iid == &::IID } } -#[cfg(feature = "Win32_UI_Shell_Common")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] pub trait IShellFolderBand_Impl: Sized { fn InitializeSFB(&self, psf: &::core::option::Option, pidl: *const Common::ITEMIDLIST) -> ::windows::core::Result<()>; fn SetBandInfoSFB(&self, pbi: *const BANDINFOSFB) -> ::windows::core::Result<()>; fn GetBandInfoSFB(&self, pbi: *mut BANDINFOSFB) -> ::windows::core::Result<()>; } -#[cfg(feature = "Win32_UI_Shell_Common")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] impl ::windows::core::RuntimeName for IShellFolderBand {} -#[cfg(feature = "Win32_UI_Shell_Common")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] impl IShellFolderBand_Vtbl { pub const fn new, Impl: IShellFolderBand_Impl, const OFFSET: isize>() -> IShellFolderBand_Vtbl { unsafe extern "system" fn InitializeSFB, Impl: IShellFolderBand_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, psf: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT { @@ -22096,8 +22090,8 @@ impl IVirtualDesktopManager_Vtbl { #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] pub trait IVisualProperties_Impl: Sized { fn SetWatermark(&self, hbmp: super::super::Graphics::Gdi::HBITMAP, vpwf: VPWATERMARKFLAGS) -> ::windows::core::Result<()>; - fn SetColor(&self, vpcf: VPCOLORFLAGS, cr: u32) -> ::windows::core::Result<()>; - fn GetColor(&self, vpcf: VPCOLORFLAGS) -> ::windows::core::Result; + fn SetColor(&self, vpcf: VPCOLORFLAGS, cr: super::super::Foundation::COLORREF) -> ::windows::core::Result<()>; + fn GetColor(&self, vpcf: VPCOLORFLAGS) -> ::windows::core::Result; fn SetItemHeight(&self, cyiteminpixels: i32) -> ::windows::core::Result<()>; fn GetItemHeight(&self) -> ::windows::core::Result; fn SetFont(&self, plf: *const super::super::Graphics::Gdi::LOGFONTW, bredraw: super::super::Foundation::BOOL) -> ::windows::core::Result<()>; @@ -22114,12 +22108,12 @@ impl IVisualProperties_Vtbl { let this = (*this).get_impl(); this.SetWatermark(::core::mem::transmute_copy(&hbmp), ::core::mem::transmute_copy(&vpwf)).into() } - unsafe extern "system" fn SetColor, Impl: IVisualProperties_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, vpcf: VPCOLORFLAGS, cr: u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn SetColor, Impl: IVisualProperties_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, vpcf: VPCOLORFLAGS, cr: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); this.SetColor(::core::mem::transmute_copy(&vpcf), ::core::mem::transmute_copy(&cr)).into() } - unsafe extern "system" fn GetColor, Impl: IVisualProperties_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, vpcf: VPCOLORFLAGS, pcr: *mut u32) -> ::windows::core::HRESULT { + unsafe extern "system" fn GetColor, Impl: IVisualProperties_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, vpcf: VPCOLORFLAGS, pcr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT { let this = (this as *const *const ()).offset(OFFSET) as *const Identity; let this = (*this).get_impl(); match this.GetColor(::core::mem::transmute_copy(&vpcf)) { diff --git a/crates/libs/windows/src/Windows/Win32/UI/Shell/mod.rs b/crates/libs/windows/src/Windows/Win32/UI/Shell/mod.rs index f8d2e9f51b..677e3222c7 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/Shell/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/Shell/mod.rs @@ -1573,21 +1573,21 @@ where } pub const AttachmentServices: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4125dd96_e03a_4103_8f70_e0597d803b9c); #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_Common\"`*"] -#[cfg(feature = "Win32_UI_Shell_Common")] +#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] pub struct BANDINFOSFB { pub dwMask: u32, pub dwStateMask: u32, pub dwState: u32, - pub crBkgnd: u32, - pub crBtnLt: u32, - pub crBtnDk: u32, + pub crBkgnd: super::super::Foundation::COLORREF, + pub crBtnLt: super::super::Foundation::COLORREF, + pub crBtnDk: super::super::Foundation::COLORREF, pub wViewMode: u16, pub wAlign: u16, pub psf: ::core::option::Option, pub pidl: *mut Common::ITEMIDLIST, } -#[cfg(feature = "Win32_UI_Shell_Common")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] impl ::core::clone::Clone for BANDINFOSFB { fn clone(&self) -> Self { Self { @@ -1604,25 +1604,25 @@ impl ::core::clone::Clone for BANDINFOSFB { } } } -#[cfg(feature = "Win32_UI_Shell_Common")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] impl ::core::fmt::Debug for BANDINFOSFB { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("BANDINFOSFB").field("dwMask", &self.dwMask).field("dwStateMask", &self.dwStateMask).field("dwState", &self.dwState).field("crBkgnd", &self.crBkgnd).field("crBtnLt", &self.crBtnLt).field("crBtnDk", &self.crBtnDk).field("wViewMode", &self.wViewMode).field("wAlign", &self.wAlign).field("psf", &self.psf).field("pidl", &self.pidl).finish() } } -#[cfg(feature = "Win32_UI_Shell_Common")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] unsafe impl ::windows::core::Abi for BANDINFOSFB { type Abi = ::core::mem::ManuallyDrop; } -#[cfg(feature = "Win32_UI_Shell_Common")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] impl ::core::cmp::PartialEq for BANDINFOSFB { fn eq(&self, other: &Self) -> bool { self.dwMask == other.dwMask && self.dwStateMask == other.dwStateMask && self.dwState == other.dwState && self.crBkgnd == other.crBkgnd && self.crBtnLt == other.crBtnLt && self.crBtnDk == other.crBtnDk && self.wViewMode == other.wViewMode && self.wAlign == other.wAlign && self.psf == other.psf && self.pidl == other.pidl } } -#[cfg(feature = "Win32_UI_Shell_Common")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] impl ::core::cmp::Eq for BANDINFOSFB {} -#[cfg(feature = "Win32_UI_Shell_Common")] +#[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] impl ::core::default::Default for BANDINFOSFB { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -4299,33 +4299,39 @@ pub unsafe fn ChrCmpIW(w1: u16, w2: u16) -> super::super::Foundation::BOOL { #[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn ColorAdjustLuma<'a, P0>(clrrgb: u32, n: i32, fscale: P0) -> u32 +pub unsafe fn ColorAdjustLuma<'a, P0, P1>(clrrgb: P0, n: i32, fscale: P1) -> super::super::Foundation::COLORREF where - P0: ::std::convert::Into, + P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ColorAdjustLuma(clrrgb: u32, n: i32, fscale: super::super::Foundation::BOOL) -> u32; + fn ColorAdjustLuma(clrrgb: super::super::Foundation::COLORREF, n: i32, fscale: super::super::Foundation::BOOL) -> super::super::Foundation::COLORREF; } - ColorAdjustLuma(clrrgb, n, fscale.into()) + ColorAdjustLuma(clrrgb.into(), n, fscale.into()) } -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn ColorHLSToRGB(whue: u16, wluminance: u16, wsaturation: u16) -> u32 { +pub unsafe fn ColorHLSToRGB(whue: u16, wluminance: u16, wsaturation: u16) -> super::super::Foundation::COLORREF { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ColorHLSToRGB(whue: u16, wluminance: u16, wsaturation: u16) -> u32; + fn ColorHLSToRGB(whue: u16, wluminance: u16, wsaturation: u16) -> super::super::Foundation::COLORREF; } ColorHLSToRGB(whue, wluminance, wsaturation) } -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn ColorRGBToHLS(clrrgb: u32, pwhue: &mut u16, pwluminance: &mut u16, pwsaturation: &mut u16) { +pub unsafe fn ColorRGBToHLS<'a, P0>(clrrgb: P0, pwhue: &mut u16, pwluminance: &mut u16, pwsaturation: &mut u16) +where + P0: ::std::convert::Into, +{ #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn ColorRGBToHLS(clrrgb: u32, pwhue: *mut u16, pwluminance: *mut u16, pwsaturation: *mut u16); + fn ColorRGBToHLS(clrrgb: super::super::Foundation::COLORREF, pwhue: *mut u16, pwluminance: *mut u16, pwsaturation: *mut u16); } - ColorRGBToHLS(clrrgb, ::core::mem::transmute(pwhue), ::core::mem::transmute(pwluminance), ::core::mem::transmute(pwsaturation)) + ColorRGBToHLS(clrrgb.into(), ::core::mem::transmute(pwhue), ::core::mem::transmute(pwluminance), ::core::mem::transmute(pwsaturation)) } #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] #[inline] @@ -4849,7 +4855,7 @@ pub struct DESKBANDINFO { pub ptActual: super::super::Foundation::POINTL, pub wszTitle: [u16; 256], pub dwModeFlags: u32, - pub crBkgnd: u32, + pub crBkgnd: super::super::Foundation::COLORREF, } #[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for DESKBANDINFO {} @@ -7233,6 +7239,34 @@ impl ::core::fmt::Debug for FILEOPENDIALOGOPTIONS { f.debug_tuple("FILEOPENDIALOGOPTIONS").field(&self.0).finish() } } +impl ::core::ops::BitOr for FILEOPENDIALOGOPTIONS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for FILEOPENDIALOGOPTIONS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for FILEOPENDIALOGOPTIONS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for FILEOPENDIALOGOPTIONS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for FILEOPENDIALOGOPTIONS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] @@ -16086,8 +16120,8 @@ impl IColumnProvider { pub unsafe fn Initialize(&self, psci: &SHCOLUMNINIT) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).Initialize)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(psci)).ok() } - #[doc = "*Required features: `\"Win32_UI_Shell_PropertiesSystem\"`*"] - #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] + #[doc = "*Required features: `\"Win32_System_Com\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"] + #[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))] pub unsafe fn GetColumnInfo(&self, dwindex: u32) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); (::windows::core::Interface::vtable(self).GetColumnInfo)(::windows::core::Interface::as_raw(self), dwindex, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) @@ -16139,9 +16173,9 @@ unsafe impl ::windows::core::Interface for IColumnProvider { pub struct IColumnProvider_Vtbl { pub base__: ::windows::core::IUnknownVtbl, pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psci: *const SHCOLUMNINIT) -> ::windows::core::HRESULT, - #[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] + #[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))] pub GetColumnInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, dwindex: u32, psci: *mut SHCOLUMNINFO) -> ::windows::core::HRESULT, - #[cfg(not(feature = "Win32_UI_Shell_PropertiesSystem"))] + #[cfg(not(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem")))] GetColumnInfo: usize, #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole", feature = "Win32_UI_Shell_PropertiesSystem"))] pub GetItemData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pscid: *const PropertiesSystem::PROPERTYKEY, pscd: *const SHCOLUMNDATA, pvardata: *mut super::super::System::Com::VARIANT) -> ::windows::core::HRESULT, @@ -19865,12 +19899,19 @@ impl IDesktopWallpaper { let mut result__ = ::core::mem::MaybeUninit::zeroed(); (::windows::core::Interface::vtable(self).GetMonitorRECT)(::windows::core::Interface::as_raw(self), monitorid.into(), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } - pub unsafe fn SetBackgroundColor(&self, color: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetBackgroundColor)(::windows::core::Interface::as_raw(self), color).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetBackgroundColor<'a, P0>(&self, color: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).SetBackgroundColor)(::windows::core::Interface::as_raw(self), color.into()).ok() } - pub unsafe fn GetBackgroundColor(&self) -> ::windows::core::Result { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetBackgroundColor(&self) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetBackgroundColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).GetBackgroundColor)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } pub unsafe fn SetPosition(&self, position: DESKTOP_WALLPAPER_POSITION) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).SetPosition)(::windows::core::Interface::as_raw(self), position).ok() @@ -19961,8 +20002,14 @@ pub struct IDesktopWallpaper_Vtbl { pub GetMonitorRECT: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, monitorid: ::windows::core::PCWSTR, displayrect: *mut super::super::Foundation::RECT) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Foundation"))] GetMonitorRECT: usize, - pub SetBackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, color: u32) -> ::windows::core::HRESULT, - pub GetBackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, color: *mut u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub SetBackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, color: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetBackgroundColor: usize, + #[cfg(feature = "Win32_Foundation")] + pub GetBackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, color: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetBackgroundColor: usize, pub SetPosition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, position: DESKTOP_WALLPAPER_POSITION) -> ::windows::core::HRESULT, pub GetPosition: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, position: *mut DESKTOP_WALLPAPER_POSITION) -> ::windows::core::HRESULT, pub SetSlideshow: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, items: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, @@ -21307,18 +21354,17 @@ pub struct IEnumIDList(::windows::core::IUnknown); impl IEnumIDList { #[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"] #[cfg(feature = "Win32_UI_Shell_Common")] - pub unsafe fn Next(&self, rgelt: &mut [*mut Common::ITEMIDLIST], pceltfetched: ::core::option::Option<&mut u32>) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).Next)(::windows::core::Interface::as_raw(self), rgelt.len() as _, ::core::mem::transmute(rgelt.as_ptr()), ::core::mem::transmute(pceltfetched)).ok() + pub unsafe fn Next(&self, rgelt: &mut [*mut Common::ITEMIDLIST], pceltfetched: ::core::option::Option<&mut u32>) -> ::windows::core::HRESULT { + (::windows::core::Interface::vtable(self).Next)(::windows::core::Interface::as_raw(self), rgelt.len() as _, ::core::mem::transmute(rgelt.as_ptr()), ::core::mem::transmute(pceltfetched)) } - pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).Skip)(::windows::core::Interface::as_raw(self), celt).ok() + pub unsafe fn Skip(&self, celt: u32) -> ::windows::core::HRESULT { + (::windows::core::Interface::vtable(self).Skip)(::windows::core::Interface::as_raw(self), celt) } - pub unsafe fn Reset(&self) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).Reset)(::windows::core::Interface::as_raw(self)).ok() + pub unsafe fn Reset(&self) -> ::windows::core::HRESULT { + (::windows::core::Interface::vtable(self).Reset)(::windows::core::Interface::as_raw(self)) } - pub unsafe fn Clone(&self) -> ::windows::core::Result { - let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).Clone)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + pub unsafe fn Clone(&self, ppenum: &mut ::core::option::Option) -> ::windows::core::HRESULT { + (::windows::core::Interface::vtable(self).Clone)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(ppenum)) } } impl ::core::convert::From for ::windows::core::IUnknown { @@ -30061,7 +30107,7 @@ impl INameSpaceTreeControlCustomDraw { } #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`, `\"Win32_UI_Controls\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_Controls"))] - pub unsafe fn ItemPrePaint<'a, P0>(&self, hdc: P0, prc: &super::super::Foundation::RECT, pnstccditem: &NSTCCUSTOMDRAW, pclrtext: &mut u32, pclrtextbk: &mut u32, plres: &mut super::super::Foundation::LRESULT) -> ::windows::core::Result<()> + pub unsafe fn ItemPrePaint<'a, P0>(&self, hdc: P0, prc: &super::super::Foundation::RECT, pnstccditem: &NSTCCUSTOMDRAW, pclrtext: &mut super::super::Foundation::COLORREF, pclrtextbk: &mut super::super::Foundation::COLORREF, plres: &mut super::super::Foundation::LRESULT) -> ::windows::core::Result<()> where P0: ::std::convert::Into, { @@ -30124,7 +30170,7 @@ pub struct INameSpaceTreeControlCustomDraw_Vtbl { #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi")))] PostPaint: usize, #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_Controls"))] - pub ItemPrePaint: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT, pnstccditem: *const NSTCCUSTOMDRAW, pclrtext: *mut u32, pclrtextbk: *mut u32, plres: *mut super::super::Foundation::LRESULT) -> ::windows::core::HRESULT, + pub ItemPrePaint: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hdc: super::super::Graphics::Gdi::HDC, prc: *const super::super::Foundation::RECT, pnstccditem: *const NSTCCUSTOMDRAW, pclrtext: *mut super::super::Foundation::COLORREF, pclrtextbk: *mut super::super::Foundation::COLORREF, plres: *mut super::super::Foundation::LRESULT) -> ::windows::core::HRESULT, #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_Controls")))] ItemPrePaint: usize, #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi", feature = "Win32_UI_Controls"))] @@ -33119,16 +33165,26 @@ pub struct IPreviewHandlerFrame_Vtbl { #[repr(transparent)] pub struct IPreviewHandlerVisuals(::windows::core::IUnknown); impl IPreviewHandlerVisuals { - pub unsafe fn SetBackgroundColor(&self, color: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetBackgroundColor)(::windows::core::Interface::as_raw(self), color).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetBackgroundColor<'a, P0>(&self, color: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).SetBackgroundColor)(::windows::core::Interface::as_raw(self), color.into()).ok() } #[doc = "*Required features: `\"Win32_Graphics_Gdi\"`*"] #[cfg(feature = "Win32_Graphics_Gdi")] pub unsafe fn SetFont(&self, plf: &super::super::Graphics::Gdi::LOGFONTW) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).SetFont)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(plf)).ok() } - pub unsafe fn SetTextColor(&self, color: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetTextColor)(::windows::core::Interface::as_raw(self), color).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetTextColor<'a, P0>(&self, color: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).SetTextColor)(::windows::core::Interface::as_raw(self), color.into()).ok() } } impl ::core::convert::From for ::windows::core::IUnknown { @@ -33170,12 +33226,18 @@ unsafe impl ::windows::core::Interface for IPreviewHandlerVisuals { #[doc(hidden)] pub struct IPreviewHandlerVisuals_Vtbl { pub base__: ::windows::core::IUnknownVtbl, - pub SetBackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, color: u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub SetBackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, color: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetBackgroundColor: usize, #[cfg(feature = "Win32_Graphics_Gdi")] pub SetFont: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plf: *const super::super::Graphics::Gdi::LOGFONTW) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Graphics_Gdi"))] SetFont: usize, - pub SetTextColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, color: u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub SetTextColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, color: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetTextColor: usize, } #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] #[repr(transparent)] @@ -38057,13 +38119,13 @@ impl IShellFolder { } #[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"] #[cfg(feature = "Win32_UI_Shell_Common")] - pub unsafe fn GetDisplayNameOf(&self, pidl: &Common::ITEMIDLIST, uflags: u32) -> ::windows::core::Result { + pub unsafe fn GetDisplayNameOf(&self, pidl: &Common::ITEMIDLIST, uflags: SHGDNF) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); (::windows::core::Interface::vtable(self).GetDisplayNameOf)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pidl), uflags, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] - pub unsafe fn SetNameOf<'a, P0, P1>(&self, hwnd: P0, pidl: &Common::ITEMIDLIST, pszname: P1, uflags: u32) -> ::windows::core::Result<*mut Common::ITEMIDLIST> + pub unsafe fn SetNameOf<'a, P0, P1>(&self, hwnd: P0, pidl: &Common::ITEMIDLIST, pszname: P1, uflags: SHGDNF) -> ::windows::core::Result<*mut Common::ITEMIDLIST> where P0: ::std::convert::Into, P1: ::std::convert::Into<::windows::core::PCWSTR>, @@ -38144,11 +38206,11 @@ pub struct IShellFolder_Vtbl { #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))] GetUIObjectOf: usize, #[cfg(feature = "Win32_UI_Shell_Common")] - pub GetDisplayNameOf: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, uflags: u32, pname: *mut Common::STRRET) -> ::windows::core::HRESULT, + pub GetDisplayNameOf: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST, uflags: SHGDNF, pname: *mut Common::STRRET) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_UI_Shell_Common"))] GetDisplayNameOf: usize, #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] - pub SetNameOf: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, pidl: *const Common::ITEMIDLIST, pszname: ::windows::core::PCWSTR, uflags: u32, ppidlout: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT, + pub SetNameOf: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hwnd: super::super::Foundation::HWND, pidl: *const Common::ITEMIDLIST, pszname: ::windows::core::PCWSTR, uflags: SHGDNF, ppidlout: *mut *mut Common::ITEMIDLIST) -> ::windows::core::HRESULT, #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))] SetNameOf: usize, } @@ -38229,13 +38291,13 @@ impl IShellFolder2 { } #[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"] #[cfg(feature = "Win32_UI_Shell_Common")] - pub unsafe fn GetDisplayNameOf(&self, pidl: &Common::ITEMIDLIST, uflags: u32) -> ::windows::core::Result { + pub unsafe fn GetDisplayNameOf(&self, pidl: &Common::ITEMIDLIST, uflags: SHGDNF) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); (::windows::core::Interface::vtable(self).base__.GetDisplayNameOf)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pidl), uflags, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] - pub unsafe fn SetNameOf<'a, P0, P1>(&self, hwnd: P0, pidl: &Common::ITEMIDLIST, pszname: P1, uflags: u32) -> ::windows::core::Result<*mut Common::ITEMIDLIST> + pub unsafe fn SetNameOf<'a, P0, P1>(&self, hwnd: P0, pidl: &Common::ITEMIDLIST, pszname: P1, uflags: SHGDNF) -> ::windows::core::Result<*mut Common::ITEMIDLIST> where P0: ::std::convert::Into, P1: ::std::convert::Into<::windows::core::PCWSTR>, @@ -38360,13 +38422,13 @@ impl IShellFolderBand { { (::windows::core::Interface::vtable(self).InitializeSFB)(::windows::core::Interface::as_raw(self), psf.into().abi(), ::core::mem::transmute(pidl)).ok() } - #[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"] - #[cfg(feature = "Win32_UI_Shell_Common")] + #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] pub unsafe fn SetBandInfoSFB(&self, pbi: &BANDINFOSFB) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).SetBandInfoSFB)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pbi)).ok() } - #[doc = "*Required features: `\"Win32_UI_Shell_Common\"`*"] - #[cfg(feature = "Win32_UI_Shell_Common")] + #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_UI_Shell_Common\"`*"] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] pub unsafe fn GetBandInfoSFB(&self, pbi: &mut BANDINFOSFB) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetBandInfoSFB)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pbi)).ok() } @@ -38414,13 +38476,13 @@ pub struct IShellFolderBand_Vtbl { pub InitializeSFB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, psf: *mut ::core::ffi::c_void, pidl: *const Common::ITEMIDLIST) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_UI_Shell_Common"))] InitializeSFB: usize, - #[cfg(feature = "Win32_UI_Shell_Common")] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] pub SetBandInfoSFB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbi: *const BANDINFOSFB) -> ::windows::core::HRESULT, - #[cfg(not(feature = "Win32_UI_Shell_Common"))] + #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))] SetBandInfoSFB: usize, - #[cfg(feature = "Win32_UI_Shell_Common")] + #[cfg(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common"))] pub GetBandInfoSFB: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbi: *mut BANDINFOSFB) -> ::windows::core::HRESULT, - #[cfg(not(feature = "Win32_UI_Shell_Common"))] + #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_UI_Shell_Common")))] GetBandInfoSFB: usize, } #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] @@ -48443,7 +48505,7 @@ where #[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`*"] #[cfg(feature = "Win32_System_Com")] #[inline] -pub unsafe fn IStream_Read<'a, P0>(pstm: P0, pv: *mut ::core::ffi::c_void, cb: u32) -> ::windows::core::Result<()> +pub unsafe fn IStream_Read<'a, P0>(pstm: P0, pv: &mut [u8]) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::InParam<'a, super::super::System::Com::IStream>>, { @@ -48451,7 +48513,7 @@ where extern "system" { fn IStream_Read(pstm: *mut ::core::ffi::c_void, pv: *mut ::core::ffi::c_void, cb: u32) -> ::windows::core::HRESULT; } - IStream_Read(pstm.into().abi(), ::core::mem::transmute(pv), cb).ok() + IStream_Read(pstm.into().abi(), ::core::mem::transmute(pv.as_ptr()), pv.len() as _).ok() } #[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_Common\"`*"] #[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_Common"))] @@ -54033,12 +54095,19 @@ impl IVisualProperties { { (::windows::core::Interface::vtable(self).SetWatermark)(::windows::core::Interface::as_raw(self), hbmp.into(), vpwf).ok() } - pub unsafe fn SetColor(&self, vpcf: VPCOLORFLAGS, cr: u32) -> ::windows::core::Result<()> { - (::windows::core::Interface::vtable(self).SetColor)(::windows::core::Interface::as_raw(self), vpcf, cr).ok() + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn SetColor<'a, P0>(&self, vpcf: VPCOLORFLAGS, cr: P0) -> ::windows::core::Result<()> + where + P0: ::std::convert::Into, + { + (::windows::core::Interface::vtable(self).SetColor)(::windows::core::Interface::as_raw(self), vpcf, cr.into()).ok() } - pub unsafe fn GetColor(&self, vpcf: VPCOLORFLAGS) -> ::windows::core::Result { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] + pub unsafe fn GetColor(&self, vpcf: VPCOLORFLAGS) -> ::windows::core::Result { let mut result__ = ::core::mem::MaybeUninit::zeroed(); - (::windows::core::Interface::vtable(self).GetColor)(::windows::core::Interface::as_raw(self), vpcf, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) + (::windows::core::Interface::vtable(self).GetColor)(::windows::core::Interface::as_raw(self), vpcf, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::(result__) } pub unsafe fn SetItemHeight(&self, cyiteminpixels: i32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).SetItemHeight)(::windows::core::Interface::as_raw(self), cyiteminpixels).ok() @@ -54112,8 +54181,14 @@ pub struct IVisualProperties_Vtbl { pub SetWatermark: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hbmp: super::super::Graphics::Gdi::HBITMAP, vpwf: VPWATERMARKFLAGS) -> ::windows::core::HRESULT, #[cfg(not(feature = "Win32_Graphics_Gdi"))] SetWatermark: usize, - pub SetColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vpcf: VPCOLORFLAGS, cr: u32) -> ::windows::core::HRESULT, - pub GetColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vpcf: VPCOLORFLAGS, pcr: *mut u32) -> ::windows::core::HRESULT, + #[cfg(feature = "Win32_Foundation")] + pub SetColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vpcf: VPCOLORFLAGS, cr: super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetColor: usize, + #[cfg(feature = "Win32_Foundation")] + pub GetColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vpcf: VPCOLORFLAGS, pcr: *mut super::super::Foundation::COLORREF) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetColor: usize, pub SetItemHeight: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cyiteminpixels: i32) -> ::windows::core::HRESULT, pub GetItemHeight: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, cyiteminpixels: *mut i32) -> ::windows::core::HRESULT, #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] @@ -57489,7 +57564,7 @@ pub struct NT_CONSOLE_PROPS { pub uHistoryBufferSize: u32, pub uNumberOfHistoryBuffers: u32, pub bHistoryNoDup: super::super::Foundation::BOOL, - pub ColorTable: [u32; 16], + pub ColorTable: [super::super::Foundation::COLORREF; 16], } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Console"))] impl ::core::marker::Copy for NT_CONSOLE_PROPS {} @@ -58212,23 +58287,23 @@ pub const PATHCCH_MAX_CCH: u32 = 32768u32; #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct PATHCCH_OPTIONS(pub i32); +pub struct PATHCCH_OPTIONS(pub u32); #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_NONE: PATHCCH_OPTIONS = PATHCCH_OPTIONS(0i32); +pub const PATHCCH_NONE: PATHCCH_OPTIONS = PATHCCH_OPTIONS(0u32); #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_ALLOW_LONG_PATHS: PATHCCH_OPTIONS = PATHCCH_OPTIONS(1i32); +pub const PATHCCH_ALLOW_LONG_PATHS: PATHCCH_OPTIONS = PATHCCH_OPTIONS(1u32); #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_FORCE_ENABLE_LONG_NAME_PROCESS: PATHCCH_OPTIONS = PATHCCH_OPTIONS(2i32); +pub const PATHCCH_FORCE_ENABLE_LONG_NAME_PROCESS: PATHCCH_OPTIONS = PATHCCH_OPTIONS(2u32); #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_FORCE_DISABLE_LONG_NAME_PROCESS: PATHCCH_OPTIONS = PATHCCH_OPTIONS(4i32); +pub const PATHCCH_FORCE_DISABLE_LONG_NAME_PROCESS: PATHCCH_OPTIONS = PATHCCH_OPTIONS(4u32); #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_DO_NOT_NORMALIZE_SEGMENTS: PATHCCH_OPTIONS = PATHCCH_OPTIONS(8i32); +pub const PATHCCH_DO_NOT_NORMALIZE_SEGMENTS: PATHCCH_OPTIONS = PATHCCH_OPTIONS(8u32); #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_ENSURE_IS_EXTENDED_LENGTH_PATH: PATHCCH_OPTIONS = PATHCCH_OPTIONS(16i32); +pub const PATHCCH_ENSURE_IS_EXTENDED_LENGTH_PATH: PATHCCH_OPTIONS = PATHCCH_OPTIONS(16u32); #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_ENSURE_TRAILING_SLASH: PATHCCH_OPTIONS = PATHCCH_OPTIONS(32i32); +pub const PATHCCH_ENSURE_TRAILING_SLASH: PATHCCH_OPTIONS = PATHCCH_OPTIONS(32u32); #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const PATHCCH_CANONICALIZE_SLASHES: PATHCCH_OPTIONS = PATHCCH_OPTIONS(64i32); +pub const PATHCCH_CANONICALIZE_SLASHES: PATHCCH_OPTIONS = PATHCCH_OPTIONS(64u32); impl ::core::marker::Copy for PATHCCH_OPTIONS {} impl ::core::clone::Clone for PATHCCH_OPTIONS { fn clone(&self) -> Self { @@ -58248,6 +58323,34 @@ impl ::core::fmt::Debug for PATHCCH_OPTIONS { f.debug_tuple("PATHCCH_OPTIONS").field(&self.0).finish() } } +impl ::core::ops::BitOr for PATHCCH_OPTIONS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for PATHCCH_OPTIONS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for PATHCCH_OPTIONS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for PATHCCH_OPTIONS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for PATHCCH_OPTIONS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] @@ -59129,27 +59232,27 @@ where } #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] #[inline] -pub unsafe fn PathAllocCanonicalize<'a, P0>(pszpathin: P0, dwflags: u32) -> ::windows::core::Result<::windows::core::PWSTR> +pub unsafe fn PathAllocCanonicalize<'a, P0>(pszpathin: P0, dwflags: PATHCCH_OPTIONS) -> ::windows::core::Result<::windows::core::PWSTR> where P0: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn PathAllocCanonicalize(pszpathin: ::windows::core::PCWSTR, dwflags: u32, ppszpathout: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT; + fn PathAllocCanonicalize(pszpathin: ::windows::core::PCWSTR, dwflags: PATHCCH_OPTIONS, ppszpathout: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT; } let mut result__ = ::core::mem::MaybeUninit::zeroed(); PathAllocCanonicalize(pszpathin.into(), dwflags, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::<::windows::core::PWSTR>(result__) } #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] #[inline] -pub unsafe fn PathAllocCombine<'a, P0, P1>(pszpathin: P0, pszmore: P1, dwflags: u32) -> ::windows::core::Result<::windows::core::PWSTR> +pub unsafe fn PathAllocCombine<'a, P0, P1>(pszpathin: P0, pszmore: P1, dwflags: PATHCCH_OPTIONS) -> ::windows::core::Result<::windows::core::PWSTR> where P0: ::std::convert::Into<::windows::core::PCWSTR>, P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn PathAllocCombine(pszpathin: ::windows::core::PCWSTR, pszmore: ::windows::core::PCWSTR, dwflags: u32, ppszpathout: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT; + fn PathAllocCombine(pszpathin: ::windows::core::PCWSTR, pszmore: ::windows::core::PCWSTR, dwflags: PATHCCH_OPTIONS, ppszpathout: *mut ::windows::core::PWSTR) -> ::windows::core::HRESULT; } let mut result__ = ::core::mem::MaybeUninit::zeroed(); PathAllocCombine(pszpathin.into(), pszmore.into(), dwflags, ::core::mem::transmute(result__.as_mut_ptr())).from_abi::<::windows::core::PWSTR>(result__) @@ -59268,13 +59371,13 @@ where } #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] #[inline] -pub unsafe fn PathCchAppendEx<'a, P0>(pszpath: &mut [u16], pszmore: P0, dwflags: u32) -> ::windows::core::Result<()> +pub unsafe fn PathCchAppendEx<'a, P0>(pszpath: &mut [u16], pszmore: P0, dwflags: PATHCCH_OPTIONS) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn PathCchAppendEx(pszpath: ::windows::core::PWSTR, cchpath: usize, pszmore: ::windows::core::PCWSTR, dwflags: u32) -> ::windows::core::HRESULT; + fn PathCchAppendEx(pszpath: ::windows::core::PWSTR, cchpath: usize, pszmore: ::windows::core::PCWSTR, dwflags: PATHCCH_OPTIONS) -> ::windows::core::HRESULT; } PathCchAppendEx(::core::mem::transmute(pszpath.as_ptr()), pszpath.len() as _, pszmore.into(), dwflags).ok() } @@ -59292,13 +59395,13 @@ where } #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] #[inline] -pub unsafe fn PathCchCanonicalizeEx<'a, P0>(pszpathout: &mut [u16], pszpathin: P0, dwflags: u32) -> ::windows::core::Result<()> +pub unsafe fn PathCchCanonicalizeEx<'a, P0>(pszpathout: &mut [u16], pszpathin: P0, dwflags: PATHCCH_OPTIONS) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn PathCchCanonicalizeEx(pszpathout: ::windows::core::PWSTR, cchpathout: usize, pszpathin: ::windows::core::PCWSTR, dwflags: u32) -> ::windows::core::HRESULT; + fn PathCchCanonicalizeEx(pszpathout: ::windows::core::PWSTR, cchpathout: usize, pszpathin: ::windows::core::PCWSTR, dwflags: PATHCCH_OPTIONS) -> ::windows::core::HRESULT; } PathCchCanonicalizeEx(::core::mem::transmute(pszpathout.as_ptr()), pszpathout.len() as _, pszpathin.into(), dwflags).ok() } @@ -59317,14 +59420,14 @@ where } #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] #[inline] -pub unsafe fn PathCchCombineEx<'a, P0, P1>(pszpathout: &mut [u16], pszpathin: P0, pszmore: P1, dwflags: u32) -> ::windows::core::Result<()> +pub unsafe fn PathCchCombineEx<'a, P0, P1>(pszpathout: &mut [u16], pszpathin: P0, pszmore: P1, dwflags: PATHCCH_OPTIONS) -> ::windows::core::Result<()> where P0: ::std::convert::Into<::windows::core::PCWSTR>, P1: ::std::convert::Into<::windows::core::PCWSTR>, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn PathCchCombineEx(pszpathout: ::windows::core::PWSTR, cchpathout: usize, pszpathin: ::windows::core::PCWSTR, pszmore: ::windows::core::PCWSTR, dwflags: u32) -> ::windows::core::HRESULT; + fn PathCchCombineEx(pszpathout: ::windows::core::PWSTR, cchpathout: usize, pszpathin: ::windows::core::PCWSTR, pszmore: ::windows::core::PCWSTR, dwflags: PATHCCH_OPTIONS) -> ::windows::core::HRESULT; } PathCchCombineEx(::core::mem::transmute(pszpathout.as_ptr()), pszpathout.len() as _, pszpathin.into(), pszmore.into(), dwflags).ok() } @@ -62220,30 +62323,6 @@ impl ::core::default::Default for SFV_SETITEMPOS { } } #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_AUTOAPPEND_FORCE_OFF: u32 = 2147483648u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_AUTOAPPEND_FORCE_ON: u32 = 1073741824u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_AUTOSUGGEST_FORCE_OFF: u32 = 536870912u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_AUTOSUGGEST_FORCE_ON: u32 = 268435456u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_DEFAULT: u32 = 0u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_FILESYSTEM: u32 = 1u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_FILESYS_DIRS: u32 = 32u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_FILESYS_ONLY: u32 = 16u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_URLHISTORY: u32 = 2u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_URLMRU: u32 = 4u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_USETAB: u32 = 8u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHACF_VIRTUAL_NAMESPACE: u32 = 64u32; -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct SHARD(pub i32); @@ -62496,13 +62575,13 @@ where #[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn SHAutoComplete<'a, P0>(hwndedit: P0, dwflags: u32) -> ::windows::core::Result<()> +pub unsafe fn SHAutoComplete<'a, P0>(hwndedit: P0, dwflags: SHELL_AUTOCOMPLETE_FLAGS) -> ::windows::core::Result<()> where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SHAutoComplete(hwndedit: super::super::Foundation::HWND, dwflags: u32) -> ::windows::core::HRESULT; + fn SHAutoComplete(hwndedit: super::super::Foundation::HWND, dwflags: SHELL_AUTOCOMPLETE_FLAGS) -> ::windows::core::HRESULT; } SHAutoComplete(hwndedit.into(), dwflags).ok() } @@ -62876,38 +62955,38 @@ impl ::core::default::Default for SHCOLUMNDATA { } } #[repr(C, packed(1))] -#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"] -#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] +#[doc = "*Required features: `\"Win32_UI_Shell\"`, `\"Win32_System_Com\"`, `\"Win32_UI_Shell_PropertiesSystem\"`*"] +#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))] pub struct SHCOLUMNINFO { pub scid: PropertiesSystem::PROPERTYKEY, - pub vt: u16, + pub vt: super::super::System::Com::VARENUM, pub fmt: u32, pub cChars: u32, pub csFlags: u32, pub wszTitle: [u16; 80], pub wszDescription: [u16; 128], } -#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] +#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))] impl ::core::marker::Copy for SHCOLUMNINFO {} -#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] +#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))] impl ::core::clone::Clone for SHCOLUMNINFO { fn clone(&self) -> Self { *self } } -#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] +#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))] unsafe impl ::windows::core::Abi for SHCOLUMNINFO { type Abi = Self; } -#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] +#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))] impl ::core::cmp::PartialEq for SHCOLUMNINFO { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } -#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] +#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))] impl ::core::cmp::Eq for SHCOLUMNINFO {} -#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")] +#[cfg(all(feature = "Win32_System_Com", feature = "Win32_UI_Shell_PropertiesSystem"))] impl ::core::default::Default for SHCOLUMNINFO { fn default() -> Self { unsafe { ::core::mem::zeroed() } @@ -63801,7 +63880,7 @@ pub struct SHDRAGIMAGE { pub sizeDragImage: super::super::Foundation::SIZE, pub ptOffset: super::super::Foundation::POINT, pub hbmpDragImage: super::super::Graphics::Gdi::HBITMAP, - pub crColorKey: u32, + pub crColorKey: super::super::Foundation::COLORREF, } #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] impl ::core::marker::Copy for SHDRAGIMAGE {} @@ -64472,6 +64551,83 @@ impl ::core::default::Default for SHELLSTATEW { } } #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SHELL_AUTOCOMPLETE_FLAGS(pub u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_DEFAULT: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(0u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_FILESYSTEM: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(1u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_URLALL: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(6u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_URLHISTORY: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(2u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_URLMRU: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(4u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_USETAB: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(8u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_FILESYS_ONLY: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(16u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_FILESYS_DIRS: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(32u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_VIRTUAL_NAMESPACE: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(64u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_AUTOSUGGEST_FORCE_ON: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(268435456u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_AUTOSUGGEST_FORCE_OFF: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(536870912u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_AUTOAPPEND_FORCE_ON: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(1073741824u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHACF_AUTOAPPEND_FORCE_OFF: SHELL_AUTOCOMPLETE_FLAGS = SHELL_AUTOCOMPLETE_FLAGS(2147483648u32); +impl ::core::marker::Copy for SHELL_AUTOCOMPLETE_FLAGS {} +impl ::core::clone::Clone for SHELL_AUTOCOMPLETE_FLAGS { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SHELL_AUTOCOMPLETE_FLAGS { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SHELL_AUTOCOMPLETE_FLAGS { + type Abi = Self; +} +impl ::core::fmt::Debug for SHELL_AUTOCOMPLETE_FLAGS { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SHELL_AUTOCOMPLETE_FLAGS").field(&self.0).finish() + } +} +impl ::core::ops::BitOr for SHELL_AUTOCOMPLETE_FLAGS { + type Output = Self; + fn bitor(self, other: Self) -> Self { + Self(self.0 | other.0) + } +} +impl ::core::ops::BitAnd for SHELL_AUTOCOMPLETE_FLAGS { + type Output = Self; + fn bitand(self, other: Self) -> Self { + Self(self.0 & other.0) + } +} +impl ::core::ops::BitOrAssign for SHELL_AUTOCOMPLETE_FLAGS { + fn bitor_assign(&mut self, other: Self) { + self.0.bitor_assign(other.0) + } +} +impl ::core::ops::BitAndAssign for SHELL_AUTOCOMPLETE_FLAGS { + fn bitand_assign(&mut self, other: Self) { + self.0.bitand_assign(other.0) + } +} +impl ::core::ops::Not for SHELL_AUTOCOMPLETE_FLAGS { + type Output = Self; + fn not(self) -> Self { + Self(self.0.not()) + } +} +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub const SHELL_E_WRONG_BITDEPTH: ::windows::core::HRESULT = ::windows::core::HRESULT(-2144927486i32); #[repr(C)] #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] @@ -65407,6 +65563,39 @@ impl ::core::fmt::Debug for SHGDFIL_FORMAT { #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] +pub struct SHGDNF(pub u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHGDN_NORMAL: SHGDNF = SHGDNF(0u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHGDN_INFOLDER: SHGDNF = SHGDNF(1u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHGDN_FOREDITING: SHGDNF = SHGDNF(4096u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHGDN_FORADDRESSBAR: SHGDNF = SHGDNF(16384u32); +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +pub const SHGDN_FORPARSING: SHGDNF = SHGDNF(32768u32); +impl ::core::marker::Copy for SHGDNF {} +impl ::core::clone::Clone for SHGDNF { + fn clone(&self) -> Self { + *self + } +} +impl ::core::default::Default for SHGDNF { + fn default() -> Self { + Self(0) + } +} +unsafe impl ::windows::core::Abi for SHGDNF { + type Abi = Self; +} +impl ::core::fmt::Debug for SHGDNF { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SHGDNF").field(&self.0).finish() + } +} +#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] +#[repr(transparent)] +#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct SHGFI_FLAGS(pub i32); #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub const SHGFI_ADDOVERLAYS: SHGFI_FLAGS = SHGFI_FLAGS(32i32); @@ -74506,39 +74695,6 @@ impl ::core::fmt::Debug for _SHCONTF { #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] #[repr(transparent)] #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] -pub struct _SHGDNF(pub i32); -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHGDN_NORMAL: _SHGDNF = _SHGDNF(0i32); -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHGDN_INFOLDER: _SHGDNF = _SHGDNF(1i32); -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHGDN_FOREDITING: _SHGDNF = _SHGDNF(4096i32); -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHGDN_FORADDRESSBAR: _SHGDNF = _SHGDNF(16384i32); -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -pub const SHGDN_FORPARSING: _SHGDNF = _SHGDNF(32768i32); -impl ::core::marker::Copy for _SHGDNF {} -impl ::core::clone::Clone for _SHGDNF { - fn clone(&self) -> Self { - *self - } -} -impl ::core::default::Default for _SHGDNF { - fn default() -> Self { - Self(0) - } -} -unsafe impl ::windows::core::Abi for _SHGDNF { - type Abi = Self; -} -impl ::core::fmt::Debug for _SHGDNF { - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("_SHGDNF").field(&self.0).finish() - } -} -#[doc = "*Required features: `\"Win32_UI_Shell\"`*"] -#[repr(transparent)] -#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)] pub struct _SICHINTF(pub i32); #[doc = "*Required features: `\"Win32_UI_Shell\"`*"] pub const SICHINT_DISPLAY: _SICHINTF = _SICHINTF(0i32); diff --git a/crates/libs/windows/src/Windows/Win32/UI/TabletPC/impl.rs b/crates/libs/windows/src/Windows/Win32/UI/TabletPC/impl.rs index d1fbe8a6cd..0ab7ded21a 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/TabletPC/impl.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/TabletPC/impl.rs @@ -2765,6 +2765,7 @@ impl IInkGesture_Vtbl { iid == &::IID || iid == &::IID } } +#[cfg(feature = "Win32_Foundation")] pub trait IInkLineInfo_Impl: Sized { fn SetFormat(&self, pim: *const INKMETRIC) -> ::windows::core::Result<()>; fn GetFormat(&self, pim: *const INKMETRIC) -> ::windows::core::Result<()>; @@ -2773,7 +2774,9 @@ pub trait IInkLineInfo_Impl: Sized { fn SetCandidate(&self, ncandidatenum: u32, strrecogword: &::windows::core::PCWSTR) -> ::windows::core::Result<()>; fn Recognize(&self) -> ::windows::core::Result<()>; } +#[cfg(feature = "Win32_Foundation")] impl ::windows::core::RuntimeName for IInkLineInfo {} +#[cfg(feature = "Win32_Foundation")] impl IInkLineInfo_Vtbl { pub const fn new, Impl: IInkLineInfo_Impl, const OFFSET: isize>() -> IInkLineInfo_Vtbl { unsafe extern "system" fn SetFormat, Impl: IInkLineInfo_Impl, const OFFSET: isize>(this: *mut ::core::ffi::c_void, pim: *const INKMETRIC) -> ::windows::core::HRESULT { diff --git a/crates/libs/windows/src/Windows/Win32/UI/TabletPC/mod.rs b/crates/libs/windows/src/Windows/Win32/UI/TabletPC/mod.rs index 6fb5665619..60288cb403 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/TabletPC/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/TabletPC/mod.rs @@ -6541,12 +6541,18 @@ pub struct IInkGesture_Vtbl { #[repr(transparent)] pub struct IInkLineInfo(::windows::core::IUnknown); impl IInkLineInfo { + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn SetFormat(&self, pim: &INKMETRIC) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).SetFormat)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pim)).ok() } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn GetFormat(&self, pim: &INKMETRIC) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetFormat)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pim)).ok() } + #[doc = "*Required features: `\"Win32_Foundation\"`*"] + #[cfg(feature = "Win32_Foundation")] pub unsafe fn GetInkExtent(&self, pim: &INKMETRIC, pnwidth: &u32) -> ::windows::core::Result<()> { (::windows::core::Interface::vtable(self).GetInkExtent)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(pim), ::core::mem::transmute(pnwidth)).ok() } @@ -6605,9 +6611,18 @@ unsafe impl ::windows::core::Interface for IInkLineInfo { #[doc(hidden)] pub struct IInkLineInfo_Vtbl { pub base__: ::windows::core::IUnknownVtbl, + #[cfg(feature = "Win32_Foundation")] pub SetFormat: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pim: *const INKMETRIC) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + SetFormat: usize, + #[cfg(feature = "Win32_Foundation")] pub GetFormat: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pim: *const INKMETRIC) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetFormat: usize, + #[cfg(feature = "Win32_Foundation")] pub GetInkExtent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pim: *const INKMETRIC, pnwidth: *const u32) -> ::windows::core::HRESULT, + #[cfg(not(feature = "Win32_Foundation"))] + GetInkExtent: usize, pub GetCandidate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ncandidatenum: u32, pwcrecogword: ::windows::core::PCWSTR, pcwcrecogword: *const u32, dwflags: u32) -> ::windows::core::HRESULT, pub SetCandidate: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ncandidatenum: u32, strrecogword: ::windows::core::PCWSTR) -> ::windows::core::HRESULT, pub Recognize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT, @@ -10901,34 +10916,42 @@ pub const INKEDIT_CLASS: &str = "INKEDIT"; #[doc = "*Required features: `\"Win32_UI_TabletPC\"`*"] pub const INKEDIT_CLASSW: &str = "INKEDIT"; #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_TabletPC\"`*"] +#[doc = "*Required features: `\"Win32_UI_TabletPC\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct INKMETRIC { pub iHeight: i32, pub iFontAscent: i32, pub iFontDescent: i32, pub dwFlags: u32, - pub color: u32, + pub color: super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for INKMETRIC {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for INKMETRIC { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for INKMETRIC { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { f.debug_struct("INKMETRIC").field("iHeight", &self.iHeight).field("iFontAscent", &self.iFontAscent).field("iFontDescent", &self.iFontDescent).field("dwFlags", &self.dwFlags).field("color", &self.color).finish() } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for INKMETRIC { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for INKMETRIC { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for INKMETRIC {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for INKMETRIC { fn default() -> Self { unsafe { ::core::mem::zeroed() } diff --git a/crates/libs/windows/src/Windows/Win32/UI/TextServices/mod.rs b/crates/libs/windows/src/Windows/Win32/UI/TextServices/mod.rs index 16c0ffba8c..64558fa898 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/TextServices/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/TextServices/mod.rs @@ -13487,52 +13487,66 @@ impl ::core::fmt::Debug for TF_DA_ATTR_INFO { } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_TextServices\"`*"] +#[doc = "*Required features: `\"Win32_UI_TextServices\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub struct TF_DA_COLOR { pub r#type: TF_DA_COLORTYPE, pub Anonymous: TF_DA_COLOR_0, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for TF_DA_COLOR {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for TF_DA_COLOR { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for TF_DA_COLOR { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for TF_DA_COLOR { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for TF_DA_COLOR {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for TF_DA_COLOR { fn default() -> Self { unsafe { ::core::mem::zeroed() } } } #[repr(C)] -#[doc = "*Required features: `\"Win32_UI_TextServices\"`*"] +#[doc = "*Required features: `\"Win32_UI_TextServices\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] pub union TF_DA_COLOR_0 { pub nIndex: i32, - pub cr: u32, + pub cr: super::super::Foundation::COLORREF, } +#[cfg(feature = "Win32_Foundation")] impl ::core::marker::Copy for TF_DA_COLOR_0 {} +#[cfg(feature = "Win32_Foundation")] impl ::core::clone::Clone for TF_DA_COLOR_0 { fn clone(&self) -> Self { *self } } +#[cfg(feature = "Win32_Foundation")] unsafe impl ::windows::core::Abi for TF_DA_COLOR_0 { type Abi = Self; } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::PartialEq for TF_DA_COLOR_0 { fn eq(&self, other: &Self) -> bool { unsafe { ::windows::core::memcmp(self as *const _ as _, other as *const _ as _, core::mem::size_of::()) == 0 } } } +#[cfg(feature = "Win32_Foundation")] impl ::core::cmp::Eq for TF_DA_COLOR_0 {} +#[cfg(feature = "Win32_Foundation")] impl ::core::default::Default for TF_DA_COLOR_0 { fn default() -> Self { unsafe { ::core::mem::zeroed() } diff --git a/crates/libs/windows/src/Windows/Win32/UI/WindowsAndMessaging/mod.rs b/crates/libs/windows/src/Windows/Win32/UI/WindowsAndMessaging/mod.rs index 7b72686432..a75f85a4bb 100644 --- a/crates/libs/windows/src/Windows/Win32/UI/WindowsAndMessaging/mod.rs +++ b/crates/libs/windows/src/Windows/Win32/UI/WindowsAndMessaging/mod.rs @@ -870,10 +870,6 @@ impl ::core::default::Default for CLIENTCREATESTRUCT { } } #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] -pub const COLOR_BTNHIGHLIGHT: u32 = 20u32; -#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] -pub const COLOR_BTNHILIGHT: u32 = 20u32; -#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] pub const CONSOLE_APPLICATION_16BIT: u32 = 0u32; #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] pub const CONSOLE_CARET_SELECTION: u32 = 1u32; @@ -4235,13 +4231,13 @@ where #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn GetLayeredWindowAttributes<'a, P0>(hwnd: P0, pcrkey: ::core::option::Option<&mut u32>, pbalpha: ::core::option::Option<&mut u8>, pdwflags: ::core::option::Option<&mut LAYERED_WINDOW_ATTRIBUTES_FLAGS>) -> super::super::Foundation::BOOL +pub unsafe fn GetLayeredWindowAttributes<'a, P0>(hwnd: P0, pcrkey: ::core::option::Option<&mut super::super::Foundation::COLORREF>, pbalpha: ::core::option::Option<&mut u8>, pdwflags: ::core::option::Option<&mut LAYERED_WINDOW_ATTRIBUTES_FLAGS>) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn GetLayeredWindowAttributes(hwnd: super::super::Foundation::HWND, pcrkey: *mut u32, pbalpha: *mut u8, pdwflags: *mut LAYERED_WINDOW_ATTRIBUTES_FLAGS) -> super::super::Foundation::BOOL; + fn GetLayeredWindowAttributes(hwnd: super::super::Foundation::HWND, pcrkey: *mut super::super::Foundation::COLORREF, pbalpha: *mut u8, pdwflags: *mut LAYERED_WINDOW_ATTRIBUTES_FLAGS) -> super::super::Foundation::BOOL; } GetLayeredWindowAttributes(hwnd.into(), ::core::mem::transmute(pcrkey), ::core::mem::transmute(pbalpha), ::core::mem::transmute(pdwflags)) } @@ -8195,7 +8191,7 @@ impl ::core::default::Default for MOUSEHOOKSTRUCT { #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub struct MOUSEHOOKSTRUCTEX { - pub __AnonymousBase_winuser_L1166_C46: MOUSEHOOKSTRUCT, + pub Base: MOUSEHOOKSTRUCT, pub mouseData: MOUSEHOOKSTRUCTEX_MOUSE_DATA, } #[cfg(feature = "Win32_Foundation")] @@ -8209,7 +8205,7 @@ impl ::core::clone::Clone for MOUSEHOOKSTRUCTEX { #[cfg(feature = "Win32_Foundation")] impl ::core::fmt::Debug for MOUSEHOOKSTRUCTEX { fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_struct("MOUSEHOOKSTRUCTEX").field("__AnonymousBase_winuser_L1166_C46", &self.__AnonymousBase_winuser_L1166_C46).field("mouseData", &self.mouseData).finish() + f.debug_struct("MOUSEHOOKSTRUCTEX").field("Base", &self.Base).field("mouseData", &self.mouseData).finish() } } #[cfg(feature = "Win32_Foundation")] @@ -10887,8 +10883,6 @@ pub const SWP_NOSIZE: SET_WINDOW_POS_FLAGS = SET_WINDOW_POS_FLAGS(1u32); pub const SWP_NOZORDER: SET_WINDOW_POS_FLAGS = SET_WINDOW_POS_FLAGS(4u32); #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] pub const SWP_SHOWWINDOW: SET_WINDOW_POS_FLAGS = SET_WINDOW_POS_FLAGS(64u32); -#[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] -pub const SWP__NOOWNERZORDER: SET_WINDOW_POS_FLAGS = SET_WINDOW_POS_FLAGS(512u32); impl ::core::marker::Copy for SET_WINDOW_POS_FLAGS {} impl ::core::clone::Clone for SET_WINDOW_POS_FLAGS { fn clone(&self) -> Self { @@ -12212,9 +12206,9 @@ pub const COLOR_BACKGROUND: SYS_COLOR_INDEX = SYS_COLOR_INDEX(1u32); #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] pub const COLOR_BTNFACE: SYS_COLOR_INDEX = SYS_COLOR_INDEX(15u32); #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] -pub const _COLOR_BTNHIGHLIGHT: SYS_COLOR_INDEX = SYS_COLOR_INDEX(20u32); +pub const COLOR_BTNHIGHLIGHT: SYS_COLOR_INDEX = SYS_COLOR_INDEX(20u32); #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] -pub const _COLOR_BTNHILIGHT: SYS_COLOR_INDEX = SYS_COLOR_INDEX(20u32); +pub const COLOR_BTNHILIGHT: SYS_COLOR_INDEX = SYS_COLOR_INDEX(20u32); #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] pub const COLOR_BTNSHADOW: SYS_COLOR_INDEX = SYS_COLOR_INDEX(16u32); #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`*"] @@ -12656,15 +12650,16 @@ where #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn SetLayeredWindowAttributes<'a, P0>(hwnd: P0, crkey: u32, balpha: u8, dwflags: LAYERED_WINDOW_ATTRIBUTES_FLAGS) -> super::super::Foundation::BOOL +pub unsafe fn SetLayeredWindowAttributes<'a, P0, P1>(hwnd: P0, crkey: P1, balpha: u8, dwflags: LAYERED_WINDOW_ATTRIBUTES_FLAGS) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, + P1: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SetLayeredWindowAttributes(hwnd: super::super::Foundation::HWND, crkey: u32, balpha: u8, dwflags: LAYERED_WINDOW_ATTRIBUTES_FLAGS) -> super::super::Foundation::BOOL; + fn SetLayeredWindowAttributes(hwnd: super::super::Foundation::HWND, crkey: super::super::Foundation::COLORREF, balpha: u8, dwflags: LAYERED_WINDOW_ATTRIBUTES_FLAGS) -> super::super::Foundation::BOOL; } - SetLayeredWindowAttributes(hwnd.into(), crkey, balpha, dwflags) + SetLayeredWindowAttributes(hwnd.into(), crkey.into(), balpha, dwflags) } #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -12849,10 +12844,10 @@ where #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] #[inline] -pub unsafe fn SetSysColors(celements: i32, lpaelements: *const i32, lpargbvalues: *const u32) -> super::super::Foundation::BOOL { +pub unsafe fn SetSysColors(celements: i32, lpaelements: *const i32, lpargbvalues: *const super::super::Foundation::COLORREF) -> super::super::Foundation::BOOL { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn SetSysColors(celements: i32, lpaelements: *const i32, lpargbvalues: *const u32) -> super::super::Foundation::BOOL; + fn SetSysColors(celements: i32, lpaelements: *const i32, lpargbvalues: *const super::super::Foundation::COLORREF) -> super::super::Foundation::BOOL; } SetSysColors(::core::mem::transmute(celements), ::core::mem::transmute(lpaelements), ::core::mem::transmute(lpargbvalues)) } @@ -13623,7 +13618,7 @@ pub struct UPDATELAYEREDWINDOWINFO { pub psize: *const super::super::Foundation::SIZE, pub hdcSrc: super::super::Graphics::Gdi::HDC, pub pptSrc: *const super::super::Foundation::POINT, - pub crKey: u32, + pub crKey: super::super::Foundation::COLORREF, pub pblend: *const super::super::Graphics::Gdi::BLENDFUNCTION, pub dwFlags: UPDATE_LAYERED_WINDOW_FLAGS, pub prcDirty: *const super::super::Foundation::RECT, @@ -13751,17 +13746,18 @@ where #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] #[inline] -pub unsafe fn UpdateLayeredWindow<'a, P0, P1, P2>(hwnd: P0, hdcdst: P1, pptdst: ::core::option::Option<&super::super::Foundation::POINT>, psize: ::core::option::Option<&super::super::Foundation::SIZE>, hdcsrc: P2, pptsrc: ::core::option::Option<&super::super::Foundation::POINT>, crkey: u32, pblend: ::core::option::Option<&super::super::Graphics::Gdi::BLENDFUNCTION>, dwflags: UPDATE_LAYERED_WINDOW_FLAGS) -> super::super::Foundation::BOOL +pub unsafe fn UpdateLayeredWindow<'a, P0, P1, P2, P3>(hwnd: P0, hdcdst: P1, pptdst: ::core::option::Option<&super::super::Foundation::POINT>, psize: ::core::option::Option<&super::super::Foundation::SIZE>, hdcsrc: P2, pptsrc: ::core::option::Option<&super::super::Foundation::POINT>, crkey: P3, pblend: ::core::option::Option<&super::super::Graphics::Gdi::BLENDFUNCTION>, dwflags: UPDATE_LAYERED_WINDOW_FLAGS) -> super::super::Foundation::BOOL where P0: ::std::convert::Into, P1: ::std::convert::Into, P2: ::std::convert::Into, + P3: ::std::convert::Into, { #[cfg_attr(windows, link(name = "windows"))] extern "system" { - fn UpdateLayeredWindow(hwnd: super::super::Foundation::HWND, hdcdst: super::super::Graphics::Gdi::HDC, pptdst: *const super::super::Foundation::POINT, psize: *const super::super::Foundation::SIZE, hdcsrc: super::super::Graphics::Gdi::HDC, pptsrc: *const super::super::Foundation::POINT, crkey: u32, pblend: *const super::super::Graphics::Gdi::BLENDFUNCTION, dwflags: UPDATE_LAYERED_WINDOW_FLAGS) -> super::super::Foundation::BOOL; + fn UpdateLayeredWindow(hwnd: super::super::Foundation::HWND, hdcdst: super::super::Graphics::Gdi::HDC, pptdst: *const super::super::Foundation::POINT, psize: *const super::super::Foundation::SIZE, hdcsrc: super::super::Graphics::Gdi::HDC, pptsrc: *const super::super::Foundation::POINT, crkey: super::super::Foundation::COLORREF, pblend: *const super::super::Graphics::Gdi::BLENDFUNCTION, dwflags: UPDATE_LAYERED_WINDOW_FLAGS) -> super::super::Foundation::BOOL; } - UpdateLayeredWindow(hwnd.into(), hdcdst.into(), ::core::mem::transmute(pptdst), ::core::mem::transmute(psize), hdcsrc.into(), ::core::mem::transmute(pptsrc), crkey, ::core::mem::transmute(pblend), dwflags) + UpdateLayeredWindow(hwnd.into(), hdcdst.into(), ::core::mem::transmute(pptdst), ::core::mem::transmute(psize), hdcsrc.into(), ::core::mem::transmute(pptsrc), crkey.into(), ::core::mem::transmute(pblend), dwflags) } #[doc = "*Required features: `\"Win32_UI_WindowsAndMessaging\"`, `\"Win32_Foundation\"`, `\"Win32_Graphics_Gdi\"`*"] #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Graphics_Gdi"))] diff --git a/crates/tests/bcrypt/tests/tests.rs b/crates/tests/bcrypt/tests/tests.rs index f25fca778a..0669b1d34e 100644 --- a/crates/tests/bcrypt/tests/tests.rs +++ b/crates/tests/bcrypt/tests/tests.rs @@ -12,18 +12,17 @@ fn test() -> Result<()> { let mut object_len = [0; 4]; let mut bytes_copied = 0; - BCryptGetProperty(des.0 as _, w!("ObjectLength"), Some(&mut object_len), &mut bytes_copied, 0)?; + BCryptGetProperty(des, w!("ObjectLength"), Some(&mut object_len), &mut bytes_copied, 0)?; let object_len = u32::from_le_bytes(object_len); let mut shared_secret = vec![0; object_len as _]; BCryptGenRandom(rng, &mut shared_secret, 0)?; let mut encrypt_key = Default::default(); - // TODO: workaround for https://github.com/microsoft/win32metadata/issues/1010 - BCryptGenerateSymmetricKey(des, &mut encrypt_key, None, 0, &shared_secret, 0)?; + BCryptGenerateSymmetricKey(des, &mut encrypt_key, None, &shared_secret, 0)?; let mut block_len = [0; 4]; - BCryptGetProperty(des.0 as _, w!("BlockLength"), Some(&mut block_len), &mut bytes_copied, 0)?; + BCryptGetProperty(des, w!("BlockLength"), Some(&mut block_len), &mut bytes_copied, 0)?; let block_len = u32::from_le_bytes(block_len) as usize; let send_message = "I ❤️ Rust"; @@ -37,7 +36,7 @@ fn test() -> Result<()> { BCryptEncrypt(encrypt_key, Some(&send_buffer), std::ptr::null(), None, Some(&mut encrypted), &mut encrypted_len, Default::default())?; let mut decrypt_key = Default::default(); - BCryptGenerateSymmetricKey(des, &mut decrypt_key, None, 0, &shared_secret, 0)?; + BCryptGenerateSymmetricKey(des, &mut decrypt_key, None, &shared_secret, 0)?; let mut decrypted_len = 0; BCryptDecrypt(decrypt_key, Some(&encrypted), std::ptr::null(), None, None, &mut decrypted_len, Default::default())?; diff --git a/crates/tests/data_object/tests/test.rs b/crates/tests/data_object/tests/test.rs index 225852acfc..4c9174fcba 100644 --- a/crates/tests/data_object/tests/test.rs +++ b/crates/tests/data_object/tests/test.rs @@ -34,10 +34,10 @@ impl IDataObject_Impl for Test { } } - fn QueryGetData(&self, _: *const FORMATETC) -> Result<()> { + fn QueryGetData(&self, _: *const FORMATETC) -> HRESULT { unsafe { (*self.0.get()).QueryGetData = true; - Ok(()) + S_OK } } @@ -90,7 +90,7 @@ fn test() -> Result<()> { let d: IDataObject = Test::default().into(); d.GetData(&Default::default())?; d.GetDataHere(&Default::default(), &mut Default::default())?; - d.QueryGetData(&Default::default())?; + d.QueryGetData(&Default::default()).ok()?; d.GetCanonicalFormatEtc(&Default::default(), &mut Default::default()).ok()?; d.SetData(&Default::default(), &Default::default(), false)?; diff --git a/crates/tests/drop_target/tests/test.rs b/crates/tests/drop_target/tests/test.rs index b6e3408fdc..2bb68768b1 100644 --- a/crates/tests/drop_target/tests/test.rs +++ b/crates/tests/drop_target/tests/test.rs @@ -10,7 +10,7 @@ impl IDataObject_Impl for DataObject { fn GetDataHere(&self, _: *const FORMATETC, _: *mut STGMEDIUM) -> Result<()> { todo!() } - fn QueryGetData(&self, _: *const FORMATETC) -> Result<()> { + fn QueryGetData(&self, _: *const FORMATETC) -> HRESULT { todo!() } fn GetCanonicalFormatEtc(&self, _: *const FORMATETC, _: *mut FORMATETC) -> HRESULT { diff --git a/crates/tests/metadata/tests/fn_call_size.rs b/crates/tests/metadata/tests/fn_call_size.rs index d4b013be22..e0fb1bcc38 100644 --- a/crates/tests/metadata/tests/fn_call_size.rs +++ b/crates/tests/metadata/tests/fn_call_size.rs @@ -1,5 +1,7 @@ #[test] fn size() { + assert_eq!(struct_size("Windows.Win32.System.Com", "VARIANT"), 16); + assert_eq!(function_size("Windows.Win32.System.Console", "ReadConsoleOutputA"), 20); assert_eq!(function_size("Windows.Win32.System.Console", "ReadConsoleOutputAttribute"), 20); assert_eq!(function_size("Windows.Win32.UI.Accessibility", "ItemContainerPattern_FindItemByProperty"), 32); @@ -22,3 +24,12 @@ fn function_size(namespace: &str, name: &str) -> usize { } 0 } + +fn struct_size(namespace: &str, name: &str) -> usize { + let files = vec![metadata::reader::File::new("../../libs/metadata/default/Windows.Win32.winmd").unwrap()]; + let reader = &metadata::reader::Reader::new(&files); + if let Some(def) = reader.get(metadata::reader::TypeName::new(namespace, name)).next() { + return reader.type_def_size(def); + } + 0 +}